336 Fieldbus control
Modbus protocol technical data
Overview
The Modbus® protocol was introduced by Modicon, Inc. for use in control
environments featuring Modicon programmable controllers. Due to its ease of use
and implementation, this common PLC language was quickly adopted as a de-facto
standard for integration of a wide variety of master controllers and slave devices.
Modbus is a serial, asynchronous protocol. Transactions are half-duplex, featuring a
single Master controlling one or more Slaves. While RS232 can be used for point-to-
point communication between a single Master and a single Slave, a more common
implementation features a multi-drop EIA-485 network with a single Master
controlling multiple Slaves. The ACS320 features EIA-485 for its Modbus physical
interface.
RTU
The Modbus specification defines two distinct transmission modes: ASCII and RTU.
The ACS320 supports RTU only.
Feature summary
The following Modbus function codes are supported by the ACS320.
Function
Code
(Hex)
Description
Read Coil Status 0x01 Read discrete output status. For the ACS320, the individual
bits of the control word are mapped to Coils 1…16. Relay
outputs are mapped sequentially beginning with Coil 33 (eg,
RO1=Coil 33).
Read Discrete
Input Status
0x02 Read discrete inputs status. For the ACS320, the individual
bits of the status word are mapped to Inputs 1…16 or 1…32,
depending on the active profile. Terminal inputs are mapped
sequentially beginning with Input 33 (eg, DI1=Input 33).
Read Multiple
Holding Registers
0x03 Read multiple holding registers. For the ACS320, the entire
parameter set is mapped as holding registers, as well as
command, status and reference values.
Read Multiple
Input Registers
0x04 Read multiple input registers. For the ACS320, the 2 analog
input channels are mapped as input registers 1 & 2.
Force Single Coil 0x05 Write a single discrete output. For the ACS320, the individual
bits of the control word are mapped to Coils 1…16. Relay
outputs are mapped sequentially beginning with Coil 33 (eg,
RO1=Coil 33).
Write Single
Holding Register
0x06 Write single holding register. For the ACS320, the entire
parameter set is mapped as holding registers, as well as
command, status and reference values.
Diagnostics 0x08 Perform Modbus diagnostics. Subcodes for Query (0x00),
Restart (0x01) & Listen Only (0x04) are supported.
Force Multiple
Coils
0x0F Write multiple discrete outputs. For the ACS320, the
individual bits of the control word are mapped to Coils 1…16.
Relay outputs are mapped sequentially beginning with Coil
33 (eg, RO1=Coil 33).