ProSoft Technology MVI69-MCM User Manual

Page 61

Advertising
background image

MVI69-MCM ♦ CompactLogix or MicroLogix Platform

Configuring the MVI69-MCM Module

Modbus Communication Module

User Manual

ProSoft Technology, Inc.

Page 61 of 167

March 22, 2011

ENRON Floating Point Support
Many manufacturers have implemented special support in their drivers to support

what is commonly called the Enron version of the MODBUS protocol. In this

implementation, register addresses > 7000 are presumed to be floating point

values. The significance to this is that the count field now becomes a 'number of

values' field. In floating point format, each value represents two words.

Configuring the Floating Point Data Transfer
A common question when using the module as a Modbus Master is how floating

point data is handled. This really depends on the slave device and how it

addresses this application.
Just because your application is reading/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 Master, you only need to enable these

parameters to support a write to this type of addressing (Modbus FC 6 or 16).
If the slave device shows addressing as shown in Example #2, then you need not

do anything with the Float Flag, Float Start parameters, as they use two Modbus

addresses to represent one 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 need not set

the Float Flag, or Float Start for the module for Modbus FC 6 or 16 commands

being written to the slave.
The next few pages show three specific examples:

Advertising