
Additional Information CLV61x Dual Port (PROFINET IO)
8017978 / 2014-11-20 © SICK AG · Germany · All rights reserved · Subject to change without notice 19
5.1.3 Receiving data
Transmission from the CLV61x Dual Port to the PROFINET IO Controller requires no STX/ETX framing
characters.
If the output format contains STX/ETX, it is transmitted as data content to the PLC.
The output format must be formatted without STX/ETX in the sensor:
The CLV61x Dual Port puts the received data in the ReceiveData field and also adds the ReceiveLength.
The ReceiveCount value is also incremented to show that new data has been received.
Byte handshake:
To show that the PLC has received the data correctly, the PLC must respond to the CLV61x Dual Port by
copying the ReceiveCount value to the output side for ReceiveCountBack within 10 seconds. The second
input byte must be copied to the second output byte. (byte handshake
). If the CLV61x Dual Port
determines that both values are again identical, it can send the next data block. The ReceiveCount runs
from 1 to 255. 0 is omitted in normal operation.
If the CLV61x Dual Port sets the value to 0 during operation, it indicates that an error has occurred. In such
case, the count must be restarted. To restart the count, the PLC must respond with 0. Otherwise, the count
and data transmission does not continue. The PLC must always copy the ReceiveCount value to the
ReceiveCountBack without restriction.
Longer data telegrams are divided into blocks (fragmentation):
If the received data is too long and does not fit in the input range of the PLC completely, it is automatically
divided into blocks. The ReceiveLength always shows the length of the remaining data. In the first block,
the length corresponds to the complete telegram length. If the block was answered with the byte
handshake, the next block is sent and the length decremented.
Example:
Receipt of 100 bytes with a block size of 32-byte input (may contain up to 27 bytes in one block)
ReceiveCount ReceiveLength
ReceiveData
1
100 first 27 data bytes
2 73 next 27 data bytes
3
46 next 27 data bytes
4
19 last 19 data bytes, the rest will be filled with 00
The ReceiveLength must be checked to determine whether a single block or the start of longer fragmented
data was received. If ReceiveLength is longer than the data input variable, then fragmentation occurs.
If shorter, it is a single telegram.
Comentarios a estos manuales