Steuerungsapplikationen stellen häufig hohe Anforderungen an die Projektierung: Der Projektierer muss sich den komplexen Ablauf der Maschine/Anlage abstrahiert vorstellen können oder die Applikation mit Hilfe eines diskreten Aufbaus programmieren. Spezialisierte 3D-Simulationstools entsprechen dabei meist nicht der „Denke“ von SPS-Programmierern. Die Integration eines 3D-Tools in einem IEC-61131-3-System spannt nun den Bogen zwischen den Welten und vereinfacht das Engineering.
„Der Automatisierer muss nicht mehr in abstrakten Größen und IT-Begriffen denken, sondern nur noch in Funktionalitäten des zu automatisierenden Systems“, so wurden die Ziele des OPAK-Forschungsprojekts zusammengefasst. Im Rahmen dieses vom Bundesministerium für Wirtschaft und Energie (BMWi) unter dem Dach von „Autonomik Industrie 4.0“ geförderten Projekts entstand ein innovatives Produkt. Dieses ermöglicht die Visualisierung und Animation von Automatisierungsfunktionen in Form von 3D-Modellen direkt in einem IEC-61131-3-Tool.
Als Software-Basis für das Forschungsprojekt diente das IEC-61131-3-Programmiersystem Codesys, weil es in Hunderten von Industriegeräten eingesetzt wird. So können Anwender aus unterschiedlichen Industriebereichen heute von den Ergebnissen profitieren. Auch bringt es im Standard-Umfang beziehungsweise durch optionale Zusatzkomponenten viele erforderliche Eigenschaften mit, zum Beispiel zur Steuerung komplexer Bewegungsaufgaben, CNC- oder Robotik-Anwendungen.
Dreidimensionale Szenen, Posen und Elemente
Ein wichtiger Schritt, um aus einem IEC-61131-3-Tool ein 3D-fähiges Engineering-Werkzeug zu machen, war die Implementierung einer integrierten Zusatzkomponente. Mit dem mittlerweile verfügbaren Zusatztool, dem Codesys Depictor, lassen sich innerhalb der Entwicklungsoberfläche Maschinenabläufe optisch so darstellen, dass funktionale Abhängigkeiten räumlich erkannt und verstanden werden können. Dies ermöglicht dem Anwender, Szenen des Maschinenablaufs zu beschreiben und optisch zu animieren.
Zur Verwendung des Codesys Depictor installiert sich der Anwender diesen in die bestehende Entwicklungsoberfläche. Im Applikationsbaum kann er zusätzlich zu den IEC-61131-3-Bausteinen ein neues „Scene“-Objekt einfügen. Es enthält die räumliche Darstellung eines Ablaufs oder eines Teilaspekts der Maschine, dessen Struktur aus „Pose“-Objekten aufgebaut ist. Posen sind Beschreibungen von Raumposition und -orientierung, die von Maschinenzuständen abhängen und die in der 3D-Visualisierung animiert werden. Damit eine Pose grafische Geometrien sichtbar machen kann, muss ihr der Anwender geometrische Objekte in Form von 3D-Elementen zuordnen. Dazu kann er räumliche, konfigurierbare Standard-Elemente verwenden, wie zum Beispiel Boxen, Zylinder, Mechanik-Profile oder Kugeln, und diese dann zu den gewünschten Einheiten zusammenstellen.
Idealerweise bekommt der Anwender komplexe 3D-Elemente aus dem CAD-Tool der Mechanik-Konstruktion, zum Beispiel im STL-Format oder anderen gängigen 3D-Objekt-Formaten. Solche Elemente können in den Codesys Depictor eingebunden und verwendet werden. Der Anwender erstellt daraus ohne zusätzliche Zeichenarbeit die optische Darstellung des Ablaufs gemäß den Konstruktionszeichnungen. Komplexere Posen- und Elementkonstruktionen kann er in Depictor-Objekten als Template-Vorlagen zusammenfassen und sie damit leicht wiederverwenden.
So wird die Animation der Posen realisiert: Jeder Pose können eine oder mehrere räumliche Transformationen mitgegeben werden. Zur Auswahl stehen unter anderem Parallelverschiebungen (Translationen), Rotationen und Skalierungen in allen Raumachsen sowie die Denavit-Hartenberg-Transformation für die vereinfachte Animation von Robotik-Aufgaben. In diesen Transformationen werden einzelne Parameter wie etwa Rotationswinkel mit den entsprechenden IEC-61131-3-Variablen der Steuerungsapplikation verknüpft oder fest vorgegeben. Zur grafischen Anpassung können die Variablen direkt innerhalb der Transformation arithmetisch bearbeitet werden, das heißt, mit Ausdrücken gemäß der IEC-61131-3-Syntax für den strukturierten Text.
Nutzen der integrierten 3D-Darstellung
Der Anwender kann mit Hilfe von Szenen Maschinenabläufe realistisch darstellen. Im Gegensatz zu anderen 3D-Tools bleibt er dabei in derselben Oberfläche, in der er seine Steuerungsapplikation erstellt hat. Durch die direkte Verknüpfung mit dem IEC-61131-3-Programm zeigt ihm die 3D-Ansicht genau das an, was seine Applikation ausführt – und das bereits bevor er auf der realen Maschine oder Anlage testet. Damit ermöglicht der Depictor die Darstellung und Vorabdiagnose ähnlich zu typischen 3D-Simulationen.
Spezielle, leistungsfähige 3D-Simulationswerkzeuge haben Nachteile im Vergleich zum schnellen und einfachen Modellieren mit dem Depictor: Sie werden typischerweise nur von erfahrenen 3D-Designern beherrscht, nicht aber von Anwendern der Automatisierungstechnik. Zudem muss zur Simulation der Abläufe die Funktionalität der Maschine oder Anlage im 3D-Simulationstool nachimplementiert werden. Im Normalfall besteht keine Möglichkeit, die simulierte Funktion für die Verwendung in der Steuerung zu übertragen, oder die reale SPS-Funktion im Simulationstool zu verwenden.
Aufgrund der Integration in der gewohnten IEC-61131-3-Oberfläche sind SPS-Programmierer in der Lage, Maschinenanimationen zu erzeugen. Diese Animationen können vielfältig verwendet werden, zum Beispiel zur Optimierung der Prozessabläufe der Maschine oder Anlage, als Funktionsstudie, als Besprechungsgrundlage für ein Projekt- oder Vertriebsmeeting sowie zu Ausbildung oder Anwendungsschulung.
Schritte zum 3D-Engineering
Mit dem Codesys Depictor sind Grundlagen geschaffen, um die Vision des OPAK-Projekts in die praktische Anwendung zu bringen. Für echtes 3D-Engineering sollte die Entwicklung der Steuerungsapplikationen jedoch auf die Betrachtung der funktionalen Einheiten der Maschine reduziert werden können. Mit der optionalen Add-on-Komponente Codesys Application Composer verfügt das IEC-61131-3-System bereits über eine Zusatzfunktionalität zur Projektierung der Gesamtapplikation auf Basis von Funktionsmodulen. Darin stellt sich der Anwender aus diesen Modulen seine Steuerungsapplikation in einem funktionalen Baum zusammen.
Die passenden Module für seine Applikation bekommt er entweder von den Herstellern der eingesetzten mechatronischen Automatisierungskomponenten, oder er erzeugt sich solche Module direkt in Codesys selbst. Zusätzlich zu ihrer funktionalen Beschreibung können Composer-Module bereits das passende 3D-Depictor-Modell mitbringen. So kann durch eine Zusammenstellung der Module der gesamte Maschinen- oder Anlagenprozess funktional zusammengebaut werden. Der Anwender muss keinen IEC-61131-3-Code mehr programmieren – per Generator wird aus dem hinterlegten IEC-61131-3-Code in den Modulen eine voll ablauffähige Applikation einschließlich E/A-Konfiguration und Visualisierung zusammengebaut, die er dann sofort auf die ausgewählte Steuerung übertragen kann.
Ein Meilenstein ist erreicht
Die Vision von der rein funktionalen Applikationserstellung in der Automatisierungstechnik ist umsetzbar - Projektpartner konnten das anhand entsprechender Demonstratoren bereits zeigen. Wie in allen ambitionierten Projekten ist es sinnvoll, den gesamten Weg in überschaubare Schritte einzuteilen. Ein wichtiger Meilenstein auf diesem Weg ist der Codesys Depictor, als 3D-Visualisierungs- und Simulationstool integriert in der IEC-61131-3-Entwicklungsumgebung. Das Zusatztool ist im Codesys Store verfügbar.