Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- '
- ' CONFIGURATION
- '
- PlateThickness = 47.3 'GetUserDRO(1151) 'Z-plate thickness DRO
- StartDelay = 2 ' Start delay seconds to start probing
- DownStroke = -50 'Set the max down stroke to find probe
- DownFeedRate = 100 'Set the down FeedRate
- RetractStroke = 10 'Set the retract Stroke
- RetractFeedRate = 300 'Set the retract FeedRate
- '
- ' END CONFIGURATION
- '
- 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
- Code "(Z Probe Start - Plate Thickness: " &PlateThickness &")"
- If GetOemLed (825)=0 Then 'Check to see if the probe is already grounded or faulty
- DoOEMButton (1010) 'zero the Z axis so the probe move will start from here
- Code "G4 P" &StartDelay ' this delay gives me time to get from computer to hold probe in place
- Code "G90 G31 Z" &DownStroke &" F" &DownFeedRate 'probing move
- While IsMoving() 'wait while it happens
- Wend
- ZProbePos = GetVar(2002) 'get the axact point the probe was hit
- If Abs(ZprobePos) <= Abs(DownStroke)-0.1 Then 'Check if the probe has been found
- 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.
- Code "G1 Z" &PlateThickness + RetractStroke &" F" &RetractFeedRate 'retract
- While IsMoving ()
- Wend
- Code "(Z axis is now zeroed)" 'puts this message in the status bar
- Else
- Code "G0 Z0" 'retract to start pos
- While IsMoving ()
- Wend
- Code "(Z-Plate not found, check connection or stroke and try again)" 'puts this message in the status bar
- End If
- Else
- Code "(Z-Plate is grounded, check connection and try again)" 'this goes in the status bar if aplicable
- End If
- 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
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement