Wie sehen virtuelle Steuerungen in der Praxis aus und wie lassen sie sich einsetzen? Dies erläutert der folgende Artikel anhand der IEC-61131-3-Plattform von Codesys.
Virtuelle Steuerungen: Eine Soft-SPS läuft auf modernen Rechnerarchitekturen
(Bild: Vogel Communications Group)
Jeder kennt virtuelle Laufwerke und sogar virtualisierte Computer. Diese Abbilder von physikalischen Geräten, in diesem Fall z. B. Festplatten oder Windows-PCs, helfen uns, deren Funktion zu nutzen. Und zwar ohne, dass die Geräte tatsächlich vorhanden sind. Die Abbilder werden per Software auf Rechnerarchitekturen erzeugt, die leistungsfähig genug sind. In der IT sind solche Virtualisierungen nützlich, um die Datensicherheit von Systemen durch sinnvolle Grenzen des Zugriffs zu erhöhen. Aber auch voneinander unabhängige Konfigurationen für unterschiedliche Anwender bzw. Anwendungen sind damit realisierbar.
Das gleiche gilt auch für virtuelle Steuerungen: Zunächst einmal ist eine leistungsfähige Hardware als Unterbau erforderlich. Auch wenn die SPS abstrahiert wird, muss sie natürlich irgendwo gehostet und ausgeführt werden. Insofern unterscheidet sich die virtuelle SPS zunächst nicht von einem Industriecomputer mit Betriebssystem und einer darauf installierten Soft-SPS.
Bildergalerie
Um aber auf einer Hardware solche virtuellen Steuerungen in beliebiger Anzahl und voneinander unabhängig betreiben zu können, muss noch eine weitere Abstraktion erfolgen. Dazu eignen sich Software-Container oder auch Hypervisor. Sie trennen die Hardware und das darauf laufende Betriebssystem. Dazu definiert der Anwender vor dem Anlegen eines Containers oder einer virtuellen Maschine deren Funktionalität und Leistungsfähigkeit in Containerbeschreibungen bzw. Konfigurationsdateien – inklusive der entsprechenden Konfiguration für die Soft-SPS, wie z. B. Codesys Virtual Control SL.
Darüber hinaus wird festgelegt, auf welche Hardware-Ressourcen der Container zugreifen kann. Dies ist zwingend erforderlich, um von der Steuerung aus E/A-Zugriffe realisieren zu können. Insbesondere Ethernet-basierte Kommunikationsprotokolle und Feldbussysteme eignen sich sehr gut dafür. So lassen sich im Container virtuelle LAN-Ports definieren, die in der Containerbeschreibung mit physikalischen Ports verbunden sind.
Durch die hardware-unterstützte Virtualisierung ist das auf modernen Systemen hoch performant möglich! Das bedeutet: Durch eine bessere Abgrenzung der Prozesse und durch die Hardware-Unterstützung können sogar bessere Echzeitwerte erzielt werden als mit Soft-SPSen, die nativ auf dem Host-System laufen!
Deployment bzw. Orchestrierung
Liegt die Konfigurationsdatei vor, so können daraus beliebige viele virtuelle Steuerungen angelegt bzw. „deployed“ werden. Im Gegensatz zur vorher genannten Soft-SPS wird jetzt allerdings nicht eine Software installiert, sondern ein komplettes Image einer physikalischen Komponente erzeugt. Das kann auf unterschiedliche Arten erfolgen:
Durch die manuelle Ausführung von Funktionen des Betriebssystems bzw. der Virtualisierungs-Plattform, wie z. B. Docker Container – das ist eine Vorgehensweise, die vor allem Systemadministratoren volle Freiheiten beim Deployment geben. Diese Funktionen lassen sich auch als Skripte zusammenfassen und somit erheblich vereinfachen.
Durch generische Softwareplattformen wie Kubernetes oder Open Shift, die eine automatisierte Konfiguration, Verwaltung und Koordinierung von Computersystemen, Anwendungen und Services ermöglichen, kurz Orchestrierung – sie sind als Produkte verfügbar und bieten die Möglichkeit nutzungsbasierte Abrechnungsmodellen („Plattform as a Service“) für die so angelegten virtuellen Steuerungen einzuführen.
Durch proprietäre Plattformen mit Zusatznutzen für die Automatisierungstechnik, wie z. B. dem Codesys Automation Server – auch wenn die Funktion zum Deployment der virtuellen SPS in der Codesys eigenen Industrie-4.0-Plattform derzeit noch in der Entwicklung ist, so bietet sie sich dennoch dafür an. Denn neben dem Deployment von virtuellen Steuerungen lassen sich eine Reihe typischer Aufgaben für Automatisierer noch komfortabler ausführen.
Im SPS-Programmiersystem stellen sich die so erzeugten Steuerungen genauso dar, wie jede dedizierte, physikalisch verfügbare SPS. Das heißt: Sobald die gewünschte Gerätebeschreibung in einem SPS-Projekt eingestellt ist, kann der Anwender nach geeigneten Systemen im Netzwerk suchen. Zwei Unterschiede zur dedizierten Steuerung gibt es jedoch:
Durch die Einbettung der SPS in einen Container bzw. Hypervisor erfolgt auch eine Abkapselung nach außen. Das bedeutet im Fall von Codesys: Das lokale Gateway als Kommunikationsdienst zwischen Projektierungs-PC und der SPS findet alle im Netzwerk befindlichen Steuerungen. Ist jedoch Hardware angeschlossen, auf der virtuelle SPSen per Container oder virtueller Maschine laufen, so werden diese Steuerungen nicht gefunden. „It's not a bug – it's a feature“: Ein unerwünschter bzw. unautorisierter Zugriff ist von vornherein ausgeschlossen! Erst wenn neben den Containern mit den virtuellen Steuerungen auch ein Gateway deployed wurde, wird der Zugriff ermöglicht (Bild 2). Auf dem Projektierungs-PC wird statt des lokalen dann eben dieses Remote-Gateway für den Zugriff auf die Zielsystemplattform ausgewählt – entweder über deren IP-Adresse oder Hostname (Bild 3).
Hardware-spezifische Eigenschaften müssen generisch angesprochen, insbesondere wenn es sich um industrielle Geräte handelt, die z. B. über lokale E/As verfügen. Dazu müssen diese generischen Schnittstellen getrennt vom Prozess angesprochen werden.
Das war es aber auch schon mit den Unterschieden! Mit Geräte-Suche werden wie bisher alle verfügbaren virtuellen Steuerungen gefunden. Dem Codesys Development System ist es dabei vollkommen gleichgültig, für welche Steuerung gerade programmiert bzw. projektiert wird. Wurden in der Konfigurationsdatei virtuelle Ethernet-Ports angelegt bzw. mit physikalisch verfügbaren Ports verbunden, so lassen sie sich auch im Codesys-Projekt einbinden und z. B. als EtherCAT, PROFINET oder EtherNet/IP konfigurieren und verwenden. Der Container bzw. Hypervisor schleift diese virtuellen Ports problemlos durch und sorgt für die deterministische Ausführung der Buszyklen – genauso wie bei einer „echten“ SPS. Hier zwei typische Anwendungsfälle für virtuelle Steuerungen:
Use Case 1: Ersetzen von dedizierten Steuerungen
In einer Demo-Anlage eines namhaften deutschen Unternehmens ersetzt ein einziger anlagennaher IT-Server mit 128 CPU-Kernen 32 herkömmliche Industriesteuerungen und kommuniziert unter Echtzeitbedingungen mit 320 Busteilnehmern. Die Applikation läuft dabei stabil über alle Steuerungsinstanzen mit einem 8 ms-Zyklus und einem Jitter unter 50 us.
Die Vorteile des Anwendungsfalls liegen auf der Hand: Auch wenn die Anschaffung eines entsprechenden IT-Servers eine nicht unerhebliche Investition darstellt, so betragen die Kosten dafür nur einen Bruchteil des Gesamtvolumens der ersetzten SPSen. Hinzu kommen die vereinfachte Installation zum Beispiel im Hinblick auf die Spannungsversorgung und Verdrahtung, sowie eine zentrale Wartung, in diesem Fall durch IT-Spezialisten statt Automatisierer.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel Communications Group GmbH & Co. KG, Max-Planckstr. 7-9, 97082 Würzburg einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von redaktionellen Newslettern nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung, Abschnitt Redaktionelle Newsletter.
So können Updates der Firmware und der SPS-Applikation für die virtuellen Steuerungen problemlos von zentraler Stelle ausgerollt werden. Und sollen aus irgendeinem Grund zusätzliche Funktionen per SPS realisiert werden, so lassen sich ganz einfach weitere virtuelle Steuerungen anlegen und einsetzen – ohne, dass es zu einer Rückwirkung mit den bereits laufenden Systemen gibt.
Use Case 2: Aufteilung der Applikation
In einer zweiten Applikation hat die Firma Voith Paper eine bestehende Applikation in mehrere logische Teile aufgetrennt und lässt auf einem IT-Server diese logischen Einheiten auf fünf prozesstechnisch isolierten Steuerungsinstanzen ausführen. Weil diese Instanzen mit anderen Diensten über definierte Schnittstellen einfach zusammenarbeiten können, werden sie zu „Microservices“, wie man sie in der IT kennt.
Dadurch verfügt die Maschine über ein State-of-the-Art Security-Design, außerdem ist die Voith-Paper-Applikation jetzt flexibel anpassbar und einfach wartbar: Die einzelnen Teile der Applikation erfüllen unabhängig voneinander ihre Aufgaben, können zu- und abgeschaltet, ausgetauscht oder auch erweitert werden. Damit ist Voith Paper für alle zukünftigen Anforderungen ideal vorbereitet. Ein teurer und vor allem risikoreicher Umstieg auf verteilte Steuerungskonzepte, z. B. durch IEC 61499-Systeme ist vollkommen überflüssig.
Nutzen bei Lieferproblemen
Mit virtuellen SPSen lassen sich Steuerungsaufgaben von n dedizierten Steuerungen unverändert auf einer Hardware ausführen.
(Bild: CODESYS GmbH)
Warum können nun virtuelle Steuerungen bei Lieferproblemen nützlich sein? Ganz einfach: Weil Maschinen- und Anlagenbauer aufgrund der Abstraktion der Hardware wirklich ohne Aufwand auf andere verfügbare Plattformen umsteigen bzw. ausweichen können. Und dabei spielt es keine Rolle, ob diese Plattformen industriellen Anforderungen genügen. Natürlich kann das ein IPC im Schaltschrank sein – aber jetzt eben auch ein IT-Server, der in einem Serverraum in der Nähe der Anlage steht. Oder ganz flexibel heute so und morgen so!
Wichtig ist: Die Steuerungsfunktion wird dort abgearbeitet, wo entsprechenden Ressourcen verfügbar sind. Vorhandene Ressourcen lassen sich besser auslasten, weil sie nicht exklusiv zugeteilt, sondern flexibel nachrüstbar sind. Das schafft Freiheiten, die gerade bei den aktuellen Lieferproblemen von Steuerungshardware eine Lieferfähigkeit von Maschinen und Anlagen ermöglicht. Wenn das nicht bereits ein Mehrwert für sich ist! Darüber hinaus lässt sich diese Hardware-Abstraktion für einen weitere interessanten Anwendungsfall nutzen. (jw)
* Roland Wagner ist Head of Product Marketing bei Codesys in Kempten.