beautypg.com

Read input status (function code 02) – ProSoft Technology MVI69L-MBS User Manual

Page 108

background image

Reference

MVI69L-MBS ♦ CompactLogix Platform

User Manual

Communication Module

Page 108 of 154

ProSoft Technology, Inc.

January 6, 2014

Node

Address

Function

Code

Data Start

Point High

Data Start

Point Low

Number of

Points High

Number of

Points Low

Error Check

Field (2 bytes)

0B

01

00

13

00

25

CRC

Response
The data is packed one bit for each coil. 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 coil (1 = ON, 0 = OFF). The
low order bit of the first character contains the addressed coil, and the remainder
follows. For coil quantities that are not even multiples of eight, the last characters
are filled in with zeros at high order end. The quantity of data characters is
always specified as 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 coil status at the end of the scan. Some Slaves limit the quantity of
coils provided each scan; thus, for large coil quantities, multiple PC transactions
must be made using coil status from sequential scans.

Node

Address

Func

Code

Byte

Count

Data Coil

Status 20

to 27

Data Coil

Status 28

to 35

Data Coil

Status 36

to 43

Data Coil

Status 44

to 51

Data Coil

Status 52

to 56

Error Check

Field (2

bytes)

0B

01

05

CD

6B

B2

OE

1B

CRC

The status of coils 20 to 27 is shown as CD (HEX) = 1100 1101 (Binary).
Reading from left to right, this shows that coils 27, 26, 23, 22, and 20 are all on.
The other Data Coil Status bytes are decoded similarly. Due to the quantity of
coil statuses requested, the last data field, which is shown 1B (HEX) = 0001 1011
(Binary), contains the status of only 5 coils (52 to 56) instead of 8 coils. The 3 left
most bits are provided as zeros to fill the 8-bit format.

7.2.3 Read Input Status (Function Code 02)

Query
This function allows the user to obtain the ON/OFF status of discrete inputs
(Modbus 1x range) in the addressed Slave PC Broadcast mode is not supported
with this function code. In addition to the Slave address and function fields, the
message requires that the information field contain the initial input address to be
read (Starting Address) and the number of locations that are interrogated to
obtain status data.

The addressing allows up to 2000 inputs to be obtained at each request;
however, the specific Slave device may have restrictions that lower the maximum
quantity. The inputs are numbered form zero; (input 10001 = zero, input 10002 =
one, input 10003 = two, and so on, for a 584).

The following table is a sample read input status request to read inputs 10197 to
10218 (22 coils) from Slave number 11.