Stage - a robot simulator plugin for Player
Stage is a robot simulator that works with the Player robot server. It provides a virtual world populated by mobile robots and sensors, along with various objects for the robots to sense and manipulate.
Design
Stage robots and sensors work like any other Player device: users write robot controllers and sensor algorithms as `clients' to the Player `server'. Typically, clients cannot tell the difference between the real robot devices and their simulated Stage equivalents (unless they try very hard). We have found that robot controllers developed as Player clients controlling Stage robots will work with little or no modification with the real robots and vice versa [1]. With a little care, the same binary program can often control Stage robots and real robots without even being recompiled [2]. Thus the Player/Stage system allows rapid prototyping of controllers destined for real robots. Stage can also be very useful by simulating populations of realistic robot devices you don't happen to own [3].
Stage was designed with multi-agent systems in mind, so it provides fairly simple, computationally cheap models of lots of devices rather than attempting to emulate any device with great fidelity. This design is intended to be useful compromise between conventional high-fidelity robot simulations, the minimal simulations described by Jakobi [4], and the grid-world simulations common in artificial life research [5]. We intend Stage to be just realistic enough to enable users to move controllers between Stage robots and real robots, while still being fast enough to simulate large populations. We also intend Stage to be comprehensible to undergraduate students, yet sophisticated enough for professional reseachers.
Player also contains several useful 'virtual devices'; including some sensor pre-processing or sensor-integration algorithms. These were tricky to use with previous versions of Stage, but this release makes it simple to take full advantage of Player.
Models
Stage provides several sensor and actuator models, including sonar or infrared rangers, scanning laser rangefinder, color-blob tracking, fiducial tracking and mobile robot bases with odometry.
Note: Some models from previous versions may not yet be available in this release (e.g. gripper & puck), but we're working on them. Let us know which ones you need.
Richard Vaughan
(vaughan@sfu.ca)
$Id: help.txt,v 1.9 2005/02/13 07:37:42 rtv Exp $