Rossum | Simulator | |
FAQ |
Papers |
API Reference(Javadoc) Downloads | Tools | Installing and Running RP1 |
|||||
Rossum's Playhouse (RP1) |
Above: A simple control panel from the Demo application included in RP1. Right: Simulated competition arena from the Trinity College Fire Fighting Home Robot Contest | |
About Rossum's Playhouse (RP1)
Rossum's Playhouse is a modest, two-dimensional robot simulation intended to aid developers implementing control and navigation logic. It allows applications to build a data-configurable robot which can interact with a simulated landscape or solve a virtual maze. The inspiration for this mobile-robot simulator was the Trinity College Fire-Fighting Home Robot Contest (see Trinity College). RP1 is primarily a tool for programmers and other developers who are writing software for robotic applications. It can also be used as a testbed for algorithms and control logic. A number of developers are currently using the simulator to test and improve competition strategies for small robots. RP1 will support either maze-solving applications or implementations where the environment in known a priori (as it is in the fire-fighting contest). The floor plan can be configured to provide far more extensive designs than the one shown above and can support any realistic scale. Both binaries and source code are available from this site (see Downloads). A key element of the mobile-robot simulator is its economy. Much of the code you develop
using RP1 can be ported directly to your robot platform. RP1's client-server
architecture enables you to work in any major programming language and environment.
Good documentation is an essential part of any software development tool. We want our users to spend their time writing software for real robots, not struggling to figure out how to operate a robot simulator. And while none of us actually likes writing documentation, we've tried to do our part by putting together the Rossum's Playhouse User's Guide (see Users060.pdf). We've also constructed API-level documentation for the RP1 classes using the Javadoc utility (see the RP1 Programmer's Reference). The User's Guide provides an overview of the RP1 mobile-robot simulator and information that will enable you to write software for simulated robot control systems. It also discusses some of the thinking that went into the design of the system and explains why certain approaches are followed. Like everything else in The Rossum Project, the User's Guide is a work-in-progress. While not complete, it is a valuable aid to developing software using RP1. We've also included some supplemental information in a hypertext document
called
Installing and Running RP1.
Rossum's Playhouse is written in Java. Now, we recognize that Java is not the language of choice for most robotics developers. That's why we've been preparing for cross-language support since the day we wrote the first line of RP1 code. Early in the project, a proof-of-concept interface was offered as a starting point for developers working in C or C++. In classic open-source form, developer James Y. Wilson took up the challenge and produced a full-feature implementation of the API that works under Windows, Windows-CE, Linux, and many Unix variants. Further RP1 development, and support for other languages, will depend on the efforts of collaborators. Anyway, Java may not be the perfect language for every kind of software development, but it's a great language for writing a robot simulator. To run RP1, you will need a copy of (at least) the Java Run-Time Environment (JRE) rev 1.2 or later. To develop code, get one of the latest releases of the Java Software Development Kit (JDK or SDK) (currently in rev 1.5). Both are available from Sun Microsystems. |
Help Wanted
We intend to develop RP1 as a collaborative effort. And, frankly, we need help. RP1, as it exists today, is the kernel of a system. It's useful now, but much still needs to be done in terms of user interface, better animation, better modeling, development utilities... basically, all those things that make a software tool pleasant to use. And we don't just need help with the simulator. We're even more interested in the kind of software tools that could go into robots: navigation logic, sensor analysis, anything that will help people building real robots. In fact, we view the simulator as merely a means to an end. The fundamental goal of the Rossum Project is not to build a simulator. It's to help developers to create smart robots. Even if you don't do software, the Rossum Project has
all sorts of opportunities to contribute: we welcome
white papers, design notes, lab reports, algorithms...
any good information that pertains to robot development.
Knowledge is our most imporant resource.
We cannot emphasize enough the need for feedback on the Rossum Project. What kind of work is neeeded? What features are important? What kind of tools are needed for robotics in general? Have you used the RP1 simulator? What have you done with it? How do you envision using it? And, by the way, have you encountered any bugs? This kind of information is crucial to determine a direction for the project. Without it, there is simply no way to know what we should do next. Got something to say? Visit the User Forums or check out our Project-Management Page. |
Questions? Comments? Write to the author gwlucas@users.sourceforge.net.
We gratefully acknowledge our web-host, Source Forge, |