Hackster is hosting Hackster Holidays, Ep. 7: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Friday!Stream Hackster Holidays, Ep. 7 on Friday!

PLCs for You and Me: Hands-On with the Arduino PLC Starter Kit and Opta WiFi

Designed as an accessible yet powerful platform for PLC projects, can the Opta ecosystem address the upcoming skills shortage?

Gareth Halfacree
6 months agoInternet of Things / HW101

To say that Arduino is, for many, synonymous with microcontrollers is no exaggeration. The company's success in the hobbyist and educational markets is legendary, and its recent moves into the industrial market with its Arduino Pro range have been enjoying equal attention. Now, it's coming for the programmable logic controller (PLC) market — but can it compete with the incumbents?

To gain a toe-hold in the sector, as well as to address what the company projects will be a worsening skills gap as retiring engineers and developers aren't being replaced with fresh blood boasting the necessary talents, Arduino has launched the PLC Starter Kit — a bundle that includes its range-topping Opta WiFi "mini PLC," two quick-start simulator boards for inputs and outputs, and all the accessories you need to get everything running, plus a free online training course claimed at 17 and three-quarter hours of content.

Join us as we dive deep into the Opta ecosystem, and see if Arduino's magic lightning can strike twice.

Hardware

Arduino Opta Lite/Opta RS485/Opta WiFi

  • Processor: STMicroelectronics STM32H747XI (Cortex-M7 at 480MHz, Cortex-M4 at 240MHz)
  • Memory: 1MB RAM, 2MB internal and 16MB QSPI external flash
  • Coprocessor: Microchip ATECC608B secure element
  • Network: 10/100 Ethernet (TCP/IP or Modbus TCP, all models), RS485 (Opta RS485 and Opta WiFi only), Wi-Fi and Bluetooth Low Energy (Opta WiFi only)
  • Inputs: 8× configurable digital/analog (12-24V digital, 0-10V analog), 1× push-button switch
  • Outputs: 4× electromechanical relays (250VAC, 10A) with status LEDs
  • Clock: Internal real-time clock module, typical 10-day retention
  • Chassis: Plastic housing with screw terminals, IP20 protection rating, integrated DIN rail mount
  • Power: 12-24VDC, USB Type-C (programming only)
  • Expansion: AUX port, compatible with Arduino Opta Digital and Analog Expansion Modules
  • Operating temperature: -20°C to +50°C (-4°F to +122°F)
  • Programming: Arduino IDE 2, Arduino PLC IDE (IEC-61131-3 Ladder Diagram (LD), Function Block Diagram (FBD), Sequential Function Chart (SFC), Structured Text (ST), Instruction List (IL))
  • Price: Opta Lite $146.40, Opta RS485 $160.80, Opta WiFi $193.20

Arduino Opta Digital Expansion Module

  • Inputs: 16× configurable digital/analog (12-24V digital, 0-24V analog)
  • Outputs: 8× electromechanical relays (250VAC, 6A, D1608E) or 8× solid-state relays (24VDC, 2A, D1608S) with status LEDs
  • Expansion: AUX port, compatible with additional Expansion Modules
  • Power: 12-24VDC
  • Price: D1608E $136.80, D1608S $146.40

Arduino Opta Analog Expansion Module

  • Inputs: 6× configurable analog (0-10V voltage/0-20mA current, 2× RTD PT100 temperature sensor compatible)
  • Outputs: 6× digital with pulse-width modulation (PWM) support, 2× configurable analog (0-10V voltage/0-20mA current) with status LEDs
  • Expansion: AUX port, compatible with additional Expansion Modules
  • Power: 12-24VDC
  • Price: TBA

Arduino PLC Starter Kit

  • 1× Arduino Opta WiFi
  • 1× Arduino DIN Simul8 with 8× toggle switches, 8× signal lines, DIN rail mount
  • 1× Arduino DIN Celsuis with Texas Instruments TMP236A2DBZR temperature sensor, 2× resistive heating elements, DIN rail mount
  • 3× 20cm (around 7.9") cables (white, black, red)
  • 1× USB Type-C cable
  • 1× Global 24V 1A power supply
  • 17.75-hour Explore PLC training course
  • Price: $385

As the specs above show, the Opta isn't a single device: it's a growing ecosystem. The original Opta Lite, Opta RS485, and Opta WiFi modules sit at the heart of that ecosystem, offering a DIN-mountable industrially-focused logic controller platform based around STMicro's dual-core STM32H747XI system-on-chip. For those who might find the eight inputs and four outputs limiting, the new Opta Digital and Analog Expansion Modules clip into a compact AUX expansion header to boost pin count considerably — and can be daisy-chained up to five modules deep if you're still running out of pins.

It's the Arduino PLC Starter Kit that is likely to be of most interest, though. A recent addition to the family, the collection is designed to help address the skills shortage in industrial automation — while, handily, getting a new generation of engineers and programmers invested in the Arduino ecosystem. It bundles an Arduino Opta WiFi, the range-topping model, with two "simulator" modules for input and output — allowing you to quickly build a testbench environment on a single short length of DIN rail (not included).

The Arduino PLC Starter Kit isn't just about the hardware in the bundle: it's designed for use with an online training course developed by Arduino and which covers the gamut from the history of programmable logic controllers to inter-device communication via Modbus RS485. In total, there's a claimed 17 and three-quarter hours of content included — primarily designed for those who are coming to the world of PLCs from Arduino's more traditional microcontroller family.

Jumping to PLCs

Essentially, the Arduino Opta PLCs are microcontrollers in a fancy housing and with a few integrated peripherals. If you had any doubt about that, it would be immediately dispelled by the fact you can program any Opta model using the standard Arduino IDE 2 and Wiring library — even to the point that many existing Arduino sketches can be easily loaded onto the Opta with a minimum of modification.

PLCs, though, live in a slightly different space to a normal microcontroller. Key to this is how they're programmed, which typically involves using a language that adheres to the IEC-61131-3 standard — first published in 1993. These languages are split into two logical types: the text-based languages Structured Text (ST) and Instruction List (IL); and the graphical languages Ladder Diagram (LD), Function Block Diagram (FBD), and Sequential Function Chart (SFC).

For this, Arduino has developed a separate integrated development environment dubbed, sensibly enough, the Arduino PLC IDE. Unlike the standard Arduino IDE, it supports the full gamut of IEC-61131-3 languages — and, also unlike the standard Arduino IDE, it requires a license. For those looking to use it with the Portenta Machine Control board, that means an additional $17.60 fee on top of the hardware cost; for Opta users, though, a license is included as standard with the hardware.

The need to license the IDE isn't the only speed-bump awaiting newcomers to the Opta family, either. The Arduino IDE is famous for its cross-platform compatibility, being installable on everything from a Windows or macOS laptop to Linux running on a Raspberry Pi; the Arduino PLC IDE, by contrast, is a Windows-exclusive package — and is limited to Windows 10 or higher on 64-bit x86 hardware at that, meaning it's incompatible with the new Windows on Arm devices hitting the market this year.

Learning logic

Assuming that Windows exclusivity isn't a deal-breaker, installing the Arduino PLC IDE is a relatively painless process. Once installed, you can open it up and start a program in one of the five supported IEC-61131-3 languages — and it's even possible to mix IEC-61131-3 projects with Arduino sketches, if you've legacy code you're looking to bring with you to the world of Opta.

The training course, which is freely accessible for all registered Arduino users to read regardless of whether or not they've bought the PLC Starter Kit, has received a major overhaul since the kit's launch and now opens with an introduction to the hardware included in the kit, animated assembly instructions, and a wiring diagram — duplicating separate wiring instructions later in the tutorials. This update has turned the first chapter into a hands-on event, including writing and running your very first Ladder Diagram program.

The second chapter, which in the most recent update has been stepped back from a claimed two-hour lesson to a more realistic 45 minutes, takes a step back and offers a potted history of PLCs and the Modbus protocol before looking at the features of the Opta. The next chapter offers a look at the differences between Ladder Diagram, Function Block Diagram, and Structured Text programming, with the next focusing on an overview of the Modbus TCP/IP protocol — which, disappointingly, sticks to the outdated "Master/Slave" terminology many projects have moved beyond, though Arduino has now added a disclaimer putting the blame on the same language being used in the Arduino PLC IDE itself.

The latest update then goes heavily hands-on, and addresses one of the biggest complaints from the launch-day courseware: the fact it barely touched on the bundled DIN Celsius and Simul8 add-on boards. Now, they two have an entire section dedicated to their use — a claimed five and a half hours of content, though that presumably requires the reader to have skipped over the wiring instructions earlier in the course.

Logical logic

The new lessons are a real highlight, and go to some lengths to address feedback on the launch-day courseware. They now cover Ladder Diagram, Functional Block Diagram, and Structured Text, leaving only Sequential Function Chart uncovered. You can also now complete the first near-nine-hours of content with only the materials included in the bundle, plus a suitable Windows machine for programming — though, as in the original courseware, anything beyond this will require additional hardware.

The most interesting of the two more-hardware-needed tutorials requires a 24VDC motor. The chapter opens with controlling the motor with Ladder Diagram, then moves on to Functional Block Diagram. The next chapter looks at controlling the motor bidirectionally, then the next into combining everything into a four-output control system. It's a well-thought-out progression, which is why it's such a shame such a low-cost component isn't included in the bundle in the first place.

The remainder of the originally-20-hour course — now revised downwards to a total of 17 and three-quarter hours since the update, despite the addition of new material — requires something a lot more expensive to complete: a second Arduino Opta. It's here that you'll learn about communicating between PLCs with a Modbus TCP/IP network — though only using the wired Ethernet port, and not the Wi-Fi radio in the bundled Opta WiFi.

Powerful potential

While it's not quite perfect yet, the updated courseware is a major improvement on the launch day material. It's clear Arduino has, as we expected, listened to feedback and addressed it directly — and, as a result, the PLC Starter Kit is now much better suited to complete newcomers to programmable logic controllers and industrial automation. The bundled DIN boards no longer feel like afterthoughts, and you're going hands-on with the hardware in the kit far sooner than before.

For those who are already familiar with IEC-61131-3 programming, there's a lot to like about the Opta platform. The Arduino PLC IDE is accessible, if also unavoidably more complex than the Arduino IDE 2, and the hardware is undeniably powerful. The new Digital and Analog Expansion Modules, in particular, offer a great way to easily increase the capabilities of a base Opta without having to add multiple PLCs to a project or get tangled in unnecessary wiring — and Analog Expansion Module's true analog output capabilities are particularly tantalizing.

The biggest outstanding issue with the kit and its training course remains the fact that neither Wi-Fi nor Bluetooth, major selling points of the bundled Opta WiFi PLC, are used in the course — leaving you wondering why Arduino didn't simply include the cheaper Opta RS485 or Opta Lite in the bundle instead and cut the price accordingly.

Conclusion

As the company's first real attempt to break into the PLC market, the Opta ecosystem is a real gem. The hardware is slick, the form factor well-suited to integration into existing industrial automation setups, and the launch of the new Expansion Modules shows that Arduino is serious about offering the capabilities PLC programmers need — albeit it, for now at least, exclusively for those working on Windows.

While the launch-day courseware experience left a lot to be desired, it has improved dramatically in its most recent update. Diagrams have been improved, the bundled boards are now front-and-center in a whole new chapter, and the tutorials are no longer Ladder Diagram exclusive but cover Functional Block Diagram and Structured Text programming too — though Sequential Function Chart is still absent. Sadly, there's still nothing in there about using the integrated Wi-Fi and Bluetooth radios in the bundled Opta WiFi, but fingers crossed that's addressed in the near future.

The Arduino PLC Starter Kit is now available on the Arduino Store at $385; the standalone Opta PLCs are priced at $146.40 for the Opta Lite, $160.80 for the Opta RS485, and $193.20 for the Opta WiFi as-reviewed; the D1608E Digital Expansion Module is $136.80 with the D1608S at $146.40, with pricing for the yet-to-launch Analog Expansion Module not available at the time of writing.

Additional information on the Opta ecosystem is available on the Avnet website.

UPDATE (10/10/2024): This article has been updated to reflect the most recent version of the courseware, with changes detailed on the Arduino Education site.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles