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.
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.
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.
2.2. 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.
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 (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.
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.
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.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.
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.
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.
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.
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.
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.