
Reference
MVI69E-MBTCP ♦ CompactLogix Platform
User Manual
Modbus TCP/IP Enhanced Communication Module
Page 122 of 150
ProSoft Technology, Inc.
June 28, 2017
7.3.1 ENRON Floating Point Support
Many manufacturers have implemented special support in their drivers for what is
commonly called the Enron version of the Modbus protocol. In this
implementation, addresses greater than 7000 are presumed to contain floating-
point values. The significance to this is that the count descriptor for a data
transfer now denotes the number of floating-point values to transfer, instead of
the number of words.
7.3.2 Configuring the Floating Point Data Transfer
A common question is how to handle floating-point data when using the module
as a Modbus client. This really depends on the server device and how it
addresses this application.
Just because your application is reading or writing floating-point data, does not
mean that you must configure the Float Flag, Float Start, and Float Offset
parameters within the module.
These parameters are only used to support what is typically referred to as Enron
or Daniel Modbus, where one register address must have 32 bits, or one floating
point value. Below is an example:
Example #1
Modbus Address
Data Type
Parameter
47101
32 bit REAL
TEMP Pump #1
47102
32 bit REAL
Pressure Pump #1
47103
32 bit REAL
TEMP Pump #2
47104
32 bit REAL
Pressure Pump #2
With the module configured as a client, you only need to enable these
parameters to support a write to this type of addressing (Modbus FC 6 or 16).
If the server device uses addressing as shown in Example #2, then you do not
need to do anything with the
Float Flag
or
Float Start
parameters, as this
addressing scheme uses two Modbus addresses to represent each floating-point
value:
Example #2
Modbus Address
Data Type
Parameter
47101
32 bit REAL
TEMP Pump #1
47103
32 bit REAL
Pressure Pump #1
47105
32 bit REAL
TEMP Pump #2
47107
32 bit REAL
Pressure Pump #2
Because each 32 bit REAL value is represented by two Modbus addresses
(example 47101 and 47102 represent TEMP Pump #1), then you do not need to
set the
Float Flag
, or
Float Start
for the module for Modbus FC 6 or 16
commands being written to the server.
The next few pages show three specific examples:
Summary of Contents for MVI69E-MBTCP
Page 4: ......