The ModBUS protocol has been developed by Gould-Modicon to allow the exchange of information between industrial control devices, according to a Master-Slave hierarchy that sees connected to the same serial line the various Slave devices, each identified by its own address, periodically interrogated (polling) by a single Master.
Still today in the era of digital transformation and wireless communication, the Modbus RTU (Remote Terminal Unit) version is one of the most well-known and well-known market standards in the industry. There are considerable advantages in the industrial field:
- De facto standard since 1979
- Easy installation, configuration and use
- Immediate integration into various supervisory, control and automation systems
- Open specifications that do not require hardware constraints.
- Reliable communication between automation devices
- Interoperability between devices from different manufacturers.
- Integration with Modbus TCP through converters and adapters that allow integration with LAN, remote control systems, web and cloud platforms.
- Data access
The physical access is based on a half-duplex serial transmission.
The electrical interface allows point-to-point (RS232) or multipoint connections. The use of the Modbus RTU protocol is compatible with many other industrial automation products: PLCs, temperature controllers, operator panels, data loggers, etc., which can easily communicate with a common supervisor.
To integrate the fieldbus with the company network and decision support systems, SENECA instrumentation also adopts another open and integrable version of the ModBUS protocol, ModBUS TCP/IP. This protocol combines the features of versatility, scalability and widespread diffusion of Ethernet TCP/IP with a hardware-independent data representation mode made up of ModBUS, thus creating an open and accessible infrastructure for process data exchange.
The SENECA version
The ModBUS RTU version used in SENECA I/O modules provides: 1 Start bit (fixed), 8 bits for the data, 1 parity bit (optional), 1 or 2 Stop and CRC bits for the message control; the packet synchronization (framing) occurs whenever a “silence” greater than 3.5 characters elapses: in this case the next bit received and interpreted as the beginning of the new packet.
The latter is sequentially composed of: the device address (first byte), the function code, the data field (2 bytes per value) and the CRC-16. In particular the function code assumes the following meanings (the most common ones are reported):
Function code | First Adress | Description | Function code | Description |
1 | 1 | Read Coil Status | 5 | Force Single Coil |
2 | 10001 | Read Input Status | 6 | Preset Single Register |
3 | 40001 | Read Holding Register | 15 | Write Multilpe Coils |
4 | 30001 | Read Input Registe | 16 | Write Multiple Registers |