Communications and protocols used in industrial automation

Industrial network protocols in industrial automation
June 29, 2020 by
Communications and protocols used in industrial automation
Boot & Work Corp. S.L., DAVID SEGOVIA LOPEZ

Index

1. Introduction

2. Communications

2.1. WiFi & Ethernet

2.2. RS232 & RS485

2.3. I2C

2.4. GPRS

3. Protocols

3.1. HTTPS & HTTPS

3.2. MQTT

3.3. Modbus

    • Modbus RTU

    • Modbus TCP/IP

1. Introduction

In this post, you will learn the main industrial automation communications available on Industrial Shields PLCs, and the types of industrial networking protocols they work with.

Communications and protocols in industrial automation

2. Communications

2.1. WiFi & Ethernet

In an industrial PLC controller such as the Arduino, Wi-Fi uses various parts of the IEEE 802 family of protocols and is designed to work seamlessly alongside its wired counterpart, Ethernet.

Compatible devices can connect wirelessly via access points, enabling communication with each other as well as with wired devices and the internet. The different versions of Wi-Fi are defined by different IEEE 802.11 protocol standards, which serve as industrial wireless networking protocols. The radio technologies used determine the frequency bands, maximum ranges and achievable speeds. The frequency bands most commonly used by Wi-Fi are 2.4 gigahertz (120 mm) UHF and 5 gigahertz (60 mm) SHF ISM, both of which are further divided into multiple channels. Although channels can be shared between networks, only one transmitter can transmit locally on a channel at any given time.

WiFi
Ethernet

Ethernet is the most widely used technology in Local Area Networks (LANs) and Wide Area Networks (WANs). Ethernet communication uses the LAN protocol, which is technically known as IEEE 802.3 protocol. This industrial network protocol has evolved and improved over time to transfer data at the rate of one gigabit per second.

The Industrial Shields M-Duino family PLCs incorporate the W5500 IC integrated circuit. The W5500 is a wired TCP/IP embedded Ethernet controller that facilitates the connection of embedded systems to the Internet. This chip allows users to have Internet connectivity in their applications using a single chip that integrates the TCP/IP stack, the 10/100 Ethernet MAC and the PHY. 

The W5500 chip incorporates a 32 Kb internal memory buffer for processing Ethernet packets. With this chip, users can implement the Ethernet application using socket programming. The SPI (Serial Peripheral Interface) bus is provided to facilitate data transfer with the external microcontroller.

Ethernet uses different industrial protocols to communicate. Some of them are HTTP, HTTPS, MQTT and Modbus protocols.

2.2. RS-232 & RS-485

RS-232 & RS-485

RS-485, also known as TIA/EIA-485, is a standard that defines the electrical characteristics of controllers and receivers for use in serial communications systems. Electrical signalling is balanced and supports multi-drop systems. The standard is published jointly by the Telecommunications Industry Association and the Electronic Industries Alliance (TIA/EIA).

Digital communications networks implementing the standard can be used effectively over long distances and in electrically noisy environments. Several receivers can be connected to such a network in a linear multi-drop bus. These features make RS-485 useful in industrial control systems and similar applications.

RS-485

RS-485

Industrial Shields Arduino-based industrial PLCs include the MAX485 integrated circuit. MAX485 is a low-power, slew rate limited transceiver used for RS-485 communication. It operates on a single +5V power supply and the rated current is 300 μA. By adopting Half-Duplex communication to implement the function of converting TTL level to RS-485 level, it can achieve a maximum transmission speed of 2.5Mbps.

The MAX485 transceiver consumes a supply current of between 120μA and 500μA at full discharge or full load conditions when the controller is off.

RS-232

RS-232

RS-232 (Recommended Standard 232) is a standard for data transmission by serial communication. It formally defines the signals for connection between a DTE (Data Terminal Equipment), such as a computer terminal, and a DCE (Data Circuit-Terminating Equipment or Data Communication Equipment), such as a modem.

The standard defines the electrical characteristics and timing of the signals, the meaning of the signals, and the physical size and pinout of the connectors. The current version of the standard is TIA-232-F Interface Between a DTE and a DCE Employing Serial Binary Data Interchange. The RS-232 standard has been commonly used in serial computer ports and is still widely used in industrial communication devices.

Industrial Shields Arduino-based industrial PLCs incorporate the MAX232 integrated circuit. The MAX232 converts signals from the TIA-232 (RS-232) serial port into signals suitable for use in TTL-compliant digital logic circuits. The MAX232 is a dual transmitter/dual receiver used to convert RX, TX, CTS, RTS signals.

2.3. I2C

I2C (Inter-Integrated Circuit), pronounced I-squared-C, is an asynchronous, multi-master, multi-slave, packet-switched, single-ended, multi-master serial computer bus. It is widely used to connect low-speed peripheral integrated circuits to processors and microcontrollers for short-distance intra-board communications.

Subsequently, I2C was gradually adopted by other manufacturers until it became a market standard. The I2C bus requires only two wires for operation, one for the clock signal (CLK) and one for sending data (SDA), which is an advantage over the SPI bus. On the other hand, its operation is somewhat more complex, as are the electronics needed to implement it.

2.4. GPRS

GPRS MDuino PLC

General Packet Radio Services (GPRS) is an industrial packet-based wireless communication service that promises data transmission speeds from 56 to 114 Kbps and continuous Internet connectivity for mobile phone and computer users. GPRS is based on the Global System for Mobile Communications (GSM) and complements existing services such as circuit-switched cellular phone connections and Short Message Service (SMS).

The Arduino based Industrial PLCs with GPRS are ideal for remote monitoring, data logging and remote access, diagnostics and control, via short text messages (SMS). You can set the messages to be sent from a device with static (text) or dynamic (text and values) content.

It also contains several communication ports that provide more flexibility and control. The GPRS/GSM family offers the possibility to expand up to 127 modules via I2C, which means you can have up to 7100 Inputs/Outputs in Master-Slave connections, plus sensors, etc.

3. Protocols

3.1. HTTP & HTTPS

HTTP stands for Hypertext Transfer Protocol (Hypertext Transfer Protocol). By entering http:// in the address bar in front of the domain, the browser is instructed to connect via HTTP.

HTTP uses TCP (Transmission Control Protocol), usually via port 80, to send and receive data packets over the web.

HTTP & HTTPS

HTTPS stands for Hypertext Transfer Protocol Secure (also known as HTTP over TLS or HTTP over SSL). When https:// is entered in the address bar in front of the domain, the browser is instructed to connect via HTTPS. Generally, sites that operate over HTTPS will have a redirect in place, so even if you type http:// you will be redirected to deliver over a secure connection. HTTPS also uses TCP (Transmission Control Protocol) to send and receive data packets, but does so over port 443, within a Transport Layer Security (TLS) encrypted connection.

HTTP and HTTPS can work with WiFi, Ethernet, and GPRS.

3.2. MQTT

MQTT (Message Queuing Telemetry Transport) is a lightweight OASIS and ISO (ISO/IEC 20922) open standard, publish-subscribe network protocol that transports messages between devices. This automation communication protocol typically runs over TCP/IP; however, any network protocol that provides ordered, lossless, bi-directional connections can support MQTT. It is designed for connections to remote locations where a "small code footprint" is required or network bandwidth is limited.

MQTT can work with WiFi, Ethernet, and GPRS.

3.3. Modbus

Modbus

Modbus is an open standard and an industrial network protocol that allows Master-Slave/Client-Server communications between devices. It was developed by Modicon and is widely used in the industrial manufacturing environment for transferring discrete/analogue I/O and register data between control devices. Modbus has many protocol options, but the most common are Modbus RTU (Remote Terminal Unit) and Modbus TCP/IP (Transmission Control Protocol). 

In Modbus, the master node initiates only one transaction at a time and the slave nodes only respond to requests from the master node. Modbus RTU is the most popular implementation, but Modbus TCP/IP is gaining popularity and may soon surpass it.

Modbus RTU

mode is the most common implementation, which uses binary encoding and CRC error checking. The RTU protocol is an efficient binary protocol in which every eight bits (one byte) of a message contains two four-bit hexadecimal characters. Each message must be transmitted in a continuous stream. The format of 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 to complete parity, 1 stop bit. Modbus RTU packets are for sending data only; they do not have the ability to send parameters, such as point name, resolution, units, etc.

RTU is extremely popular for industrial control networks, as it has been around for a long time, and there is a lot of hardware and software that supports it.

Modbus RTU is commonly used in RS-485 communication but can also work with RS-232.

Modbus TCP

is basically the Modbus RTU protocol using the TCP interface on an Ethernet network. The Modbus data structure is defined using the application layer used in the TCP/IP protocol. The TCP, or transport protocol, is used to ensure that data is received and sent correctly, and the IP is the address and routing information.

Essentially, the Modbus TCP/IP command is a Modbus RTU command enclosed in an Ethernet TCP/IP wrapper. The advantage of using Modbus TCP/IP is the use of existing Ethernet network equipment that is widely available and cost effective.


Share this post on your favorite social network      

Following readings

​Search in our Blog

Communications and protocols used in industrial automation
Boot & Work Corp. S.L., DAVID SEGOVIA LOPEZ June 29, 2020
Share this post

Looking for your ideal Programmable Logic Controller?

Take a look at this product comparison with other industrial controllers Arduino-based. 

We are comparing inputs, outputs, communications and other features with the ones of the relevant brands.


Industrial PLC comparison >>>