
9
4 PROTOCOL IMPLEMENTATION
4.1 Modbus Register Addresses
The PM172 Modbus registers are referred to by using addresses in the range of 0 to 65535. From within the
Modbus applications, the PM172 Modbus registers can be accessed by simulating holding registers of the
Modicon 584, 884 or 984 Programmable Controller, using a 5-digit “4XXXX” or 6-digit “4XXXXX” addressing
scheme. To map the PM172 register address to the range of the Modbus holding registers, add a value of 40001
to the PM172 register address. When a register address exceeds 9999, use a 6-digit addressing scheme by
adding 400001 to the PM172 register address.
4.2 Data Formats
The PM172 uses three data formats to pass data between a master application and the instrument: a 16-bit
integer format, a 32-bit modulo 10000 format, and a 32-bit long integer
format.
4.2.1 16-bit Integer Format
A 16-bit data is transmitted in a single 16-bit Modbus register as unsigned (UINT16) or signed (INT16) integer
(whole) numbers without conversion or using pre-scaling to accommodate large-scale and fractional numbers to a
16-bit register format. Scaling can be made using either the LIN3 linear conversion, or decimal pre-scaling to pass
fractional numbers in integer format.
Non-scaled data
The data will be presented exactly as retrieved by the communications program from the instrument. The value
range for unsigned data is 0 to 65535; for signed data the range is -32768 to 32767.
LIN3 (Linear) Scaling
This conversion maps the raw data received by the communications program in the range of 0-9999 onto the
user-defined LO scale/HI scale range. The conversion is carried out according to the formula:
LO
9999
)
LO
HI
(
Data
_
Raw
Value
_
Units
_
g
Engineerin
+
−
×
=
where:
Engineering_Units_Value - the true value in engineering units
Raw_Data
- the raw input data in the range of 0 - 9999
LO, HI
- the data low and high scales in engineering units
When data conversion is necessary, the HI and LO scales, and data conversion method are indicated for the
corresponding registers.
CONVERSION EXAMPLES
1. Voltage readings
a) Assume device settings (690V input, direct wiring): PT ratio = 1.
Voltage engineering scales (see Note 1 to Table 5-1 ):
HI = Vmax = 828.0
×
PT ratio = 828.0
×
1 = 828.0V
LO = 0V
If the raw data reading is 1449 then the voltage reading in engineering units will be as follows:
Volts reading = 1449
×
(828.0 - 0)/9999 + 0 = 120.0V
b) Assume device settings (wiring via PT): PT ratio = 14,400V : 120V = 120.
Voltage engineering scales:
HI = Vmax = 144.0
×
PT ratio = 144
×
120 = 17,280V
LO = 0V
If the raw data reading is 8314 then the voltage reading in engineering units will be as follows:
Volts reading = 8314
×
(17,280 - 0)/9999 + 0 = 14,368V