The Different Modbus Drivers on SCADA Host

To connect Modbus RTU serial devices to an Ethernet network, it is very important to know which Modbus driver on the SCADA host you can use in order to define what communication device to use. There are four possible options:

  1. SCADA host with Modbus TCP driver
  2. SCADA host with Modbus RTU driver – with built-in serial port
  3. SCADA host with Modbus RTU driver – without built-in serial port
  4. SCADA host with “Ethernet Encapsulation” driver

Let’s dive into each one and discuss the detail:

(1) A SCADA host with a Modbus TCP driver:

A protocol conversion gateway should be used here. With a gateway’s help, you can use Modbus TCP protocol to communicate with Modbus RTU-supported devices. Many gateways that enable Modbus TCP connections for Modbus RTU slave devices are available in the automation market. When the gateway receives the Modbus TCP request, it converts the packet to a Modbus RTU packet and sends it to the Modbus RTU-supported devices immediately.

(2) A SCADA host with a Modbus RTU driver, with built-in serial port

For some reason, an existing SCADA host with built-in serial ports and Modbus RTU-supported

devices can’t be changed, but both ends need to be bridged by an Ethernet network. In this

instance, you can use a pair of gateways to enable connectivity. As shown in the topology

illustration below, the gateway can convert the Modbus RTU packet into a Modbus TCP packet

and back to a Modbus RTU packet.

(3) A SCADA host with a Modbus RTU driver, without a built-in serial port

If you want to use your existing SCADA program and devices, but your original SCADA host

does not have a built-in serial port, a serial device server can be used to build a virtual COM

port for the serial port on the remote serial device server connected to your serial devices. This

configuration allows you to access remote serial devices through the serial device server as if it

had a native COM port. The serial device server will install the virtual COM port driver on your

SCADA host to create a virtual COM port. To enable the virtual COM port, the serial device

server must be configured to virtual COM mode. The data sent to this virtual COM port will be

transferred to the remote serial port of the serial device server. Actions for the modem signal

will also be handled in the same way. Since you can use the virtual COM port in the same way

as a native local COM port, you can send the Modbus RTU request to the COM port directly,

just as you would if it were a physical COM port.

(4) A SCADA host with an Ethernet Encapsulation driver

If you don’t have a built-in serial port on your SCADA host, and you don’t want to install a

virtual COM port driver, you can consider an Ethernet encapsulation driver instead. However,

your SCADA software must be able to support the Ethernet encapsulation driver, which isn’t

always the case. Generally speaking, Ethernet encapsulation drivers are the best option if you

have an in-depth knowledge of serial and TCP/IP networks. In this case, you will need a serial

device server with raw socket mode or tunneling mode selected, which means the connection

between the host and serial device server uses transparent TCP/IP or UDP communication

without any protocol involved when SCADA sends Modbus RTU packets to field devices. The

serial device server needs to be configured properly because Modbus RTU uses interval

timeouts to determine the end of a packet. If the host is not configured properly, the Modbus

RTU packet may be divided into two or more TCP/IP or UDP packets, and the host will drop the

incomplete packets.

Once the Modbus driver in the host is defined, you can then decide if serial device server or Modbus Gateway should be used.