Supriya Ghosh (Editor)

Open Roberta

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Typing discipline
  
dynamic

Open Roberta

Paradigm
  
event-driven, imperative

Designed by
  
Beate Jost, Reihard Budde, Thorsten Leimbach, Achim Kapusta

Developer
  
Fraunhofer IAIS, Media Engineering Department

First appeared
  
2013; 4 years ago (2013) (test) 2014; 3 years ago (2014) (official)

Stable release
  
2.0 / October 11, 2016; 5 months ago (2016-10-11)

Open Roberta is the name of a project within the German education initiative "Roberta—Learning with robots", initiated by Fraunhofer IAIS, which is an institute belonging to the Fraunhofer Society. With Open Roberta Fraunhofer IAIS is looking to encourage kids to code by using Lego Mindstorms, a programmable robotics platform. The Cloud-approach of the Open Roberta Lab makes programming easier and minimizes the hurdles for teachers and schools to teach how to code. Open Roberta is free and does not require any installation. The project was initially founded with $1Mio by Google.org

Contents

Open Roberta Lab

Open Roberta Lab is cloud-based programming environment and is the user-facing middleware in a chain of software and firmware bits that make a robot work in a classroom environment. This environment allows children and young people with no technical pre-knowledge to program a LEGO MINDSTORMS EV3 and NXT robot, as well as the Arduino based robot Bot'n Roll ONE A, the BBC micro:bit, and the Calliope mini. There is a variety of different program blocks available to program the motors, sensors, and the EV3 brick. Open Roberta Lab uses the approach of visual programming. This approach makes it easier - especially for beginners with no experience - to learn how to code. As a cloud based programming environment no installation is needed, any operation system and computer hardware device may be used. The big advantage of Open Roberta Lab is, that it can be used with any device (PC, tablet, smartphone) and with any operating system (Mac OS, Windows, Linux). Only a web browser is needed. The Lab can be used without registration. No user account is needed.

Open Source Community

The programming platform Open Roberta Lab is open source developed. Both the software as well as the open source development tools are available on a server of Fraunhofer Society. The development team at Fraunhofer works together with teachers and education experts from the Roberta network. Therefore, also universities and students are involved in the development. It should address especially female students - the guiding principle of the Roberta project.

Programming language NEPO®

NEPO is a free open source meta programming language that can be used by students, scholars, teachers, and other interested persons within the Open Roberta Lab. NEPO translates to New Easy Programming Online (or simply OPEN read backwards). NEPO is how we call our graphical programming language and its coupled hardware connection layer. NEPO uses the freely available Blockly library. In addition within NEPO there are additional functionalities and improvements have been adapted for Open Roberta. The programming paradigm of NEPO is inspired by Scratch from Massachusetts Institute of Technology. A NEPO block always represents and encapsulates a certain robot functionality. A blocks feature set can easily be recognized through the associated block category, for example »sensors«. Programming with NEPO follows a simple principle. The blocks are interconnected and will be executed by the robot according to their order. This principle is called »sequential operation«.

NEPO block categories

All available blocks are listed and categorized as the Action, Sensors, Control, Logic, Math, Text, Colours, Variables, Functions, and Massages as shown in the table below.

NEPO input / output connector

Depending on the block different values can be passed to a block. The type of the value can be identified by the colored compounds (called including »connectors«) of a block. In the chapter »block category« you can see the different values a block may have. Only if the colors of the input and the output connector match, these blocks can be connected.

A block may optionally also pass a value (only one!) to another block. These blocks have colored output connectors. Only if the colors of the input and the output connector are the same, these blocks can be connected.

In total there are six input and output types within NEPO. These types can have the following values:

  • Logical value (light blue)
  • Number (dark Blue)
  • String / Text (green)
  • Colour (yellow)
  • List (purple)
  • Connection (pink)
  • Simulation environment

    Since version beta 1.3.0 the Open Roberta Lab also offers a simulation environment. This is a simulation of a two-dimensional robot model equipped with two wheels (differential drive). To program the simulated robot also the programming language NEPO may be used. The simulated 2D model includes the simulation of an ultrasonic sensor, a touch sensor, a color sensor and the display of an LED. In addition, different environments can be chosen. Since version beta 1.4.0 NEPO blocks can used without any changes for the 2D-Simulation and the real robot.

    History

    Open Roberta is a technological extension of the "Roberta concept". Roberta (short for: "Roberta - Learning with robots") is a Fraunhofer education initiative founded in 2002 by the Germany Ministry of Education and Research. Since 2002 more than 350.000 students participated in Roberta courses.

    Awards

    Open Roberta won the award "Bundessieger 2015" at the challenge "Germany Land of Ideas" in the category education. Open Roberta won the bitkom award d-elina in the category professional.

    References

    Open Roberta Wikipedia