
11
Decimal Scaling
Decimal pre-scaling can be used to accommodate fractional numbers to an integer register
format. Fractional numbers pre-multiplied by 10 in power N, where N is the number of digits in
the fractional part. For example, the frequency reading of 50.01 Hz is transmitted as 5001,
having been pre-multiplied by 100. Whenever a data register contains a fractional number, the
register measurement unit is given with a multiplier
×
0.1,
×
0.01 or
×
0.001, showing an actual
register resolution (the weight of the least significant decimal digit). To get an actual fractional
number with specified precision, scale the register value with the given multiplier. To write a
fractional number into the register, divide the number by the given multiplier.
4.2.2 32-bit Modulo 10000 Format
The short energy registers 287-294, and 301-302 are transmitted in two contiguous 16-bit
registers in modulo 10000 format. The first (low order) register contains the value mod 10000,
and the second (high order) register contains the value/10000. To get the true energy reading,
the high order register value should be multiplied by 10,000 and added to the low order register.
4.2.3 32-bit Long Integer Format
In a 32-bit long integer format, data is transmitted in two adjacent 16-bit Modbus registers as
unsigned or signed long integer (whole) numbers. The first register contains the low-order word
(lower 16 bits) and the second register contains the high order word (higher 16 bits) of the 32-bit
long number. The low-order word always starts at an even Modbus address. The value range
for unsigned data is 0 to 4,294,967,295; for signed data the range is -2,147,483,648 to
2,147,483,647.
A 32-bit data can be transmitted without conversion as is, or by using decimal pre-scaling to
transform fractional numbers to an integer format as described above (see Decimal Scaling in
Section 4.2.1).
4.3 User Assignable Registers
The PM130 contains the 120 user assignable registers in the address range of 0 to 119 (see
Table 4-1), any of which you can map to either register address accessible in the instrument.
Registers that reside in different locations may be accessed by a single request by re-mapping
them to adjacent addresses in the user assignable registers area.
The actual addresses of the assignable registers which are accessed via addresses 0 to 119
are specified in the user assignable register map (see Table 4-2). This map occupies addresses
from 120 to 239, where map register 120 should contain the actual address of the register
accessed via assignable register 0, register 121 should contain the actual address of the
register accessed via assignable register 1, and so on. Note that the assignable register
addresses and the map register addresses may not be re-mapped.
To build your own register map, write to map registers (120 to 239) the actual addresses you
want to read from or write to via the assignable area (0 to 119). Note that long word registers
should always be aligned at even addresses
.
For example, if you want to read registers 7136
(real-time voltage of phase A, word) and 7576/7577 (kWh import, long word) via registers 0-2,
then do the following:
- write 7576 to register 120
- write 7577 to register 121
- write 7136 to register 122
Reading from registers 0-2 will return the kWh reading in registers 0 (low word) and 1 (high
word), and the voltage reading in register 2.