Decoder Stop with external trigger event (@717)

Sometimes the question of whether the NC part of the program must wait or can continue may depend, for instance, on events in the PLC. With the 2 types of M-functions this can give rise to the following problems:

Sample:

During positioning with a flying M-function, a process A is initiated by the NC partial program. It is assumed here that the block of processes in the NC program is typically long enough for process A to be completed in the PLC. If A is ready, then the NC partial program should execute the next segment with look-ahead. In case A is not ready, however, then the NC should stop at the end of the segment and wait until process A has finished. It is exactly this scene that can be implemented with the command @717. The PLC here sends the so-called 'GoAhead' command when process A has finished.

N10 ... 
N20 G0 X0 Y0 Z0
N30 G01 X500 F6000
N40 M70 (flying M-function that triggers process A)
N50 G01 X700
N60 @717 (decoder stop with external trigger event)
N70 G01 X1000
N80 ...

If the GoAhead signal reaches the PLC early enough, then blocks N50 and N70 are linked by look-ahead, and the path velocity is not then reduced. If the signal arrives during the deceleration phase of N50, then the velocity is once more increased. Otherwise, the machine waits for the signal from the PLC.

Decoder Stop with external trigger event (@717) 1:

The decoder stop must not be programmed with active tool compensation or circular smoothing, as these will then no longer function.

from TwinCAT V2.10 B1319:

The function block 'ItpGoAheadEx' returns the error code 0x410A, if no @717 is present in the interpreter at the time of the call.