Applies To:
CitectSCADA 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0 until Last Version
CitectHMI 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0 until Last Version
CitectFacilities 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0 until Last Version
Summary:
What is the difference between all the variants of the MODBUS/MODNET driver?
Solution:
From the driver help:
MODNET - 1-indexed registers/coils with bit access to registers as 1-16.
No support for extended registers.
Maximum request size of 2000 bits.
MODNET0 - 1-indexed registers/coils with bit access to registers as 1-16.
No support for extended registers.
Maximum request size of 2000 bits.
MODNET1 - 0-indexed registers/coils with bit access to registers as 1-16.
No support for extended registers.
Maximum request size of 2000 bits.
MODNET2 - 1-indexed registers/coils with bit access to registers as 0-15.
No support for extended registers.
Maximum request size of 2000 bits.
MODNET3 - 0-indexed registers/coils with bit access to registers as 0-15.
No support for extended registers.
Maximum request size of 2000 bits.
MODNET10 - 1-indexed registers/coils with bit access to registers as 1-16.
Support for extended registers.
Maximum request size of 1920 bits.
MODNET11 - 0-indexed registers/coils with bit access to registers as 1-16.
Support for extended registers.
Maximum request size of 1920 bits.
MODNET12 - 1-indexed registers/coils with bit access to registers as 0-15.
Support for extended registers.
Maximum request size of 1920 bits.
MODNET13 - 0-indexed registers/coils with bit access to registers as 0-15.
Support for extended registers.
Maximum request size of 1920 bits.
MODNET20 - TSX Quantum Compatability Mode.
1-indexed registers/coils with bit access to registers as 0-15.
Support for extended registers.
Maximum request size of 1920 bits.
Forced parameter: RegisterBitReverse=1, FloatMode=0, LongDataType=3
MODNET21 - TSX Quantum Compatability Mode. (superseded by MODNET20)
1-indexed registers/coils with bit access to registers as 0-15.
No support for extended registers.
Maximum request size of 2000 bits.
Addressing syntax %M123, %MW123, %MW123.4 etc...
Forced parameter: RegisterBitReverse=1, FloatMode=0, LongDataType=3
MODNET30 - TSX Premium Compatability Mode.
0-indexed registers/coils with bit access to registers as 0-15.
No support for extended registers.
Maximum request size of 1024 bits.
Forced parameter: RegisterBitReverse=1, FloatMode=0, LongDataType=3
MODNET31 - TSX Premium Compatability Mode. (superseded by MODNET30)
0-indexed registers/coils with bit access to registers as 0-15.
No support for extended registers.
Maximum request size of 1024 bits.
Addressing syntax %M123, %MW123, %MW123.4 etc...
Forced parameter: RegisterBitReverse=1, FloatMode=0, LongDataType=3
Modbus Protocol is a messaging structure developed by Modicon. It is used to establish master-slave/client-server communication between devices. Modbus has a lot of protocol options. But the two used most are Modbus RTU (Remote Terminal Unit), serial (RS-232 or RS-485) protocol or Modbus (TCP/IP) Transmission Control Protocol and Internet Protocol. What’s the difference between the two? Although the two protocols are similar, cost and speed differentiate the two. Modicon introduced the Modbus protocol to the market in 1979. Modbus RTU mode is the most common implementation, but Modbus TCP/IP is gaining ground and ready to surpass it. To move Modbus into the 21st century, an open Modbus TCP/IP specification was developed in 1999.
Modbus is a standard that is open and is widely-used network protocol in the industrial manufacturing environment. It's a common link that has been implemented by hundreds of vendors for integration on thousands of different manufacturing devices to transfer discrete/analog I/O and register data between control devices. A MODBUS communication is always initiated by the master node to the slave node. The slave nodes will never transmit data without receiving a request from the master node nor communicate with each other. The master node initiates only one MODBUS transaction at the same time.There are 4 types of MODBUS registers used:
The coils, starting at 00001, corresponding to on/off binary outputs, such as relays.
The input bits, starting at 10001, corresponding to binary inputs (read only).
The input registers, starting at 30001, corresponding to analog inputs (read only).
The holding registers, starting at 40001, corresponding to analog parameters which can be changed.
On the contrary, Modbus RTU mode is the most common implementation, using binary coding and CRC error-checking. RTU Protocol is an efficient binary protocol in which each eight-bit byte in a message contains two four-bit hexadecimal characters. Each message must be transmitted in a continuous stream. The format for each byte (11 bits) in RTU mode is:
Coding System: 8–bit binary, Bits per Byte: 1 start bit, 8 data bits, least significant bit sent first, 1 bit for parity completion, 1 stop bit.
MODBUS RTU packets are only intended to send data; they do not have the capability to send parameters, such as point name, resolution, units, etc. Standard MODBUS RTU node addresses are 1-254, with 0 being reserved for broadcast messages and write only. MODBUS over Serial Line systems may use different physical interfaces (RS485, RS232). TIA/EIA-485 (RS485) Two-Wire interface is the most common. As an add-on option, RS485 Four-Wire interface may also be implemented. An RS485-MODBUS configuration without repeater has one trunk cable, along which devices are connected directly (daisy chaining). The trunk cable, also named “Bus”, vary in length, however, its two ends must be connected with Line Terminations. The use of repeaters between several RS485-MODBUS is also possible. The end to end length of the trunk cable must be limited. The maximum length depends on the baud rate, the cable (Gauge, Capacitance or Characteristic Impedance), the number of loads on the daisy chain, and the network configuration (2-wire or 4-wire). The typical cable lengths for this kind of bus connection are up to 1000m, and the typical baud rate is 9600 bps. A good cable selection, at least 22 gauge, at an adequate length may be costly.
Modbus TCP/IP is simply the Modbus RTU protocol with a TCP interface that runs on Ethernet. With Ethernet, you are combining a versatile, scalable, and worldwide physical network (Ethernet) with a universal networking standard (TCP/IP) and a vendor-neutral data representation, Modbus. This protocol gives a truly open, accessible network, which allows blocks of binary data to be exchanged between devices. It is simple to implement for any device that supports TCP/IP sockets, with a switch and cable available to each device. It remains fully compatible with the already installed Ethernet infrastructure any customer might have. Ethernet is of course, a lot faster and a bit easier to troubleshoot. However, you may not wish to use Ethernet for your Modbus communications. It may, perhaps, be too fast. TCP/IP is the common transport protocol of the Internet and is a set of layered protocols, providing a reliable data transport mechanism between machines. Ethernet has become the standard of many systems, so it comes as no surprise that it has also become one of the standards for factory networking. As Ethernet technology has been around for years, it has matured to the point that the cost of implementing this network solution has become quite affordable. The Ethernet devices are going to be faster, but speed is not completely necessary with a lot of Modbus devices. All these level sensors, temperature sensors, flow meters and other transmitters do not need to report data very fast. It is necessary for data to be reported every few seconds.
Throughput is hardly a good reason to use RTU over Ethernet. The most basic difference between MODBUS RTU and MODBUS TCP/IP is that MODBUS TCP/IP runs on an Ethernet physical layer, and Modbus RTU is a serial level protocol. Modbus TCP/IP also uses a 6-byte header to allow routing. You can have a lot of issues trying to get the RS485 network to work correctly. You must deal with wire termination issues, network termination issues and more configuration issues than with Ethernet devices. But overall would you take Modbus RTU Devices over Modbus TCP? Modbus TCP/IP is simply the Modbus RTU protocol with a TCP interface that runs on Ethernet. So, if you desire data fast, and you want to come into the 21st century, then Modbus TCP/IP is the way to go.
Protocol refers to the type of messages exchanged between the I/O server and I/O device.
I/O devices support at least one protocol – which governs the kind of commands and data you can exchange with the device. They vary significantly in functionality and in complexity. However, because Citect SCADA supplies the protocol drivers, the engineer does not need to know the details of the protocol. Most modern devices support two or more protocols. This gives engineers flexibility in designing appropriate communications architectures. Occasionally the protocol is closely linked to the transport layer used – particularly in the case of proprietary protocols and communications hardware. In many cases, a specific card or module is necessary in the I/O device to support additional protocols.
Industry Standard Protocols
The automation and associated industries have developed a number of standardized protocols for communicating with I/O devices:
ASCII – for simple serial communications
Modbus – a widely used simple serial protocol for automation
DNP 3.0 – a protocol for distributed networks such as RTUs
BACNet – specifically for the building automation control industry
OPC – a technology for sharing automation data at the PC level
IEC870-5 – communication profile for sending basic telecontrol messages
EIB – European installation bus
Profibus – field bus communications protocols for automation
SNMP – widely used protocol for network devices.
As Citect SCADA allows you to choose whatever protocol you need for the situation, you can choose to use these protocols where supported by your I/O device. This is particularly useful when you have a mix of I/O device brands but you want to simplify and use one common protocol. These components work in unison to expose the inputs and outputs of an I/O device to a Citect SCADA system. Inputs to the I/O device provide information about your plant, such as the speed of a machine, status of a conveyor, or the temperature of an oven. Outputs from the I/O device usually initiate tasks that control the operation of your plant, such as starting electric motors, varying their speed, or switching valves and indication lamps.