Access synchronisation by NC channel
With a synchronous read or write variable access, the user may expect a temporal sequence as specified in the NC program. Since NC program decoding is performed in a planning phase before the actual processing of NC commands, a synchronous variable may not simply be accessed during program decoding. Access must be synchronous to current program processing (axis movement). This is ensured as follows:
READ: When reading, decoding is stopped until program processing reaches the NC program line last decoded (implicit FLUSH & WAIT, see also [PROG]). The value is then read and made available to the decoder. Only then is decoding continued. Since FLUSH & WAIT is not allowed during certain cross-block NC functionalities (e.g. active spline interpolation, active tool radius compensation), synchronous READ during this functionality is not possible either.
WRITE: Write access is scheduled in the same way as any other NC command during decoding and is only performed later during NC machining.
Since this synchronisation has undesirable run-time effects, in particular stopping the decoding process during a Read access, this implicit synchronisation can be deactivated when defining variables. Of course, this is only possible if the moment of read access does not take place synchronously with processing or if read access is ensured anyway by an explicit synchronization point in the NC program (e.g. explicit FLUSH & WAIT).
Attention
The output of synchronised V.E. variables takes place in the controller with the MOS synchronisation type over the same interface as the output of technology functions (M/H/T functions). The user must therefore ensure that all data in the queue of this interface are read out by the PLC, otherwise synchronicity for output to the NC channel is not guaranteed.