ISSE

Search

Objektorientierte Programmierung von Industrierobotern

Andreas Angerer, Markus Bischof, Alexander Chekler, Alwin Hoffmann, Wolfgang Reif, Andreas Schierl, Christian Tarragona, Michael Vistein

Im Laufe der Zeit haben viele Robotik-Unternehmen proprietäre Sprachen zur Programmierung ihrer Robotersysteme entwickelt. Diese Sprachen bieten einerseits die Möglichkeit, den Programmfluss zu definieren, andererseits werden somit die Roboterfähigkeiten dem Anwender über eine einfache Programmierschnittstelle zur Verfügung gestellt. Zudem abstrahieren die Sprachen von den steuerungsspezifischen Details wie Echtzeitanforderungen oder Bahnplanung.

Ein Problem dieses Ansatzes ist, dass die Roboterhersteller der Aufgabe gegenüberstehen, die steigende Komplexität der Anwendungen in ihrer Programmiersprache abzubilden. Allerdings ist dies aufgrund der schnell wachsenden Anforderungen eine kostenintensive Angelegenheit. Daher ist eine interessante Alternative, eine moderne, state-of-the-art Programmiersprache inkl. der entsprechenden Entwicklungsumgebung zu verwenden, die durch eine große Entwicklergemeinde genutzt und vorangetrieben wird. Roboterspezifika können durch den Roboterhersteller über eine geeignete Program-mierschnittstelle, ein so genanntes Application Programming Interface (API), zur Verfügung gestellt werden.

Eine solche objektorientierte Programmierschnittstelle ist Gegenstand dieser Arbeit. Sie wurde in der Programmiersprache C# entwickelt und beinhaltet ein Domänenmodell zur Definition von physikalischen Objekten, Bewegungen oder Schaltaktionen innerhalb einer Roboteranwendung. Die echtzeitfähige Robotersteuerung wird durch datenflussorientiert beschriebene, komplexe Einzelaktionen angesprochen. Durch die Verwendung der modernen Sprache C# können Roboterprogramme fließend in andere Anwendungen integriert werden, die weit mehr als nur ein Roboterprogramm umsetzen. Zudem stehen moderne Sprachkonstrukte und Werkzeuge zur Verfügung, um den Ablauf der Anwendung zu modellieren.
Internationales Forum Mechatronik 2010, Winterthur, Switzerland, November 3-4, 2010