Anzeige

Automatisierte Echtzeit-Orchestrierung Container-basierter Steuerungsanwendungen

Domänenspezifische Sprache

Ein grundlegender Baustein zur Flexibilisierung von Automatisierungssystemen aus Softwaresicht sind modulare, virtualisierte Echtzeitarchitekturen, die als verteilte Echtzeitsysteme realisiert werden. Um Entwickler in die Lage zu versetzen, robuste Systeme hinsichtlich der Echtzeiteigenschaften zu entwerfen und zu verwalten, wurde am ISW der Universität Stuttgart auf Basis einer domänenspezifischen Sprache ein Werkzeug entwickelt, das die Analyse des Echtzeitverhaltens sowie die automatisierte Echtzeitorchestrierung Container-basierter Steuerungsanwendungen mit Kubernetes und Docker-Compose erlaubt.

Bild: ISW der Universität Stuttgart
Ausschnitt der Visual-Studio-Code-Erweiterung zur Orchestrierung und Analyse der Echtzeitanwendungen. Hier wird die Kommunikationskette eines CNC-Kerns analysiert.

SOAs sind ein Architekturstil zur Realisierung modularer, verteilter Systeme, in denen Komponenten, die als Services bezeichnet werden, einander Funktionalitäten als Dienste zur Verfügung stellen. Eine kohäsive Anwendung ist dabei eine Kombination mehrerer Services, die kooperieren, um ein bestimmtes Ziel zu erreichen. Dadurch, dass zusätzlich ein unabhängiges Deployment der einzelnen Services möglich ist, erfolgen die Softwareentwicklung und Updates zielgerichtet und in kürzeren Zyklen als bei monolithischen Systemen wie der klassischen speicherprogrammierbaren Steuerung. Es müssen lediglich einzelne Services und nicht das Gesamtsystem aktualisiert werden. Zur Umsetzung von Updates und zum initialem Deployment können Methoden des kontinuierlichen Deployments eingesetzt werden. Das heißt, die einzelnen Container müssen automatisiert auf Zielsystemen bereitgestellt und zur Laufzeit bei Updates aktualisiert werden können. Das wird als Orchestrierung bezeichnet. Für spezielle Echtzeit-SOAs wurden bereits einige Orchestrierungsansätze entwickelt. Diesen ist vor allem der Nachteil gemein, dass dem Design einzelner Services strenge Rahmenbedingungen gesetzt sind. Deshalb sind Module, die für unterschiedliche SOAs, wie z.B. das Robot Operating System und die IEC61499, entwickelt wurden, nicht interoperabel. Zur Flexibilisierung der Steuerungssoftware wird also ein Mechanismus benötigt, mit dem auch heterogen gestaltete Steuerungscontainer orchestriert werden können. Eine solche Lösung wurde am ISW entwickelt.

ISW Institut für Steuerungstechnik der

Dieser Artikel erschien in SPS-MAGAZIN 4 (Mai) 2024 - 02.05.24.
Für weitere Artikel besuchen Sie www.sps-magazin.de