OT Protocols
Zerynth provides a set of device drivers that streamline the interfacing with shopfloor equipment (standard or custom protocols). This simplifies data exchange configuration through the use of the Zerynth No-code Configurator.
Standard OT protocols compatible
OPC-UA
OPC Unified Architecture (OPC UA) is a cross-platform, open-source, IEC62541 standard for data exchange from sensors to cloud applications developed by the OPC Foundation. Distinguishing characteristics are:
- Standardized data models freely available for over 60 types of industrial equipment, published by the OPC Foundation via Companion Specifications
- Extensible security profiles, including authentication, authorization, encryption and checksums
- Extensible security key management, including X.509, token and password
- Support for both client-server and publish-subscribe communication patterns
- Service-oriented architecture (SOA)
Modbus TCP
Modbus TCP or Modbus TCP/IP is a Modbus variant used for communications over TCP/IP networks, connecting over port 502. It does not require a checksum calculation, as lower layers already provide checksum protection.
Modbus TCP nomenclature is the same as for the Modbus over Serial line protocol, as any device which send out a Modbus command, is the 'client' and the response comes from a 'server'.
The ADU for Modbus TCP is officially called MODBUS TCP/IP ADU (or Modbus TCP/IP ADU) by the Modbus organization and is also called Modbus TCP frame by other parties.
MODBUS TCP/IP ADU = MBAP Header + Function code + Data
Where MBAP - which stands for MODBUS Application Protocol header - is the dedicated header used on TCP/IP to identify the MODBUS Application Data Unit.
The MBAP Header contains the following fields:
Name | Lenght (bytes) | Function |
---|---|---|
Transaction identifier | 2 | For synchronization between messages of server and client |
Protocol identifier | 2 | 0 for Modbus/TCP |
Lenght field | 2 | Number of remaining bytes in this frame |
Unit identifier | 1 | Server address |
A MODBUS TCP/IP ADU/Modbus TCP frame format then will be:
Transaction identifier | Protocol identifier | Length | Unit identifier | Function code | Data |
---|---|---|---|---|---|
2 bytes | 2 bytes | 2 bytes | 1 byte | 1 byte | n bytes |
Modbus RTU
Modbus RTU (Remote Terminal Unit), which is the most common implementation available for Modbus, makes use of a compact, binary representation of the data for protocol communication. The RTU format follows the commands/data with a cyclic redundancy check checksum as an error check mechanism to ensure the reliability of data. A Modbus RTU message must be transmitted continuously without inter-character hesitations. Modbus messages are framed (separated) by idle (silent) periods. Every 1 byte (8 bit) data/message of Modbus RTU needs to have 3 more bits to form the total 11 bits:
- 1 start bit
- 8 bit data/message, LSB bit is first sent
- 1 bit parity
- 1 stop bit
A Modbus RTU frame then will be
Slave Address | Function Code | Data | CRC |
---|---|---|---|
1 byte | 1 byte | 0-252 byte | 2 bytes |