Robotprojekter 2006: Player Stage

From ImageWiki

Jump to: navigation, search

This project is done by Bue and Jonas as part of the course Robotprojekter 2006.


Project Description

(imageWiki version)

The goal of this project is first and foremost to write a driver for The Scorpion robots enabling them to be used with the Player/Stage/Gazebo framework. Player/Stage is used on many universities and has several advantages, such as allowing agents to run in either a simulator or using real robots without modification.

The creation of a driver for the robots will benefit future robot courses at DIKU by making it possible to share Player/Stage plugins with other universities. To help future courses a tutorial describing how to use the Player/Stage framework on the robots should be written.

The driver will be layered on top of the ERSP library. Regarding this decision, a discussion of the choice of implementation level is relevant, e.g. pros and cons of interfacing with a high-level library and the use of "black-box" libraries. Since only a limited driver implementation supporting mainly basic features of the robots is realistic, a secondary goal is to document the process of developing a driver - possibly with caveats regarding the interfacing with ERSP - to help the development of future extensions.

The ERSP interface contains several high-level components. It would be relevant to consider whether some of these components can and should be exported as virtual Player devices. Additionally, it may also be relevant to discuss integration with various features that are specific to the imagelab at DIKU, such as the camera in the ceiling, which could also be interfaced using virtual devices.

See the Results section below for a link to our official project description.



We will be using the SVN repository at Imagelab at DIKU. The repository can be browsed online at:

We have checked-in the following modules:

Related Work

There already exists a Player driver for the ER1 and ERSDK robot platforms offered by the same company that makes the Scorpion robots. It is developed by David Feil-Seifer, who also maintains a small homepage for the driver where a few tarballs are available containing a driver for the Linux kernel version 2.6.1 based on the FTDI USB driver. The homepage claims that the driver also works for the Scorpion robots. The Player driver has been updates to Player v2.0 and supports the position2d interface as er1_position. It takes the low-level approach and operates the robot using serial communication over the USB link. Code has been integrated into the Player/Stage CVS repository under the path /code/player/server/drivers/mixed/evolution/ in the playerstage module.

Reading List

We plan to read the following articles:

The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems
(About:) Describes the Player/Stage project in terms of the software that is being developed, especially Stage, and how it supports the research in the field of robotics, such as facilitating experiments with devices that does not yet exist. It also addresses some of the challenges in designing a flexible and scalable framework that is able to model a wide variety of different systems, e.g. distributed-robot and sensor network systems.
Player 2.0: Toward a Practical Robot Programming Framework (Pulication list) (Also available here)
(About:) An introduction to the new major update to Player. It describes the basic project and design goals and a motivation for some the changes, such as reducing bugs related to data serialization when sending messages over the network. Additionally, it gives an overview of the new Player library architecture. Lastly, the paper provides an example driver.
A Player/Stage System for Context-Aware Intelligent Environments
(About:) The paper discusses the application of Player/Stage/Gazebo as suitable middleware for ubiquitous computing, more specifically in the sensor-enabled AwareKitchen environment. The system includes the use of sensor network motes and RFID for data collection and data aggregation in the form of Player drivers implementing advanced processing and learning algorithms.
Really Resusable Robot Code and the Player/Stage Project (Publication list)
(About:) -
Player/Stage as Middleware for Ubiquitous Computing (pulication site )
Abstract: We propose Player/Stage, a well-known platform widely used in robotics, as middleware for ubiquitous computing. Player/Stage provides uniform interfaces to sensors and actuators and allows the computational matching of input and output. Player/Stage exactly addresses the issues of dealing with heterogeneous hardware but currently only with a focus towards robotics. We show how to integrate ubiquitous computing platforms into Player/Stage and propose Player/Stage as middleware for ubiquitous computing projects.
Most Valuable Player A Robot Device Server for Distributed Control (Also available here)
(About:) -

References and Resources

Personal tools