How can I assign a M number to this macro I found that is for the auto tool zero button. I would like to be able to use the button to zero the tool, and I would also like to assign a M-number so that immediately after a tool change, the the macro will be ran, the tool will be zeroed and the program then continue.
Example :
M28
T3 M06 G43 H3
M99991 (Auto zero's tool)
M1 (press cycle start to continue)
G0 z.375
......
Also, I would like to know if after the probe is triggered, does the z axis de-accelerate normally, or does it come to an abrupt stop (like when an e-stop is triggered). I'm afraid the I'll lose steps in absolute coordinates on the z axis with my stepper system.
Here is the macro I found:
Put a user DRO on the screen using Mach's screen utility, Screen4. Assigned it OEM code 1151
Also put a LED for Probe and one for Pause or Dwell. These I will explain later. See the screen grab below as pic.
Assigned the following macro to the "Auto Tool Zero" button.
PlateThickness = GetUserDRO(1151) 'Z-plate thickness DRO
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 P5" ' this delay gives me time to get from computer to hold probe in place
Code "G31Z-40 F500" '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.
Code "G0 Z25.4" 'put the Z retract height you want here
Code "(Z axis is now zeroed)" 'puts this message in the status bar
Else
Code "(Z-Plate is grounded, check connection and try again)" 'this goes in the status bar if aplicable
Exit Sub
End If