Für die Entwicklung von Maschinen und Anlagen ist der Einsatz von CAD-Werkzeugen Standard. Die aktuellen, integrierten CAx-Umgebungen bieten neben der Konstruktion weiterführende Unterstützung während der Entwicklung. So können, z.B. mit NX und dem Mechatronics Concept Designer, die Bewegungen von Maschinen geplant und simuliert werden.
Simulation von Kinematiken
Je enger die Konstruktion und Simulation miteinander integriert sind, desto schneller kann mit der Simulation begonnen werden. Es ist dann nicht notwendig, zuerst die Anlage vollständig zu konstruieren und im Anschluss zu simulieren. Das soll am Beispiel eines Pick&Place-Prozesses mit einem Sechsachsroboter erläutert werden. Das Modell des Roboters liegt im Regelfall vor und besteht aus mindestens sechs Körpern, die den Roboter bilden. Um mit diesem Modell eine Simulation durchführen zu können, müssen die einzelnen starren Körper der Achsen miteinander über die entsprechenden Gelenke mittels der NX-MCD-Mechanismen verbunden und der Sockel fixiert werden. Dann ist es auch schon möglich, Posen (3D-Punkte inkl. Orientierung in den drei Achsen) des Endeffektors zu definieren und zu Bahnen zu verbinden. So kann sehr früh der rudimentäre Ablauf entworfen und erprobt werden. Sobald mehr Details und Komponenten der Anlage verfügbar sind, wie Greifer, Paletten, Vorrichtungen oder den Arbeitsraum begrenzende Gestelle, kann der Ablauf wieder erprobt werden. Bei solch einem Entwicklungsprozess ist es wahrscheinlich, dass sich Posen häufig ändern, z.B. bei Geometrieänderungen des Greifers, Anpassungen der Greifpose oder ähnlichem.
Kinematikansteuerung aus der SPS
Die Programmierung von Kinematiken erfolgt bisher in den Programmierumgebungen der Steuerungshersteller. Bei Sechsachs-Knickarmrobotern also meist der Steuerung des Roboterherstellers. Eine Steuerung der Kinematik aus der Anlagensteuerung heraus ist aber möglich. Siemens bietet hierfür eine Bibliothek (Simatic Robot Library), mit der ein Zugriff auf Robotersteuerungen über eine generische Schnittstelle von S7-SPSen angeboten wird.
Für eine Menge von Aufgaben ist die Struktur der Programme sehr ähnlich, da im Wesentlichen nur eine Bahn aus einer bestimmten Anzahl von Posen abgefahren werden muss. Für genau diese Struktur kann ein Framework von Siemens, der Simatic Robot Integrator, genutzt werden, um Pfade – also Bahnen einer Kinematik – in einer SPS zu verwalten und abzufahren. Hierbei kann für jede anzufahrende Pose unter anderem die Bewegungsart (linear, PTP, Kreis), Geschwindigkeit, Beschleunigung und der Greiferzustand (offen oder geschlossen) vorgegeben werden. Die Programmierung des Roboters auf der Robotersteuerungsseite ist dabei nicht notwendig. Die Ansteuerung anderer Kinematiken ist ebenfalls z.B. mit Hilfe der Bibliothek LKinCtrl aus der SPS heraus möglich. Auch hier werden die Posen der Pfade in der SPS gespeichert.
Export der Bewegungsbahnen in die SPS
Aus der Simulation heraus liegen die Posen nur im CAx-System, z.B. NX-MCD, vor. Zwar ist eine Simulation der Bewegung in NX-MCD möglich, die Einbindung der echten Steuerungsalgorithmen erhöht aber die Simulationsgüte und ermöglicht auch die gleichzeitige Entwicklung der Steuerungsprogramme. Dabei kann es zum einen zu häufigen Anpassungen der Posen kommen. Zum anderen können Bahnen aus vielen Posen bestehen. Beides macht einen automatisierten Workflow wünschenswert, in dem die exportierten Posen automatisch in das Steuerungsprogramm eingefügt werden. Da die Programmierung der Bewegung nun auch in der SPS möglich ist, wird ein Werkzeug benötigt, um die Posen der erzeugten Bewegungsbahnen aus dem CAx-System in die Entwicklungsumgebung der SPS zu exportieren.
TIA Portal Add-In
Um die Pfaddaten, insbesondere Position und Orientierung, aus dem CAx-System direkt in die Entwicklungsumgebung für das Steuerungsprogramm zu übernehmen, wurde vom Fraunhofer IPK ein Add-In für das TIA Portal entwickelt, mit dem strukturierte Daten in einen Datenbaustein integriert werden. So entfällt die fehlerträchtige händische Arbeit, einzelne Zahlen von einer Anwendung in die andere zu kopieren. Das Import-Werkzeug verarbeitet als Eingabe Dateien, in denen je Zeile ein Datensatz abgelegt ist. Das Datenformat jeder Zeile muss gleich sein, kann aber frei konfiguriert werden. Mit Hilfe eines frei definierbaren regulären Ausdrucks wird die Zeile in die einzelnen Felder zerlegt.
Nach dem Einlesen der Daten müssen diese in eine Datenstruktur der SPS eingefügt werden. Mit dem umgesetzten Datenmodell ist auch das weitgehend konfigurierbar, da auf die Typeninformationen des SPS-Programms zugegriffen wird. So ist für jede Spalte definierbar, welchem Feld sie in der SPS-Datenstruktur zugewiesen ist. Um Anpassungen der Posen, die im SPS-Programm durchgeführt wurden, zurück in das CAx-System übernehmen zu können, unterstützt das Add-In auch den invertierten Workflow. Dabei werden die Daten aus dem Datenbaustein der SPS in eine kommaseparierte Liste exportiert.
Das entwickelte Add-In ist durch seine freie Konfigurierbarkeit flexibel einsetzbar. So kann es einfach auf verschiedene Datenquellen angepasst werden, solange ein Datensatz in einer Zeile vorliegt. Auch ist das Ausgabeformat und die Datentypen für den Pfad und die Posen frei definierbar, sodass das Add-In neben der Robotikanwendung, auch die LKinCtrl-Bibliothek oder vergleichbare andere Strukturen unterstützt. Es ist nur für jede Anwendung die zugehörige Konfigurationsdatei notwendig.
Mit dem beschriebenen Add-In können Pfade aus einem CAx-Modell in ein SPS-Programm integriert werden. Zusammen mit der Exportfunktion wird so ein geschlossener Entwicklungszyklus vereinfacht, bei dem Fehler durch manuelle Datenübertragung nahezu ausgeschlossen sind. Er ist sehr frei konfigurierbar, sodass eine Anpassung auf unterschiedliche Datenquellen sowie verschiedene SPS-Programmstrukturen und damit unterschiedliche Kinematiken unterstützt werden. Mögliche Erweiterungen sind z.B. eine automatische Anpassung der Pfadlänge an die Anzahl der verwendeten Posen.