Measurement with interruption and jump (G310)(Type 5,6)

G310 [G00 | G01] <axis_name><expr> {<axis_name><expr>} [$GOTO<Label>] (non-modal)

G310 Interruptible block

G00 | G01 Interruptible mode of interpolation

<axis_name><expr> Target position of measuring axes

$GOTO<Label> Jump label after interrupted measuring traverse

Any axes may participate in the traverse movement of the measuring block. All axes programmed in the measuring block must be identified as a measuring axis [2]-1. The measuring method (Type 5,6) must be specified [1]-1.

This measuring method offers the possibility to abort a movement by a measuring signal. The motion must explicitly be programmed in the same block. When the motion is aborted by the measuring signal, the logic branches to the label that is specified in the G310 block. If the measuring signal does not occur during the motion block, the NC program execution is continued with the next NC block.

Programming example

N10 G00 X0 Y0
N20 G310 G01 F100 X100 Y200 $GOTO[N_LABEL] (If interrupt. jump to N_LABEL)
N30 G01 X200
N40 $GOTO[ENDE]
N50 [N_LABEL] X0 Y0
N60 [ENDE] M30

Once the motion has been interrupted by a probe signal, the coordinates of the programmed target point are replaced with the actual positions of all measuring axes that exist in the channel. Next, the logic jumps to the specified block.

If a signal is not received, the system moves to the programmed target point. Subsequently, there will be no jump; and the next block will be executed.

The next block is always executed if a label has not been programmed.

The current axis positions after an interruption of the motion can be read in the NC program via the V.A.MESS[..] variable..

An interruption during active TRC (G41/G42) is not allowed and causes an error message.