G90 (movimenti la macchina quindi il mandrino rispetto lo zero pezzo)
G91 ( programmazione in coordinate relative, la posizione attuale del mandrino è il punto di rifermento, lo "zero" su cui si basano gli spostamenti)
Quindi per abbassarti di un mm ti basta programmare
G91 G1 Z-1 F100 (Scende il mandrino di un mm dalla posizione corrente)
G4 P2
G91 G1 Z1 F100 (sale il mandrino di un mm dalla posizione corrente)
G90 (torini a programmazione in coordinate assolute, riferite cioè allo zero pezzo)
Da una rapida occhiata alla documentazione di linuxcnc http://www.linuxcnc.org/docs/html/gcode/o-code.html
puoi inserire il tutto in una rutine
o100 sub
G91 G1 Z-1 F100 (Scende il mandrino di un mm dalla posizione corrente)
G4 P2
G91 G1 Z1 F100 (sale il mandrino di un mm dalla posizione corrente)
G90 (torini a programmazione in coordinate assolute, riferite cioè allo zero pezzo)
o100 endsub
...
o100 call (call the subroutine here)