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

prg_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

prg_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