3
Modbus RTU Protocol
From firmware version 1.05.00 and up is it possible to use the protocol
Modbus RTU (Remote Terminal Unit) for data retrieval (alternatively to
SCTM / IEC 60870-5-102).
3.1
Telegram processing
The following rules define the protocol for information transfer between a
Modbus MASTER and the DLX:
•
The DLX supports only the "Modbus RTU mode of transmission": Read
Holding Registers.
•
Transmission settings: 8, N, 1 (1 start bit, 8 data bits, no parity, 1 stop bit).
•
All communications on the network or bus conform to a MASTER/SLAVE
scheme. In this scheme, information and data is transferred between a
Modbus MASTER device (e.g. SIGLON AMR Software) and up to 32
SLAVE devices (DLX).
•
The MASTER initiates and controls all information transfer on the commu-
nications loop.
•
A SLAVE device (DLX) never initiates a communications sequence.
•
All communications activity on the loop occurs in the form of "PACKETS". A
packet is a serial string of 8-bit bytes. The maximum number of bytes con-
tained within one packet is 255.
•
All packets transmitted by a MASTER are REQUESTS. All packets trans-
mitted by a DLX are RESPONSES.
•
At most one DLX can respond to a single request from a MASTER.
3.2
Telegram structure
Every Modbus packet consists of four fields (Request := eight bytes):
•
Slave Address Field: one byte between 1 and F7
•
Function Field: one byte (:= 3 / fix, Read Holding Registers)
•
Data Field:
•
Error Check Field (Checksum): two bytes, a 16-bit Cyclic Redundancy
Check (CRC-16)
Example: Address: 1 / Start register: 102
Request:
Response:
Value = 18 (00 00 00 12
A 42
→ Modbus address := device address – 40001
Request: four bytes (start register: 2 bytes, # of reg.: 2 bytes)
Response: x bytes (counter: 1 byte, n registers: 2*n bytes)
Addr.
Function
Start register
01
03
00
Addr.
Function
Counter
01
03
04
(00 66
) / # of registers: 2 (32-bit)
Dec
Hex
# of Register
66
00
Register 1
00
00
)
Hex
; (:= 1 to 247
)
Hex
Dec
CRC
02
65
CB
Register 2
CRC
00
12
49
3E