Issue:
A user would like to read certain values from an ION meter via Modbus register reads.
Product Line:
ION 7300, 7500, 7600, 7550, 7650, 8300, 8400, 8500, 8600, 8650 series meters
Cause:
Using Modbus Tester to read 'Mod 10' or Int32 type registers will return two types of registers that need to be converted in order to find the Energy decimal value.
Resolution:
There are two register formats that are used to store energy measurements on ION meters. The two register formats are Int32-M10k and Int32. The table below shows which meters utilize each of the formats. Review the table and calculation descriptions shown below.
Meters | Int32-M10K | Int32 |
ION 7300 Series | X | X |
ION 7500/7600 | X | X |
ION7550/7650 | X | |
ION8600 | X | X |
ION8650 | X | X |
ION8800 | X | X |
ION8300/8400/8500 | X | X |
1) 32-bit integer format
To accommodate values that can reach beyond the 16-bit range, the Modbus server module provides 32-bit integer format as an output option.
Value = registerhigh x 65536 + registerlow
or
Value = registerhigh|registerlow
Example:
Calculating the kWh del (Import):
230: registerhigh = 18
231: registerlow = 39792
kWh = (18*65536) + 39792
kWh = 1219440
The calculated kWh matches with the real-time kWh as viewed in ION Setup.
Another method that can be used to read these registers is to read the Modbus register values (most significant bit followed by the least significant bit) in hexadecimal format, and convert to decimal using Modbus Tester:
Calculating the kWh del (import):
230: registerhigh (hex) = 0
231: registerlow (hex) = 7550
kWh del (hex) = 7550
kWh del (decimal) = 30,032
Calculating the kWh rec (export):
232: registerhigh (hex) = 7D
233: registerlow (hex) = 19C2
kWh rec (hex) = 7D19C2
kWh rec (decimal) = 8,198,594
The calculated kWh matches with the real-time kWh as viewed in the ION Setup.
2) 32-bit ‘Modulus-10000’ format (MOD10)
The Modulo-10000 (M10K) format breaks a 32-bit value into two 16-bit registers,
according to the following relationship:
Formula:
The 32-bit value can be retrieved by the following calculation:
Value = (registerhigh * 10000^1)) + (registerlow * (10000^0))
Example:
Calculating the kWh:
91: registerhigh = 33
92: registerlow = 716
kWh = (33* (10,000^1)) + (716 * (10,000^0))
kWh = 330,716
The calculated kWh matches with the real-time kWh as viewed in ION Setup.
Refer to the Modbus Protocol and Register Map for ION Devices for the Modbus register tables and further register format descriptions.