Codesys
Virtuelle Steuerungen für Motion und Robotik
Mit virtuellen Steuerungen können Motion- und Robotikaufgaben auch über große Distanzen zuverlässig ausgeführt werden. Standardisierte Schnittstellen und LWL-Kommunikation ermöglichen eine nahtlose Integration.
Die Automatisierung mit virtuellen Steuerungen verspricht erhebliche Einsparpotenziale bei Beschaffung, Wartung und Betrieb im Vergleich zu klassischen Steuerungssystemen. Besonders interessant ist dies für Anwendungen, bei denen koordinierte Verfahrbewegungen hohe Anforderungen an zeitkritisches Verhalten und geringe Jitterwerte stellen. Erste Anwendungen mit virtuellen Steuerungen sind mittlerweile im Produktivbetrieb: Gehostet auf IT-Servern ersetzen sie in Produktionslinien beispielsweise der Audi AG physische SPSen.
Ein wesentlicher Vorteil virtueller Steuerungen liegt in der Wartbarkeit. Sicherheitsupdates lassen sich zentral und zeitnah ausrollen, wodurch Produktionssysteme leichter gegen gezielte oder zufällige Angriffe abgesichert werden können. Mit der Zertifizierung nach IEC 61508 für SIL3- Anwendungen stehen zudem auch virtuelle Sicherheitssteuerungen wie ‚Codesys Virtual Safe Control SL‘ für entsprechende Aufgaben zur Verfügung. Dennoch bleibt ein Zweifel: Wenn virtuelle Steuerungen auf abgesetzten IPCs nahe der Maschine oder sogar auf entfernten Servern betrieben werden, lassen sich dann weiterhin Echtzeitanwendungen mit hohen Anforderungen an Performance und Jitter realisieren? Vor allem dann, wenn koordinierte Verfahrbewegungen benötigt werden, wie das bei Motion-Controllern, CNC- und Robotiksteuerungen der Fall ist. Wie sieht es aus, wenn größere Distanzen zwischen Steuerung und Antrieben bzw. E/As zu überbrücken sind?
Für koordinierte Verfahrbewegungen in Motion-, CNC- oder Robotikaufgaben werden geeignete Servoantriebe mit digitalen Feldbusschnittstellen benötigt. CANopen und zunehmend EtherCAT haben sich als Echtzeitfähige Bussysteme etabliert und werden von vielen Herstellern implementiert, so dass Anwenderinnen und Anwender die freie Auswahl aus einem breiten Portfolio kompatibler Antriebe verschiedener Hersteller haben. Die in Codesys integrierte Motion-Lösung stellt spezifische Treiber für CANopen- und EtherCAT- Antriebe von mehr als zwei Dutzend Herstellern bereit und unterstützt zudem generische Treiber für CiA402/CoE- und SoE-kompatible Systeme.
Motion, CNC und Robotik auf SPSen
Wurden früher dedizierte Controller eingesetzt, um koordinierte Verfahrbewegungen zu steuern, so lassen sich die Anfahrpunkte der Achsen mit ihren jeweiligen Dynamiken heute auch in der SPS berechnen und per Feldbus übertragen. Daraus ergeben sich Einsparungen bei Hardware- aufwand und Kosten. Voraussetzung ist jedoch eine ausreichende CPU-Leistung und verfügbare Schnittstellen an der SPS. Reicht die Leistungsfähigkeit nicht aus, muss ein leistungsfähigeres Steuerungsmodell gewählt werden, was zusätzlichen Aufwand verursachen kann. Bei der Abschätzung des Leistungsbedarfs seiner Applikation sollte daher frühzeitig geprüft werden, welche Motion Control-, CNC- oder Robotik-Funktionen benötigt werden und die Auswahl geeigneter Steuerungen nach der verfügbaren Leistungsfähigkeit filtern. Dabei fällt auf: Mit SoftSPSen oder virtuellen Steuerungen ist man deutlich flexibler.
Auch die Leistungsreserven von IPCs oder Servern mit mehreren CPU-Kernen sind begrenzt, insbesondere wenn mehrere virtuelle Steuerungen parallel laufen. Im Vergleich zu dedizierten SPSen stehen jedoch größere Ressourcen zur Verfügung, die bei Bedarf abgerufen werden können. Ein Anwendungsfall: Bei der Projektierung wird klar, dass zusätzlich zur Logiksteuerung noch ein Motion Controller nötig wird. Dieser kann über eine Lizenz einfach "aufgerüstet" und aktiviert werden, wodurch komplexe Achsgruppen gesteuert und die benötigten Bibliotheksfunktionen freigeschaltet werden. Physische Geräte erfordern in vielen Fällen einen deutlich höheren Aufwand für Erweiterungen.
Grundsätzlich existieren zwei Architekturansätze für Motion Control, welche die Anforderungen an die Echtzeitkommunikation stark beeinflussen: Beim zentralen Ansatz werden Trajektorien in der Steuerung berechnet, und die Achsen folgen diesen Vorgaben. Dies erfordert eine kontinuierliche, deterministische Kommunikation. Der dezentrale Ansatz hingegen verlagert die Motion-Funktion in intelligente Antriebe oder untergeordnete Steuerungen; die übergeordnete Steuerung sendet nur Befehle. Hier ist keine zyklische, synchronisierte Kommunikation erforderlich. Insbesondere Industrieroboter können somit ohne spezielle Programmiersprachen wie Karel, Inform oder RAPID auskommen. Von der SPS aus werden stattdessen Kommandos über Standard-Feldbussysteme wie Profinet an die Robotersteuerung geschickt. Wurden in der Vergangenheit proprietäre Bibliotheken wie ‚mxAutomation‘ dafür angeboten, so etabliert sich mit ‚Robot Command Interface‘ (SRCI) gerade ein übergreifender Standard mit einem Satz aus 115 Befehlen, z.B. für lineare Bewegungen bis hin zu komplexeren Befehlen wie Kraftsteuerung. Die virtuelle SPS kann diese Kommandos auch räumlich distanziert per Feldbus übertragen, da die Robotersteuerung weiterhin vor Ort verbleibt.
Abgesetzte industrielle Antriebssysteme
Ob virtuelle Steuerungen für zentrale gerechnete Motion-Aufgaben geeignet sind, hängt wesentlich von der Kommunikation zwischen Steuerung und Antrieb ab. In hardwareunabhängigen Systemen wie Codesys werden die Befehle und Services des Protokollstacks in Bibliotheksbausteinen implementiert, abstrahiert von der tatsächlich eingesetzten Hardware. Dieser Code wird mithilfe integrierter Compiler der Entwicklungsumgebung zusammen mit der SPS-Applikation implizit in nativen Maschinencode für die CPU der eingesetzten Steuerung übersetzt. Lediglich bei der Übersetzungsdauer und Codegröße bemerkt man, dass jetzt zusätzlich zum selbst erstellten Logikprogramm auch noch das Feldbus- protokoll im Kompilat enthalten ist. Damit dieser Code zykluskonsistent zur SPS-Applikation ausgeführt werden kann, müssen Antriebssysteme im Programmiertool korrekt konfiguriert werden (siehe Bild 1).
Abhängig vom System sind Parameter wie Netzwerkadressen, busspezifische Einstellungen sowie technische Eigenschaften der eingesetzten Achsen und Motoren, wie Getriebeübersetzung, Achstypen und -grenzen sowie deren Dynamik einzutragen. Zusätzlich muss eine Motion-Task im Projekt mit passender Zykluszeit und Priorität angelegt werden, damit Achsen ihre Sollwerte "pünktlich" bekommen und rund laufen. Per Definition dürfen dabei die Kabellängen z.B. von EtherCAT eine Länge von maximal 100 m aufweisen. Wenn gleichzeitig die Anzahl der angesteuerten Antriebe eine Menge von zehn bis 20 nicht übersteigt, sind in der Regel keine weiteren Maßnahmen bzw. Geräte wie zusätzliche Switches oder Verstärker erforderlich. Neben den Echtzeiteigenschaften von EtherCAT ist dies ein Grund für die hohe Verbreitung des Systems.
Motion-Kommunikation über große Distanzen
Werden virtuelle Steuerungen in einem abgesetzten Rechenzentrum betrieben, können Kabellängen oder zusätzliche Datenlasten, z.B. durch Vision-Systeme, die Echtzeitanforderungen beeinflussen. Spezielle EtherCAT-Hardware ermöglicht die Datenübertragung über Lichtwellenleiter (LWL) über mehrere Kilometer. Dadurch lassen sich Motion-Anwendungen mit virtuellen Steuerungen auch aus der Ferne realisieren.
Kompliziert wird es, wenn an der Maschine ältere Bustechnologien mit Sensoren und Aktoren verbaut sind, deren Daten man nicht ohne weiteres in den Motion-Bus einbetten kann. Dann müssen diese Daten ebenfalls über LWL übertragen werden. Dies ist technisch möglich, indem Daten über spezielle Protokolle parallel zu EtherCAT getunnelt werden. Integrierte Schaltkreise (ASICs) ermöglichen es, Daten in nahezu beliebigen Frequenzen gleichzeitig über den LWL zu übertragen. Genau das verspricht ein Ansatz mit dem Arbeitstitel "Robo/TSN" der Firma Missing Link Electronics. Das System wurde unter anderem im Rahmen der BMFTR-Projekte "Octopus Verano" und "6G Integrated Communication & Sensing for Mobility" finanziert. Die Technologie fasst Daten unterschiedlicher Bussysteme per FPGAs zusammen und überträgt sie deterministisch (siehe Bild 2).
Abhängig vom Medium, typischerweise LWL, können damit mehrere hundert Gigabit an Daten im Nanosekundenbereich übertragen werden. In einem patentierten Verfahren werden die Daten derart getunnelt, dass alle Eigenschaften und Informationen des ursprünglichen Systems erhalten bleiben: Funktional sichere Protokolle wie FSoE (Fail Safe over EtherCAT) oder Profisafe können also problemlos genutzt werden. Aufgrund der Kapselung lassen sich die Feldbusinformation sogar in offenen IT-Netzen sicher nach IEC 62443 übertragen. Wichtig für User von Motion- und SPS-Systemen wie Codesys: Im Gegensatz zu anderen LWL-Systemen ändern sich Bedienung und Konfiguration durch diese Art des Datentunnelns nicht. In ersten Tests wurde beispielsweise die Codesys-Motion-Applikation wie bisher konfiguriert: Ein verfügbarer Ethernet-Port wird zum EtherCAT-Master samt angeschlossenen E/As und Antrieben – bei der Konfiguration merkt man nicht, dass dieser Port durch Robo/TSN getunnelt wird. Auch die oben genannte weitere Parametrierung und Projektierung ändert sich nicht im Vergleich zur Nutzung an einem Standard-Ethernet-Port. Was sich ändert, ist die "Netzwerkkarte": Sie beinhaltet den entsprechenden ASIC und stellt Ethernet- und andere Kommunikations-Ports zur Verfügung. Intern tunnelt sie die konfigurierten Daten und überträgt sie über das angeschlossene Medium, um dann an der Gegenstelle durch eine PCIe-Netzwerkkarte wieder entpackt und wie ursprünglich bereitgestellt zu werden (siehe Bild 3).
Sowohl am Hostrechner, auf dem virtuelle Steuerungen betrieben werden, als auch im abgesetzten Schaltschrank oder in den Maschinenteilen, in denen die entsprechenden Endgeräte betrieben werden, sind die mit dem ASIC ausgestatteten Karten erforderlich.
Virtualisierte Steuerungstechnik in der Praxis
Virtuelle Steuerungen stellen Anforderungen an die Kommunikation zwischen Steuerung und Antrieben, insbesondere bei Motion- und Robotikaufgaben. Die Herausforderungen lassen sich durch standardisierte Feldbussysteme wie EtherCAT, standardisierte Robotik-Befehle (SRCI) und Lichtwellenleiter-Technik lösen.
Moderne integrierte Schaltkreise sorgen dafür, dass die Projektierung von virtuellen Steuerungen den lokalen Systemen weitgehend entspricht. Somit kann virtualisierte Steuerungstechnik in vielen Anwendungsbereichen eingesetzt werden, abhängig von Systemarchitektur und Infrastruktur.















