Humble Arduino As PLC

Source: Hack a Day

Article note: One of those issues that periodically comes up in the ECE department is that UK's EE/CPE students don't typically get any exposure to PLCs, and a lot of potential employers would like it if they did. The ones that take power classes get a little bit of the programmable controllers power people weirdly call relays even though they contain neither the contacts no any electromagnetic actuators, but that's not quite the same, and those are _all_ super vendor specific. This particular Arduino one doesn't look very compelling, but it made me look around. Since PLC stuff is standardized under IEC 61131, an open toolchain (like the autonomylogic OpenPLC editor and runtime) would make a perfectly good teaching tool and not cost an arm and a leg for devices and hook us to some vendored environment forever.

On the surface, a programmable logic controller (PLC) might seem like nothing more than a generic microcontroller, perhaps outfitted to operate in industrial settings with things like high temperatures or harsh vibrations. While this is true to some extent, PLCs also have an international standard for their architecture and programming languages. This standard is maintained by the International Electrotechnical Commission, making it so that any device built under these specifications will be recognizable to control engineers and maintenance personnel worldwide. And, if you use this standard when working with certain Arduinos, this common platform can become a standard-compliant PLC as well.

The IDE itself supports programming ladder diagrams, functional block diagrams, and other programming systems covered under the IEC 61131-3 standard. Not only that, it allows the combination of these types of PLC programming with Arduino sketches. The system offers many of the perks of PLC programming alongside the familiar Arduino platform, and supports a number of protocols as well including CANOpen, Modbus RTU, and Modbus TCP. It can also be used for monitoring a PLC system, essentially adding IoT capabilities to existing systems, enabling continuous monitoring, debugging, and program updates.

While not every Arduino is a great platform to build a PLC around, there are a few available for those looking for a system a little less proprietary and a little more user-friendly than typical PLC systems tend to be. There’s a reason that PLCs are built around an international standard and generally have certain hardware in mind to run it, though, and this comparison of a Raspberry Pi with an off-the-shelf PLC goes into detail about why certain components aren’t good choices for PLCs.

This entry was posted in News. Bookmark the permalink.

Leave a Reply

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