ProSoft Technology MVI56E-MCM/MCMXT User Manual

Page 163

Advertising
background image

MVI56E-MCM ♦ ControlLogix Platform

Reference

Modbus Communication Module

User Manual

ProSoft Technology, Inc.

Page 163 of 199

June 18, 2014

Response
An example response to Read Input Status is as shown in the table below. The
data is packed one bit for each input. The response includes the Slave address,
function code, quantity of data characters, the data characters, and error
checking. Data is packed with one bit for each input (1=ON, 0=OFF). The lower
order bit of the first character contains the addressed input, and the remainder
follow. For input quantities that are not even multiples of eight, the last characters
is filled in with zeros at high order end. The quantity of data characters is always
specified as a quantity of RTU characters, that is, the number is the same
whether RTU or ASCII is used.

Because the Slave interface device is serviced at the end of a controller's scan,
data reflects input status at the end of the scan. Some Slaves limit the quantity of
inputs provided each scan; thus, for large coil quantities, multiple PC transactions
must be made using coil status for sequential scans.

Adr

Func

Byte
Count

Data Discrete Input
10197 to 10204

Data Discrete Input
10205 to 10212

Data Discrete Input
10213 to 10218

Error Check Field

0B

02

03

AC

DB

35

CRC

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.

6.8.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 Slave. 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 Slave 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 Slave number 11.

Note: This is the structure of the message being sent out to the Modbus network. The byte values
below are in hexadecimal display.

Adr Func Data Start Reg Hi Data Start Reg Lo Data #of Regs Hi Data #of Regs Lo Error Check Field
0B 03

00

6B

00

03

CRC

Advertising