This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Simulating Quadrotor UAVs in Outdoor ScenariosAndrew Symington, Renzo De Nardi, Simon Julier and Stephen Hailes
Abstract—Motivated by the risks and costs associated withoutdoor experiments, this paper presents a new multi-platformquadrotor simulator. The simulator implements a novel second-order dynamic model for a quadrotor, produced through evo-lutionary programming, and explained by domain knowledge.The model captures the effects of mechanics, aerodynamics,wind and rotational stabilization control on the flight platform.In addition, the simulator implements military-grade modelsfor wind and turbulence, as well as noise models for satellitenavigation, barometric altitude and orientation. The usefulnessof the simulator is shown qualitatively by a comparing howcoloured and white position noise affect the performance ofoffline, range-only SLAM. The simulator is intended to beused for planning experiments, or for stress-testing applicationperformance over a wide range of operating conditions.
Index Terms—Unmanned Aerial Systems, Simulation
I. INTRODUCTION
Unmanned aerial vehicles (UAVs) have received significant
research attention as a result of the numerous military and
civilian applications that they enable. Quadrotors have proven
themselves as favourable platforms for research, since they
are inexpensive, easy to fly, agile and safe to operate [1].
Conducting outdoor experiments with quadrotors requires
ideal weather conditions and compliance with local aviation
regulations, uses significant resources, and puts platforms at
risk. It is therefore preferable to evaluate scenarios in sim-
ulation prior to experimentation, where possible. However,
the suitability of such an approach depends largely on the
fidelity of the simulator. The work in this paper is therefore
motivated by the need for a quadrotor simulator that (i)
enables multiple platforms to be simulated at the application
level, (ii) provides realistic models for dynamics, wind and
sensor noise, and (iii) balances accuracy with speed, thereby
enabling real-time, or near real-time, performance.
A great number of simulators exist as tools to for training
radio control enthusiasts, but not as platforms for research.
Research simulators based on first principles have been devel-
oped for USARSim [2] and Gazebo [3]. Both capture the be-
haviour of an ideal platform’s mechanics and aerodynamics,
but not of the low-level controller used to perform rotational
stabilization control. The design of the stabilization control
algorithm is usually proprietary, and therefore cannot be
modelled by first principles. Although effort has been made
to investigate the effect of wind and turbulence on quadrotor
dynamics [4], such research remains to be integrated into the
widely-used simulators. More recent simulators are based on
the Robotic Operating System (ROS) and include SwarmSim
X [5] and Hector Quadrotor [6], which use a PhysX and
Figure 1. A screen shot of a QRSim search and rescue simulation.
Gazebo as simulation cores respectively. The contribution of
this work is the open-source1 QRSIM simulator depicted in
Fig. 1 that distinguishes itself by:
1) A general second-order dynamic model that captures
the behaviour of mechanics, aerodynamics, wind and
stabilization control. The model is derived from flight
data using the co-evolutionary programming method,
with model parameters fitted to a specific platform.
2) Models for environment and sensor noise, including a
military-grade model for turbulence that is validated
against a third-party implementation, and a satellite
navigation model that is validated against raw data.
3) Implemented as self-contained Matlab code that is
controllable over a TCP/IP interface, with the goal of
being a modular and extensible tool for research.
The remainder of this paper is structured as follows. Sec.
II discusses the dynamic model used in the simulator, and
shows how model parameters were obtained for a specific
flight platform. Sec. III then describes the environmental and
sensor noise models, as well as how they were validated. Sec.
IV then provides a qualitative illustration of the usefulness of
the simulator by comparing the effect of white and coloured
sensor noise on offline, range-only simultaneous localization
and mapping (SLAM) for a single platform. Sec. V concludes
the paper, and discusses directions for future work.
II. QUADROTOR DYNAMICS AND CONTROL
A flight control system (FCS) performs sensing to deter-
mine orientation or position, and then selects corrective motor
changes to stabilize the platform [1]. Orientation is usually
1Source code is available at https://github.com/UCL-CompLACS/qrsim
2014 IEEE/RSJ International Conference onIntelligent Robots and Systems (IROS 2014)September 14-18, 2014, Chicago, IL, USA
Figure 2. The state of a quadrotor comprises of a position [x, y, z], Eulerorientation [c/J, B, 7jJ] , velocity [u,v, w] and angular velocity [p, q,r].
Figure 3. The static experimental set up (left) was used to obtain data forcalibrating the thrust model, while the dynamic experimental setup (right)was used to obtain data for calibrating the rotation and translation models.
1) Thrust: The relationship between throttle and thrustforce FT is shown as Eqn 4, and agrees with results inthe literature stating proportionality to the square of bladespeed [15], [13]. However, as Eqn 5 shows, this forcecannot exceed a maximum amount FM supported by thebattery. CthO, Cth1, Cth2, CtbO and Ctb1 are platformspecific constants. For the sake of notational convenience,the difference between the current and old thrust force isdenoted F D = min (FT, F M) - Fth.
B. Second-Order Dynamic Model
Let X, = [x,y,z,¢,B,'if;,u,v,w,p,q,r,Fth]T denote thestate of the platform at time t, where F th is the thrust force,and the first four element triples correspond to position, Eulerorientation, velocity and angular velocity. Control is acceptedas the vector Ilt = [Upt; Uri; Uth; Uya; Vb], comprising ofdesired pitch Upt and roll Uri angles, throttle Uth, yaw angularvelocity u ya and current battery voltage Vb.
The platform dynamics are captured by a Markovianprocess X = f(X, Il), which propagates the state forward intime using the control vector and state. The state update istherefore separable into the thrust, rotational and translationalupdate equations, shown in Eqn 1-3. Note that the positionand angle update equations are simply velocity and angularvelocity, rotated into the navigation frame and integrated withrespect to time, and so are not explicitly listed.
CthO+ Cth1Uth + Cth2UZh
c.: + CVb1Vb
(4)
(5)
(1)
(2)
(3)
fthr (X, Il)
frat (X, Il)
ftra (X, Il)
Fth
[p,q,r]T[ ' , ']Tu,v,w
The fundamental idea behind co-evolutionary programming is to iteratively refine a set of proposal functions basedon fitness. Each proposal is modelled by an algebraic tree,where the inner nodes represent one of four mathematicaloperators {+, -, x ,~} and the leaf nodes represent either theinput variables or constant parameters. The reader is referredto De Nardi and Holland [14] for further details.
An Acscending Technologies Hummingbird quadrotor wasflown indoors and fitted with reflective markers, so thata motion capture system was able to track its state withmillimeter precision. Co-evolutionary programming was thenused to find the dynamic equations describing the relationshipbetween the input control (roll, pitch, yaw rate, throttle)and state. These equations include a number of constantparameters, which are unique to a platform. Non-linear leastsquares optimization was then used to fit these constantparameters to the Ascending Technologies Pelican shown inFig. 2 using data from the experiments shown in Fig. 3.
corrected up to 1kHz, whereas positron can be controlledat a much lower rate. Closing the position control loophowever requires measurements to external reference points.Indoor experiments use motion capture systems to providemillimeter-accuracy positioning [7], enabling the evaluationof complex platform [8] and team [9] maneuvers. For outdoorexperiments this is not currently possible; GPS waypoints arefused with barometric altitude [10] to provide corrections.
A number of first order dynamic models for quadrotorsexist in the literature [11], [12], [13], which only capturethe effects of mechanics and aerodynamics. Closing the gapbetween simulation and experimentation requires a modellearned from flight data that captures the behaviour of proprietary stabilization control algorithms.
A. Co-evolutionary Programming Approach
Figure 4. Proof of match between measured (black), simulated (red) andresidual (blue) thrust over a 40 second period, for the same throttle controlinput.
For small absolute (less than a threshold umin) or relative
Figure 9. Results of Gaussian (red) and coloured (blue) SLAM experiments.
V. CONCLUSION AND FUTURE WORK
This paper presents a quadrotor simulator featuring a
generic dynamic model and comprehensive environment and
sensor error models, implemented as a standalone MATLAB
toolbox. The usefulness of the simulator is demonstrated
through an experimental analysis of the effect of coloured
GPS noise on offline, range-only SLAM. The simulator
has several drawbacks, which are currently being addressed.
Firstly, the performance of the visualisation engine degrades
as more platforms are added. Secondly, the simulator is
currently restricted to quadrotor platforms, and the inclusion
other vehicles would be beneficial. These issues will be
resolved by moving to a ROS/Gazebo environment.
REFERENCES
[1] R. Mahony, V. Kumar, and P. Corke, “Multirotor aerial vehicles:Modeling, estimation, and control of quadrotor,” IEEE Robotics &
Automation Magazine, pp. 20–32, Sept. 2012.[2] A. Visser and N. Dijkshoorn, “Closing the gap between simulation and
reality in the sensor and motion models of an autonomous AR. Drone,”in Proceedings of the International Micro Air Vehicle Conference and
Flight Competition (IMAV11), (’t Harde, the Netherlands), 2011.
Figure 10. Position Allan Deviation for both SLAM experiments.
[3] N. Koenig and a. Howard, “Design and use paradigms for gazebo,an open-source multi-robot simulator,” 2004 IEEE/RSJ International
Conference on Intelligent Robots and Systems (IROS) (IEEE Cat.
No.04CH37566), vol. 3, pp. 2149–2154, 2004.[4] S. L. Waslander and C. Wang, “Wind Disturbance Estimation and Re-
jection for Quadrotor Position Control,” in AIAA Infotech@Aerospace
and Unmanned Unlimited Conference, (Seattle, WA), Apr. 2009.[5] J. Lächele, A. Franchi, H. H. Bülthoff, and P. Robuffo Giordano,
Simulation, Modeling, and Programming for Autonomous Robots,vol. 7628 of Lecture Notes in Computer Science. Berlin, Heidelberg:Springer Berlin Heidelberg, Nov. 2012.
[6] J. Meyer, A. Sendobry, S. Kohlbrecher, and U. Klingauf, “Comprehen-sive Simulation of Quadrotor UAVs Using ROS and Gazebo,” Lecture
Notes in Computer Science, vol. 7628, pp. 400–411, 2012.[7] B. Y. N. Michael, D. Mellinger, Q. Lindsey, and V. Kumar, “Exper-
imental Evaluation of Multirobot Aerial Control Algorithms,” IEEE
Robotics & Automation Magazine, pp. 56–65, Sept. 2010.[8] M. Muller, S. Lupashin, and R. D’Andrea, “Quadrocopter ball jug-
gling,” 2011 IEEE/RSJ International Conference on Intelligent Robots
and Systems, pp. 5113–5120, Sept. 2011.[9] A. Kushleyev, D. Mellinger, C. Powers, and V. Kumar, “Towards
a swarm of agile micro quadrotors,” Autonomous Robots, vol. 35,pp. 287–300, July 2013.
[10] J. Seo, J. G. Lee, and C. G. Park, “Bias suppression of GPS measure-ment in inertial navigation system vertical channel,” in Proceedings of
the Position Location and Navigation Symposium, 2004. PLANS 2004,pp. 143–147, Apr. 2004.
[11] S. Bouabdallah, Design and control of quadrotors with application to
autonomous flying. PhD thesis, EPFL, 2007.[12] C. Balas, “Modelling and Linear Control of a Quadrotor,” Master’s
thesis, School of Engineering, Cranfield University, 2007.[13] G. M. Hoffmann, H. Huang, S. L. Waslander, and C. J. Tomlin,
“Quadrotor Helicopter Flight Dynamics and Control: Theory andExperiment,” in Proceedings of the AIAA Guidance, Navigation and
Control Conference (GNC), 2007.[14] R. De Nardi and O. Holland, “Coevolutionary modelling of a miniature
rotorcraft,” in 10th International Conference on Intelligent Autonomous
Systems (IAS10), (Baden Baden, Germany), pp. 364 – 373, 2008.[15] R. De Nardi, Automatic Design of Controllers for Miniature Vehicles
through Automatic Modelling. PhD thesis, University of Essex, 2010.[16] P.-J. Bristeau, P. Martin, E. Salaün, and N. Petit, “The Role of Propeller
Aerodynamics in the Model of a Quadrotor UAV,” in European Control
Conference 2009, pp. 683–688, Aug. 2009.[17] “Military Spec., Flying Qualities of Piloted Airplanes.” MIL-F-8785C.[18] S. Gage, “Creating a Unified Graphical Wind Turbulence Model