As a tool for the design and verification of algorithms, we use the robot simulation USARSim.
This robot simulation has been built on top of the widely used middleware Unreal Engine which includes a high-quality graphics engine as well as a solid physics engine.
In the course of our research we designed and developed a transparent interface between the simulation environment and the SkeyeCopter software modules which are used in our quadrocopter project.
Thanks to the simulation environment we can introduce more dynamic methods of software development.
It is very suitable for experimentation and the evaluation of new concepts.
In particular algorithms for image processing can be developed and tested efficiently.
So we use it for example in the field of biologically based simultaneous localization and mapping.
Since we use the robot simulation in a GNU/Linux environment we had to find a way to extract camera images out of it. Inspired by previous approaches we modified the Simple DirectMedia Layer library (SDL) to provide a multi-threaded image server. The image server supports JPEG and PNG compression as well as caching of the encoded images.
The current version of the software is SDL-1.2.14-20100225. You can download the modified source code here.
The USARSim manual provides a more detailed description of the image server.
Another thing we had to modify was the implementation of the sonar sensor which is included in the USARSim robot simulation. Doing some experiments we could recognize that the sensor does not create a cone as it is supposed to do. Our modification does. It supports different resolutions and scan intervals.
You can download the UnrealScript source of the modified sensor here .
The modified sensor has been contributed to the USARSim project. Additionally the code has been ported to the most recent version of USARSim which is based on the Unreal Engine 3.
To support the development of an active stereo system utilizing structured light we created the model of a line laser for the USARSim robot simulation. Although the simulated sensor shows optimal characteristics the model helped us to improve our approach within a real world scenario.
The source code of the line laser has also been contributed to the USARSim project.
Drews, S., Lange, S., Protzel, P. (2010). Validating an Active Stereo System Using USARSim. Proc. of International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), Darmstadt, Germany.
Drews, S., Lange, S., Protzel, P. (2010). Creating a Distributed Development Environment for Unmanned Aerial Vehicles using USARSim. 55th International Scientific Colloquium (IWK), Ilmenau.