Maker-Tools für Profis Controllino – Arduino im industriellen Einsatz

Arduino ist seit vielen Jahren über die Maker-Szene hinaus als Prototyping-Plattform bekannt. Prototyping-Plattformen sind jedoch nicht ohne Weiteres für den industriellen Einsatz geeignet. Dem Maker-Ansatz folgend, entstand so Controllino – eine industrietaugliche Steuerung auf Arduino-Basis.

Für den industriellen Einsatz besonders wichtig sind die implementierten Schutzmaßnahmen gegen Kurzschluss, Überlast und elektrostatische Entladung und nicht zuletzt die spezifizierten Umgebungsbedingungen.
 

Sowohl die aus einem Mikrocontrollerboard bestehende Hardware als auch die Arduino-Entwicklungsumgebung (IDE) sind Open Source. Die Entwicklungsumgebung ermöglicht auch technisch weniger versierten Anwendern die Programmierung. Die Programmierung selbst erfolgt in C oder C++, wobei technische Details wie Header-Dateien vor den Anwendern weitgehend verborgen werden und umfangreiche Bibliotheken und Beispiele die Programmierung vereinfachen.

Zahlreiche Arduino-Shields – Erweiterungsboards für nahezu jeden Anwendungsbereich – verknüpfen den Mikrocontroller mit der betreffenden Peripherie. In der Regel werden die passenden Libraries dazu mitgeliefert. Eine Übersicht zu Shields diverser Hersteller zeigt die Shieldlist von Jonathan Oxer (http://shieldlist.org).
Arduino kündigte im Oktober 2016 zur »World Maker Faire« in New York an, dass Arduino LLC (alias Arduino.cc) und Arduino srl (alias Arduino.org) ihre Differenzen beigelegt und eine Vergleichsvereinbarung unterzeichnet haben. Ende 2016 wurde die neu geschaffene »Arduino Holding« zum zentralen Ansprechpartner für den Großhandel mit aktuellen und zukünftigen Produkte, sie will weiterhin enorme Innovationen auf den Markt bringen [1]. Ein erstes Ergebnis dieser Initiative ist die Version 1.8.0 der Arduino-Software (IDE), die auf Windows, Mac OS X und Linux lauffähig ist und alle Arduino-Derivate von Arduino.cc­ und Arduino.org unterstützt. Unter diesen neuen Voraussetzungen muss man kein Prophet sein, um dem technischen Konzept weiteren Erfolg vorauszusagen.

Arduino
im industriellen Einsatz

Prototyping-Plattformen sind nicht ohne Weiteres für den industriellen Einsatz geeignet. Das musste auch der Controllino-Erfinder Marco Riedesser erkennen, als er einen Arduino zur Steuerung einer italienischen Espresso-Maschine einsetzen wollte.

Eine Netzspannung von 230 V, ein Gehäuse mit Wassertank und Wasserleitungen, Sensoren und Relais an der Heizung – dies alles sicher und zuverlässig zu betreiben ist eine Herausforderung und mit einer Prototyping-Plattform nicht einfach zu bewerkstelligen.
Dem Maker-Ansatz folgend, entstand so Controllino – eine industrietaugliche Steuerung auf Arduino-Basis. Neben der Sicherung der funktionellen Eigenschaften sind in Industrieprojekten weitergehende Qualifizierungsmaßnahmen erforderlich (vollständige Inbetriebnahme, EMV- und Umwelttests, Stabilitätstests der Software, Sicherung der Bauteileverfügbarkeit über die Produktlebensdauer, Lizenz-Compliance der verwendeten Software u. a.), ohne die ein solcher Entwurf nicht für den späteren Serieneinsatz tauglich ist.
Was die Bauteileverfügbarkeit betrifft, ist man mit dem Arduino-Ansatz auf der sicheren Seite. In den klassischen 8-bit-Arduino-Boards kommen AVR-Mikrocontroller von Atmel zum Einsatz. Doch die Arduino-Familie umfasst heute neben den 8-bit-Mikrocontrollern auch 32-bit-Mikrocontroller verschiedener Hersteller. Unter Beibehaltung der Prozessanpassung (analoge und digitale IO inklusive Schutzbeschaltung etc.) kann also bei Bedarf auch der verwendete Mikrocontroller ersetzt werden. Die Arduino-Entwicklungsumgebung unterstützt diese Controller schon heute [2].

Was ist Controllino?

Gemäß der Website des Herstellers ist ­Controllino der erste Arduino-kompatible Open-Source-PLC (Programmable Logic Controller), wobei der Begriff PLC hier recht allgemein verstanden werden sollte. Ich werde später noch darauf zurückkommen.

Durch den Einsatz verschiedener Mikrocontroller wird eine Controllino-Familie mit unterschiedlicher Ausstattung definiert. Tabelle 1 zeigt die Ausstattung der unterschiedlichen Modelle Mini, Maxi und Mega. Der Controllino Mini bleibt einfacheren Steuerungsaufgaben vorbehalten, während Controllino Maxi und Mega durch die umfangreichere Anzahl von Ein- und Ausgängen sowie dem Ethernet-Anschluss weitaus größere Flexibilität zulassen. Der im Automatisierungsumfeld zur seriellen Übertragung über längere Distanzen verwendete RS485-Bus ist ebenfalls nur beim Controllino Maxi und Mega vorhanden.

Schaut man sich nun die in Tabelle 2 gelisteten Technischen Daten der Controllino-Familie an, erkennt man deutlich den Unterschied zum Arduino-Board. Als Betriebsspannung dient hier wahlweise eine Spannung von 12 V(DC) oder 24 V(DC), die bei industriellen Anwendungen verbreitet ist. Die Spannungen an den Ein- und Ausgängen sind dann auch auf diese Pegel bezogen. Die Relaisausgänge können bis zu 6 A schalten, die digitalen Ausgänge bis zu 2 A (High-Side Switch, Last gegen GND, bei Modell Mega auch 12 × Halbbrücke).
Für den industriellen Einsatz besonders wichtig sind die implementierten Schutzmaßnahmen gegen Kurzschluss, Überlast und elektrostatische Entladung und nicht zuletzt die spezifizierten Umgebungsbedingungen.
Bild 1 zeigt die Beschriftung der Ein-/Ausgänge bei einem Controllino Maxi, die ein effektives Verdrahten nach der Montage auf einer Hutschiene im Schaltschrank oder nach dem Einbau in ein Gerät sicherstellt. Sind diese Vorkehrungen alle getroffen, fehlt nur noch die Steuerungssoftware, für deren Erstellung es wiederum verschiedene Möglichkeiten gibt.
Die beiden ausgewiesenen Interruptleitungen IN0 und IN1 sind nicht die einzigen Möglichkeiten, den Programmablauf zu unterbrechen. Alle beim jeweiligen Mikrocontroller vorhandenen Interrupts können auch im Arduino-Umfeld genutzt werden. Besonders Timer sind in der Steuerungstechnik wichtige Bausteine, um Zeitabhängigkeiten bei der Abarbeitung des Programms zu berücksichtigen. In [3] befasst sich ein umfangreiches Kapitel mit den Interrupts des ATmega328 und deren Programmierung auf Registerebene, was für den Controllino Mini direkt und für die beiden anderen sinngemäß angewendet werden kann.

Ausstattung

Mini

Maxi

Mega

Mikrocontroller

ATmega328P-AU

ATmega 2560-16AU & WIZnet W5100

 

Analog-/Digital-Eingang

81221

Interrupt-Eingang

222

Digital-Ausgang 2 A

8 (davon 3 PWM)

12 (alle PWM)

24 (davon 15 PWM)

Relais-Ausgang

6 (parallel zu digI/O)

1016

Serielles TTL-Interface

122

I2C-Interface

111

SPI-Interface

111

RS485-Interface

11

RTC

111

Ethernet-Interface

11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Tabelle 1: Ausstattung der Controllino-Familie.