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. This behaviour can be determined by the synchronisation type of the variables.
An asynchronous read/write access (see figure, case b)) is executed directly when the NC program is decoded.
Since NC program decoding is performed in a planning phase before the actual execution of the NC commands, synchronous variable access may not simply be performed during program decoding. It must be synchronised with current program execution (axis movement). Synchronous access is ensured as follows:
Synchronous READ (see figure, case a)): When reading, decoding is stopped until program processing reaches the last decoded NC program line (implicit # FLUSH WAIT [PROG// Flushing NC channel]). 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. In such cases, the error ID 20651 is output.
Synchronous WRITE (see figure, case a)): 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 need not be synchronous with processing or this is ensured anyway by an explicit synchronisation 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.