Configuring floating-point data transfer – ProSoft Technology MVI69L-MBTCP User Manual

Page 121

Advertising
background image

MVI69L-MBTCP ♦ CompactLogix Platform

Reference

Communication Module

User Manual

ProSoft Technology, Inc.

Page 121 of 152

January 6, 2014

7.3.2 Configuring Floating-Point Data Transfer

A question commonly asked by users is how to handle floatin-point data when
the module is used 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.

Advertising