Tvůj program definuješ jako podprogram a pak s využitím G90/G91:
Kód: Vybrat vše
%
o0001 (main program)
M98 P0002 L10 (call sub program o0002 10 times)
M30
o0002 (sub program)
G91 (change to incremental mode)
G01 Z-1
G90 (change to absolute mode)
G01 X30
G01 Y-30
G01 X0
G01 Y0
M99
%
Nebo s využitím proměnných (zásadní je ta #100, ty další jsou konstanty a jsou tam jen pro inspiraci):
Kód: Vybrat vše
%
o0001 (main program)
#100 = 0 (current Z)
#101 = -1 (Z step)
#102 = 10 (number of Z steps)
M98 P0002 L#102 (call sub program o0002 #102 times)
M30
o0002 (sub program)
#100 = [#100 + #101]
G01 Z#100
G01 X30
G01 Y-30
G01 X0
G01 Y0
M99
%
Btw. ty příklady se chovají každý trochu jinak, první sjíždí z aktuálního Z v okamžiku volání M98 (pokud bude na Z-5, skončí na Z-15), druhý to jede opravdu od Z0 do Z-10. Obojí se může hodit. Jo a pozor, L má prý jen omezený rozsah (0-99).
T.
PS: bacha na Ó versus nula

EDIT: radši jsem to předělal na malý ó