PLX30 Series
MBTCP Protocol
Ethernet and Serial Gateways
User Manual
ProSoft Technology, Inc.
Page 111 of 200
September 19, 2012
Because the server interface device is serviced at the end of a controller's scan,
data will reflect coil status at the end of the scan. Some servers will 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.
Adr Func
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
11
01
05
CD
6B
B2
OE
1B
CRC
The status of coils 20 to 27 is shown as CD(HEX) = 1100 1101 (Binary). Reading
left to right, this shows that coils 27, 26, 23, 22, and 20 are all on. The other coil
data 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.
Read Input Status (Function Code 02)
Query
This function allows the user to obtain the ON/OFF status of discrete inputs in the
addressed server PC Broadcast mode is not supported with this function code. In
addition to the server 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 will be interrogated to obtain status data.
The addressing allows up to 2000 inputs to be obtained at each request;
however, the specific server 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 from server number 11.
Adr
Func
Data Start Pt Hi
Data Start Pt Lo Data #of Pts Hi Data #of Pts Lo Error Check Field
11
02
00
C4
00
16
CRC
Response
An example response to Read Input Status is as shown in Figure C4. The data is
packed one bit for each input. The response includes the server address,
function code, quantity of data characters, the data characters, and error
checking. Data will be 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 will be 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.