!RPO                Set event when the relative load position is equal or over a 32-bit long value or the value of a long variable

Syntax                        

!RPO value32

! if RelativePositionOver value32

!RPO VAR32

! if RelativePositionOver VAR32

 

OperandsVAR32: long variable

value32: 32-bit long immediate value

PlaceTMLOnline

Binary code

RPO

DescriptionSets the event condition when the load relative position is equal or over the specified value or the value of the specified variable. The relative position is the load displacement from the beginning of the actual movement.

Remark: The origin for the relative position measurement (TML variable POS0) is set function of the target update mode. Under TUM1, POS0 = TPOS. Under TUM0, POS0=APOS_LD.

After you have programmed an event, you can do the following actions:

Change the motion mode and/or the parameters when the event occurs, with command UPD!
Stop the motion when the event occurs, with command STOP!
Wait for the programmed event to occur, with command WAIT!

The programmed event is automatically erased when the event occurs or if the timeout for the WAIT! command expires.

Remark: After setting UPD! or STOP! you need to wait until the programmed event occurs using WAIT!, otherwise, the program will continue with the next instructions that may override the event monitoring.

 

ExecutionActivates the monitoring of the event, when load relative position >= value32, respectively VAR32. This operation erases a previous programmed event that has occurred.

 

Example        

//Stop motion when after moving 3 rev

//Position feedback: 500 lines encoder (2000 counts/rev)

!RPO 6000; //Set event: when load relative position is >= 3 rev

STOP!;//Stop the motion when the event occurs

WAIT!;//Wait until the event occurs