Modbus RTU communication | |||
---|---|---|---|
Modbus RTU | RS-485, galvanically isolated | ||
Address range | 1…247 / 255 (= "unassigned") | ||
| Default | 10 | |
Transmission formats | 1-8-N-2; 1-8-N-1; 1-8-E-1; 1-8-O-1 | ||
| Default | 1-8-N-1 | |
Baud rates | 9600; 19200; 38400; 57600; 76800; 115200 | ||
| Default | 19200 | |
Bus termination | 120 Ω Selectable via ABT Go / Modbus RTU | ||
| Default | OFF | |
Parity | None; Even; Odd | ||
StopBit | [1]; [2] | ||
Master Alive Timeout | 60 s (fixed) | ||
Supported function codes | 03 (0x03) | Read Holding Register | |
04 (0x04) | Read Input Register | ||
06 (0x06) | Write Single Register | ||
16 (0x10) | Write Multiple Registers |
Cable types | |
---|---|
Modbus | Modbus 2- or 3-wire, twisted, shielded, if > 3 m |
Cable length | |
---|---|
Modbus | Max. 1000 m (3300 ft) |
NOTICE | The baud rate must be adapted to match the cable length. |
Register implementation
All data is arranged in a table and addressed by 0...n-1 (Address). No distinction is made between data types (Discrete Inputs, Coils, Input Registers and Holding Registers). As a consequence, all data can be accessed with the 2 commands for Holding Registers. The commands for Discrete Inputs and Input Registers can be used as an alternative.
Values in all registers are unsigned integer data types representing one value.
Example: Address 11 – Primary flow temperature
- Read value = 10
- Actual value = (Value x Scaling factor) + Offset x Unit
⇒ = (483 x 0.01) + -10 x ℃ = (4.83 - 10) ℃ = -5.17 ℃
Exceptions are registers for cooling volume (Addr. 190/191) and heating volume (Addr. 192/193), as well as for cooling energy (Addr. 194/195) and heating energy (196/197). The values exceed 65'535 and are stored in 2 consecutive registers; they have to be interpreted as last significant word first. These register pairs have to be written at once with the function "Write Multiple Registers". They cannot be written together with other registers.