Arduino PLC

The PLC (Programmable Logic Controller) has been and still is the basic component of the industrial automation world. PLCs are usually pretty expensive pieces of hardware, which led many people who know micro-controllers to come up with their own ideas to implement similar functionality.

Arduino is a kind of universal programmable controller, although it is only the “core” and in any case it has been built for general applications; with a little of external hardware (essentially interfaces capable of transferring signals from sensors and to actuators, reducing the EMI which may damage the microcontroller) and an appropriate software may, however, become something very similar to a PLC. For output you can use Arduino Relay modules. For input you can use varying Arduino sensors of build your own adapter for some industrial sensors.

Arduino as a programmable logic controller (PLC) tutorial we will explain how to “convert” our Arduino board in a PLC-like controller.  There are several ways to turn Arduino into a Programmable Logic Controller, and Arduino as a programmable logic controller (PLC) tutorial presents two: Ladder Logic for PIC and AVR software and ladder.h Generator for LDmicro → Arduino. Also OpenPLC project has a OpenPLC Ladder Editor that can generate code for a standard arduino from a ladder diagram.

In some applications PLCs are more used as IO interfaces for SCADA systems more than doing the controlling. If you want to make Arduino board to look like PLC from SCADA point of view, you can put in software that make it to communicate with MODBUS or other suitable SCADA protocol. One easy way to experiment is to try SCADA for Arduino that includes both Arduino software and SCADA software. I tried it and you can read my experiences with it at Experimenting with SCADA for Arduino posting.

If you are worried if your Arduino based rat’s nest would survive in industrial environment or would be accepted by industrial control people, it is a good idea to to consider available Arduino compatible products designed for industrial control applications. There are now several commercial products built for Arduino PLC applications:

CONTROLLINO advertises to be first software Open-Source PLC. It is ARDUINO compatible.It started as Kickstarter project, but is now available directly from manufacturer web site. It advertises to be designed  to control your Internet of Things and be CE & UL certificated. For more details check the video ARDUINO + PLC = CONTROLLINO

Industruino is an Arduino compatible industrial controller. Industruino is a fully featured Arduino Leonardo compatible board housed in a DIN-rail mountable case + prototyping area + onboard LCD + membrane panel. With this product you will be able to permanently install your Arduino application to industrial. Industruino is a pre-built solution offering a range of industrial voltage level I/O. All controlled with the ease of Arduino coding.

Industrial Shields has a selection of Arduino compatible industrial PLC hardware that can be plugges to DIN rail. The ARDBOX PLC, as it uses an Arduino UNO or Arduino LEONARDO, lets you program it through the USB. M-DUINO family is based on Arduino Mega. This PLC can be programmed using the Arduino IDE platform


BieMme Italia offers Soft PLC Arduino which is based on Advanced Arduino Relay Shield. You plug your Arduino to this shield, and it should be then industrial compatible with the control voltage and electrical protection. BieMme Italia also has Bmini All-in-one that has 4 optoiso­lated 24V dig­i­tal inputs, 4 high qual­ity relays, 8 ana­log inputs, PWM, I2C, RS485, Eth­er­net and more.





  1. Tomi Engdahl says:

    Bring Industrial IoT capabilities to your standalone equipment with the new Portenta Machine Control.

    Portenta Machine Control: Add a powerful brain to your machines

    ARDUINO TEAM — May 12th, 2021
    Arduino Pro is introducing a powerful new member of the Portenta product family, the Portenta Machine Control. It’s a fully-centralized, low-power, industrial control unit able to drive equipment and machinery. Plus, you can program it using the Arduino framework or other embedded development platforms.

    It enables the collection of real-time data from the factory floor, while supporting remote control of equipment, including from the cloud.

    Key benefits include:

    Shorter time-to-market
    Enhance existing products
    Add connectivity for monitoring, as well as control
    Each I/O pin can be configured, so you can tailor it to your needs
    Make equipment smarter, as well as AI-ready
    Provide security and robustness from the ground up
    Open new business model opportunities (such as servitization)
    Interact with your equipment with advanced human-machine interfaces (HMI)
    Modular design for adaptation, expansion and upgrades

    Business as a Service
    The Portenta Machine Control allows companies to enable new business-as-a-service models. You can monitor customer usage of equipment for predictive maintenance while gathering valuable production data.

    The device enables industry standard soft-PLC control. Because of this, it’s able to connect to a range of external sensors and actuators. For example, the following options are all available.

    Isolated digital I/O, 4-20mA compatible analog I/O
    Three configurable temperature channels
    Dedicated I2C connector.

    Multiple choices are available for network connectivity, including USB, Ethernet and WiFi and BLE. Furthermore, it offers impressive compatibility through industry specific protocols such as RS485. All I/O are protected by resettable fuses, but on-board power management ensures maximum reliability in harsh environments.

    The Portenta Machine Control core runs an Arduino Portenta H7 microcontroller board. This is a highly reliable design operating at industrial temperature ranges (-40 °C to +85 °C).

    The Portenta Machine Control is now available for €279/$335.

  2. Tomi Engdahl says:

    DIN Rails For… Everything

    For example, in some businesses DIN rails are a part of everyday life. But for a long time, they were not very common in hobby electronics. Although rails are cheap, boxes for rails aren’t always easy or cheap to obtain, but 3D printing offers a solution for that.

    So while the industrial world has been using these handy rails for decades, we are starting to see hobby projects incorporate them more often and people like [Makers Mashup] are discovering them and finding ways to use them in projects and demonstrating them

    The DIN rail originated in Germany around 1928, with modern versions dating from the 1950s and in some environments they are everywhere. DIN, by the way, is an acronym for the originating German standards organization Deutsches Institut für Normung, but the rails also meet IEC and EN standards, today.

  3. Tomi Engdahl says:

    Monitoriza is the new generation SCADA application that lets you control any process, immediately, from his own job

    Monitoriza Express
    Fully functional. A single client and 2 PLC variables.
    Does not include support

    Monitoriza for Arduino
    Fully functional. No limitations on variables or clients. Only Arduino devices.
    Does not include support

  4. Tomi Engdahl says:


    The I/O capabilities built into most microcontrollers make it easy to measure the analog world. Say you want to build a data logger for temperature. All you need to do is get some kind of sensor that has a linear voltage output that represents the temperature range you need to monitor — zero to five volts representing 0° to 100°C, perhaps. Hook the sensor up to and analog input, whip up a little code, and you’re done. Easy stuff.

    Now put a twist on it: you need to mount the sensor far from the microcontroller. The longer your wires, the bigger the voltage drop will be, until eventually your five-volt swing representing a 100° range is more like a one-volt swing. Plus your long sensor leads will act like a nice antenna to pick up all kinds of noise that’ll make digging a usable voltage signal off the line all the harder.

    Luckily, industrial process engineers figured out how to deal with these problems a long time ago by using current loops for sensing and control. The most common standard is the 4-mA-to-20-mA current loop

  5. Tomi Engdahl says:

    How to Read PLC Wiring Diagram | PLC Wiring Tutorial for Beginners | PLC Panel Wiring Diagram

    How to Read PLC Schematics and Diagram
    In Part 1 of this video series, you’ve learned how to read and understand a wiring diagram of an industrial control panel and in this part, we’re going to continue with the PLC part of that same control panel to learn about some PLC wiring best practices.

    How to Read a PLC Wiring Diagram?

  6. Tomi Engdahl says:

    How Electrical Control Panel Works | PLC Control Panel Basics | Electrical Panel Components

    Behind the scenes of every factory, there are lots of electrical panels that make the process work properly. These electrical panels can be distributed throughout the process or located in a special room like a control room or electrical room.

    In this video, we will talk about one of the most important industrial electrical panels, the “Electrical Control Panel.”

    First, we’ll quickly check the electrical panel enclosure and the nonelectrical devices we should install inside, such as DIN rails and wiring ducts.

    Second, we’ll check out the electrical panel components step-by-step. We specifically talk about the PLC control panels.

    We talk about, Miniature Circuit Breaker or MCBs and how we distribute the power between electrical panel components using them, and how MCBs protect our electrical devices against short circuit faults.

    Throughout this video, you’ll learn about electrical panel wiring. How we use power supplies, ordinary terminal blocks, terminal strip jumpers, fuse terminal blocks, MCBs, and so on to up and run our PLC control panel.

    In the end, when all of the components of our control panel have been installed, wired up, and we turned on our main circuit breaker to power it on, I’ll give you an actual practical example of how to connect a sensor to our PLC and use it in an industrial process.

  7. Tomi Engdahl says:

    Electrical Panel Enclosure Explained | Enclosure IP rating, Gland Plates, Cable Glands, Hole Cutter

  8. Tomi Engdahl says:

    Why we use Relay in PLC Applications | Relay Wiring Diagram | Types of Relay-SPST, SPDT, DPST, DPDT

    Have you ever thought about “why we use relays” or “How to use them”?
    As you may know, the relays in the industry are fallen into two main categories. The Solid-State Relays or SSRs and Electromechanical relays or EMRs (They are also called mechanical relay or contact relay).

    Of course, if you’re an electrician you may face some other types of relays such as safety relays, Power Protection relays, and so on.

    You may see Power relays installed on medium voltage panels and they are a type of protection device for power systems. They more resemble a controller than a relay! So, we decided to talk about them in detail in another video.

    In this video, you’ll first get to know about Electromechanical relays that are the most used types of relays.

    Then, you’ll see how electric relays work and learn about the relay wiring diagram. After all, we’ll answer some questions: What do we use a relay for? How to wire a relay?

    We also talk about the combination of normally open and normally closed contacts of the relays which will shape different types of mechanical relays.

  9. Tomi Engdahl says:

    Industrial Control Unit Draws Little Power

    Arduino Prois set to launch a new member of the Portenta product family, with the Portenta Machine Control – a fully-centralized, low-power, industrial control unit capable of driving industrial equipment and machinery. What’s more, users can program it using the Arduino framework or other embedded development platforms.

    The control platform adds Industrial IoT capabilities to standalone machinery and enables the collection of real-time data from the factory floor. Moreover, machinery can be accessed remotely from the cloud if needed. The Portenta Machine Control unit is outfitted with a TMicro STM32H747XI MCU with a Cortex-M7 processor, 8 Mb SDRAM, and 16 Mb of QSPI NOR Flash. Among the host of ports and connectors are 8x digital inputs and outputs, 3x analog inputs, a series of terminal blocks, 12x programmable digital I/Os, and more.


Leave a Comment

Your email address will not be published. Required fields are marked *