Steuerungstechnik in der Cloud

Sinnvoll oder nicht?

Prognosen für einen vollständigen Technologiebruch waren in der Automatisierungstechnik bisher selten zutreffend. So z.B. bei Industrie-PCs als Ablöse für klassische SPSen. Heute weiß man: Anwender setzen auf einen Mix aus zentraler und dezentraler Steuerungstechnik und tendieren aktuell sogar eher wieder zu dezentralen Architekturen. Nicht zuletzt angefeuert durch das Schlagwort Industrie 4.0 wird aktuell vermehrt gemutmaßt, dass cloudbasierte Steuerungen mit eventbasierten Applikationen künftig klassische Steuerungsarchitekturen ersetzen. Wie sind diese Prognosen zu bewerten?

Steuerungstechnik in der Cloud - Sinnvoll oder nicht?
Bild: 3S-Smart Software Solutions GmbH; ©Erik Khalitov/iStockphoto.com

Cloudsysteme sind heute aus vielen Bereichen nicht mehr wegzudenken: Rechenleistung und Speicherkapazität von Cloudarchitekturen lassen sich nahezu unbegrenzt buchen und einsetzen. Die Server sind dabei extrem hoch verfügbar. Bei kostenpflichtigen, kommerziellen Anwendungen steigen die Preise mit dem Datenaufkommen. Ideale Voraussetzungen, um in der Industrie hochverfügbare Steuerungssysteme durch cloudbasierte Lösungen zu ersetzen? Nur bedingt. Was gegen einen Einsatz von Cloudsystemen als Steuerung spricht, ist die Anforderung nach hartem Echtzeitverhalten in der Industrieautomation. Um eine SPS oder sogar einen Motion Controller in der Cloud auszulagern, müssten konstante Latenzzeiten im Millisekundenbereich garantiert werden. Diese Zeiten sind aber letztlich abhängig von den genutzten Netzwerken sowie den Standorten der Server – und damit erst einmal nicht pauschal deterministisch. Somit sind dezentrale Steuerungen zumindest als Fallback-Szenario unabdingbar.

Eventbasiert und zyklusorientiert

Wenn man von zentraler, cloudbasierter Steuerungstechnik spricht, wird meist von eventbasierter Abarbeitung ausgegangen – sie scheint für solche Systeme prädestiniert. Allerdings sind zyklusorientierte Applikationsstrukturen heute Stand der Technik und werden in unterschiedlichen Industrien hunderttausendfach erfolgreich eingesetzt. Hierfür steht auch eine breite Basis an geschultem Personal zur Verfügung, da in nahezu allen Schulen, Hochschulen oder Universitäten hauptsächlich die zyklusorientierte Projektierung von Maschinen und Anlagen gelehrt wird. Aber warum sollte man nicht auf eventbasierte Applikationsstrukturen umstellen, um cloudbasierte Systeme nutzen zu können? Einfach deshalb, weil diese ganz entscheidende Nachteile mitbringen. Insbesondere in großen, übergreifenden Projekten lassen sich nicht immer alle Events vorhersehen. So kann es passieren, dass durch Prozessfehler wie Bandabrisse oder verkeilte Werkstücke Lawinen von Events auftreten, deren Last und Auswirkungen kaum vorhersagbar sind. Um diese Event-Lawinen sicher abarbeiten zu können, ist für Interrupt-Handling und Zwischenspeicherung von Daten viel mehr Rechenleistung erforderlich als bei zyklischer Abarbeitung. Will man auf der sicheren Seite sein, dann ist dafür eine mindestens hundertfach stärkere Steuerung keinesfalls übertrieben.

IIoT bereits Realität

Nahezu jede moderne Steuerung verfügt heute über einen Ethernet-Anschluss und kann entweder direkt oder per Gateway mit dem Internet verbunden werden. Damit ist das Industrial Internet of Things (IIoT) bereits ein Stück weit Realität. Dabei spielt es keine Rolle, welche Hardwareplattform der Steuerung zu Grunde liegt. Ob klassische SPS mit diskreten I/Os, Panel-Steuerungen, PC-basierte Systeme mit Feldbusanschluss oder sogar Maker-Plattformen wie Raspberry Pi oder Beaglebone – mit entsprechenden Softwareprotokollen z.B. in Form von Bibliotheksfunktionen können sie Daten über das Internet verschicken und empfangen. Projektierungswerkzeuge wie das Codesys Development System machen es einfach, Steuerungsdaten mit der Cloud oder anderen Systemen auszutauschen. Dabei sorgt die Plattformunabhängigkeit des Tools dafür, dass einmal erstellter Applikationscode zum Datenaustausch problemlos auf unterschiedlichen Geräten abgearbeitet werden kann. Was allerdings fehlt, ist eine konsistente Administration der Geräte, abgestimmt auf die Bedürfnisse von Automatisierern. Dafür ist die Cloud sicher der richtige Platz. Eine Voraussetzung für alle Überlegungen in Richtung Steuerungstechnik in der Cloud ist jedoch: Anbindung und Datenübertragung müssen sicher sein. Nicht zuletzt die wiederholten Meldungen über Datendiebstahl im kommerziellen Bereich sorgen für eine berechtigte Skepsis bei Industrieunternehmen. Aufgrund der Anwendungsvorteile internetbasierter Systeme sowie gezielter Maßnahmen zur Einhaltung der IT-Security steigt jedoch deren Akzeptanz trotz gefühlter Gefährdung. So werden auch in industriellen Systemen Sicherheitsmechanismen eingesetzt, die sich in kommerziellen Bereichen bewährt haben. Hier handelt es sich beispielsweise um Verschlüsselung und Signierung von Daten und Kommunikation mit X.509-Zertifikaten, hardwarebasierte Verschlüsselung sowie Assistenten zum Aufdecken von Sicherheitslücken oder potenziellen Schwachstellen.

Zentrale Verwaltung von Steuerungen und deren Steuerungsprojekten in einer Serverplattform, dargestellt in einer Web-Oberfläche. (Bild: 3S-Smart Software Solutions GmbH)
Zentrale Verwaltung von Steuerungen und deren Steuerungsprojekten in einer Serverplattform, dargestellt in einer Web-Oberfläche.
Bild: 3S-Smart Software Solutions GmbH

Sinnvolle Szenarien

Die bisher erläuterten Fakten lassen die Prognose zu, dass die Cloud durchaus ihren Platz in der industriellen Steuerungstechnik finden wird. Einerseits wird sie der natürliche Ablageort für Produktionsdaten sein, die gesammelt, angezeigt und ausgewertet werden sollen. Selbst wenn moderne Steuerungen heute über reichlich Speicherkapazität verfügen, würden sie durch Big Data, also das dauerhafte Sammeln großer Datenmengen, überfordert. Anhand intelligenter Algorithmen können Maschinen- und Anlagenbetreiber mit solchen Daten z.B. eine vorausschauende Wartung durchführen, weil aktuelle Maschinendaten im Vergleich zu eingelernten Daten des Normalzustandes einen Hinweis auf Anomalien und den bevorstehenden Ausfall von Komponenten geben. Ein weiterer viel diskutierter, aber auch bereits erfolgreich umgesetzter Anwendungsfall: Machine Learning bzw. Artificial Intelligence als intelligente Optimierung von Maschinen auf Basis ihrer eigenen Daten. Diese Anwendungsfälle für Big Data benötigen große Datenmengen und beliebig performante, nach Bedarf skalierbare Rechnersysteme. Solche Funktionen können Maschinenbauern und Betreibern helfen die Produktivität zu steigern, Komfort und Funktionsumfang zu erweitern und Ausfall- bzw. Stillstandszeiten zu reduzieren. Für den Datenaustausch zwischen SPS und Cloud verwendet man Cloudprotokolle wie HTTPS per Web Client/REST oder MQTT. Sie können meist in Form von Bibliotheksfunktionen einfach von der Steuerungsapplikation aus verwendet werden.

Administration über die Cloud

Die Cloud ist aber auch der naheliegende Ort für die Administration von Steuerungen und Geräteparametern. „Gehen Sie mal zu Daimler und versuchen Sie herauszufinden, wie viele Roboter die dort in der Produktion haben. Da müssen Sie schon hinfahren und die selbst zählen“, so äußert sich der Digitalisierungsexperte Professor Rainer Drath von der HS Pforzheim in einem Interview. „Die Roboter können heute im Netz nicht gefunden und nachgezählt werden, denn sie sind nicht angebunden. Jeder Tintenstrahldrucker erlaubt das, aber die meisten Industriekomponenten können das heute nicht. Hier liegt so viel Innovationspotenzial.“ Ausschöpfen lässt sich das Potenzial durch die Anbindung sämtlicher Geräte an einen gemeinsamen Server, der in der Cloud gehostet wird. Er gibt nicht nur eine Übersicht über die Steuerungen in der jeweils eingesetzten Topologie, sondern kennt auch deren Status sowie die ausgeführte Softwareversion. Geeignete Dienste ermöglichen das einfache Wiederherstellen einer ausgefallenen Steuerung – der Server erstellt automatisiert Backups und kann auf Anforderung ein Austauschgerät damit bespielen. Weiterer Anwendungsfall: Ein zentraler Server wie z.B. der Codesys Automation Server kann helfen, die bereits erwähnten Security-Zertifikate zu verwalten sowie benutzerspezifische Einstellungen oder Updates der Firmware zentral auszurollen. Diese und weitere Funktionen und Dienste können von einem beliebigen Webbrowser aus konfiguriert bzw. angestoßen werden.

Steuerungstechnik in der Cloud - Sinnvoll oder nicht?(Bild: 3S-Smart Software Solutions GmbH;)
Bild: 3S-Smart Software Solutions GmbH

Steigerung der Qualität

In der IT-Softwareentwicklung verwendet man heute zur Steigerung der Qualität sogenannte Continuous Integration Tools bzw. -Prozesse. Sie ermöglichen eine automatisierte Überprüfung von Codeänderungen nach unterschiedlichen Kriterien. Danach werden die geänderten Codes in den aktuellen Softwarestand eingebracht. Zwar ist heute diese Vorgehensweise in der Automatisierungstechnik noch sehr selten, doch erreicht man mit entsprechenden Tools ebenfalls eine deutlich höhere Qualität von SPS-Programmen. Eine Cloud eignet sich hervorragend für solche Aufgaben, da Administration und Durchführung zentral gesteuert werden können. Darüber hinaus kann es sinnvoll sein, in der Cloud auch bestimmte Steuerungsaufgaben abarbeiten zu lassen. Soft-SPS-Systeme lassen sich meist problemlos auf Cloudservern installieren, z.B. unter Linux. Für IEC61131-3-Tools wie das Codesys Development System spielt es keine Rolle, ob die Applikationssoftware auf einer physikalischen SPS oder einem virtuellen System geladen und dort gestartet wird – der Zugriff erfolgt über die IP-Adresse des Systems. Wie bereits erläutert, ist dies aber nur dann sinnvoll, wenn die damit gesteuerten Aufgaben keine harten Echtzeitanforderungen mitbringen, die Einhaltung der erforderlichen Zykluszeit für eine deterministische Abarbeitung aufgrund der Randparameter zugesichert werden kann bzw. lokale Backup-Systeme vorhanden sind.

Lokale Cloud im Firmennetz

Statt eine Public Cloud zu verwenden, z.B. von Amazon Web Services oder Microsoft, kann ein sinnvolles Szenario auch darin bestehen, sämtliche angesprochenen Aufgaben auf einer so genannten Edge Cloud und damit lokal im Firmennetzwerk zu betreiben. Solch ein Edge-Cloud-System, das vom Maschinenbetreiber selbst administriert wird, ist letztlich eine leistungsfähige SPS mit entsprechender Speicherausstattung. Sie kann zusätzlich als Gateway zu Public-Cloudsystemen dienen, um auf externe Speicher- oder Performance-Reserven zuzugreifen. Zusammenfassend lässt sich sagen: Ja, Steuerungstechnik in der Cloud ist sinnvoll – insbesondere für administrative Aufgaben. Und natürlich, um aus großen Datenmengen mit rechenintensiven Algorithmen neue Informationen zu generieren. Insbesondere in gemischten Architekturen sollten Cloudsysteme jedoch mit bewährten, lokalen Steuerungen kombiniert werden. Für echtzeitkritische Anwendungen sind letztere bis auf Weiteres nicht zu ersetzen. Auch in zehn Jahren wird es sicherlich noch dedizierte Steuerungshardware geben. Gegenüber heutigen Systemen wird diese jedoch einen deutlichen Mehrwert durch Cloudanbindung bieten.

Verbindung vom Codesys Development System zu beliebigen kompatiblen Systemen über deren IP-Adresse. (Bild: 3S-Smart Software Solutions GmbH)
Verbindung vom Codesys Development System zu beliebigen kompatiblen Systemen über deren IP-Adresse.
Bild: 3S-Smart Software Solutions GmbH