How Modbus RTU Works in SCADA Systems Explained
In SCADA systems,
Modbus RTU works as a serial communication protocol that connects field devices like sensors and controllers to the SCADA master. It sends data in a structured frame over RS-485 or RS-232 lines, allowing the SCADA system to read or write device registers for monitoring and control.Syntax
The Modbus RTU message frame consists of several parts:
- Address: Identifies the slave device (1 byte).
- Function Code: Defines the action (e.g., read, write) (1 byte).
- Data: Contains register addresses and values (variable length).
- CRC: Cyclic Redundancy Check for error detection (2 bytes).
This frame is sent over serial lines using RS-485 or RS-232 physical layers.
plaintext
Slave Address | Function Code | Data | CRC 1 byte | 1 byte | N bytes | 2 bytes
Example
This example shows a SCADA master reading holding registers from a Modbus RTU slave device with address 0x01.
plaintext
01 03 00 00 00 02 C4 0B
Output
Slave Address: 0x01
Function Code: 0x03 (Read Holding Registers)
Starting Register: 0x0000
Number of Registers: 0x0002
CRC: 0x0BC4
Common Pitfalls
Common mistakes when using Modbus RTU in SCADA include:
- Incorrect baud rate or parity settings causing communication failure.
- Wrong slave address leading to no response.
- Ignoring CRC errors which cause data corruption.
- Using improper wiring or termination on RS-485 lines causing noise.
Always verify serial settings and wiring before troubleshooting higher-level issues.
plaintext
Wrong way: Master sends: 01 03 00 00 00 02 00 00 # Incorrect CRC Right way: Master sends: 01 03 00 00 00 02 C4 0B # Correct CRC
Quick Reference
| Term | Description |
|---|---|
| Slave Address | Device ID on the Modbus network |
| Function Code | Defines the operation (e.g., read=3, write=6) |
| Data | Register addresses and values |
| CRC | Error checking code |
| RS-485 | Common physical layer for Modbus RTU |
| Baud Rate | Communication speed (e.g., 9600 bps) |
Key Takeaways
Modbus RTU uses serial communication with structured frames for SCADA device control.
Correct serial settings and CRC checks are essential for reliable communication.
Each message includes slave address, function code, data, and CRC for error detection.
RS-485 is the typical physical layer used for Modbus RTU in SCADA.
Common errors come from wrong settings, wiring issues, or ignoring CRC failures.