LinkedIn Logo YouTube Logo
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.
 Ausschnitt der Visual-Studio-Code-Erweiterung zur Orchestrierung und Analyse der Echtzeitanwendungen. Hier wird die Kommunikationskette eines CNC-Kerns analysiert.
Ausschnitt der Visual-Studio-Code-Erweiterung zur Orchestrierung und Analyse der Echtzeitanwendungen. Hier wird die Kommunikationskette eines CNC-Kerns analysiert. Bild: ISW der Universität Stuttgart

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.

Bild: ISW der Universität Stuttgart

Analyse-getriebene Echtzeitorchestrierung

Der Lebenszyklus eines verteilten Echtzeitsystems (DRTApp) beginnt mit einer Beschreibung des verwendeten Ausführungsmodells und der Komposition der DRTApp aus einzelnen Services (Containern). Anschließend weist ein Scheduler, der entweder in einen Echtzeitorchestrator oder ein externes Tool integriert sein kann, den in Containern gekapselten Services, Scheduling-Parameter zu. Um Rückschlüsse auf das Echtzeitverhalten der bereitzustellenden DRTApp zu ziehen, werden spezifische, mit dem Scheduling-Modell verbundene Validatoren und benutzerdefinierte Validatoren verwendet. Schließlich werden Service-Konfigurationsdateien und Deployment-Beschreibungen für die Laufzeitumgebung einer bestimmten Art von Deploymenteinheit generiert. Beispiele für unterstützte Laufzeitumgebungen sind Kubernetes und Docker für Container. Die DRTApp-Beschreibung ist hierbei aussagekräftig genug, um Dienste und deren Kommunikationsverbindungen über ein gemeinsames Kommunikationssystem wie Time-sensitive Networking zu beschreiben. Darüber hinaus können Rahmenbedingungen, QoS-Anforderungen und einfache Ressourcenanforderungen von Diensten sowie deren Gegenstücke, die bereitgestellten Ressourcen von Rechenknoten beschrieben werden. Neben einer graphischen Modellierungssprache steht dem Anwender auch eine textuelle domänenspezifische Sprache (DSL) zur Modellierung der Services und Anwendungen zur Verfügung.

 Grundkonzept der Orchestrierungslösung für Echtzeitcontainer. Die Realisierung erfolgte als Web-IED.
Grundkonzept der Orchestrierungslösung für Echtzeitcontainer. Die Realisierung erfolgte als Web-IED.Bild: ISW der Universität Stuttgart

Umsetzung des Analyse- und Orchestierungswerkzeugs

Die Grammatik der DSL ist in der Metasprache textX geschrieben. Kommunikationsverbindungen und -flüsse werden als Kanten modelliert, während Rechenknoten, CPUs, Aufgaben und Dienste als grafische Knoten modelliert werden. Die grafische Modellierungssprache basiert auf der Graphical Language Server Platform (GLSP), einem Opensource-Framework für die Erstellung von Diagrammeditoren. Als Plattform für den grafischen Editor wurde eine Visual-Studio-Code-Erweiterung gewählt. Dadurch kann der Benutzer nahtlos zwischen der textuellen und der grafischen Darstellung des Modells wechseln.

Anwendung in der Stuttgarter Maschinenfabrik

In einer klassischen Fabrik hat jede Maschine ihre eigene Computing-Hardware und ein dediziertes Steuerungssystem. Ein Vorteil der Cloud-basierten Steuerungstechnik ist, dass Dienste auf beliebiger Rechnerhardware ausgeführt werden können. Im Anwendungsfall der Forschungsfabrik des ISW werden containerisierte SPSen, CNC-Kernel und Robotersteuerungen auf mehreren Edge-Knoten mit Hilfe des beschriebenen Werkzeugs orchestriert. Dabei werden die Soll- und Istwerte an drei Maschinen der Maschinenfabrik, eine Dreiachs- und eine Fünfachs-Fräsmaschine sowie einen Sechsachsroboter, in Echtzeit über Time-Sensitive Networking übermittelt. Mit Hilfe der vorgestellten Lösung kann hier sichergestellt werden, dass die notwendigen End-zu-Ende-Latenzen eingehalten werden.

Das könnte Sie auch Interessieren

Weitere Beiträge

Bild: Siemens AG
Bild: Siemens AG
Das kann die virtuelle Simatic S7-1500V

Das kann die virtuelle Simatic S7-1500V

Die neue virtuelle SPS Simatic S7-1500V von Siemens basiert in Funktion und Bedienung auf dem weit verbreiteten Hardware-Pendant, ist als rein digitale Lösung aber Hardware-unabhängig einsetzbar. Sie wird als Edge-App heruntergeladen und direkt in die IT-Umgebung integriert. Der Automobilbauer Audi sieht hier riesiges Potenzial für seine Produktionslinien und begleitet das Siemens-Projekt der virtuellen SPS als Pilotanwender von Beginn an.

mehr lesen
Bild: Sigmatek GmbH & Co KG
Bild: Sigmatek GmbH & Co KG
Standard oder 
Kundenspezifisch?

Standard oder Kundenspezifisch?

Sigmatek bietet längst ein breites Standardportfolio für die Automatisierung an. „Die Anfänge des Unternehmens liegen allerdings in kundenspezifischen Lösungen“, betont Alexander Melkus. Der Geschäftsführer erklärt im Gespräch mit dem SPS-MAGAZIN, warum diese auch heute noch ein wichtiger Teil der Signatur von Sigmatek sind, und wie es pünktlich zur SPS 2024 gelungen ist, beide Stoßrichtungen – Standard und kundenspezifisch – in einem Produkt zu vereinen.

mehr lesen
Bild: Kontron Europe GmbH
Bild: Kontron Europe GmbH
Intels 13. Generation ermöglicht Industrierechner Performance-Weitsprung

Intels 13. Generation ermöglicht Industrierechner Performance-Weitsprung

Industrie-PCs und Steuerrechner sowie Prozessorboards oder Module müssen stark wachsende Datenmengen handhaben und verarbeiten können. Kontron stattet Single Board Computer und Computer-on-Modules sowie IPCs mit Intel-Core-Prozessoren und Mobil-Prozessoren der 13. Generation aus. Damit können Hersteller von Geräten, Maschinen und Anlagen deren Nutzbarkeit angesichts steigender Anforderungen über einen langen Zeitraum erfüllen.

mehr lesen

Für schnelle Edge-KI-Applikationen

Die KI-Inferenzplattform DLAP-411-Orin wird angetrieben von der Jetson AGX Orin-Engine, die mit der 8/12-Core 64 Bit Carmel-Arm-CPU und der 1792/2048-Core Ampere-GPU ausgestattet ist.

mehr lesen