RoboterweltRoboterwelt
Gastbeitrag

Open Roberta – Intuitive Roboterprogrammierung in der Cloud

von Open Roberta28. April 2016
Open Roberta Logo
© Open Roberta

Mit »Open Roberta« hat das Fraunhofer-Institut für Intelligente Analyse- und Informationssysteme IAIS zusammen mit Google im November 2014 ein innovatives Technologieprojekt innerhalb der langjährigen Fraunhofer-Initiative »Roberta – Lernen mit Robotern« initiiert. 

Das Fraunhofer IAIS hat schon 2002 erkannt, dass mehr junge Menschen, vor allem junge Mädchen, für Technik und Naturwissenschaften begeistert werden müssen und hat die Initiative »Roberta – Lernen mit Robotern« ins Leben gerufen. Deutschland als Exportweltmeister von Hochtechnologie ist auf gut ausgebildete Ingenieure, Software-Entwickler und Naturwissenschaftler angewiesen – und dies nicht nur unter Männern. Mit der Roberta-Initiative haben wir seit Bestehen über 350.000 Schülerinnen und Schüler erreicht und über 1.000 Lehrkräfte zu zertifizierten Roberta-Teachern ausgebildet. Grundlage von Roberta bildet das Roberta-Konzept, das zusammen mit Partnern aus Wissenschaft, Politik und Schule im Rahmen einer Förderung durch das Bundesministerium für Bildung und Forschung (BMBF) entwickelt wurde. Kern dieses Konzepts sind gendergerechte hands-on Roboterkurse, die Mädchen und Jungen spielerisch die Lust auf Mathematik, Informatik, Naturwissenschaften und Technik (MINT) vermitteln. In Roberta-Kursen können Schülerinnen und Schüler im Team Roboter bauen und programmieren. Dafür wurden hauptsächlich das LEGO MINDSTORMS System und eine dafür vorhandene grafische und auf LabVIEW basierende Programmiersprache verwendet. Ist die Software installiert und das notwendige Know-how bei Lehrkräften vorhanden, können Schülerinnen und Schüler bereits ab der Grundschule und ohne Vorkenntnisse binnen weniger Minuten einen Roboter mit ersten Befehlen programmieren. Innerhalb der Roberta-Initiative wurde in vielen Studien der Erfolg von Roberta-Kursen belegt – siehe: https://www.open-roberta.org/learners/ 

Lessons learned

Unsere Erfahrung mit dem LEGO MINDSTORMS System hat gezeigt, dass zum einen der Einsatz der Standard-LEGO-Software für Lehrkräfte mit hohen Hürden im Schulalltag verbunden ist und zum anderen LEGO MINDSTORMS Roboter einen nicht unerheblichen Kostenfaktor für Schulen darstellen. Folgende Punkte spielen dabei eine besondere Rolle: 

  • Software-Lizenzkosten für Schulen 

  • Nicht für alle Betriebssysteme geeignet, insbesondere Linux-Systeme werden nicht unterstützt 

  • Benötigt Adminrechte zur Installation 

  • Nicht open-source 

  • Hohe Systemanforderungen 

  • Nicht für Smartphones geeignet 

  • LabVIEW ist im Bildungssektor eine exotische Programmiersprache 

  • Auf LEGO MINDSTORMS beschränkt 

Um diese Hürden abzubauen, hat Fraunhofer IAIS gemeinsam mit Google Deutschland das Projekt Open Roberta initiiert. 

Open Roberta

Schaubild: Das Open Roberta Lab in der Cloud verbindet Schülerinnen und Schüler, Roberta-Teacher, die Open-Source-Community und die Robotik-Community über NEPO
© Open Roberta

Open Roberta besteht dabei zum einen aus einer offenen, kostenfreien und plattformunabhängigen Programmierumgebung, die wir »Open Roberta Lab« nennen. Zum anderen gehört zu Open Roberta die Meta-Programmiersprache NEPO®, die es perspektivisch ermöglicht, ganz unterschiedliche Roboter-Systeme zu programmieren.
Aufgrund der hohen Verbreitung von LEGO MINDSTORMS Robotern im Roberta-Netzwerk und der langjährigen Zusammenarbeit mit LEGO Education wurde in der ersten Entwicklungsphase bei Open Roberta das LEGO MINDSTORMS EV3 System integriert. Um EV3 an das Open Roberta Lab anzubinden, haben wir die offene EV3-Firmware leJOS für Open Roberta angepasst. Zudem bietet leJOS den Vorteil, seinen MINDSTORMS Roboter via WLAN zu programmieren. 

Open Roberta Lab

Zwei Bildschirmansichten des Open Roberta Lab: links das Willkommensfenster mit Blockbeispiel, rechts ein NEPO-Programm neben dem erzeugten Java-Code
© Open Roberta

Das Open Roberta Lab ist der zentrale Anlaufpunkt im Rahmen von Open Roberta. Das Lab stellt alle Funktionalitäten zur Programmierung von Robotern zur Verfügung. Über das Open Roberta Lab können Roboter mit dem Open Roberta Server von Fraunhofer IAIS verbunden werden. Weitere Funktionalitäten des Lab sind:
– Anlegen eines Kontos: Damit Benutzer ihre Programme abspeichern oder mit anderen teilen können, kann ein Benutzerkonto angelegt werden. Schülerinnen und Schüler können somit auch von Zuhause an ihrem Programm weiter arbeiten.
– Roboter-Konfiguration: Da Roboter oftmals mit unterschiedlichen Motoren und Sensoren ausgestattet sind, muss die entsprechende Konfiguration im Open Roberta Lab hinterlegt werden.
– Anzeigen der NEPO-Programme als Java-Code: Ein wichtiger Schritt für eine nachhaltige Motivation von Kindern und Jugendlichen ist es, einen Blick »hinter« die NEPO-Blöcke werfen zu können. Deshalb bietet das Lab eine Konvertierung von NEPO zu Java und Python an.
– Weiterleitungen zum Open Roberta Wiki und FAQ-Seiten: Bei Open Roberta steht ein umfangreiches Wiki zur Verfügung, in dem alles Wissenswerte zum Lab und zu NEPO enthalten ist.
– Importieren und exportieren von NEPO-Programmen: NEPO-Programme können als XML-Dateien lokal gespeichert werden.
– Simulation von NEPO-Programmen mit Open Roberta Sim
– Mehrsprachigkeit: Durch die Open-Source-Community ist das Lab bereits in fünf verschiedenen Sprachen verfügbar. 

Open Roberta Sim

Open Roberta Sim: ein gelber 2D-Roboter in einem schwarz umrandeten Parcours mit farbigen Hindernissen
© Open Roberta

Mit der zweidimensionalen Simulationsumgebung »Open Roberta Sim« bietet das Open Roberta Lab zudem die Möglichkeit, NEPO-Programme zu testen auch wenn kein realer Roboter vorhanden ist. Die Programme werden einfach anstatt auf dem realen Roboter auf einem 2D-Roboter ausgeführt. Als Robotermodell haben wir uns bei OR-Sim für einen differential angetriebenen Roboter mit den Standardsensoren entschieden: Farb-, Berührungs-, Kreisel- und Ultraschallsensor. Zusätzlich beinhaltet der Roboter Radencoder, LED-Anzeige und für das EV3-System ein animiertes EV3-Display. 

NEPO®

NEPO-Programm aus Blöcken: Fahre vorwärts, solange der Ultraschallsensor an Port 4 mindestens 60 misst, sonst stoppen
© Open Roberta

Die Fraunhofer Meta-Programmiersprache NEPO ist an der vom Massachusetts Institute of Technology (MIT) entwickelten visuellen und kindgerechten Programmiersprache Scratch angelehnt. NEPO nutzt zudem die von Google entwickelte, frei verfügbare client-side JavaScript Bibliothek namens Blockly. Diese wurde für Open Roberta angepasst und um Funktionalitäten speziell zur Programmierung von Hardware erweitert. 

Mit NEPO können grafische Programmierblöcke einfach aneinandergefügt werden. NEPO bietet dabei unterschiedliche Einstiegsebenen für Beginner und Fortgeschrittene an. Geplant ist, diese Ebenen noch weiter zu ergänzen, um so bereits Einsteiger*innen die Möglichkeit zu geben, in nur wenigen Schritten einen Linienverfolger-Roboter zu programmieren. NEPO bietet darüber hinaus alle wichtigen Komponenten klassischer imperativer Programmiersprachen wie beispielsweise C. Ein Vorteil von NEPO sind seine offenen Schnittstellen. Diese erlauben es beispielsweise weitere NEPO-Programmblöcke zu entwickeln oder aber auch andere Roboter-Systeme anzubinden. 

Die Zukunft von Open Roberta: Helfen Sie mit, junge Menschen zu Gestaltern der digitalen Zukunft zu machen 

Obwohl Open Roberta ein noch sehr junges Projekt ist, wird es bereits in Schulen überall auf der Welt genutzt. Durch den Open-Source-Ansatz kann sich jede und jeder an der Weiterentwicklung von Open Roberta beteiligen. Geplant ist für die Zukunft vor allem die Integration anderer Roboter-Systeme wie beispielsweise fischertechnik, Bayduino, VEX oder auch Tinkerbots.
Dabei sind nicht nur Softwareentwickler*innen gefragt. Ebenso können sich auch Gestalter*innen und Pädagog*innen an der Entwicklung von Open Roberta beteiligen. Gerade hinsichtlich der geplanten Konzeption von Online-Tutorials und MOOCs ist jede Mithilfe gerne willkommen. Ziel von Roberta und Open Roberta ist es, jungen Menschen die Chance zu geben, sich von reinen Anwendern zu Gestaltern einer digitalen Zukunft zu entwickeln. Dafür benötigen wir die Mithilfe aus der gesamten Robotik-Gemeinschaft. 

Von Thorsten Leimbach und Beate Jost 

Nachtrag der Redaktion (Oktober 2026)

Das Open Roberta Lab ist weiterhin kostenlos unter lab.open-roberta.org erreichbar, der Quellcode liegt unter Apache-2.0-Lizenz auf GitHub und wird weiter gepflegt. Betreiber ist laut Impressum inzwischen die gemeinnützige Roberta Education gGmbH in München, die Andrea Herold und Marc Tobias als Ausgründung aus dem Fraunhofer IAIS gegründet haben; die alte Website roberta-home.de geht in roberta.education auf. Von den im Beitrag angekündigten Systemen ist unter anderem fischertechnik angebunden (TXT 4.0 Controller, September 2024). 

Zusammenfassung
  • Thorsten Leimbach und Beate Jost vom Fraunhofer IAIS stellen das 2014 mit Google gestartete Projekt Open Roberta vor, das aus der seit 2002 laufenden Initiative „Roberta – Lernen mit Robotern“ hervorging. 

  • Als Grund nennen sie die Hürden der LEGO-MINDSTORMS-Standardsoftware im Schulalltag, darunter Lizenzkosten, Admin-Installation, fehlende Linux- und Smartphone-Unterstützung und die Bindung an LabVIEW. 

  • Beschrieben werden das browserbasierte Open Roberta Lab mit EV3-Anbindung über eine angepasste leJOS-Firmware, der 2D-Simulator Open Roberta Sim und die an Scratch angelehnte, auf Google Blockly aufbauende Blocksprache NEPO. 

Autoren
  • Open RobertaOpen Roberta