1.0 SCOPE
This document is a User Interface Specification for the Walchem Modbus/TCP product feature for W600
and W900 Controllers. It contains mapping of the various dynamic variables to their Modbus/TCP
address locations.
This document supports the Modbus/TCP feature on controller software versions 3.01 and higher.
2.0 INTRODUCTION
The Modbus/TCP feature allows the Walchem controller to communicate with PC-based applications
such as WonderWare and Intellution HMI/SCADA programs, Building Energy Management systems,
Distributed Control Systems (DCS), as well as stand-alone HMI devices.
The controller is a Modbus Server, meaning that it can respond to requests from the HMI device. The
controller cannot initiate the flow of information. For example, it will not immediately send a new alarm
message. It will wait until the HMI device requests the current data contained in specific address
locations.
If the HMI device does not directly support the Modbus/TCP protocol, then a protocol translation
gateway may be required to convert from Modbus/TCP to a protocol that the device supports. Please
note that Modbus/RTU requires a serial interface, not Ethernet, and therefore is not directly compatible
with the Walchem controller.
3.0 OVERVIEW
Modbus/TCP, also known as Modbus TCP/IP, is a form of Modbus that uses the TCP/IP layers as a base
for controlling the communications between different devices. This is not to be confused with Modbus
over TCP/IP, which Walchem controllers do not support.
The Modbus/TCP protocol supports multiple types of data transactions, from reading single bits per
transaction, to advanced object oriented operations. However, to ensure the most compatible system
available, only a basic subset of these functions is supported in the controller.
The official Modbus/TCP protocol supports data addresses 5 digits in length. A de facto extended
standard exists which supports data addresses 6 digits in length. However, to ensure compatibility, the
Modbus/TCP feature supports only 5-digit data address system.
The Modbus/TCP feature supports reading and writing of single-bit Coils and 16-bit Holding Registers, as
well as read-only single-bit Discrete Inputs and 16-bit Input Registers. These data formats allow the
controller to establish blocks that contain all the process variables, set points, alarms, and input/output
status values that are made public to a Modbus/TCP client. These blocks of data are packaged so that it
can be read in 8-bit chunks (for a group of up to 8 Coils or Discrete Inputs) or 16-bit chunks (for a single
Holding Register or Input Register), regardless of the type of data within it. In the following sections, the
formatting, storing, and reading of this data are described.