Semeliker, A. (2019). Development of a graphical user interface for programming ROS-based robots [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2019.68185
E376 - Institut für Automatisierungs- und Regelungstechnik
-
Date (published):
2019
-
Number of Pages:
129
-
Keywords:
Roboter; GUI; Programmierung
de
Robot; GUI; programming
en
Abstract:
Das Lernen von Roboterprogrammiermethoden und das Abstrahieren der direkten, mittlerweile sehr komplexen Implementierung auf ein Level, das sehr wenig technische Expertise voraussetzt sind zwei aktuelle Diskussionsund Forschungspunkte im Robotikbereich. Im Rahmen dieser Diplomarbeit wurde eine web-basierte grafische Benutzeroberfläche - genannt Rockly - entwickelt, implemtiert und evaluiert, die Lösungsansätze dafür bieten soll und mit Hilfe derer ROS-basierte Roboter programmiert werden können. ROS ist eine Middleware und de facto das Standard-Framework in der Entwicklung von Robotik-Software. Das zweite Framework, das dem entwickeltem Tool zugrunde liegt, ist Blockly - eine von Google entwickelte Open-source JavaScript Bibliothek für Web-Applikationen, die eine grafische Programmieroberfläche sowie eine Schnittstelle bereitstellt, mit der aus ebenjener grafischen Oberfläche ein ausführbarer Code generiert werden kann. Ein Programm besteht damit lediglich aus Blöcken, die zusammengefügt werden. Durch die Verwendung dieser beiden Frameworks ist es möglich, dass Rockly, dessen Name sich aus den beiden Frameworks ableitet, auf vielen unterschiedlichen Plattformen eingesetzt werden. Es stellt drei Dienste bereit: eine Oberfläche zum Verwalten der Programmierblöcke, eine Oberfläche zum Erstellen von Programmen und eine Oberfläche zum Verwalten von erstellten Programmen. Die entwickelte Oberfläche wurde auf der HOBBIT PT2 Roboterplattform implemtiert und im Rahmen einer Evaluierungsstudie von angemessen erfahrenen Robotik Entwicklern bewertet. Auf Grundlage der Ergebnisse lässt sich zusammenfassen, dass Rockly es allen Teilnehmern ermöglichte kontinuierlicher und signifikant schnellereine Lösungen zu finden, verglichen zum herkömmlichen Programmiern, die in den meisten Fällen ausführbar und korrekt waren.
de
Teaching robot programming methods and abstracting the complex implementation to a level, where very little technical expertise is required are two key points of the field of robotics. This work presents the design, implementation and evaluation of Rockly, a web-based graphical user interface for programming ROS-based robots. Robot Operating System (ROS) is a robotics middleware and is considered as the de-facto standard framework for robot software development. The second fundamental framework used for development is Blockly - an open-source JavaScript library made by Google, which provides a visual code editor and a code generation interface for web applications. Programming then is done by simply connecting blocks. Uniting these frameworks is the one of the key features of Rockly, hence it enables users to easily deploy and run their applications on many different platforms and robots. Rockly - a portmanteau of ROS and Blockly - provides three key components: an interface to manage code blocks, an interface to create demos, and an interface to manage demos. The interface was implemented and tested on the HOBBIT PT2 robot platform as well as evaluated by moderate experienced robot developers. With respect to the results of it, it can be concluded, that Rockly enabled all partcipants to work more continuously to find a tool supported solution significantly faster than by coding, which in most cases was executable and correct.
en
Additional information:
Abweichender Titel nach Übersetzung der Verfasserin/des Verfassers