Modbus is a serial communications protocol published by Modicon in 1979 for use with its programmable logic controllers (PLCs).
Modbus is often used to connect a supervisory computer with a remote terminal unit (RTU) in supervisory control and data acquisition (SCADA) systems.
Versions of the Modbus protocol exist for serial port and for Ethernet.
For serial connections, two variants exist, with different representations of numerical data and slightly different protocol details. Modbus RTU is a compact, binary representation of the data. Modbus ASCII is human readable, and more verbose. Both of these variants use serial communication. The RTU format follows the commands/data with a cyclic redundancy check checksum, while the ASCII format uses a longitudinal redundancy check checksum. Nodes configured for the RTU variant will not communicate with nodes set for ASCII, and the reverse.
For connections over TCP/IP, the more recent variant Modbus/TCP exists. It does not require a checksum calculation.
I have applied tcp/ip modbus protocol for Koyo PLC to communicate with Daqfactory SCADA. It has done very well.