Hello Guest it is August 17, 2022, 12:58:58 PM

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Kently

Pages: 1 2 3 4 5 6 7 »
General Mach Discussion / Re: Homing and Squaring a Gantry
« on: January 28, 2013, 10:50:35 PM »
That makes perfect sense. Thanks for the quick response.

General Mach Discussion / Homing and Squaring a Gantry
« on: January 28, 2013, 10:04:48 PM »
I have a gantry based machine that has separate motors for each side of the gantry. I have separate limit switches for each axis and want to re-square the ganrty when referencing the machine. I am confused about how to set the "Home Slave with Master Axis" checkbox on the General Configuration tab. Here is what the Mach manual says:
"Home Slave with Master Axis, if checked, homes both motors of a master/slave pair at the same time. This will not do axis straightening, however."

When the gantry is moving to the limit switches, you must have both axes moving together otherwise that will rack the ganrty. So I assume the checkbox would need to be checked. But if checked, then the manual says that the axes won't be straightened. What am I missing?

Feature Requests / Future Enhnacement? - Encoder Abilty for All 6 Axes
« on: November 24, 2010, 11:14:07 AM »
I am not sure where you post "wish list" items, but I sure would like to see the ability to specify encoders for all 6 axes. I am currently using encoders and a brain to detect racking of the gantry. The Y-axis and B-axis motors are slaved. I am currently having to specify the b-axis encoder as being connected to the x-axis and that is causing the brain to fire anytime I zero the y or x axes. I could address the problem if I could specify an encoder for the B-axis.

VB and the development of wizards / Re: Run Macro When Axis is Zeroed
« on: November 24, 2010, 11:07:15 AM »
I am just now learning about the screen editor. I didn't knowhow those buttons were being used like that. Your suggestion worked great.


VB and the development of wizards / Run Macro When Axis is Zeroed
« on: November 22, 2010, 11:13:56 PM »
How can I run a macro whenever an axis is zeroed using the "Zero" buttons on the "Program Run" screen? These buttons cannot be edited with the Edit Button Script command.


Promote and discuss your product / Dust Shoe
« on: January 17, 2010, 01:04:40 PM »
Below is a link to a video of a dust shoe that does an excellent job of collection while allowing easy access for bit changes. The lower brush ring is attached with rare earth magnets which allows for easy bit access. The upper acrylic plate clamps around the router/spindle with one pinch screw.The shoe sells for $95.00 plus $15.00 S&H (additional shipping applies if outside the U.S.).  If you are running the Hitachi M12VC router, the cooling exhaust blows straight down and needs to be diverted. An exhaust diverter for that router is an additional $10.00

Contact me at KentCNC@gmail.com to purchase. I will need to know which router/spindle you are using and your name and shipping address.

Video Link: http://www.youtube.com/watch?v=t8ehFKTjZN4


Here is the code I use. It requires an initial touch after you click the zero button. When you make that inital touch, the router moves up and down a very short distance to let you know it made the touch. After a short pause, it will start probing downward. If you don't make contat within 15 seconds after clicking hte zero button, the routine wil simply tinme out. This utilizes a screen that has the zero button and a DRO used to specify the thickness of your plate. Note that there are many places used to force Mach to sync up with the code. Some of this code may seem unnessary, but after I added it I have never had a unexpected plunge. USE THIS AT YOUR OWN RISK.

'     Author: Kent Janes
'     October 11, 2009
'     Version 1.4

'     This routine is used to zero the Z-axis using a touch probe.
'     The probe must be ungrounded when this routine starts.
'     The user is given 15 seconds to touch the probe to the bit.
'     Once the bit is touched, the z axis will be moved up then down by a small
'     amount to let the user know that the touch was successful. The routine
'     will then pause for 1/2 second to allow the user to move the probe to the
'     top of the workpiece. The system will then move the probe downward until
'     it contacts the touchplate. Once touched,the z-axis DRO is set to the
'     plate thickness (specified by the user and entered on the Mach screen).
'     The z-axis will then be moved upward by the distance specified as
'     Final_Back_Off constant.
Dim Final_Backoff
Dim Inital_Backoff
Dim Probing_feed_rate
Dim Plate_Offset
Dim Touched_Flag
Dim Initial_Incremental_Flag
Dim Initial_Machine_Coordinates_Flag
Dim Initial_G_State
Dim Initial_Feed_Rate
Dim Initial_Back_Off
Dim Final_Back_Off
Dim New_Z
Dim i

'     Initialize constants.
   Final_Back_Off = 0.20
   Initial_Back_Off = 0.02
   Probing_Feed_Rate = 4
'     Display a message and exit if the user has not specified a plate offset.

   Plate_Offset = GetUserDRO(1151)
   If Plate_Offset <= 0 Then
      Code "(A positive value must be entered for the Plate Offset.)"
      Exit Sub
   End If
'     Test to see if the touchplate is already grounded or faulty.
'     Display a message and exit if it is grounded.

   If GetOEMLed (825) <> 0 Then       
      Code "(Touchplate is grounded...check connection and try again.)"
      Exit Sub
   End If
'   Set the Z-Setter Plate to Material Offset DRO to -999 so that the
'   Z-Setter Tool Change routine will be able to detect that the users
'   is trying to run it when they should not. Some users won't have this
'   DRO so skip this if an error occurs.

   On Error Resume Next
   Call SetUserDRO(1102,-999)
   On Error GoTo 0
 '    Loop for a maximum of 15 seconds to let the user touch the probe to the bit.
 '    Exit if the user does not touch the probe to the bit within 15 seconds.
   Code "(Briefly touch the probe to the bit to start probing for zero.)"
   Touched_Flag = False
   For i = 1 To 600
      If GetOEMLed (825) <> 0 Then
         Touched_Flag = True
         Exit For
      End If
      Sleep 25
   Next i
   If Touched_Flag = False Then
      Code "(The touchplate routine timed out.)"
      Exit Sub
   End If
'     Save the incremental mode, the machine coordinates mode,
'     the G0/G1 state, and the feed rate. Then set the system to
'     absolute mode (G90) and to work coordinates mode.

   Initial_Incremental_Flag = GetOEMLed(49)
   Initial_Machine_Coordinates_Flag = GetOEMLEd(16)
   Initial_G_State = GetOEMDRO(819)
   Initial_Feed_Rate = GetOEMDRO(818)
   DoOEMButton (180)
   Code "G90"
   While IsMoving()      
      Sleep 100
'     Move the z-axis upward by the Inital_Back_Off_Amount and then back down.
'     This lets the user know tha they made the inital contact that starts the
'     final probing.
   New_Z = GetOEMDRO(802) + Initial_Back_Off
   Code "G0"
   While IsMoving()      
      Sleep 100
   Code "G0 Z" & New_Z
   While IsMoving()      
      Sleep 100

   New_Z = New_Z - Initial_Back_Off
   Code "G0 Z" & New_Z
   While IsMoving()      
      Sleep 100

'     Change the feed rate to the Probing_Feed_Rate and start probing downward
'     after a 1/2 second pause. Also place in G1 mode.
   New_Z = GetOEMDRO(802) - 6
   Code "F" & Probing_Feed_Rate
   Code "G1"
   While IsMoving()      
      Sleep 100
   Sleep 500      
   Code "G31Z" & New_Z
   While IsMoving()      
      Sleep 100
'     Move back to the hit point in case there was overshoot.
'     Set the z-DRO to the Plate_Offset. Display a message
'     stating the z-axis is zeroed. Return to the original
'     feed rate.

   New_Z = GetVar(2002)
   Code "G1 Z" & New_Z
   While IsMoving ()
      Sleep 100

   Call SetOEMDRO (802,Plate_Offset)
   sleep 250
   Code "G0"
   While IsMoving()      
      Sleep 100
   New_Z = Plate_Offset + Final_Back_Off
   Code "G0 Z" & New_Z       
   Code "(Z axis is now zeroed.)"
   While IsMoving ()
      Sleep 100

'     Restore the feed rate, the incremental/absolute mode setting, the
'     work coordinates/machine coordinates setting, and the G0/G1 setting
'     to what they were in the beginning.

   Code "F" & Initial_Feed_Rate

   If Initial_Incremental_Flag = True Then
      Code "G91"
   End If
   If Initial_Machine_Coordinates_Flag = True Then
   End If

   If Initial_G_State = 0 Then
      Code "G0"
      Code "G1"
   End If 

General Mach Discussion / Re: E-Stop After Zeroing an Axis
« on: November 24, 2009, 01:56:12 PM »
Are you meaning the Zero button at the side of the Axis DROs? If yes then that is really weird and I dont see how that could be happening as all that does is zero the work offset and does not do anything electrical.

Yes, those are the zero buttons I am using. It just hit me that I may be the culprit. I have a Mach Brain that monitors encoders on the y and the slaved y-axis and issues an e-stop if they differ by more than a pre-defined amount. Perhaps the Brain is firing. However, I am pretty certain this also happens with the X-axis which should have nothing to do with the Brain. I'll disable the brain and see if the problem goes away.


General Mach Discussion / E-Stop After Zeroing an Axis
« on: November 24, 2009, 11:17:35 AM »
Sometimes when I click zero for the X or Y axis, the machine goes into e-stop. Does not happen every time. I'd prefer it to not go into e-stop. Any suggestions?

I am running a SmoothStepper in case that makes any difference.

General Mach Discussion / Re: Replicating Parts
« on: November 15, 2009, 12:17:34 PM »
I don't think that is what I am needing. I can easily copy the parts on the sheet. What I am trying to avoid is having to select each vector and generate a new toolpath.

Pages: 1 2 3 4 5 6 7 »