beautypg.com

ProSoft Technology PLX31-EIP-SIE User Manual

Page 104

background image

MBTCP Protocol

PLX3x Series

User Manual

Ethernet and Serial Gateways

Page 104 of 218

ProSoft Technology, Inc.

September 17, 2014

Parameter

Value

Description

Function

command. These function codes are defined in the Modbus
protocol. (More information on the protocol is available from

www.modbus.org

.) The following function codes are supported by

the gateway.

1 - Read Coil Status
2 - Read Input Status
3 - Read Holding Registers
4 - Read Input Registers
5 - Force (Write) Single Coil
6 - Preset (Write) Single Register
15 - Force Multiple Coils
16 - Preset Multiple Registers

MB Address
in Device

Varies

Specifies the starting Modbus register or bit address in the server
to be used by the command. Refer to the documentation of each
Modbus server device for the register and bit address
assignments valid for that device.

The Modbus Function Code determines whether the address will
be a register-level or bit-level OFFSET address into a given data
type range. The offset will be the target data address in the server
minus the base address for that data type. Base addresses for
the different data types are:

00001 or 000001 (0x0001) for bit-level Coil data (Function
Codes 1, 5, and 15).

10001 or 100001 (1x0001) for bit-level Input Status data
(Function Code 2)

30001 or 300001 (3x0001) for Input Register data (Function
Code 4)

40001 or 400001 (4x0001) for Holding Register data
(Function Codes 3, 6, and 16).

Address calculation examples:
o

For bit-level Coil commands (FC 1, 5, or 15) to read or
write a Coil 0X address 00001, specify a value of 0
(00001 - 00001 = 0).

o

For Coil address 00115, specify 114

o

(00115 - 00001 = 114)

For register read or write commands (FC 3, 6, or 16) 4X
range, for 40001, specify a value of 0
o

(40001 - 40001 = 0).

For 01101, 11101, 31101 or 41101, specify a value of 1100.
o

(01101 - 00001 = 1100)

o

(11101 -10001 = 1100)

o

(31101 - 30001 = 1100)

o

(41101 - 40001 = 1100)

Note: If the documentation for a particular Modbus server device
lists data addresses in hexadecimal (base16) notation, you will
need to convert the hexadecimal value to a decimal value to enter
in this parameter. In such cases, it is not usually necessary to
subtract 1 from the converted decimal number, as this addressing
scheme typically uses the exact offset address expressed as a
hexadecimal number.