Biorobotics Laboratory BioRob

Lukas Hohl (Winter Semester Project 2003/2004): Wireless Remote Control and Monitoring of an Aibo Robot

Aibo is a four-legged robotic dog produced by Sony. Despite the fact that it is principally sold as an entertainment robot system, it has powerful capabilities such as wireless network communication, a wide range of input and output devices such as speaker and microphone, color camera, distance sensor, acceleration sensors, various touch sensors, LEDs and of course controllable joints.

What makes the robot even more interesting, is the possibility to write custom programs for Aibo. The binary files are put onto a Memory Stick which is plugged into Aibo. For software development, Sony provides the OPEN-R SDK and a very complete documentation including sample programs.

The goal of the project was a standalone computer program that enables controlling and monitoring of an Aibo ERS-210(A) over a wireless network connection. This would allow the user to analyze the behavior of a real robot in comparison to a simulated Aibo. For this reason, a later integration into the Webots software was already planned at the beginning of the project. The remote control software provides detailed control of all joints and has the capability to load files containing predefined movements (MTN files) onto Aibo and to play them back while observing the evolution of the real joint angles.

The Remote Control System is distributed on two hosts: An Aibo ERS-210(A) equipped with an ERA-201-D1 wireless LAN card and a PC with an IEEE 802.11b compliant wireless LAN card. Aibo runs a special OPEN-R software developed as one part of the project. The "Aibo Remote Control" software, which is the second part of the project, runs on the PC and establishes a wireless TCP/IP connection with its counterpart on Aibo. Aibo and the workstation exchange messages defined in the Communication Protocol. The protocol is the third achievement of the project.

Lukas Hohl (Summer Semester Project 2004): Aibo Simulation in Webots and Controller Transfer to Aibo Robot

One goal of the project was the integration of the standalone computer program (see above) into the Webots mobile robotics simulation software. A functionality similar to the Remote Control System was desired for a simulated Aibo in Webots. One should be able to control the real robot from Webots, to control the simulation using the same interface and to give commands both to Aibo and its model in parallel. The commands would not only be given manually through the user interface, but also by Webots controller programs running on the client computer. An important aspect of the problem is the construction of a physical model of Aibo. The integration into Webots would allow the user to analyze the behavior of a real robot in comparison to a simulated Aibo.

The second goal of the project was the cross-compilation of Webots controller programs for Aibo. This would allow the user to program the robot not only by the means of a Webots controller running on the commanding computer, but also to compile the controller into a binary format that is directly interpretable by Aibo. The robot could then operate independently by executing the program on its Memory Stick and without receiving commands over the wireless network connection.

In the modified Webots software, there are two things that can be controlled by Webots, namely a "real" Aibo ERS-210(A) equipped with an ERA-201-D1 wireless LAN card and its physical simulation in Webots. Commands to either the real or simulated Aibo can be given trough a graphical interface (red arrows on the figure) or by a controller program which uses Webot's controller programming interface (purple arrows on the figure). A third mode exist for real robot commanding: The cross-compilation of Webots controller programs for direct execution on Aibo's MIPS processor (green arrow on the figure). This mode works independently of Webots. A graphical interface for the uploading of binary files is provided, but the files can also be transfered by other means, e.g. a Memory Stick Reader. The three main applictions resulting from the extension of Webots are thus: Simulation controlled by graphical interface and controller, real Aibo controlled by graphical interface and controller, cross-compilation. The three possibilities correspond to the black arrows on the figure.