UM-0085-B09
DT80 Range User Manual
Page 175
RG
Part J – Modbus Interface
About Modbus
Modbus
is a simple communications protocol which is widely used in
SCADA
(supervisory control and data acquisition)
systems. Modbus provides an efficient and standardised way to transport digital states and data values between a
remote terminal unit (
RTU
) or programmable logic controller (
PLC
) and a supervisory computer.
Servers and Clients
In a Modbus-based SCADA system, each RTU/PLC acts as a Modbus
server
, or
slave
. These servers/slaves listen for
and reply to requests from a Modbus
client
, or
master
system. A Modbus client is typically a computer that provides a
mimic display, user interface and various data logging and alarm functions.
Modbus can operate using a broad range of communications media. These fall into two main categories:
•
a serial connection, typically RS232, RS422 or RS485
•
a TCP/IP network, which can use a variety of physical link types e.g. Ethernet, wireless, fibre-optic, serial (PPP)
The DT80 is capable of operating as a Modbus server; that is, it can act like an RTU or PLC device. This allows the
DT80 to be easily integrated into any Modbus-based SCADA system. No special drivers are required for the client
system.
A Modbus client system can directly read or write any DT80 channel variable (CV) or digital I/O channel.
The DT80 can also operate as a Modbus client, where it can read data from Modbus sensors in the same way that it
reads data from SDI-12 or serial sensors. See
for more details.
The remainder of this section describes the operation of the DT80 as a Modbus server.
In general terms, the procedure for setting up the DT80 in a Modbus environment is:
1.
Establish a physical connection (TCP/ IP or serial) between the Modbus client system and the DT80.
2.
Load a job onto the DT80 that scans the required channels at the required rates. The job should also load the
measured values into channel variables.
3.
Configure the client system to poll the Modbus addresses corresponding to the DT80 CVs and digital I/Os of
interest.
Note:
Even if there is no job loaded, the DT80's Modbus server is still active and the client can query or set any CV or digital channel.
Connecting to a Modbus Network
The DT80 supports both TCP/IP and serial Modbus networks.
TCP/IP Connection
Up to three Modbus client systems can simultaneously connect to the DT80 using TCP/IP.
The first step in setting up Modbus over TCP/IP is to establish a working TCP/IP connection between the client system
and the DT80. This involves assigning an IP address to the DT80, along with a couple of other settings, depending on
whether Ethernet or PPP is used. See
Ethernet Communications (P231)
for more
details.
By default, the DT80's TCP/IP Modbus server is always enabled. It will listen for connection requests from client systems
which are directed to TCP port 502 (which is the standard port number for Modbus). If required, this port number may be
changed using the following DT80 command:
PROFILE MODBUS_SERVER TCPIP_PORT=
port
where port is the desired port number (1-65535).
To disable the DT80's TCP/IP Modbus server, set the port number to zero, i.e.
PROFILE MODBUS_SERVER TCPIP_PORT=0
Serial Connection
A serial Modbus network has one client (master) system connected to one or more server (slave) devices. Serial
networks using the RS485 or RS422 standards support multi-drop, i.e. multiple slaves connected to one master. RS232
or USB can also be used for point-to-point connections (single master and single slave).
Slave devices on a serial Modbus network are identified by an 8-bit
slave address
(1-247). Every slave device on a
particular serial network must have a unique address. (Slave addresses are not required on a TCP/IP Modbus network,
because the slaves are identified by their IP address.)
The DT80 can be connected to a serial Modbus network using either the serial sensor port, the host RS232 port, or the
USB port.