netRob: Industrieroboter programmieren ganz einfach!
„Industrieroboter zu programmieren ist kompliziert“ heißt es immer. Mit dem von uns entwickelten Programmierframework aus dem Projekt netRob vereinfachen wir die Programmierung eines Industrieroboters und ermöglichen dies mittels einer Simulation auch all jenen Menschen, die über keinen Industrieroboter verfügen.
Bedarf von Bildungseinrichtungen
Roboter werden zunehmend in vielen Bereichen unseres Lebens eingesetzt und auch die Zahl der Industrieroboter steigt weiter rasant an. Aktuelle Industrieroboterlösungen sind jedoch kompliziert zu programmieren und erfordern spezialisiertes Fachwissen. Für Gesellschaft und Wirtschaft ist somit die Ausbildung von Fachleuten auf dem Gebiet der Robotik und das generelle Steigern des Interesses von Jugendlichen an einer Karriere in der Technik von großer Bedeutung. Die Anschaffung von Industrierobotern sowie entsprechender proprietärer Simulationssoftware ist allerdings kostspielig. Open-Source Lösungen in diesem Bereich sind hingegen oftmals sehr kompliziert und dadurch nicht gut geeignet für Lehrpersonal, welches diese im Rahmen des Unterrichts einsetzen möchte. Gleiches gilt für die entsprechenden Programmiersprachen für Industrieroboter, deren Erlernen nicht nur zeitaufwändig, sondern auch nicht standardisiert ist. Umgekehrt sind grafische Programmiersprachen eine ideale Option für ein erstes Programmiererlebnis, da sie das Programmieren ohne Syntaxfehler ermöglichen. In Verbindung mit dem oft begrenzten Budget von Bildungseinrichtungen besteht daher ein Bedarf an benutzerfreundlichen und kostengünstigen Tools zum Programmieren und Simulieren von Robotern, die für Bildungszwecke verwendet und im Unterrichtsumfeld integriert werden können.
Konzept des Projekts netRob
Im Rahmen des Projeks netRob haben wir daher ein webbasiertes Framework entwickelt, das sowohl für Anfänger als auch Fortgeschrittene geeignet ist. Es bietet die Möglichkeit, auf einfache Weise grafisch sowie textuell zu programmieren, diese Programme in einer 3D-Simulation auszuprobieren und letztendlich auch auf einem Industrieroboter auszuführen. Somit wird einerseits das Erstellen und Testen verschiedener Szenarien in dieser Software ermöglicht, ohne dass ein echter Industrieroboter erforderlich ist. Andererseits können Programme auch auf echten Industrierobotern ausgeführt werden. Zielgruppe für unser Framework sind dabei einerseits Bildungseinrichtungen, aber andererseits auch Privatpersonen, die sich dafür interessieren einen Industrieroboter zu programmieren – auch wenn sie keinen zuhause haben!
Framework für einfache Roboter-Programmierung
Die Hauptkomponente unseres Frameworks ist eine webbasierte integrierte Entwicklungsumgebung (IDE), welche aufbauend auf der von uns entwickelten Hedgehog-IDE (verfügbar unter https://ide.pria.at/) implementiert wurde. Als grafische Programmiersprache dient Blockly, das einen erweiterbaren visuellen Code-Editor bietet, um diverse Programmierkonzepte (Schleifen, Variablen, logischen Ausdrücken, etc.) einfach per Drag & Drop mittels Funktionsblöcken zu realisieren. Da man sich dabei nicht um die korrekte Syntax sorgen muss, lässt sich Blockly ideal als Werkzeug für erste Programmiererfahrungen nutzen. Um mittels Blockly einen Industrieroboter zu programmieren bedarf es entsprechender Funktionsblöcke, die wir im Rahmen unseres Projekts netRob spezifiziert haben. Es sind dies beispielsweise Bewegungsblöcke um elementare Bewegungen des Roboters über kürzeste Pfade oder entlang von Linien oder Kurven mit Ausrichtung des am Roboter montierten Werkzeugs zu ermöglichen. Werkzeugblöcke hingegen ermöglichen die Interaktion mit den verschiedenen Werkzeugen wie beispielsweise Parallelgreifern oder Sauggreifern. Nach dem Kombinieren mehrerer Funktionsblöcke zu einem Programm kann der endgültige Ausführungscode unter Verwendung des für jeden Funktionsblock definierten Quellcodes generiert werden. Zur Ausführung in der Robotersimulation im Browser wird der Code in Javascript generiert während für den Industrieroboter die sogenannte Canonical Robot Control Language (CRCL) zum Einsatz kommt.
Weitere Informationen und Finanzierung
Weitere Informationen und demnächst auch die Projektergebnisse gibt es auf unserer Projektwebsite zu finden: https://www.netidee.at/netrob
Unsere Arbeit am Projekt netRob wurde mit den Mitteln der Förderaktion netidee der Internet Privatstiftung Austria finanziell unterstützt und ermöglicht. Hierfür möchten wir uns herzlich bedanken!
Dr. Wilfried Lepuschitz ist Projektleiter des Projekts netRob und Geschäftsführer des Practical Robotics Institute Austria. Das Institut beschäftigt sich mit Robotik und Automation in Forschungs- und Bildungsprojekten.