Roboterprogrammierung vereinfachen
Wie Augmented Reality den Programmierer dabei unterstützt

Jan Guhl, Oliver Heimann und Jörg Krüger

Roboterprogrammierung ist trotz allen Weiterentwicklungen in der Steuerungstechnik und Mensch-Maschine-Interaktion immer noch ein kompliziertes Problem und dementsprechend kostspielig. Gerade in kleinen und mittelständischen Unternehmen stehen daher dem Robotereinsatz hohe Hürden gegenüber. Dieser Artikel befasst sich mit Möglichkeiten die Roboterprogrammierung – unter Zuhilfenahme von verschiedenen erweiterten Realitäten – zu vereinfachen und zu beschleunigen.

Unterstützt durch immer bessere Sensoren und Algorithmen kommen Roboter heute für immer mehr Anwendungen zum Einsatz. Auch der Mensch spielt nach wie vor eine zentrale Rolle in der Produktion [1]. Einer der Gründe dafür ist die sensorische und kognitive Kapazität des Menschen, welche die notwendige Flexibilität für kleine Losgrößen garantiert [2]. Obwohl die Entwicklungen in der Künstlichen Intelligenz und der Robotik vielversprechende Ansätze zeigen, kann davon ausgegangen werden, dass der Mensch daher auch in den kommenden Jahren ein elementarer Bestandteil der Fertigung bleibt [3]. Dennoch bieten die heutigen Robotersysteme die Möglichkeit, Aufgaben zu automatisieren, die früher ausschließlich dem Menschen überlassen waren. Häufig greifen diese Systeme dazu auf spezialisierte Algorithmen zurück. Die entsprechend für die Entwicklung derartiger Anwendungen benötigte Zeit stellt jedoch ein Hindernis insbesondere für kleine Unternehmen dar. Für sie muss ein System schnell und ohne Programmierkenntnisse von vorhandenen Experten bedient und auf neue Situationen angepasst werden können, um einen Mehrwert zu schaffen.

Moderne Programmiersysteme setzen daher häufig auf das sogenannte Walk-Through Programming. Dabei wird der Roboter mittels sensorbasierter Eingabesysteme durch die Anwendung geführt. Eine weitverbreitete Lösung ist die Bahnprogrammierung des Roboterarms mithilfe von Krafteinwirkung auf den Arm. Der Roboter wird dabei wortwörtlich an die Hand genommen und entlang der Bahn geführt. Neben der einfachen Bedienung liegt der Vorteil auch im direkten Feedback, welches der Anwender von der Hardware erhält. Für größere Roboter ist eine solche Interaktion jedoch nicht ungefährlich. Andere Systeme sehen daher ein zusätzliches Eingabegerät, beispielsweise einen Stift, zur Programmierung der Bahn vor. Im Gegensatz zum direkten kinästhetischen Führen des Roboters fällt dabei jedoch das direkte Feedback zur Bewegung des Roboters weg. 

Eine Möglichkeit, auch in diesem Fall ausführliches Feedback über die Bewegung des Roboters und die programmierte Bahn zu liefern, ergibt sich über das Einblenden von Informationen mittels erweiterter Realität (Augmented Reality, AR) und virtueller Realität (Virtual Reality, VR). Bei AR sieht der Benutzer die Realität mit virtuellen Objekten überlagert, wodurch eine so genannte gemischte Realität entsteht. AR kann über tragbare Geräten wie Tablets oder Smartphones aber auch über kopfgetragene Bildschirme (Head Mounted Display, HMD) visualisiert werden. Bei VR taucht der Benutzer über ein HMD vollständig in eine computergenerierte Realität ein und ist nicht in der Lage, die reale Welt um sich herum zu sehen. Mischformen zwischen den beiden Umsetzungen werden als Mixed Reality (MR) bezeichnet. Dabei werden die virtuellen Objekte mit passendem Blickwinkel in die Realität integriert und die räumliche Darstellung der Inhalte kann so an die reale Umgebung angepasst werden, dass sogar von der Realität überlagerte virtuelle Objekte möglich sind.

Die meisten Anwendungen zur Einführung von Augmented Reality in Fertigungsprozessen sind noch explorative Prototypen. Mit den signifikanten Verbesserungen hinsichtlich der Rechenleistung der Hardware, Auflösungsvermögen der Sensorik und zusätzlich verbesserten räumlichen Lokalisierungsmethoden, ist es jetzt aber möglich, AR-Anwendungen für Fabriken umzusetzen [4]. Im weiteren Verlauf werden zwei verschiedene Realisierungen von AR-gestützten Roboterprogrammiersystemen vorgestellt.


Bild 1: von links oben nach rechts unten – Der Benutzer spannt die Bauteile
fest und startet die Erkennung. Das System erkennt den Stoß automatisch
und färbt ihn rot. Anschließend wählt der Benutzer relevante Teile der Naht aus,
diese werden vom System grün hervorgehoben. Nach Vollendung der
Programmierung wird das Roboterprogramm gestartet.


Roboterprogrammierung mit erweiterter Realität

Mit dem Ziel die Roboterprogrammierung möglichst intuitiv zu gestalten hat das Fraunhofer-Institut für Produktionsanlagen und Konstruktionstechnik (IPK) gemeinsam mit dem Fachgebiet Industrielle Automatisierungstechnik der Technischen Universität Berlin ein Programmiersystem entwickelt, welches vollständig auf externe Eingabegeräte verzichtet. Der Leitgedanke bei der Entwicklung ist dabei, eine möglichst natürliche Interaktion mit dem System zu gestalten. Dies gelingt zum einen mittels einer gestenbasierten Eingabe, zum anderen über eine Mensch-Maschine-Kommunikation auf Basis von projektionsbasierter erweiterter Realität. Anstelle des Eingabestifts kann der Bediener direkt mit dem Zeigefinger die Roboterbahn programmieren und über projizierte Knöpfe, Dreh- und Schieberegler einzelne Parameter anpassen. Auch die Rückmeldung über die programmierte Bahn erhält er über die erweiterte Realität direkt auf dem Bauteil. 

Um trotz der Programmierung mit dem Fingerzeig die notwendige Präzision für industrielle Prozesse zu erreichen, nutzt das System eine Datenfusion von mehreren Kamerabildern und verrechnet die Ergebnisse unterschiedlicher Bildverarbeitungsalgorithmen. Die Grundlage dafür stellen die Konturen der Werkstücke dar. Hierzu wird in einem ersten Schritt der leere Arbeitsplatz von den Kameras aufgenommen. Anschließend werden die Werkstücke auf dem Tisch platziert und erneut Bilder der statischen Szene erfasst. In diesen hochaufgelösten Bildern wird nun mittels Hintergrundsubtraktion das eigentliche Werkstück freigestellt. Über Filteroperationen und ein Expertensystem werden anschließend die für den Prozess relevanten Objektgeometrien ermittelt. Erst jetzt wird die eigentliche Benutzereingabe herangezogen und mit den vorsegmentierten Geometrien verrechnet. 

Um das System zu erproben wurde ein Demonstrator für Schweißroboter entwickelt. Das System erkennt dabei zunächst eigenständig den Stoß zwischen zwei Bauteilen. Anschließend kann der Benutzer mit dem Zeigefinger Teilelemente der Naht auswählen und zur Bearbeitung markieren. Durch die geschickte Datenfusion erreicht das System dabei eine Präzision von unter drei Millimeter, welche für gängige Nahtnachführungssysteme ausreichend ist. Die einzelnen Schritte, sowie das projizierte Interface sind in Bild 1 dargestellt.

[ Wenn Sie den kompletten Beitrag lesen möchten, klicken Sie hier ]