Managing realtime cycles
The actions of a realtime cycle can be influenced by the following keywords:
#RT CYCLE [START | HOLD | CONTINUE | ABORT ACTION | DELETE] [ID=..] |
Keyword | Description |
START | Realtime cycle runs through now; state of the $IF condition is re-initialised; motions/actions are executed |
HOLD | Realtime cycle no longer runs through; state of the $IF condition is retained; motions/actions are on hold |
CONTINUE | Realtime cycle which is put on hold by HOLD runs through again; state of the $IF is same as before HOLD; motions/actions previously on hold are continued |
ABORT ACTION | Realtime cycle continues to run through; state of the $IF condition is retained; motions/actions are aborted |
DELETE | Realtime cycle is deleted |
Programing Example
Managing a realtime cycle
; Move X axis to 0mm
G00 X0
; Define realtime cycle but do not start
#RT CYCLE DEF [ID = 17 SCOPE = PROG]
; Query ACS position of X axis
$IF ONCE V.RTA.ACS.ACT_POS.X > 200
; Start independent Z axis motion
; ...
$ENDIF
#RT CYCLE END
; Move X axis
G00 X50
; Start realtime cycle
#RT CYCLE START [ID = 17]
; Move X axis, Z motion is started
G00 X250
; Hold Z motion
#RT CYCLE HOLD [ID = 17]
; ...
; Continue Z motion
#RT CYCLE CONTINUE [ID = 17]
; ...
; End main program
; PROG cycle 17 is deleted automatically
M30
Programing Example
Delete global realtime cycle
; Define global realtime cycle
#RT CYCLE [ID = 17 SCOPE = GLOBAL]
; instructions
; ...
#RT CYCLE END
; ...
; Delete global realtime cycle explicitly
#RT CYCLE DELETE [ID = 17]
; End main program
M30