Hello Guest it is April 19, 2024, 06:15:04 PM

Author Topic: Zeroing Multiple Z Offsets  (Read 4466 times)

0 Members and 1 Guest are viewing this topic.

Zeroing Multiple Z Offsets
« on: March 15, 2011, 05:57:03 PM »
I use the tool macro to set the Z offset:

Call setdro (2,platethickness)

This sets whatever offset you have enabled which is usually G54.  But I would like to set multiple offsets at once like G54, G55, G56, and G57.

Is there are command that I can use to do this?

TIA

Dan.

Offline ger21

*
  • *
  •  6,295 6,295
    • View Profile
    • The CNC Woodworker
Re: Zeroing Multiple Z Offsets
« Reply #1 on: March 15, 2011, 06:06:22 PM »
I do it this way. After zeroing in the current offset, I retrieve that offset and change the other's to match.

CurrentOffset = GetOEMDRO(46)  ' Get Current Coordinate system 1 = G54, 2 = G55, ....

If CurrentOffset = 1 Then
ZOffset=GetVar(5223)
ElseIf CurrentOffset = 2 Then
ZOffset=GetVar(5243)
ElseIf CurrentOffset = 3 Then
ZOffset=GetVar(5263)
ElseIf CurrentOffset = 4 Then
ZOffset=GetVar(5283)
ElseIf CurrentOffset = 5 Then
ZOffset=GetVar(5303)
ElseIf CurrentOffset = 6 Then
ZOffset=GetVar(5323)
End If

For X = 5223 To 5323 Step 20
SetVar(X, ZOffset)
Next X
Sleep(250)
Gerry

2010 Screenset
http://www.thecncwoodworker.com/2010.html

JointCAM Dovetail and Box Joint software
http://www.g-forcecnc.com/jointcam.html
Re: Zeroing Multiple Z Offsets
« Reply #2 on: March 15, 2011, 08:00:31 PM »
For some reason this does not work...  G54 gets set to the correct value but the others are all off by some offset.  I tried zeroing all the values in the tool table before I started but that did not work.  I also tried adding a call and a code in front of the setvar and that did nothing.



CurrentFeed = GetOemDRO(818) 'Get the current feedrate to return to later
CurrentAbsInc = GetOemLED(48) 'Get the current G90/G91 state
CurrentGmode = GetOemDRO(819) 'Get the current G0/G1 state
PlateThickness = GetUserDRO(1151) 'Z-plate thickness DRO


DoOEMButton (1010) 'zero the Z axis so the probe move will start from here
Code "G4 P2" ' this delay gives me time to get from computer to hold probe in place
Code "G90 G31 Z-1 F5" 'probing move, can set the feed rate here as well as how far to move
While IsMoving() 'wait while it happens
Wend
ZProbePos = GetVar(2002) 'get the axact point the probe was hit
Code "G0 Z" &ZProbePos 'go back to that point, always a very small amount of overrun
While IsMoving ()
Wend
Call SetDro (2, PlateThickness) 'set the Z axis DRO to whatever is set as plate thickness
Code "G4 P0.25" 'Pause for Dro to update.
SetVar(5243, PlateThickness)
Code "G4 P0.25" 'Pause for Dro to update.
SetVar(5263, PlateThickness)
Code "G4 P0.25" 'Pause for Dro to update.
SetVar(5283, PlateThickness)
Code "G4 P0.25" 'Pause for Dro to update.
While IsMoving ()
Wend
Code "(Z axis is now zeroed)" 'puts this message in the status bar
Code "F" &CurrentFeed 'Returns to prior feed rate
If CurrentAbsInc = 0 Then 'if G91 was in effect before then return to it
Code "G91"
End If
If CurrentGMode = 0 Then 'if G0 was in effect before then return to it
Code "G0"
End If
Exit Sub    
« Last Edit: March 15, 2011, 08:02:25 PM by dfurlano »
Re: Zeroing Multiple Z Offsets
« Reply #3 on: March 15, 2011, 08:15:20 PM »
When I look in the Mach3 manual in section 10 is says that variable 5244 is offset 2 Z, then 5263 is offset 3 Z, and 5283 is offset 4 Z.

Offline ger21

*
  • *
  •  6,295 6,295
    • View Profile
    • The CNC Woodworker
Re: Zeroing Multiple Z Offsets
« Reply #4 on: March 15, 2011, 08:17:39 PM »
Your code works fine, but you're not setting the right value.

The Plate Thickness is not the offset. When you set the Z DRO to the plate thickness, the offset is the current machine coordinate - plate thickness.

For your other offsets, you're just setting the plate thickness.

That's why I read the actual offset from the current coordinate system, then assign that actual offset to the other coordinate systems.
Gerry

2010 Screenset
http://www.thecncwoodworker.com/2010.html

JointCAM Dovetail and Box Joint software
http://www.g-forcecnc.com/jointcam.html

Offline ger21

*
  • *
  •  6,295 6,295
    • View Profile
    • The CNC Woodworker
Re: Zeroing Multiple Z Offsets
« Reply #5 on: March 15, 2011, 08:18:31 PM »
That's a typo in the manual, it's 5243.
Gerry

2010 Screenset
http://www.thecncwoodworker.com/2010.html

JointCAM Dovetail and Box Joint software
http://www.g-forcecnc.com/jointcam.html
Re: Zeroing Multiple Z Offsets
« Reply #6 on: March 15, 2011, 08:34:34 PM »
Thank you.