beautypg.com

Read holding registers (function code 03) – ProSoft Technology MVI56E-MNETC User Manual

Page 148

background image

Guide to the MVI56E-MNETC User Manual

MVI56E-MNETC ♦ ControlLogix Platform

User Manual

Modbus TCP/IP Client Enhanced Communication Module

Page 148 of 183

ProSoft Technology, Inc.

February 3, 2013

The status of inputs 10197 to 10204 is shown as AC (HEX) = 10101 1100
(binary). Reading left to right, this show that inputs 10204, 10202, and 10199 are
all on. The other input data bytes are decoded similar.

Due to the quantity of input statuses requested, the last data field which is shown
as 35 HEX = 0011 0101 (binary) contains the status of only 6 inputs (10213 to
102180) instead of 8 inputs. The two left-most bits are provided as zeros to fill
the 8-bit format.

5.5.4 Read Holding Registers (Function Code 03)

Query

Read Holding Registers (03) allows the user to obtain the binary contents of
holding registers 4xxxx in the addressed server. The registers can store the
numerical values of associated timers and counters which can be driven to
external devices. The addressing allows up to 125 registers to obtained at each
request; however, the specific server device may have restriction that lower this
maximum quantity. The registers are numbered form zero (40001 = zero, 40002
= one, and so on). The broadcast mode is not allowed.

The example below reads registers 40108 through 40110 from server 584
number 11.

Ad
r

Fun
c

Data Start Reg
Hi

Data Start Reg
Lo

Data #of
Regs Hi

Data #of Regs
Lo

Error Check
Field

11 03

00

6B

00

03

CRC

Response

The addressed server responds with its address and the function code, followed
by the information field. The information field contains 1 byte describing the
quantity of data bytes to be returned. The contents of the registers requested
(DATA) are two bytes each, with the binary content right justified within each pair
of characters. The first byte includes the high order bits and the second, the low
order bits.

Because the server interface device is normally serviced at the end of the
controller's scan, the data will reflect the register content at the end of the scan.
Some servers will limit the quantity of register content provided each scan; thus
for large register quantities, multiple transmissions will be made using register
content from sequential scans.

In the example below, the registers 40108 to 40110 have the decimal contents
555, 0, and 100 respectively.

Adr Func ByteCn

t

Hi Data Lo

Data

Hi Data Lo

Data

Hi Data Lo

Data

Error Check
Field

11

03

06

02

2B

00

00

00

64

CRC