Issue
To read "Long" or 32-bit values with an IC3-Modbus.
Environment
Sigma
IC3 - Modbus
Modbus
Long
Data
32-bit
Cause
Both "Long" and 32-bit data values can be stored in two separate 16 bit registers and this data must be added together to give the correct reading.
Resolution
To read "Long" or 32-bit data, which is stored in two registers, it is necessary to carry out the following;
Configure the Gateway.txt file entry -
Object No,controller No,Function code,Reg address,Poll Time,No of registers to call,Min,Max,Hardware.
An example could be 50,1,3,4000,1,2,0,0,1
In the controller Sigma AI objects would be created, in the case above, these would be 50 and 51.
A programmable object is required to present the final reading, please see the example below.
10 XFlo = POINT 0|50
20 YFlo = ( POINT 0|51 * 65536.0 )
30 ZFlo = ( XFlo + YFlo ) / 100.000
40 RETURN VIA TEXT 92 VALUE ZFlo
The above programme assumes that the value has been multiplied by 100 at the source device.
The object numbers match the example given and the correct short text number is required.