Die Runtimes

Die Komponentenstruktur der logiccloud-Runtimes

Die Komponentenstruktur der logiccloud-Runtimes. (Quelle: logiccloud)

Die Komponentenstruktur der logiccloud-Library-Services

Die Komponentenstruktur der logiccloud-Library-Services. (Quelle: logiccloud)

In einer Cloud-basierten Automatisierungsarchitektur, einem Cyber-Physical Production System (CPPS), werden Daten, Dienste und Funktionen dort gespeichert, abgerufen und ausgeführt, wo sie im Sinne einer flexiblen sowie effizienten Entwicklung und Produktion am vorteilhaftesten sind. Dienste, Daten und Hardware-Komponenten lassen sich auf beliebige Knoten in einem Netzwerk verteilen und bilden funktionale Module, aus denen das Automatisierungssystem aufgebaut ist. Ziel sind global vernetzte und verteilte Systeme, die prinzipiell beliebige Kommunikationswege über alle Fabrikebenen hinweg erlauben. Zu diesem Zweck umfasst die Komponente Runtimes verschiedene Subsysteme:

Das Subsystem PLC Runtime ist für die Abarbeitung des IEC-61131-Steuerungsprogramms zuständig. Es arbeitet hauptsächlich im Zyklus-Modus und nutzt das Subsystem IO Broker, um IO-Eingangsabbilder in IO-Ausgangsabbilder zu konvertieren. Die Kommunikation mit den physikalischen Automatisierungsgeräten erfolgt über das Subsystem IO Connectors.

Die Komponente Runtimes enthält auch ein Simulationssubsystem, mit dem sich ein SPS-Programm ohne reale E/A-Signale testen lässt. Für die Zukunft ist auch ein Digital-Twin-Subsystem geplant, mit dem auf Basis der E/A-Abbilder der IO-Runtime virtuelle Modelle als Abbild der realen physikalischen Realität verbunden werden können. Alle Subsysteme der Laufzeitkomponente sind als Dienste konzipiert.

Die Bibliotheksdienste

Die Library Services sind ebenfalls eine wichtige Komponente für die logiccloud-SPS. Die Kernelemente der Library Services sind die SPS-Programm-Compiler für verschiedene IEC-61131-3-Programmiersprachen sowie ein Function Library Management, um Funktionsbibliotheken in den Steuerungsprogrammen nutzen zu können. Geplant sind außerdem ein Digital Twin Mapper zur Anbindung von 3D-Modellen an die SPS-Laufzeit und ein logiccloud-Marktplatz (Market Place Services) zur Integration von Fremdkomponenten. Der Backend-Architektur ist ein logiccloud-Portal überlagert, das der Anwender als Anwendungsumgebung (Frontend) für Engineering, Management und Betrieb nutzen kann.

Die Umsetzung und Bewertung

Das logiccloud-Konzept basiert auf modernen Web-Technologien. Dazu gehören:

  • die Container-Technologie mit Kubernetes für die automatisierte und beliebige Verteilung von Steuerungsinstanzen auf verschiedene Netzwerkknoten; 
  •  JavaScript und C/C++ für die Backend-Programmierung;
  •  HTML5 und das Responsive Design für das Frontend-Portal.

Darüber hinaus nutzt die Implementierung verschiedene Open-Source-Tools wie Keycloak für die Systemsicherheit, Grafana und Prometheus für Analytics, Logging und Metriken. 

Alle Funktionalitäten im logiccloud-System sind als Micro-Services implementiert und lassen sich flexibel erweitern. 

Das logiccloud-Portal bietet die Erstellung von SPS-Projekten und Steuerungsprogrammen in den IEC-61131-3-Sprachen ST, LD, SFC und FBS im Rahmen einer integrierten Entwicklungsumgebung (PLC IDE). 

Neben der Echtzeitfähigkeit der SPS-Instanzen liegt ein besonderes Augenmerk bei der Implementierung auf deren Security, Reliability und Safety. Im Hinblick auf die Sicherheitsmechanismen berücksichtigt die Implementierung die im Open Web Application Security Project identifizierten grundlegenden Bedrohungen und Risiken. Daher ist das logiccloud-System von Anfang an sicherheitsorientiert konzipiert und nutzt bewährte Standardtechnologien, wie

  • Oauth2 mit 2FA,
  • granulare rollen- und berechtigungsbasierte Zugriffskontrolle,
  • verschlüsselte Kommunikation sowie
  • Laufzeitisolierung innerhalb des Kubernetes-Clusters.

Darüber hinaus integriert logiccloud eine automatische Anomalieerkennung, mit der eine große Anzahl von Angriffen auf die Plattform identifiziert und verhindert werden kann. Um die Zuverlässigkeit der laufenden SPS-Instanzen zu gewährleisten, stehen eine Reihe von Maßnahmen bereit. Dazu gehören:

  • Caching-Mechanismen für Laufzeit- und IO-Images, Synchronisationsmechanismen zum schnellen Austausch einer fehlerhaften SPS-Laufzeitinstanz,
  • die permanente Überwachung der Infrastruktur mithilfe von „Selbstheilungsfähigkeiten“ sowie
  • die Bereitstellung eines zusätzlichen Ressourcen-Pools, der in Notfällen als Puffer dienen kann.

Jede SPS-Instanz steuert reale physikalische Automatisierungsgeräte und muss mit diesen über das Netzwerk (Intranet oder Internet) zuverlässig verbunden sein. Netzwerkverbindungsprobleme kann das logiccloud-System nicht abfangen, aber es sind einige Gegenmaßnahmen vorgesehen, die insbesondere die Maschinensicherheit gewährleisten sollen. Etwa die vorgesehene Verwendung von redundanten oder hybriden Netzwerkverbindungen mit schnellem Failover; die Verlagerung der SPS-Instanzen vor Ort an die Edge; die Einführung von Watchdog- und Ping-Signalen zur Erkennung von Stromausfällen und die Generierung von Warnungen bei abnormalem Verhalten, etwa erhöhten Latenzzeiten.

Letztlich muss aber der Anwender einer logiccloud-Steuerung eine Risikoanalyse bezogen auf den zu steuernden technischen Prozess durchführen und seine Anforderungen an diesen definieren.

logiccloud wird im Laufe des Jahres 2022 zu einem vollständigen Steuerungsprodukt ausgebaut und ab Ende 2022 für erste industrielle Anwender zur Verfügung stehen.

Michael Böhrer
3 / 3

Ähnliche Beiträge