Communication solutions for Modbus TCP networks
Modbus TCP Principles
Modbus TCP is primarily nothing new. The Modbus protocol which was already in operation in 1979 has been extended by Ethernet-TCP/IP transmission technology . Modbus protocol is today seen as an openly conceived internet-draft-standard, originating from Schneider Automation. In order to standardize the internet, development flowed into the organisation Internet Engineering Task Force (IETF) and so the complete Modbus model and corresponding services have remained unchanged. TCP/IP merely presents a new transmission base in Modus TCP technology.
Modbus TCP technology is a mainstream open standard in industrial communication and together with Ethercat, Powerlink, EtherNet/P and ProfinetIO increasingly utilized. The basis of Modus TCP is compiled from various serial appliances, a solid specification and corresponding basic technology. It should be mentioned that following the implementation of Ethernet standards in automation technology there still exists no single unified user protocol, and it is not likely to exist in the near future, despite heated discussions within various industrial organisations. Up to now only the installation guidelines could be extensively regulated. Thus, there are two varying solutions in existence . Either the Fieldbus-on-Ethernet solution s or appropriate systems for distributed automation.
In the field of distributed automation, Profinet CBA and IDA should be cited. In order to ensure smooth communication between distributed intelligent devices, both systems are defined by a complying, integrated base. Since, however, partitioned systems are essentially different to de-centralized systems, this leads to a new challenge for programmers and developers.
The case, however, is different for the Fieldbus-on-Ethernet systems . The corresponding Fieldbus protocol was really just enhanced by the transmission technology of Ethernet-TCP/IP which left it relatively unchanged. The same is true for EtherCat, EtherNet/IP,Profinet iO as well as Modbus TCP. Since it is not necessary for developers and engineers to change their line of thought, Modus TCP is uncomplicated in its usage. Hence, data transmission between corresponding devices and field busses in industrial communication (automation) is reliable and cost-saving.
There are three different types of Modbus types in existence:
- Modbus TCP (Client-Server-Communication based on Ethernet-TCP/IP)
- Modbus RTU (staggered transmission via RS-232)
- Modbus Plus ( a Token-Passing-Network allows High-Speed Data transmission)
The user protocol is uniformly regulated and does not distinguish between the varying Modbus TCP, RTU or Plus and the object model which is necessary for access is also uniformly regulated. The transmission medium being used determines which user protocol s is to be utilized. The Basis forms the above-mentioned Client-Server transmission. On this occasion the client sends out a Request-Telegram. This transmits a service call which consequently is answered by a server-reply in the form of a Response-Telegram. The advantage of the Modbus TCP can be clearly seen. Whereas the Standard Modbus has to handle the transmission of a check sum as well as the Slave-Address, the Modbus-TCP is able to carry out this function using an appropriate TCP protocol.
The Modbus TCP Mapping
Modbus TCP calls upon the “Transport Control Protocol” during data communication in Ethernet networks . The Encapsulation—Principle plays here a deciding role. For this purpose the TCP telegram contains a user-data container within which the data, as well as the parameters are embedded. During the embedding process an MBAP (Modbus Application Header) is created. The MBAP consequently enables a clear interpretation of the commands received, as well as the parameters. It is highly significant that the embedding of just one TCP/IP-telegram within the Modbus- user-telegram is possible.
The connection-oriented work- performance of Modbus TCP is a further important factor. Firstly, the TCP/IP –connection between client and server is set up before the user-data transmission can take place. The port number 502 is valid as the Modbus-TCP number on the server side. The automatic set-up of the connection allows for a high level of advantageous transparency during the user process. The random communication of data is then unrestricted as soon as the connection between client and server is established enabling multiple connections to be set-up. Possible restrictions for the connection set-up will then result solely from the capacity of the TCP/IP interface connection.
In the case of the Modbus TCP it should be differentiated between two connection variations:
- A permanent connection is sustained during cyclic data communication.
- Connection is interrupted following an on-demand connection up to the next activation.