How Single-Board Computers Extend the Reach of Industrial Automation

By Jeff Shepard

Contributed By DigiKey's North American Editors

The availability of single-board-computers (SBCs) like Arduino and Raspberry Pi, rated for use in industrial environments together with software development tools based on the International Electrotechnical Commission (IEC) 61131-3 standard, have opened new opportunities for machine and factory automation designers. Some of these new SBC-based solutions also open new possibilities for automating environmental monitoring, smart home and building installations, agricultural applications, and other non-industrial systems.

Industrial SBCs are being used in machine controllers, industrial PCs (IPCs), Industrial Internet of Things (IIoT) gateways, micro programmable logic controllers (PLCs), soft PLCs, analog and digital input/output (I/O) modules, and more. These SBC-based devices are built on open hardware and open software platforms, sometimes including full root rights.

Compliance with IEC 61131-3 means that the five standard automation programming languages are supported, including ladder diagram, structured text, function block diagram, sequential function diagram, and instruction list. Being built using SBCs means developers can also turn to languages like Java, Python, C, or C++, providing greater flexibility than traditional industrial control hardware. Some support data security from the hardware to the Cloud or a higher-level network like an enterprise resource planning (ERP) system with an onboard secure element and International Telecommunications Union (ITU) X.509 Standard public key compliance.

This article presents examples of SBC-based solutions available to machine and automation designers from Arduino, Industrial Shields, and KUNBUS for various applications, including small- to medium-scale automation, embedded control in small machines, and large factory automation installations. The article closes with a look at how PROFINET and deterministic networking can be implemented on SBC PLCs.

Arduino PLCs

One of the benefits of most Arduino-based PLCs is the availability of the Arduino PLC integrated development environment (IDE) for writing control software. The Arduino PLC IDE enables users to choose any of the five programming languages defined by IEC 61131-3 and quickly code PLC applications or port existing ones. It also includes ready-to-use Arduino sketches (programs), tutorials, and libraries.

Industrial Shields’ Arduino-based PLCs can be programmed using the Arduino IDE or directly using C. These PLCs include open-source tools and can be programmed with multiple software platforms. They can be programmed through the USB or Ethernet ports for remote connections. Users can continuously monitor the status of all the variables, inputs, and outputs.

The model IS.MDUINO.21+ from Industrial Shields is rated for operation from 0°C to +60°C, and its ATmega processor achieves a throughput of 16 MIPS at 16 MHz (Figure 1). Features include:

  • 13 Inputs:
    • 7 opto isolated digital (5 VDC to 24 VDC)
      • 2 Interrupts (5 VDC to 24 VDC)
    • 6 software configurable as analog (0 VDC to 10 VDC, 10 bit) or digital (5 VDC to 24 VDC)
  • 8 Outputs:
    • 5 opto isolated digital (5 VDC to 24 VDC)
    • 3 software configurable as analog (0 VDC to 10 VDC, 8 bit), digital (5 VDC to 24 VDC), or pulse width modulated (5 VDC to 24 VDC)
  • 256 KB memory
  • Ethernet, RS-232, RS-485 and USB communications
  • Expandable with up to 127 modules

Image of Industrial Shields model IS.MDUINO.21+Figure 1: The model IS.MDUINO.21+ from Industrial Shields has 13 inputs and 8 outputs. (Image source: Industrial Shields)

Micro PLCs

The Arduino Opta is a micro PLC designed to support IIoT applications. Programmable with the Arduino PLC IDE, it supports Arduino sketches and standard PLC languages. The main processor is the dual-core STM32H747 with a 480 MHz Cortex M7, a 240 MHz Cortex M4, and 1 MB program memory that supports real-time control, monitoring, and implementation of predictive maintenance algorithms. Secure over-the-air (OTA) firmware updates are supported by the onboard secure element and X.509 compliance.

Opta PLCs are available in three variants differentiated by their communications capabilities. All three include USB-C. The models are:

  • Opta Lite, model AFX00003, that adds 10/100BASE-T Ethernet
  • Opta RS485, model AFX00001, that adds 10/100BASE-T Ethernet and half-duplex RS-485
  • Opta Wi-Fi, model AFX00002, that adds 10/100BASE-T Ethernet, half-duplex RS-485 802.11 b/g/n Wi-Fi, and Bluetooth low energy (BLE)

These micro PLCs have eight programmable analog/digital inputs and four normally-open relay outputs rated for 10 A (2.3 kW). The real-time clock (RTC) has a typical ten days of power retention at +25°C, and network time protocol (NTP) synchronization is available through the Ethernet port. They are DIN rail compatible to speed system integration (Figure 2).

Image of Opta Lite Arduino micro PLCFigure 2: Opta Lite Arduino micro PLC showing the four 10 A relay outputs on the left front of the unit. (Image source: Arduino)

Embedded PLC for small machines

Designers of small machines for labeling, forming, and sealing, carton packing, gluing, electric ovens, industrial washers and dryers, mixers, and so on - can turn to the 170 x 90 x 50 millimeters (mm) Portenta machine control PLC. It has a DIN bar compatible housing and push-in terminals for fast connection and is rated for operation from -40°C to +85°C without external cooling (Figure 3). The main processor is the dual-core STM32H747 with a 480 MHz Cortex M7 and a 240 MHz Cortex M4. The board can support flat screen displays, touch panels, keyboards, joysticks, and mice for installer and operator interfaces. It can be programmed using the Arduino PLC IDE or other embedded development platforms.

Image of Arduino Portenta Machine Control boardFigure 3: The Portenta Machine Control board is designed for embedded applications in a wide range of machines. (Image source: Arduino)

The Portenta Machine Control can support predictive maintenance and artificial intelligence (AI) software. Its embedded RTC supports synchronization of processes and enables real-time data collection and remote control of equipment.

It can connect to various external sensors and actuators with isolated and programmable digital and analog I/O connections, three configuration temperature channels, and an I2C connector. Resettable fuses protect all I/Os. Network connectivity is supported by USB, Ethernet, Wi-Fi, BLE and RS-485.

Raspberry Pi for factory automation

More complex automation tasks can benefit from the processing power of Raspberry Pi 4-based PLCs using the Broadcom BCM2711B0 processor. Fabricated on a 28 nanometer (nm) process, the BCM2711B0 uses the Cortex-A72 architecture. It has four cores with a clock speed of 1.5 GHz and 4 GB RAM. It integrates numerous peripherals, including timers, interrupt controller, general purpose I/O (GPIO), USB, PCM/I2S digital audio interface, direct memory access (DMA) controller, I2C masters, serial peripheral interface (SPI) masters, PWM, universal asynchronous receivers/transmitters (UARTs), dual micro HDMI ports that support 4K output, and more.

Industrial Shields’ Raspberry Pi Ethernet PLCs use the BCM2711B0, operate with 12 VDC to 24 VDC input voltages, and draw up to 1.5 A of current. They include the Linux operating system and have dual Ethernet ports, dual RS-485 ports, Wi-Fi, BLE, and CAN bus options, making them capable of connecting with many devices using multiple protocols and communications ports. They have been optimized for applications that benefit from real-time control and are available with 2, 4, and 8 GB of RAM. Examples of Industrial Shields’ Raspberry Pi PLCs include:

  • 012003000200, with 4 GB RAM and 21 I/Os a (Figure 4)
  • 012003001100, with 4 GB RAM and 54 I/Os
  • 016003000200, with 4 GB RAM, 21 I/Os, and general packet radio service (GPRS) cellular connectivity

Image of Industrial Shields’ Raspberry Pi Ethernet PLCFigure 4: Industrial Shields’ Raspberry Pi Ethernet PLC with 4 GB RAM and 21 I/Os. (Image source: Industrial Shields)

Bridging Arduino and Raspberry Pi in PLCs with SimpleComm

The SimpleComm C++ library lets designers send data using RS-485, RS-482, Ethernet, and other protocols. It can be adapted to different communications topologies like ad-hoc, master-slave, and client-server. The original program has an intuitive application programming interface (API) for Arduino environments. Industrial Shields recently adapted SimpleComm for the Linux environment found on Raspberry Pi PLCs.

IPC and IIoT gateway solution

When greater flexibility is needed, designers can turn to KUNBUS’ RevPi Core S and SE IPCs and the RevPi Connect S and SE IIoT gateway, all based on Raspberry Pi and designed for DIN rail mounting (Figure 5). In addition to providing circuit diagrams, KUNBUS uses an open-source adaptation of the Raspberry Pi operating system (OS) with a real-time operation patch. The Raspberry Pi OS offers robust interoperability with a wide range of software applications developed for Raspberry Pi. KUNBUS works with software vendors to support supervisory control and data acquisition (SCADA) software for controlling, monitoring, and analyzing industrial devices and processes. The availability of full root access speeds up the implementation of custom programs.

Image of KUNBUS RevPi Core SE IPC (left) and RevPi Connect IIoT Gateway (right) (click to enlarge)Figure 5: Examples of RevPi Core SE IPC (left) and RevPi Connect IIoT Gateway (right). (Image source: KUNBUS)

The RevPi Core S and SE are built on an open hardware and open software platform that conforms to the IEC 61131 standard. RevPi Core S units are compatible with all KUNBUS expansion modules, including fieldbus gateways. RevPi Core SE units are compatible with KUNBUS I/O modules but don’t support the fieldbus gateways. RevPi Core S/SE IPCs have USB, Micro-USB, Ethernet, and HDMI connections. They feature a 1.5 GHz quad-core processor with 1 GB RAM, and models are available with 8, 16, and 32 GB of storage. For example, model PR100360, RevPi Core S has 16 GB of memory.

To support IIoT connectivity, the RevPi Connect S and SE Gateways are available with up to 32 GB of memory and include two RJ45 10/100 Ethernet sockets, two USB ports, a 4-pin RS-485 interface, plus micro-HDMI, and micro-USB sockets. The two Ethernet sockets support simultaneous connectivity with automation and information technology (IT) networks. As an open-source software platform, applications can be programmed using Node-RED, Python, and C. RevPi Connect can be upgraded with PROFINET, EtherNet/IP, EtherCAT, Modbus TCP, and Modbus RTU functionality without the use of expansion modules. Examples of RevPi Connect units include:

  • PR100363, RevPi Connect S with 16 GB memory.
  • PR100197, RevPi digital I/O expansion module.
  • PR100250, RevPi analog expansion module.

PROFINET and SBC PLCs

SBC PLCs can be sophisticated devices capable of supporting advanced networking protocols. Process field network (PROFINET) is an open standard for industrial networking devices like PLCs, drives, robots, diagnostic tools, etc. It runs over industrial Ethernet and is optimized for collecting data and controlling industrial equipment with real-time communications. It’s available to run on most Arduino and Raspberry Pi PLCs.

Industrial automation networks need high-speed and deterministic communication. PROFINET focuses on deterministic performance that delivers messages exactly when needed and expected.

That means delivering each message with the appropriate speed based on the task being performed. Not all tasks are equally time-sensitive. PROFINET can deliver messages on various protocols, including:

  • PROFINET Real-Time (RT)
  • PROFINET Isochronous Real-Time (IRT)
  • Time Sensitive Networking (TSN)
  • TCP/IP (or UDP/IP)

Conclusion

A wide range of SBC-based PLCs and industrial networking devices based on Arduino and Raspberry Pi technologies are available. They use open-source software and, in some cases, open-source hardware. Arduino PLCs are available as standard-sized units for small networks, micro PLCs for space-sensitive installations, and machine controllers for embedded applications. Quad-core Raspberry Pi-based PLCs can support more complex industrial networking applications. Raspberry Pi-based IPCs and IIoT gateways that support high levels of flexibility in network design and deployment are available.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

About this author

Image of Jeff Shepard

Jeff Shepard

Jeff has been writing about power electronics, electronic components, and other technology topics for over 30 years. He started writing about power electronics as a Senior Editor at EETimes. He subsequently founded Powertechniques, a power electronics design magazine, and later founded Darnell Group, a global power electronics research and publishing firm. Among its activities, Darnell Group published PowerPulse.net, which provided daily news for the global power electronics engineering community. He is the author of a switch-mode power supply text book, titled “Power Supplies,” published by the Reston division of Prentice Hall.

Jeff also co-founded Jeta Power Systems, a maker of high-wattage switching power supplies, which was acquired by Computer Products. Jeff is also an inventor, having his name is on 17 U.S. patents in the fields of thermal energy harvesting and optical metamaterials and is an industry source and frequent speaker on global trends in power electronics. He has a Masters Degree in Quantitative Methods and Mathematics from the University of California.

About this publisher

DigiKey's North American Editors