Configuring floating-point data transfer – ProSoft Technology MVI69E-MBS User Manual

Page 126

Advertising
background image

Reference

MVI69E-MBS ♦ CompactLogix Platform

User Manual

Communication Module

Page 126 of 162

ProSoft Technology, Inc.

January 6, 2014

7.3.2 Configuring Floating-Point Data Transfer

A frequently asked question is how to handle floating-point data when the module
is used as a Modbus Master. This really depends on the slave 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 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 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 slave.

The next few pages show three specific examples.

Advertising