The QRSim Quadrotors Simulator
Examples of quadrotor helicopters models described in the literature (e.g. [1],[2],[3]) tend to focus on reproducing only the dynamic aspects the aerial platform and their primary use is in the domain of closed loop flight control.
When the aim is to simulate more general higher level tasks that involve multiple platforms which sense and react in their environment, the usefulness of such models is limited.
The QRSim multi-vehicle software simulator is developed to devise and test algorithm that allow a set of UAVs to communicate and cooperate to achieve common goals. In addition to realistically simulate the dynamic of the aerial platform (learned from flight tests), the software simulates the sensors suite that typically equips a UAV (i.e. GPS, IMU, camera) and the endogenous and exogenous sources of inaccuracies that characterize both platforms and sensors. Environmental effects that act directly (e.g. wind) or indirectly (e.g. the plume dispersion) the task are also part of the simulation.
To offer a well structured and challenging set of control and machine learning problems the simulator also includes the implementation of a number of well defined non trivial task scenarios. Namely these are a pursue evasion game, a plume mapping application in presence of wind, and a search and rescue mission that uses the simulated on-board camera.
Videos
The following two videos give a glimpse of some of the QRSim capabilities:
Documentation
The best way to have an understanding of how the QRSim software is structured and of what platforms, sensors and scenarios models are implemented is to read the following documentation:
The documentation of the QRSim API can be accessed through the standard Matlab documentation system (i.e. using the Matlab command doc
)
Citing
If you use this software in an academic context, please cite the following publication:
- Renzo De Nardi, The QRSim Quadrotors Simulator Research Note RN/13/08, Department of Computer Science University College London, March 2013. [bibtex]
License
With the exception of the libraries in the 3rdparty
folder which are covered by their respective licenses, the QRSim software can be redistributed in accordance with the [Modified BSD License] (LICENSE).
Support
Due to lack of time we are currently unable to provide direct support for the software, however we will do our best to address any problem reported via the GitHub issue system.
Acknowledgments
The author wants to thank Guy Lever, Nicolas Hees, Simon Julier, John Showe-Taylor, David Silver, Stephen Hailes and Luke Teacy for the fruitful discussing about the application scenarios and the classifier model. This work was carried out with the support of the European Research Council #FP7-ICT-270327 (CompLACS).
References
1. S. Bouabdallah. Design and control of quadrotors with application to autonomous flying. PhD thesis, EPFL, 2007
2. C. Balas. Modelling and linear control of a quadrotor. Master's thesis, School of Engineering, Cranfield University, 2007.
3. P. Pounds, R. Mahony, and P. Corke. Modelling and control of a quad-rotor robot. In ACRA, 2006.