Register Addressing
Within Automation Control, both input addresses and output addresses start at 1. In order to operate within the standard I/O functions provided by Modbus, it is necessary to separate input and outputs into their own address range.
The default configuration of the Z45 Controllers Modbus TCP Client leaves the base address of inputs starting at 1 but moves the base address of outputs to 1000. This parameter may be adjusted if necessary. This parameter and other addressing configuration parameters will be defined in a following section on configuration parameters.
Since Z45 Controller Numeric and Hex data elements are 32 bit, the address must be multiplied by 2 to comply with standard Modbus addressing. Digital data elements will have the same.
-
Input example: If you wish to address a Numeric or Hex Input configured at Z45 Controller address 2, the Modbus address would be 4 (address * 2). You would use address 4 to retrieve the 32 bit value. You would also use address 4 if you were to do a single register (16 bit) read. In that case you will be retrieving the least significant portion of the 32 bit value.
-
Output example: If you wish to address a Numeric or Hex Output configured at Z45 Controller address 2, the Modbus address would be 1004 (address * 2 + 1000. You would use address 1004 to retrieve or write the 32 bit value. You would also use address 1004 if you were to do a single register (16 bit) read or write. In that case you will be retrieving or writing the least significant portion of the 32 bit value.
I/O Type | Input Address Range | Output Address Range |
---|---|---|
Holding Coil | 00001 - 00999 | 01001 - 01999 |
Discrete Input | 10001 - 10999 | 11001 - 11999 |
Input Register | 30001 - 30999 | 31001 - 31999 |
Holding Register | 40001 - 40999 | 41001 - 41999 |