aerodynamics and control of quadrotors · aerodynamics and control of quadrotors moses bangura a...

215
Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of DOCTOR OF PHILOSOPHY The Australian National University February 2017

Upload: vukhanh

Post on 20-Aug-2018

235 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Aerodynamics and Control ofQuadrotors

Moses Bangura

A thesis submitted for the degree ofDOCTOR OF PHILOSOPHY

The Australian National University

February 2017

Page 2: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

c© Moses Bangura 2017

Page 3: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Except where otherwise indicated, this thesis is my own original work.

Moses Bangura11 February 2017

Page 4: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have
Page 5: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

To those who did not have the opportunities that life offered me, may this be atestament to what you could have achieved if you had similar opportunities.

Page 6: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have
Page 7: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Acknowledgments

Wernher von Braun once said “Research is what I’m doing when I don’t know whatI am doing”. For the past four years, without the technical, theoretical and academicguidance of my supervisor, I would not have known what I was doing. For thisreason, I am grateful to Robert Mahony. Furthermore, our fruitful discussions haveincreased my argumentative skills which are not only useful in academia but in myeveryday life. I am also grateful to him for giving me the opportunity to work withhim.

A special thank you to my thesis committee members, Changbin (Brad) Yu andJochen Trumpf. A huge thanks to Jochen Trumpf, Tarek Hamel and Guillaume Allib-ert for verifying and giving me directions on many of the stability proofs containedin the thesis. Further thanks go to the thesis review committee for the fruitful com-ments which led to further improvements of the manuscript.

To the many people I was privilleged to work with across three continents (Aus-tralasia, Asia and Europe), thank you. More so my fellow PhD students, JuanDavid Adarve, Xiaolei (Eric) Hou, Evan Slatyer, Geoff Stacey and Alireza Khosra-vian. Thank you for never giving up on clarifying many of my programming, LinearAlgebra and hardware doubts.

A big thank you to Alex Martin for answering to all of my not so sensible techni-cal questions. Today, I am a better engineer than I was four years ago owing greatlyto his help. To the IT guys, Ameer, Andrew and Lincoln, thank you for helping meinstall the different required software as well as giving me root and admin privillegeson my computer. To the people in the engineering workshop especially Ben Nash,David Tyson-Smith, thanks to them for their help on cutting and welding of vari-ous components. Thank you also for providing me with imperial components andtools that were only available in the engineering workshop. A special thanks alsoto my good friend, Bruce Condor for giving me some of his tools and mechanicalcomponents when we had run out of them in our laboratory.

Finally, I must thank my family for their unyielding support and sacrifices inmaking me what I have become. To them I am forever indebted.

vii

Page 8: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have
Page 9: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Abstract

Quadrotors are aerial vehicles with a four motor-rotor assembly for generating liftand controllability. Their light weight, ease of design and simple dynamics haveincreased their use in aerial robotics research. There are many quadrotors that arecommercially available or under development. Commercial off-the-shelf quadrotorsusually lack the ability to be reprogrammed and are unsuitable for use as researchplatforms. The open-source code developed in this thesis differs from other open-source systems by focusing on the key performance road blocks in implementinghigh performance experimental quadrotor platforms for research: motor-rotor con-trol for thrust regulation, velocity and attitude estimation, and control for positionregulation and trajectory tracking. In all three of these fundamental subsystems, codesub modules for implementation on commonly available hardware are provided. Inaddition, the thesis provides guidance on scoping and commissioning open-sourcehardware components to build a custom quadrotor. A key contribution of the thesisis then a design methodology for the development of experimental quadrotor plat-forms from open-source or commercial off-the-shelf software and hardware compo-nents that have active community support. Quadrotors built following the method-ology allows the user access to the operation of the subsystems and, in particular, theuser can tune the gains of the observers and controllers in order to push the overallsystem to its performance limits. This enables the quadrotor framework to be usedfor a variety of applications such as heavy lifting and high performance aggressivemanoeuvres by both the hobby and academic communities. To address the ques-tion of thrust control, momentum and blade element theories are used to developaerodynamic models for rotor blades specific to quadrotors. With the aerodynamicmodels, a novel thrust estimation and control scheme that improves on existing RPM(revolutions per minute) control of rotors is proposed. The approach taken uses themeasured electrical power into the rotors compensating for electrical loses, to esti-mate changing aerodynamic conditions around a rotor as well as the aerodynamicthrust force. The resulting control algorithms are implemented in real-time on theembedded electronic speed controller (ESC) hardware. Using the estimates of theaerodynamic conditions around the rotor at this level improves the dynamic responseto gust as the low-level thrust control is the fastest dynamic level on the vehicle. Theaerodynamic estimation scheme enables the vehicle to react almost instantaneouslyto aerodynamic changes in the environment without affecting the overall dynamicperformance of the vehicle.

To quantify the resulting improvements in maintaining a desired thrust setpointusing the proposed thrust modelling and control scheme over current state-of-the-art rotor speed control, static and dynamic flight tests are carried out in downdraftsand updrafts of varying strengths. In the static tests, the new scheme is able to

ix

Page 10: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

x

determine the changes in axial gust thereby changing the speed of the rotor to main-tain the desired thrust setpoint. The dynamic flight test is demonstrated by a pathtracking experiment where a quadrotor is flown through an artificial wind gust andthe trajectory tracking error measured. The proposed approach for thrust controldemonstrably reduced tracking errors compared to the classical RPM rotor control.

Non-linear dynamic models for the drag forces on individual rotors of a quadro-tor are examined and a combined or lumped drag force model is derived. Combiningthis drag force model with measurements from the strapdown inertial measurementunit (IMU) and a complementary filter that uses barometer height estimates, the fullbody-fixed frame velocity measurements are obtained. Adding measurements froman inertial navigation system and a magnetometer, a coupled non-linear comple-mentary filter in both the body-fixed and inertial frames is proposed. The resultingobserver is a velocity aided attitude observer that provides estimates of both linearvelocities in inertial and body-fixed frames and attitude of the vehicle. The observeris robust to GPS dropouts and can be used in indoor environments without an indoornavigation system such as Vicon motion capture system.

A hierarchical control structure for quadrotors is proposed with high-level posi-tion/trajectory tracking control and velocity control, mid-level attitude control andlow-level motor thrust control based on the time scale separation of each dynamicsublevel. The attitude error dynamics under the proposed attitude control law areshown to be non-autonomous. Using passivity based Lyapunov analysis and show-ing that the linear dynamics are uniformly completely observable (UCO), the attitudedynamics are shown to be locally exponentially stable. Under the proposed posi-tion/trajectory control law, the error dynamics form a block diagonal matrix witheigenvalues in the left half plane. Hence, the proposed position/trajectory track-ing controller is locally exponentially stable. The proposed velocity controller whichuses the estimated velocity is also shown to be asymptotically stable and its lineardynamics are uniformly completely observable. Hence by the notion of input-to-state stability, the quadrotor is exponentially stable under the proposed control laws.The dynamic properties (acceleration, jerk and snap) of the vehicle are used to alge-braically determine feedforward terms (angular velocity and acceleration) which areused in the mid-level attitude controller to enable precise trajectory tracking.

Page 11: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Contents

Acknowledgments vii

Abstract ix

1 Introduction 11.1 Motivations and Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.4 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Literature Review 72.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2 Quadrotor Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2.1 Commercial quadrotors . . . . . . . . . . . . . . . . . . . . . . . . 82.2.1.1 Aeryon scout . . . . . . . . . . . . . . . . . . . . . . . . . 92.2.1.2 Microdrones md4-1000 . . . . . . . . . . . . . . . . . . . 92.2.1.3 Quanser Qball . . . . . . . . . . . . . . . . . . . . . . . . 92.2.1.4 Parrot AR. Drone 2.0 . . . . . . . . . . . . . . . . . . . . 102.2.1.5 DJI Phantom 3 . . . . . . . . . . . . . . . . . . . . . . . . 102.2.1.6 AscTec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2.1.7 Mikrokopter . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2.2 Open-source and university developed quadrotors . . . . . . . . 112.2.2.1 STARMAC X4 . . . . . . . . . . . . . . . . . . . . . . . . 122.2.2.2 ANU X4-Flyer . . . . . . . . . . . . . . . . . . . . . . . . 122.2.2.3 Arduino and ATmega based . . . . . . . . . . . . . . . . 132.2.2.4 Mikrokopter based . . . . . . . . . . . . . . . . . . . . . 132.2.2.5 STM32 based . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3 Avionics Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.3.0.1 ATmega based . . . . . . . . . . . . . . . . . . . . . . . . 142.3.0.2 Paparazzi . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.3.0.3 AutoQuad . . . . . . . . . . . . . . . . . . . . . . . . . . 152.3.0.4 PX4 and Pixhawk . . . . . . . . . . . . . . . . . . . . . . 15

2.4 Motor-Rotor Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.4.1 Theory of BLDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.4.2 BLDC motors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.4.3 Electronic speed controllers . . . . . . . . . . . . . . . . . . . . . . 222.4.4 Sensors on electronic speed controllers . . . . . . . . . . . . . . . 23

xi

Page 12: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

xii Contents

2.4.5 Summary of commercial off-the-shelf ESCs . . . . . . . . . . . . . 242.5 Quadrotor Modelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.5.1 Rigid body dynamic model . . . . . . . . . . . . . . . . . . . . . . 252.5.2 Drag force model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.5.3 Rotor blade modelling . . . . . . . . . . . . . . . . . . . . . . . . . 282.5.4 Thrust force model and control . . . . . . . . . . . . . . . . . . . . 28

2.6 State Estimation for Quadrotors . . . . . . . . . . . . . . . . . . . . . . . 312.7 Disturbance Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322.8 Quadrotor Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.9 Trajectory Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3 Experimental Quadrotor Platforms 373.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.2 Flight Control Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

3.2.1 Sensors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393.2.2 Input output interface/hardware communication . . . . . . . . . 40

3.3 Electronic Speed Controller . . . . . . . . . . . . . . . . . . . . . . . . . . 413.3.1 Voltage and rotor speed sensors . . . . . . . . . . . . . . . . . . . 42

3.3.1.1 RPM sensing . . . . . . . . . . . . . . . . . . . . . . . . . 423.3.1.2 Voltage sensing . . . . . . . . . . . . . . . . . . . . . . . 43

3.3.2 Current sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.3.2.1 Current calibration . . . . . . . . . . . . . . . . . . . . . 44

3.3.3 Control modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463.3.3.1 Open-loop “duty” or “pwm“ mode . . . . . . . . . . . . 483.3.3.2 Closed-loop RPM - “rpm” mode . . . . . . . . . . . . . 493.3.3.3 RPM based thrust control - “thrust” mode . . . . . . . . 493.3.3.4 Aerodynamic mechanical power control (electrome-

chanical shaft power) - “power” mode . . . . . . . . . . 493.3.3.5 Power based thrust control - “st” mode . . . . . . . . . 49

3.3.4 Communication with avionics board . . . . . . . . . . . . . . . . 503.4 Motor-Rotor System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

3.4.1 Calibration of motor-rotor parameters . . . . . . . . . . . . . . . . 513.4.1.1 Laboratory calibration . . . . . . . . . . . . . . . . . . . 513.4.1.2 Field calibration . . . . . . . . . . . . . . . . . . . . . . . 523.4.1.3 Modified motor-rotor models . . . . . . . . . . . . . . . 533.4.1.4 Rotor moment of inertia determination . . . . . . . . . . 59

3.5 Additional Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.5.1 Remote controller receiver/transmitter . . . . . . . . . . . . . . . 603.5.2 Battery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

3.6 Ground Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603.6.1 Visualisation and parameter tuning . . . . . . . . . . . . . . . . . 613.6.2 Autonomous vehicle control system . . . . . . . . . . . . . . . . . 61

3.6.2.1 control_input . . . . . . . . . . . . . . . . . . . . . . . . . 62

Page 13: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Contents xiii

3.6.2.2 lmpc_v1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623.6.2.3 vicon_bridge . . . . . . . . . . . . . . . . . . . . . . . . . 623.6.2.4 mavlink_ros . . . . . . . . . . . . . . . . . . . . . . . . . 633.6.2.5 log_data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

3.7 Open-Source Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633.7.1 Quadrotor open-source avionics software . . . . . . . . . . . . . . 643.7.2 Ground station software . . . . . . . . . . . . . . . . . . . . . . . . 663.7.3 Electronic speed controller software . . . . . . . . . . . . . . . . . 66

3.8 The Flying Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663.9 Cost and Weight Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . 673.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4 Aerodynamic Modelling of Quadrotors 694.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694.2 Relevant Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704.3 Quadrotor Modelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

4.3.1 Frames of reference . . . . . . . . . . . . . . . . . . . . . . . . . . 714.3.2 Non-linear quadrotor model . . . . . . . . . . . . . . . . . . . . . 72

4.4 Drag Forces and Drag Like Effects . . . . . . . . . . . . . . . . . . . . . . 734.4.1 Blade flapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734.4.2 Induced drag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754.4.3 Translational drag . . . . . . . . . . . . . . . . . . . . . . . . . . . 754.4.4 Profile drag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 764.4.5 Parasitic drag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 764.4.6 Lumped models for forces and torques caused by drag . . . . . . 774.4.7 Drag coefficient estimation . . . . . . . . . . . . . . . . . . . . . . 79

4.5 General Rotor Blade Modelling . . . . . . . . . . . . . . . . . . . . . . . . 804.5.1 Momentum theory . . . . . . . . . . . . . . . . . . . . . . . . . . . 824.5.2 Blade element momentum theory . . . . . . . . . . . . . . . . . . 85

4.5.2.1 Theoretical framework . . . . . . . . . . . . . . . . . . . 864.5.2.2 Model for blade flapping angle β(ψ) . . . . . . . . . . . 864.5.2.3 Induced velocity distribution vi(r, ψ) . . . . . . . . . . . 884.5.2.4 Velocity components at a blade section . . . . . . . . . . 894.5.2.5 Aerodynamic forces acting on blade elements . . . . . . 914.5.2.6 Induced power factor κ . . . . . . . . . . . . . . . . . . . 93

4.5.3 Blade element momentum theory application to quadrotor blades 964.5.3.1 Thrust (T) for “near ideal” rotors . . . . . . . . . . . . . 1014.5.3.2 H-force for “near ideal” rotors . . . . . . . . . . . . . . . 1014.5.3.3 Torque (τ) and aerodynamic mechanical power Pam

for “near ideal” rotors . . . . . . . . . . . . . . . . . . . . 1024.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

Page 14: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

xiv Contents

5 Aerodynamic Mechanical Power Application to Thrust Modelling and Con-trol 1055.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1055.2 Aerodynamic Mechanical or Electromechanical Power Estimation . . . . 106

5.2.1 Estimation of desired variables for aerodynamic mechanicalpower . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075.2.1.1 Rotor angular acceleration ˆv estimation . . . . . . . . . 1075.2.1.2 Current ia filtering . . . . . . . . . . . . . . . . . . . . . . 107

5.2.2 Aerodynamic mechanical power controller . . . . . . . . . . . . . 1085.3 Application of Aerodynamic Mechanical Power to Thrust Computa-

tion and Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1115.3.1 Thrust computation . . . . . . . . . . . . . . . . . . . . . . . . . . 1125.3.2 Thrust control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145.3.3 Calibration of thrust model coefficients . . . . . . . . . . . . . . . 117

5.4 Thrust Control Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1225.4.1 Static rotor experiments . . . . . . . . . . . . . . . . . . . . . . . . 1235.4.2 Laboratory path following flight test . . . . . . . . . . . . . . . . 124

5.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

6 State Estimation and Control of Quadrotors 1296.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1296.2 Non-linear Velocity Aided Attitude Estimation . . . . . . . . . . . . . . . 131

6.2.1 Body-fixed frame and inertial velocity measurements . . . . . . . 1346.3 Proposed Hierarchical Control Structure . . . . . . . . . . . . . . . . . . 1356.4 Attitude Control For Precise Trajectory Tracking or Velocity Control . . 1366.5 High-Level Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

6.5.1 Trajectory tracking and control . . . . . . . . . . . . . . . . . . . . 1426.5.2 Velocity control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1446.5.3 Desired attitude setpoint . . . . . . . . . . . . . . . . . . . . . . . 148

6.6 Non-linear Velocity Aided Attitude Filter Results . . . . . . . . . . . . . 1506.7 Results From High-Level Controllers . . . . . . . . . . . . . . . . . . . . . 151

6.7.1 Position and trajectory tracking results . . . . . . . . . . . . . . . 1516.7.2 Velocity controller results . . . . . . . . . . . . . . . . . . . . . . . 152

6.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

7 Conclusion and Future Work 1597.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1597.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1597.3 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

A Closed-Loop Thrust Controller Stability Proof 167

B Attitude Definitions and Algebra 171B.0.1 Vector Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172

Page 15: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Contents xv

C SO(3) Complementary Filter Implementation 175

D Proof of Stability for Body-fixed Frame Filter 177

E Desired Attitude With qd3 = 0 181

Page 16: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

xvi Contents

Page 17: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

List of Figures

2.1 Schematic of components of a quadrotor. . . . . . . . . . . . . . . . . . . 82.2 Commonly used quadrotor platforms. . . . . . . . . . . . . . . . . . . . . 92.3 Some open-source flight control boards. . . . . . . . . . . . . . . . . . . . 122.4 Types of DC Motors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.5 BLDC motor and ESC MOSFET drive mechanism. . . . . . . . . . . . . . 192.6 Simplified BLDC model along with battery’s internal circuit model. . . 212.7 Simplified BLDC electronic speed controller with BLDC motor. . . . . . 232.8 Average measured current, phase current and voltage at 20kH. . . . . . 242.9 A helicopter swashplate rotor mechanism . . . . . . . . . . . . . . . . . . 262.10 Free body diagram of a quadrotor. . . . . . . . . . . . . . . . . . . . . . . 272.11 Voltage changes of 4 different batteries during hover. . . . . . . . . . . . 31

3.1 Three quadrotors developed during the thesis for different experiments. 383.2 Layout of the ground station and quadrotor hardware. . . . . . . . . . . 383.3 AutoQuad ESC32v2 hardware layout. . . . . . . . . . . . . . . . . . . . . 423.4 Current offset values and MCU temperature of an ESC32v2. . . . . . . . 453.5 Current measurements with a constant Io f f set for 7 experiments. . . . . 463.6 Almost constant currents from multiple RPM based hovering flights. . . 473.7 Raw and calibrated current measurements of ESCs on a quadrotor. . . . 473.8 Hovering at z = −1.2m using the power based thrust controller. . . . . 483.9 Laboratory and field calibration rigs for force and torque measurements. 523.10 Static free air thrust and torque calibration. . . . . . . . . . . . . . . . . . 533.11 Multiple experiments to characterise motor-rotor model. . . . . . . . . 543.12 Regressed voltages for various proposed ∆ models. . . . . . . . . . . . . 553.13 Sinusoidal motor voltage and regressed voltage. . . . . . . . . . . . . . 573.14 Regressed data for v to ia models. . . . . . . . . . . . . . . . . . . . . . . 583.15 Torque and RPM for the different models. . . . . . . . . . . . . . . . . . 583.16 QGroundControl v2.0β visualisation and parameter tuning software. . . 613.17 ROS based ground station packages and tools. . . . . . . . . . . . . . . . 623.18 Avionics software architecture on PX4FMU/Pixhawk. . . . . . . . . . . . 64

4.1 Reference frames associated with a quadrotor and a rotor blade. . . . . 714.2 Variation of different drag forces with forward speed. . . . . . . . . . . . 774.3 Drag coefficient c and B forward velocity measurement. . . . . . . . . 804.4 Rotor streamtube along with generated forces and velocities in B. . . 824.5 Frames of reference and flapping angles of a rotor. . . . . . . . . . . . . 874.6 An aerofoil section showing elemental forces, angles and velocities in C. . . 90

xvii

Page 18: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

xviii LIST OF FIGURES

4.7 Blade element forces in B and D and β(ψ). . . . . . . . . . . . . . . 924.8 κ and CT variation for low and high disc loading rotor blades. . . . . . . 954.9 The “near ideal” rotor used on the ANU X4-Flyer Pounds et al. [2005]. . 974.10 Scaled thrust and H-force spanwise distribution for ideal rotors. . . . . 994.11 Geometry of an ideal (black) and a “near ideal” (red) blade. . . . . . . . 100

5.1 Different powers on a rotor. . . . . . . . . . . . . . . . . . . . . . . . . . . 1065.2 Proposed complementary filter for v estimation. . . . . . . . . . . . . . . 1075.3 The v and ˆv estimation results from the proposed complementary filter.1085.4 Schematic diagram of the proposed complementary filter for current. . 1095.5 Current filtering result. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105.6 Aerodynamic mechanical power controller. . . . . . . . . . . . . . . . . . 1115.7 Feedforward terms calibration for power controller. . . . . . . . . . . . . 1115.8 The proposed thrust controller architecture. . . . . . . . . . . . . . . . . 1175.9 Thrust controller feedforward terms. . . . . . . . . . . . . . . . . . . . . . 1185.10 Setup for calibration and static experiments. . . . . . . . . . . . . . . . . 1195.11 c3 determination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195.12 Results for λ against CT and CT against estimated κ. . . . . . . . . . . . 1225.13 Transient responses of thrust using the two controllers. . . . . . . . . . . 1235.14 Static test results for v, λ and T for varying downdraft strengths. . . . . 1255.15 Path following results for the proposed and RPM controllers. . . . . . . 126

6.1 Overview of the proposed coupled complementary filters. . . . . . . . . 1316.2 Estimation of height and vertical velocity using onboard barometric

sensor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1356.3 The proposed control architecture. . . . . . . . . . . . . . . . . . . . . . . 1366.4 Attitude response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1416.5 Desired attitude Rd and orientation. . . . . . . . . . . . . . . . . . . . . . 1496.6 Comparison of attitude and velocity estimates from proposed filter. . . 1536.7 200Hz estimates of velocity and position from 5Hz GPS position and

velocity measurements in A rotated into B. . . . . . . . . . . . . . . 1546.8 Position and trajectory tracking results. . . . . . . . . . . . . . . . . . . . 1556.9 Velocity controller results. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1566.10 Indoor teleoperation with/without Vicon measurements. . . . . . . . . . 157

Page 19: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

List of Tables

2.1 Commercial off-the-shelf quadrotors. . . . . . . . . . . . . . . . . . . . . 112.2 Open-source avionics/flight control boards. . . . . . . . . . . . . . . . . 162.3 BLDC motor specifications. . . . . . . . . . . . . . . . . . . . . . . . . . . 212.4 Some ESCs with current sensing. . . . . . . . . . . . . . . . . . . . . . . . 24

3.1 PX4FMU available sensors. . . . . . . . . . . . . . . . . . . . . . . . . . . 403.2 Serial devices and peripherals. . . . . . . . . . . . . . . . . . . . . . . . . 413.3 ESC control modes1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483.4 Motor-rotor identified parameters with 1σ variation for various ∆ mod-

els. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563.5 Motor-rotor identified parameters from sinusoid with 1σ variation. . . . 563.6 Motor-rotor aerodynamic torque damping constants with 1σ variation. 583.7 Additional Hardware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.8 RC channels assignments. . . . . . . . . . . . . . . . . . . . . . . . . . . . 603.9 Desired vehicle states and trajectories of the FSM. . . . . . . . . . . . . . 633.10 Cost and weight analysis of the quadrotor in Figure 3.1(c). . . . . . . . . 67

5.1 Feedforward terms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105.2 Feedforward terms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165.3 Estimated aerodynamic coefficients using linear regression. . . . . . . . 1205.4 Analysis of Variance (ANOVA) for the two regressions. . . . . . . . . . . 1215.5 Further ANOVA results for the CT and CPam models. . . . . . . . . . . . 1225.6 Summary of static test results for mean variations of thrust in N from a

desired value Td = 3.2N and their 1σ variations as percentages(

T−TdTd

%)

.124

6.1 Sampling frequency and response time for the different sublevels of aquadrotor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

6.2 Comparisons of filters available on the PX4 Stack. . . . . . . . . . . . . . 151

7.1 Comparison of robotic manipulator and quadrotor development. . . . . 159

xix

Page 20: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

xx

Page 21: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Nomenclature

List of Symbols

A Inertial-fixed framea0 Flapping Fourier series: conning anglea1 Flapping Fourier series: Sin tiltAR Aspect ratioβ Blade flapping angleB Body-fixed frameb1 Flapping Fourier series: Cosine of tiltc Blade chordc Lumped drag coefficientClα Lift curve slopeCd Drag coefficientD Drag forcee Oswald span efficiency~e1,2,3 Unit vectors in x, y, z directionsγ Lock numberGa Gyroscopic torqueH Horizontal forceI Identity matrixI Quadrotor moment of inertiaia Electrical currentIMU Inertial measurement unitIr Rotor moment of inertiaKd Rate controller gainKe Back-emf constantKi Integral gainKΩ Angular rate gainKp Proportional controller gainKq Quaternion attitude controller gainKq Torque constantKq1 Torque constant offsetKv Velocity gainλ Vertical inflow ratioλi Induced vertical inflow ratioλs Stream inflow ratiol Vehicle arm lengthL Lyapunov function

xxi

Page 22: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

xxii

L Laplace transformLa Motor inductanceµ Advance ratioµi Induced advance ratiov Rotor speedΩ Angular rateΩ× Skew symmetric matrix of Ωφ Roll angleΦ(t) State transition matrixψ Yaw angleq Attitude in quaternionR Vehicle attitude in rotation matrixR1 Attitude of vehicle estimated by Filter 1R2 Attitude of vehicle estimated by Filter 2R Rotor radiusRa Motor resistanceRe Reynold’s numberSO(3) Special orthogonal groupσ Standard deviationT Heave force or thrustτ Torqueθ Pitch angleTP Thrust to electromechanical power ratiov Inertial frame VelocityV Body-fixed frame Velocityvi Induced velocityw Wind velocity in inertial-fixed frameW Wind velocity in body-fixed frameW Observability Grammianζ Position

Page 23: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Chapter 1

Introduction

1.1 Motivations and Objectives

Over the last decade, there has been significant progress in the development of con-trol algorithms for autonomous systems. Some of the most remarkable areas of con-trol in which progress has been made include: adaptive control, hierarchical control,robust control, intelligent control and optimal control. High performance control,the primary focus of this thesis, is that branch of control that deals with achievingoptimal control of complex systems to within a close margin of their performancelimits. In some applications, high performance control translates to simply achievingbetter disturbance rejection or other performance metric than a controller that is lessaggressively tuned. However, there are applications such as acrobatics of aerial vehi-cles where it is imperative for the high performance controller to achieve the controlobjective. Failure of the control system to achieve the desired performance may leadto catastrophic failures of the vehicle. The high performance controllers developedherein are specifically for quadrotors.

A quadrotor is an aerial vehicle with four motor-rotor assemblies that provide liftand control action. For the standard design, the rotors are counter-rotating and aremade of fixed pitch blades and therefore have no cyclic pitch or swashplate mech-anisms as used on helicopters. Their light weight (usually under 4kg), reliability,robustness, ease of design and simple dynamics have made them the standard testplatforms for aerial robotics research Mahony et al. [2012]; Lim et al. [2012]. Thereare numerous commercial off-the-shelf and open-source quadrotor projects. In thehobby community, they are mainly used for taking pictures and video streaming.In the academic community, quadrotors have been used in research areas includingaerial imagery, flight estimation and control, navigation and real-time systems devel-opment. The most popular of the commercial quadrotors is the low-cost AR. Dronethat is available locally in almost every electronic store. It can be flown by novicepilots with ease and can take images and transmit them to an iOS phone usinga proprietary phone application Bristeau et al. [2011]. The major limitation of thesecommercial quadrotors is that they do not provide the flexibility to be reprogrammedto suit different needs as their software are proprietary. Hence from the many open-source software and hardware avionics boards, electronic speed controllers (ESCs)and other hardware, it is necessary to build quadrotor platforms from completely

1

Page 24: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

2 Introduction

open-source software and hardware components that can do high performance andaggressive manoeuvres than do the commercial products while offering researchersthe flexibility to implement their research algorithms.

The method currently adopted in performing high performance control uses astatic model of thrust to rotor speed coupled with iterative learning schemes andadditional linear compensators. Computational fluid dynamics approach Luo et al.[2015] and direct flow measurements Yeo et al. [2015]; Arain and Kendoul [2014] ofthe air velocity to model thrust in the presence of changing aerodynamic conditionsaround a rotor have also been considered. Some authors have proposed sophisticatedmodels based on battery voltage Podhradsky et al. [2013], momentum and blade el-ement theories Orsag and Bogdan [2009] for modelling the exact thrust produced bythe rotors. Shen et. al. Shen et al. [2013] used a Kalman filter to estimate any additivethrust which is modelled as a disturbance. However, there is currently no provenmethod for predicting the exact thrust produced by rotors once the hover conditionis violated or when the vehicle is flying in confined spaces. It is generally knownthat in such conditions, the standard thrust to rotor speed model fails. Despite this,some of the most impressive work on aggressive manoeuvring of quadrotors haveused this model, for example grasping tasks and flights through narrow openingsMellinger et al. [2012], multiple flips Lupashin et al. [2010] and single stall turnsHuang et al. [2009]. A key enabling approach in many high performance controllersis the use of iterative learning to provide feedforward compensation of unmodelledaerodynamic effects. These iterative learning approaches are in general very compu-tationally intensive and require dedicated ground station computers running top ofthe range computer processors Aswani et al. [2012]. Hence for complete autonomy,more robust and less computationally intensive modelling schemes than iterativelearning need to be investigated if they are to be implemented in real-time on thecurrent state-of-the art STM32 microcontrollers.

One way of improving the quadrotor dynamic model is to understand its aero-dynamics. Thus in recent years, there has been an increased interest within therobotics community in understanding the aerodynamics of quadrotors. The onlyavailable references for such modelling schemes are those written on helicopters byaerodynamicists. Some of these references include Bramwell et al. [2001]; Leishman[2002]; Prouty [1995]; Seddon and Newman [2011] and contain theories developedfor aerodynamics and performance analysis of helicopters. From a robotic point ofview, many of the parameters in these theories are hard to measure and thereforegenerally not available for control purposes on small scale multirotor aerial vehicles.In addition, the non-linear scaling of forces and helicopter mechanisms such as theBell-Hiller system, blade geometries and disc loading are quite different betweenquadrotors and full-sized helicopters. Quadrotors are designed based on simplicity,ease of maintenance and cost. For these reasons, the majority of electrically poweredmultirotors have fixed pitched blades which is in contrast to the variable pitch andflapping hinges of the rotor blades typical of helicopters. Furthermore, helicoptersuse mostly rectangular planform blades with very low cambered aerofoils which arevery different from quadrotor blades. Given also that quadrotors are generally de-

Page 25: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§1.2 Contributions 3

signed for low speeds, they use high disc loading blades with high camber, operate athigh rotor speed with blade geometries that have slight modifications to the optimumhovering rotor geometry. Hence, theoretical models using the simplified momentumand blade element theories for aerodynamic modelling of rotor blades specific toquadrotor blades is required as the simple quadrotor models and helicopter modelsare inadequate.

State estimation for quadrotors can be grouped into attitude, velocity and posi-tion and the more recent combined estimation for attitude and linear velocity referredto as “velocity aided attitude” estimation. The most common of these is the atti-tude observer of which there are many different types including Kalman filter basedmethods and the non-linear complementary filters on SO(3) Mahony et al. [2008].Complementary filters have the advantage that they explicitly take into account thenon-linear state space model of the vehicle. For the velocity aided attitude estima-tion, Bonnabel et. al proposed an invariant extended Kalman filter (EKF) for velocityand attitude estimation in quaternions Bonnabel et al. [2009]. With strapdown sen-sors for measuring vehicle acceleration, barometric pressure and angular velocity aswell as first order models for drag, linear velocity measurements of the vehicle in thebody-fixed frame can be obtained. Using these body-fixed frame measurements andmeasurements from an inertial navigation system that measures position or velocity,high frequency estimates of the body-fixed and inertial frame velocities along withthe vehicle attitude can be made using a low computationally intensive complemen-tary filter.

1.2 Contributions

The following are the major contributions of this thesis towards the development andunderstanding of automatic control of multirotor aerial vehicles, specifically quadro-tors.

• Quadrotor platforms: An open-source quadrotor framework has been devel-oped from open-source software and hardware components. The frameworkgives researchers the freedom of implementing and testing theories on stateestimation and control of quadrotors. The framework is designed such that itsupports the design and construction of quadrotors with varying specifications.Specifications such as heavy lifting and aggressive manoeuvres.

• Non-linear quadrotor model: A new non-linear aerodynamic model for rotorblades of quadrotor vehicles with a clear description of the different drag forcesis proposed. These drag forces are lumped into a single model suitable forrobotics modelling. Using momentum and blade element theories, models aredeveloped for the aerodynamic forces and power for the close to ideal optimumhovering blade geometries used on quadrotors.

• Thrust estimation and control scheme: A thrust and aerodynamic state esti-mation scheme for fixed pitch electrically powered multirotor aerial vehicles

Page 26: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

4 Introduction

is developed. The scheme is based on the developed aerodynamic models forquadrotor rotor blades using measurement of the electrical power into the mo-tor, rotor speed and compensating for electrical and aerodynamic losses. In theregulation of thrust, a robust proportional integral (PI) based hierarchical con-troller is proposed. The scheme is run in real-time on the embedded electronicspeed controller at 1kHz. The new scheme and controller results show a similartransient response of rotor speed when compared to the current state-of-the artrotor speed controller. The controller is also able to maintain a desired thrustsetpoint and flight path in the presence of updrafts and downdrafts when usedas the low-level thrust controller for a high-level position/trajectory trackingcontroller.

• Velocity aided attitude filter: From the derived drag force model and thestrapdown inertial measurement unit (IMU) and barometric pressure sensor,a scheme is presented for determining the full body-fixed frame velocity mea-surements. With these measurements, an inertial navigation sensor, an inertialmeasurement unit (IMU) and a magnetometer, a non-linear complementaryvelocity aided attitude filter in both the inertial and body-fixed frames is pro-posed. With coupling innovation terms between the inertial and body-fixedframe filters, an estimate of the wind speed is made available. Results are pre-sented to evaluate the performance of the filter against measured ground truthVicon measurements. The strength of the proposed filter was exploited in tele-operating a quadrotor when inertial navigation sensor measurements were andwere not available. Thus the proposed scheme leads to a robust control schemefor quadrotors when the primary position and velocity sensor measurementsbecome unavailable. In addition, the complementary nature of the filter ensuresthat it costs less in terms of computation when compared to standard extendedKalman filter based approaches.

• Trajectory tracking and control: A hierarchical trajectory tracking controlleris developed that is based on time scale separation of the different dynamiclevels of a quadrotor. The hierarchical controller has low-level motor control,mid-level attitude control and high-level trajectory tracking control. The at-titude error dynamics under the proposed attitude control law are shown tobe non-autonomous. Using passivity based Lyapunov analysis and Barbalat’sLemma, the non-autonomous error dynamics are shown to be locally asymp-totically stable and locally exponentially stable. Using Lyapunov analysis also,the high-level trajectory controller is also shown to be locally asymptoticallyand locally exponentially stable. Hence, by the notion of input-to-state stability(ISS), the quadrotor is locally exponentially stable under the proposed controllaws. Results are presented that demonstrate the tracking performance of thecontroller.

• Velocity controller: Using the velocity estimates from the velocity aided atti-tude filter, a velocity controller at the high-level of the proposed hierarchical

Page 27: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§1.3 Publications 5

control structure is proposed. Using passivity based Lyapunov analysis andshowing that the resulting error dynamics are uniformly completely observable(UCO), the error dynamics are therefore locally exponentially stable. Hence bythe notion of ISS, the entire quadrotor is locally exponentially stable. Resultsare presented to show that the velocity controller achieved its desired trackingperformance.

1.3 Publications

During the course of this PhD research, the following is a list of papers that havebeen published.

1. M. Bangura and R. Mahony, Nonlinear Dynamic Modeling for High PerformanceControl of a Quadrotor, Australasian Conference on Robotics and Automation,1–10, 2012.

2. M. Bangura, H. Lim, H, J, Kim and R. Mahony, Aerodynamic Power Control forMultirotor Aerial Vehicles, IEEE Int. Conference on Robotics and Automation,529–536, 2014.

3. M. Bangura and R. Mahony, Real-time Model Predictive Control for Quadrotors,IFAC World Congress, 11773–11780, vol. 19, No. 1, 2014.

4. G. Allibert, D. Abeywardena M. Bangura and R. Mahony, Estimating body-fixedframe velocity and attitude from inertial measurements for a quadrotor vehicle, IEEEConference on Control Applications, 978–983, 2014.

5. M. Bangura, H. Lim, H. J. Kim and R. Mahony, An Open-Source Implementationof a Unit Quaternion based Attitude and Trajectory Tracking for Quadrotors, Aus-tralasian Conference on Robotics and Automation, 1–10, 2014.

6. M. Bangura, F. Kuipers, G. Allibert and R. Mahony, Non-linear Velocity AidedAttitude Estimation and Velocity Control for Quadrotors, Australasian Conferenceon Robotics and Automation, 1–10, 2015.

7. G. Allibert, R. Mahony and M. Bangura, Velocity Aided Attitude Estimation UsingLatent Rotation Scaling, IEEE International Conference on Robotics and Automa-tion, 2016.

8. M. Bangura and R. Mahony, Thrust Control for Multirotor Aerial Vehicles, IEEETrans. on Robotics, Vol. 33, No. 2, March 2017.

The detailed material on rotor modelling is published in an online archive.

M. Bangura, M. Melega, R. Naldi and R. Mahony, Aerodynamics of Rotor Bladesfor Quadrotors, arXiv preprint arXiv:1601.00733, 2016.

In addition to published papers, the following papers are under development.

Page 28: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

6 Introduction

1. M. Bangura, X. Hou, G. Allibert and R. Mahony Robust Bilateral Teleoperation ofMultirotor Vehicles in Unstructured Environments, IEEE Robotics and AutomationMagazine, 2017.

1.4 Thesis Outline

This thesis consists of seven chapters including the current introductory chapter. InChapter 2, a review of the relevant literature is carried out. This includes the cur-rent state-of-the art commercial off-the-shelf and open-source quadrotor projects andhardware components. The chapter also reviews the current aerodynamic models aswell as estimators and controllers for quadrotors. Chapter 3 describes the develop-ment of the various hardware and software components that constitute the proposedopen-source framework for developing experimental quadrotor platforms and theexperimental hardware used for the remainder of the thesis. In Chapter 4, the non-linear model and various drag forces along with the lumped drag force model for aquadrotor are presented. Using momentum and blade element momentum theories,models are developed for the aerodynamic forces and power specific to quadrotorblades. These models are then used in Chapter 5 to develop a power based thrustmodelling and control scheme. The performance of the thrust modelling and controlscheme is evaluated against the current state-of-the-art RPM controller in maintain-ing a desired thrust setpoint and a constant flight path. In Chapter 6, the non-linearquadrotor model is used in the development of a velocity aided attitude filter andan attitude and trajectory as well as velocity controllers. Chapter 7 summarises theachievements of the thesis and a description of possible future work. The chapteralso looks at the current state of aerial robotics research and a direct comparison ismade to the robotic manipulator. The current constraints limiting progress in aerialrobotics research and commercialisation are also discussed.

Page 29: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Chapter 2

Literature Review

2.1 Introduction

This chapter presents relevant literature on hardware components, modelling andcontrol of quadrotors to achieve high performance tracking and control of quadro-tors. The first part focuses on hardware while the second part is on modelling andcontrol of quadrotors. Section 2.2 starts by evaluating open-source and commercialoff-the-shelf quadrotor technologies. The technical details and commercial availabil-ity of the two main hardware components of quadrotors: the avionics and motor-rotor system are presented in Section 2.3 and 2.4 respectively.

Section 2.5 to 2.9 describe current work on quadrotor modelling, state estimationand control. The extensive work on modelling of quadrotors since the late 1990’sis covered in Section 2.5. The outcome of these models is a static model for thrustand rotor torque expressed as the square of rotor speed. This model holds for nearhovering conditions. Over the years, many shortcomings of this model have beenidentified especially by those performing aggressive manoeuvres Mellinger and Ku-mar [2011]; Lupashin et al. [2010] and have made several attempts at accounting forthe thrust discrepancies resulting from large displacements of air Martin and Salaun[2010]. The modifications to the so called static model are presented in Section 2.5.4.

In Section 2.6, past and present literature is presented on the different state es-timation algorithms for quadrotors. Trajectory tracking and control of quadrotorsbased on hierarchical control structure using proportional integral derivative (PID),backstepping, sliding mode and model predictive control (MPC) are presented inSections 2.8. Finally, the convex optimisation based trajectory generation schemesare presented in Section 2.9.

2.2 Quadrotor Technology

A quadrotor is a small lightweight, aerial vehicle with a four motor-rotor system forthe generation of thrust and controllability. They have two sets of counter-rotatingfixed pitch rotors. Their simple design with simple dynamics have made them thepreferred platform for aerial robotics research as well as the amateur and hobbycommunity Mahony et al. [2012]; Lim et al. [2012]. They have been used in research

7

Page 30: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

8 Literature Review

Figure 2.1: Schematic of components of a quadrotor.

areas including aerial imagery, flight control theory, navigation and real-time systemsdevelopment.

Quadrotors consist of a flight control board which is part of the avionics system,four electronic speed controllers (ESCs) that regulate the thrust produced by each ofthe four motor-rotor system. In addition to the avionics and ESCs, quadrotors alsohave a transmitter/receiver system, additional sensors such as global positioningsystem (GPS), vision system, a frame and a four motor-rotor assembly. The differentcomponents of a quadrotor are shown in Figure 2.1. In this section, relevant litera-ture is presented on the various components of a quadrotor and various open-sourceand commercial off-the-shelf (COTS) quadrotors. Many quadrotors have been devel-oped either for research or commercial use. Some of those developed by commercialcompanies that are surveyed include the Mikrokopter, AR. Drone, Draganflyer andHummingbird. There are many others that are still under development.

2.2.1 Commercial quadrotors

The majority of commercial quadrotors are marketed with the aim of doing aerialphotography. These quadrotors are used by hobbyists, journalists and military organ-isations. A shortcoming of many of these quadrotors is that they have closed-sourceavionics and therefore cannot be used for many research applications. The followingsubsections describe some of the commercial quadrotors that were surveyed. Fig-ure 2.2 shows some of the most commonly used commercial quadrotors. Table 2.1 is

Page 31: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.2 Quadrotor Technology 9

(a) AR. Drone Parrot. (b) AscTec Hummingbird. (c) DJI Phantom 3.

Figure 2.2: Commonly used quadrotor platforms.

a summary of some of the quadrotors currently in service that were surveyed.

2.2.1.1 Aeryon scout

This is used as a reconnaissance aerial vehicle operated by many security agenciesaround the world and has encryption of the communication between the quadrotorand ground station. It can be operated beyond sight for up to a distance of 3km andhas a designed operational altitude of 333m1.

2.2.1.2 Microdrones md4-1000

This quadrotor has the longest flight time of all the quadrotors considered. By using6S2P LiPo, 22.2V, 13000mAh batteries, the quadrotor can fly up to 45mins with aflight range of 500m and a maximum payload of 1.2kg with a maximum takeoffweight of 6kg. The specially designed motors produce less than 72dB noise whenthe vehicle is hovering at 3m. Thus it has the lowest noise emission among thesurveyed vehicles. The quadrotor has been used by law enforcement, fire services,agricultural services and media2.

2.2.1.3 Quanser Qball

The Quanser Qball-X4 which weighs 1.41kg and can carry a maximum payload of400g has been used for research by Concordia University, Lousiana Technical Univer-sity and other educational institutions for model predictive control (MPC) trajectorytracking, mobile sensor network experiments and many more. The quadrotor is tai-lored for teaching basic vehicle navigation and control courses. It is enclosed withina protective carbon fibre cage. The vehicle has an on-board avionics data acquisitioncard, the HiQ. The HiQ has a high-resolution inertial measurement unit (IMU) andan embedded Gumstix computer, an input/output (I/O) card similar to the micro-SDcard used on some open-source avionics like Pixhawk and APM. This card enables a

1http://aeryon.com/aeryon-scout2https://www.microdrones.com/en/products/md4-1000/technical-data/

Page 32: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

10 Literature Review

wide range of research applications to be designed and executed. The HiQ board iscompatible with the Draganflyer X43.

2.2.1.4 Parrot AR. Drone 2.0

Since its release in 2010, more than half a million units of the Parrot AR. Drone2.0 have been sold. The vehicles are readily available and can be purchased frommany stores such as Bing Lee in Australia. This is because it can be flown easilyby novice pilots using the AR. Drone phone application on an iPhone, iPod touchor iPad. The quadrotor comes with two cameras, a front and a downwards facingcamera. The quadrotor became even more popular during its role in the occupywall street protests. It has been used for visual navigation, velocity observer designAbeywardena et al. [2013] research and has also been used in aerial reconnaissance bythe French military. The quadrotor weighs 420g and has a 1GHz 32bit ARM CortexA8 processor, running Linux 2.6.32 with a 1Gbit DDR2 RAM AR. Drone Team [2015].

2.2.1.5 DJI Phantom 3

The DJI Phantom 3 was launched in early 2013. Similar to most quadrotors, the Phan-tom’s main flight control board, Wookong-M comes with its own GPS. The quadrotorrecords data from the Phantom 3’s motors, sensors, and control commands. Similarto the AR. Drone, the DJI Phantom 3 comes with its own software development kit.Unlike the Parrot which costs only a few hundred dollars, the Phantom costs US$2199. It has a takeoff weight of 1.2kg and also comes with a mobile applicationDJI Pilot for users. Unlike the Parrot, the Phantom also has applications for mo-bile Android OS. Some of the supported Android hardware include Samsung tabs705c, Samsung S6, Samsung S5, Samsung NOTE4, Samsung NOTE3, Google Nexus9, Google Nexus 7 II, Ascend Mate7, Nubia Z7 mini, SONY Z3 EXPERIA, Xiaomi MI3 and MI PAD and a general application for mobile phones that run on Android 4.1.2or later4.

2.2.1.6 AscTec

Ascending Technologies (AscTec) manufactures different types of quadrotors for dif-ferent applications. The most common is the Hummingbird. In 2011, it was usedin the aggressive manoeuvres performed by Mellinger and Kumar [2011] and hasbee for many years the main platform used by the Flying Machine Arena Lupashinet al. [2014]. The Hummingbird comes with two processors: the high-level processor(HLP) and and the low-level processor (LLP). The LLP handles all hardware com-munications. It is the main flight control board that does data fusion while the HLPruns customised user developed code. It has a maximum takeoff weight (MTOW)of 0.71kg and uses an Intel Atom Z530 processor which enables the vehicle to be

3http://users.encs.concordia.ca/~realtime/coen421/doc4http://store.dji.com/phantom/phantom-3

Page 33: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.2 Quadrotor Technology 11

Table 2.1: Commercial off-the-shelf quadrotors.Quadrotor Cost Special featuresAscTec Humming-bird1

US $5000 Was used in the high performance tra-jectories tracking in Mellinger and Ku-mar [2011].

Mikrokopter2 e 586.22 Has closed-loop RPM controller formotor-rotor control. Its open-sourcesoftware has inspired many universitybased open-source projects.

DJI Phantom3 AU $2199 Has three ultrasonic and visual sen-sors and uses the Wookong-M autopi-lot which has an additional GPS.

Parrot AR. Drone2.0

AU $449.95 Can be flown with ease using Applebased devices. As of 2015, more thanhalf a million sold.

3DR IRIS4 AU $848.74 Uses the Pixhawk flight control boardthat is completely open-source withPWM controlled motors.

controlled at a rate of 1kHz from the ground station. The quadrotor is tailored pri-marily for research by providing the AscTec SDK, simulink tool and communicationinterface for communicating with the HLP. The simulink kit helps with the testingand fusion and translation of custom control algorithms to embedded C AscTec Team[2015].

2.2.1.7 Mikrokopter

The Mikrokopter quadrotor is made from the open-source ATmega644/P based Mikrokopterflight control boards. The quadrotor is built with a custom made ESC motor-rotorcombination that is optimised for RPM closed-loop control of the rotor. The quadro-tor comes with a proprietary programming USB board, MK-USB. It also comes witha custom made GPS unit, the MKGPS. Though the firmware is open-source and writ-ten entirely in C language, the comments are however in German making it difficultfor non-German speakers to use. The major advantage of this quadrotor is that thecomponents of the quadrotor are available for sale Mikrokopter Team [2015].

2.2.2 Open-source and university developed quadrotors

There are many community and university based open-source projects for quadro-tor development. While open-source community based quadrotors are tailored to

1[AscTec Team, 2015]2Mikrokopter Team [2015]3[DJI Team, 2015]4 [Drone and UAV Technology, 2015]

Page 34: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

12 Literature Review

(a) KKmulticopter. (b) Mikrokopterboard V2.0. (c) Paparazzi KroozSD.

Figure 2.3: Some open-source flight control boards.

be used by the wider hobby community where the control performance in achiev-ing aggressive manoeuvres is not of paramount importance, university projects areusually tailored for development and testing of flight control, state estimation andnavigation algorithms Lupashin et al. [2014] Michael et al. [2010] . The first set ofwork in 2011 and 2012 by the General Robotics, Automation Sensing and Perception(GRASP) laboratory and the Flying Machine Arena used the AscTec Hummingbirdto achieve their high performance manoeuvres. The open-source nature of theseprojects has lead to the development of a unified communication protocol in 2009called MAVLink Meier [2015]. Though different projects have different ground con-trol stations, the MAVLink protocol ensures that each quadrotor is not limited toits own ground control station software. Some of these ground control station soft-ware include APM Mission Planner, QGroundControl and Mission Planner. Some ofthe open-source flight control boards which have driven open-source and universitydeveloped quadrotor projects are shown in Figure 2.3.

2.2.2.1 STARMAC X4

The Draganflyer X4 was one of the first set of small quadrotors developed. TheStanford Testbed of Autonomous Rotorcraft for Multi-Agent Control (STARMAC) isan example of research quadrotor platform that was based on the Draganflyer X4.In total, six STARMAC X4 platforms were produced. These quadrotors were usedas experimental platforms to demonstrate new control algorithms, navigation, pathplanning, safe acrobatic trajectories and search and rescue at Stanford University andat the University of California - Berkeley Huang et al. [2009].

2.2.2.2 ANU X4-Flyer

Though named the ANU X4-Flyer, this quadrotor was not based on the DraganflyerX4 quadrotor. It was developed at the Australian National University (ANU) as aproof of concept in building quadrotors for high efficiency and heavy lifting. Thequadrotor weighed 4Kg and can carry a payload of 1Kg. Unlike the STARMAC X4,

Page 35: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.2 Quadrotor Technology 13

only one ANU X4-Flyer was built. It was also one of the first high-rate fast rotordynamics control aircraft which gave it great performance for its era Pounds et al.[2010].

2.2.2.3 Arduino and ATmega based

The ATmega and Arduino based quadrotors have been popular within the hobbycommunity given the popularity of Arduino boards. The most popular of these isthe Arducopter which is entirely open-source. It is based on the ArduPilot Mega(APM) flight control board though the flight control boards have been upgraded tothe Pixhawk or PX4 boards as both the APM and PX4 share the same code base.

2.2.2.4 Mikrokopter based

Though this is also an ATmega MCU based autopilot system and the original prod-uct being a COTS product, many universities have re-devloped the firmware andproduced custom made quadrotors that suit their research needs. This is as a re-sult of the Mikrokopter flight control firmware being completely open-source withpoor commenting and variables defined in German Sa and Corke [2012b]. Some ofthese university projects include the Institut de Recherche en Informatique et Sys-tèmes Alèatoires (IRISA) quadrotor and the Cyphy Lab quadrotor at the QueenslandUniversity of Technology.

Unlike Spica et al. [2013], Sa and Corke [2012b] had Overo Gumstix which runsUbuntu Linux, a Hokuyo model URG-04LX laser scanner and other additional navi-gation sensors on their Mikrokopter quadrotor. Both open-source quadrotor systemsuse the Robot Operating System (ROS) and the source codes are available as open-source. For example, Sa and Corke [2012b]5. However, Spica et al. [2013] used aMatlab-Simulink environment which allows for efficient customisation, code reuse,functionality expansion and rapid prototyping of new algorithms.

2.2.2.5 STM32 based

The STM32 based quadrotors are becoming popular due to their computational su-periority over traditional ATmega based flight control boards. Some of the STM32based quadrotors are AutoQuad 6 and AutoQuad AQ-M4, AeroQuad and 3DR IRIS.The AeroQuad hardware typically consists of the fully-featured STM32-based Aero-Quad32 flight controller board or an Arduino microcontroller (Mega 2560 or Uno)as the flight control board. The AeroQuad can do video and aerial imaging similarto the COTS quadrotors. The 3DR IRIS comes with a 3DR radio, an optional GoProcamera and the free and open-source DroidPlanner.

5https://wiki.qut.edu.au/display/cyphy/MikroKopter+ROS+nodes

Page 36: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

14 Literature Review

2.3 Avionics Systems

Each of the aforementioned vehicles has its own avionics board with most oftenclosed-source firmware and software. The avionics system is the core componentof any flying vehicle. Some of the most popular avionics boards currently in useare: APM, KKMulticopter, Mikrokopter, Aeroquad, Openpilot, Paparazzi, Pixhawk,Multiwii, Pixhawk and PX4. The avionics boards on many of these quadrotors usethe 8bit ATmega microcontrollers. The avionics boards are developed with a groundcontrol station software for the visualisation of telemetry and command and con-trol of the vehicle. Some of the avionics boards come with microelectromechanicalsystems (MEMS) gyroscopes, accelerometers and magnetometers. All but KKMul-ticopter board which has only rate gyroscopes (to reduce cost) come with an IMU(accelerometer and gyroscopes) and an extended Kalman filter (EKF) attitude esti-mator. The STM32 based avionics boards have interfaces for communication withexternal devices such as GPS, telemetry, electronic speed controllers which are notall available on the ATmega based boards. The communication interfaces on theseSTM32 based boards I2C, PWM, CAN, SPI and UART. The following subsections area description of some of the most common open-source avionics boards or projects.A summary of some of the relevant sensors on these boards is on Table 2.2.

2.3.0.1 ATmega based

These are the most common flight controllers and are the cheapest since their releasein August 2010. For example, the most advanced of these boards, the ArduPuliotMega 2.6 (APM) which has an ATmega2560 MCU costs only USD 32.99. However,the user has to get an additional magnetometer for USD 9.02, the APM 2.6 HMC5983magnetometer. The board however comes with an MS5611-01BA03 pressure sensor.The Arducopter has developed into the APM suite and has the same codebase as thePX4. Similar to the PX4’s QGroundcontrol, the APM comes with a ground controlsoftware, APM Mission Planner. The ATmega based Arduino boards are also usedon the Multiwii and Aeroquad avionics boards.

The Hobbyking KKMulticopter flight control board uses the Invensense MPU6050 IMU and an ATmega168 MCU. Just like any other ATmega based board, KK-Multicopter is programmed using an AVR interface and an ATmega644PA MCU.Of all the avionics boards, this is the cheapest flight control board and costs only$28.79AU HobbyKing [2015].

There are many versions of the Mikrokopter flight control board. All the versionscan communicate with any of the Mikrokopter custom electronic speed controllers(ESCs) using inter-integrated circuit (I2C). The boards also come with an additionalI2C to PWM (pulse width modulation) converter board for use with generic ESCs.The flight control board uses the cheap and popular 8bit ATmega644 microcontrollerunit (MCU) which runs at 20MHz. The Mikrokopter boards come with the 50HzMurata ENC-03 analogue gyroscopes and a custom made magnetometer MK3Magboard Mikrokopter Team [2015].

Page 37: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.3 Avionics Systems 15

2.3.0.2 Paparazzi

The Paparazzi is a set of completely open-source hardware and software avionicsprojects. It has a variety of STM32 MCU boards. For example STM32F1 based(Lisa/L, Lisa/M v1.0, Lisa/M v2.0, Lisa/S), STM32F4 (Krooz and KroozSd, Apogee),LinAm V4 and the LPC2148 based boards PaparazziUAV Team [2015].

2.3.0.3 AutoQuad

Though the AutoQuad avionics board has always been closed-source, the flightcontrol software has always been open-source. The flight control board uses theSTM32F407 32bit Cortex M4 microcontroller with 1MB flash. The avionics boarduses the uBlox LEA-6T GPS which is the same as the 3DR GPS used on PX4 andPixhawk avionics systems. The AutoQuad board uses HMC6042 and HMC1041Zmagnetometers, the IDG500 and ISZ500 gyroscopes and the ADXL325 accelerometerand an MP3H6115A pressure sensor. Similar to Pixhawk, the avionics board has 14PWM outputs AutoQuad Team [2015].

2.3.0.4 PX4 and Pixhawk

The PX4 and Pixhawk are the most common open-source flight control boards inSeptember of 2015. This is because the PX4 an open-hardware and software projecthas attracted interests from many developers and and companies (for example 3DRIRIS) in the development of open-source aerial vehicles. This is due mainly to themodular architecture of the PX4 which is built on the NuttX real-time operating sys-tem. This has greatly simplified and reduced the difficulty of adding support fornew sensors, peripherals, expansion modules and the development of new theoriesin state estimation and control. Both the PX4 and Pixhawk use a micro-SD card forhigh-rate (up to 150Hz) data logging and data storage for custom applications sim-ilar to Quanser Qball. Both the PX4 and Pixhawk autopilots use the MAVLink pro-tocol which provides direct integration with existing ground control systems such asQGroundControl and APM Mission Planner. The difference between the PX4 and thePixhawk is that the Pixhawk is a combination of the PX4 flight management unit andthe input/output boards. Another difference is that the PX4 has the STM32F405RGT6while the Pixhawk has the more superior STM32F427 MCU Computer Vision andGeometry Lab [2015].

1HobbyKing [2015]2[Computer Vision and Geometry Lab, 2015]3[Mikrokopter Team, 2015]4PaparazziUAV Team [2015]5AutoQuad Team [2015]6[MYRCMART, 2015]

Page 38: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

16 Literature Review

Autopilot

Dim

ensionsW

eight(g)

ProcessorA

ccelerometer

Gyroscope

Magnetom

eterB

arometer

KK

Multicopter 1

50.5x

50.521

ATm

ega644M

PU6050

MPU

6050-

-PX

42

36×50

-STM

32F405RG

T6M

PU6000

MPU

6000H

MC

5883LM

S5611PIX

Haw

k2

-STM

32F427M

PU6000

MPU

6000H

MC

5883LM

S5611M

ikrokopter 350×

5026.5

ATm

ega644LIS331D

LHM

urataEN

C-03

MK

3Mag

MPX

4115APaparazzi 4

50×60

-STM

32F405RG

T6M

PU6050

MPU

6050H

MC

5883M

S5611A

utoQuad

Q6

545×

45-

STM32F407

AD

XL325

IDG

500H

MC

6042/1041ZM

P3H6115A

APM

2.66

70.6×45

50A

Tmega2560

MPU

6000M

PU6000

HM

C5983

MS5611

Table2.2:O

pen-sourceavionics/flight

controlboards.

Page 39: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.4 Motor-Rotor Control 17

2.4 Motor-Rotor Control

The fact that quadrotors do not have swashplate mechanisms, the differential thrust(by implication rotor speed) produced by individual rotors is regulated to achievecontrol of the vehicle. This combined with the required size of the vehicles rulesout the use of chemical fuels for propulsion and hence requires electrical propulsionunits. Furthermore, the size implies that they can only be fitted with battery sourceswhich provide direct current and thus only a direct current motor can be used tooperate the propellers.

Electric motors operate on Faraday’s law of electromagnetic induction whichstates that the electromotive force (emf) induced in an inductor coil is directly propor-tional to the rate of change of the flux linkage. As such, to create an emf, one needs arotating coil (inductor) in a magnetic field. Faraday’s law lead to the development ofthe direct current (DC) motor. Stepper, brushed and brushless direct current motorsare the most common types of DC motors. The simplest form of DC motors, thebrushed DC motor was designed in the late 1800s. As the name implies brushed DCmotors operate from a direct current power supply. The most common brushed DCmotors consist of an armature or rotor made out of an electromagnetic material, acommutator which provides physical contact to the brushes and a permanent magnetas shown in Figure 2.4(a).

Unlike brushed DC motors, brushless direct current (BLDC) motors as the nameimplies do not use brushes. They are also called permanent magnet DC Synchronousmotors as the permanent magnets are wrapped around the perimeter of the rotor ina cross pattern. In a brushless DC motor, the winding sits in the stationary part of themotor thus increasing their lifespan compared to brushed motors. Because of theirbetter characteristics and superior performance to brushed DC motors, brushless DCmotors have rapidly gained popularity. In addition, brushless DC motors providefeedback on the position of the motor poles and therefore rotational speed of themotor-rotor system. The most common rotor speed sensors used on brushless DCmotors are the Hall Effect sensors which give direct measurements of rotor speed.However for small scale quadrotors, indirect methods which rely on the detectionof the zero crossings of the the motor phases are popular given that no additionalsensors are required. Both rotor speed sensing methods ensure that with BLDCmotors, precise rotational speed control of the motor is possible. This is why BLDCmotors are the most common electric motors in the quadrotor community. However,BLDC motors require complex and expensive electronics known as electronic speedcontrollers (ESC) that converts the DC voltage into three phase voltages.

A stepper motor is a special case of a variable reluctance motor or a permanentmagnet brushless DC motor that can handle large inertial loads and is used to achieveprecise and accurate angular rotation/position of the load. Brushed, brushless andstepper direct current motors are shown in Figure 2.4.

Page 40: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

18 Literature Review

(a) DC Motors1,2.

(b) BLDC Motors3.

(c) Stepper Motors3.

Figure 2.4: Types of DC Motors.

Page 41: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.4 Motor-Rotor Control 19

0 60 120 180 240 300 360 0

Figure 2.5: BLDC motor and ESC MOSFET drive mechanism.

2.4.1 Theory of BLDC

Consider the three phases of a brushless direct current (BLDC) motor shown in theschematic diagram of Figure 2.5 with the coils arranged in a star configuration. Ap-plying Kirchoff’s voltage law to each of the three phases,

va

vbvc

=

Ra 0 00 Rb 00 0 Rb

ia

ibic

+

ddt

La 0 00 Lb 00 0 Lb

ia

ibic

+

ea

ebec

,

where va, vb, vc are the phase-winding voltages, the back-emf ea, eb, ec, the coil resis-tances and inductances are Ra, Rb, Rc and La, Lb, Lc respectively Fang et al. [2013]. IfKe is the back-emf constant, then the back-emf in the individual coils is defined by

ea = Keφ(θ)v,

eb = Keφ

(θ − 2π

3

)v,

ec = Keφ

(θ +

3

)v,

where θ is the rotor angular position, v is the rotor speed and φ(.) is the trapezoidalwaveform of the back-emf.

1http://zeva.com.au/Tech/Motors/2http://www.1001-home-efficiency-tips.com/electric_cars.html3http://www.digikey.com/en/articles/techzone/2014/mar/smaller-smoother-saving-energy-power

-and-sensing-advances-for-better-motor-control4http://www.mouser.com/applications/stepper-motors-smart-drivers/

Page 42: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

20 Literature Review

If Kq is the back-emf torque constant, then the torque in the coils is given by

τa = Kqφ(θ)ia, (2.1)

τb = Kqφ

(θ − 2π

3

)ib, (2.2)

τc = Kqφ

(θ +

3

)ic, (2.3)

τ = τa + τb + τc, (2.4)

where τ is the total/resultant torque and based on the definitions for the individualback-emf, it is given by

τ =eaia + ebib + ecic

v. (2.5)

For robotic applications using small, cheap open-source electronics, measure-ments of phase currents, voltages and back-emf is still a hardware problem thatremains to be solved based on technologies as at September, 2015. From the opera-tional principle of a BLDC, the phases are such that at any instance in time, two ofthe phases are on, while the third is off as shown in Figure 2.5. Hence the averagevoltage is a constant so too is the average current. This ensures that on average, fora constant rotor speed, the instantaneous voltage supplied, and the instantaneouscurrent is a constant. As shall be shown later, there are emerging ESCs that canmeasure this instantaneous voltage and electric current through the electronic speedcontroller and motor system. Hence the individual resistances and inductances ofthe BLDC motor can be combined into a single resistance and inductance respec-tively. This simplified BLDC motor model which is in fact a DC motor model alongwith the battery’s internal circuit model (Rb, ib, Vbat) is shown in Figure 2.6. ApplyingKirchoff’s voltage law to the BLDC circuit Franklin et al. [1994]

va = Kev + iaRa + Ladia

dt, (2.6)

with a current to torque model given by

τ = Kqia. (2.7)

Applying Newton’s second law of motion to the rotor disc as well as the motorshaft shown in Figure 2.6,

Irv = τ − τf − τa, (2.8)

where τa is the viscous damping torque, Ir is the rotor moment of inertia, τ is theshaft mechanical torque and τf is the shaft static friction torque which for smallBLDC motors is negligible.

Page 43: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.4 Motor-Rotor Control 21

Figure 2.6: Simplified BLDC model along with battery’s internal circuit model.

Table 2.3: BLDC motor specifications.Motor Weight (g) Thrust (g) Cost (AUD) Kv Max cur. (A)

Turnigy D2836/91 70 850 18.61 950 23.2NTM 28-261 57 1050 21.56 1100 20NTM 28-361 89 1480 22.55 1000 30

RE352 340 2800 423.15 491 40AXI Gold 2217/203 70.87 1400 99 840 18Sunnysky X2207S4 34 850 25.26 2100 18

Roxxy 2827-355 69 820 71.18 760 10

2.4.2 BLDC motors

Based on (2.5), the rotational speed and the torque required are very important inthe selection of a BLDC motor and dictate the so called Kv rating. The Kv ratingof a motor which is used in the comparison of motors and is specified by motormanufacturers is defined by the relation v = Kvva. So for a fixed motor voltage,given that they are specified based on power (torque and rotor speed), larger andheavier propellers require more torque and therefore require motors with low Kv

rating. For aggressive quadrotors which require fast response in rotor speed andtherefore higher RPM, require high Kv motor. It should also be noted that for a fixedoperational voltage, the bigger the motor, the lower its Kv rating. Another factor inmotor selection is the number of poles. Increasing the number of poles in a motorincreases the amount of torque it can produce at the cost of reducing the maximumpossible speed. Furthermore, the motor operational voltage influences its physicalsize. Larger torque means larger motors. Table 2.3 contains a list of possible motorsthat fit within this category as of 17th September, 2015. These most usually have 14poles.

It should be noted that the Roxxy 2827-35 is specially designed for the Mikrokopter

1[HobbyKing, 2015]2[Maxon Motor, 2015]3[Hobby Express, 2015]4[Bang good.com, 2015]5Altigator [2015]

Page 44: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

22 Literature Review

quadrotor electronic speed controller, that is MK ESC. Despite the existence of manyBLDC motors that fit the specification at a reasonable price, the problem is theircontinued availability in the market. This is usually the case for the majority ofHobbyking products.

2.4.3 Electronic speed controllers

An electronic speed controller (ESC) as the name implies is an electronic circuit de-signed to control the rotational speed, direction of rotation or dynamic braking ofan electric motor especially a BLDC motor. ESCs are usually rated based on themaximum continuous current they can handle. Generally, the more current they canhandle, the bigger and heavier they are. Most ESCs also come with a battery elim-inator circuit (BEC) which removes electrical noise from the battery and provideslower voltage and power to the servos and remote control (RC) receiver and sec-ondary hardware such as cameras and transmitters thereby eliminating the need fora second battery.

An electronic speed controller (ESC) is shown in Figure 2.7. In its basic form, anESC is composed of a control system, PWM signal generator and a 3-phase powerinverter. Electronic speed controllers also have a power supply unit which stepsdown the voltage to 3.3/5V for the internal electronics components such as the mi-crocontroller unit (MCU). The microcontroller which should come with in systemprogramming (ISP) headers in its simplest form has pins for MISO (master in slaveout), MOSI (slave in master out), SCK (serial clock), GND (common ground), VCC(target power) and RESET (target reset) pins. MCUs also contain a reference inputvoltage which for STM32 based microcontrollers is 3.3V. There is also a power deliv-ery stage component which contains a set of MOSFETs (metal oxide semiconductorfield-effect transistor). These are usually three sets (depending on whether high andlow side MOSFET setup is used) and are used to drive the voltages for each of thethree phases of the BLDC motor. There is a back-emf conditioning circuit that en-sures that the voltage coming from the motors (high frequency noise with spikes)is reduced and is thus fed into the MCU. Each MOSFET should be considered asa combination of a MOSFET along with a field-effect transistor (FET) driver whosepurpose is to ensure that the gate to source and drain to source voltages at the MOS-FET are constants. In the selection of MOSFETs, it is important to choose MOSFETswith very high source-to-drain voltage and very high continuous current.

ESCs communicate externally using pulse position modulation (PPM) of a re-mote controlled receiver (RC), pulse width modulation (PWM), inter-integrated cir-cuit (I2C), universal asynchronous receiver/transmitter (UART) and controller areanetwork (CAN). The choice of the mode of communication depends on the chosenflight controller board and application of the final quadrotor vehicle.

Page 45: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.4 Motor-Rotor Control 23

Figure 2.7: Simplified BLDC electronic speed controller with BLDC motor.

2.4.4 Sensors on electronic speed controllers

Whether to do vector or field-oriented control (FOC), torque or closed-loop rotorspeed control, an ESC requires feedback from the BLDC motor in order to achieveprecise control of the rotor. The MCU which contains the estimation and controlalgorithms needs some means of determining the rotor’s orientation/position (rel-ative to the stator coils). For quadrotors, this is done by determining the back-emfinduced on the stator windings by the permanent magnet rotor, a method referredto as sensor-less control. During operation of the rotor, only two phases of the motorare conducting. Sensing the back-emf of the non-conducting phase tells us the posi-tion of the rotor. At low rotor speeds, the sensed back-emf has a very low signal tonoise ratio making it difficult to do zero crossings detection at low rotor speeds.

To measure current, a shunt resistor is required. Many ESCs provide measure-ments of the total current through the ESC and motor and the bus voltage. Thecurrent shunt resistors are usually used as an overload current sensor and the mea-sured voltage is usually never used. As such not much interest has been placed onthe accuracy of these measurements. Given that the simplified model requires onlythe total current, a single shunt resistor on the main bus can be used. Figure 2.8shows a phase current measurement at 20kHz, the phase voltage and the averagetotal current. In Chapter 3, with the ESC measuring current, the 1kHz measurementcan happen when the PWM is on or off thus representing one of sources of noise inthe current measurements.

In order to prevent overcurrent, the PWM step setpoint is implemented as a rampinput. This is commonly referred to as slew rate in the community. It should be notedthat the vast majority of cheap or generic ESCs do not have any of these sensors andas such operate in PWM open-loop control mode.

Page 46: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

24 Literature Review

Figure 2.8: Average measured current, phase current and voltage at 20kH.

Table 2.4: Some ESCs with current sensing.ESC MCU Weight (g) Max Curr. (A) Comms Ports CostUltraESC1 ATmega32U4 < 100 20 I2C, UART e30PX4ESC2 STM32F446 80+ CANBus, UART e100MK ESC 2.03 ATmega168 5.2 40 I2C, UART e55MK ESC 3.03 ATmega32P 15.7 60 I2C, PPM, UART e100ESC32v24 STM32F103 7.2 20 UART,I2C,CANBus e39ESC32v34 STM32F303CC 7.2 40 UART,I2C,CANBus e60VESC5 STM32F405RGT6 32g 50 and 240 I2C,UART,CANBus US $110

2.4.5 Summary of commercial off-the-shelf ESCs

For a quadrotor that weighs between 1 to 2kg, the most appropriate source of en-ergy is a 2− 5S lithium polymer (LiPo) battery and thus requires electronic speedcontrollers that can handle up to 20A maximum current with operational temper-atures ranging from −6 to 85C and a printed circuit board (PCB) of dimensionsof 35 × 35mm. A summary of some of the current and emerging ESCs that meetthese specifications along with the ability to measure current as of September 2015are presented in Table 2.4. Some of these ESCs are barebone (for example all ver-sions of Mikrokopter ESC and ESC32) while others use operating systems such asChibiOS/RT (for example PX4ESC, VESC). Availability as well as available additionalmemory is a distinguishing factor between these ESCs and is a key requirement forhigh-performance motor-rotor control of open-source quadrotors. As will be shownin Chapter 5 current sensing is crucial to the aerodynamic power based thrust mod-elling scheme proposed in the thesis. Hence, ESC32v2 based on its availability andopen-source software will be used as the preferred electronic speed controller.

1[Flyduino, 2015]2[Computer Vision and Geometry Lab, 2015]3[Altigator, 2015]4[Autoquad Team, 2015]5[Vedder, 2015]

Page 47: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.5 Quadrotor Modelling 25

In addition to Table 2.4, there are hundreds of electronic speed controllers whichcost under $10 that can only do PWM open-loop control and have been flown onquadrotors. The majority of these ESCs are based on the Simon K firmware Hob-byKing [2015] which is written entirely in assembly language for ATMEL, SiLabsand Intel 8051 MCUs. There are also a number of emerging open-source firmwareand hardware ESCs that can do closed-loop RPM control as well as FOC or vectorcontrol, for example, THIEMAR S2740VC10 indicating that the design of high gradeelectronic speed controllers is now a hot research topic.

2.5 Quadrotor Modelling

There has been extensive work on modelling of quadrotors since the late 1990’sZhang et al. [2014]. One outcome of these models is a static model for thrust androtor torque expressed as the square of rotor speed. This model holds for near hover-ing conditions. Over the years, many shortcomings of this static free air model havebeen observed especially by those performing aggressive manoeuvres Mellinger andKumar [2011]; Lupashin et al. [2010].

The majority of the literature used by roboticists on aerodynamics for quadrotorshave been those developed by helicopter aerodynamicists Leishman [2002]; Prouty[1995]. From a robotic viewpoint, many of the parameters in the theories are immea-surable and therefore not available as such cannot be used for control of such com-putationally and hardware constrained platforms. In addition, the non-linear scalingof the forces, blade geometries and disc loading are different between quadrotorsand full-sized helicopters. Furthermore, quadrotors are designed based on simplic-ity, ease of maintenance and cost. For these reasons, the majority of quadrotors havefixed pitched blades as opposed to the variable pitch and flapping hinges of the ro-tor blades typical of helicopters. An example of a helicopter rotor mechanism witha Bell-Hiller flybar and swashplates mechanism for controlling cyclic and collectivepitch is shown in Figure 2.9. This shows the level of complexity involved in design-ing variable pitch propellers and thus are require high maintenance and are prone tofailure.

Kumar and Michael [2012a] pointed out the difficult in modelling unmannedaerial vehicles (UAVs) with high degrees of precision because of the complexity inmodelling drag, the interaction between rotor blades and air, propeller flexibility andother effects. For such vehicles, small changes in aerodynamic conditions around therotors can have significant effects on the vehicle. The following subsections willdiscuss the current literature on modelling and control of quadrotors.

2.5.1 Rigid body dynamic model

Before presenting the equations of motion for a quadrotor, the following assumptionsare necessary:

10http://thiemar.com/downloads/S2740VC.pdf

Page 48: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

26 Literature Review

Figure 2.9: A helicopter swashplate rotor mechanism .

1. The quadrotor is rigid and symmetrical about the vertical axis Bouadi et al.[2007].

2. The centre of gravity of the quadrotor is the origin of the body-fixed frame Bas suggested by Pounds Pounds [2007].

Consider the quadrotor shown in Figure 2.10 which has two frames of references:the inertial frame A fixed on the earth and a body-fixed frame B attached to thequadrotor. The mass of the vehicle is m, ~ζ ∈ R3 is the position of the vehicle, ~v ∈ R3

is the velocity in inertial frame, g is acceleration due to gravity T = ∑4i=1 Ti is the total

or heave force, ~τ ∈ R3 is the total torque on the vehicle, R ∈ SO(3) is the attitude ofthe vehicle in B and ~Ω ∈ R3 is the angular velocity of the vehicle in inertial frame.Applying either Newton’s 2nd law of motion Pounds et al. [2006]; Hamel et al. [2002];Bouadi et al. [2007] or Euler-Lagrange equation with generalised forces Castillo et al.[2004b]; Chovancová et al. [2014], the rigid body equations of motion for a quadrotorin A are given by

~ζ = ~v, (2.9a)

m~v = mg~e3 − TR~e3, (2.9b)

R = R~Ω×, (2.9c)

I~Ω = −~Ω×I~Ω + Ga(~Ω) +~τ, (2.9d)

~e1,~e2,~e3 are the unit vectors in x, y and z directions, ~Ω× ∈ R3×3 is the skew symmetricmatrix. It is such that ~Ω×~w = ~Ω× ~w for all ~w ∈ R3. The gyroscopic effect Ga(~Ω) in(2.9d) of the rotors is given by

Ga(~Ω) := −4

∑j=1

(−1)jviIr(~Ω×~e3), (2.10)

where vj is the angular velocity of rotor i, Ir ∈ R is the moment of inertia of a rotorblade and the factor (−1)j accounts for the direction of rotation of the given rotor. In

Page 49: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.5 Quadrotor Modelling 27

Figure 2.10: Free body diagram of a quadrotor.

summary, the state of a quadrotor vehicle is given by x =(~ζ, ~ζ, ~Ω, R

)>.

2.5.2 Drag force model

The effect of drag has either been ignored or given less attention. There has been alinear model proposed in Derafa et al. [2006] to account for the variation of a singledrag force (translational drag) with linear velocity.

~D = −KD~V,

where the drag force is ~D ∈ R3 with ~D>~e3 = 0, the body-fixed frame velocity~V ∈ B ∈ R3 and KD ∈ R3×3 is a diagonal matrix with its first two diagonalelements greater than zero and the third is zero. The authors however failed to lookat the other types of drag forces that exist and their effects on the vehicle at differenttranslational velocities. Secondary aerodynamic effects of quadrotors are well knownin the helicopter literature. One of these effects is blade flapping. Blade flapping hasbeen extensively studied in the literature Mahony et al. [2012]; Pounds and Mahony[2004]; Prouty [1995]. While it has been considered as an angle in the helicopterliterature, it has been modelled as a drag force in quadrotor research. The flappingequations derived can be lumped into a single model and is given by Huang et al.[2009]; Waslander and Wang [2009]

~Dβ = K f ~V,

where ~Dβ ∈ R3 such that ~D>β~e3 = 0 is the flapping drag and K f ∈ R3×3 is a positivediagonal matrix.

The significance of blade flapping and induced drag cannot be underestimated

Page 50: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

28 Literature Review

given that feedforward terms have been used to compensate for their effects in doingaggressive manoeuvres Huang et al. [2009]. This significance was further empha-sised by Omari et. al. Omari et al. [2013] who showed that without blade flappingand induced drag, the integral term in a PID position controller will have a deepsaturation leading to unwanted control outcomes.

2.5.3 Rotor blade modelling

In recent years, there has been an increased interest within the robotics communityin understanding the aerodynamics of quadrotors to enhance modelling and controlof such platforms. The only available references are those written for helicopters byaerodynamicists. Some of these references include Bramwell et al. [2001]; Leishman[2002]; Prouty [1995] and contain theories developed for aerodynamicists and heli-copter performance analysts. There are several methods for modelling aerodynamicforces and torque on rotor blades. These methods include momentum theory, bladeelement theory, Prandtl Lifting Line theory, Lifting surface theory and vortex latticemethods. The Lifting line theory models the rotor as a single bound vortex linewhich is located at the quarter chord position with an associated shed vortex sheet.By placing a series of “lifting” vortex lines at several chord stations, the lifting linetheory was modified to the lifting surface theory making implicit functions for forcesand torques not achievable D. Auld.

By modelling the rotor as a set of lifting panels with each panel containing a singlehorse-shoe vortex, a bound vortex located at quarter chord position with two trailingvortex lines shed from each end is produced. This modelling approach is referred toas the Vortex Lattice Method. The Lifting Line theory and Lifting Surface theory andVortex Lattice Method are more modern methods that have been developed to obtainbetter models for aerodynamic forces and torque on wings and rotors. Unfortunately,these models require significant computational power to predict forces and torque forspecific flight conditions. This is why they have yet to gain any interests in quadrotorapplication.

2.5.4 Thrust force model and control

The classical model for thrust is based on a static free air model that relates thrustT to rotor speed v. It is given by Mahony et al. [2012]; Martin and Salaun [2010];Mellinger et al. [2012]; Pounds [2007]

T = CTv2,

where CT is an aerodynamic thrust constant obtained from static free air tests.Static thrust models have proven effective in a wide range of applications, how-

ever, they display significant errors in the presence of gusts or when the rotor ismoving. The strongest effects are due to vertical motion of the rotor or updrafts anddowndrafts, although lateral motion or sideways gusts also cause small variationsin rotor thrust. Using computational fluid dynamics tools, Luo et al. [2015] showed

Page 51: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.5 Quadrotor Modelling 29

that for lateral flight with velocities up to 10m/s, the maximum power saved associ-ated with the additional translational lift is only 6%. Consequently, a constant powerflight will result in less that 6% gain in translational lift. The question of providingeffective control for multirotors in the presence of wind gusts, or during fast and ag-gressive manoeuvres Kumar and Michael [2012b]; Shen et al. [2013]; Waslander andWang [2009], or during large displacement of air Martin and Salaun [2010] has beenraised by a number of recent papers. One approach that has proven to be highly suc-cessful for repetitive high performance aggressive manoeuvres is to use time varyingparameter adaptation and iterative learning Lupashin et al. [2010]; Mellinger et al.[2012]. The resulting controller provides a learnt feedforward compensation for thehighly non-linear aerodynamic conditions encountered by each rotor during a givenknown manoeuvre for which training has been undertaken. In the absence of learn-ing, then it is necessary to either estimate or measure the actual thrust generated bythe rotor. Possible approaches include using strain gauges, or directly measuring theairspeed using pitot tubes Yeo et al. [2015]; Arain and Kendoul [2014] or estimation ofthe aerodynamic state using inertial measurement units (IMUs) Allibert et al. [2014];Omari et al. [2013]. Direct force measurements using strain gauges suffer from highfrequency and high noise to signal ratio JR3 Team [2014]. Direct airspeed measure-ments suffer from accuracy and slow response of pitot tubes. Arain et. al. Arain andKendoul [2014] used a single pitot tube to measure the forward velocity of the vehi-cle while Yeo et. al. Yeo et al. [2015] used four pitot tubes mounted underneath eachrotor to measure the axial velocities through the rotors. From results in Arain andKendoul [2014], low airspeed wind estimation for quadrotors is a challenge and theairspeed measurements are unreliable for velocities under 1m/s. The authors alsoobtained errors of up to 2m/s for ground truth forward velocity of 6m/s. Yeo et. al.Yeo et al. [2015] used his wind estimates in designing safe trajectories, though errorsof 0.4m/s were observed for velocity measurements of 1.5m/s. More importantly,typical pitot tubes display response times of 100ms which makes them unsuitablefor high performance control of quadrotors.

Shen et. al. Shen et al. [2013] used a Kalman filter to estimate thrust force in thepresence of external disturbances arising from their indoor flight experiments. The50Hz limitation in the communication between the flight control board and electronicspeed controllers typical in quadrotor systems limits the performance of such an ap-proach. Another approach that has been proposed is to use analytic implicit modelsdeveloped from computational fluid dynamics (CFD) Hwang et al. [2014]; Luo et al.[2015] to estimate thrust. These methods also consider the effect of wake interferenceduring translational motion of air. The computational load of such an approach isinfeasible for small scale aerial robotic systems.

To obtain a good fit for thrust to rotor speed, the static free air thrust to rotorspeed model (T = CTv2) has been modified. This modification was necessary toobtain a good R2 goodness of fit between rotor speed and thrust. The modifiedstate-of-the-art thrust to RPM model is used in the v controller on all closed-loopcontrol electronic speed controllers. For example, ESC32v2 Autoquad Team [2015].

Page 52: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

30 Literature Review

The model is given byT = CT0v + CTv2, (2.11)

where CTO is an aerodynamic constant at free air conditions. With this model, thedesired rotor speed vd is determined and regulated with a simple feedforward andproportional integral derivative (PID) feedback controller

va = v f f (vd)− Kp (v−vd)− Ki

∫ t

0(v−vd)dt, (2.12)

where Kp, Ki > 0 are feedback gains, v f f (vd) is the feedforward voltage and va is themotor voltage specified as a fraction of the measured bus voltage.

In Orsag and Bogdan [2009, 2012]; Bristeau et al. [2009], the authors applied mo-mentum theory and blade element theory to incorporate translational velocities inthe determination of thrust. The major drawback of these works is that they requireaerodynamic parameters (for example inflow ratios, induced velocity and angle of at-tack) which are difficult to measure or estimate during flight for the low-cost bladesthat are used on multirotor aerial vehicles.

A modified version of the static thrust model that relates rotor speed to batteryvoltage was proposed in 2013 Tang and Li [2013]. In the same year, Podhradskyet. al. Podhradsky et al. [2013] proposed a similar battery voltage based modelfor altitude control without current and RPM feedback but included a model for thebattery’s state of charge. In all these voltage based thrust models, the models failed toincorporate translational and axial velocities and therefore they algebraically reduceto the static free air thrust model (2.11). Where in this case the coefficients CTO andCT are now expressed as electrical constants. Furthermore, these models are onlyapplicable to PWM open-loop ESC control which suffers from battery voltage decay.In addition to using battery voltage, Staub and Franchi [2015] considered the useof an IMU. The state of charge and the rate of discharge vary from one battery toanother. This is illustrated in Figure 2.11 where the voltages of four different 4S LiPobatteries awere measured during hovering flights in static free air. It should be notedthat the voltage drop of battery 4 was more significant than the other three batteriesdue to its age.

The problem of producing an accurate thrust model has also been consideredin marine thrusters. In the case, where only axial flow is present, accurate thrustcomputation/estimation and control is a well studied problem for such propulsionsystems Bachmayer et al. [2000]; Healey et al. [1995]; Pivano et al. [2009]. In Healeyet. al. Healey et al. [1995], a model that uses the electro-mechanical dynamics ofthe motor along with propeller hydrodynamics and thin-foil theory were used toproduce a two-state propulsion model for marine thrusters. Bachmayer et. al. Bach-mayer et al. [2000] further developed this model to account for positive and negativeflow velocities and proposed a method for generating lift and drag curves to achievemore accurate control. Sørensen et. al. Sørensen and Smogeli [2009] proposed a con-troller that does friction compensation and torque limiting through a minimisationalgorithm that is unfortunately computationally infeasible in real-time on existing

Page 53: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.6 State Estimation for Quadrotors 31

0 100 200 300 400 500 60014

14.5

15

15.5

16

16.5

17

Time [s]

Vo

lta

ge

[V

]

Measured Voltage

1

2

3

4

Figure 2.11: Voltage changes of 4 different batteries during hover.

embedded hardware.

2.6 State Estimation for Quadrotors

Ignoring the propulsion system, estimators for quadrotors can be grouped into atti-tude, velocity and position and the more recent combined estimation for attitude andlinear velocity. The most common of these is the attitude observer of which there aremany different types including Kalman filter based which are the most popular onthe majority of open-source quadrotors described in Section 2.2.2 Lim et al. [2012], theLeft-Invariant Extended Kalman Filter (LIEKF) Bonnabel [2007] and the non-linearcomplementary filters Mahony et al. [2008]. Unlike the extended Kalman filters,complementary filters take into account the non-linear model of the vehicle. The ma-jor disadvantage of doing attitude only estimation is that it requires additional filtersfor velocity and/or position. In 2015 Khosravian et al. [2015a,b], developed recursiveattitude estimation for vector measurements with time delay. They assumed the ex-istence of an observer and used it along with a predictor to compensate for delays insensor measurements.

Hence in recent years people have proposed combining the attitude and velocityin a more efficient estimation scheme referred to as velocity aided attitude estima-tion Allibert et al. [2014]. Bonnabel Bonnabel et al. [2009] proposed an invariantextended Kalman filter (EKF) for velocity and attitude estimation in quaternions.Abeywardena and Leishman used an Euler angle based combined roll and pitchand translational velocities with an extended Kalman filter (EKF) Abeywardena et al.

Page 54: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

32 Literature Review

[2013]; Leishman et al. [2014]. However, Leishman Leishman et al. [2014] showedthat a drag-force linear fixed-gain (DFFG) filter is the most practical for onboardimplementation.

Similar to the other types of observers, velocity and position filters are usuallyextended Kalman filter (EKF) based Briod et al. [2013]; Grzonka et al. [2012] thoughsome authors have proposed the use of complementary filters Sa and Corke [2012a],Cheviron et al. [2007]. These observers usually couple optical flow Briod et al. [2013]measurements or simultaneous localisation and mapping (SLAM) Grzonka et al.[2012] or vision sensors Cheviron et al. [2007] with onboard inertial sensors to doposition and velocity estimation. In Kingston and Beard [2004]; Khosravian et al.[2014], the authors considered the development of a velocity aided attitude estima-tion scheme with time delay. In Khosravian et al. [2014], the authors provide anon-linear velocity aided attitude estimation scheme for vehicles performing highacceleration manoeuvres with known constant delay in GPS measurements in anobserver-predictor scheme. This non-linear complementary filter approach is moreefficient than the EKF based approach of Kingston and Beard [2004] which is highlycomputationally intensive due to the propagation stages to deal with the delay com-pensation.

2.7 Disturbance Estimation

In order to improve the models of quadrotors, some of the associated aerodynamic ef-fects have been treated as disturbance to the vehicle dynamic model. Waslander andWang [2009] presented simulation results for estimation and control of a quadrotorin a wind field. Sydney et. al. Sydney et al. [2013] showed simulation results andalso used a controller to estimate the synthetic wind field. The proposed controlleruses a Bayesian estimator that uses GPS and pitot tube measurements. By assumingthat the gust has slow changing dynamics and by using the available IMU measure-ments, they proposed a wind estimation algorithm and expressed thrust and dragforces in terms of accelerometer measurements. Sydney et. al. Sydney et al. [2013]also used the Dryden model to model the wind field. Their approach uses model in-version a similar technique that was also used in 2015 by Tomic and Haddadin [2015]who was able to distinguish between aerodynamic and contact forces. Zarovy et al.[2010] showed that for small micro UAVs, the performance of a position controllerdegrades with wind despite using a PID controller. Their conclusion was based onstudying the effects of gust on small miro-UAVs. Escareño et al. [2013] proposed twotypes of controllers to estimate and control wind disturbances. The first controller, anadaptive controller was used to estimate slow time-varying gusts while the second asliding mode controller dealt with the fast components of the gust. Instead of doingsimulation like the others, Schiano et. al. Schiano et al. [2014] used a wind tunnel toshow the effect of wind on a quadrotor mounted on a bar.

Page 55: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.8 Quadrotor Control 33

2.8 Quadrotor Control

The three types of attitude representation: Euler angles, rotation matrices and quater-nions have been used for attitude representation on quadrotors. Of the three, Eulerangles are the most widely used. This is because they are very intuitive. However,they do suffer from gimbal lock and the estimation process is most often embeddedin a 3× 3 rotation matrix. With the rotation matrices, the gimbal lock problem isovercome. Though the computational and storage limitations of the 3× 3 matriceshas been a problem for 8bit ATmega MCUs, increasing computational power of themore recent STM32 microcontrollers implies that storage and computational require-ments can no longer be a limiting factor. The third representation, quaternions arethe standard representation in 3D graphic engines. Like rotation matrices, they donot suffer from the gimbal lock problem and require less computation and storage forthe four number representation. However, they suffer from the dual-cover problemwherein a set of Euler angles can have two representation Lim et al. [2012].

Quadrotor control has been done by dividing the control problem into variouslevels that depend on their response times. This process otherwise known as timescale separation allows for three levels within the hierarchy: high-level position ortrajectory, mid-level attitude control and low-level motor control Salazar-Cruz et al.[2005]; Hua et al. [2013]. The most commonly used controller for all levels is the pro-portional integral derivative (PID). This has been used along with iterative learningand direct feedback control in achieving the majority of the most impressive aggres-sive manoeuvres and trajectory tracking and control of quadrotors Lupashin andD’Andrea [2011]; Purwin and Andrea [2009].

In addition to PID, proportional derivative (PD) and linear quadratic (LQ) controlhave also been used for attitude stabilisation using Euler angle representation of theattitude of the vehicle (Castillo et al. [2004a]; Salazar-Cruz et al. [2005]; Erginer andAltug [2007]; Bouabdallah et al. [2004]; Mokhtari et al. [2004] and many more). Thisrepresentation does not account for the coupling that exists between the Euler angleswhich surfer from singularities and gimbal lock. To overcome this, Tayebi Tayebi andMcGilvray [2006] proposed the use of a quaternion based PD attitude controller thatis globally asymptotically stable. To prevent the double cover or winding problemassociated with quaternion representation, Mayhew et al. [2013] proposed a hybridsystems framework that kept a memory of the error quaternion. SO(3) based atti-tude controllers have also being used Lee et al. [2010] thus implying that all threerepresentations of attitude have been used.

Working on SO(3) and SE(3), Lee et al. [2010] developed a Lyapunov basednon-linear position controller that is based on a hierarchical structure. They showedexponential stability of the attitude and position error dynamics of their proposedgeometric controller. They defined an attitude error function and an angular velocityerror function that is a function of attitude error to ensure tracking of a specifiedtrajectory. The more impressive manoeuvres performed in Mellinger and Kumar[2011] used this controller. In addition to this feedback controller, the authors realisedthe need for feedforward terms in angular acceleration and feedback terms to cancel

Page 56: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

34 Literature Review

the rotational inertial terms associated with high performance precise tracking ortrajectories.

Backstepping approach has also been applied to trajectory tracking for quadrotorsMadani and Benallegue [2006]; Bouabdallah and Siegwart [2005]. Bouabdallah andSiegwart [2005] also proposed a sliding-mode controller though no advantages ofusing this controller over the standard PID controller was demonstrated.

Whether for position control or tracking a trajectory, model predictive control(MPC) has been employed on quadrotors. See for example Alexis et al. [2011] andMueller and D’Andrea [2013]. The majority of these works are based on separation ofthe translational and axial dynamics and then linearising and applying a linear MPC(LMPC) to the separate dynamics. For example Alexis et al. [2011] used piecewiseaffine (PWA) functions to represent the attitude dynamics and divided the MPCproblem into translational and rotational MPC receiving inputs from a high-leveltrajectory planning algorithm. With these linear models and incorporating stiction,Balderud and Wilson [2002] designed a linear MPC attitude controller for a toy heli-copter. Using gradient-descent approach, Kim et al. [2002] developed an online opti-misation algorithm for doing non-linear MPC on a discretised non-linear state modelfor a rotorcraft. From simulation results, they proved the developed algorithm canwork in real-time on two separate intel computers with one dedicated solely to theoptimisation. An extension of the learning based model predictive control (LMPC)Abbeel et al. [2010] work by Abbeel based on statistical machine learning and op-timal control theory was developed in 2012 by Bouffard Aswani et al. [2012]. Themodified algorithm uses a modified extended Kalman filter (EKF) to perform stateestimation and learning of the updated model parameters. The controller was shownto operate in known aerodynamic effects such as ground effect. They demonstratedthe learning controller on the quadrotor trying to catch a ball without the trajectoryknown apriori.

2.9 Trajectory Generation

From the non-linear quadrotor model presented in Section 2.5.1, the outputs of aquadrotor are differentially flat with outputs (x, y, z, ψ). This property is used inall of the trajectory planners or generators. Mellinger et al. [2012] used Legendrepolynomial functions incorporating obstacle avoidance to generate smooth and safetrajectories in 3D environments for a set of waypoints. The trajectory problem wassolved as an optimisation problem of the square on the rth derivative of the positionsubject to time and position constraints. Unlike Mellinger et al. [2012] which usedthe snap (4th derivative of position) of the trajectory, Achtelik et al. [2013] generatedtrajectories by optimising over the integral of the squared norm of the acceleration.

Hehn and D’Andrea [2012] developed planning trajectories on the jerk that is3rd derivative of position. The feasibility of the generated trajectory depends onthe computed angular velocity and linear acceleration which must lie within somespecified allowable bounds. The output time optimal trajectories are bang-singular

Page 57: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§2.10 Conclusion 35

with five regions.Mueller et al. [2013] generated multiple minimum jerk trajectories without con-

sideration of the dynamic constraints of quadrotors. They demonstrated their tra-jectory generating scheme by letting a quadrotor hit a ball with a racquet. Theirproposed scheme generates millions of trajectories and the trajectory that results inthe best way to hit the ball is chosen. From all these trajectory generators, one can seethe need for a trajectory generation scheme that can run in real-time on an embeddedhardware.

2.10 Conclusion

In order to do high performance control and have an open-source quadrotor platformthat can be used for hobby or research, the chapter has surveyed various open-sourceand commercial platforms that are in current use. The major advantages, hardwarecomponents and shortcomings of these platforms were outlined. The chapter alsosurveyed a selection of open-source avionics and electronic speed controller systems.From this survey and in order to overcome the limitations of current open-source andcommercial quadrotor platforms and in support of many of the theories that will bedeveloped in this thesis, the chosen avionics board is the PX4/Pixhawk and ESC32v2electronic speed controller.

In terms of quadrotor modelling, the chapter has presented the shortcomingsof the current static free air thrust model and the attempts made at improving it.These attempts do not fully account for changing aerodynamics such as gust andtranslational lift. The model for blade flapping which is considered as a drag forceand induced drag along with current state and disturbance estimation schemes forquadrotors are also presented. From this, one can see the need for an improvedquadrotor modelling scheme especially thrust force when the hover condition is vi-olated. Furthermore, the need for a new and efficient state estimation and controlscheme for quadrotors was also outlined.

Page 58: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

36 Literature Review

Page 59: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Chapter 3

Experimental Quadrotor Platforms

3.1 Introduction

This chapter presents the different hardware and software components of the open-source software and hardware that make up the quadrotor platforms developed dur-ing the thesis. The quadrotors consist of heavy lifting and high performance low-cost vehicles that are based entirely on commercial off-the-shelf (COTS) hobby gradehardware. These hardware were chosen given that they most often come with open-source software that have active community support. The fact that the quadrotorsare made out of COTS and open-source software and hardware implies that the de-veloped software are open-source and are made available to the hobby and academiccommunity using the version control software, git. Furthermore, the framework pre-sented in the chapter ensures that any of the hardware components for any of thedynamic levels can be replaced.

The chapter is made up of 9 sections which can be grouped into: quadrotor hard-ware, the Robot Operating System (ROS) based ground station and the open-sourcesoftware design. The first sections on the hardware components of the quadrotordescribe the various hardware of the developed quadrotors and how they commu-nicate as shown in Figure 2.1 and Figure 3.2. The commercial off-the-shelf (COTS)open-source hardware make it possible for the different observers and controllersdeveloped in subsequent chapters to be tuned to the performance limit of the hard-ware and thus make it possible for time-scale separation of the different dynamiclevels employed in Section 6.3. The COTS and open-source software and hardwarealso make it possible to develop quadrotors for different applications as shown inFigure 3.1.

The quadrotor hardware is made up of the open-source hardware and softwarePixhawk or PX4FMU/PX4IO avionics board, ESC32v2 electronic speed controllers(ESCs) and other hobby-grade components that are mainly from Hobbyking Hob-byKing [2015] and 3D Robotics (3DR) [Drone and UAV Technology, 2015]. The avion-ics board runs the attitude observers and controllers, the position and trajectory andvelocity controllers at different frequencies. The open-source software and closedhardware ESC32v2 electronic speed controller (ESC) runs the thrust controllers at1kHz. The ESCs receive desired thrust inputs at 50Hz from the avionics board via

37

Page 60: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

38 Experimental Quadrotor Platforms

(a) Black quadrotor. (b) Occular quadrotor. (c) HP quadrotor.

Figure 3.1: Three quadrotors developed during the thesis for different experiments.

Figure 3.2: Layout of the ground station and quadrotor hardware.

an inter-integrated circuit (I2C) bus. Using the same I2C bus, the ESCs send feed-back to the avionics board at 20Hz. This along with a proposed electrical dynamicsmodel to bridge the gap between the current brushless direct current (BLDC) motormodel and experimental results and a calibration procedure for the motor-rotor sys-tem parameters are covered in Section 3.4. The parameters identified will be key tothe development of the proposed thrust controller in Chapter 5. Other componentswhich include Hobbyking propellers, remote controller system, batteries and 3DRradio are also described. An overview of the major components of the AustralianNational University (ANU) quadrotor along with the ground station are shown inFigure 3.2.

A description of the software structure and publicly accessible repositories onthe local ANU gitlab software and Github of the different software developed aredescribed in Section 3.7. Finally, cost and weight analysis are carried out and acomparison to the current commercial products (3DR IRIS and Parrot AR. Drone)are also carried out to show superiority in terms of performance and cost of thedeveloped open-source quadrotor framework.

Page 61: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.2 Flight Control Board 39

3.2 Flight Control Board

The PX4 flight management unit (PX4FMU) and the PX4 input/output (PX4IO)are the primary avionics boards used on the quadrotor platforms developed. ThePX4FMU has an STM32F405RGT6 microcontroller unit (MCU) which has a 168MHzCortex M4F CPU with 198KB RAM and 1MB of flash. The PX4IO is the main in-put/output board of the PX4FMU/IO avionics stack. The PX4IO has a 24MHz Cor-tex M3 fail-safe controller with 8 PWM (pulse width modulation) servo outputs thatoperate between 50 and 400Hz, a Futaba S.Bus compatible receiver and a CPPM(combined pulse position modulation) pins. The board has 4 UARTs (universal asyn-chronous receiver/transmitter), 2 I2Cs (inter-integrated circuit), 1 SPI (serial periph-eral interface), 1 CAN (controller area network) interface and up to 8 GPIO (general-purpose input/output) pins. The IO board also has a 1-18V battery voltage sensorand regulator with a reverse polarity protection unit. The voltage regulator elimi-nates the need for a battery eliminator circuit (BEC) Computer Vision and GeometryLab [2015].

It should be noted that despite the PX4FMU/PX4IO boards being the primaryavionics boards, the Pixhawk which combines the FMU and IO boards into a singleboard is also used. Furthermore, the avionics algorithms developed can run on boththe PX4FMU/IO and Pixhawk hardware. For example, Figure 3.1 shows some ofthe quadrotor platforms developed. The battery damped inertial measurement unit(IMU) quadrotor Figure 3.1(a) and the high performance quadrotor in Figure 3.1(c)use PX4FMU/IO whereas the heavy lifting quadrotor in Figure 3.1(b) uses Pixhawk.This ensures that if the PX4FMU/PX4IO board production is discontinued, the Pix-hawk can be used. Furthermore, there are many variants of Pixhawk currently in themarket (for example HK Pilot32, PX4 Hawklite, RTF Hawk, Pixraptor) which impliesthat the boards will be in use for the next few years. The Pixhawk uses STM32F427and has a 168MHz Cortex M4F CPU with 256KB RAM and 2MB flash. It also has 5UART (one more than PX4FMU), 14 PWM/Servo outputs (8 with fail-safe and man-ual override, 6 auxiliary, high-power compatible) that operate between 20 and 400Hzand 2 CAN buses Computer Vision and Geometry Lab [2015]. The 20 to 400Hz PWMsignal generation imply they can work with a wide variety of electronic speed con-trollers. The many UART pins imply that multiple peripherals can be used thoughthe low computational memory indicates the need for computationally efficient al-gorithms if they are to achieve real-time success.

Remark 3.1. Though the Pixhawk seems superior to the PX4FMU/IO hardware stack, at thetime of starting the thesis, Pixhawk was still in development and not available in the market.

3.2.1 Sensors

The PX4FMU has an Invensense MPU6000 inertial measurement unit (IMU) whichhas a 3-axis accelerometer and a 3-axis gyroscope for measuring linear accelerationsand angular velocities respectively. The MPU6000 communicates with the microcon-troller unit (MCU) via SPI at a maximum rate of 1kHz (to be precise, 200Hz due to

Page 62: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

40 Experimental Quadrotor Platforms

Table 3.1: PX4FMU available sensors.Sensors MS5611-01BA03 HMC5883L MPU6000Measurements barometric pres-

sureEarth’s magneticfield (Magnetome-ter)

Linear accelera-tion and angularvelocity (IMU)

Range 1kPa to 120kPa ±8G ±2, 4, 8, 16g and±250, 500, 1000,2000/s

Resolution/ Accu-racy

1.2Pa 10mG

Rate 160 160 1kHzCommunication I2C, SPI I2C, SPI SPITemperatureRange

−40 to +85C −40 to +85C −40 to +85C

thread priorities and scheduling). The PX4FMU also has an MEAS MS5611 baromet-ric pressure sensor that can communicate with the MCU via I2C or SPI at the rateof 160Hz. The MS5611 pressure sensor measurements change under the influence ofthe lighting condition and are very sensitive to aerodynamic changes. This measuredbarometric pressure is then converted to altitude based on the mean sea level (MSL)pressure Computer Vision and Geometry Lab [2015].

The PX4 also has the Honeywell HMC5883L magnetometer. This sensor is asurface mounted multi-chip module that measures the magnetic field of the earth.It communicates at 160Hz to the MCU via I2C. It is used only in the attitude filterto determine the heading angle or the vehicle’s orientation in ~e1 with respect to themagnetic north pole.

In addition to the aforementioned sensors, Pixhawk has an STML3GD20H gyro-scope and an STMLSM303D accelerometer and magnetometer as redundant sensors.Both the PX4FMU and Pixhawk use a Micro-SD card for storage of the flight dataand commands for applications that should be run.

A summary of the specifications of the sensors on the PX4FMU primary avionicsboard are given in Tabe 3.1. It should be noted that there is significant degrada-tion of the sensors during flight. This is the main reason for the design shown inFigure 3.1(a).

3.2.2 Input output interface/hardware communication

As seen in the various components that constitute the quadrotor platforms developedand shown in Figure 2.1, the 4 electronic speed controllers (ESCs) communicate withthe avionics board via I2C (specifically I2C3). The four ESCs with addresses 1 to4 act as slaves to the avionics board which acts as master. The PX4 sends a thrustcommands at 50Hz as 8 or 11bit integer values to be regulated by the ESCs. TheESCs then do the thrust regulation and send back 2 16bit integers (filtered currentand rotor speed) to the PX4 or Pixhawk master.

Page 63: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.3 Electronic Speed Controller 41

Table 3.2: Serial devices and peripherals.UART/USART Device PeripheralUSART1 /dev/ttyS0 NuttX TerminalUSART2 /dev/ttyS1 3DR RadioUART5 /dev/ttyS2 uBlox GPSUART6 /dev/ttyS3 -

The radio receiver is connected to the combined pulse position modulation (CPPM)pins on the I/O board and receives RC CPPM signals (8 channels) at 50Hz. The uBlox3DR GPS module and 3DR radio are connected via UART pins on the PX4IO board.A list of the various serial devices along with what they do and UART/USART ad-dresses on the PX4FMU and Pixhawk are shown in Table 3.2.

3.3 Electronic Speed Controller

This hardware is used to implement the low-level thrust models and controllers inparticularly the current static free air model and the scheme and controller proposedin Chapter 5. From Chapter 2, it is clear that the most suitable brushless directcurrent (BLDC) motor electronic speed controller (ESC) for the proposed open-sourcequadrotors is the AutoQuad ESC32v2. ESC32v2 is an open-source firmware andclosed-source hardware ESC. The firmware is written entirely in C making use of theopen-source gcc cross compiler, crossbuild. The ESC is an all N-FET (negative fieldeffect transistor which has low resistance than P channel FETs since lower resistancehelps to reduce heat and increase efficiency) design and can support 2 up to 5S LiPo(2 to 5 cell lithium polymer) batteries. It has a current limiter which uses a shunt(5mΩ) resistor to measure current in order to ensure that the peak current is alwaysunder 20A. The ESC operational frequency is 1kHz and provides measurements ofbus voltage, rotor speed in revolutions per minute (RPM) and electric current. Theopen-source software consists of the onboard firmware and a ground calibrationsoftware that enables communication between the computer and ESC using binarymode operation of the ESC. The ground software is used for calibration of RPM(see (2.12)) and overcurrent protection using (2.6) and other calibration proceduresdescribed throughout the thesis.

The ESC uses the 32bit STM32F103103CB Cortex M3 core 72MHz maximum CPUspeed with 128kBytes of RAM and 20kBytes of SRAM. This microcontroller is oneof the medium-density performance line ST microcontrollers. It offers two 12bitADC sampling timers, three general purpose 16-bit timers and an additional PWMtimer. It has a 7 channel DMA (direct memory access) controller, and 2 I2Cs, SPI, 3USARTs and a CAN bus. The MCU operates between 2 and 3.6V power supply anda temperature range of −40 to +85C.

These features of the MCU enable the ESC hardware to have support for PWMinput, UART, I2C and CAN. The UART makes it possible for the ESC to be operatedthrough command line interface or binary mode via the provided ground calibration

Page 64: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

42 Experimental Quadrotor Platforms

(a) Front. (b) Back.

Figure 3.3: AutoQuad ESC32v2 hardware layout.

software. The ESC also has a Cortex SWD connector or JTAG pins for real-timedebugging. The output and JTAG pins as well as the shunt resistor are shown on thefront and back images of the ESC in Figure 3.3.

Remark 3.2. Towards the end of this research in late 2015, ESC32v3 had been trialled andit showed superior current sensing capabilities with the main loop running at up to 2kHzthat is twice the speed of ESC32v2 used in this research. However, it was not commerciallyavailable.

3.3.1 Voltage and rotor speed sensors

As pointed out in Section 2.4.4, the RPM sensor on ESC32v2 is based on the back-emf zero-crossing detection whereas the voltage uses a voltage divider circuit. Allmeasurements on the ESC are stored as 2 or 4 16bit floating-point numbers savedon the ADC SQR registers and the DMA controller transfers the stored data fromregisters to local variables.

3.3.1.1 RPM sensing

If n is the number of poles and F is the run RPM factor and n is the period of theADC crossings during the zero-crossing detection, then the measured rotor speed attime t is

v(t) =32768F

n,

where

F =240× 106

6n,

and p is the number of poles in the motor.

Page 65: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.3 Electronic Speed Controller 43

The v measurements are filtered using a low pass filter with a rise time of tr =3ms that is the estimated rotor speed at time t is

v(t) = 0.5v(t− 1) + 0.5v(t).

3.3.1.2 Voltage sensing

The STM32F103103CB microcontroller unit (MCU) uses a reference voltage of vre f =3.3V. Given that in the voltage divider sub-circuit for voltage sensing, the resistorsare Rtop = 10K, Rbot = 1.5K, then the resulting voltage scaling RvD is

RvD =10.0 + 1.5

1.5.

Multiplying this by the MCU’s reference voltage vre f yields the ADC scaling voltage

vADC = vre f RvD .

If the ADC voltage measurement in the DMA is vDMA, then the measured bus voltageis

v = vDMAvADC.

This measured voltage is used without any filtering throughout especially in deter-mining the voltage across the motor and the implementation of duty cycle.

3.3.2 Current sensing

Current sensing is one of the main stand outs of ESC32v2. The current sensingcomputation uses a 16bit ADC precision and a circuit with a high amplification gainof KRs = 50.9. If the measured current in the ADC register is I and Io f f set is themeasurement offset, then the measured current ia is given by

ia = ( I − Io f f set)KIADC . (3.1)

The ADC measurement to amps gain KIADC is given by

KIADC =

vre f

228

KRsRs

1000.0

,

where Rs = 0.51000 Ω is the shunt resistance. Thus the ADC to amps gain is KIADC =

483.03616× 10−9. It is a constant for all the ESCs. Clearly this is not true and as suchcalibration for this variable will be carried out in the next subsections. The ADC toamps offset Io f f set is the I at v = 0. This ensures that at v = 0, the measured currentia = 0 that is

Io f f set = I, v = 0.

Page 66: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

44 Experimental Quadrotor Platforms

Given the noise characteristics of I implies that this offset can be any value withinthe noise bandwidth of the ESC current measurements. ESCs with very bad noisecharacteristics give a wide variation of Io f f set and good ones very narrow Io f f set vari-ation. For two such ESCs, an Io f f set of 9.02× 106 to 9.10× 106 (a range of 0.08× 106)and 8.5× 106 to 9.5× 106 (a range of 1.0× 106) were obtained though the currentmeasured by an external ammeter showed a constant value throughout the experi-ments. This variation is mainly as a result of the low tolerance (≈ 10%)componentsthe ESCs are made out of. From (3.1), this can affect the actual measured currentia. In the next subsection, a method for isolating this problem by determining andsetting a constant Io f f set for every ESC will be outlined.

3.3.2.1 Current calibration

It is very important for the aerodynamic mechanical power model presented in thelater chapters of this thesis that at the same static condition, the same current ismeasured for the same RPM. This is a challenge given the low tolerance and poorqualities of the components used on the ESC. As has been stated, current sensing onthe ESC is designed for overcurrent protection.

In Chapter 5, it will be shown that the average RPM for flying is v ≈ 4500 at anaverage current of ia = 1.8A (See Figure 3.6). With regards to the controller developedin Section 5.2.2, a ±0.1A variation in current will result in a

(± 0.1

1.8 %)

in RPM. At suchhigh rotor speed, this corresponds to a significant variation in thrust. Furthermore,from the previous subsections, the following issues may affect the current sensingthrough the shunt resistor and ESC components and were investigated.

1. Temperature causing the resistance of the shunt resistor and other resistivecomponents on the ESC circuit board to change.

2. High noise characteristics in the measurements resulting in variations in Io f f setfor an ESC.

3. Effect of the assumed constant ADC to amps gain KIADC given the low toleranceof electrical components.

To investigate the effect of temperature, an external ammeter was attached tothe cable around the ESC powered from a Turnigy constant voltage power source at16.4V while the duty cycle is set to a constant value. The temperature effect on vre fis captured by analysing the MCU temperature variation with measured current at aconstant motor voltage.

First, two sets of experiments (red and blue lines) were performed to see the ef-fect of the MCU temperature on the current offset which from (3.1) is one of thefactors that affects the constant current measurement for the same constant RPM andvoltage in static free air (Figure 3.4). In each of these experiments, there were 10sub experiments in which the ESC is stopped and started as shown in the currentmeasurements. When the ESC is stopped, the MCU temperature is taken using aninfrared camera. The offset is read when the motor is just about to start which is seen

Page 67: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.3 Electronic Speed Controller 45

0 2 4 6 8 10 1245

46

47

48

49

50

51

52

MCU Temp vs Expt no

Expt no

MC

U T

em

pera

ture

[deg]

1

2

(a) MCU temperature variation.

0 50 100 150 200 250 300 3508.8

8.9

9

9.1

9.2

9.3

9.4

9.5

9.6x 10

6

Time [s]

Off

se

ts [

A× s

ca

le]

Offsets

1

2

(b) Time variation of current offsets.

Figure 3.4: Current offset values and MCU temperature of an ESC32v2.

in the constant offset lines per experiment. Though the two experiments show simi-lar responses in MCU temperature and offset values, Figure 3.4 shows no observablerelationship between the two variables. Furthermore, the same temperature variationwas observed for each of the components on the printed circuit board (PCB) espe-cially the shunt resistor. Hence, the temperature of the MCU does not change theMCU’s reference voltage of vre f = 3.3 and the shunt resistance Rs remains constant.Thus the measured temperature range is within the zero resistance change of the re-sistive components of the ESC. Furthermore, the results show that the offset values asexplained in the previous subsection and by implication the current measurements inthe ADC changes with time. Hence the variation of the ADC current measurementsonly depend on time. From the results shown in Figure 3.4(b), one can see the needfor a constant Io f f set. By default, this constant value can be taken at the final steadystate value of I of the ESC which from Figure 3.4(b) is time dependent. It should benoted that in all these experiments, the current measured by the external ammeterwas constant for the duration of the experiments.

Using a constant ADC to current offset Io f f set, with a duty cycle of 30% for a setof seven experiments, the results are shown in Figure 3.5. From these results, onecan conclude that a constant desired current can be obtained from a constant voltageinput which also results in a constant RPM. Figure 3.5 also shows a slow rise in thecurrent measurements at t < 100s.

Given that from (3.1), Io f f set and KIADC have to be the same for every ESC to en-sure that the current sensing is the same on every ESC. Given that Io f f set has beendetermined, to calibrate KIADC , an ESC labelled “0” is used as a baseline and cal-ibrated against the external ammeter. Using the constant Io f f set for each ESC, theother ESCs are calibrated with respect to this ESC “0” using a first order polyno-mial. This is done by setting different voltages which result in the same RPM andvoltage measurement variations for all the ESCs. The currents measured by the 4ESCs (1 . . . 4) and ESC “0” for the different open-loop motor voltages are shown in

Page 68: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

46 Experimental Quadrotor Platforms

0 50 100 150 200 250 300 3502

2.5

3

3.5

Time [s]

Curr

ents

[A

]Currents with Constant Offsets

1

2

3

4

5

6

7

Figure 3.5: Current measurements with a constant Io f f set for 7 experiments.

Figure 3.7(a). Using linear regression of each ESC’s measured current against thestandard “0” ESC, the different calibrated currents are shown in Figure 3.7(b). Fromthese results, one is assured that the measured currents, voltages and RPM for all 4ESCs on a quadrotor are the same at the same motor voltage.

To verify that the current calibration procedure, an RPM based thrust controllerwas used as the low-level thrust controller in hovering the quadrotor out of groundeffect for a set of 6 flights. The recorded RPM and currents for the different flightsare shown on Figure 3.6. Looking at the mean currents, it is evident that the mean isalmost constant for all 6 flights.

In addition, this calibrated current was used in the constant thrust controller de-veloped in Chapter 5 to hover the quadrotor at an altitude of 1.2m using the positioncontroller developed in Section 6.5.1. The results shown on Figure 3.8 shows thata constant thrust can be obtained and the calibration method results in a constantcurrent. However, the slow varying current shown in Figure 3.7 when the ESC isturned on affects the height for the first 100s. To overcome this problem, when thequadrotor is turned on, it should only be flown after 100s.

3.3.3 Control modes

The control mode refers to the different open and closed-loop control modes im-plemented on the ESC. The default controllers that are shipped with the ESC are

Page 69: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.3 Electronic Speed Controller 47

140 160 180 200 2202

2.2

2.4

2.6

2.8

3

ia1 [A]

140 160 180 200 220

1.4

1.6

1.8

2

2.2

ia2 [A]

140 160 180 2001.5

2

2.5

ia3 [A]

140 160 180 200 2200.8

1

1.2

1.4

1.6

1.8

ia4 [A]

140 160 180 200 2201.5

1.6

1.7

1.8

1.9

2

2.1

2.2

Time [s]

Cu

rre

nts

[A

]

Mean Current

1

2

3

4

5

6

Figure 3.6: Almost constant currents from multiple RPM based hovering flights.

20 40 60 80 100

1

2

3

4

5

Plot of Raw Currents

Time [s]

Cu

rre

nts

[A

]

0

1

2

3

4

(a) Raw current measurements on 5 ESCs.

20 40 60 80 100

1

2

3

4

5

Cu

rre

nts

[A

]

Time [s]

Plot of Adjusted Currents

0

1

2

3

4

(b) Calibrated currents from the 5 ESCs.

Figure 3.7: Raw and calibrated current measurements of ESCs on a quadrotor.

open-loop duty or PWM, closed-loop RPM, closed-loop RPM based thrust and servocontrol mode. For the chosen BLDC motor-rotor system, the minimum reliable start-ing voltage for the back-EMF based zero-crossing measurements of rotor speed is2.0V. Less than this, the motor shaft does not generate enough torque to overcomethe rotor inertia and also for the 4S batteries used, 2.0V is the motor voltage requiredto generate the minimum required PWM arming signal. Table 3.3 summarises thedifferent control modes, their default startup values (for control via I2C) and therange of setpoint values1.

1The min-max range are only applicable when the ESC is operated via I2C. The values can go muchlower or higher in any of the serial modes (command line interface (CLI) or binary).

Page 70: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

48 Experimental Quadrotor Platforms

50 100 150 200 250 300

0

0.2

0.4

0.6

0.8

1

1.2

Height for static thrust controller

Time [s]

He

igh

t [m

]

Figure 3.8: Hovering at z = −1.2m using the power based thrust controller.

Table 3.3: ESC control modes1.Mode Mode value [Min Max] valuesOpen 0 [5 100]%RPM 1 [1000 6000]RPMThrust (RPM) 2 [0.8 8]NServo 3 [0 360]

Power 4 [2.6 60]WThrust (Power) 5 [0.6 8]N

3.3.3.1 Open-loop “duty” or “pwm“ mode

The open-loop control mode implements the standard generic ESC thrust controlwhich uses pulse width modulation (PWM) with values ranging from 1100 to 1950ms.It also implements the duty cycle which scales between 0 and 100% of the measuredbus voltage. The commands for a duty of 10% and a PWM of 1200 are

duty 20

pwm 1200

respectively. Despite being the easiest mode to set up and use, without any feedbackcontrol or closed-loop rotor speed control, the RPM response is the worst comparedto the other modes. The rotor speed response has a rise time of 500ms for the chosensystem which whose parameters will be estimated in Section 3.4. This is certainlya limiting factor if one is to apply time scale separation and do high-gain feedbackcontrol of attitude and position or trajectory. In addition, in a high-level controllerthat does height control, with decreasing battery voltage (see Figure 2.11), this modeleads to decreasing RPM and therefore a further dependence on an integrator. Thishas been compensated for by incorporating battery voltage in the altitude control ina variety of recent papers Podhradsky et al. [2013].

Page 71: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.3 Electronic Speed Controller 49

3.3.3.2 Closed-loop RPM - “rpm” mode

This implements the standard feedforward and feedback proportional integral (PI)RPM controller. For a desired rotor speed vd, the desired motor voltage is

va = v f f (vd)− Kp (v−vd)− Ki

∫ t

0(v(τ)−vd(τ))dτ, (3.2)

where v f f is a feedforward voltage that is a function of desired rotor speed vd andKp and Ki > 0 are the scalar controller gains. The gains and feedforward voltage aredetermined using the ground calibration software provided. The command for usingthe RPM controller for a desired rotor speed of 3500RPM is

rpm 3500

3.3.3.3 RPM based thrust control - “thrust” mode

This implements the current modified version of the static free air model of thrustto rotor speed Autoquad Team [2015]; Bangura and Mahony [2014]. From a desiredthrust Td, the desired RPM vd is determined using

Td = CT0vd + CTv2d,

where CT0 and CT are coefficients determined from thrust experiments using forcemeasurements described in Section 3.4.1. The output vd is then regulated using theRPM controller of (3.2). An example command for a 2.0N thrust is

thrust 2.0

3.3.3.4 Aerodynamic mechanical power control (electromechanical shaft power) -“power” mode

From current and RPM measurements, the aerodynamic mechanical power is mea-sured (see Section 5.2.2). This controller enables the control of the aerodynamicmechanical or electromechanical shaft power of the motor-rotor system. Given thenon-linear relationship between aerodynamic mechanical power and thrust, it is notadvisable to control the vehicle using this mode. The non-linearity between powerand thrust will be discussed in Chapter 5 when the implicit model for thrust ispresented. An example usage of the power controller is for a 12W aerodynamicmechanical power

power 12.0

3.3.3.5 Power based thrust control - “st” mode

This controller implements the new thrust controller developed in Section 5.2.2. Ituses the thrust computed from the proposed modelling scheme for estimating thrust

Page 72: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

50 Experimental Quadrotor Platforms

in changing aerodynamic conditions around a rotor presented in Section 5.3.An ex-ample usage for a 2.0N thrust is

st 2.0

3.3.4 Communication with avionics board

It is now clear that the chosen ESC (ESC32v2) can communicate through UART,PWM, CAN and I2C. Though as at September 2015, there is no official firmwaresupport for I2C and CAN for ESC32v2 to facilitate bi-directional communicationbetween the ESC and the PX4/Pixhawk avionics board. However, a non-official I2Cfirmware was modified and adapted for this work. The UART cannot be used as itspurpose is for command line interface (CLI) or binary mode operation which takesonly specific commands when controlled through the ground calibration softwareand an additional hardware may be required to control the four motors.

With the I2C interface, the four ESCs are connected as slaves to the PX4 or Pix-hawk which acts as the I2C master. It is up to the user to set the default controlmode in the ESC configuration file. Whenever a control mode is changed, the rotorresponse changes thereby requiring tuning of the middle and high-level controllergains on the quadrotor. Desired control setpoints are sent to the ESCs using 8 or11bit integer resolution at 50Hz. The ESCs then do the low-level control at 1kHz andsend back the filtered current and RPM to the avionics board (2 16bit integers withfiltered current multiplied by 1000) at a low rate of 20Hz. This low rate is becausethere is no need to go beyond 20Hz as the ESC status is not used for control pur-poses. However, it is used to remove the magnetic effects associated with the electriccurrents in the magnetometer readings used in the estimation of heading (yaw ψ) inChapter 6. It should be noted that the total magnetic field change is related mainlyto the total thrust which unless in vertical motion in free air or in the presence ofdowndrafts/updrafts, its value is relatively constant and equals that at hover andthus 20Hz is sufficient to capture these changes.

3.4 Motor-Rotor System

Though it was not the best motor in terms of thrust-to-weight ratio, the HobbykingD2836/9 950KV BLDC motor was chosen given that it was always readily availableat low-cost with a relatively low Kv rating (rotor speed to motor voltage ratio) ratingas such is suited for such open-source quadrotor projects with varying requirements.Requirements such as heavy lifting of up to ≈ 1.0kg payload and high performanceor aggressive manoeuvres. This motor has been optimised to work with 9 to 12indiameter propellers HobbyKing [2015]. It is known that longer blades are goodfor heavy lifting while shorter blades are better for aggressive manoeuvres. Thisis because longer blades will result in a larger disc are/control volume and thuslarger changes in kinetic energy and thus thrust. However, the longer the blade, thehigher the moment of inertia which limits the transient performance of the rotor thusmaking unfit for use on aggressive vehicles. Hence, the choice of the 10in Hobbyking

Page 73: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.4 Motor-Rotor System 51

propellers with high blade pitch satisfies both heavy lifting criteria and high agilityrequirements. This choice of motor-rotor system lead to a maximum takeoff weightof over 1.5kg with additional thrust to not limit the control margin of the vehicle.

Furthermore a description of a calibration schemes for the different parametersof a motor rotor system are described. The outcome of the scheme is a new highfidelity model that models the key physical quantities and phenomenons associatedwith motor-rotor systems with low errors in modelling.

3.4.1 Calibration of motor-rotor parameters

For the low-level motor thrust control algorithm presented in Chapter 5, the schemerequires filtering of the high frequency noise in the current measurements, estimationof rotor angular acceleration and moment of inertia of the rotor. Hence for the pro-posed complementary filters in Chapter 5, knowledge of the motor-rotor parametersis required.

From Chapter 2, a summary of the different equations for a motor-rotor systemare outlined in (A.1)

T = CT0v + CTv2, (3.3a)

va = Kev + iaRa + Ladia

dt, (3.3b)

τ = Kqia, (3.3c)

Irv = τ − τf − τa, (3.3d)

where in the literature, the viscous damping or aerodynamic torque drag term in(2.8) is modelled by τa = CQv2. Assuming τf = 0, the shaft static friction torquewhich in general for small BLDC motors is negligible, hence, (A.1c) can be rewrittenas

Irv = τ − CQv2. (3.4)

From (A.1), the following measurements are required va, ia, v, v, τ and T. Mea-surements of va, ia, v are provided by the ESC and v can be derived from v measure-ments. Measurements of τ and T are provided by an external sensor or apparatus.Laboratory and field methods for measuring τ and T are described in the next subsections.

3.4.1.1 Laboratory calibration

The laboratory setup is shown in Figure 3.9. It contains the ESC, motor-rotor sys-tem and a JR3 force-torque sensor. The JR3 is a multi-axis cylindrically shaped alu-minium force-torque sensor that is made out of metal foil strain gauges JR3 Team[2014]. It is a 6-axis load cell for measuring forces (in x, y, z) and torque (x, y, z). Itcomes with a sensor as well as Peripheral Component Interconnect (PCI) card alongwith the required Linux drivers. The outputs from the sensor are read by using

Page 74: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

52 Experimental Quadrotor Platforms

(a) Laboratory rig. (b) Field rig.

Figure 3.9: Laboratory and field calibration rigs for force and torque measurements.

both a custom developed ROS package or using the modified ESC ground calibra-tion software. The measurements read by the ground calibration software are thusv, va, ia, Pam, Fx, Fy, Fz, τx, τy, τz, where Pam is the aerodynamic mechanical power dis-cussed in Chapter 5.

3.4.1.2 Field calibration

The field calibration rig has a Turnigy and a kitchen scale for redundancy and mea-surements verification. The Turnigy scale can be purchased for under $100 and hasa resolution of 0.1g. The calibration rig consists of a 1m long bar mounted on a knifeedge and balanced by weights on the opposite end of the rod to the end holding themotor-rotor system. This end of the rod sits on the scale(s). The same experiment isperformed with the motor mounted on the side to obtain the torque measurements.It should be noted that the thrust force can also be measured by hovering differentweights attached to the quadrotor. However, this does not provide any measurementof the motor torque τ.

Without any complex or expensive apparatus such as the JR3 force-torque sensoror the rig shown in Figure 3.9(b), in the next subsection, a modification of the currentmodels presented in (A.1) are presented along with a method which avoids buildingof such a complex apparatus to measure torque. In all the experiments, the torquedata used is the JR3 measurements. Some of the torque and thrust results from bothfield and laboratory force and torque setups are shown in Figure 3.10. In these resultsa quadratic model is fitted to the torque and current data to obtain a good fit. Fromthese results, it is noticeable that both the JR3 and field rigs showed different trendsin the torque to current models. In summary, the static free air models for thrust and

Page 75: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.4 Motor-Rotor System 53

0 1000 2000 3000 4000 5000 6000−1

0

1

2

3

4

5

ϖ [RPM]

Thru

st [N

]

Thrust coefficient determination

Raw field

Est field

Raw JR3

Est JR3

(a) Thrust: T = CT0 v + CTv2.

0 0.5 1 1.5 2 2.50

0.01

0.02

0.03

0.04

Currents [A]

To

rqu

e [

Nm

]

Torque coefficient determination

Raw field

Est field

Raw JR3

Est JR3

(b) Torque: τ = Kqia + Kq1 i2a .

Figure 3.10: Static free air thrust and torque calibration.

torque for the laboratory and field methods are

T = 1.789× 10−7v2 − 1.4715× 10−4v, (3.5a)

τa = 1.2419× 10−9v2 − 8.7422× 10−7v, (3.5b)

τ = 0.008ia + 0.0026i2a, (3.5c)

and

T = 1.692× 10−7v2 − 1.0078× 10−4v, (3.6a)

τa = 1.7298× 10−9v2 − 3.0133× 10−6v, (3.6b)

τ = 0.018023ia − 0.00352i2a (3.6c)

respectively.

3.4.1.3 Modified motor-rotor models

With the motor-rotor model given by (A.1), consider the measured motor voltage va,rotor speed v, electric current ia resulting from open-loop duty setpoints of 10, 15,20, 25, 30, 35, 40, 50 and 60% with the ESC powered from a constant voltage source.The output measurements for a set of 5 experiments are shown in Figure 3.11.

Looking at Figure 3.11(a), it is easily seen that there is a linear relationship be-tween va and v. This is reflected in the known Kv rating of the motor. Looking atFigure 3.11(b), shows that there is a non-linear relationship between va and ia. Byexamining the ratio va

ia(resistance) shown in Figure 3.11(d), it shows a decreasing

resistance with increasing current despite the measured voltage of drain to sourceand gate to source of the MOSFETs showing constant values for all values of dutycycle. This is because the MOSFET has a FET driver which drives these voltages totheir designed optimal values despite variations in va. Considering the FET driverand MOSFET combination and assuming that the set of transistors in the two canbe modelled by a single transistor, then increasing the voltage va increases the num-

Page 76: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

54 Experimental Quadrotor Platforms

1000 2000 3000 4000 5000 60001

2

3

4

5

6

7

ϖ [RPM]

Voltage [v]

Voltage RPM variation

1

2

3

4

5

(a) va input and rotor speed output v.

0 0.5 1 1.5 2 2.5 31

2

3

4

5

6

7

current [A]

Vo

ltage

[v]

Voltage current showing resistance change

1

2

3

4

5

(b) va input and current ia output.

0 0.5 1 1.5 2 2.5 31000

2000

3000

4000

5000

6000

current [A]

RP

M [

rpm

]

RPM and current relationship

1

2

3

4

5

(c) Rotor speed v and current ia.

0 1 2 3

current [A]

0

10

20

30

40

Resis

tance [

Ω]

Resistance and current relationship

1

2

3

4

5

(d) Motor resistance Ra and current ia.

Figure 3.11: Multiple experiments to characterise motor-rotor model.

ber of electrons and holes thereby increasing the conductance of the p− n junctionthus reducing the resistance of the FET driver and MOSFET combination. Hence, amodification of the electrical dynamic model is necessary

va = Kev + iaRa + Ladia

dt− ∆. (3.7)

The following models ∆ = kai2a, ∆ = ka

√ia and ∆ = kavaia for ∆ were considered. To

identify the motor parameters and obtain the most suitable ∆ model, consider usingthe same step inputs in voltage data with recorded va, ia and v. At each steady statestep input, dia

dt = 0, thus removing the inductance term. Performing regression onthe step voltage data, Ra, Ke and ∆ models are determined.

The results of this procedure comparing measured va to estimated va using mea-sured ia and v along with the estimated Ke, Ra and ∆ models are shown in Fig-ure 3.12. It should be noted that the data was obtained using the ground calibrationsoftware though the same set of data could have been obtained using step changes inthrottle with the low-level motor controllers in open-loop control mode. A summary

Page 77: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.4 Motor-Rotor System 55

0 10 20 30 40 50 602

3

4

5

6

7

8

Time [s]

Voltage [v]

Regressed voltage

data

0ia

2

ia

0.5

vaia

vaia

2

Figure 3.12: Regressed voltages for various proposed ∆ models.

Page 78: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

56 Experimental Quadrotor Platforms

Table 3.4: Motor-rotor identified parameters with 1σ variation for various ∆ models.Variable ∆ = 0 ∆ = i2

a ∆ =√

ia ∆ = vaia ∆ = vai2a

Ke 0.0011 ±3.4946 ×10−6

8.9894 ×10−4 ±9.4048 ×10−6

−1.1750 ×10−4 ±1.0408 ×10−4

7.4557 ×10−4 ±3.0006 ×10−5

9.2417 ×10−4 ±9.1224 ×10−6

Ra 0.4068 ±0.0051

1.2559 ±0.0229

−0.9706 ±0.0784

3.1096 ±0.1709

1.0577 ±0.0210

ka 0 0.1994 ±0.0027

−5.8909 ±0.4399

0.3259 ±0.0186

0.0221 ±3.5943 ×10−4

R2 0.9670 0.9966 0.9993 0.9971 0.9957

Table 3.5: Motor-rotor identified parameters from sinusoid with 1σ variation.Variable ∆ = i2

a ∆ = vaiaKe 9.4725× 10−4 ± 7.7170× 10−6 9.6610× 10−4 ± 3.5647× 10−6

Ra 1.0672± 0.0231 1.4417± 0.0231ka 0.1650± 0.0044 0.1301± 0.0033La 0.0019± 9.3126× 10−5 −4.1137× 10−4 ± 6.4678× 10−5

R2 0.9895 0.9855

of the results for different ∆ models and the values compared to data are shownin Table 3.4. Comparing the obtained estimated values to the manufacturers’ statedvalues (Ke = 1/Kv = 1/950 and Ra = 0.07Ω), the best models for ∆ are ∆ = kai2

a and∆ = kavaia. These models showed the highest R2 of fit and meaningful Ke and Ra

values.To determine the motor inductance and provide sufficient discrimination between

the two ∆ models, the response to sinusoidal voltage inputs used are shown in Fig-ure 3.13. The resulting voltages compared to the voltage obtained from the regressedparameters are shown in Figure 3.13(d). The results of the regression are shown inTable 3.5 From these results, the best model for ∆ is ∆ = kai2

a which will be used forthe remainder of this research.

To obtain a model for the aerodynamic torque that is τ = Kqia = f (v), considerthe current to rotor speed plot shown in Figure 3.11(c), from which one can observea square root relationship between v and ia. Hence, the following relationships areproposed.

v = a√

ia + δ, (3.8a)

v = a√

ia, (3.8b)

where δ is an offset. The plots for the two results compared to the original data are

Page 79: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.4 Motor-Rotor System 57

0 2 4 6 8 10 12

4.5

5

5.5

6

6.5

Time [s]

Vo

lta

ge

[v]

Voltages

1

2

3

4

5

(a) Voltage with time.

0 2 4 6 8 10 12

3800

4000

4200

4400

4600

4800

5000

5200

Time [s]

ϖ [R

PM

]

RPM

1

2

3

4

5

(b) RPM with time.

0 2 4 6 8 10 12

1

1.5

2

2.5

Time [s]

Cu

rre

nts

ia [

A]

Currents

1

2

3

4

5

(c) Currents with time.

100 102 104 106

4.5

5

5.5

6

6.5

Time [s]

Vo

lta

ge

s [

V]

Regressed voltages

Meas

Estim

(d) Measured and regressed voltages.

Figure 3.13: Sinusoidal motor voltage and regressed voltage.

shown in Figure 3.14. (3.8) and this result motivates the proposal of the followingtwo torque models

Kqia = CQv2, (3.9a)

Kqia = CQv2 + CQ1 v. (3.9b)

To determine Kq, one has to assume that Kq = Ke in the appropriate units. Using thekai2

a model and the sinusoidal data, that is Ke = 9.4725× 10−4, hence, Kq = 0.0090.

The results for the current to torque model regressions are shown in Figure 3.15and summarised in Table 3.6. Hence the best model for the damping torque is τa =CQv2 + CQ1 v. This is similar to the modifications currently made on the currentstatic free air thrust to rotor speed model T = CT0v + CTv2 Autoquad Team [2015].

Page 80: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

58 Experimental Quadrotor Platforms

0 0.5 1 1.5 2 2.5 30

1000

2000

3000

4000

5000

6000

Current [A]

RP

M [

rpm

]

RPM and current relationship

dataa√

ia + δ

a√

ia

Figure 3.14: Regressed data for v to ia models.

3000 3500 4000 4500 5000 55000.005

0.01

0.015

0.02

0.025

0.03

0.035

ϖ [RPM]

Torq

ue τ

[N

m]

Regressed torque and ϖ

dataKqiaCQ

2 + CQ0

CQ2

Figure 3.15: Torque and RPM for the different models.

Table 3.6: Motor-rotor aerodynamic torque damping constants with 1σ variation.Variable τa = CQv2 τa = CQv2 + CQ1 v

CQ 8.1998× 10−10 ± 5.9035× 10−12 1.6361× 10−9 ± 2.1919× 10−11

CQ1 0 −3.5693× 10−6 ± 1.1685× 10−7

R2 0.3874 0.8565

Page 81: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.5 Additional Hardware 59

Table 3.7: Additional Hardware.Hardware Model DescriptionPropellers Hobbyking blue/-

green/orange propeller.10in and 4.5rev/in pro-pellers.

Radio 2.4GHz Turnigy 9X and9XR radios.

Radio for attitude con-trol during manual con-trol and tuning of at-titude controller gains.It also enables switchingbetween manual and au-tonomous modes.

Serial Radio 3DR 915MHz radio. Radio for communica-tion between vehicle andground station.

Motors Turnigy D2836/9. 950Kv BLDC outrunnermotor for driving pro-pellers.

Frame 50cm Mikrokopter frame. Quadrotor frame.Batteries 4S LiPo batteries. 4 cell lithium polymer

(LiPo) battery for power-ing the vehicle.

3.4.1.4 Rotor moment of inertia determination

Recalling from (3.4),

Irv = τ − (CQv2 + CQ1 v),

Irv = Kqia − (CQv2 + CQ1 v). (3.10)

Performing regression on the sinusoidal data and determining v by differential thefitted Fourier series model for v, gives an Ir = 3.9294 × 10−6 ± 4.5815 × 10−7. Ifone assumes uniform mass distribution for the rotor and assuming it to be a 254mm(10in) long rod of thickness 10mm rotating about its centre, one obtains Ir = 6.25×10−6 which is higher than the estimated value. This discrepancy is due to the non-uniform mass distribution of the rotor with a high concentration of mass at the rotorhub.

3.5 Additional Hardware

Other than the avionics and speed controllers, the quadrotors are built out of but notlimited to the following additional hardware shown in Table 3.7. In addition, to thelist, the quadrotor has 4 custom made Vicon markers. These markers are mountedon the motor hubs as shown in Figure 3.2 and are used by the Vicon motion capturesystem for localisation.

Page 82: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

60 Experimental Quadrotor Platforms

Table 3.8: RC channels assignments.Channel Channel 1 Channel 2 Channel 3

Command Roll Pitch ThrustChannel Channel 4 Channel 5 Channel 6

Command Yaw Mode Switch -

3.5.1 Remote controller receiver/transmitter

The remote controller (RC) is used for manual flight testing during the developmentand tuning of the controller gains for the vehicle. It is also used for testing the attitudeobserver responses and switching between manual and autonomous modes therebyproviding a fail-safe mode for unforeseen circumstances during autonomous flights.There are two RC transmitters which are Turnigy 9X and Turnigy 9XR. They eachhave an FrSky DJT 2.4Ghz transmitter module and an FrSky D8R II PLUS 2.4Ghzreceiver module connected to the vehicle. The RC system has 8 channels includ-ing a dedicated combined pulse position modulation (CPPM) channel. This dedi-cated channel is used to send the 8 channel data to the receiver connected to thePX4IO/Pixhawk board CPPM pins. The first four channels are the roll, pitch, thrustand yaw. The fifth channel (gear) is used for switching between autonomous andmanual modes when inertial measurements are available. Table 3.8 summarises thedifferent RC channels and their dedicated signal outputs.

3.5.2 Battery

The battery accounts for between 25 to 50% of the gross weight of a quadrotor Ku-mar and Michael [2012a]. Their size and number of cells have limited their chargecapacity making the majority of quadrotors to fly for less than 10 minutes. Hence, a4 cell lithium polymer (4S LiPo) battery with a capacity of 2200mAh was chosen. Thechosen LiPo batteries give an average flight time of 10 minutes. The 16.4V from the4S LiPo ensure that at empty battery capacity (15.7V), the batteries can still supplyenough power to power the 4 motor-rotor systems. It should be noted that to pre-vent the battery cells from damage when the voltage drops below the safe operatingvoltage, the ESCs cannot be armed if the measured bus voltage is below 15.7V.

3.6 Ground Station

The ground station consists of a ground station computer and software which runsthe Robot Operating System (ROS) Quigley et al. [2009] for inter application commu-nication. Its role is to visualise telemetry data from the vehicle, set observer and con-troller gains using the PX4 ground station software, QGroundControl Meier [2015].The ground station also acquires the Vicon position estimates and user defined ve-hicle desired position and trajectory setpoints. It then sends the Vicon position and

Page 83: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.6 Ground Station 61

Figure 3.16: QGroundControl v2.0β visualisation and parameter tuning software.

desired trajectory data to the vehicle as MAVLink type messages Meier [2015] withthe use of the 915MHz 3DR radio. Hence the ground station computer’s purposecan be classed into two: (1) flight data visualisation and parameter tuning and (2)the facilitation of autonomous flight.

3.6.1 Visualisation and parameter tuning

The visualisation and parameter tuning and sensor calibration software used is QGround-Contol Meier [2015]. In addition, the APM Mission Planner is used to configure andreprogram the 3DR radios. A screen shot of QGroundControl is shown in Figure 3.16.In the figure, the current pitch and roll of the vehicle along with a highlighted pa-rameter to be modified are displayed.

3.6.2 Autonomous vehicle control system

With the exception of the python based phone application, the applications for theautonomous vehicle control are written in C++ within the Robot Operating System(ROS) framework. The ROS packages on the ground station are implemented inthe sense of a finite state machine (FSM) allowing additional trajectories, paths anddesired control allocations to be incorporated. Some of the ROS packages on theground station and the inter package communication are shown in Figure 3.17. Theseapplications are described in the following subsections.

Page 84: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

62 Experimental Quadrotor Platforms

Figure 3.17: ROS based ground station packages and tools.

3.6.2.1 control_input

The control_input package listens to serial inputs from a user which corresponds to aset of predefined trajectories, paths, velocity setpoints and different modes like hover,land, drag coefficient determination within the finite state machine system describedon Table 3.9. The package gives the user a gateway to controlling the vehicle and itoperates at 50Hz. The command line input structure is

state xd yd zd ψd

3.6.2.2 lmpc_v1

The purpose of this package is to generate the trajectories or paths specified by thecontrol_input package. The package runs at 50Hz and implements the ground sta-tion’s finite state machine (FSM). Depending on the user defined control_input, thispackage publishes the desired trajectory setpoints. A list of some of the states withinthe FSM and external hardware support are listed in Table 3.9.

3.6.2.3 vicon_bridge

This package retrieves the broadcast Vicon position and attitude measurements ofthe vehicle from the Robotic Science Laboratory’s teleop wireless network at 200Hzusing ethernet/WiFi from the Vicon computer. The messages are then published astransform “tf” messages at 200Hz ROS Team [2015].

Page 85: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.7 Open-Source Software 63

Table 3.9: Desired vehicle states and trajectories of the FSM.control_input Generated path or trajectory0 Hover at differential flat outputs (0, 0,−1.1, 0) or return to

home.1 User specified destination in flat outputs.4 Position control (1.0, 0,−1.1, 0).6 Land at home or (0, 0, 0) with current yaw.7 Figure 8 trajectory with desired orientation along

~e1 ∈ A.8 Predefined waypoint following from waypoint file.13 Velocity vx = 0.6m/s at z = −1.1 control.14 Velocity vx = −0.6m/s at z = −1.1 control.17 Position/Velocity and desired orientation inputs from

mobile device.18 Velocity and desired orientation inputs from haptic device

for teleoperation.

3.6.2.4 mavlink_ros

Based loosely on the official MAVLink ROS package released by the PX4 team. Itreads and writes data synchronously to a serial device, in this case a 3DR 915MHzradio using MAVLink protocol. The IMU, attitude, body-fixed frame velocities, GPSstatus and other flight data are retrieved by the package and made available to otherapplications such as log_data and the phone and teleoperation system. The MAVLinkmessages sent to the vehicle are the vehicle Vicon position (timed position and atti-tude) when Vicon data is available and the desired trajectory. These data are receivedon the flight control board at 40Hz with a maximum data loss of 5%.

3.6.2.5 log_data

This application runs at 100Hz and logs the vehicle Vicon position and attitude mea-surements and ground station computed estimated velocity. It also logs the desiredtrajectory and the vehicle status received via MAVLink. The vehicle status includesattitude, IMU, RC and body-fixed frame estimates of velocity.

3.7 Open-Source Software

There are two main groups of software and firmware developed. The first is theavionics firmware along with a ground station software for autonomous control. Thesecond software is a modification to the current ESC32v2 firmware. The two softwarealong with their structures are designed using the version control software git. Thesoftware design of both software is outlined in the following subsections.

Page 86: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

64 Experimental Quadrotor Platforms

Figure 3.18: Avionics software architecture on PX4FMU/Pixhawk.

3.7.1 Quadrotor open-source avionics software

The software architecture of the avionics system is described in Figure 3.18. It shouldbe noted that in the implementation of the controllers, given the nature of quater-nions, there is a separate structure for manual and autonomous flights. This is be-cause in manual mode, the pilot controls yaw rate ψd as opposed to ψd or q3d . Themanual control inputs are Td, φd, θd, ψd which correspond to RC channel assignmentsdescribed in Table 3.8. In manual control mode, Euler angles are used to conform tothe standard current manual mode control of quadrotors. The following is a descrip-tion of the various applications that were added or modified on the PX4 Firmware.

av_estimator This application implements the velocity aided attitude observer pre-sented in Section 6.2. The output of the application are 200Hz estimates of attitudeand body-fixed frame and inertial frame velocities of the vehicle. The coupling be-tween the body-fixed and inertial frame filters enable the the coupled filters to outputan estimate of the wind velocity.

commander This is a PX4 application that has the avionics system’s finite state ma-chine (for example autonomous mode, manual mode) and runs the calibration ofvarious sensors and RC signals. The application has the calibration process for re-moving the magnetic effect of electric current from the magnetometer reading.

mc_quat_control This application implements the quaternion attitude controller for

Page 87: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.7 Open-Source Software 65

precise tracking of trajectories developed in Section 6.4. The controller is set up suchthat in manual control mode, the feedforward terms go to zero and are only usedduring autonomous trajectory tracking control. This makes the control gains (2 KP,2 KΩ and 1KI) easy to tune compared to the default attitude controllers on the PX4.The inputs to the controller are qd, Ωd, Ωd, Td from the position/trajectory controllerof Section 6.5.1 or φd, θd, Td, ψd from the RC. The RC inputs are then converted to adesired quaternion qd with ψd = 0 (that is qd(φd, θd, 0)), Td and ψd.

mc_quat_vel_control This application is similar to mc_quat_control and operatesboth in manual and autonomous modes. In manual mode, when there is no mea-sured or estimated linear velocities, the RC signals are converted to φd, θd, Td, ψ. Thedesired attitude is then converted to quaternions in a similar manner to mc_quat_control.However, when measured or estimated linear velocities are available, the RC signalsare converted to vd

x, vdy, Td, ψd and vd

z = 0 where v ∈ R3 ∈ C. C has its ~e1 di-rection rotated by the heading (yaw) of the vehicle in A. Based on the attitude ofthe vehicle, this velocity is then converted to the body-fixed frame desired velocityVd ∈ R3. In autonomous mode, Vd is also obtained from vd through the vehicleattitude R. With the desired velocities, this application implements the velocity con-troller in Section 6.5.2 to obtain the desired attitude setpoint in quaternions qd. Theapplication runs internally the attitude controller of Section 6.4. The attitude con-troller in this case ignores the feedforward terms Ωd, Ωd in the controller.

mc_quat_pos_control This implements the position and trajectory controller of Sec-tion 6.5.1 with outputs in quaternions and angular velocities and acceleration. Ituses either Vicon position estimates or 200Hz of position estimates from the globalpositioning system (GPS) measurements of position and velocity to generate desiredattitude in quaternions (qd), desired angular velocity (Ωd) and angular acceleration(Ωd). The rate at which the controller is run depends on whether there is Vicon orGPS data. With Vicon, it runs at 40Hz while with GPS, it runs at the 200Hz estimatedvelocity from the 5Hz GPS measurements. Though this controller is bound to havesome steady state error when used to do position control, it however has good tra-jectory tracking as demonstrated in Figure 6.8 of Section 6.7.1. This application alsogenerates the measured inertial frame velocities v when Vicon or GPS measurementsare available. These velocities are used as measurements in the velocity aided atti-tude estimation.

mkblctrl As the name implies, mkblctrl is the I2C application written for the Mikrokopterbrushless direct current ESCs. It has been modified to read the states (current andRPM) of the ESCs (slaves) at 20Hz while enabling the avionics’ I2C master to senddesired thrust commands at 50Hz.

attitude_estimator_SO3 This runs the SO(3) quaternion based attitude filter thatproduces the known double cover problem associated with quaternions. These quater-nions are also converted to rotation matrices and Euler angles for used by none

Page 88: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

66 Experimental Quadrotor Platforms

quaternion based applications. The major advantage of this filter over the PX4 de-fault extended Kalman filters (EKF) is its less computational cost. The theory of thefilter is presented in Appendix C.

sdlog2 This application logs the flight data on the micro-SD card plugged into thePX4FMU or Pixhawk board at a specified rate with a maximum rate of 150Hz. Un-like any of the quadrotors mentioned in Section 2.2, the logged data includes vehicleposition, estimated attitude and velocities and status of all four ESCs.

3.7.2 Ground station software

The ROS based ground station open-source software is written entirely in C++ withthe exception of the phone package which is written in Python given that networksockets are efficiently handled using Python. With the exception of QGroundControl,the ROS packages that constitute the ground station are open-source and availableon the ANU git repository4. Installation and usage of the ground station are foundin the readme file and the repository’s wiki page. The ground station software hasbeen tested on Linux Ubuntu 12.4 and 14.04 using ROS Fuerte and ROS Indigo re-spectively.

3.7.3 Electronic speed controller software

The electronic speed controller (ESC) has two software: onboard and ground. The on-board software for ESC32v2 is available locally3. The ground motor-rotor calibration(excluding torque and force measurements) is the ground calibration software thatis available on the ESC’s Google svn repository Autoquad Team [2015]. The modi-fied version of the ground calibration software which includes 6 additional floatingpoint numbers for the 6-axis force-torque sensor is only available internally due tothe requirement of the JR3 PCI card and Linux drivers JR3 Team [2014].

3.8 The Flying Space

The flying space is a 5× 4× 3m space within the Robotics Sciences Laboratory (RSL)dedicated solely to flight experiments. It has a 200Hz Vicon motion capture systemwith 9 ceiling mounted cameras for localisation and ground truth attitude measure-ments. The flying space has an enclosure separating it from the remainder of thelaboratory across its 5m length by a 10mm aperture 1mm thick bird’s net. Within theflying space is a dedicated Linux based ground station computer for communicatingwith the vehicle and accessing Vicon data through the local “teleop” network usingethernet/WiFi connection. The dimensions of the room are the limiting factor for the2m/s maximum translational and 1m/s vertical velocities.

4https://github.com/dnovichman/ground_station3https://cvr-eng.cecs.anu.edu.au/moses.bangura/constant_thrust_code_esc32v3_nov

Page 89: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§3.9 Cost and Weight Analysis 67

Table 3.10: Cost and weight analysis of the quadrotor in Figure 3.1(c).Component Cost (AUD) Weight (g)

Propellers 5.33 7.9Motors 18.61 73Frame 88.8 100

PX4FMU/IO 199 553DR 915MHz Radio 100 22.8

3DR uBlox GPS 129.49 16.8LiPo Battery 32.26 247

ESC32v2 63.30 7.2FrSky D8R II PLUS RX module 36.72 39

FrSky DJT TX module 57.59 9.3Turnigy 9XR TX 96.71 723Approx. Total 1073.2 9005

3.9 Cost and Weight Analysis

The cost of individual components as at September 2015 and total cost and weight ofthe quadrotor are given in Table 3.10. Given the capability of the quadrotor platforms,from Table 2.1, 3DR IRIS and Parrot AR. Drone 2.0 are the only quadrotors that thedeveloped platforms can be compared to in terms of cost and capability. The cost ofthe quadrotor is approximately that of the 3DR IRIS (without cameras) though higherthan the Parrot. The major advantage of this open-source quadrotor framework isthat it enables the best performance that can be attained for any vehicle built outof these components. This is because it allows the observers and controllers to betuned to their maximum gain bandwidth on the dedicated hardware. For examplethe motor-rotor control is the best possible performance (rise time of 50ms) comparedto the open-source PWM ESC controller which is around 500ms. Furthermore, thelogged flight data contains ESC status which is not available on the PWM motorcontroller based quadrotors.

3.10 Conclusion

This chapter presented a description of the open-source hardware and softwarethat constitute the open-source experimental quadrotor platforms developed for theRobotic Sciences Laboratory at the Australian National University. The various soft-ware described are the software implemented for the observers and controllers devel-oped in the remainder of the thesis. The various commercial off-the-shelf hardwareproducts used and the open-source software are implemented and maintained viathe version control software, git. This makes it possible to build quadrotors withvarying specifications for both the hobby and academic communities. Furthermore,

5Total weight of the high performance quadrotor.

Page 90: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

68 Experimental Quadrotor Platforms

the chapter proposed a modification on the current BLDC motor model and a labo-ratory and field procedures for measuring thrust and torque. Hence, a method forcalibrating the current static free air model and the identification of the motor-rotorparameters that will be used in the low-level thrust estimation and control scheme inChapter 5 were also presented.

The software implementation was developed with a particular focus on overcom-ing the key performance limitations in achieving high performance control usingopen-source hardware components. The software are implemented for the differentdynamic levels: high-level position/trajectory and velocity control, mid-level attitudecontrol and low-level motor thrust control.

Page 91: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Chapter 4

Aerodynamic Modelling ofQuadrotors

4.1 Introduction

This chapter presents the non-linear dynamic model of a quadrotor along with theaerodynamics of quadrotors and their rotor blades. It starts by describing the dif-ferent frames of references associated with quadrotors. The dynamic models in thebody-fixed and inertial frames of the quadrotor as a whole are then presented. Fromthe non-linear model, the external forces are drag and thrust. The different dragforces and a lumped parmetal model associated with quadrotor motion is then pre-sented and modelled in the body-fixed frame.

The second part of the chapter focuses on modelling the aerodynamics of quadro-tor rotor blades in the rotor hub or body-fixed frame. By using momentum theory,models for aerodynamic forces, power and efficiency of a rotor are derived. To ac-count for the inadequacy of momentum theory and to provide additional constraintequations to model rotor blades, blade element theory is used. Blade element the-ory considers the individual elements of a rotor blade, the aerodynamic properties(lift and drag coefficients) of the aerofoil and blade geometry to model elementalforces and torque. Momentum theory is used to consider the global characteristicsof the flow to provide the conditions in which the blade element theory is applied toobtain a model for the induced velocity in a process referred to as blade element mo-mentum theory. The overall model for forces and torque and therefore aerodynamicmechanical or electromechanical power are obtained by integrating along the entireblade and over a rotor revolution of these elemental forces and torque. Blade ele-ment theory combined with momentum theory is then applied to the geometricallymodified optimum hovering rotors used on quadrotors to produce implicit modelsfor thrust, horizontal force and aerodynamic mechanical power. Although clearly asimplification of the rotor aerodynamics, the blade element momentum theory ap-proach provides a robust yet relatively simple model that captures the key physicalprocesses required for the approach proposed in Chapter 5.

In the sequel, if a is a vector in R3, it is represented by ~a and its magnitude bya ∈ R.

69

Page 92: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

70 Aerodynamic Modelling of Quadrotors

4.2 Relevant Definitions

It is worth defining some non-dimensional variables in line with the forces and torquemodelled in B that is along and perpendicular to the rotor shaft/hub. If Ir ∈ R isthe mass moment of inertia of the blades, R is the blade radius, A is the area of therotor disc, Clα is the lift gradient of the rotor blade, Nb is the number of blades, c isthe chord length of the blade, v is the speed of the rotor, ~vi is the induced velocityat the rotor, ~vs is the airstream velocity and ~vs

h is the stream velocity in the horizontalplane of motion of the vehicle whose velocity in that plane is ~Vh = (Vx, Vy, 0)> withmagnitude Vh. These velocities will be discussed in Section 4.5.

Definition 4.1. Disc loading of a rotor

DL :=TA

,

where T is the thrust force.

Definition 4.2. The advance ratio µ of the rotor hub/shaft in the direction of Vh

µ :=vi

h + vsh

vR= µi + µs,

where vih and vs

h are the horizontal planar magnitude of the induced velocity and streamvelocities respectively.

Definition 4.3. The rotor hub/shaft vertical inflow ratio λ in the~e3 of B

λ :=vi

z + vsz

vR= λi + λs,

where viz and vs

z are the vertical components of the induced and stream velocities respectively.

Definition 4.4. The Solidity ratio

σ :=NbcπR

.

Definition 4.5. The Lock number for a constant chord blade

γ :=ρClαcR4

Ir,

where ρ is the density of air.

Three further coefficients which will be shown in the sequel to be dependent onthe aerodynamic state of the rotor are also defined. If τ, T, P are the torque, thrustand power respectively, then

Definition 4.6. The torque coefficient

CQ :=τ

v2 .

Page 93: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.3 Quadrotor Modelling 71

Figure 4.1: Reference frames associated with a quadrotor and a rotor blade.

Definition 4.7. The thrust coefficient

CT :=T

v2 .

Definition 4.8. The power coefficient

CP :=P

v3 .

4.3 Quadrotor Modelling

4.3.1 Frames of reference

There are different frames of references that need to be considered in quadrotoranalysis. These frames are shown in Figure 4.1. Somewhere fixed on the earth’ssurface is an inertial-fixed frame A. Attached to the vehicle is the body-fixedframe B. For aerodynamic analysis, there are additional frames associated withthe rotor blades. These include the rotor reference frame C that rotates with therotor but does not tilt as a result of blade flapping. The tip path plane TPP or Dwhich is the frame that rotates with the rotor and is aligned with its tilt as a result ofthe rotor due to blade flapping. There is also the no-feathering plane (NFP) which isassociated with variable pitch mechanisms. This plane is normal to the plane of theswashplates. The different frames of reference associated with the motion of a rotorare shown on Figure 4.5 and will be elaborated on in Section 4.5.2.

Page 94: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

72 Aerodynamic Modelling of Quadrotors

4.3.2 Non-linear quadrotor model

Consider the quadrotor shown in Figure 4.1 with mass m, g is acceleration due togravity, T is the total thrust of all four rotors, ~ζ ∈ R3 is the position of the vehicle w.r.tA, ~v ∈ R3 is the velocity of the vehicle in A and R ∈ SO(3) is the rotation matrixfrom B to A expressed in A. If ~D ∈ R3 is the drag force expressed in B, and~Ω ∈ R3 is the angular velocity of the vehicle in inertial frame, then the non-linearquadrotor model expressed in A is given by Pounds [2007]; Pounds et al. [2010]

~ζ = ~v, (4.1a)

m~v = mg~e3 − TR~e3 − R~D, (4.1b)

R = R~Ω×, (4.1c)

I~Ω = −~Ω×I~Ω + Ga(~Ω) +~τ +~τD, (4.1d)

where ~Ω× ∈ R3×3 is defined by (B.6) is the skew symmetric matrix derived from~Ω ∈ R3 such that ~Ω×~w = ~Ω× ~w for all ~w ∈ R3 and ~e3 denotes the unit vector in zdirection and ~τD is the total torque generated by the rotor drag forces. This torquewill be modelled in Section 4.4.6. The gyroscopic effect ~Ga(~Ω) of the rotors in (4.1d)is given by

~Ga(~Ω) := −4

∑j=1

(−1)jvjIr(~Ω× e3), (4.2)

where vj is the angular velocity of rotor j, Ir ∈ R is the moment of inertia of a rotorblade and the factor (−1)j accounts for the direction of rotation of the given rotor asshown on Figure 4.1. The total thrust T, on the vehicle is the sum of the individualthrusts Ti of the rotors and is defined by

T =4

∑j=1

Tj.

The required thrust for each rotor is determined using the following relationshipHamel et al. [2002]

1 1 1 1l 0 −l 00 −l 0 l$ −$ $ −$

T1

T2

T3

T4

=

Tτx

τy

τz

, (4.3)

where l is the length of each rotor from the centre of B. If in static free air CT andCQ are the thrust and torque coefficients defined by Definition 4.7 and 4.6 respec-tively, then $ the thrust to torque ratio of the rotor blades is given by

$ =CQ

CT.

Page 95: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.4 Drag Forces and Drag Like Effects 73

(4.3) is implemented on the avionics as the mixer and it is part of the mkblctrl appli-cation described in Section 3.7.1.

It should be noted that in the body-fixed frame, the linear dynamics are

~V = −~Ω× ~V + gR>~e3 −Tm~e3 + ~D, (4.4)

where ~V ∈ R3 is the velocity of the vehicle expressed in the body-fixed B.

4.4 Drag Forces and Drag Like Effects

Drag is that frictional force that opposes the motion of an object in air subject to anapplied force. At typical speeds for quadrotors parasitic drag associated with the air-frame is almost negligible and the drag force models proposed are primarily based onrotor aerodynamic effects. Classical drag models (Leishman [2002], Bramwell et al.[2001] and Seddon and Newman [2011]) developed for full scale rotary wing aircraftsare based on steady-state forward flight conditions and are primarily developed withthe goal of computing the efficiency of flight regimes rather than modelling systemdynamics. A major shortcoming of the classical models is that at hover, they predict asignificant residual drag. The approach taken in this section is targeted towards pro-viding a simple lumped parameter drag model for quadrotors. In particular, bladeflapping will be treated as a drag-like force (that opposes the motion of the vehi-cle), rather than the classical treatment for rotorcrafts where it is incorporated intocyclic rotor pitch models as an offset. In addition, the induced drag associated withrigidity of the rotor is considered. This is far more significant for small quadrotorsthan for full scale rotorcrafts. Finally, classical translational drag and parasitic drageffects are modelled in a way that is valid over the full vehicle flight envelope - notjust for steady-state forward flight. In the current drag forces modelling, it shouldbe assumed that the wind velocity ~W = 0 such that ~vs = −~V. It is however easyto incorporate the wind speed ~W ∈ R3 ≡ B by replacing ~V in the models with~V − ~W.

4.4.1 Blade flapping

Blade flapping is a phenomenon that occurs when rotor blades undergo translationalmotion. During the motion, the advancing blade experiences a higher tip velocitycreating an increase in lift while the retreating blade experiences a reduction in tipvelocity and therefore a reduction in lift as shown in Figure 4.1. The differential liftapplies a torque to the heavily damped spinning rotor disc that leads to a gyroscopicresponse that tilts the rotor disc back, reducing the advancing blade’s angle of attackα and increasing the retreating blade’s angle of attack until the rotor reaches aerody-namic equilibrium and the aerodynamic forces on the rotor blades are balanced. Theresulting rotor tip path flaps up relative to the rotor mast as the blade is advancingand flaps down as the blade is retreating. The angle through which the rotor tip path

Page 96: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

74 Aerodynamic Modelling of Quadrotors

plane TPP is deflected is the flapping angle, β. The tip path plane of the rotor can bemodelled as a flapping angle β(ψ) written as a function of azimuth angle ψ

β(ψ) = a0 − a1 cos(ψ)− b1 sin(ψ). (4.5)

Further details on this harmonic model and the treatment of blade flapping as anangle will be discussed in Section 4.5.2.2.

Detailed models of the coefficients a0, a1 and b1, that also include dependence onangular velocities of the airframe are provided by Pounds Pounds [2007]. Notingthat at v = 0, there is no drag force, the models for a1 and b1 are given by (4.6) and(4.7) respectively

a1 =−µA1c

1− 12 µ2

+

− 16γ (Ωx

v )

(1− eR )

2 + (Ωyv )

1− µ2

2

+

12γ

eR

(1− eR )

3

[− 16

γ (Ωyv )

(1− eR )

2 − Ωxv

]

1− µ4

4

, (4.6)

and

b1 =−µA1s

1 + 12 µ2

+

− 16γ (

Ωyv )

(1− eR )

2 + (Ωxv )

1− µ2

2

+

12γ

eR

(1− eR )

3

[− 16

γ (Ωxv )

(1− eR )

2 − Ωyv

]

1− µ2

4

, (4.7)

where R is the radius of the rotor, e is the offset due to the vertical flapping hinge.For quadrotors e = 0, A1c and A1s are positive scalar constants that depend on thegeometry of the rotor blades (Equation 4.45 and Equation 4.47 in Leishman [2002]).

With µ very small so that µ2 ≈ 0 and splitting Equation 4.6 and 4.7 into compo-nents due to linear and angular velocities,

a1 =−Vh

vRA1c −

1v

B2Ωx +1v

B1Ωy, (4.8)

andb1 =

−Vh

vRA1s +

1v

B1Ωx −1v

B2Ωy. (4.9)

If

A f lap =1R

−A1c A1s 0−A1s −A1c 0

0 0 0

, (4.10)

and

B f lap =

−B2 B1 0B1 −B2 00 0 0

, (4.11)

be lumped parameter matrices, then (4.8) and (4.9) can be rewritten in a lumpedparameter form to obtain the flapping force on a rotor as

~Dβ = T

(A f lap~Vhj + B f lap

~Ωv

). (4.12)

Page 97: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.4 Drag Forces and Drag Like Effects 75

It should be noted that very flexible rotors with significant flapping effect lead tovery stable quadrotor designs. More agile quadrotors require stiff rotors in orderthat rotation in the airframe is directly translated into rotation in the thrust vector.That is to reduce the magnitude of B f lap.

4.4.2 Induced drag

If the blades are semi-rigid or fully rigid, they do not flap freely to create the aerody-namic balance of forces. This causes an effect on the airframe termed induced drag.For a rotor that is mechanically stiff, blade flapping is unable to fully compensate forthe thrust imbalance on the rotor and the advancing blade generates more lift thanthe retreating blade. For any aerofoil that generates lift (in this case the rotor bladeas it rotates around the rotor mast), there is an associated instantaneous induceddrag due to the backward inclination of aerodynamic force with respect to the aero-foil motion. The instantaneous induced drag is proportional to the instantaneous liftgenerated by the aerofoil. For a rotor in hover conditions, the instantaneous induceddrag is constant through all azimuth angles of the rotor and is directly responsible forone of the components of the aerodynamic mechanical torque which will be coveredin Section 4.5.2. However, when there is a thrust imbalance, then the sector of therotor travelling with high thrust (the advancing blade) will generate more induceddrag than the sector where the rotor generates less thrust (the retreating blade). Thenet result will be that the rotor experiences a net instantaneous induced drag thatdirectly opposes the direction of apparent wind as seen by the rotor and is propor-tional to the velocity of the apparent wind. If KI = diag(k I , k I , 0) and k I > 0, thenthe induced drag force is modelled by

~Di = −TKI~Vh.

This effect is often negligible for full scale rotorcrafts since their rotors have lowstiffness blades. However, these effects are often quite significant for small quadrotorvehicles with relatively rigid blades.

The consequence of blade flapping and induced drag taken together ensures thatthere is always a noticeable horizontal drag experienced by a quadrotor even whenmanoeuvring at relatively slow speeds. This horizontal drag term is what is termedthe H-force described in the sequel.

4.4.3 Translational drag

This is otherwise known as momentum drag described in Pflimlin et al. [2010]. It isdrag caused by bending of the induced velocity streamtube of the airflow as it goesthrough the rotor during translational motion. It will be shown in Section 4.5.1 thatthe induced lift is associated with the redirection (in a downwards direction) of theairflow through the rotor. This process is similar to the way in which a traditionalaerofoil redirects air downwards in level flight. In the same way that aerofoils gener-ate induced drag, a rotor in forward flight also generates induced drag in proportion

Page 98: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

76 Aerodynamic Modelling of Quadrotors

to the induced lift generated. If KT1 = diag(kT1 , kT1 , 0) and KT2 = diag(kT2 , kT2 , 0),where kT1 , kT2 are positive scalars, then the proposed models for the translationaldrag are

~Dt = −TKT1~Vh,

for low speeds andDt = −KT2 T(vs

z + viz)

4~Vh,

for high velocities (where Vh > w, w > 0 is some velocity that is a function of bladegeometry and aerodynamic characteristics of the blade aerofoil) and is independentof rotor speed Pflimlin et al. [2010].

The models for both low and high velocities can be verified using the lift induceddrag component (φdL ) of (4.62) in Section 4.5.2.

4.4.4 Profile drag

This is the drag caused by the transverse velocity of the rotor blades as they movethrough the air. It is zero at hover since the opposing forces generated on eitherside of the rotor hub are equal in magnitude. It is usually unaffected by the angleof attack of the blades’ aerofoil and only slightly increases with airspeed. It can beeasily shown based on Section 4.5.2 that the profile drag Dp is given by

~Dp = −∫ R

0ρc((cd0 + cdαθ0) ~Ωr2 − (vs

z + viz)r)~Vhdr. (4.13)

Moving vertically upwards, does not change the symmetry of the blades. This isseen in the equation as increasing the rate of climb at a constant wind speed W ∈ R3

(−Vz + Wz = vsz) requires increasing v which will cause a reduction in vi

z. Hence,the overall effect is negligible. Increasing the planar velocity decreases vi

z, increasesthe variation of flow variation across the rotor and therefore increases ~Dp. Using alumped parameter KP = diag(kP, kP, 0) where kp > 0 is a scalar, the profile drag’sdependence on the forward speed is given by

~Dp = −TKP~Vh, (4.14)

4.4.5 Parasitic drag

This is the drag incurred as a result of the non-lifting surfaces of the quadrotor. Itincludes drag arising from the airframe, motors and the avionics system at the centreof the airframe. It is quite significant at high speeds for full sized rotorcrafts andbecomes the predominant resistant force. For the flight envelope of quadrotor vehi-cles flying at moderate speeds of up to 5m/s, parasitic drag may often be ignored. Ifkpar ∈ R3×3 such that kpar 0, then parasitic drag is modelled by

~Dpar = −T|~V|kpar~V. (4.15)

Page 99: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.4 Drag Forces and Drag Like Effects 77

Vh [m/s]

Sca

led

Dra

g F

orc

e

Plot of the different Drag Forces

w

Induced

Flapping

Parasitic

Profile

Translational

Figure 4.2: Variation of different drag forces with forward speed.

4.4.6 Lumped models for forces and torques caused by drag

The different types of drag forces acting on a quadrotor and their variations with ~Vhare shown in Figure 4.2. In summary, the model for the total drag force generated bya rotor j on a quadrotor is given by

~Dj = ~Dij +~Dtj + ~Dpj + ~Dβ j .

For high velocity manoeuvres where Vh > w, then

~Dj = −TKI~Vhj − KT2 T(vszj+ vi

zj)4~Vhj − TKP~Vhj + TA f lap~Vhj + TB f lap

~Ωvj

,

which can be written as

~Dj = T(−(

KI + KP + KT2(vszj+ vij)

4)+ A f lap

)~Vhj + TB f lap

~Ωvj

. (4.16)

For low velocity manoeuvres,

~Dj = −TKI~Vhj − TKT~Vhj − TKP~Vhj + TA f lap~Vhj + TB f lap~Ωvj

. (4.17)

(4.18)

Page 100: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

78 Aerodynamic Modelling of Quadrotors

Ignoring the small coupling terms that is A1s = B1 ≈ 0 in the flapping coefficient, forthe quadrotors developed in Chapter 3, v ≈ 4500RPM to hover, hence, Ω

v ≈ 0. This isa valid assumption given that one does not expect the angular velocities of the vehicleto be a tenth of v. Knowing that all rotors for the symmetric quadrotor exhibit thesame drag properties implies that the lumped drag coefficient can be written as

c = 4 (k I + kT + kP + A1c) .

The total drag force acting on the vehicle is given by

~D =4

∑j=1

~Dj − T|~V|kpar~V ∈ B. (4.19)

For low velocities with Vh < w, the parasitic drag is very small and can be neglected.Thus the total drag force of all four rotors is given by

~D = −TKr~V, (4.20)

where the drag coefficient matrix

Kr =

c 0 00 c 00 0 0

.

Recalling that (4.20) was derived with the no wind assumption that is ~vs = −~V, inthe presence of wind ~W, (4.20) can be rewritten as

~D = −TKr

(~V −W

).

Remark 4.1. In the literature, a number of authors Abeywardena et al. [2013]; Martin andSalaun [2010]; Waslander and Wang [2009] have considered the drag force to consist only ofthe

~D = −A1c1

vjT~Vhj ,

term of (4.16). The outcome of this model using the current static model for thrust T = CTv2

is~D = −4A1cCTv︸ ︷︷ ︸

constant

~Vh.

To derive the torque as result of the drag forces generated by the rotors, considerthe rotors shown on Figure 4.1 with the rotors at a distance l and height h from thecentre of gravity of the vehicle and given the drag forces generated by the rotors

Page 101: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.4 Drag Forces and Drag Like Effects 79

Dj, j = 1 . . . 4, then

~τD1 = ~D1 × [l~e1 − h~e3],

~τD2 = ~D2 × [l~e2 − h~e3],

~τD3 = ~D3 × [−l~e1 − h~e3],

~τD4 = ~D4 × [−l~e2 − h~e3].

The total torque as a result of these drag forces is

~τD =4

∑j=1

~τDj . (4.21)

It should be noted that since the parasitic drag is generally modelled at the centre ofgravity c.g. of the airframe, it therefore does not generate any torque.

4.4.7 Drag coefficient estimation

From Leishman et al. [2014] and references therein, the accelerometer measures thespecific acceleration of B with respect to A expressed in B. In order words,the accelerometer measures the sum of all the exogenous accelerations applied tothe vehicle. If the accelerometer measurement is ~a ∈ B and ~a ∈ R3, given that~D>~e3 = 0, for slow moving vehicles and T = m~a>~e3, then

~a = − 1m

Dx

Dy

T

.

From the drag model of (4.20) with the no wind assumption (~W = 0), decomposingthe translational components of the specific acceleration yields,

ax = az cVx, (4.22a)

ay = az cVy. (4.22b)

Using the vehicle velocity measurements V computed from Vicon position measure-ments onboard the quadrotor along with the IMU measurements a, the drag co-efficient c is determined. The results of the regression are shown in Figure 4.3.Figure 4.3(a) shows measured accelerometer data ax

azplotted against measured Vx.

Performing linear regression, the estimated drag coefficient c (using (4.22a)) with itsassociated line of best fit and 95% confidence interval for the forward velocity arealso shown. Using this c, and the accelerometer measurements, Figure 4.3(b) showsmeasured velocity from Vicon (blue) along with the computed velocity obtained us-ing the estimated c (red) to demonstrate the quality of the fit. In Chapter 6, the ccomputed velocities from accelerometer measurements provide the measured trans-lational ~V velocities for the body-fixed frame filter (Filter 1). The no wind assumption

Page 102: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

80 Aerodynamic Modelling of Quadrotors

−1 −0.5 0 0.5

−0.04

−0.02

0

0.02

0.04

0.06

Vx [m/s]

ax/az

Drag Coefficient estimation

c = 0.04± 0.0035

raw data

best fit

(a) c determination.

65 70 75 80 85

−1

−0.5

0

0.5

1

Time [s]

Mea

sure

dve

locity

V[m

/s]

Measured and computed velocity

Vx

Vx

(b) Verification of c.

Figure 4.3: Drag coefficient c and B forward velocity measurement.

used in the drag force based velocity measurements for the body-fixed frame is lateremployed in the coupling of the two filters proposed in Section 6.2 to provide esti-mates of wind velocity.

4.5 General Rotor Blade Modelling

As has been pointed out, this development will use the well established momentumand blade element theories. By considering a quadrotor vehicle moving with velocity~V ∈ R3 in B which is also the velocity with which the motor-rotor hub moves at,there is an apparent stream velocity ~vs ∈ R3 in B into the rotor which when thereis no wind is equal in magnitude but opposite in direction to the vehicle velocitythat is ~vs = −~V. If there is wind with velocity ~W ∈ R3 expressed in B, then theapparent stream velocity is ~vs = −~V + ~W. As the air passes through the spinningrotor disc, it is accelerated creating a virtual induced velocity ~vi ∈ R3 in B. Theinduced velocity ~vi of the rotor on the air decomposes into a vertical component

viz = ~e>3 ~v

i ∈ R and a horizontal component ~vih =

(vi

x, viy, 0)>

that lies parallel to

the horizontal planar velocity ~Vih = (Vx, Vy, 0)> of the rotor in B. The actual air

velocity at the rotor ~va is the sum of the induced velocity ~vi plus the apparent streamvelocity ~vs that is ~va = ~vi +~vs. The velocity of the wake far downstream is denotedby ~V∞ ∈ R3 in B. The different velocities are shown in Figure 4.4.

For consistency with current quadrotor dynamic models, the analysis and theo-retical developments will be carried out in the rotor hub frame which aligns with thebody-fixed frame B of the quadrotor. The thrust force T ∈ R is modelled in the−~e3 direction of B. It is the component of force along the rotor shaft/hub usedin the quadrotor dynamic modelling literature. As the rotor translates, a force per-pendicular to T lying on the plane containing ~e1,~e2 in B is generated to opposethe translational motion. This force ~Fhor ∈ R3 in B which consists of translational

Page 103: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 81

components whose magnitude is modelled by the so-called in-plane horizontal force(H ∈ R) or Fhor ∈ R3 expressed in B. In common practice, for slow movingquadrotors, ~F>hor~e3 = 0. As the rotor translates, there is tilting of the tip path planeD from the rotor hub/shaft as a result of blade flapping and this causes the mis-alignment of the tip path plane and the rotor shaft B. This creates one of thecomponents of the H-force. In addition, there is an induced drag term associatedwith forward motion. Blade flapping and induced drag have been combined intoa single lumped term in the quadrotor literature and used to improve the controlperformance of multirotor vehicles Omari et al. [2013]. Furthermore, this H forceis the same as the individual rotor drag forces given by (4.17). It should be notedthat modelling the thrust in the body-fixed frame −~e3 direction and introducing ahorizontal thrust component ~Fhor due to the tilting of the thrust vector is a more ef-fective modelling framework for small scale fixed pitch rotor systems used in roboticapplications. This convention ensures that in normal flight, the thrust T is positive.Hence the total force on the rotor hub ~F ∈ R3 in B is

~F = −T~e3 + ~Fhor ∈ B,

~Fhor = (Fx, Fy, 0)>,

with ~F>hor~e3 = 0 for slow moving vehicles, T = −~e>3 F and Fhor = |~Fhor| = H. Thefollowing necessary assumptions are made regarding the rotor blades.

Assumption 4.1. 1. The rotor blades are fixed pitch with “near ideal” twist and chord.

2. During axial motion, |vsz| is such that it is less than or equal to the vertical induced

velocity.

3. The flow is steady, irrotational, inviscid, incompressible and locally 2 dimensional.

The unsteady and irrotational components of flow are accounted for in the inducedpower factor κ. The assumption on |vs

z| ensures that during vertical ascent(vi

z + vsz)=

vaz ≥ 0, T ≥ 0 and no sections of the blades is in windmill state. The assumption

on |vsz| also ensures that during vertical descent, the flow is everywhere downwards

and the blades do not stall and thus maintain the linear lift model.In this work, there are two types of rotor efficiencies that are used.

1. Thrust to aerodynamic mechanical or electromechanical power ratio

TP =T

Pam. (4.23)

2. The Figure of Merit

η =T|~va|Pam

, (4.24)

where Pam is the electromechanical or aerodynamic mechanical power. It willbe defined in the sequel.

Page 104: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

82 Aerodynamic Modelling of Quadrotors

Figure 4.4: Rotor streamtube along with generated forces and velocities in B.

4.5.1 Momentum theory

Consider Figure 4.4 which shows a slightly tilted actuator disc. In this case, the rotorexperiences both translational and vertical airflow. It also shows the well known phe-nomenon of rotor blades described in Section 4.4.1, blade flapping. Blade flapping isresponsible for the coning and backwards tilting of rotor blades. Its net effect is tocreate/increase any force in the ~e1,~e2 plane opposing the motion of the rotor. As aresult of the coning and tilting, the ~e3 direction of B and D are misaligned thuscontributing to the horizontal force ~Fhor.

The horizontal force also comprises other aerodynamic effects such as inducedand translational drag that in many cases are even more important than blade flap-ping for small fixed pitch rotors used on quadrotor vehicles. Critically, these addi-tional drag forces can be lumped into the same mathematical model used to modelflapping (cf. (4.25)) as long as all forces and velocities are written in the body-fixedframe B. The accepted model for the horizontal force ~Fhor in typical flight condi-tions is given by

~Fhor ∝ −khor(Vx, Vy, 0)>, (4.25)

where khor is a positive constant at constant T. Since all the aerodynamic variables inthe problem lie in the two dimensional (longitudinal flight dynamics) plane definedby the apparent stream velocity~vs and rotor hub axis~e3, it is possible to undertake theaerodynamic analysis using these two degrees of freedom rather than maintainingthe full 3D-velocity and force information. Recalling Vh = |Vx, Vy, 0| as the scalarmagnitude of the body-fixed frame horizontal velocity of the rotor and defining abody-fixed frame direction

~ehor =

1

Vh(Vx, Vy, 0)> for Vh 6= 0,(0, 0, 0)> for Vh = 0,

Page 105: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 83

where the zero vector is used to ensure ~ehor is always well defined. Based on thisconstruction, the scalar values of horizontal induced velocity and the horizontal forceare defined by

vih = ~e>hor~v

i ∈ R, H = −~e>hor~F ∈ R.

Due to the nature of the aerodynamic drag terms, the horizontal force ~Fhor alwaysopposes the motion of the vehicle, that is

~e>hor~F = ~e>hor

~Fhor ≤ 0,

implying H ≥ 0. Moreover, when vsh = 0, then vi

x = viy = 0 and the horizontal

force ~Fhor = 0, yielding H = 0 as expected. In the case where vsh − ~Wh 6= 0, the

induced horizontal scalar velocity vih is non-negative since the rotor tilt opposes the

horizontal motion of the rotor hub and consequently the induced component of thevelocity will be pushing air against the direction of motion of the rotor. Note thatdue to the motion of the rotor, the actual horizontal component of air through therotor will be negative as expected (see Figure 4.4).

To develop the momentum theory for forces and power, consider first the axialdirection (~e3) which contains the thrust force T. Applying Newton’s second law orthe conservation of momentum at the farstream and downstream and along the rotorhub B, assuming that a plane perpendicular to the control volume at the rotor discequals the rotor radius, the thrust force T (in the axial direction that is −~e3 of B)can be computed as the difference between the momentum of the flux going out andthe momentum of the flux coming into the streamtube (hence the name momentumtheory), that is

~F~e3 = T = m(V∞z + vs

z)− m(vsz),

= mV∞z , (4.26)

where m is the mass flow rate of the air and is defined by m = ρA|~va| with A area ofthe rotor disc and ρ the density of air.

To determine the relationship between ~V∞ and ~vi, it is worth noting that power isa scalar as such one can consider the power associated with horizontal and verticalmotion separately and sum them to get the total power. The aerodynamic power togenerate this force is

Pa = F>~va = PT + Ph. (4.27)

The power PT for generating thrust (since only axial motion is considered) is

PT = T(viz + vs

z). (4.28)

Power is also the rate of kinetic power imparted into the air across the streamtubethat is

PT =12

m (V∞z + vs

z)2 − 1

2m (vs

z)2 ,

Page 106: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

84 Aerodynamic Modelling of Quadrotors

PT =12

m(2vszV∞

z + (V∞z )2). (4.29)

Comparing (4.28) and (4.29) and substituting for T using (4.26),

mV∞z (vi

z + vsz) =

12

m(2vszV∞

z + (V∞z )2).

Hence after expansion and cancellation of the V∞z terms,

viz =

12

V∞z .

Substituting for V∞z and m = ρAva in (4.26), Leishman [2002]; Seddon and Newman

[2011]T = 2ρAvi

zva. (4.30)

The same relationship for the induced and downstream velocity components of thehorizontal motion can be obtained that is

vih =

12

V∞h .

Thus in a similar manner to T, the horizontal force H generated that is acting againstthe direction of motion of the plane at the rotor hub and power in generating thisforce are given by

H = 2ρAvih|va|,

andPh = H(vi

h + vsh),

respectively.Recall, the aerodynamic power which is the sum of the power associated with the

control volume is defined by

Pa = PT + Ph = Fva. (4.31)

Pa can be decomposed into components due to the vehicle motion and the inducedflow; and therefore (4.31) can be modified

Pa = κ〈~F,~vi〉+ 〈~F,~vs〉, (4.32)

where the scalar κ ≥ 1 is the induced power factor [Bramwell et al., 2001, pg. 92][Leishman, 2002, pg. 105]. The induced power factor κ is an adjustment factor thatmodels the additional power dissipated due to wake rotation, tip loss effects and non-uniform inflow that are not modelled by classical momentum theory. It is constantin hover conditions but varies for changing inflow conditions and will be separatelymodelled in Section 4.5.2.6.

Remark 4.2. The induced power factor κ is closely related to, but not the same as, the

Page 107: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 85

(inverse of the) well known figure of merit η ∈ [0, 1] defined by (4.24) used in hover analysisof full scale helicopters Leishman [2002]. In the case where horizontal and vertical motionare negligible, then H, Vh and Vz are small and the dominant term in the aerodynamic poweris κTvi

z. The term Tviz is the aerodynamic power in the linear part of the wake and is the

primary term associated with momentum theory thrust analysis. Thus one has Tviz = 1

κ Pa.However, this expression does not include losses due to the profile power PP of the blades aspointed out in Section 4.4.4. That is, η models the losses modelled by 1

κ as well as the profiledrag of the rotor blades. The figure of merit does not provide sufficient discrimination for theanalysis undertaken in this thesis and is therefore not used in the development in Chapter 5.

Note that aerodynamic losses only apply to the induced aerodynamic power andnot to the power associated with the physical motion of the rotor. The aerodynamicrotor power is only a part of the total electromechanical aerodynamic mechanicalpower Pam that dissipates into two aerodynamic terms

Pam = PP + Pa; (4.33)

where PP is the blade profile power (not modelled by momentum theory) associatedwith aerodynamic drag on the rotor blade and Pa is the aerodynamic rotor powerdiscussed above. A model for profile power will be developed in Section 4.5.2 and itis dissipated energy lost in pulling the rotor through the air while the aerodynamicpower Pa is associated with accelerating the air through the rotor and contributes tothrust generation and associated mechanical power supplied to the rigid airframe.

In summary, the momentum theory model for aerodynamic forces and power aregiven by

T = 2ρAvizva, (4.34a)

H = 2ρAvihva, (4.34b)

Pa = κTviz + Tvs

z + κHvih + Hvs

h. (4.34c)

The momentum theory presented here models the majority of flight regimes ex-perienced by quadrotors in extreme aggressive manoeuvres. Under some of thesemanoeuvres, Assumption 4.1 will fail along with momentum theory. In addition,momentum theory does not model profile power losses and does not provide thefull set of equations necessary to obtain the implicit thrust model proposed in Chap-ter 5. Hence, blade element theory will be employed and a fundamental property ofblade element theory is that it deals with elemental forces and velocities.

4.5.2 Blade element momentum theory

In this section, the models for aerodynamic forces and torque are considered at theelemental level of a rotor blade in a process referred to as blade element theory. Start-ing with the models for blade flapping as an angle and induced velocity, the modelfor the total velocity along with its horizontal and vertical components are derived.This then leads to the derivation of the different elemental aerodynamic forces in the

Page 108: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

86 Aerodynamic Modelling of Quadrotors

tip path plane D and rotor reference frame C and their resultants which is thethrust, horizontal force and torque (hence aerodynamic mechanical power) expressedin the body-fixed frame B. The theoretical development in this section is then usedin Section 4.5.3 to provide implicit models for T, H and torque τ and therefore theaerodynamic mechanical power Pam = τv for the “near ideal” rotor geometry usedon quadrotors.

The following assumptions form the basis of blade element theory.

Assumption 4.2. The outward centripetal force acting on the blades is such that they can beassumed rigid.

4.5.2.1 Theoretical framework

Since blade element theory considers individual elements of the rotor at differentazimuthal angles ψ, it is necessary to obtain the total of these elements along thespan of the rotor which defines the physical quantity of interest. Hence, one canmodel the elemental contribution of a quantity say force F as dF(r, ψ) for an elementlocated at a distance r from the rotor hub of radius R that is r ∈ [0, R] and angulardisplacement ψ. The total force is then given by the sum of the individual elementsacross all the azimuthal positions of the blade. For Nb number of blades, the totalforce is given by

F =Nb

∫ 2π

0

∫ R

0dF(r, ψ)drdψ. (4.35)

4.5.2.2 Model for blade flapping angle β(ψ)

In this subsection, blade flapping is treated as an angle. With the assumption ofsteady state flight, the model for blade flapping angle β at an azimuth ψ is given bythe following Fourier series expression

β(ψ) = a0 −∞

∑n=1

an cos nψ−∞

∑n=1

bn sin nψ, (4.36)

with harmonic terms (a0, a1, . . . , an, b1, . . . , bn). Details on the treatment of blade flap-ping as a drag term was presented in Section 4.4.1.

In this work, only the first harmonics are considered, that is n = 1, given thatthe higher harmonic terms a2, b2, a3 . . . , can be ignored as they are very small ornegligible for short rigid rotors. The blade flapping model is thus given by

β(ψ) = a0 − a1 cos ψ− b1 sin ψ. (4.37)

The derivative with respect to ψ is

dβ(ψ)

dψ= a1 sin ψ− b1 cos ψ. (4.38)

Page 109: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 87

Figure 4.5: Frames of reference and flapping angles of a rotor.

And the time derivative of β(ψ) is

β(ψ) =dβ(ψ)

dt,

= vdβ(ψ)

dψ. (4.39)

From Figure 4.5, a0 can be seen as the coning angle of the blade and a1 and b1 as the−~e1 ∈ B and −~e2 ∈ B tilt of the rotor disc or the tip path plane. The coefficienta0 is strongly linked to blade rigidity and is very small for quadrotors since they havehigh rigidity and stiffness rotor blades. It should be noted that even at hover, thereis an a0 for long, slender and fully flexible rotor blades especially those used on fullscale helicopters. The presence of a0 does not cause any misalignment of the tip pathplane D from B. The other coefficients a1 and b1 are the backward and sidewaystilting of the tip path plane from B and therefore results in the misalignment ofD from B.

If θ0 is the blade pitch/twist, then the flapping coefficients for a non-flappingrotor hinge offset are defined by [Bramwell et al., 2001, pg. 107]

a0 =γ

8

[θ0(1 + µ2)− 4

],

a1 =2µ (4θ0/3− λ)

1− µ2

2

,

b1 =43 µa0

1 + µ2

2

.

Given that µ is small such that 11±µ2/2 can be approximated to 1, the flapping angle

coefficients then become

a0 =γ

8

[θ0(1 + µ2)− 4

], (4.40)

a1 = 2µ (4θ0/3− λ) , (4.41)

b1 =43

µa0. (4.42)

Products and multiples of these coefficients are such that they can be ignored.

Page 110: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

88 Aerodynamic Modelling of Quadrotors

This will be used in the computation of the H-force and torque.

One of the root causes of blade flapping is the dissymetry in the lift distributionduring forward motion of the vehicle. This dissymetry creates a moment at the rotorhub. To minimise this moment, rotors on helicopters are either connected to a hingeat the hub or rigidly attached and cyclically feathered by decreasing the pitch ofthe advancing blade and increasing the pitch of the retreating blade thus removingthe lift imbalance (see Figure 2.9). Furthermore as was pointed out, conventionalquadrotors neither have flapping hinges nor swashplates. They however have shortrigid and stiff blades that minimise the effect of blade flapping.

4.5.2.3 Induced velocity distribution vi(r, ψ)

In order to apply blade element theory, the model for the induced velocity distribu-tion along the span and different azimuth angles must be known. The model forthe distribution of the vertical component of the induced velocity (and therefore pro-posed horizontal induced velocity) distribution on the rotor is very complex. In thetheoretical development of the forces and torque, ~vi can be assumed to be a constantdistribution and therefore have the induced vertical and translational velocities mod-elled through constant λ and µ ∀r ∈ [0, R]. Furthermore, a good approximation forvi

z was proposed by Mangler and Squire Mangler and Squire [1953]. The model treatsthe rotor as a lifting surface with a pressure jump. They modelled induced velocityfield as a small perturbation superimposed upon an otherwise uniform velocity field.The induced velocity distribution is expressed by a Fourier series of harmonic terms

vi(r, ψ) = 4vi0

[12

d0 +∞

∑n=1

dn (r, αD) cos nψ

], (4.43)

where αD is the rotor disc incidence and ~vi0 ∈ R3 is the mean induced velocity. Toobtain vi0, recall the total velocity of the air through the rotor ~va = ~vs +~vi. Usingmomentum theory, restating the mean induced velocities from Section 4.5.1.

vi0z =

T2ρA|~va| , (4.44)

vi0h =

H2ρA|~va| . (4.45)

This use of momentum theory in determining the mean induced velocity ~vi0 is thereason the theoretical development is referred to as blade element momentum theory

Page 111: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 89

(BEMT). The harmonic coefficients dn in (4.43) are [Bramwell et al., 2001, pg. 82-83]

d0 =158

( rR

)2,

d1 = −15π

256

(5− 9d2

η

) ( rR

)(1− sin αD

1 + sin αD

)1/2

,

d3 =45π

256

( rR

)3(

1− sin αD

1 + sin αD

)3/2

,

where d2η = 1− (r/R)2. For n = 2k, k = 1, 2, . . . , ∞,

dn = (−1)(n−2)/2 158

[dη + nn2 − 1

·9d2

η + n2 − 6n2 − 9

+3dη

n2 − 9

](1− dη

1 + dη

)n/2 (1− sin αD

1 + sin αD

)n/2

.

For n = 2k + 1, k ≥ 2,dn = 0.

As has been stated in Section 4.5.2.2, only the primary modes are considered andtherefore first harmonic flapping motion. However, d1 << d0 and αD introducesanother unknown which is not measured on quadrotors and is a function of β(ψ).The final simplified model for the induced velocity is given by

~vi(r, ψ) = 4~vi0(

12

d0

). (4.46)

It can be shown that (4.46) can be represented by a constant average that is ~vi(r, ψ) =~vi and incorporated as it does not change the computations Leishman [2002]. Hence,the modelling process does not make use of the Mangler and Squire model forvi(r, ψ). By choosing a constant vi

z and vih implies that one is not required to know

the thrust and horizontal force before hand (through (4.44) and (4.45) respectively) asfor present day electronic speed controller technology for quadrotors, measurementsof T, H as well as the induced velocity vi are not available during flight. The averagevalue ~vi approximation has no effect on thrust and it is the same assumption madein helicopter performance analysis. Furthermore, given the near hovering flight en-velope for which quadrotors are designed and their use of close to ideal optimumrotor geometries, implies that the assumption is valid. A consequence of this is amodel for an underestimation of the induced power which is compensated for usingthe induced power factor κ.

4.5.2.4 Velocity components at a blade section

Consider a blade element at a distance r from the rotor hub shown in Figure 4.6.For ease of analysis (mainly for 2-D flow assumptions to hold) and following onfrom Assumption 4.1, only the planar components of velocity that is Vh = |Vx, Vy, 0|,vi

h = |vix, vi

y, 0| and Wh = |Wx, Wy, 0| and vertical velocity components Vz, viz and Wz

Page 112: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

90 Aerodynamic Modelling of Quadrotors

Figure 4.6: An aerofoil section showing elemental forces, angles and velocities in C.

are considered. The total airflow velocity at the blade element is ~U(r, ψ) ∈ R2 andU(r, ψ) ∈ D. The transverse scalar velocity at a blade element Uh(r, ψ) ∈ R whichis the magnitude of the planar projection of ~U(r, ψ) in ~e1,~e2 ∈ D is

Uh(r, ψ) = vr + (−Vh + Wh + vih) sin ψ. (4.47)

For the vertical velocity Uz(r, ψ)

Uz(r, ψ) = viz −Vz + Wz + rβ(ψ) + (−Vh + Wh + vi

h)β(ψ) cos ψ. (4.48)

Normalising or non-dimensionalising by dividing by the tip velocity of the rotor vR,the following are obtained

uz(r, ψ) =Uz(r, ψ)

vR= λ +

rRv

β(ψ) +1

Rv(−Vh + Wh + vi

h)β(ψ) cos ψ,

= λ +rR

dβ(ψ)

dψ+ µβ(ψ) cos ψ, (4.49)

and

uh(r, ψ) =Uh(r, ψ)

vR,

=rR+ µ sin ψ. (4.50)

The total or resultant velocity at the blade element is

U(r, ψ) = |~U(r, ψ)| =√

Uh(r, ψ)2 + U2z (r, ψ).

The following assumption is made regarding ~U(r, ψ).

Assumption 4.3. ~U2(r, ψ) ≈ U2h(r, ψ) for the quadrotor platforms presented in Chapter 3.

This is a reasonable assumption given the much higher rotational tip speed of ro-tors used on quadrotors. For example, for the 10in diameter rotor blades (used on the

Page 113: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 91

quadrotors shown in Figure 3.1), rotating at v ≈ 5000RPM, then Uh > 50m/s. Even ifthe entire velocity ~V is in the vertical direction, Uz ≤ 5m/s and hence U2

z (r, ψ) is lessthan 1% of U2

h(r, ψ) and the approximation holds to well within the expected modelerror. Indeed, a 5% relative error would be acceptable, however, 5m/s disturbancesare already towards the limit of the normal operating conditions, both in speed andexpected updraft and downdraft disturbances expected for small quadrotor vehicles.

4.5.2.5 Aerodynamic forces acting on blade elements

The aerodynamic forces acting on a blade element shown in Figure 4.6 are definedas

Lift dL(r, ψ) ∈ R is the force generated by the blade element perpendicular to thedirection of the resultant airflow U(r, ψ).

Drag dD(r, ψ) ∈ R is the force generated by the blade element that is parallel to thedirection of the resultant airflow.

The elemental lift and drag forces on a blade element expressed in D are definedby

dL(r, ψ) =12

ρU(r, ψ)2Cl(r, ψ)c(r)d r, (4.51)

dD(r, ψ) =12

ρU(r, ψ)2Cd(r, ψ)c(r)d r, (4.52)

where Cl(r, ψ), Cd(r, ψ) are the lift and drag coefficients of the aerofoil respectivelyand c(r) is the chord length at section radius r from the rotor hub. The coefficientsCl(r, ψ) and Cd(r, ψ) are expressed respectively as

Cl(r, ψ) = Cl0 + Clαα(r, ψ), (4.53)

Cd(r, ψ) = Cd0 + KCl(r, ψ)2, K > 0. (4.54)

For a 3D wing planform, the constant K = 1πARe , where AR is the aspect ratio of the

wing and e is the Oswald span efficiency. From Figure 4.6, the blade element angleof attack α(r, ψ) which is the angle between the mean chord line of the aerofoil andthe direction of motion of the blade or airflow is defined as

α(r, ψ) = θ(r)− φ(r, ψ), (4.55)

where θ(r) is the blade pitch and φ(r, ψ) is the relative inflow angle at the bladesection defined by

φ(r, ψ) = tan−1 Uz(r, ψ)

Uh(r, ψ)(4.56)

The following assumption is made regarding the relative inflow velocity φ(r, ψ).

Assumption 4.4. The relative inflow angle |φ(r, ψ)| ≤ 10 is small such that cos φ(r, ψ) ≈1 and sin φ(r, ψ) ≈ φ(r, ψ) for all r and ψ.

Page 114: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

92 Aerodynamic Modelling of Quadrotors

Figure 4.7: Blade element forces in B and D and β(ψ).

With this assumption, (4.56) becomes

φ(r, ψ) ≈ Uz(r, ψ)

Uh(r, ψ). (4.57)

Hence (4.55) can be approximated by

α(r, ψ) ≈ θ(r)− Uz(r, ψ)

Uh(r, ψ). (4.58)

From the elemental forces defined by (4.51) and (4.52) are the forces along the~e1,~e2 plane and the~e3 of the tip path plane D. These horizontal and vertical forcesdefined in D are given by

dFx(r, ψ) = dL(r, ψ) sin φ(r, ψ) + dD(r, ψ) cos φ(r, ψ), (4.59)

dFz(r, ψ) = dL(r, ψ) cos φ(r, ψ)− dD(r, ψ) sin φ(r, ψ). (4.60)

It should be noted that dFx represents the magnitude of the force along the x − yplane or plane containing ~e1,~e2. Furthermore, the following elemental forces andtorque in B in the sense of Figure 4.7 are defined.

Thrust dT(r, ψ) is the resultant elemental force generated along −~e3 of B. FromFigure 4.7, the elemental thrust force is given by

dT(r, ψ) = dFz(r, ψ) cos β(ψ) + dFx(r, ψ) sin β(ψ),

= dFz(r, ψ),

= dL sin φ(r, ψ), (4.61)

given that φ and β are small angles.

In-plane H-force dH(r, ψ) is the resultant elemental force generated on the planeof ~e1,~e2 of B that opposes the motion along the ~e1,~e2 plane of B. From

Page 115: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 93

Figure 4.7, the H-force is given by

dH(r, ψ) = dD(r, ψ) sin ψ︸ ︷︷ ︸dHp(r,ψ)

+ dL(r, ψ) (β(ψ) cos ψ + φ(r, ψ) sin ψ)︸ ︷︷ ︸dHi(r,ψ)

, (4.62)

where dHi(r, ψ) is known as the induced in-plane force as it is induced bythe inclination of the elemental lift vector dL(r, ψ). This force has a flappingcomponent as well as φdL which is responsible for the translational drag men-tioned in Section 4.4.3. The horizontal force also has dHP(r, ψ) which is theprofile drag as it is the contribution of the elemental drag dD(r, ψ) and it is thedrag force generated by the transverse velocity of the rotor blades through theair.

Aerodynamic mechanical torque dτ(r, ψ) is the result of the torque created by theelement at r from the hub. With respect to Figure 4.7, it is given by

dτ(r, ψ) = r (dD(r, ψ) cos φ(r, ψ) + dL(r, ψ) cos β(ψ) sin φ(r, ψ)) drdψ,

= rdD(r, ψ)︸ ︷︷ ︸dτp

+ rdL(r, ψ)φ(r, ψ)︸ ︷︷ ︸dτi(r,ψ)

drdψ, (4.63)

where dτP is the torque required for spinning the rotor that is to overcome theprofiled drag discussed in Section 4.4.4 and is termed profile torque and dτi isthe induced torque as a result of the tilting of the thrust force.

4.5.2.6 Induced power factor κ

The induced power factor κ is a factor that accounts for the additional power/en-ergy dissipated due to wake rotation, tip loss and non-uniform flow that is notmodelled by blade element momentum theory. These power loss effects are moresignificant for small rotors such as quadrotor blades with high disc loading and lowthrust to aerodynamic mechanical power ratio TP given by (4.23) Pounds and Ma-hony [2004]; Pounds et al. [2002]. The induced power factor changes with changingaerodynamic conditions around a rotor and increases with increasing tip loss anddecreases with increasing rotor efficiency. These aerodynamic losses only apply tothe induced power component of power.

The induced power factor can be better explained in terms of disc loading DL(4.23). For helicopters with low disc loading that is large rotor areas relative tothe thrust they produce, they have a high thrust coefficient CT and high thrust toelectromechanical or aerodynamic mechanical power ratio TP than quadrotors. Fur-thermore, the following also apply to helicopters

1. In general given the disc area and high torque engines of helicopter rotorsimplies that they require less RPM compared to quadrotors. For example theblades on the quadrotor under study require RPM ≈ 4500 to hover while thoseon normal helicopters are usually magnitudes of orders less than this value.

Page 116: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

94 Aerodynamic Modelling of Quadrotors

2. The induced velocity ~vi, is lower for helicopters compared to quadrotors athover. Hence, to maintain the low angle of attack, helicopter blades reducethee collective pitch at hover. The higher CT for helicopters is as a result ofhigher rotor radius given that CT is proportional to R3 and low rotor speed.

3. The high rotor efficiency at hover is as a result of the high thrust generated bylarge area with small induced velocity where in hover the total airflow throughthe rotor is vi

z and therefore low required power.

4. The low disc loading on helicopter blades implies that they are under less backpressure than quadrotor blades.

5. Because the thrust is very high with less back pressure, axial relative wind onlyslightly affects the back pressure and the thrust produced at a given power.It should be noted that the thrust and power are very high thus there a nosignificant change in the thrust to aerodynamic mechanical power ratio that is

TPam

of the rotor with axial wind. Note however that given the low RPM of therotors implies that small changes in thrust results in observable changes in CT.

So in the presence of an updraft, there is only a slight increase in rotor efficiencydespite an increase in CT. The dominant effect is the additional work done by therotors as a result of increased swirl in the wake as well as additional tip losses inthe generation of tip vortices. Thus increasing CT as a result of an updraft causesadditional losses with little changes in rotor efficiency and therefore corresponds toa moderate increase in κ.

For high disc loading rotors with low thrust coefficients CT such as quadrotors,

1. The angle of attack of such rotors is very high which corresponds to higherblade pitch angle in static free air or at hover conditions. It should be notedthat in such aerodynamic conditions, given the small rotor disc area impliesthat to produce thrust requires higher induced velocity vi

z. This corresponds tohigher power and therefore lower figure of merit η than do helicopter rotors.

2. With an updraft, the thrust produced increases, hence CT and a decrease intotal velocity through the rotor. This leads to an increase in rotor efficiency. Therelative high disc loading, low thrust and power requirements including highrotor speed compared to helicopters implies that adding or removing powerinto the system will have a significant effect on the rotor efficiency. This canbe seen from the model for rotor efficiency (for example (4.23) and 4.24) andrecognising the low profile power requirement for quadrotor blades comparedto helicopter blades.

Hence for quadrotor rotor blades an updraft increases CT slightly (due to high v),increases efficiency significantly due to low thrust and power and a negligible changein the already high tip loss. Hence overall for high disc loading low CT quadrotorblades, κ decreases with increasing CT.

Page 117: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 95

0 1 2 3 4 5 6 7 8x 10−3

0

0.5

1

1.5

2

2.5

3

3.5

4

CT

κ

κ and CT model

Figure 4.8: κ and CT variation for low and high disc loading rotor blades.

With these intuitions and with reference to Figure 4.8 which graphs κ versus CTfor low disc loading (helicopters) and high disc loading (quadrotor) rotors, the rotorsystem used for the experimental work in this paper and based on values obtainedin Section 5.3.3, the following general model relating κ to CT is proposed

κ = const. + const. CT + const.1

CT,

where symbols for the positive constants will be provided in the sequel. For therotors on small quadrotor vehicles with CT << 10−4, the dominant part of the modelis the hyperbolic term 1/CT. This is supported by experimental results shown inFigure 5.12 of Section 5.3.3. Note that the model plotted in Figure 4.8 is supportedby Figure 3.18 in [Leishman, 2002, pg. 105], although the nature of the high discloading model is not considered by Leishman as it is not relevant to the helicopterrotors discussed Leishman [2002]. Though it is beyond the scope of this thesis, onecan see that the most optimum rotor design will be for the CT to be at the elbow ofthe CT graph shown in Figure 4.8 as it will exhibit the advantages of quadrotors andhelicopters.

In practice, the rotors on small quadrotor vehicles will never function outside ofthe dominant region where 0 < CT << 10−3. In this region, the linear term const. CTis negligible, while the hyperbolic term can be approximated by a linear function

1CT≈ const.

CT− const.

C2T

(CT − CT),

where CT is an operating point. Thus it is sufficient to approximate the κ model by a

Page 118: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

96 Aerodynamic Modelling of Quadrotors

linear model in the region of operation of such rotors by

κ = d0 + d1CT, (4.64)

where d0 > 0 is a positive constant and d1 < 0 is a large and negative constant.Using a linear model of this nature reduces the computational burden on the alreadyheavily loaded embedded microcontroller on electronic speed controllers.

In the derivations carried out in Section 4.5.3, κ associated with the induced ve-locity components of torque are omitted and included in the final torque model. Thisreduces the number of variables during the development of the models. In line withthis, the following remark is made.

Remark 4.3. To reduce the many variables in the torque/power model derivation, λ is usedand in the final model, it is replaced by κλi + λz or κvi

z + vsz. This also applies to the

contribution of the horizontal force that is κµi + µh or κvih + vs

h.

4.5.3 Blade element momentum theory application to quadrotor blades

This section considers the application of blade element theory described in Sec-tion 4.5.2 to quadrotor rotor blades. Rotor blades for quadrotors are usually designedto have ideal twist and chord in order to achieve optimality at hover or near hoveringconditions. Blades with ideal twist and chord distribution are referred to as ideal oroptimum hovering rotor blades. Quadrotor rotor blades are made out of camberedaerofoils (or aerofoils that have non-zero lift at zero angle of attack) and have finiteaspect ratios (AR). It can be shown that for an optimum hovering rotor at hover, thegeometric definitions of the distribution of chord c(r) and pitch θ(r) are given byBramwell et al. [2001],Prouty [1995]

c(r) =ctip

r/R, (4.65a)

θ(r) =θtip

r/R, (4.65b)

where ctip and θtip are the tip chord and pitch respectively, the forces and aerody-namic mechanical power are given by

T =14

Nbρv2R3ctip (Cl0 + Clααr) , (4.66)

H = 0, (4.67)

Pam =16

NbρctipR4v3(

Cd0 + K (Cl0 + Clααr)2)+ TλvR. (4.68)

It is therefore evident that maximum thrust is generated for a very low powerthrough careful choice of αr such that

Cl0 + Clααr

Cd0 + K (Cl0 + Clααr)2 ,

Page 119: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 97

Figure 4.9: The “near ideal” rotor used on the ANU X4-Flyer Pounds et al. [2005].

is maximum. In the design of this optimum rotor, αr is chosen based on the aerofoilused in making the blades and the tip chord ctip and pitch θtip based on the radius Rof the rotor.

In reality, the rotor is required to not only hover or perform axial motion but alsotranslational motion. Hence, some geometric modification is required to ensure thatwith translational motion that is µ 6= 0, the forces and torques are bounded that isH 9 ∞, P 9 ∞ and T 9 ∞. Hence with the non-feasible geometry defined by (4.65),to obtain feasible values of T, H and τ (hence Pam) in non-hovering conditions, therotor geometry needs to be modified to what is referred here as “near ideal” rotorblade geometry. “Near ideal” rotors are rotors with ideal twist and chord up to apoint from where the pitch flattens and the chord is curved inwards. This repre-sents a variation from the hyperbolic geometry of the rotor around the hub therebyremoving the physical geometric constraint on chord and pitch associated with man-ufacturing of ideal blades. It therefore leads to a trade-off between optimal thrustgeneration and a reduction of the H-force. This trade-off is a design requirementbased on the desired flight envelope. These are the standard blade geometries usedon quadrotors. An example of a “near ideal” rotor blade is shown in Figure 4.9. Thisblade was developed for the ANU X4-Flyer Pounds et al. [2005, 2009].

Taking a look at the Reynolds number Re at a blade section r and azimuth ψ

Re(r, ψ) =(vr + (−Vh + Wh + vi

h) sin ψ)ctipR/rν

,

=vR

(1 + R

r µ sin ψ)

ctip

ν,

where ctip is the tip chord, ν is the kinematic viscosity and is defined as the ratioof dynamic viscosity (vµ) to density (ρ) that is ν = vµ/ρ. At room temperature,vµ = 1.983× 10−5Pa.s, ρ = 1.225kg/m3 for air. Hence, ν = 1.6188× 10−5m2/s. Ifthe tip velocity of the rotor is 52m/s (Assumption 4.3) with tip chord 1cm, then theReynolds number at the tip is

Re =52× 0.01

1.6188× 10−5 = 3.2123× 104.

Any non-zero value of µ results in a very large Re as r → 0 near the hub. Recall

Page 120: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

98 Aerodynamic Modelling of Quadrotors

from (4.58), the angle of attack of a blade element is defined by

α(r, ψ) = θ(r)− tan−1 Uz(r, ψ)

Uh(r, ψ).

Hence at every section, α(r, ψ) is no longer constant as opposed to the optimumhovering rotor and therefore there is no guarantee that |α(r, ψ)| ≤ αs, where αs is thestall angle of attack. Therefore the linear relationship between Cl(r, ψ) and α(r, ψ)given by (4.53) is no longer guaranteed to hold. For a practical “near ideal” rotors, itis known that θ(r), c(r) have physical dimensions and therefore the Reynolds numberRe has an upper bound.

Thus Assumption 4.4 fails and therefore

α(r, ψ) =θtip

r/R− tan−1 uz(r, ψ)

uh(r, ψ).

The Cl model for high angles of attack proposed by Pucci Pucci [2012]; Pucci et al.[2011] will therefore be used. This is validated by the fact that the obtained Re =3.2 × 104 and Mach number M = 0.15 ensure that the flow is both laminar andincompressible and satisfies the conditions Re < 160× 104 and M < 0.3. The modelsfor Cl(r, ψ) and Cd(r, ψ) in relation to α(r, ψ) are given by Pucci [2012]; Pucci et al.[2011]

Cl(r, ψ) = Cl0 + Clαα(r, ψ), |α(r, ψ)| ≤ αs, (4.69)

Cl(r, ψ) = C2 sin 2α(r, ψ), |α(r, ψ)| > αs, (4.70)

Cd(r, ψ) = Cd0 + KC2l (r, ψ), (4.71)

where C2 is some positive constant. This model is based on experimental results fromwhich it has been observed that for angles of attack beyond the stall angle αs, everyaerofoil behaves like a flat plate with the boundary layer thickness increasing and theflow is detached from the rotor. From (4.61), (4.69),(4.70) and (4.71), the elementalthrust therefore becomes

dT(r, ψ) =12

ρU2h(r, ψ)ctip (C2 sin 2α)

Rr

drdψ,

dT(r, ψ) =12

ρctipRr(vr + (−Vh + Wh + vi

h) sin ψ)2)×

C2 sin[

2 tan−1(

θtip

r/R− uz(r, ψ)

uh(r, ψ)

)]drdψ, (4.72)

dT(r, ψ) =12

ρctipv2R3(

rR2 + 2

1R

µ sin ψ +1r

µ2 sin2 ψ

C2 sin[

2 tan−1(

θtip

r/R− uz(r, ψ)

uh(r, ψ)

)]drdψ. (4.73)

Irrespective of the lift coefficient model ((4.69) or (4.70)) used, the thrust force be-comes very large for any non-zero value of µ. However, with the possibility of very

Page 121: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 99

0 0.2 0.4 0.6 0.8 10

20

40

60

80

100

120

140

Radius r∈[0,1]

Scale

d F

orc

es

Distribution of Forces on a blade

Thrust

H−Force

Figure 4.10: Scaled thrust and H-force spanwise distribution for ideal rotors.

high angles of attack around the hub, it is likely for the thrust to become zero de-pending on the ratio at which the rate of r → 0 and α(r, ψ)→ 90.

To determination the H-force, recall (4.62) which showed that it consists of twoparts: profile and lift induced. Starting with the profile drag contribution,

dHp(r, ψ) =12

ρUh(r, ψ)2Cd(r, ψ)c(r) sin ψdrdψ,

=12

ρctipRr

Uh(r, ψ)2 (Cd0 + KC2l (r, ψ)

)sin ψdrdψ. (4.74)

As r → 0 implicit with (4.74), dHp(r, ψ) becomes very large or dHp(r, ψ) → 0 forµ = 0 similar to the hover case. Consider now the torque which was shown toconsist of profile and lift induced components. With H becoming very large impliesthat the torque and hence power requirement for translational motion becomes toohigh. This also confirms optimality for maximum thrust generation (theoreticallyunbounded) at hover when µ = 0 as the required power is upper bounded withH = 0. Hence the above set of equations reduce to that for the optimum hoveringrotor at hover. If all the constants are set to 1 including sin ψ and ignoring the smallflapping terms, Figure 4.10 shows T and H distributions across the span of an idealrotor.

From Figure 4.10, it becomes obvious that a trade-off has to be made between Hand T to produce a “near ideal” or near optimum rotor for quadrotors. The trade-off leads to a slight variation in geometry from the optimal rotor; one that is easilymanufactured with significant reduction in H. Figure 4.11 shows an ideal rotor chorddistribution along with a possible trade-off geometry which is similar to that shownin Figure 4.9 that was designed for the ANU X4-Flyer Pounds et al. [2005, 2009].In addition, many other quadrotors have variations of these “near ideal” blades.Century Neo 860C is one such example 1.

1http://www.espritmodel.com/century-neo-860c-quad-rotor.aspxt

Page 122: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

100 Aerodynamic Modelling of Quadrotors

Figure 4.11: Geometry of an ideal (black) and a “near ideal” (red) blade.

Figure 4.10 shows that for more than 70% of the rotor, T and H (hence τ) arealmost constant. By modifying the section of the rotor around the hub, it is possibleto generate a total thrust and horizontal force that will have an effective total asthat of a constant thrust or H-force extending to the hub. The T to H-force ratiofrom (4.73) and (4.74) for this region is a function of the mechanical connection tothe hub, the mechanical properties such as aeroelasticity of the blade material anda specified value that is a performance criteria. This specified performance criteriadepends on whether the quadrotor is designed for heavy lifting and near hoveringflights or high speed and fast manoeuvring flights. In addition, it also depends onwhether the vehicle will be flying in confined spaces that can result in difficultyin control due to the significant and fast changes in the generated H-force. Thegeometry of an ideal or “near ideal” rotor blade is such that elemental forces andtorque (dT(r, ψ), dH(r, ψ), dτ(r, ψ)) have a constant value across the outer 70% regionof the rotor. Unlike an ideal rotor blade, for a “near ideal” rotor, the inner 30% aroundthe rotor hub can be designed such that it carries this same constant distributionof forces and torque as shown in Figure 4.10. From this discussion, the followingassumption is made.

Assumption 4.5. For a “near ideal” rotor blade, the elemental forces and torque (dT(r, ψ), dH(r, ψ), dτ(r, ψ))have constant values from the hub to the tip of the blade.

A consequence of Assumption 4.5 is that |α(r, ψ)| ≤ αs and as such the blade isalways operating in the linear lift coefficient range of the blade defined by (4.53).

With these assumptions and the preceding discussions, the models for T, H and τ

for the “near ideal” rotor blades used on quadrotors are developed in the followingsubsections.

Page 123: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 101

4.5.3.1 Thrust (T) for “near ideal” rotors

From the dT(r, ψ) model presented in (4.61) in Section 4.5.3, the thrust is given by

dT(r, ψ) =12

ρU2h(r, ψ)Cl(r, ψ)ctip

Rr

drdψ,

=12

ρctip

(vr + (−Vh + Wh + vi

h) sin ψ)2

(Cl0 + Clαα(r, ψ))Rr

drdψ,

=12

ρctipv2R2( r

R+ µ sin ψ

)2(

Cl0 + Clα

(θtip

Rr− uz

r/R + µ sin ψ

))Rr

drdψ,

T =14

NbρctipR3v2 (Cl0[2 + µ2]+ Clα

[θtip(2 + µ2)− 2λ

]).

4.5.3.2 H-force for “near ideal” rotors

Looking at the profile contribution which was defined by the first part of (4.62) andis given by

dHp(r, ψ) =12

ρU2h(r, ψ)Cd(r, ψ)c(r) sin ψdrdψ,

=12

ρctipU2h(r, ψ)

((Cd0 + KC2

l0)+

K(2Cl0Clαα(r, ψ) + C2

lαα2(r, ψ))) R

rsin ψdrdψ

.

Hence,

Hp =12

Nbρctipv2R3µ((Cd0 + KC2

l0) + KCl0Clα(8µθtip − 4a1 − 4λµ)+

KC2lα

(4λa1 − 4a1θtip + 4µθ2

tip − 4µθtip

)).

For the lift induced component,

dHi(r, ψ) =12

ρU2h(r, ψ)Cl(r, ψ)c(r) (β(ψ) cos ψ + φ(r, ψ) sin ψ)drdψ,

=12

ρU2h(r, ψ)ctip (Cl0 + Clαα(r, ψ)) (β(ψ) cos ψ + φ(r, ψ) sin ψ)drdψ, r = R.

Hence,

Hi =14

Nbρctipv2R3 [Cl0µλ + Clα(θtipµλ− a1λ

)],

Hi =14

Nbρctipv2R3µ

[Cl0λ + Clα

(θtipλ− 2λ(

4θtip

3− λ)

)].

Page 124: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

102 Aerodynamic Modelling of Quadrotors

Therefore, the H-force is given by

H =12

Nbρctipv2R3µ

[ς +

12

X]

,

where

ς =[(Cd0 + KC2

l0) + KCl0Clα(8µθtip − 4a1 − 4λµ)+

KC2lα

(4λa1 − 4a1θtip + 4µθ2

tip − 4µθtip

)],

X = Cl0λ + Clα

(θtipλ− 2λ(

4θ0

3− λ)

).

4.5.3.3 Torque (τ) and aerodynamic mechanical power Pam for “near ideal” rotors

The profile torque defined by the first part of (4.63) is given by

dτp(r, ψ) =12

ρU2h(r, ψ)

Cd0︸︷︷︸

τpcd0

+K

C2

l0 + 2Cl0Clαα(r, ψ)︸ ︷︷ ︸τpclocla

+C2lαα2(r, ψ)︸ ︷︷ ︸

τpcla2

ctip

Rr

rdrdψ.

The Cd0 component of τp

dτpcd0(r, ψ) =12

ρU2h(r, ψ)Cd0ctipRdrdψ,

τpcd0 =14

NbρctipCd0R4v2 (2 + µ2) ,

which is similar to the KC2l0 component of the profile power. For the KCl0Clα compo-

nent,

dτpclocla(r, ψ) = ρctipKCl0ClαU2h(r, ψ)

(θtip −

Uz(r, ψ)

Uh(r, ψ)

)Rdrdψ,

dτpclocla(r, ψ) = ρctipKCl0ClαR(θtipU2

h(r, ψ)−Uz(r, ψ)Uh(r, ψ))

drdψ,

τpclocla =12

ρNbctipKCl0Clαv2R4 (θtip(2 + µ2)− 2λ

).

Page 125: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§4.5 General Rotor Blade Modelling 103

In all these preceding calculations, µa0 ≈ 0, µa1 ≈ 0, µ2b1 ≈ 0 are assumed. For theC2

lα component,

dτpcla2(r, ψ) =12

ρKU2h(r, ψ)C2

lαα2c(r)rdrdψ,

dτpcla2(r, ψ) =12

ρKctipRC2lαU2

h(r, ψ)

(θtip −

Uz(r, ψ)

Uh(r, ψ)

)2

drdψ,

dτpcla2(r, ψ) =12

ρKctipRC2lα(θtipUh(r, ψ)−Uz(r, ψ)

)2 drdψ,

τcla2 =12

ρKNbctipRC2lαv2R4

(2θ2

tip(1 + µ2)− 4θtipλ + 2λ2

).

Hence the total profile torque is given by

τp = τpcd0 + τpclocla + τpcla2,

τp =14

NbρctipR4v2 ((Cd0 + KC2l0)(2 + µ2)+ 2KCl0Clα

(θtip

(2 + µ2)− 2λ

)+

2KC2lα

(2θ2

tip(1 + µ2)− 4θtipλ + 2λ2

)).

It can be shown that τi = (Tλ− Hiµ)R Bramwell et al. [2001]. Hence,

τ =18

Nbρctipv2R4Z + (Tλ + Hµ)R,

where

Z = 2

((Cd0 + KC2

l0)(2 + 3µ2) + 2KCl0Clα

((2θtip − λ)µ2 +

(θtip

(2 + µ2)− 2λ

))

+ 2KC2lα

(2θtip(θtip − λ)µ2 + 2θ2

tip(1 + µ2)− 4θtipλ + 2λ2))

+ 2∆τ,

and

∆τ = µ2 ((Cd0 + KC2l0) + KCl0Clα(8µθtip − 4a1 − 4λµ)+

KC2lα

(4λa1 − 4a1θtip + 4µθ2

tip − 4µθtip

)).

In summary the models for T, H and the aerodynamic mechanical or electrome-chanical power Pam = τv for a “near-ideal” rotor based on Remark 4.3 with

1. Non-zero Cl0 such as cambered NACA aerofoils,

2. “Near ideal” chord and twist to a point near the hub,

3. Finite aspect ratio

Page 126: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

104 Aerodynamic Modelling of Quadrotors

are

T =14

NbρctipR3v2 (Cl0[2 + µ2]+ Clα

[θtip(2 + µ2)− 2λ

]), (4.75a)

H = −12

Nbρctipv2R3µ

[ς +

12

X]

, (4.75b)

Pam =18

ρNbctipv3R4Z +(

T(κλi + λs) + H(κµi + µh))

vR, (4.75c)

where

ς =[(Cd0 + KC2

l0) + KCl0Clα(8µθtip − 4a1 − 4λµ)+

KC2lα

(4λa1 − 4a1θtip + 4µθ2

tip − 4µθtip

)],

X =

[Cl0λ + Clα

(θtipλ− 2λ(

4θ0

3− λ)

)],

Z = 2

((Cd0 + KC2

l0)(2 + 3µ2) + 2KCl0Clα

((2θtip − λ)µ2 +

(θtip

(2 + µ2)− 2λ

))

+ 2KC2lα

(2θtip(θtip − λ)µ2 + 2θ2

tip(1 + µ2)− 4θtipλ + 2λ2))

+ 2∆τ,

∆τ = µ2 ((Cd0 + KC2l0) + KCl0Clα(8µθtip − 4a1 − 4λµ)+

KC2lα

(4λa1 − 4a1θtip + 4µθ2

tip − 4µθtip

)).

It follows that BEMT along with momentum theory analysis gives the modelof profile power PP. Recalling (4.33) and noting that the second component of theaerodynamic mechanical power Pam in (4.75c) corresponds to the rotor aerodynamicpower Pa given by (4.34c), then the profile power is given by

PP =18

ρNbctipv3R4Z. (4.76)

4.6 Conclusion

This chapter has presented the non-linear model for a quadrotor along with the dragforces and a combined lumped drag force model. The non-linear models in the body-fixed and inertial frames form the basis of the non-linear complementary filter andcontrollers proposed in Chapter 6. Though the models presented in (4.34) using mo-mentum theory and (4.75) using blade element momentum theory for thrust, in-planehorizontal force, torque and therefore aerodynamic power and aerodynamic mechan-ical power appear to be dependent on several aerodynamic variables, Section 5.3 ofChapter 5 will demonstrate application of these models in deriving an implicit thrustmodelling scheme that accounts for changes in the aerodynamic conditions arounda motor-rotor system used on fixed pitch electrically powered multirotor aerial vehi-cles.

Page 127: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Chapter 5

Aerodynamic Mechanical PowerApplication to Thrust Modellingand Control

5.1 Introduction

In this chapter, the aerodynamic modelling of rotor blades for quadrotors presentedin Chapter 4 is used along with the electrical dynamics of a motor-rotor system in thecomputation and estimation of electromechanical or aerodynamic mechanical powerand thrust for small scale electrically powered multirotor aerial vehicles. With theestimated power and thrust, two controllers are proposed for the the regulation ofaerodynamic mechanical power and thrust. The thrust controller is a simple feed-forward and proportional integral (PI) feedback controller that acts as the outer-levelcontroller for an inner-loop current controller. The proposed thrust controller sig-nificantly improves on the disturbance rejection and gust tolerance of rotor thrustcontrol compared to RPM rotor control schemes.

In the computation of thrust in Section 5.3.1, a scheme is proposed that is basedon aerodynamic mechanical power. The scheme estimates the aerodynamic condi-tions around a rotor using the momentum and blade element momentum theoriesfor quadrotor blades presented in Section 4.5.3. The final thrust model is an implicitmodel that is expressed in terms of aerodynamic mechanical power, rotor speed andthe aerodynamic condition around the rotor. The implicit model is written in aero-dynamic coefficients that are suitable for use as variables in implementation on anelectronic speed controller. Laboratory calibration methods to determine the differ-ent aerodynamic constants of the implicit lumped models and feedforward terms ofthe proposed controllers are described in Section 5.3.3.

The thrust and electromechanical or aerodynamic mechanical power controllerare implemented in real-time on the ESC32v2 hardware and operated at 1kHz. Theeffectiveness of the proposed thrust controller approach is validated against a classi-cal RPM controller in static and dynamic flight conditions in Section 5.4. The resultsdemonstrate a significant improvement in thrust robustness to downdrafts and up-drafts. Furthermore, the performance of a path tracking controller is significantly

105

Page 128: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

106 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

Figure 5.1: Different powers on a rotor.

improved in the presence of wind gusts with the proposed scheme as compared toclassical RPM control.

5.2 Aerodynamic Mechanical or Electromechanical Power Es-timation

Consider the different powers on a rotor and rotor shaft system shown in Figure 5.1.The aerodynamic mechanical or electromechanical power Pam as defined in Sec-tion 4.5 and based on Figure 5.1 is given by

Pam = Pa + PP,

= PT + PH + PP,

where Pa is the aerodynamic power, PT and PH are the powers associated with pro-ducing thrust and overcoming the horizontal force and PP is the blade profile powerdefined by (4.76). If Pr is the power dissipated in accelerating and decelerating therotor, then it is given by

Pr = Irvv,

where Ir is the moment of inertia of the rotor. If Pm = τv is the mechanical powersupplied to the rotor shaft, using the torque model presented in Section 3.4.1 (5.3b),the mechanical power is given

Pm = τv = Kqiav. (5.1)

Carrying out power balance on the rotor and substituting for Pm and Pr,

Pam = Pm − Pr, (5.2a)

= Kqiav− Irvv. (5.2b)

From these, the aerodynamic mechanical power can be computed. The followingdevelopment is based on the simplified Brushless DC motor model presented in

Page 129: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.2 Aerodynamic Mechanical or Electromechanical Power Estimation 107

+

Z

+

+

Z$ $

ˆ$

ia

+Kp

Ki

Kq(·)/Ir

b(·)/Ir

Figure 5.2: Proposed complementary filter for v estimation.

Section 3.4.1 and reproduced in (5.3)

va = Kev + iaRa + Ladia

dt, (5.3a)

τ = Kqia, (5.3b)

Irv = τ − τa, (5.3c)

5.2.1 Estimation of desired variables for aerodynamic mechanical power

From the aerodynamic mechanical power model (5.2), the required variables for theestimation of Pam are current ia, rotor speed v and rotor angular acceleration v.Given that v measurements (Figure 5.3) obtained using the zero-crossing detectionhave minimal noise compared to current measurements (Figure 3.7), the desired vari-ables to estimate or filter are thus ˆv and ia.

5.2.1.1 Rotor angular acceleration ˆv estimation

There is no direct measurement of the rotor acceleration. Carrying out dirty timederivatives on v leads to undesirable results even with the low level of noise in thev measurements. This is because the noise level is attenuated by the 1kHz sam-pling rate. Hence it is necessary to do some filtering on v to obtain ˆv. As such acomplementary filter is proposed that combines (5.3b) and (3.4). The schematic forthe complementary filter is shown in Figure 5.2. The result of the estimated angularacceleration ˆv as well as v from the complementary filter are shown in Figure 5.3.

5.2.1.2 Current ia filtering

From results in Figure 3.5 and 3.6 in Chapter 3, it is clear that there is a substan-tial amount of noise in the current measurements. The amplitude of the noise inthe current signal increases with increasing current magnitude. Based on (5.3a), acomplementary filter is proposed to obtain filtered estimates of current ia, ia. Thecomplementary filter is shown in Figure 5.4 and the results of the current as well as

Page 130: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

108 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

320

340

360

Estimated and measured rotor velocity

[rad/s]

¯

ˆ

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2−200

0

200

400

600

Estimated rotor angular acceleration

Time [s]

ˆ[rad/s2]

Figure 5.3: The v and ˆv estimation results from the proposed complementary filter.

the filtered currents are shown in Figure 5.5. It should be noted that in the devel-opment of the filter, the ∆ = kai2

a additional term in (3.7) is treated as a disturbanceterm and therefore not included in (5.3a).

Therefore an estimate of the aerodynamic mechanical power input into the airPam, can now be computed directly from the measured and estimated variables. Sub-stituting the filtered estimates into (5.2b),

Pam =(Kq0 − Kq1 ia

)iav− Irv ˆv, (5.4)

Note that the raw measurements of v do not require filtering. Once power has beenestimated, it is used in the estimation of thrust as described in Section 5.3.1.

5.2.2 Aerodynamic mechanical power controller

Unlike current rotor speed control, controlling aerodynamic mechanical or electrome-chanical power involves controlling both the rotor speed and electric current to reachthe desired aerodynamic state. These two are competing variables linked by (5.3a).Looking at the direct relationship between torque and current (τ = Kqia), it becomesobvious that controlling motor current is indirectly controlling rotor torque. Previ-ous work on torque control of BLDC motors has been carried out in the electronicsindustry Liu et al. [2005]. In the multirotor community, it has yet to gain any interestas the electric current is not the physical entity that interacts with the aerodynamic

Page 131: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.2 Aerodynamic Mechanical or Electromechanical Power Estimation 109

+

Z

+

+

Z

$

ia ia

Kp

Ki

˙ia

Ra

1/La

va

++

Ke

Figure 5.4: Schematic diagram of the proposed complementary filter for current.

surroundings of the rotor.

Hence for the regulation of aerodynamic mechanical power for small scale electri-cally powered multirotor aerial vehicles, a cascaded hierarchical control architectureis proposed. The proposed aerodynamic mechanical power controller architectureshowing the two control levels, proportional gains, feedforward terms, signal condi-tioning and saturation block is shown in Figure 5.6. The architecture has current con-trol in the inner-loop and an outer-loop aerodynamic mechanical power controller.

To model the feedforward terms f1(vda) and f2(Pd

am) in the proposed aerodynamicmechanical power, it is necessary to assume static free air hover condition. In thisinstance, Pd

am = CPam v3. From (5.3a), there is a linear relationship between va and v.Hence, Pd

am is a cubic function of va.

To define f1(vda), recall from (3.9) in Section 3.4.1.3, ia = const.v2 and consider

the motor electrical dynamics at steady state ( diadt = 0) defined by (5.3a),

vda = const1.

√ida + const2.id

a .

The low-level current controller is crucial in generating fast v responses usinghigh-gain feedback control. With a 1kHz sampling rate on the ESC, a system iden-tification on current to voltage input produces two poles; one as a result of the fastelectrical dynamics due to the inductance La of the motor and the other a slow poleas a result of the rotor inertia. The 1kHz sampling frequency does not capture thedynamics of these fast electrical motion and is thus uncontrollable. Hence, only theslow pole as a result of the inertia of the rotor can be controlled. Any high-gain cur-rent control of this pole will result in an unstable system. To avoid this and enablefaster responses, the use of a feedforward approach which ensures that higher electri-cal power is initially input into the system thus pushing the current and rotor speedto reach their desired states within a short period of time is proposed. The outputof the controller is the desired voltage va which is set as a percentage of the battery

Page 132: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

110 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

0 5 10 15

1.5

2

2.5

3

3.5

Estimated and measured currenti a

[A

]

Time [s]

ia

ia

Figure 5.5: Current filtering result.

Table 5.1: Feedforward terms.Term Polynomial R2

f1(vda)) 0.1159(vd

a)2 − 0.4464vd

a + 0.6073 0.9985f2(Pd

am) 0.0002(Pdam)

3 − 0.0163(Pdam)

2 + 0.4853Pdam + 1.2127 0.9986

voltage known as duty cycle. Thus the inner-loop current controller is defined by

va = v f f (ida)− K1

p

(ia − id

a

), (5.5)

where v f f (ida) is a feedforward voltage defined by f1(vd

a). Stability bounds and thedesign of K1

p are discussed in Section 5.3.2 and in Appendix A. K1p is designed such

that the current dynamics have a high stable overshoot with a damping factor lessthan 0.1.

In summary, to be able to compute and control aerodynamic mechanical powerPam, the polynomial coefficients of f1(vd

a) and f2(Pdam) need to be identified using

linear regression. Figure 5.7 and Table 5.1 show the two identified feedforward mod-els along with the polynomial coefficients and R2 of fit for the motor-rotor systemdescribed in Section 3.4.

Page 133: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.3 Application of Aerodynamic Mechanical Power to Thrust Computation and Control111

Figure 5.6: Aerodynamic mechanical power controller.

0 2 4 6 80

1

2

3

4Current feedforward from voltage

Voltage [V]

Cu

rre

nt

[A]

Experiment

Estimated

(a) Voltage to current feedforward f1(vda).

0 10 20 30 400

2

4

6

8Voltage Feedforward from Power

Power [W]

Voltage [V

]

Experiment

Estimated

(b) Power to voltage feedforward f2(Pdam).

Figure 5.7: Feedforward terms calibration for power controller.

5.3 Application of Aerodynamic Mechanical Power to ThrustComputation and Control

In this section, the models for aerodynamic forces and power developed using mo-mentum and blade element theories in Chapter 4 are used to obtain an implicitmodel of thrust for a single motor-rotor system. This implicit thrust model is basedon the estimated aerodynamic mechanical or electromechanical power presented inSection 5.2 The modelling scheme is of low computational complexity and is imple-mented on an embedded electronic speed controller (ESC) hardware that is used forthrust regulation on multirotor aerial vehicles.

Working with scalar aerodynamic coefficients CT, CH and CPam is better thanworking with the raw thrust and power for use as variables for implementation onan ESC. This is because v varies over a large range for high speed rotors used onquadrotors and as such will be allowed to vary and therefore not included in the key

Page 134: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

112 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

equations (5.8) and (5.9) derived for thrust computation. In hover analysis, where|~vs| = 0, then the CT and CPam coefficients are constant and one recovers the thrustand power models T = CTv2 and Pam = CPam v3 used in existing RPM control sys-tems. However, these relationships are only valid for static aerodynamic conditionsand are invalidated the moment the hover condition is violated; in particular in thepresence of updrafts or downdrafts Leishman [2002]. By modelling the variationin CT and CPam in varying aerodynamic conditions and then measuring Pam and v

on the ESC, one will be able to reconstruct the aerodynamic condition of the rotor,compute CT and consequently compute the actual thrust T even in the presence ofgusts.

In coefficient form, the momentum theory models for thrust T, horizontal forceH and aerodynamic power Pa in (4.34) of Section 4.5.1 are given by

CT = 2ρAR2λi√

µ2 + λ2, (5.6a)

CH = 2ρAR2µi√

µ2 + λ2, (5.6b)

CPa =(

κCTλi + CTλs + κCHµi + CHµs)

R. (5.6c)

To simplify the aerodynamic models obtained in Chapter 4, it is necessary to assumefor a “near ideal” rotor that the rotor aerodynamic parameters Cl0 ≈ 0 and KC2

l ≈0. Thus the models for thrust T, horizontal force H and aerodynamic mechanicalpower Pam in coefficient form given by blade element momentum theory (4.75) inSection 4.5.3 are

CT =14

NbρctipR3Clα(θtip(2 + µ2)− 2λ

), (5.7a)

CH =12

NbρctipR3µ

[Cd0 +

12

X]

, (5.7b)

CPam =14

ρNbctipR4Cd0(2 + 5µ2)+

(CT(κλi + λs) + CH(κµi + µs)

)R, (5.7c)

where

X = Clα

(θtip(λ− b1 + λa0) + 2λ

(4

θtip

3− λ

)− 2λb1

),

and recalling from Chapter 4 that R is rotor radius, Nb denotes the number of blades,ctip denotes the tip chord and θtip denotes the tip pitch.

5.3.1 Thrust computation

The variables in Equations (5.7a)–(5.7c) are CPam , CT, CH, µi, µs, λi, λs, κ and v. Asoutlined in Section 5.2, the aerodynamic mechanical power Pam and therefore CPam

can be estimated by measuring the electrical power into the motor and compensatingfor electrical losses at the local electronic speed controller (ESC) level. Thus, there areseven unknowns CT, CH, µi, µs, λi, λs, κ and four constraint equations ((5.7a), (5.7b),

Page 135: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.3 Application of Aerodynamic Mechanical Power to Thrust Computation and Control113

(5.7c) and (4.64)).In a similar manner to drag force and IMU measurement models presented in

Section 4.4.7, a number of authors have noted that the horizontal velocities vsh, vi

h,force H and therefore µs, µi, CH are related to the horizontal acceleration of the vehi-cle Abeywardena et al. [2013]; Allibert et al. [2014]; Martin and Salaun [2010] and canbe measured using the accelerometers in an inertial measurement unit (IMU). Usingsuch measurements, it should be possible to resolve the remaining four unknownvariables from the algebraic constraints ((5.7a), (5.7c) and (4.64)). Although this ap-pears to be a promising approach, the ESC on a typical quadrotor is not equippedwith an accelerometer and the communication link to the central IMU is far lowerbandwidth (50Hz for the quadrotors developed in Chapter 3) than the ESC controlloop operational frequency (1− 2kHz for ESC32v2), making corrections for horizon-tal aerodynamics difficult.

Rather than take such an approach, it can be argued that the contribution ofthe horizontal variables to the aerodynamics of the rotor is effectively negligible formost aerial robotics applications and can be ignored for low speeds under 10m/s.This claim is supported by computational fluid dynamics results obtained in Luoet al. [2015]. Considering (5.7a) and (5.7c), noting that the µ variable appears asa quadratic µ2. For quadrotors in near hover conditions typical of many roboticapplications, the advance ratio µ is naturally small and consequently its square isnegligible. Furthermore, with vs

h small, consequently vih is also small, such that the

term CH(µs + κµi) ∝ µ2 and can be ignored. Formally, the following assumption is

made.

Assumption 5.1. The advance ratio µ is small such that µ2 ≈ 0 within the accuracy of theaerodynamic model.

This assumption decouples the dependence of (5.7b) with (5.7a) and (5.7c). Thehorizontal components of force CH and velocity ratios µi and µs no longer contributeto the vertical aerodynamics in (5.7a) and (5.7c). This leaves four aerodynamic vari-ables CT, λs, λi and κ along with three constraints (5.7a), (5.7c) and (4.64). It isfirst required to simplify the notation in the sequel by using the following lumpedaerodynamic coefficients

c0 = R, c1 =12

NbρctipR3Clα,

c2 = θtip, c3 =12

ρctipNbCd0R4.

The final constraint equation is obtained by equating the expression for CT derivedfrom momentum theory (5.6a) to the CT from blade element theory (5.7a). FromAssumption 5.1, (5.7a) and (5.7c) can be rewritten respectively as

CT = c1 [c2 − λ] , (5.8)

CPam = c3 + CT

(κλi + λs

)c0. (5.9)

Page 136: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

114 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

Recalling from Assumption 5.1 that µ2 ≈ 0, then (5.6a) becomes

CT = c4λiλ, (5.10)

where c4 = 2ρAR2 = 2ρAc20.

The relationship (5.10) along with (5.8) provide the final constraint which relatesλi and λs. It is convenient to make this relationship explicit rather than work withthe two separate constraint equations. Thus equating (5.10) to (5.8) and collectingterms, yields,

c4

(λi)2

+ λi (c4λs + c1) + c1 (λs − c2) = 0. (5.11)

In summary, one has aerodynamic variables CT, λs, λi and κ, constraint equations(4.64), (5.8), (5.9) and (5.10), depending on aerodynamic constant coefficients d0, d1

and c0, c1, c2, c3 and c4. These aerodynamic coefficients are determined offline usinglinear regression described in Section 5.3.3.

The proposed iterative scheme for solving for thrust using (4.64), (5.8), (5.9) and(5.11) (implemented as described in Section 5.4) is outlined in Algorithm 1. Theapproach taken is tailored to exploit the fact that once the stream inflow ratio λs isknown, it is straightforward to compute CT, κ and CPam sequentially, but difficult tocompute a single function of all variables. Two initial estimates are generated λs

1and λs

2 based on the previous estimate of λs and a small offset ∆ of the previousestimate. Then for each estimate λs

k, the aerodynamic variables are computed one-by-one. Consider the implicit function

f (λs) = CPam(t)− CPam ,

where CPam is the computed value based on the guess of λs and CPam(t) is the mea-sured value at the current time t. The goal is to find λs that makes f (λs) → 0. Thetwo initial guesses λs

1 and λs2 form the first two elements of a Newton-Secant itera-

tion that converges to the optimum λs. A simple stopping criteria based on decreasein f (λs

k) with a precision ε is used to exit the loop. In practice, the loop usually con-verges in 3-4 iterations (that includes the two initialisation values) and rarely runsmore than 5 iterations. The arbitrary limit N > 3 on total iterations of the for loopensures that the code meets run time requirements — although N = 20 is used inpractice and have never seen the for loop run to completion.

For the proposed implicit thrust modelling scheme to work, the coefficients c0, c1,c2, c3, c4, d0 and d1 need to be identified using methods described in Section 5.3.3

5.3.2 Thrust control

The proposed hierarchical controller for regulation of thrust is shown in Figure 5.6.The feedforward terms are included to limit the offsets associated with the simpleproportional gains in the control architecture. In the motor model, M1 is a combina-tion of (5.3a) and (5.3c) and models the non-linear dynamics relating va and ia. M2

is the non-linear model that relates ia and the aerodynamic mechanical power Pam

Page 137: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.3 Application of Aerodynamic Mechanical Power to Thrust Computation and Control115

Algorithm 1 Thrust Computation1: Data c0, c1, c2, c3, c4, d0, d1, N, ∆, ε.2: Local state old[λs

k].3: For each measurement CPam(t) =

Pamv3 at time t.

4: Set k = 1; Set λs1 = old[λs

k]− ∆5: for k = 1 . . . N do6: if k = 2 then; Set λs

2 = old[λsk];

7: Use (5.11) to compute λi;8: Use (5.8) to compute CT;9: Use (4.64) to compute κ;

10: Use (5.11) and (5.9) to compute CPam ;11: Compute f (λs

k) = CPam(t)− CPam ;12: if k > 2 and | f (λs

k))− f (λsk−1)| < ε then break

13: Compute λsk+1 = λs

k − f (λsk)

λsk−λs

k−1f (λs

k)− f (λsk−1)

; return

14: Set old[λsk] = λs

k;15: Output T = CTv2;

given by (5.2b) and M3 is the non-linear model that maps Pam to T as outlined inSection 5.3.1.

The low-level current controller is crucial in generating fast v response usinghigh-gain inner-loop control. This avoids the need for exceptionally high gains in theouter-loop where noise in the estimated feedback signals for thrust become a prob-lem. Similar to the aerodynamic mechanical power controller, the low-level currentcontroller is defined by

va = v f f (Td)− K1p

(ia − id

a

), (5.12)

where v f f (Td) is a feedforward voltage defined by f1(Td) in Figure 5.8. In a similarmanner to the aerodynamic mechanical power controller, a negative (unstable) gain−K1

p in the control design is proposed. This is a key aspect of the control design andis important in generating the desired rise time of the full system. To understand therole of the gain, consider the linearisation of the inner-loop current control aroundsome fixed constant thrust condition in static free air derived in Appendix A withclosed-loop transfer function given by

H1(s) =ia

va=

K1p[KeKq + Ra(Irs + δ)

]

Irs + δ− K1p[KeKq + Ra(Irs + δ)

] ,

where δ is a damping factor associated with the linearisation of the aerodynamictorque and Kq =

(Kq0 − Kq1 ia

)(3.9). From the stability condition derived in Ap-

pendix A given by (A.2), K1p is such that K1

p ≤ δKeKq+Raδ , then the poles of this transfer

function can be placed close to the imaginary axis ensuring fast rise time with very

Page 138: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

116 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

Table 5.2: Feedforward terms.Term Polynomial R2

f1(Td) −0.2245T2d + 2.4835Td + 0.6416 0.9939

f2(Td) 0.8949Td − 0.5660 0.9930

high overshoot of the current response. A large overshoot in the current responseprovides the surge of power necessary to spin up (or spin down) the rotor. In orderto prevent over-current, the computed voltage is saturated based on the maximumcurrent through the ESC and the instantaneous v measurement using (2.6). Sincethe actual control design is a pure proportional control and the inherent current dy-namics are stable, the saturation will not destabilise the system. Of course, if K1

p ischosen too large, then the current response could actually become unstable. Basedon the stability bound on K1

p in (A.2), K1p is chosen (K1

p = 0.01) such that the currentdynamics have a high stable overshoot with damping factor less than 0.1.

In the outer-loop, governing actual thrust control, a feedforward and proportionalintegral (PI) feedback controller is proposed for robust control Åström and Hagglund[1988]. The feedback controller design of this system is a straightforward linear de-sign once the inner current control loop is stabilised. The overall control architectureincludes only a single integrator at the outer-level to avoid dynamic complexity. Thestability analysis using linearisation about static hovering condition of the outer-loopcontroller is also presented in Appendix A.

The feedforward terms in the control architecture are obtained by consideringsteady state hover and static free air conditions (|~vs| = 0) and letting ∆ = kai2

a in (3.7)to be dealt with by the integral term of the robust outer-loop proportional integralthrust controller. The feedforward term f1(Td) is derived from (2.6), which gives1

K2e

(vd

a − ida Ra)2

= v2d, hence,

Td =CT

K2e

(vd

a − ida Ra

)2.

Thus a quadratic model for f1(Td) is derived. To obtain f2(Td), consider the electricaltorque (τ = Kqia) and aerodynamic torque (τa = CQv2) at steady state (i.e. v = 0)where CQ is the torque coefficient. Hence ia =

CQKq

v2. This current to rotor speedrelationship is consistent with the model derived in Section 3.4 given by (3.9). Fromthis, it is easily seen that Td = CT

KqCQ

ia, hence, a linear function relating Td and ia isobtained for f2(Td).

Hence to effectively and robustly control thrust, the polynomial coefficients off1(Td), f2(Td) need to be identified using. These polynomial feedforward terms alongwith their R2 values are summarised in Table 5.2. Furthermore, experimental andcomputed estimates are shown on Figure 5.9 for the motor-rotor system described inSection 3.4.

Page 139: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.3 Application of Aerodynamic Mechanical Power to Thrust Computation and Control117

Figure 5.8: The proposed thrust controller architecture.

5.3.3 Calibration of thrust model coefficients

The coefficients that require calibration are c0, c1, c2, c3, c4, d1 and d2. Similar to Chap-ter 3 Section 3.4.1, a laboratory calibration scheme is proposed. From the thrustcomputation equations ((4.64), (5.8), (5.9) and (5.11)) also, one needs to have mea-surements of CPam and CT at different aerodynamic conditions defined by the verticalinflow ratio λ. To do this, measurements of thrust T, aerodynamic mechanical powerPam, rotor speed v and the vehicle or rotor velocity i.e. ~V or ~vs are required.

In a similar manner to Section 3.4.1, the JR3 force-torque sensor is used to providemeasurements of thrust T, rotor speed v and estimated aerodynamic mechanicalpower Pam are obtained from the electronic speed controller (ESC). It is now left togenerate the changing aerodynamic conditions modelled by λ around the rotor. Togenerate non-hover conditions in which the wind speed |~vs| 6= 0 s.t. |~vs| = (~vs)>~e3 6=0 requires changing axial wind. The easiest way to achieve this is to place the rotorin a controlled wind environment. Hence a laminar flow generator for generating an“almost laminar” ~vs

z is required and the motor-rotor system is mounted on a force-torque sensor. The experimental setup is shown in Figure 5.10 and consists of a 6-axisforce-torque sensor JR3 Team [2014], an anemometer, a custom made laminar flowgenerator to provide controllable wind conditions and an ESC equipped with boththe RPM and new controllers.

In the experimental setup, the rotor is inverted for simplicity and a downdraftcondition is generated by the ascending wind. The laminar flow generator is fabri-cated from 10cm long sections of coloured drinking straws glued into the top of theplastic bin in which a 10in propeller is RPM controlled to generate constant streamvelocity ~vs directed in the axial direction. The velocity of the air is hand measuredusing an anemometer. The experimental motor-rotor system is mounted on a force-torque sensor and connected to an isolated ESC. The isolated ESC has the RPM andproposed scheme implemented to control the desired thrust force setpoint Td.

It should be noted that the motor-rotor system is mounted inverted to ensure thatthe external flow is adding to the vertical induced flow rather than oppose it. This is

Page 140: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

118 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

0 1 2 3 4 51

2

3

4

5

6

7

8Thrust to Voltage feedforward

Vo

lta

ge

[V

]

Thrust [N]

Experiment

Estimated

(a) Thrust to voltage feedforward f1 (Td).

0 1 2 3 4 50

1

2

3

4Thrust to current feedforward

Cu

rre

nt

[A]

Thrust [N]

Experiment

Estimated

(b) Thrust to current feedforward f2(Td).

Figure 5.9: Thrust controller feedforward terms.

a more robust experimental configuration that avoids complex stream effects seen indescending rotor aerodynamics that results in any of the vortex states such as vortexring state, turbulent wake and windmill brake state Leishman [2002].

The first aerodynamic coefficient to determine is c3. It can be determined froma standalone experiment. The rotor speed v is changed and at the same time thespeed of the air stream vs

z is increased until the measured thrust is T = 0. There isresidual torque/aerodynamic power which is associated with c3 in (5.9). The com-puted aerodynamic mechanical power is then obtained from the ESC or the torquevalue read off the force-torque sensor. A set of 9 experiments with each experimentrunning for 70s was carried out. The resulting estimate for c3 is

c3 = 1.2998× 10−8 ± 2.355× 10−8. (5.13)

Page 141: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.3 Application of Aerodynamic Mechanical Power to Thrust Computation and Control119

ESC

JR3

FlowGenerator

Thrust

vs

Figure 5.10: Setup for calibration and static experiments.

20 30 40 50 60 70 80 90 100−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

Time [s]

Thru

st [N

]

Thrust Plot

1

2

3

4

5

6

7

8

9

10

(a) Thrust.

20 30 40 50 60 70 80 90 100−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Time [s]

Torq

ue [N

m]*

1000

Torque for zero thrust

1

2

3

4

5

6

7

8

9

10

(b) Torque.

−0.05 0 0.05 0.1 0.15−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

Thrust [N]

Torq

ue*1

000 [N

m]

Thrust and Torque

(c) Regression.

Figure 5.11: c3 determination.

From the resulting thrust and torque, linear regression is then performed from whichthe intercept is the torque at T = 0. With this torque, the mechanical power Pm is

Page 142: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

120 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

computed. It should be noted that the averaging of the data is carried out when thereis no transient in v as seen in the thrust and torque plots shown in Figure 5.11(a)and Figure 5.11(c) respectively. Hence Pam = Pm from which CPam is computed. ThisCPam = c3.

The next stage is to determine c0, c4, d0 and d1 the coefficients associated withthe momentum theory model and the induced power factor κ using (5.9) and (5.10)that are independent of c1 and c2. The parameter c0 = R is nominally the radiusof the rotor. However, this parameter is most important in characterising the crosssectional area of the streamtube in the momentum theory derivation and it dependson the effective operation of the rotors. All rotorcrafts suffer from some effectivedecrease of the rotor radius due to tip loss and other effects. For the “near ideal”rotor blade theory presented in Section 4.5.3 and any standard helicopter referencesuch as Bramwell et al. [2001] for such rotor blades, it is easy to observe that theblades used have significant tip and root cutouts. Using the Prandtl tip loss functionfor low disc loading and rectangular planform helicopter blades indicates that theeffective radius of the rotors is about 90%.

Table 5.3: Estimated aerodynamic coefficients using linear regression.Parameter Estimated Value 95% Confidence Intervalc1 6.1490× 10−5 [5.7215 6.5242]× 10−5

c2 0.2993 [0.2883 0.3135]c3 1.2998× 10−8 [−1.0552 3.6548]× 10−8

d0 4.2959 [−3.0642 11.7926]d1 −1.7154× 105 [−6.7367 3.2139]× 105

c0 0.0724 [0.0637 0.0811]

The aerodynamic parameters will be estimated by undertaking a sequence ofcoupled regressions. The parameters identified in each stage are denoted c0(k), c4(k),d0(k) and d1(k) for k = 1, 2, . . .. For the initial stage, assuming c0(1) = R, the rotorradius which leads to an estimate c4(1) = 2ρπc2

0. Using measurements of thrust T,λs and v and using (5.10), the following relationships are used to obtain λi and λ

from measured λs

λi =−λs +

√(λs)2 + 4CT

c4

2,

λ = λi + λs.

Now using (5.9) along with the estimate for c3 in (5.13), one has

CPam − c3 = c0(k)CTλs + CTλid0(k)c0(k) + C2Tλid1(k)c0(k). (5.14)

A regression on this equation yields values for c0(2), d0(2)c0(2) and d1(2)c0(2). Thevalue for c0(2) is now used to generate a new c4(2) and the λi and λ variables arerecomputed. The regression on (5.14) can be run using the new inflow ratios and

Page 143: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.3 Application of Aerodynamic Mechanical Power to Thrust Computation and Control121

the whole process is iterated until the values converge. Performing this process,one obtains the results summarised in Table 5.3. From the regression, an effectiveradius c0 = 0.57R is obtained; that is 57% of the physical rotor radius R. Thismight appear too low but considering the quality of the construction of such cheapblades with significant root and tip cutouts, it is less surprising that the effective crosssectional area that is appropriate for momentum theory is quite small. Thus the 90%effective cross sectional area indicated by the Prandtl tip loss function is significantlyoverestimated.

Remark 5.1. It is not possible to identify c3 in the same process as c0, c4, d0 and d1 sinceboth processes separately model loss type dissipation in the rotor model.

Finally (5.8) is used to identify parameters c1 and c2. This is a straightforwardregression on the lumped parameters c1c2 and c1. The results of this regression arealso summarised in Table 5.3.

Due to the different units of the various aerodynamic parameters, it is importantto use preconditioning on the data to avoid ill conditioning in various regressions.A preconditioner based on the magnitude of entries in the regression vector is used.The limitations of the experimental system available meant that only N = 5 datapoints were collected for vs

z = (0.0, 1.5, 2.3, 3.3, 4.2)m/s and the associated CT,CPam , λi, λs. This limitation in data leads to large 95% confidence intervals for theparameter estimates as seen in Table 5.3. However, the key requirement for the per-formance of the model is not individual parameter estimates, but rather the accuracyof the model. This is demonstrated firstly in Figure 5.12. Here the projected regres-sions for λ versus CT are plotted which corresponds to (5.8), and CT versus κ whichcorresponds to (4.64). In particular, the increase in efficiency (decrease in κ) withincrease in CT is clearly visible. The high R2 values show good fit of the proposedmodels for the experimental data. Furthermore, the linear relationship between CTand λ modelled by (5.8) is easily identifiable.

Table 5.4: Analysis of Variance (ANOVA) for the two regressions.CPam − c3 = c0e CTλs + CT (d0 + d1CT) λic0e

Source Sum2 DF Mean2

Corrected Total 4.9306× 10−15 4 1.2326× 10−15Model 4.9288× 10−15 2 2.4644× 10−15

Error 1.805× 10−18 2 9.0251× 10−19

CT = c1c2 − c1λ

Source Sum2 DF MeanSqCorrected Total 2.3187× 10−12 4 5.7967× 10−13Model 2.3157× 10−12 1 2.3157× 10−12

Error 2.9474× 10−15 3 9.8246× 10−16

To check the accuracy of the CT (5.8) and CPam (5.9) models, an analysis of varianceANOVA analysis of residuals was performed. The results of this analysis is displayedin Table 5.4 for the degrees of freedom (DF), the sum of squares and mean square

Page 144: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

122 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

0.09 0.095 0.1 0.105 0.11 0.115 0.12 0.1251.05

1.1

1.15

1.2

1.25

1.3x 10

−5

λ

CT

λ and CT

R2=0.99878

Data

Model

1.05 1.1 1.15 1.2 1.25 1.3

x 10−5

2.1

2.2

2.3

2.4

2.5

R2=0.98865

Estimated κ against CT

CT

κ

Data

Model

Figure 5.12: Results for λ against CT and CT against estimated κ.

error. The obtained sum of squares and the mean sum of squares are several ordersof magnitude less than (CT)

2 and (CPam)2. Table 5.5 shows the adjusted R2 which are

almost all equal to 1 implying that the models explain the experimental data to a highlevel of accuracy. Furthermore, the root mean square error (RMSE) for both modelshave magnitudes of orders smaller than the model parameters of the regression thusproviding further evidence on the accuracy of the model.

Table 5.5: Further ANOVA results for the CT and CPam models.Model Adjusted R2 RMSECPam 0.999 9.5× 10−10

CT 0.998 3.13× 10−8

CPam − c3 = c0e CTλs + CT (d0 + d1CT) λic0e ,CT = c1c2 − c1λ.

5.4 Thrust Control Results

A key requirement of motor-rotor control is to obtain good transient response for therotor. To verify that the proposed scheme has a good transient response, a series ofstep responses were undertaken for which one set of results are shown in Figure 5.13.Both the RPM and new controller were tuned to obtain the best transient that couldbe achieved. The transient response of both controllers showed no distinctive dif-ferences and are in the order of 50ms rise time. This rise time is very vital for thehierarchical controller proposed in Section 6.3. The obtained transient response islimited by the physical limitations of the motor-rotor system, primarily current satu-ration, and therefore the rise-time is the best that can be achieved with the hardwarepresented in Chapter 3. Both the proposed thrust and RPM based thrust controlmotor-rotor controllers contain integral terms and will have zero steady-state track-ing error up to the limit of the thrust model. In this case, since the stream velocity

Page 145: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.4 Thrust Control Results 123

9 9.5 10 10.5 11 11.5 121.5

2

2.5

3

3.5

4

Time [s]

Thru

st [N

]

Thrust Transient Response

RPM

New

Figure 5.13: Transient responses of thrust using the two controllers.

~vs = 0, the RPM thrust model should be accurate and the steady-state response ofboth schemes is expected to be the same.

5.4.1 Static rotor experiments

The aim of the static rotor experiments is to demonstrate the improvements of theproposed scheme and controller to regulating thrust to a desired setpoint in the pres-ence of downdrafts of varying strengths. The experimental setup is shown in Fig-ure 5.10 and consists of a 6-axis force-torque sensor JR3 Team [2014], an anemometer,a custom made laminar flow generator to provide controllable wind conditions andan ESC equipped with both the RPM and new controllers.

The experiment is undertaken by adjusting the RPM control on the flow genera-tor until the desired stream velocity is attained. Then the control on the motor-rotoris initiated at the desired thrust setpoint and, after the transient has died out, datacollected from the force sensor for a period of 60 seconds and averaged. A summaryof the mean variation of thrust measured by the force-torque sensor from the de-sired thrust setpoint (Td = 3.2N) when both controllers are subject to downdrafts ofvarying strengths is presented in Table 5.6.

From these results, it is clear that the new controller outperforms the currentstate-of-the-art RPM controller in maintaining the desired thrust setpoint in varyingstrengths of downdrafts. Figure 5.14 shows the resulting variations in v and the ver-tical inflow ratio λ in maintaining the desired thrust setpoint Td by the new scheme.The changes in λ correspond to changes in the strength of the downdrafts. These λ

changes correspond to changes in CT given by (5.8) and therefore thrust. In orderto produce the desired thrust, the new controller changes the desired aerodynamicmechanical power Pd

am which in turn changes the desired v as shown in Table 5.6.Computed λ and the corresponding v along with 1σ variations in the mean of a set

Page 146: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

124 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

Table 5.6: Summary of static test results for mean variations of thrust in N from a

desired value Td = 3.2N and their 1σ variations as percentages(

T−TdTd

%)

.

vsz (m/s)

RPMController

NewController

(N)0 0± 0.2324 0± 3.42570.8 −1.9897± 2.2923 0.0328± 3.67452.2 −10.4906± 3.2013 0.0342± 3.41533.5 −13.7860± 1.9289 0.0078± 3.40753.8 −15.8434± 2.5288 −4.5829± 3.42984.0 −18.6991± 3.7215 −0.0931± 3.34474.2 −20.7216± 0.6022 −1.8781± 2.8694

of sub-experiments using the new scheme and controller in maintaining a desiredthrust setpoint of Td = 3.2N are shown as error bars in Figure 5.14. The measuredthrust by the force-torque sensor along with 1σ variations in the mean are also shownto verify that the desired thrust is maintained irrespective of changes in vs

z. Just aspredicted, the RPM scheme and controller is unable to maintain the desired thrustand becomes less effective with increasing values of vs

z. Because the new scheme isable to estimate dynamic changes in the aerodynamics around the rotor modelled byλ, it is able to instantaneously change the desired rotor speed v at the local ESC level.This is what enables the computation and control of thrust to the desired setpoint asshown in Figure 5.14(c).

5.4.2 Laboratory path following flight test

To evaluate the effectiveness of the proposed scheme and controller in free flight,the quadrotor is made to fly across a room at a desired Vx = −0.3m/s, Vz = 0,height = 1.1m and Vy = y = 0 using the proportional derivative (PD) position andtrajectory tracking controller presented in Section 6.5.1 for both the proposed thrustscheme and RPM based controller. To excite the gust response of the vehicle, the tra-jectory was chosen to fly directly over the “almost laminar” flow generator of radius0.35m located in the middle (0, 0, 0) of the flying space and blowing with a verticalwind of strength vs

z = 3.5m/s. This is a strong gust disturbance for the quadrotorplatforms developed in Chapter 3. The transient responses of the two motor-rotorcontrollers are quantitatively equivalent as shown in Figure 5.13 and the same high-level position/trajectory tracking controller gains are used. It is reasonable to expectthat any qualitative difference in the performance of the closed-loop flight systemwill be due to sensitivity of the motor-rotor response to unmodelled aerodynamiceffects in the thrust model rather than any fundamental difference in the controldesign.

The results for heights and the standard deviations in the lateral y direction forthe RPM based scheme and the proposed thrust computation and control for doing

Page 147: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.4 Thrust Control Results 125

0 1 2 3 4

4800

4900

5000

5100

5200

Velocity vs

z [m/s]

ϖ [

RP

M]

Error bars for ϖ

(a) Rotor speed changes.

0 1 2 3 40.085

0.09

0.095

0.1

0.105

0.11

0.115

0.12

Velocity vs

z [m/s]

λ

Error bars for λ

(b) Vertical inflow ratio changes.

0 1 2 3 41

2

3

4

5

Velocity vs

z [m/s]

Thru

st [N

]

Error bars for Thrust

RPMNew

(c) Thrust variation from RPM and new scheme.

Figure 5.14: Static test results for v, λ and T for varying downdraft strengths.

a path/trajectory following are shown in Figure 5.15. The gust generator centred at(0, 0, 0) and gust distribution is shown in green on both figures. A scaled graphic ofthe quadrotor with centre of mass indicated by ⊗ is superimposed on both figuresto provide an indication of when the front rotor encounters the flow region when itis at a distance 0.8m away from the centre of the gust in Figure 5.15.

To interpret the trajectories shown in Figure 5.15, it is important to realise that thegust is not applied evenly to the vehicle. During forward motion, the tip of the frontblade touches the updraft when the centre of mass of the vehicle represented by ⊗is roughly 0.8m from the centre of the updraft. With the RPM controller, the updraftinduces a strong upwards pitching motion that directs the centre of the quadrotor (⊗)towards an upwards trajectory, even though at this time the centre of the quadrotor isstill some distance from the gust. Moreover, as the vehicle crosses the gust, the frontrotor exits first and the vehicle descends even while the rear rotor is still in the gust.In contrast to the RPM controller, the thrust control algorithm is not significantly

Page 148: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

126 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

−1 −0.5 0 0.5 1 1.5

1.08

1.12

1.16

1.2

He

igh

t [m

]

X Position [m]

Height comparison in updraft

−1 −0.5 0 0.5 1 1.5

0

1

2

3

Win

d S

pe

ed

[m

/s]

RPM

New

(a) Height deviations.

−1 −0.5 0 0.5 1 1.50

0.1

0.2

0.3

X Position [m]

σ in

Y [

m]

Lateral Deviation for RPM and New Controllers

−1 −0.5 0 0.5 1 1.5

0

1

2

3

Win

d S

pe

ed

[m

/s]

RPM

New

(b) Deviation of the translational motion.

Figure 5.15: Path following results for the proposed and RPM controllers.

affected by the gust and the quadrotor trajectory is not significantly disturbed.It is interesting to note that the lateral deviation of the vehicle is even more ex-

treme than vertical divergence. This is due to the instability of the two opposing aircolumns interacting with each other. The destabilisation of the air column interactioncauses strong roll (and pitch) disturbances and lead to the vehicle veering stronglyoff course. This effect is most significant during the entry phase as the quadrotor isbeing forced to ascend and the controller is fighting against the updraft. As the frontrotor exits the flow region, the quadrotor tips forward and accelerates, providingmore lateral control and allowing the quadrotor to regain control. It is clear that thisinstability is significantly reduced when using the proposed thrust controller.

5.5 Conclusion

This chapter used the aerodynamic rotor modelling of quadrotors presented in Chap-ter 4 to derive an implicit thrust model for multirotor aerial vehicles. Using the elec-trical dynamics of the motor-rotor system, complementary filters were proposed thatenable the estimation of aerodynamic mechanical power. With the estimated aero-dynamic mechanical power, an implicit thrust modelling scheme for fixed-pitch elec-trically powered multirotor aerial vehicles was presented. The proposed modellingscheme cannot only estimate thrust but also the changing aerodynamic conditionsaround a motor-rotor system. Procedures for laboratory calibration of the proposedthrust modelling scheme was also presented.

A proportional controller was proposed for regulating the aerodynamic mechani-cal power while a robust proportional integral controller was proposed for regulatingthrust. At the inner-level of both controllers is a high-gain current control loop forfast rise time and a damping ratio of 0.1. Both controllers consist of feedforwardterms that were also modelled. The controllers and thrust estimation scheme areimplemented on an ESC32v2 hardware running at 1kHz. The entire scheme runs onthe embedded hardware with 44% flash (57.92kBytes) and 52% (10.808kBytes) RAM

Page 149: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§5.5 Conclusion 127

CPU usage.Through static tests, the power based thrust modelling scheme along with the

controller was shown to be superior to the RPM based controller in maintaining adesired thrust setpoint. In addition, the proposed thrust controller showed reducedtracking errors compared to the classical RPM controller in maintaining a desiredflight path in the presence of an updraft with the quadrotor running the same high-level trajectory/position controller.

Page 150: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

128 Aerodynamic Mechanical Power Application to Thrust Modelling and Control

Page 151: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Chapter 6

State Estimation and Control ofQuadrotors

6.1 Introduction

At the heart of almost every quadrotor avionics system is a state estimator that usesmainly measurements of strapdown sensors. The performance of the vehicle is afunction of the filter response and quality of the estimated state variables. The systemgain margin depends directly on filter fidelity given that the higher the gain that canbe applied, the more aggressive is the vehicle. As the name implies, this chapter willdescribe the proposed state estimation and controllers for quadrotors, specifically thequadrotor hardware described in Chapter 3.

From the review on attitude representation in Section 2.6, Euler angles, rotationmatrices as well as quaternions have been used to represent the attitude of quadro-tors. Although Euler angle representation is intuitive, it has several disadvantagesincluding the fact that it suffers from gimbal lock (that is singularity problem) andthe estimation process is embedded in a 3× 3 rotation matrix. Furthermore, for aspecified desired position/velocity, the associated desired yaw will be physically adifferent orientation. As such, Euler angles will not be used in this development.Given the amount of computational power available on the current STM32 basedavionics boards, the computational constraints associated with rotation matrix rep-resentation such as storage and computations (including normalisation to reducerounding off errors) can be handled without any computational overkill. Quater-nions, the standard attitude representation in three-dimensional computer graphicengines do not suffer from gimbal lock and consume less memory for computationssuch as normalisation and suffer less from rounding errors than rotation matrices.However, they do suffer from the so called double cover problem. As such, this de-velopment will use quaternions extracted from estimated rotation matrices obtainedfrom the observer and a quaternion based attitude controller.

For attitude estimation, a coupled non-linear inertial and body-fixed frame filteris proposed. Both filters use accelerometer and gyroscope measurements providedby an inertial measurement unit (IMU) and a magnetometer attached to the vehi-cle. The inertial-fixed frame filter uses either Vicon position estimates or GPS data

129

Page 152: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

130 State Estimation and Control of Quadrotors

as measurements for velocity, while the body-fixed frame filter uses the drag forcemodel presented in Chapter 4 and a proposed vertical body-fixed frame velocitymeasurement estimation scheme derived from barometric height measurements toobtain the full body-fixed frame velocity measurements. The outputs of the coupledcomplementary filters are attitude and the different velocities of the vehicle at thefilter frequency of 200Hz.

Based on time scale separation of the different dynamic levels, a hierarchical con-trol approach is adopted. A quaternion based attitude controller with feedforwardterms for precise trajectory tracking is proposed as the mid-level controller. Un-der the proposed attitude control law, the attitude error dynamics are shown to benon-autonomous. Using passivity based Lyapunov analysis and showing that thelinear dynamics are uniformly completely observable (UCO), the error dynamics areshown to be locally exponentially stable under the proposed control law. At thehighest level of the hierarchy, a position/trajectory tracking and a velocity controllerare proposed. The trajectory tracking controller uses the available position and ve-locity measurements from Vicon measurements or a global positioning system (GPS)to output the desired attitude as well as the desired feedforward terms for precisetrajectory tracking. The resulting linear error dynamics are block diagonal matri-ces with eigenvalues in the left plane indicating local exponential stability under theproposed control law.

From the observers, using IMU-only measurements and a barometer, the fullbody-fixed frame velocity measurements and estimated velocity are always available.This is exploited in the second high-level controller, the velocity controller. Thiscontroller uses the desired velocities, their derivatives and a desired orientation in~e1 ∈ A. Using Lyapunov analysis and showing that the resulting linear systemof the velocity error dynamics is uniformly completely observable (UCO), implieslocal exponential stability under the proposed velocity control law. The output of thehigh-level controllers are the desired attitude in quaternion along with feedforwardterms. From algebraic analysis, using higher derivatives of the vehicle’s position(up to jerk that is the third derivative of position) and the derivatives of the desiredtrajectory, these desired feedforward terms (angular velocity and acceleration) fordoing precise velocity tracking are obtained. With local exponential stability for boththe high-level controllers, mid-level attitude controller and low-level motor controller(see Appendix A), by the notion of input-to-state stability (ISS), the entire system istherefore locally exponentially stable.

Finally, results are presented to show the overall performance of the observer andthe response of the vehicle’s dynamics in doing aggressive manoeuvres. The attainedperformance is the best possible performance than can be obtained with the hardwaredescribed in Chapter 3. For the remainder of the chapter, the notation used is if s isa signal, then its true value is s, with measurement s, estimated value s and desiredsetpoint sd. To reduce notational confusion, if s is a vector, the vector notation (~s)used in Chapter 4 will not be used. With the exception of the vector components ofquaternions and the unit directional vectors ~e1,~e2,~e3, vectors are instead representedby bold fonts i.e. s.

Page 153: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.2 Non-linear Velocity Aided Attitude Estimation 131

Figure 6.1: Overview of the proposed coupled complementary filters.

6.2 Non-linear Velocity Aided Attitude Estimation

In this section, a coupled velocity aided attitude filter in the body-fixed and inertialframes for a quadrotor vehicle is proposed. In each of the reference frames is a com-plementary filter which estimates the velocity and attitude R ∈ SO(3) of the vehiclein that reference frame. The body-fixed frame B filter uses inertial measurementunit (IMU) and magnetometer measurements as well as relies on height sensing froma barometric pressure sensor and a drag force model to provide full body-fixed framemeasurements of velocity. With these measurements, estimates of the vehicle velocityin B (V) are made. Parallel to this is a second filter in the inertial frame A whichuses IMU, magnetometer and either a global positioning system (GPS) or Vicon mea-surements to provide estimates of the vehicle velocity (v) in inertial frame A andattitude R. The two filters are made to converge using coupled innovation terms andas a result are able to provide estimates of the wind velocity w ∈ R3 in the inertialframe. The convergence of the attitude is such that AR = BR> or R2 = R>1 = R = Rwhere 1 and 2 are used to denote variables in Filter 1 (body-fixed frame) or Filter 2(inertial frame) respectively. The proposed framework for the coupled inertial andbody-fixed frame filters are shown in Figure 6.1.

From Chapter 3 and the review on current avionics boards in Section 2.3, it canbe assumed that the quadrotor is equipped with a strapdown inertial measurementunit (IMU) and a 3-axis magnetometer which measures the magnetic field µµµ ∈ R3.Unlike the SO(3) filter presented in Appendix C which uses the raw magnetic fieldmeasurements as vectorial measurements, in the proposed filter, the roll and pitch

Page 154: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

132 State Estimation and Control of Quadrotors

are decoupled so that the magnetometer only gives information on yaw. If µµµ ∈ R3 isthe earth’s magnetic field measured in A, and R is the true attitude of the vehicle,then the decoupled estimated magnetic field is

µµµ = R>µµµ.

Let the operator Pa denote the anti-symmetric projection operator in square matrixspace defined by

Pa(H) =12(H − H>), (6.1)

where H ∈ R3×3. Let u be some positive scalar, βββ ∈ R3 denotes the bias in ameasurement, subscripts 1 and 2 denote internal variables used in Filter 1 in Band Filter 2 in A respectively. Assuming that the trajectory of the quadrotor issmooth with ΩΩΩ(t), ΩΩΩ(t), v(t), v(t), V(t) and V(t) bounded, the following observerspresented in Theorem6.1 and 6.2 are proposed. For the filter in the body-fixed frameB (Filter 1), the following is proposed.

Theorem 6.1. Let kvc1 , kr

1, ku1 , kβa

1 be positive scalar gains with measurements ΩΩΩ = ΩΩΩ, a =a, V = V and µµµ = µµµ, then consider the observer

˙V1 = −(ΩΩΩ− βββΩ1 )×V1 + gX>1 ~e3 + a− βββ

a1 −∆∆∆v

1 − kvc1 ∆∆∆vc

1 , (6.2a)

X1 = u1R1 + u1˙R1, (6.2b)

˙R1 = R1(ΩΩΩ− βββΩ1 )× − kr

1∆∆∆r1×R1 + R1∆µ

1 − ∆rc1 R1, (6.2c)

u1 = −ku1 gV>1 R>1 ~e3, (6.2d)

˙βββa1 = kβa

1 ∆∆∆v1 − kβac

1 (βββa1 − βββ

a2), (6.2e)

˙βββΩ1 = kβΩ

1 ∆∆∆r1, (6.2f)

where V = V − V, X = uR is the scaled rotation and the upper triangular orthogonaldecomposition of X. The initial conditions are V1(0) = V1(0), X1(0) = u1(0)R1(0),u1(0) = 1, R1(0) = I and I is the identity matrix. The innovation terms ∆∆∆v

1, ∆∆∆r1, ∆µ

1 aredefined by

∆∆∆v1 = kv

1(V1 −V1), (6.3a)

∆∆∆r1 =

gu1

R1V1 ×~e3, (6.3b)

∆µ1 = kµ

1 (((µ× µ)>X>1 ~e3)X>1 ~e3)×, (6.3c)

and the coupling innovation terms ∆∆∆vc1 and ∆rc

1 are defined by

∆∆∆vc1 = V1 − R>1 (v2 − w), (6.4a)

∆rc1 = krc

1 Pa(R1R>2 ), (6.4b)

Page 155: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.2 Non-linear Velocity Aided Attitude Estimation 133

then for almost all initial conditions, V1(t) = V1(t) and R1(t) = R1(t).

The proof of this theorem (Theorem 6.1) with the biases that is βββ and couplingterms set to zero is found in Appendix D. It should be noted that the scalar u is ameasure of the convergence of the filter and can therefore be used as an indicationof the quality of the estimated signals for control applications.

For the inertial frame filter that is Filter 2, the following complementary filter isproposed.

Theorem 6.2. Consider the model (4.1) in the A frame of reference with measurementsa = a, ΩΩΩ = ΩΩΩ and v = v. Let kr

2, ku2 , kw

2 , kβa2 , kv

2 be positive scalar gains, then consider theobserver

˙v2 = R2(a− βββa2) + g~e3 −∆∆∆v

2 −∆∆∆vc2 , (6.5a)

˙R2 = R2(ΩΩΩ− βββΩ2 )× − kr

2∆r2∆r2∆r2×R2 − ∆rc

2 R2, (6.5b)

u2 = −ku2 gv>2 ~e3, (6.5c)

˙w = −kw2((w− v2) + R1V1

), (6.5d)

˙βββa2 = kβa

2 ∆∆∆v2 − kβac

2 (βββa2 − βββ

a1), (6.5e)

˙βββΩ2 = kβΩ

2 ∆∆∆r2, (6.5f)

with initial conditions v2(0) = v2(0), u2(0) = 1, w(0) = w(0), R2(0) = I and v(t) =v(t)− v(t). The innovations ∆∆∆v

2 and ∆∆∆r2 are given by

∆∆∆r2 =

gu2

v2 ×~e3, (6.6a)

∆∆∆v2 = kv

2(v2 − v). (6.6b)

The coupling innovation terms ∆∆∆vc2 and ∆rc

2 are given by

∆∆∆vc2 = kvc

2((v2 − w)− R1V1

), (6.7a)

∆rc2 = kc

2Pa

(R2R>1

), (6.7b)

then for almost all initial conditions, v2(t)→ v2(t), w→ w and R2(t)→ R2(t).

In Section 6.6, experimental results of flying in a high accuracy Vicon motioncapture environment Vicon Motion Systems Ltd [2015] and outdoor GPS to illustrateconvergence of the two filters are presented. Given that the magnetometer’s ~e1 di-rection is aligned with the magnetic north pole, the onboard estimated ~e1 directioncan be different from the inertial frame attitude measurements using either Vicon orsome external inertial sensor. To overcome this, the following additional innovationterm (6.8) for Filter 2 in A is proposed

∆v = −kvicon2 R(~e1 × RR>v~e1)×R, (6.8)

Page 156: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

134 State Estimation and Control of Quadrotors

where Rv is the attitude measured by Vicon motion capture system or the source andkvicon

2 ∈ R3×3 is a positive definite gain matrix.

6.2.1 Body-fixed frame and inertial velocity measurements

The inertial velocity measurements v are provided on the vehicle either by the globalpositioning system (GPS) at 5Hz or by Vicon position estimates at 40Hz. From Viconposition estimates, the measured velocity is obtained using the following filter witha rise time of tr = 75ms

ζζζ =ζζζ(t)− ζζζ(t− δt)

δt, (6.9)

v(t) = 0.5V(t) + 0.5ζζζ(t− δt), (6.10)

where ζζζ is the measured Vicon position estimates, δt is the time difference betweenthe current time t and previous time of the position estimates and v is the estimateof the measured vehicle velocity. This goes into Filter 2, the inertial frame filter asvelocity measurements.

For the body-fixed frame velocity measurements, from Section 4.4.7, the followingequations can be used to obtain the body-fixed frame translational velocity (Vx, Vy)measurements from accelerometer measurements a and drag coefficient c using thedrag force model presented in Section 4.4.6

ax = az cVx,

ay = az cVy.

To obtain the body-fixed frame velocity measurements in the ~e3 direction Vz, theconcept of using aerodynamic power will be left for a future work. The currentdevelopment uses height measurements provided by the barometers fitted on thePX4/Pixhawk avionics board. If the barometer measured altitude is z, z is an estimateof the height from the measurements, vzm are pseudo velocity measurements, thenthe following complementary filter for the estimation of vz, the measured vehiclevelocity in ~e3 in inertial frame is proposed

˙z = vmz − k4 (z− z) , (6.12a)

˙vmz = ~e>3(

Ra)+ g− βaz − k5 (z− z) , (6.12b)

βaz = k6 (z− z) , (6.12c)

where k4, k5, k6 are positive scalar gains and βaz ∈ R is an estimate of the bias.From a flight test, results comparing the barometer measured heights (z) to the es-timated heights (z) and ground truth Vicon height measurements are shown in Fig-ure 6.2. The results show that the computed estimated velocity (red) equals theground truth Vicon velocity (blue) measurements despite a slight drift in barometerheight measurements with time as indicated by the raw barometer (green) and fil-tered/estimated (red) measurements compared to Vicon measurements (blue). The

Page 157: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.3 Proposed Hierarchical Control Structure 135

0 5 10 15 20 25 30 35 40 45 50−1

−0.5

0

0.5

1

1.5

Time [s]

vz [

m/s

]

Velocities from barometer and vicon

vicon

estimated

0 5 10 15 20 25 30 35 40 45 50−1

0

1

2

Height for barometer, estimated and vicon

Time [s]

He

igh

t [m

]

baro

estimated

vicon

Figure 6.2: Estimation of height and vertical velocity using onboard barometric sen-sor.

initial jump in barometer height measurement is as a result of changes in the backpressure as a result of the sudden change in back pressure caused by arming of thequadrotor. In the absence of inertial velocity measurements, Filter 2 of Theorem 6.2becomes invalid thus only R and V are made available.

In the remainder of the chapter, based on a hierarchical controller approach, highperformance controllers with the exception of thrust control presented in Chapter 5for quadrotors will be presented.

6.3 Proposed Hierarchical Control Structure

Quadrotor control has been mainly done using a hierarchical control structure Huaet al. [2013]. This is a valid approach given the different dynamic levels that canbe characterised based on time-scale separation. The different dynamic levels ofa quadrotor are low-level thrust control, mid-level attitude control and high-levelposition/trajectory tracking or velocity controller. Hence a hierarchical controller isproposed. Figure 6.3 shows the proposed hierarchical controller architecture. For thedifferent dynamic levels, the following controller and system performances shown inTable 6.1 have been obtained to reaffirm the application of time-scale separation.

Remark 6.1. It should be noted that in Chapter 5, Figure 5.13, the transient responses of boththe RPM and the proposed power based thrust controller were shown to have a rise time of50ms. This is the best that can be attained with the ESC32v2 and the motor-rotor hardware.

Page 158: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

136 State Estimation and Control of Quadrotors

Figure 6.3: The proposed control architecture.

Table 6.1: Sampling frequency and response time for the different sublevels of aquadrotor.

System Frequency and Response TimeThrust 1kHz, 50msAttitude 200Hz, 100msPosition 40Hz, ≈ 1s

In Section 6.4 and 6.5, the theoretical development of the mid-level attitude con-troller and high-level position/trajectory and velocity controllers will be presentedrespectively. The results of the non-linear complementary filter as well as the con-trollers are presented in Section 6.6 and 6.7 respectively.

Remark 6.2. It should be noted that though the velocity controller operates at the filter orattitude controller frequency of 200Hz, the dynamic response of velocity is of similar mag-nitude to the position transient response (rise time of ≈ 1s), hence, the velocity controller isconsidered as a high-level controller.

6.4 Attitude Control For Precise Trajectory Tracking or Veloc-ity Control

In this section, the mid-level attitude controller is presented. In order to do precisetrajectory tracking or velocity control, feedforward terms arising from the computedtorque contribution of the drag forces, desired angular velocity and acceleration com-puted from a high-level position/trajectory tracking controller or velocity controllerare assumed available. With the proposed controller, the resulting error dynamicsof the attitude will be shown to be non-autonomous. Exploiting the passivity ofthe system using Lyapunov stability theorem, local asymptotic stability of the re-sulting non-autonomous attitude error dynamics under the proposed controller isshown. Linearising the error dynamics and using the uniformly completely ob-servable (UCO) property of the resulting time varying state stability matrix, localexponential stability of the linear system under the proposed control law is shown.

Before presenting the mid-level attitude controller, the following assumption ismade.

Page 159: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.4 Attitude Control For Precise Trajectory Tracking or Velocity Control 137

Assumption 6.1. The attitude and velocity estimates from the velocity aided attitude filterproposed in Section 6.2 have converged, that is R(t) = R(t) and V(t) = V(t).

Since it is important that the filter be allowed to stabilise prior to flight impliesthat the transient error convergence of the filter is not of consequence in the closed-loop control response. The all pass nature of the complementary filter along with thehigh sample rate of the filter make Assumption 6.1 a viable assumption in practice.

If the quaternion q = (qw, qx, qy, qz)> = (q0, q1, q2, q3)> is the current attitude ofthe vehicle and qd is the desired attitude in quaternion, then the error quaternion isdefined by

qe = q−1d ⊗ q, (6.13)

where ⊗ is the quaternion multiplication defined by (B.10). The angular velocityerror is defined by

ΩΩΩ = ΩΩΩ−ΩΩΩd, (6.14)

where ΩΩΩd is the desired angular velocity. Taking the derivative of (6.13), one obtainsthe error kinematics

qe = −12p (ΩΩΩd)⊗ qe +

12

qe ⊗ p (ΩΩΩ) , (6.15)

where p (ΩΩΩ) = (0, ΩΩΩ)> and p† is an operator that extracts the vector part of thequaternion (that is, an inverse operation of p(·)). Let

P(q) : <4 → <,

denote the projection such that

P(q0,~q) := q0. (6.16)

It is easily verified that for any quaternion q and angular velocity p(ΩΩΩ)

P (q⊗ p(ΩΩΩ)) = P(p(ΩΩΩ)⊗ q) = −~q>ΩΩΩ = −ΩΩΩ>~q.

Applying the projection operator P on (6.15),

qe0 = −12

ΩΩΩ>~qe. (6.17)

Let ΩΩΩd denote the desired angular acceleration of the desired trajectory, consider thefeedforward torque defined by

τττd := IΩΩΩd +ΩΩΩd×IΩΩΩ− Ga(ΩΩΩd)− τττD, (6.18)

where τττD is the torque arising from the rotor drag force described in Section 4.4.6

Page 160: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

138 State Estimation and Control of Quadrotors

given by (4.21). The error dynamics are given by

I ˙ΩΩΩ = IΩΩΩ− IΩΩΩd,

I ˙ΩΩΩ = −ΩΩΩ×IΩΩΩ + Ga(ΩΩΩ) + τ − IΩΩΩd. (6.19)

Theorem 6.3. Let ΩΩΩd denote a desired trajectory for the attitude dynamics and assume thatΩΩΩd is known and that the signals ΩΩΩd, ΩΩΩd and ΩΩΩd exist and are bounded. Let k > 0 bea scalar gain, let Kq, KΩ ∈ R3×3 be positive definite symmetric gain matrices such thatI − 1

k KΩKq = 0 and let k2 > 0 s.t. KΩ ≥ k2 I. Consider the control law

τττ = τττd − KΩ(ΩΩΩ + Kq~qqqe

). (6.20)

Then the error kinematics (6.15) and error dynamics (6.19) of the attitude are almost semi-globally asymptotically and locally exponentially stable around the identity quaternion qI =(1, 0, 0, 0)> and angular rate error ΩΩΩ = (0, 0, 0)> under the control law (6.20).

Proof. Substituting for τ in (6.19), one obtains the non-autonomous error dynamics

I ˙ΩΩΩ = −ΩΩΩ×IΩΩΩ + Ga(ΩΩΩ)− KΩ(ΩΩΩ + Kq~qqqe

). (6.21)

Consider the following Lyapunov function

L(qe, ΩΩΩ

)= 2 (1− qe0) +

12k

ΩΩΩ>

IΩΩΩ. (6.22)

The derivative of L isddtL = −2qe0 +

1k

ΩΩΩ>

I ˙ΩΩΩ. (6.23)

Substituting for qe0 using (6.17) and for IΩΩΩ using (6.19), (6.23) becomes

L = ΩΩΩ>~qe +

1k

Ω>(−ΩΩΩ×IΩΩΩ + Ga(ΩΩΩ)− KΩ

(ΩΩΩ + Kq~qe

)). (6.24)

Since ΩΩΩ>

ΩΩΩ× = ΩΩΩ× ΩΩΩ = 0,

L = ΩΩΩ>~qe +

1k

ΩΩΩ> (−KΩΩΩΩ− KΩKq~qe

). (6.25)

Therefore,

L = −1k

ΩΩΩ>KΩΩΩΩ + ΩΩΩ

>~qe −

1k

ΩΩΩ>KΩKq~qe, (6.26)

Hence from the theorem statement,

L = −1k

ΩΩΩ>KΩΩΩΩ. (6.27)

Since L is semi-positive definite and unbounded in ΩΩΩ, while the quaternion group iscompact, ΩΩΩ and qe are bounded signals since the reference signal ΩΩΩd is bounded, it

Page 161: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.4 Attitude Control For Precise Trajectory Tracking or Velocity Control 139

follows that all signals are bounded and therefore solutions exist for all time.

In the following developments, Barbalat’s lemma is used to show asymptoticstability by showing that a function is uniformly continuous. Starting with L withderivative L

d2

dt2L = −2k

ΩΩΩ>KΩI−1 (−ΩΩΩ×IΩΩΩ + Ga(ΩΩΩ)− KΩ(ΩΩΩ + Kq~qe)

). (6.28)

All signals on the right-hand side of (6.28) are bounded and this demonstrates thatL1 is uniformly continuous. Applying Barbalat’s lemma, it follows that L convergesto zero and hence ΩΩΩ is globally asymptotically stable to zero. To show that qe → qI ,it is first required to show that ˙ΩΩΩ→ 0 as t→ ∞. To do this, Barbalat’s lemma will beused a second time. Observe that the integral

∣∣∣∣∫ T

0

ddt||IΩΩΩ||dt

∣∣∣∣ =∣∣||IΩΩΩ(T)|| − ||IΩΩΩ(0)||

∣∣ < ∞,

is bounded since ΩΩΩ is globally asymptotically stable. It is straightforward to verifythat d2

dt2 ||IΩΩΩ|| is bounded by using boundedness of the system signals, in particular,boundedness of Ωd. It follows that d

dt‖IΩΩΩ‖ is uniformly continuous and Barbalat’slemma shows that d

dt‖IΩΩΩ‖ → 0. This implies that ‖I ˙ΩΩΩ‖ → 0.

Consider the error dynamics (6.21), rearranging and taking norms yields

‖KΩKq~qe‖ =‖I ˙ΩΩΩ + ΩΩΩ×IΩΩΩ− Ga(ΩΩΩ) + KΩΩΩΩ‖,≤‖I ˙ΩΩΩ‖+ ‖ΩΩΩ×IΩΩΩ‖+ ‖Ga(ΩΩΩ)‖+ ‖KΩΩΩΩ‖.

The terms on the right hand side are all globally asymptotically stable to zero asit has been shown that ΩΩΩ and ˙ΩΩΩ are asymptotically stable to zero, it follows that‖KΩKq~qe‖ → 0. Since KΩKq is full rank, it follows that qe → ±qI . To show almostglobal asymptotic stability of (qI , 0), it can be shown by suitable choice of k > 0, onecan ensure that the basin of attraction of (qI , 0) is as large as desired, excluding theset (−qI , ΩΩΩ(t0)), a set of measure zero.

For any initial condition (qe(t0), ΩΩΩ(t0)) such that qe0 6= −1, there exists k > 0 suchthat

L(qe(t0), ΩΩΩ(t0)) = 2(1− qe0(t0)) +12k

ΩΩΩ(t0)>IΩΩΩ(t0) < 4.

It follows that qe(t) 6→ −qI since

L(qe(t), ΩΩΩ(t)) < L(qe(t0), ΩΩΩ(t0)) < L(−qI , 0) ≤ L(−qI , ΩΩΩ(t0)),

and hence for this choice of gain k > 0, the initial condition (qe(t0), ΩΩΩ) must liein the basin of attraction of (qI , 0). Therefore the error dynamics (6.19) are almostsemi-globally asymptotically stable under the control law (6.20).

Page 162: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

140 State Estimation and Control of Quadrotors

To prove local exponential stability, reconsider (6.15) which can be rewritten as

qe = −12p (ΩΩΩd)⊗ qe +

12

qe ⊗ p (ΩΩΩ−ΩΩΩd +ΩΩΩd) , (6.29)

qe =12[qe, p (ΩΩΩd)] +

12

qe ⊗ p(ΩΩΩ)

, (6.30)

where [A, B] = A⊗ B− B⊗ A is the quaternion commutator. If zq and zΩ are thelinear approximations of qe and ΩΩΩ around qI and ΩΩΩ = 0 such that qe ≈ qI + p(zq)and zΩ ≈ ΩΩΩ with zq, zΩ ∈ R3. The new linear system z = (zq, zΩ)

> ∈ R6 based onthe error kinematics (6.30) and dynamics (6.21) is given by

(zq

)=

[(ΩΩΩd× 0

0 −I−1(IΩΩΩ)× + mΩ

)+

(0 1

2 I3×3

−I−1KΩKq −I−1KΩ

)](zq

), (6.31)

where mΩ = ∑4i=1(−1)iviIr (~e3)×. (6.31) can be written as z = (A1 + A2(t)) z where

the time varying part of the matrix A(t) = A1 + A2(t) is as a result of ΩΩΩd and ΩΩΩ. A1

and A2(t) are given by

A1 =

(0 1

2 I3×3

−I−1KΩKq −I−1KΩ

)

and

A2(t) =(

ΩΩΩd× 00 −I−1(IΩΩΩ)× + mΩ

).

Looking at A1, it can be seen that all the eigenvalues are negative, hence, the A1

component is asymptotically stable. To prove asymptotic stability of A(t), considerthe resulting state transition matrix

Φ(τ, t) =

(I3×3 −

∫ Tt ΩΩΩd(τ)dτ 00 I3×3 − I−1

∫ Tt (IΩΩΩ)×(τ)dτ

).

Choosing the Lyapunov function L = 12 z>q Kqzq +

12k2

z>ΩIzΩ with L = − 1k2

z>ΩKΩzΩ

and letting C =

((1k2

)20)

, then the observability Grammian is defined by

Khalil [1996]

W(t, t + ∆t) =∫ t+∆t

tΦ(t)>C>CΦ(t).

This results in

W(t, t + ∆t) =1k2

((I3×3 −

∫ t+∆tt ΩΩΩd(τ)dτ

)20

0 0

).

Looking at the non-zero element of W(t, t + ∆t), it can be seen that the integral∫contains ΩΩΩd which from the theorem statement is bounded. Hence, (A(t), C) is

Page 163: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.5 High-Level Control 141

0 0.1 0.2 0.3 0.40

0.2

0.4

0.6

0.8

1

1.2

1.4Close Loop Step Response

Time [s]

Response [ra

d]

(a) Attitude response to step command.

40 60 80 100 120 140 160 180−1

0

1

Time [s]

Roll

[rad]

Desired

Actual

40 60 80 100 120 140 160 180−1

0

1

Time [s]

Pitch [ra

d]

Desired

Actual

80 82 84 86 88 90 92 94 96

−0.5

0

0.5

Time [s]

Pitch [ra

d]

Desired

Actual

(b) Attitude response in manual mode.

Figure 6.4: Attitude response

uniformly completely observable which implies asymptotic stability Khalil [1996];Thienel and Sanner [2003]. Hence the A2(t) component of A(t) is asymptoticallystable. From A2(t) being UCO, it also implies that for some ε > 0,

|A2(t)z| ≤ ε|z|. (6.32)

With A1 constant and asymptotically stable and limt→0 A2(t) exists and bounded(from (6.32)) and asymptotically stable, invoking [Daleckiı and Kreın, 1974, Theorem2.1] implies asymptotic stability of the system (6.31). For linear systems, asymptoticstability implies exponential stability Kailath [1980]. This proves local exponentialstability. Thus the error kinematics (6.15) and error dynamics (6.19) of the attitude arealmost semi-globally asymptotically stable and locally exponentially stable aroundthe identity quaternion qI = (1, 0, 0, 0)> and angular rate error ΩΩΩ = (0, 0, 0)> underthe control law (6.20).

Using Matlab’s system identification toolbox to identify the model of the vehicleflying in manual control mode with poorly tuned controller gains, the controllertransfer function that results in a rise time of tr < 0.1s is C(s) = 0.08 (s + 18). Theresponse of the model using this controller to unit step input in attitude commandis shown in Figure 6.4(a). Using these gains in manual flight, the RC input in Eulerangles along with the attitude of the vehicle are shown in Figure 6.4(b).

6.5 High-Level Control

For high-level control, two controllers are proposed. The first is a position/trajectorytracking controller which is used when position measurements/estimates are avail-able. However, this is not always possible as there are instances when position datais not available. From Section 6.2, it has been shown that the body-fixed frame ve-

Page 164: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

142 State Estimation and Control of Quadrotors

locity can be measured and estimated using only IMU and barometer measurementsattached to the vehicle. In order to exploit this, a velocity only controller is proposed.

With both high-level controllers, exponential stability of the resulting error dy-namics under the proposed control laws are shown. The controllers can only berelied upon for local stability due to the assumptions made in Theorem 6.3 aboutboundedness of ΩΩΩd and ΩΩΩd. The outputs from both controllers are the desired atti-tude Rd or in quaternion qd, desired thrust Td and feedforward angular velocity ΩΩΩdand acceleration ΩΩΩd which are regulated by the mid-level controller of Theorem 6.3presented in Section 6.4.

For the high-level controllers, it is necessary to make the following assumptionsregarding the low and mid-level controllers within the control hierarchy.

Assumption 6.2. 1. The thrust controllers are such that the individual desired thrustforces equal the output thrusts, that is, Td(i) = T(i), i = 1, . . . , 4 within the timeframe of the controller.

2. The attitude controller reached its desired value, that is ∀t, Rd(t) = R(t) or in quater-nion qd(t) = q(t) and ΩΩΩd = ΩΩΩ, ΩΩΩd = ΩΩΩ.

Given that a quadrotor is a differentially flat system with flat outputs Mellingerand Kumar [2011]

[ζζζ, ψ],

where the position ζζζ = (x, y, z)>. Every trajectory or position and velocity referenceof the setpoint is defined in terms of this property. Derivatives of these outputs arealso used to algebraically derive the feedforward terms. It should be noted that theflat outputs show that the heading angle ψ and its derivatives are independent ofposition ζζζ.

If the desired differential outputs are (ζζζd, ψd)> with desired higher derivatives of

position vd = ζζζd, vd = ζζζd in A or Vd, Vd ∈ B. The position and velocity errorsare defined by ζζζ = ζζζ − ζζζd and v = v− vd ∈ A respectively. The velocity error inB is V = V−Vd.

The following necessary but reasonable assumptions are made regarding the sig-nals ζζζ, v.

Assumption 6.3. ζζζd, vd and vd of a trajectory are known and the errors ζζζ, v and ˙v, ¨v (hence,V and ˙V, ¨V) are bounded.

6.5.1 Trajectory tracking and control

To present the controller, recall from Section4.3.2 the system of equations for thedynamic model of a quadrotor in inertial frame, A

ζζζ = v, (6.33)

mζζζ = mg~e3 − TR~e3 + RD. (6.34)

Page 165: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.5 High-Level Control 143

Substituting for the drag force D = −TKrV from (4.20), then

RD = −TRKRR>v,

given that v = R>V

Kr =

c 0 00 c 00 0 0

.

From Bangura and Mahony [2014],

TRKrR>v = Tcv− TcR~e3Vz,

since Vz = ~e>3 R>v. IfT = T (1− cVz) ,

then (6.34) becomesmζζζ = mg~e3 − TR~e3 − Tcv. (6.35)

From (6.35), the error dynamics for the linear dynamics is given by

m ˙v = mg~e3 − TdR~e3 − Td cv−mvd. (6.36)

Theorem 6.4. Let Kp, Kd ∈ R3×3 be diagonal positive definite gain matrices. Consider thetrajectory tracking with the following the control law

TdRd~e3 = mg~e3 + Kpζζζ + Kdv− cTdvd −mvd. (6.37)

Based on Assumption 6.3, then the error dynamics of (6.36) are locally exponentially stablearound the equilibrium point ζζζ = v = (0, 0, 0)> under the control law of (6.37).

Proof. From Assumption 6.2 and error dynamics (6.36), the new error dynamics un-der the control law of (6.37) is

m ¨ζζζ = −Kpζζζ − Kdv. (6.38)

This is an autonomous block diagonal linear system in error coordinates with Eigenvalues which are asymptotically stable and therefore globally exponentially stable.Hence the error dynamics are locally exponentially stable since for linear systems,asymptotic stability implies exponential stability.

Remark 6.3. It has been assumed that ζζζ and v are bounded (Assumption 6.3) such that theattitude Rd and feedforward angular rates ΩΩΩd are also bounded, hence, the controllers canonly be relied upon for local stability. Therefore, system (6.36) is locally exponentially stableunder the control law of (6.37).

By the notion of input-to-state stability, given that the mid and high-level con-trollers are both locally exponentially stable, the entire system is locally exponentiallystable around ζζζ = v = 0 [Khalil, 1996, Lemma 5.6].

Page 166: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

144 State Estimation and Control of Quadrotors

Unlike previous trajectory controllers such as Mellinger and Kumar [2011], theproposed control system does not use feedback linearisation and assumes availabilityof higher derivatives of ζζζ and ζζζd to determine feedforward terms for precise tracking.Consider taking the derivative of (6.37),

TdRd~e3 + ˙TdRd~e3 = Kpv + Kd ˙v− cTdvd − cTdvd −mvd. (6.39)

From (4.1c)Rd = RdΩΩΩd× .

ThusTdRdΩΩΩd×~e3 + ˙TdRd~e3 = Kpv + Kd ˙v− cTdvd − cTdvd −mvd. (6.40)

Since Td and Rd have been found from (6.37), by substituting them, Ωdx , Ωdy and Td

can be determined. To obtain Ωdx and Ωdy , one has to differentiate further to use thejerk (v) of the trajectory. Higher derivatives,

...vd and beyond can be ignored as theymay not be available from the desired trajectory.

Td(

RdΩΩΩd×~e3 + RdΩΩΩd×~e3)+ ˙TdRdΩΩΩd×~e3 + ¨TdRd~e3 + ˙TdRd~e3 = Kp ˙v + Kd ¨v +γγγ,

where γγγ = −cTdvd − cTvd − cTdvd − cTdvd. Substituting for Rd

Td(

RdΩΩΩd×~e3 + RdΩΩΩd×~e3)+ 2 ˙TdRdΩΩΩd×~e3

+TdRd~e3 = Kp ˙v + Kd ¨v +γγγ. (6.41)

Therefore

TdRdΩΩΩd×~e3 + ¨TdRd~e3 = −TdRdΩΩΩd×ΩΩΩd×~e3 − 2 ˙TdRdΩΩΩd×~e3 + Kp ˙v + Kd ¨v +γγγ, (6.42)

which is solved for Ωdx , Ωdy and Td. Though Td is never used, it gives an indica-tion of the feasibility of the trajectory and is upper-bounded by the motor rise timeof the low-level motor control response. With Rd~e3, Td, ΩΩΩd and ΩΩΩd determined alge-braically, they are then used as setpoints for the attitude controller of Section 6.4. InSection 6.5.3, determination of the full desired attitude Rd will be outlined using thecontroller output Rd~e3 and the desired ~e1 direction.

6.5.2 Velocity control

In a similar manner to the trajectory controller, the drag force needs to be simplified.From (4.20) in Section 4.4, the drag force can be written as

D = −TKrV = − (TcV− TcVz~e3) .

Using T = T (1− cVz), the vehicle velocity dynamics in B that is (4.4) becomes

V = −ΩΩΩ×V + gR>~e3 −Tm~e3 −

Tm

cV. (6.43)

Page 167: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.5 High-Level Control 145

Knowing that there are unmodelled dynamics, δδδ ∈ R3 is added to model the constanterror in the model. Hence, (6.43) can be written as

V = −ΩΩΩ×V + gR>~e3 −Tm~e3 −

Tm

cV + δδδ.

The constant error δδδ ∈ R3 in B will be dealt with by the integral action of thecontroller.

If the desired velocity and the desired acceleration be Vd ∈ R3 and Vd respec-tively, then the velocity error is given by V = V−Vd with error dynamics

˙V = −ΩΩΩ×V + gR>~e3 −Tm~e3 −

Tm

cV + δδδ− Vd. (6.44)

Based on Assumption 6.2, the following theorem for the velocity controller is pro-posed.

Theorem 6.5. Let Ki, Kv ∈ R3×3 be positive definite gain matrices. Consider the followingcondition for the desired attitude Rd

mgR>d~e3 = Td~e3 + Td cVd + mΩΩΩ×Vd −mKvV−mδδδ + mVd, (6.45a)˙δδδ = KiV, δδδ(0) = δδδ0, (6.45b)

where δδδ ∈ R3 is bounded and is an estimate of the model error δδδ and δδδ0 is some initial con-dition, then the error dynamics of (6.44) are locally asymptotically and locally exponentiallystable around the equilibrium V = 0.

Proof. Substituting the controller (6.45a) into the error dynamics (6.44), invoking As-sumption 6.2,

˙V = −ΩΩΩ× V− Tm

cV− KvV + δδδ,

where δδδ = δδδ− δδδ and ˙δδδ = − ˙δδδ, given δδδ = 0. Thus the system of equations for the newerror dynamics are

˙V = −ΩΩΩ× V− Tm

cV− KvV + δδδ, (6.46a)

˙δδδ = − ˙δδδ. (6.46b)

Consider the following positive definite Lyapunov function

L =12

V>V +12

δδδ>

K−1i δδδ. (6.47)

Page 168: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

146 State Estimation and Control of Quadrotors

Taking the derivative of (6.47),

L = V> ˙V + δδδ>

K−1i

˙δδδ,

= V>(−ΩΩΩ× V− T

mcV− KvV + δδδ

)+ δδδ>

K−1i (− ˙δδδ),

= V>(−ΩΩΩ× V− T

mcV− KvV

)+ δδδ> (

V− K−1i

˙δδδ)

.

From Theorem 6.5,

L = V>(−ΩΩΩ× V− T

mcV− KvV

).

However, V>ΩΩΩ×V = 0 and the thrust based on Assumption 4.1 ∀t, T(t) ≥ 0. Hencethe semi-positive definite

L = −V>(

Tm

cI + Kv

)V. (6.48)

To show that L → 0 with V→ 0 as t→ ∞, it is required to show that L is uniformlycontinuous. Taking the derivative of (6.48) yields,

L = −2V>(

Tm

cI + Kv

)(− T

mcV− KvV + δδδ

). (6.49)

Given that all signals of (6.49) are bounded demonstrates that (6.48) is uniformlycontinuous. Therefore by Barbalat’s lemma, L converges to zero thus V→ 0 asymp-totically. With V → 0, implies that from (6.45b), ˙δδδ → 0, hence, δδδ → δδδ. Therefore, thesystem (6.44) is locally asymptotically stable under the control law of (6.45a).

To prove local exponential stability, consider the linearisation of the system

˙V = −ΩΩΩ× V− Tm

cV− KvV + δδδ, (6.50a)

˙δδδ = − ˙δδδ = −KiV. (6.50b)

[zVzδ

]=

[−ΩΩΩ× − c Tm I − Kv 1

−Ki 0

] [zVzδ

],

where the linearisation of zV ≈ V and that of zδ ≈ δ around V = δδδ = 0.If the linearised state is z = (zV , zδ)

> ∈ R6, then it can be written as z(t) =A(t)z(t). A(t) is time varying as a result of ΩΩΩ× and the thrust T. Choosing thefollowing Lyapunov function

L = z>V zV +12

z>δ K−1i zδ,

with derivative

L = −z>V

(ΩΩΩ× + c

Tm

I + Kv

)zV .

Page 169: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.5 High-Level Control 147

Given that z>VΩΩΩ×zV = 0, implies that L = −z>V(c T

m I + Kv)

zV . One can write L =−zVC>CzV ≤ 0 where

C =[−(c T

m I + Kv) 1

2 0]

.

Given that Kv is a positive definite matrix implies that(c T

m I + Kv) 1

2 is unique andpositive definite. In terms of state transition matrix Φ(t), the state equation can bewritten as

z(t) = Φ(t)z(0)) = etAz(0).

Hence, the origin z = 0 of the system z = A(t)z is an exponential stable point if onecan find a state transition matrix Φ(t) = etA(t) and show that etA(t) → 0 as t→ ∞.

Furthermore, the origin z = 0 is exponentially stable if the pair (A(t), C) is uni-formly completely observable (UCO). To show this, one requires the state transitionmatrix for A(t) which is non-trivial. Hence, by considering the system under feed-back, it can be shown that (A(t)− K(t)C, C) is uniformly observable for any gainK(t) that is a piecewise continuous function of time and bounded. This implies that(A(t), C) is UCO Khalil [1996]. Choosing

K(t) =

(c T

m I + Kv) 1

2

Ki

(c Tm I+Kv)

12

,

from which

A(t)− K(t)C =

[−ΩΩΩ× 10 0

].

This has a state transition matrix

Φ(τ, ∆t) =[

I −∫ τ

t ΩΩΩ×dτ∫ τ

t dτ

0 I

].

The observability Grammian for the pair (A(t)− K(t)C, C) at time t and step timechange ∆t is written as Khalil [1996]; Thienel and Sanner [2003],

W(t, t + ∆t) =∫ t+∆t

tΦ>(τ, t)C>CΦ(τ, t)dτ.

Hence,

W(t, t + ∆t) =∫ t+∆t

t

(

I −∫ t+∆t

t ΩΩΩ×dτ)> (

c Tm I + Kv

) (I −∫ t+∆t

t ΩΩΩ×dτ)

0(c T

m I + Kv) ∫ t+T

t dτ(

2I −∫ t+T

t ΩΩΩ×dτ)

0

dτ.

If s(t) =(

I −∫ t+∆t

t ΩΩΩ×dτ)

, then s(t) and s(t) are bounded as it has been assumed

that ΩΩΩ(t), ˙ΩΩΩ(t) are bounded. For some ∆t > 0, there exists some k2 ≥ k1 ≥ 0 such

Page 170: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

148 State Estimation and Control of Quadrotors

that

k1 ≤∫ t+∆t

ts>(t)s(t)dτ ≤ k2 I, ∀t ≥ 0.

Furthermore, all the integrals are bounded based on the boundedness of ΩΩΩ and ΩΩΩ.By [Khalil, 1996, Lemma 13.4], for some scalars α2 ≥ α1 ≥ 0,

α1 I ≤W(t, t + ∆t) ≤ α1 I ∀t ≥ 0.

Hence W(t, t + ∆t) is bounded which proves that the system (A(t)− KC, C) is uni-formly observable and therefore (A(t), C) is uniformly completely observable (UCO).Thus z = (zV , zδ)

> → 0 exponentially. Therefore, the system is locally exponentiallystable.

In a similar manner to the position/trajectory controller, using the notion ofinput-to-state stability, the quadrotor dynamics are locally exponentially stable aroundζζζ = v = 0 [Khalil, 1996, Lemma 5.6].

Substituting for ˙δδδ using (6.45b) into the controller of (6.45a),

mgR>d~e3 = Td~e3 + Td cVd + mΩΩΩ×Vd −mKvV−mKi

∫ t

0V(τ)dτ. (6.51)

To avoid large integral windup, the integral part of the controller (6.51) is imple-mented as

˙δδδ = −Kδδδδ + KiSat∆(

V + KδK−1i δδδ)

,

where Kδ ∈ R3×3 is a positive definite gain matrix and the bounds of the saturationfunction Sat∆ (.) ∈ R3 are fixed as desired. It should be noted that Sat∆ (.) 0 andits inclusion does not change the proof of Theorem 6.5 Hua et al. [2013].

From the controller (6.51), the desired thrust is computed using

Td = mg(|R>~e3~e>3 |

)−m (ΩΩΩ×Vd)

>~e3

+

(mKvV + mKi

∫ t

0V(τ)dτ

)~e3 + mV>d~e3.

The velocity controller (6.51) only gives two degrees of freedom of the desired at-titude. With the desired third orientation which can be set without affecting thestability of the system since it is differentially flat, the full desired attitude can bedetermined. This is covered in Section 6.5.3. In addition, if higher derivatives ofvelocity and velocity setpoints are available, the feedforward for attitude ΩΩΩd, ΩΩΩd canbe obtained similar to (6.40) and (6.42) respectively.

6.5.3 Desired attitude setpoint

From the high-level controllers, either Rd~e3 or R>d~e3 is obtained. That is the controllersof (6.37) and (6.45a) only constrains the desired attitude Rd to 2 degrees of freedom.The third degree of freedom can be fixed as desired without changing the proof of

Page 171: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.5 High-Level Control 149

Figure 6.5: Desired attitude Rd and orientation.

Theorem 6.4 and Theorem 6.5. With this, ΩΩΩdz and its higher derivative can be set tozero or based on the desired trajectory of the ~e1 orientation.

From the differential outputs, with a specified yaw heading ψ which is a directionin ~e1 in A. This desired orientation ϕϕϕ ∈ R3 in A is defined by

ϕϕϕ = Rz(ψ)~e1 =[cos ψ sin ψ 0

]>,

where Rz is the rotation matrix about the~e3 direction defined by (B.7) in Appendix B.To obtain the full degrees of freedom, of the desired orientation, first consider thecontrol law (6.37) in the inertial frame from which the two degrees of freedom Rd~e3

is obtained. Letting Rd~e3 = γγγ, then if χχχ, ννν ∈ R3 such that the desired attitude isRd =

(χχχ ννν γγγ

), by using the orthogonal properties of Rd ∈ SO(3), the desired

direction ϕϕϕ and with reference to Figure 6.5,

ννν =γγγ× ϕϕϕ

|γγγ× ϕϕϕ| ,

χχχ = ννν×γγγ.

Hence the full desired attitude Rd is obtained. Using Rd, the desired quaternionqd is computed using (B.2) and used as the attitude setpoint for the controller ofSection 6.4.

From the body-fixed frame velocity controller (6.45a) which computes the twodegress of freedom attitude R>d~e3. Letting R>d~e3 = γγγ, and the desired orientation in

the body-fixed frame is thus ϕϕϕ = R>3 (ψ)~e1 =[cos ψ − sin ψ 0

]>. Applying the

same technique as to above, ννν and χχχ can be computed and the desired attitude inthe body-fixed frame R>d is obtained. From this, the desired quaternion is computedusing (B.2) and used as setpoint for the inner-loop controller proposed in Section 6.4.

It should be noted that with the observer proposed in Section 6.2, q0 of the at-titude (q = (q0, q1, q2, q3)>) extracted from R is always positive and therefore thereis no need to consider the unwinding problem associated with attitude control inquaternions Mayhew et al. [2013]. Hence qd0 > 0.

As a special case, with the trajectory controller written in inertial-fixed frame,consider its output of desired orientation R>d~e3, if the desired attitude of the trajectory

Page 172: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

150 State Estimation and Control of Quadrotors

is specified as qd3 = 0, then a simplified approach to obtaining the desired attitudein quaternions is presented in Appendix E.

6.6 Non-linear Velocity Aided Attitude Filter Results

Flying the quadrotor in closed-loop velocity control mode using the inertial estimatedvelocities with the controller proposed in Section 6.5.2 and using a mobile phoneto set the desired translational velocities while manually controlling the thrust, theresults for the estimated attitude and velocities of Filter 1 are shown in Figure 6.6(a)and 6.6(b) respectively.

From these results and looking at the velocities, it is clearly evident that the ob-server achieved its intended purpose of smoothening out the noise in attitude andvelocity despite the data recorded at half the frequency of the filter (200Hz). The200Hz filter operating frequency is due to limitations of the PX4/Pixhawk avionicshardware. Looking at Figure 6.6(c), the latent scaling factor u, it is easily seen thatu → 1 after 25s, hence, after this time the estimation is optimal and therefore thefiltered velocities can be used in closed-loop velocity control with u ≈ 1, ∀t > 25. Asseen in the high level of noise in the velocity measurement in B, this is the instancein which the vehicle is armed and then flown. The time required for the convergenceof the heading (ψ) is almost the same as the time required for the current measure-ments in Section 3.3 to stabilise. Figure 6.6(b) shows a comparison of the resultingestimated attitude in Euler angles to ground truth Vicon measurements. In Fig-ure 6.6(a), the results show similar magnitudes of the estimated and Vicon measuredvelocities (rotated to B). In the figure, the black plots are the Vicon measured ve-locities, blue the IMU based velocity measurements and red is the filtered outputs. Itis worth noting that the onboard estimated yaw using magnetometer measurementsaligns with the measured Vicon attitude. This is as a result of the innovation term(6.8). These results show that the attitude observer has very little error and validatesthe IMU based B velocity measurements.

To demonstrate application of Filter 2 that is the inertial frame filter, 5Hz globalpositioning system (GPS) measurements of velocity were used as inertial velocitymeasurements. With these measurements (blue), 200Hz velocity estimates were ob-tained as shown in Figure 6.7(a). With these 200Hz velocity estimates (V), the fol-lowing complementary filter for estimating 200Hz position estimates (ζζζ) from theavailable 5Hz position measurements (ζζζ) from GPS

˙ζζζ = V− kp

(ζζζ − ζζζ

),

where kp ∈ R3×3 is a diagonal gain matrix. The 200Hz estimated position (red) alongwith the 5Hz position measurements (blue) are shown in Figure 6.7(b).

Table 6.2 shows a comparison of a variety of filters implemented on the PX4/Pixhawkto illustrate the attributes and computational efficiency of the proposed velocity-aided non-linear complementary filter. The computational efficiency is presented as

Page 173: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.7 Results From High-Level Controllers 151

Table 6.2: Comparisons of filters available on the PX4 Stack.Mode CPU computational cost FeaturesSO(3) 328ms or 1.976%. Quaternion version of

the non-linear comple-mentary SO(3) filter inAppendix C.

Attitude EKF 1531ms or 14.634%. Extended Kalman filterfor attitude only estima-tion.

Position Estimator 10563ms 9.844%. Extended Kalman filterfor position and velocityestimation.

Attitude and PositionEKF

2462ms or 22.666%. Extended Kalman filterfor estimating positionand attitude.

Proposed filter 1122ms or 9.621%. Non-linear complemen-tary velocity aided atti-tude filter.

the total time (in ms) the CPU has been engaged and as percentage of CPU usage.The quaternion version of the complementary SO(3) filter showed the lowest CPUusage. However, both the Extended Kalman Filter (EKF) attitude and attitude andposition filters which are the default observers that come with the observer showedpoor CPU usage of up to 100% more than the proposed complementary filter. Fromthese results also, it can be concluded that the quaternion version of the proposednon-linear filter can result in up to 50% more improvement in CPU usage.

6.7 Results From High-Level Controllers

6.7.1 Position and trajectory tracking results

The experimental results recorded onboard the PX4 for takeoff to (0.0, 0.0,−1.1, 0.0)position control to (1.0, 0.0,−1.1, 0.0), “figure 8” trajectory, control to (0,0,-1,0) andlanding are shown in Figure 6.8. The “figure 8" trajectory is used without determin-ing the feasibility of the trajectory which can be done through close examination ofTd using (6.42) and the motor rise time. The “figure 8" trajectory is defined by

x = cos( π

10t)

, y = sin(

10t)

, z = −1.1,

x = −0.1π sin( π

10t)

, y = 0.2π cos(

10t)

, z = 0,

x = −( π

10

)2cos

( π

10t)

, y = −4( π

10

)2sin(

10t)

,

Page 174: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

152 State Estimation and Control of Quadrotors

z = 0,

where t is the time since the start of the trajectory. In the results shown in Figure 6.8,the desired setpoints are in blue while the actual response of the vehicle is in red. Theresults show that the quadrotor is able to track the desired trajectory with a positionresponse rise time of < 1s. In the results between 30 and 40s, there is a high overshootin velocity caused mainly by the large position error. In the tuning of the controller,more emphasis was placed on position than on velocity which is demonstrated by thelarge overshoot in velocity at around 35s and the damped oscillations in the velocitytracking results.

6.7.2 Velocity controller results

Flying the quadrotor with desired velocity setpoints set by an android phone, thefollowing results shown in Figure 6.9 were obtained. In the results, velocity andorientation setpoints of the reference trajectory are shown in (blue) while red is theestimated velocity and orientation responses of the vehicle. The tracking errors forthe linear velocities and desired orientation are very small which indicates that thecontroller achieved its desired purpose. Further results on the use of the proposedcoupled complementary filter and velocity controller are shown in Figure 6.10. Inthese results, the vehicle is teleoperated first using velocity estimates from Filter 2in A and then Filter 1 in B when Vicon measurements are not available. Theswitching of measurements is indicated by the dotted black vertical lines on bothplots. At around t = 100s, the Vicon measurements are turned off and the vehicle isteleoperated using only estimates from Filter 1 in B. In the results on Figure 6.10(a),blue are the outputs from Filter 2 in A, red, outputs from Filter 1 in B and blackfor desired inputs. Figure 6.10(b) shows the inputs from the haptic joystick in redand the actual velocity response of the vehicle in blue as scaled forces. The stickposition is the force feedback from the vehicle’s velocity while the pilot’s inputs asforces are converted to desired velocities and orientation for the vehicle.

6.8 Conclusion

This chapter has presented a coupled non-linear complementary filter for attitudeand velocity estimation. Estimation results of the proposed filter were presented todemonstrate smoothening of the 200Hz position and velocity estimates from 5HzGPS measurements. The entire non-linear complementary filter was used to tele-operate the vehicle thereby demonstrating control of the vehicle with and withoutan inertial navigation sensor. Using a hierarchical control structure and from thenotion of input-to-state stability, the entire quadrotor dynamics were shown to belocally exponentially stable under the proposed control laws. Results show both theposition/trajectory and velocity controllers achieved their desired tracking objectivesusing the hardware described in Chapter 3.

Page 175: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.8 Conclusion 153

10 20 30 40 50 60 70 80 90−1

−0.5

0

0.5

1

Forward velocity Vx

Time [s]

Vx [

m/s

]

Vx

Vx

Vx

10 20 30 40 50 60 70 80 90−1

−0.5

0

0.5

1

Sideways velocity Vy

Time [s]

Vy [

m/s

]

Vy

Vy

Vy

10 20 30 40 50 60 70 80 90−1

−0.5

0

0.5

1

Vertical velocity Vz

Time [s]

Vz [

m/s

]

Vz

VzVz

(a) Measured and estimated velocities by Filter 1.

10 20 30 40 50 60 70 80 90−20

−10

0

10

Roll attitude φ

Time [s]

φ [deg]

estimated

vicon

10 20 30 40 50 60 70 80 90−20

−10

0

10

Pitch attitude θ

Time [s]

θ [deg]

estimated

vicon

10 20 30 40 50 60 70 80 90

−10

−5

0

5

Yaw attitude ψ

Time [s]

ψ [deg]

estimated

vicon

(b) Attitude comparison with Vicon estimates.

10 20 30 40 50 60 70 80 900

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2Scaling factor u

Time [s]

u

(c) Latent scaling u.

Figure 6.6: Comparison of attitude and velocity estimates from proposed filter.

Page 176: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

154 State Estimation and Control of Quadrotors

−2

−1

0

1

Vx [

m/s

]

Vx velocities

Vx

Vx

0

1

2

Vy [

m/s

]

Vy velocities

Vy

Vy

0 20 40 60 80 100 120

−2

−1

0

1

Vz [

m/s

]

Time [s]

Vz velocities

Vz

Vz

(a) 200Hz estimated vehicle velocities in B.

−2

0

2

x [

m]

x − position

xx

−2

0

2

4

y [

m]

y − position

y

y

0 20 40 60 80 100 120

−4

−2

0

2

4

z [

m]

Time [s]

z − position

zz

(b) 200Hz estimated vehicle position in B.

Figure 6.7: 200Hz estimates of velocity and position from 5Hz GPS position andvelocity measurements in A rotated into B.

Page 177: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.8 Conclusion 155

10 20 30 40 50 60 70 80 90 100−1

0

1

Forward x

Time [s]

x [

m]

xd

x

10 20 30 40 50 60 70 80 90 100−1

0

1

Sideways y

Time [s]

y [

m]

ydy

10 20 30 40 50 60 70 80 90 1000

0.5

1

Altitude −z

Time [s]

He

igh

t [m

]

−zd−z

(a) Vehicle desired and actual positions ζ.

10 20 30 40 50 60 70 80 90 100

−1

0

1

Forward velocity vx

Time [s]

vx [m

/s]

vdxvx

10 20 30 40 50 60 70 80 90 100

−1

0

1

Sideways velocity vy

Time [s]

vy [m

/s]

vdyvy

10 20 30 40 50 60 70 80 90 100−1

0

1

Vertical velocity −vz

Time [s]

−v

z [m

/s]

−vdz−vz

(b) Vehicle desired and actual velocities v.

Figure 6.8: Position and trajectory tracking results.

Page 178: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

156 State Estimation and Control of Quadrotors

−1−0.5

00.5

V x[m

/s]

Vx

V dx

Vx

−0.50

0.5

Vy

V y[m

/s]

V dy

Vy

20 30 40 50 60 70 80−0.2

00.20.4

Vz

V z[m

/s]

Time [s]

V dz

Vz

(a) Outputs of velocity controller.

20 30 40 50 60 70 80

−2

−1

0

1

2

3

4

Time [s]

ψ[deg]

ψ Response

ψd

ψ

(b) Outputs of heading (~e1) controller.

Figure 6.9: Velocity controller results.

Page 179: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§6.8 Conclusion 157

−1

0

1

Vx [m

/s]

Vx plots

AVxB VxVdx

−1

0

1

Vy [m

/s]

Vy plots

AVyB VyVdy

−0.50

0.5

Vz [m

/s]

Time [s]

Vz plots

AVzB VzVdz

0 20 40 60 80 100 120 140 160−50

0

50

Time [s]

ψ[d

eg]

e1 direction

ψvψψd

(a) Velocity controller results.

−0.5

0

0.5

F x

Scaled force − x [m/s]

PositionInput

−0.5

0

0.5

F y

Scaled force − y [m/s]

PositionInput

−0.50

0.5

F z

Scaled force − z [m/s]

PositionInput

0 20 40 60 80 100 120 140 160−50

0

50

Time [s]

ψ[d

eg]

Heading in degs

PositionInput

(b) Force inputs and position response of haptic joystick.

Figure 6.10: Indoor teleoperation with/without Vicon measurements.

Page 180: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

158 State Estimation and Control of Quadrotors

Page 181: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Chapter 7

Conclusion and Future Work

7.1 Introduction

This chapter summarises the major achievements of the thesis and shortcomingswhich open the way for future research. It puts into context the achievements of thethesis in the development and commercialisation of quadrotor aerial vehicles as atFebruary 2016. A comparison is made to the development and commercialisationof robotic manipulators. The major achievements of the thesis including the designof an open-source research quadrotor platform with improved modelling, state esti-mation and control schemes at each dynamic sub-level of a quadrotor are described.From which it is easy to point out that the next stage for the development of quadro-tors and aerial robotics is in the area of sensor fusion wherein navigation sensorssuch as radars, optic flow, LIDAR (Light Detection And Ranging), sonar and othersensors will be used to make mobile robotics in three dimensions achieve what mo-bile robotics have already achieved in two dimensions.

7.2 Conclusion

In the Introduction and Literature Review chapters, it was pointed out that quadro-tors have become the research platform for aerial robotics research. As such, quadro-

Table 7.1: Comparison of robotic manipulator and quadrotor development.Activity Manipulators QuadrotorsHardware development − 2004 Draganflyer X4,

ANU X4-Flyer, STAR-MAC

Initial commercialisation 1959 Unimation 2008 AscTec Falcon 8Seminal contributions Late 1970’s to early 1980’s 2002 to 2010Major theoretical devel-opment

1975 to 1985 2008 − 2018

Startups 1970’s 2010 −Industry Consolidation 1980’s 2015 −

159

Page 182: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

160 Conclusion and Future Work

tors in aerial robotics can be seen as having the same impact on aerial robotics re-search as the “unicycle” in mobile robotics or the Programmable Universal Machinefor Assembly (PUMA) in robotic manipulators. To understand where the researchconducted in this thesis fits within the context of quadrotor development (researchand commercialisation), it is instinctive to draw parralel comparisons with the devel-opment of the robotic manipulator. The first robotic arm, unimate was developed byGeorge Devel and Joseph Engelberger in 1959 for their startup company Unimation(Universal Animation) IFR [2012]. The potential of the robotic arm, drew attentionfrom many industry and research institutions worldwide. In the United States, VictorSchienman developed the Stanford Arm in 1969 at Stanford University. The arm wasfurther developed by General motors and was purchased by Westinghouse which isnow owned by Stäubli Unimation, Incorporated. The major achievement of Schien-man’s Stanford Arm was the accurate following of paths in arbitrary space. Hisinvention opened up opportunities for the robotic arm to be used for tasks such aswelding and assembly. Industrial scale impact of robotic manipulator developmentbegan in Europe in the 1970’s. Some of the startups that were based on the roboticarm technology include Asea Brown Boveri (ABB) Robotics and KUKA Robotics. In1973, Hitachi in Japan developed the automatic bolting robot for the concrete pileand pole industry IFR [2012]. Many other companies that were involved or tookadvantage of the new technology include Cincinnati Milacron and Olivetti. In atechnology driven business cycle, rapid expansion of high-tech startup companiesin a new market is followed by growth of some companies to dominate the marketby a process of mergers and acquisitors, a process known as market consolidation.The robotic manipulator industry consolidation began in the late 1980’s. There arenow only a handful of companies that are still producing anthropomorphic manip-ulator arms for the manufacturing industry. Companies that survived the consol-idation include Adept Technology, Stäubli-Unimation, the Swedish-Swiss companyAsea Brown Boveri (ABB), KUKA Robotics and Comau.

In terms of research activities, the basic manipulator problems were formulatedin the 1970’s and detailed theoretical work was carried out in the 1980’s Paul [1981];Slotine and Sastry [1983]; Khatib [1987]. These problems include mechanical design,kinematic modelling, control design and high performance path following in 3Dspace. With the development of the Programmable Universal Machine for Assembly(PUMA) robot by Unimation in 1978, there was now an experimental platform open-ing the way for research to be conducted in the 1980’s through to the 2000’s. At theheight of the robotic manipulator research, almost every robotics research laboratoryhad a PUMA robot. Thus the PUMA robot resulted in the field gaining enormousinterests across the academic world.

In terms of quadrotor development, the first commercial quadrotors which kickedoff the industry were the AscTec Falcon 8 and AscTec Hummingbird. They cameinto the market between 2008 and 2010. Similar to the 1970’s and early 1980’srobotic manipulator theoretical development, the seminal contributions in quadro-tor research were made between 2000 and 2010. The major research areas whichinclude state estimation and control have been a key topic for aerial robotics re-

Page 183: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§7.2 Conclusion 161

search since 2004 Mahony et al. [2008]; Mellinger et al. [2012]; Lee et al. [2010]. Thehardware design problem including rotor design has also been extensively studiedPounds [2007]; Hoffmann et al. [2004] between 2004 and 2010. Both developmentshave led to many quadrotor vehicle startups that use both open and closed-sourcesoftware and hardware. Some of these startups are not only limited to manufac-turing multirotors (quadrotors inclusive) but also fixed wing aircrafts. Some of themajor quadrotor startup companies include 3D Robotics (3DR), Da-Jiang InnovationsScience and Technology Cooperation Limited (DJI), KMel Robotics, Ascending Tech-nologies GmbH (AscTec). Though the quadrotor commercialisation is in the expan-sion phase as new companies such as UVify, Olaeris Domesticated UAS Technologyare entering the market, the consolidation of the industry has also begun with bigcorporations such as Google (through Google Project Wing), Qualcomm which haspurchased KMel Robotics and INTEL which now owns AscTec entering the mar-ket. Table 7.1 outlines the parallels that exist and makes a comparison between thequadrotor and the robotic manipulator development. In terms of commercialisation,quadrotors appear to be in the end of the 1970’s era of robotic manipulators sincethe majority of the seminal work has been completed with a very active internationalresearch community.

Though the majority of the seminal contributions on aerial robotics research hasbeen conducted between 2000 and 2010 and the current maturity of the field is at thecommercialisation or era of startups, this thesis addressed many of the key questionsin the seminal papers. These include state estimation and control, improvements inthe aerodynamic modelling of quadrotors and the development of an experimentalquadrotor research platform for high-performance control. The following describethe major achievements of the thesis research.

• Quadrotor platforms: From open-source hardware and software components,a framework for research and hobby quadrotor platforms has been developed.The framework has been used to build aggressive and heavy lifting quadrotors.The software developed for the various controllers and observers are madeavailable as open-source.

• Non-linear quadrotor aerodynamic model: A non-linear model for a quadro-tor along with a drag force and lumped drag force model for quadrotors hasbeen developed. Using the well established momentum and blade elementmomentum theories, aerodynamic forces and torque (hence power) models forrotor blades specific to quadrotors were developed. It should be noted thatunlike helicopter blades, quadrotor blades are designed to be as close as pos-sible to the ideal hovering rotor geometry while at the same time taking intoconsideration manufacturing and the small translational velocities required fornon-hovering flights.

With the aerodynamic model for quadrotor rotor blades, an implicit thrustmodelling and control scheme was developed. The modelling scheme usesa model for aerodynamic mechanical or electromechanical power measured

Page 184: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

162 Conclusion and Future Work

on the electronic speed controller in coefficient form along with the assump-tion that the advance ratio and horizontal forces are small to derive an im-plicit model for thrust that is computed in real-time on the dedicated ESC32v2electronic speed controller hardware. Finally a robust proportional integralcontroller is added on top of a high gain current controller operating as aninner-loop control for the regulation of the estimated thrust.

Through static and dynamic flight tests, the proposed modelling and controlscheme outperforms the current state-of-the-art rotor speed controller in main-taining a constant thrust and a desired flight path in the presence of updrafts/-downdrafts. A calibration scheme as well as modifications for the motor-rotorand aerodynamic parameters required was also presented.

• Velocity aided attitude filter: With the non-linear body-fixed and inertialframe quadrotor models developed, a velocity aided attitude filter with 200Hzestimates of velocity using inertial navigation and strapdown (IMU and barom-eter) sensor measurements was proposed. This filter ensures that there is al-ways estimates of velocity available with/without inertial navigation sensors.With coupling innovation terms between the two filters, the filter also outputsan estimate of the wind velocity in inertial frame. The proposed velocity aidedattitude filter was used to teleoperate the vehicle in an indoor environmentwhere initially Vicon measurements were available and then later made un-available.

• Trajectory tracking and velocity controller: With the availability of the highfrequency estimates of velocity, a velocity controller was proposed. Using Lya-punov analysis and linearisation of the resulting error dynamics, the velocityerror dynamics were shown to be locally exponentially stable under the pro-posed velocity control law.

A trajectory tracking controller was also proposed. The resulting error dynam-ics under the trajectory tracking control law formed a block diagonal matrixwith eigenvalues in the negative left half plane. The velocity and trajectorytracking controller are the high-level controllers within the proposed hierar-chical control structure with dynamic levels discriminated based on time scaleseparation. The output from both high-level controllers are the desired attitudein quaternions and thrust. If higher derivatives of the trajectory and desiredtrajectory are available, an algebraic process was proposed to obtain the an-gular velocity and angular acceleration required as feedforward terms by themid-level attitude controller for precise trajectory tracking.

Under the proposed attitude control law, the attitude error dynamics wereshown to be non-autonomous. Using Lyapunov analysis and Barbalat’s Lemma,the attitude error dynamics were shown to be almost globally asymptoticallystable. Using the linearised error dynamics, it was shown that they were uni-formly completely observable (UCO) and therefore locally exponentially stableunder the proposed control law.

Page 185: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§7.3 Future Work 163

Thus by the notion of input-to-state stability, the quadrotor dynamics are lo-cally exponentially stable under the proposed control laws. Results from usingboth high-level trajectory tracking and velocity controllers showed that the con-trollers achieved good tracking performance.

7.3 Future Work

Making parallel comparisons with the robotic manipulator development, the currentdevelopment of quadrotors or unmanned aerial vehicles in general in terms of theo-retical and technological development is in the late 1970’s era of robotic manipulators(see Table 7.1). During this era of the manipulator development, many people andcompanies seized on the opportunity to set up startup companies. Unlike the roboticmanipulator which operates mainly in closed factory space, there are restrictionsinvolving flying aerial vehicles in outdoor open spaces. These restrictions are as aresult of the slow pace of regulatory bodies such as the Federal Aviation Authority inthe United States, Civil Aviation and Safety Authority in Australia coming up withregulations for shared outdoor airspace. As such, it has limited the solution to manytechnological and theoretical problems to be solved thus leading to the slow pace ofstartups for outdoor flying. This is exactly the opposite of manipulators whose the-oretical problems and solutions were inspired by the many startup companies eachwith its own technological innovation operating in a confined factory or laboratoryspace.

In 2014, venture capitalist funding of unmanned aerial vehicles (UAVs) was esti-mated to be US $108 million representing an increase of 104% from 2013 accordingto CBI Insights1. Unlike the robotic manipulator, the trend in the commercialisationof UAVs is also expected to be unusual. With big companies (Google, Amazon, Intel,Qualcomm) coming into the business and realising the many potential applicationsand key roles aerial robots will play in the future, some of these startups have alreadybeing purchased. For example Qualcomm bought KMel 2, Intel bought AscTec 3.

There are many challenges in getting commercial UAVs operate in open airspaces,challenges that are greater than those faced by the robotic manipulator industry.Some of these technological and legal challenges include.

• Open-source code: The majority of commercial drones have come out of open-source projects. The 3D Robotics IRIS is a classical example whose softwarehas multiple contributors and is hosted by Github 4. These open-source soft-ware projects do not have a particular standard they follow as the standard forwriting UAV codes is yet to be developed. With the Dronecode project which

1ttp://uavcoach.com/drone-startup-companies/2http://kmelrobotics.com/3http://www.asctec.de/en/intel-acquires-ascending-technologies/4https://github.com/PX4/Firmware

Page 186: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

164 Conclusion and Future Work

was launched in 2014 by the Linux Foundation, Qualcomm and Intel 5, this willpush the standardisation of UAV software codes.

• Legislation: Unlike robotic manipulators that are confined to operate in indoorenvironments, civil airspace regulations for unmanned aerial vehicles (UAVs)has been a major stumbling block for the commercialisation of unmannedaerial vehicles. Though the legislation governing UAVs will vary from coun-try to country, the basic laws governing the design and construction of UAVsand airspace regulations will be similar. With Amazon Prime Air and GoogleProject Wing leading the drone delivery application, this will significantly pushthe Federal Aviation Authority (FAA), the airspace regulatory agency of theUnited States to develop regulations that will suddenly push the commerciali-sation of drones in the United States. With FAA regulations in place, this willact as an enticement for other regulatory bodies across the world to developairspace regulations for commercial UAVs 6.

• Sensors for aerial robotics: If UAVs are to be able to function in 3D space ina similar way mobile robots function in 2D space, the current UAV technologyneeds to use and develop specialised 3D simultaneous localisation and map-ping (SLAM) capability. Sensor fusion incorporating sensors with red-green-blue-depth (RGBD), optical flow, radars, LIDARs, lasers will be key to thisdevelopment. Unlike ground robots, these sensors have to be very lightweightwith lower power requirements. Currently, the majority of sensor fusion algo-rithms such as SLAM use extended Kalman Filtering (EKF) Li and Mourikis[2013] which require higher computational cost than a non-linear complemen-tary filter approach which can be more suited for computationally constrainedsmall aerial vehicles.

• Power source: The current power source for UAVs has limited their flight en-durance to an average that is under 30 minutes flight time. Increasing thebattery capacity will significantly increase the endurance and therefore increasethe potential applications of UAVs. Lithium sulphide (LiS) batteries which wereused on the longest endurance solar-powered aeroplane flight 7 have been pro-posed as the future power source for aerial vehicles. Sony and Oxis are thetwo main companies commercialising the technology 8. With growing inter-ests in high endurance outdoor flights, there is expected to be more companiesentering the power generation business.

Specific to quadrotors, there are also some technological and theoretical problemsthat still need to be addressed. These problems have been identified and deemed

5https://www.dronecode.org/news-faq/announcement/2014/10/linux-foundation-and-leading-technology-companies-launch-open-source

6http://www.lightreading.com/drones/faa-lays-out-first-proposal-for-small-drones-/d/d-id/713788

7http://news.bbc.co.uk/2/hi/science/nature/7577493.stm8http://www.oxisenergy.com/

Page 187: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

§7.3 Future Work 165

necessary as a natural extension of the research conducted in this thesis. Theseproblems include.

• Position estimation with time delay: The experiments performed in this re-search assumed real-time sensor measurements. However, GPS and IMU sen-sors are known to have significant delays. The observer-predictor developedby Khosravian Khosravian et al. [2014] is one approach that could be used toaccount for these measurement delays.

• Complete filter proof: Similar to Appendix D, ignoring the bias and couplingterms, using either persistence of excitation or uniformly completely observableproperty of the system under the proposed filter, the proof of local exponentialstability of the inertial frame filter can be made. Adding the bias and couplinginnovation terms and proving local exponential stability of the entire filter willbe required to show the effectiveness of the proposed velocity aided attitudeestimation scheme. Furthermore, this proof will help characterise the transientproperties of the filter which will enable smooth transitioning from the body-fixed to inertial or from inertial to body-fixed frame estimates of velocity wheninertial measurements are only intermittently available.

• Filter derivation in quaternion: Just as pointed out in Mahony et al. [2008],real-time implementation of the SO(3) complementary filter on embedded sys-tems is more efficient using quaternion representation. This is because quater-nions have lower computational cost and storage requirements. This is thereason the quaternion version of the SO(3) filter Mahony et al. [2008] was usedand implemented according to Appendix C. It is however not tedious to obtainthe quaternion version of proposed velocity aided attitude filter using quater-nion projections and quaternion algebra in a similar manner to the SO(3) com-plementary filter.

• Stability of the velocity aided attitude observer and controller scheme: Thishasn’t been given much attention. If one is to be able to do high performancecontrol, a stability analysis of the controller with embedded filter dynamics willhelp in the design of controller gains to be as high as approaching the stabilitylimit of the filter.

• Vertical velocity measurement with power and thrust: With measurements ofthrust and changing axial aerodynamic conditions around individual rotors, adirect measurement of the vertical air speed can be made at the local electronicspeed controller (ESC) level. Furthermore, with the total power consumed byall four rotors and the IMU measurements along with a model for the dragforce, the vertical air velocity can be measured. Combining the measurementsfrom the local ESC and flight control levels, an estimate of the vertical velocitycan be made independently of the barometer or GPS. This will provide anadditional measurement (currently only barometer height measurements areused) for the vertical air velocity in the body-fixed frame. This z-axis velocity

Page 188: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

166 Conclusion and Future Work

is relative to the air velocity and not the inertial frame, allowing comparison ofinertial velocity estimates derived from GPS/barometer and air velocity derivedfrom IMU/ESC thus providing estimates of the full 3D wind estimation in real-time.

• Trajectory tracking with wind estimation: The wind estimation from the ve-locity aided attitude filter and vertical inflow ratio computed from the ESCscan be added to the vehicle dynamics model in trajectory generation. Theseschemes are usually written in the inertial-fixed frame, as such, this additionwill lead to an improvement in generating feasible and more aggressive trajec-tories.

• Electronic speed controller: There has been very little progress in the design ofelectronic speed controllers. As such, little attention has been given to currentsensing. The thrust modelling and control scheme presented in this thesis willbenefit significantly from the design of ESCs with very good current sensingtechnology. Furthermore, the transition from 8bit ATmega microcontrollersto 32bit floating point STM32 microcontrollers has lead to an increase in theavailable RAM on ESCs. As such, IMU’s could potentially be added to ESCswithout changing their physical dimensions and computational capabilities.With an IMU, the assumptions on the advance ratio and horizontal forces canbe removed and thus a more accurate thrust modelling scheme for all flightregimes can be achieved. With good current sensing, the complex calibrationtechniques described in Section 3.3.2.1 will no longer be required.

Page 189: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Appendix A

Closed-Loop Thrust ControllerStability Proof

In this section, the proof of stability and stability bounds for the hierarchical con-troller proposed in Figure 5.6 of Section 5.3.2 are derived using linearisation of thenon-linear motor-rotor dynamics. Let the linearisation of the motor models be suchthat for M1, M1 = M1(s) = L(M1), where L(M) is the Laplace transform of M.Hence the linearisation of M1, M2, M3 about the static hover condition is M1, M2, M3.To prove stability, one has to assume hovering in static free air condition. Recallthe electrical and mechanical dynamics for a motor-rotor system outlined in (A.1)presented in Section 3.4

va = Kev + iaRa + Ladia

dt, (A.1a)

τ = Kqia, (A.1b)

Irv = τ − τa, (A.1c)

where Ir is the moment of inertia of the rotor, the aerodynamic torque τa = CQv2 =CQv2 where CQ is the torque coefficient. Around the hover condition, one can ap-proximate CQv2 by τa = δv with any offset to be dealt with by the feedforwardf2(Td). Using (A.1c), the transfer function of the linear rotor dynamics is obtained asIrsv = Kqia − δv. From which

v =Kq

Irs + δia.

Remark A.1. It should be noted that the proposed ∆ = kai2a additional term in (3.7) is as-

sumed zero in (A.1a). It is treated as a disturbance term in the robust outer-loop proportionalintegral thrust controller.

To derive the motor model M1 = vaia

shown in Figure 5.6, consider the following

167

Page 190: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

168 Closed-Loop Thrust Controller Stability Proof

algebraic process

va = Kev + Raia + Ladia

dt,

= Kev + Raia + Lasia,

= ia

(KeKq

Irs + b+ Ra + Las

),

=ia

Irs + δ(KeKq + (Ra + Las)(Irs + δ).

Hence

M1 =va

ia=

(Irs + δ)(Ra + Las) + KeKq

Irs + δ.

To obtain M2, from (5.4), recall from (5.9), the aerodynamic mechanical power Pam =c3v3 + κTλivR. From Section 4.5.2.6, the linearisation of κ is such that κ = const 1

CT=

a v2

T , where a is a constant. Hence

Pam = c3v3 + aλiRv3 = CPam v3,

where CPam = c3 + aλiR. In a similar manner to the v2 term in τa, the cubic termof Pam can be linearised around the hover condition that is v3 = vh + v and vh ishandled by the feedforward term f1(Td), that is

Pam = bp

(Kq

Irs + δ

)ia,

where bp is a positive constant. Hence,

M2 =ia

Pam=

Irs + δ

bpKq.

To obtain M3, using the models for thrust and power obtained in (5.8) and (5.9), CT isconstant given that c1, c2 and λi are constant with λz = 0. That is T = CTv2. Hence,

M3 =Pam

T= γv =

γKq

Irs + δia,

where γ is some positive constant.

Now that the motor models have been obtained, the next stage in the design ofthe controllers is choosing the controller gains along with stability bounds. Starting

Page 191: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

169

with the inner loop current control,

H1(s) =ia

ida=

K1p M1

1− M1K1p

,

=K1

p[KeKq + (Ra + Las)(Irs + δ)

]

Irs + δ− K1p[KeKq + (Ra + Las)(Irs + δ)

] .

The original system M1 has two zeros and a pole which translates into two polesin H1(s). H1(s) has a very fast pole as a result of the motor inductance and a slowpole as a result of rotor moment of inertia. Given that the motor control loop runsat 1kHz, the fast electrical dynamics is within 1 sample and therefore is beyond thelimit of control of the controller. Hence, one can neglect the fast electrical dynamicsby setting La = 0. From which

H1(s) =K1

p[KeKq + Ra(Irs + δ)

]

Irs + δ− K1p[KeKq + Ra(Irs + δ)

] .

So the characteristic equation of the inner loop current control is

(Ir − K1pRaIr)s + δ− K1

p(KeKq + Raδ) = 0,

from which

s = −δ− K1

p(KeKq + Raδ)

Ir(1− K1pRa)

.

Hence for stability of the closed-loop pole,

δ− K1p(KeKq + Raδ) ≥ 0,

giving

K1p ≤

δ

KeKq + Raδ. (A.2)

It should be noted that because Ra ∈ (0, 1], Ir + K1pRaIr > 0. For the motor-rotor

system used, K1p = 0.01 was found to give the fastest decay time for current or rise

time for v.From the model for M2 and M3,

M2M3 =γ

bp.

For the outer loop controller, let this be C, then

C =K2

ps + K2i

s= K

s + zs

,

where the zero gives z =K2

iK2

pand the controller gain K = K2

p. Thus the closed-loop

Page 192: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

170 Closed-Loop Thrust Controller Stability Proof

transfer function for the thrust controller outer loop is

H2(s) =TTd

=CH1M2M3

1 + CH1M2M3.

Thus the characteristic equation 1 + CH1M1M2 = 0 for this is(

Ir + K1pRaIr + γKK1

pRaIr

)s2+

(δ + K1

p(KeKq + Raδ) + γKK1p(KeKq + Raδ + zRaIr)

)s

+ γKK1p(zKeKq + zRaδ

)= 0. (A.3)

Given that K1p has been designed to achieve the faster rise time using root locus

analysis, the design for K and z are based on the transient requirements in this casea rise time of 20ms and a settling time of 50ms as shown in Figure 5.13. Based onthe design of K1

p, the closed-loop pole of the current dynamics is stable and based onthe choice of K and z (thus K2

p, K2i ) in (A.3), the closed-loop poles of the outer thrust

controller are in the negative left half plane of the root locus diagram. Thus the entiresystem is locally stable.

Page 193: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Appendix B

Attitude Definitions and Algebra

If the attitude of the vehicle is defined by quaternion q = (q0, q1, q2, q3)>, rotationmatrix R ∈ SO(3) and Euler angles (φ, θ, ψ). In this research, the roll-pitch-yaw (RPY,123, xyz) rotation convention is used. The following equations define the attitudeconversions from one representation to the other.

R =

cθcψ sφsθcψ− cφsψ cφsθcψ + sφsψ

cθsψ sφsθsψ + cφcψ cφsθsψ− sφcψ

−sθ cθsφ cθcφ

. (B.1)

From quaternion to rotation matrix

R =

q20 + q2

1 − q22 − q2

3 2(q1q2 − q0q3) 2(q0q2 + q1q3)2(q1q2 + q0q3) q2

0 − q21 + q2

2 − q23 2(q2q3 − q0q1)

2(q1q3 − q0q2) 2(q0q1 + q2q3) q20 − q2

1 − q22 + q2

3

.

From rotation matrix to quaternion,

q =

√1+R1,1+R3,3+R3,3

2R3,3−R3,3

4q0R1,3−R3,1

4q0R3,1−R1,3

4q0

. (B.2)

From Euler angles to quaternions

q =

c ψ2 c θ

2 c φ2 + s ψ

2 s θ2 s φ

2c ψ

2 c θ2 s φ

2 − s ψ2 s θ

2 c φ2

c ψ2 s θ

2 c φ2 + s ψ

2 c θ2 s φ

2−c ψ

2 s θ2 s φ

2 + s ψ2 c θ

2 c φ2

, (B.3)

where c and s represent the cos and sin of an angle respectively.

171

Page 194: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

172 Attitude Definitions and Algebra

From quaternion to Euler angles by

φ = tan−1(

2(q0q1 + q2q3)

1− 2(q21 + q2

2)

), (B.4)

θ = sin−1 (2(q0q2 − q3q1)) ,

ψ = tan−1(

2(q0q3 + q1q2)

1− 2(q22 + q2

3)

).

The Rodrigues formula that relates R to q is given by

R(q) =(

q20 −~q>~q

)I3×3 + 2~q~q> − 2q0(~q)×. (B.5)

If ~Ω =(Ωx, Ωy, Ωz

)>, then

~Ω× =

0 −Ωz Ωy

Ωz 0 −Ωx

−Ωy Ωx 0

. (B.6)

B.0.1 Vector Rotation

For a vector v ∈ R3×1 in A, its rotation by the Euler angles (φ, θ, ψ) is defined by

R = Rx(φ)Ry(θ)Rz(ψ),

where

Rz(ψ) =

cos(θ) − sin(θ) 0sin(θ) cos(θ) 0

0 0 1

, (B.7)

Ry(θ) =

cos θ 0 sin θ

0 1 0− sin θ 0 cos θ

, (B.8)

and

Rx(θ) =

1 0 00 cos θ − sin θ

0 sin θ cos θ

. (B.9)

Given the RPY standard adopted, the rotations obtained from Euler angles are

R(ψ, θ, φ) = Rx(φ)Ry(θ)Rz(ψ).

This is (B.1).

Remark B.1. In terms of implementation, computers go from left to right. Therefore, whenimplementing the roll-pitch-yaw convention or yaw-pitch-roll rotation convention,

R(ψ, θ, φ) = Rz(ψ)× Ry(θ)× Rx(φ)

Page 195: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

173

q(ψ, θ, φ) = qψ ⊗ qθ ⊗ qφ

The products of two quaternions (a, b) is defined by

a⊗ b =

a0b0 − a1b1 − a2b2 − a3b3

a0b1 + a1b0 + a2b3 − a3b2

a0b2 − a1b3 + a2b0 + a3b1

a0b3 + a1b2 − a2b1 + a3b0

(B.10)

To rotate v into a new frame such that the new vector is v′ ∈ R3 is thus

v′ = R(ψ, θ, φ),

v′ = q(ψ, θ, φ)⊗ p(v),

where p(v) =(

0v

).

Page 196: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

174 Attitude Definitions and Algebra

Page 197: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Appendix C

SO(3) Complementary FilterImplementation

The SO(3) filter implementation uses the explicit complementary filter (ECF) pro-posed in Mahony et al. [2008] to estimate the attitude in quaternions. Using thisfilter, the real part of the quaternion q0 suffers from the double cover problem associ-ated with quaternions and uses less memory compared to the velocity aided attitudefilter in Chapter 6.

The ECF filter uses vectorial measurements from 9-DoF sensors consisting of ac-celerometer, gyroscope and magnetometer. Let the predicted measurements of thei-th sensor that is aligned with the body-fixed frame be denoted by vi ∈ R3 andvi ∈ R3 the actual normalised sensor measurement in body-fixed frame. In the cur-rent implementation, the magnetometer vi,mag ∈ R3, accelerometer vi,acc ∈ R3 andgyroscope for Ω are used as measurements. The ECF attitude observer in quaternionis defined as follows

˙q =12

q⊗ p

(Ω− b− kP

n

∑i=1

ki(vi × vi)

), (C.1)

˙b = k I

n

∑i=1

ki(vi × vi), (C.2)

vi = p†(

q−1 ⊗ p(vi)⊗ q)

, (C.3)

where the vi ∈ R3 is a predefined reference direction of the field in the inertial-fixed frame, b ∈ R3 is the estimated bias, kP, k I ∈ R3×3 are diagonal gain matrices,ki, kp ∈ R3×3 are the mixing sensitivity diagonal gain matrices and p† is an operatorthat extracts the vector part of the quaternion (that is an inverse operation of p(·)).

To estimate vi of each sensor, a vi is needed. It is a predefined reference directionin A. The gravitational direction vi,grav = [0, 0, 1]> is always fixed in inertialframe though the magnetometer is not. The Earth’s magnetic field can be consideredas vi,mag = [bx, 0, bz]> to have components in horizontal and vertical axis.

The predicted gravitational direction in B from the estimated quaternion is

175

Page 198: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

176 SO(3) Complementary Filter Implementation

defined as follows

vi,acc = p†(

q−1 ⊗ p(vi)⊗ q)=

2(q1q3 − q0q2)2(q0q1 + q2q3)

q20 − q2

1 − q22 + q2

3

. (C.4)

The Earth’s magnetic field in B is

vi,mag =

2bx(0.6− q22 − q2

3) + 2bz(q1q3 − q0q2)2bx(q1q2 − q0q3) + 2bz(q0q1 + q2q3)

2bx(q0q2 + q1q3) + 2bz(0.5− q21 − q2

3)

. (C.5)

However, the vi,mag should also be estimated from vi,mag as it is not a fixed quantity(that is, it depends on the location of the IMU on the Earth). Let h = [hx, hy, hz]>

be the magnetometer readings in A and raw magnetometer reading vi,mag =[mx, my, mz]>, then h can be computed as follows

h = p†(

q⊗ p(vi,mag)⊗ q−1)=

2(

mx(0.5− q22 − q2

3)+

2(

mx(q1q2 + q0q3)+

2(

mx(q1q3 − q0q2)+

my(q1q2 − q0q3) + mz(q1q3 + q0q2))

my(0.5− q21 − q2

3) + mz(q2q3 − q0q1))

my(q2q3 + q0q1) + mz(0.5− q21 − q2

2))

. (C.6)

vi,mag is defined as

vi,mag =[√

h2x + h2

y, 0, hz

]. (C.7)

Page 199: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Appendix D

Proof of Stability for Body-fixedFrame Filter

The proof of local exponential convergence of the body-fixed frame filter (Filter 1) ofthe velocity aided filter proposed in Theorem 6.1 in Section 6.2 with the followingassumptions: biases β = 0 and coupling terms assumed zero is presented. The proofis carried out using rotation matrices.

Proof. Define a velocity error and a rotation error

V = V −V,

R = RR>.

The time derivative of V is given by

˙V = −Ω× V + (X− R)>g~e3 − kv1V. (D.1)

Define a candidate Lyapunov function

L :=12

V>V︸ ︷︷ ︸LA

+1

2k21||(X− R)>~e3||2

︸ ︷︷ ︸LB

. (D.2)

Using (6.2a), the time derivative of LA is

LA = gV>(X− R)>~e3 − kv1V>V. (D.3)

Define y := (X− R)>~e3 and ∆ = − gku1

u (RV ×~e3) ∈ R3, one has

y = (uR + u ˙R− RΩ×)>~e3,

= (uR + u∆×R + (X− R)Ω×)>~e3,

= (uR> + uR>∆>×)~e3 −Ω×y.

177

Page 200: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

178 Proof of Stability for Body-fixed Frame Filter

From here, the derivative of LB along trajectories of the system is given by

LB =1ku

1y>y,

=1ku

1((X− R)>~e3)

>(uR> + uR>∆>×)~e3,

=1ku

1(u~e>3 ∆×R + u~e>3 R)y. (D.4)

Consequently, the time derivative of L becomes

L =gV>(X− R)>~e3+1ku

1(u~e>3 ∆×R + u~e>3 R)y−kv

1V>V,

=1ku

1(gku

1V>R> + u~e>3 ∆× + u~e>3 )Ry− kv1V>V. (D.5)

Recall the expressions for u and ∆ and note that

u∆>×~e3︸ ︷︷ ︸Vector1

+ u~e3︸︷︷︸Vector2

= −gku1 RV.

From this, it is straightforward to see that

L = −kv1V> V ≤ 0. (D.6)

Since the time derivative of L is semi-negative definite and L is positive definitethen V and X are bounded. In view of (D.1) and with the assumption that thetrajectory of the vehicle is smooth and bounded, one deduces that ˙V is bounded andit follows that L is also bounded. This is sufficient to ensure that L is uniformlycontinuous along trajectories of the system. Applying Barbalat’s lemma ensures theconvergence of L → 0 and the convergence of V to 0 follows.

The same procedure is performed to prove that ¨V is bounded (since Ω, ˙V, Xand ˙R are bounded) and consequently to demonstrate the uniform continuity of ˙V.Barbalat’s lemma ensures the convergence of ˙V to 0. This in turn implies, from (D.1),the convergence of gX>~e3 to gR>~e3. Finally, substituting X = uR, one sees thatuR>~e3 → R>~e3. Taking norms, one has |u~e3| → 1, that is u converges to unity. Itfollows that R>~e3 → R>~e3 by continuity and consequently, R>~e3 → ~e3 .

To prove local exponential stability, close to the equilibrium point (V, R>~e3) =

Page 201: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

179

(0,~e3), one can write

V ≈ 0 + δV,

u ≈ 1 + δu,

R ≈

1 −δψ δθ

δψ 1 −δφ

−δθ δφ 1

.

From ∆, u and the previous equations, one has

∆ = gku1

−δVy

δVx

0

,

u = −gku1δVz,

and consequently, (D.1) verifies

δ ˙V = −Ω× δV + g(X− R)>~e3 − kv1δV,

= −Ω× δV + g(uR>R− I)R>~e3 − kv1δV,

=

−kv

1 Ω3 −Ω2

−Ω3 −k1 Ω1

Ω2 −Ω1 −kv1

δV + g

−δθ

δφ

δu

. (D.7)

Noting Y1 = [δVx; δVy; δVz]> and Y2 = [−δθ ; δφ; δu]>, the previous equation can bewritten as

Y1 = (−kv1 I3 −Ω×)Y1 + gY2.

To determine the dynamics of the state Y2, observe that

−δθ

δφ

δu

=

ddt

((X− R)>~e3

),

= (X− R)>~e3,

= uR>~e3 − uR>∆>×~e3,

= −gku1

δVx

δVy

δVz

. (D.8)

One can conclude from (D.7) and (D.8) that the linearised system of (6.2) is given by

ξ = A1(t)ξ + A2ξ,

Page 202: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

180 Proof of Stability for Body-fixed Frame Filter

where

A1 =

(−Ω(t)× 03

03 03

),

and

A2 =

−kv1 0 0 g 0 0

0 −kv1 0 0 g 0

0 0 −kv1 0 0 g

−gku1 0 0 0 0 0

0 −gku1 0 0 0 0

0 0 −gku1 0 0 0

.

Note that A2 is Hurwitz and also block structured as a 2× 2 matrix of 3× 3 blocks.Solving the Lyapunov equation PA2 + A>2 P = −I6, the resulting P will also be blockstructured. Since A1(t) is also block structured then A1(t)P = PA1(t). As a con-sequence, the linear cost ξ>Pξ is a Lyapunov function for the linearised systemand proves exponential convergence to the equilibrium point. Hence Filter 1 (Theo-rem 6.1), is locally exponentially stable.

Page 203: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Appendix E

Desired Attitude With qd3= 0

From Section 6.4, the desired attitude setpoint for precise trajectory tracking areqd, Ωd, Ωd. Based on Assumption 6.2 and for simplicity of notation, q = qd = (q0,~q)>,where ~q = (q1, q2, q3). Given the desired attitude Rd, the desired quaternion is ob-tained using Rodrigues formula (B.5). In ~e3 direction, the formula is given by

Rd~e3 =

00

q20 −~q>~q

+ 2

q3q1

q3q2

q3q3

− 2q0

q2

−q1

0

. (E.1)

Remark E.1. Based on differential flatness, the orientation in ~e1 direction can be set asdesired. In a similar way, one can set q3 = 0 and noting that this does not imply Rz (ψ(t)) =I ∀t.

Simplifying (E.1) with q3 = 0,

Rd~e3 =

−2q0q2

2q0q1

q20 − (q2

1 + q22)

. (E.2)

If the terms on the right hand side of (6.37) are xcon, ycon (the orientation of the thrustvector) and zcon for x, y and z respectively that is

Rd~e3 =

xcon

ycon

zcon

,

and defined by

xcon =

(mg~e3 + Kp ζ + Kdv−mvd

)>~e1

Td, (E.3)

ycon =

(mg~e3 + Kp ζ + Kdv−mvd

)>~e2

Td, (E.4)

zcon =(mg~e3 + Kp ζ + Kdv−mvd

)>~e3. (E.5)

181

Page 204: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

182 Desired Attitude With qd3 = 0

From (E.2), one can also obtain the following

Td =zcon

q20 −~q>~q

, (E.6)

xcon = −2q0q2, (E.7)

ycon = 2q0q1. (E.8)

With q3 = 0 and ‖q‖ = 1, implies

q20 =

1±√

1− (x2con + y2

con)

2.

Chosing

q0 = ±

√1 +

√1− (x2

con + y2con)

2. (E.9)

Substituting q0 into (E.6) to (E.8), one obtains the desired thrust Td and attitude inquaternion qd. The sign of q0 is chosen to avoid the double cover problem associatedwith quaternions that is qe0 converging to −1 if a quaternion filter such as the SO(3)filter described in Appendix C is used. This is chosen based on the q0 from theattitude filter when the controller starts. Based on condition (E.10), sign(q0) does notchange. Looking at Equations (E.6) to (E.9), one can see that the controller fails at thefollowing conditions

q20 = ~q>~q =

1√2

, (E.10)

q0 = 0, (E.11)

x2con + y2

con > 1. (E.12)

Looking at the first condition, if q3 = 0, implies that one gets a set of attitudes inEuler angles that is (φ, θ, ψ) = (90, 0, 0), (0, 90, 0) and a range of other angles forwhich ψ >>> 0. These incorrectly represent the desired orientation. At θ or φ = 90

represents extreme manoeuvres and a loss of control. From (E.9), q0 6= 0. Hence, thecondition of (E.11) is always met. Condition (E.12) is met by carefully choosing thegains Kp and Kd for the translational dynamics based on the bounds of ‖ζ‖, ‖v‖ andthe range of Td.

It should be noted that if (6.37) was written in B, the desired attitude is theconjugate (−~qd) of the obtained quaternion.

Page 205: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

Bibliography

Abbeel, P.; Coates, A.; and Ng, A. Y., 2010. Autonomous helicopter aerobat-ics through apprenticeship learning. The International Journal of Robotics Research,(2010). (cited on page 34)

Abeywardena, D.; Kodagoda, S.; Dissanayake, G.; and Munasinghe, R., 2013.Improved state estimation in quadrotor mavs: A novel drift-free velocity estimator.Robotics Automation Magazine, IEEE, 20 (2013), 32–39. (cited on pages 10, 31, 78,and 113)

Achtelik, M. W.; Weiss, S.; Chli, M.; and Siegwart, R., 2013. Path planning formotion dependent state estimation on micro aerial vehicles. In Robotics and Au-tomation (ICRA), 2013 IEEE International Conference on, 3926–3932. IEEE. (cited onpage 34)

Alexis, K.; Nikolakopoulos, G.; and Tzes, A., 2011. Model predictive controlscheme for the autonomous flight of an unmanned quadrotor. In Industrial Elec-tronics (ISIE), 2011 IEEE International Symposium on, 2243–2248. IEEE. (cited onpage 34)

Allibert, G.; Abeywardena, D.; Bangura, M.; and Mahony, R., 2014. Estimatingbody-fixed frame velocity and attitude from inertial measurements for a quadro-tor vehicle. In Control Applications (CCA), 2014 IEEE Conference on, 978–983. IEEE.(cited on pages 29, 31, and 113)

Altigator, 2015. Altigator Aerial View Aircrafts: Speed Controllers. http://mikrokopter.altigator.com/speed-controllers-c-33.html. [Online; accessed 20-Sept-2015].(cited on pages 21 and 24)

AR. Drone Team, 2015. Parrot AR. Drone 2.0: Elite Edition. http://ardrone2.parrot.com/. [Online; accessed 20-Sept-2015]. (cited on page 10)

Arain, B. and Kendoul, F., 2014. Real-time wind speed estimation and compensa-tion for improved flight. Aerospace and Electronic Systems, IEEE Transactions on, 50,2 (2014), 1599–1606. (cited on pages 2 and 29)

AscTec Team, 2015. AscTec Research Home. http://wiki.asctec.de/display/AR/AscTec+Research+Home. [Online; accessed 20-Sept-2015]. (cited on page 11)

Åström, K. J. and Hagglund, T., 1988. Automatic tuning of PID controllers. Instru-mentation, Systems, and Automation Society. (cited on page 116)

183

Page 206: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

184 BIBLIOGRAPHY

Aswani, A.; Bouffard, P.; and Tomlin, C., 2012. Extensions of learning-based modelpredictive control for real-time application to a quadrotor helicopter. In AmericanControl Conference (ACC), 2012, 4661–4666. IEEE. (cited on pages 2 and 34)

AutoQuad Team, 2015. Autoquad: Autonomous multirotor vehicles. http://autoquad.org/. [Online; accessed 20-Sept-2015]. (cited on page 15)

Autoquad Team, 2015. The AutoQuad ESC32 - a yet unseen electronic speed con-troller. http://autoquad.org/esc32/. [Online; accessed 7-September-2015]. (citedon pages 24, 29, 49, 57, and 66)

Bachmayer, R.; Whitcomb, L. L.; and Grosenbaugh, M. A., 2000. An accuratefour-quadrant nonlinear dynamical model for marine thrusters: Theory and ex-perimental validation. Oceanic Engineering, IEEE Journal of, 25, 1 (2000), 146–159.(cited on page 30)

Balderud, J. and Wilson, D. I., 2002. Application of predictive control to a toyhelicopter. In IEEE Conference on Control Applications, Glasgow, North Britain. (citedon page 34)

Bang good.com, 2015. Banggood: Sunnysky X2207S KV2100 Brushless MotorCW/CCW For RC Quadcopter. http://www.banggood.com/Sunnysky-X2207S-KV2100-Brushless-Motor-CWCCW-For-RC-Quadcopter-p-959687.html. [Online; ac-cessed 20-Sept-2015]. (cited on page 21)

Bangura, M. and Mahony, R., 2014. Real-time model predictive control for quadro-tors. In 19th IFAC World Congress, Cape Town, South Africa. (cited on pages 49and 143)

Bonnabel, S., 2007. Left-invariant extended kalman filter and attitude estimation. InIEEE conference on decision and control, 1027–1032. (cited on page 31)

Bonnabel, S.; Martin, P.; and Salaün, E., 2009. Invariant extended kalman filter:theory and application to a velocity-aided attitude estimation problem. In Decisionand Control, 2009 held jointly with the 2009 28th Chinese Control Conference. CDC/CCC2009. Proceedings of the 48th IEEE Conference on, 1297–1304. IEEE. (cited on pages 3and 31)

Bouabdallah, S.; Noth, A.; and Siegwart, R., 2004. Pid vs lq control techniquesapplied to an indoor micro quadrotor. In Intelligent Robots and Systems, 2004.(IROS2004). Proceedings. 2004 IEEE/RSJ International Conference on, vol. 3, 2451–2456. IEEE.(cited on page 33)

Bouabdallah, S. and Siegwart, R., 2005. Backstepping and sliding-mode tech-niques applied to an indoor micro quadrotor. In Robotics and Automation, 2005.ICRA 2005. Proceedings of the 2005 IEEE International Conference on, 2247–2252. IEEE.(cited on page 34)

Page 207: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

BIBLIOGRAPHY 185

Bouadi, H.; Bouchoucha, M.; and Tadjine, M., 2007. Modelling and stabilizingcontrol laws design based on sliding mode for an uav type-quadrotor. EngineeringLetters, 15, 2 (2007), 342–347. (cited on page 26)

Bramwell, A.; Balmford, D.; and Done, G., 2001. Bramwell’s Helicopter Dynamics.Elsevier Science. ISBN 9780080528304. (cited on pages 2, 28, 73, 84, 87, 89, 96, 103,and 120)

Briod, A.; Zufferey, J.-C.; and Floreano, D., 2013. Optic-flow based control of a 46gquadrotor. In Workshop on Vision-based Closed-Loop Control and Navigation of MicroHelicopters in GPS-denied Environments, IROS 2013, EPFL-CONF-189879. (cited onpage 32)

Bristeau, P.-J.; Callou, F.; Vissiere, D.; Petit, N.; et al., 2011. The navigation andcontrol technology inside the ar. drone micro uav. In 18th IFAC world congress,vol. 18, 1477–1484. (cited on page 1)

Bristeau, P.-J.; Martin, P.; Salaun, E.; and Petit, N., 2009. The role of propelleraerodynamics in the model of a quadrotor uav. In Control Conference (ECC), 2009European, 683–688. IEEE. (cited on page 30)

Castillo, P.; Dzul, A.; and Lozano, R., 2004a. Real-time stabilization and trackingof a four-rotor mini rotorcraft. Control Systems Technology, IEEE Transactions on, 12,4 (2004), 510–516. (cited on page 33)

Castillo, P.; Lozano, R.; and Dzul, A., 2004b. Stabilization of a mini-rotorcrafthaving four rotors. In IROS, 2693–2698. (cited on page 26)

Cheviron, T.; Hamel, T.; Mahony, R.; and Baldwin, G., 2007. Robust nonlinearfusion of inertial and visual data for position, velocity and attitude estimation ofuav. In Robotics and Automation, 2007 IEEE International Conference on, 2010–2016.IEEE. (cited on page 32)

Chovancová, A.; Fico, T.; Chovanec, L.; and Hubinsk, P., 2014. Mathematical mod-elling and parameter identification of quadrotor (a survey). Procedia Engineering,96 (2014). Modelling of Mechanical and Mechatronic Systems. (cited on page 26)

Computer Vision and Geometry Lab, 2015. PX4 - autopilot. https://pixhawk.org.[Online; accessed 7-Sep-2015]. (cited on pages 15, 24, 39, and 40)

D. Auld, K. S. Aerodynamics for students. http://s6.aeromech.usyd.edu.au/aerodynamics/. (cited on page 28)

Daleckii, J. L. and Krein, M. G., 1974. Stability of solutions of differential equa-tions in banach spaces. number 43 in translations of mathematical monographs.American Mathematical Society, Providence, RI, (1974). (cited on page 141)

Page 208: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

186 BIBLIOGRAPHY

Derafa, L.; Madani, T.; and Benallegue, A., 2006. Dynamic modelling and exper-imental identification of four rotors helicopter parameters. In 2006 IEEE Interna-tional Conference on Industrial Technology. (cited on page 27)

DJI Team, 2015. DJI Official Store: Phantom 3 Series. http://store.dji.com/phantom/phantom-3. [Online; accessed 20-Sept-2015]. (cited on page 11)

Drone and UAV Technology, 2015. 3DR Robotics. https://store.3drobotics.com.[Online; accessed 20-Sept-2015]. (cited on pages 11 and 37)

Erginer, B. and Altug, E., 2007. Modeling and pd control of a quadrotor vtolvehicle. In Intelligent Vehicles Symposium, 2007 IEEE, 894–899. IEEE. (cited on page33)

Escareño, J.; Salazar, S.; Romero, H.; and Lozano, R., 2013. Trajectory control of aquadrotor subject to 2d wind disturbances. Journal of Intelligent & Robotic Systems,70, 1-4 (2013), 51–63. (cited on page 32)

Fang, J.; Zhou, X.; and Liu, G., 2013. Precise accelerated torque control for smallinductance brushless dc motor. Power Electronics, IEEE Transactions on, 28, 3 (2013),1400–1412. (cited on page 19)

Flyduino, 2015. UltraESC. http://www.ultraesc.com/index.php?ESC=20A. [Online;accessed 20-Sept-2015]. (cited on page 24)

Franklin, G. F.; Powell, J. D.; and Emami-Naeini, A., 1994. Feedback control ofdynamics systems. Addison-Wesley, Reading, MA, (1994). (cited on page 20)

Grzonka, S.; Grisetti, G.; and Burgard, W., 2012. A fully autonomous indoorquadrotor. Robotics, IEEE Transactions on, 28, 1 (2012), 90–100. (cited on page 32)

Hamel, T.; Mahony, R.; Lozano, R.; and Ostrowski, J., 2002. Dynamic modellingand configuration stabilization for an x4-flyer. IFAC World Congress, (2002). (citedon pages 26 and 72)

Healey, A. J.; Rock, S. M.; Cody, S.; Miles, D.; and Brown, J. P., 1995. Toward animproved understanding of thruster dynamics for underwater vehicles. OceanicEngineering, IEEE Journal of, 20, 4 (1995), 354–361. (cited on page 30)

Hehn, M. and D’Andrea, R., 2012. Real-time trajectory generation for intercep-tion maneuvers with quadrocopters. In Intelligent Robots and Systems (IROS), 2012IEEE/RSJ International Conference on, 4979–4984. IEEE. (cited on page 34)

Hobby Express, 2015. Hobby Express: Multirotor Madness. http://www.hobbyexpress.com/axi_gold_2217_20_outrunner_motor_1032962_prd1.htm. [Online; ac-cessed 20-Sept-2015]. (cited on page 21)

HobbyKing, 2015. HobbyKing: the ultimate hobby experience. http://hobbyking.com.au/hobbyking/store/index.asp. [Online; accessed 18-Sept-2015]. (cited on pages14, 15, 21, 25, 37, and 50)

Page 209: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

BIBLIOGRAPHY 187

Hoffmann, G.; Rajnarayan, D. G.; Waslander, S. L.; Dostal, D.; Jang, J. S.; and

Tomlin, C. J., 2004. The stanford testbed of autonomous rotorcraft for multi agentcontrol (starmac). In Digital Avionics Systems Conference, 2004. DASC 04. The 23rd,vol. 2, 12–E. IEEE. (cited on page 161)

Hua, M.-D.; Hamel, T.; Morin, P.; and Samson, C., 2013. Introduction to feedbackcontrol of underactuated vtol vehicles: A review of basic control design ideas andprinciples. IEEE Control Systems, 33, 1 (2013), 61–75. (cited on pages 33, 135,and 148)

Huang, H.; Hoffmann, G. M.; Waslander, S. L.; and Tomlin, C. J., 2009. Aerody-namics and control of autonomous quadrotor helicopters in aggressive maneuver-ing. In Robotics and Automation, 2009. ICRA’09. IEEE Int. Conference on, 3277–3282.IEEE. (cited on pages 2, 12, 27, and 28)

Hwang, J. Y.; Jung, M. K.; and Kwon, O. J., 2014. Numerical study of aerodynamicperformance of a multirotor unmanned-aerial-vehicle configuration. Journal of Air-craft, 52, 3 (2014), 839–846. (cited on page 29)

IFR, 2012. History of industrial robotics: From first installation until to-day. http://www.ifr.org/uploads/media/History_of_Industrial_Robots_online_brochure_by_IFR_2012.pdf. [Online; accessed 11-January-2016]. (cited on page160)

JR3 Team, 2014. Jr3 multi-axis load cell technologies. http://www.jr3.com/. [Online;accessed 20th-May-2014]. (cited on pages 29, 51, 66, 117, and 123)

Kailath, T., 1980. Linear systems, vol. 156. Prentice-Hall Englewood Cliffs, NJ. (citedon page 141)

Khalil, H. K., 1996. Nonlinear Systems. Prentice-Hall, 2nd edn. (cited on pages 140,141, 143, 147, and 148)

Khatib, O., 1987. A unified approach for motion and force control of robot manipu-lators: The operational space formulation. Robotics and Automation, IEEE Journal of,3, 1 (1987), 43–53. (cited on page 160)

Khosravian, A.; Trumpf, J.; and Mahony, R., 2015a. State estimation for nonlin-ear systems with delayed output measurements. In Proc. IEEE Conf. Decision andControl. (to appear). (cited on page 31)

Khosravian, A.; Trumpf, J.; Mahony, R.; and Hamel, T., 2014. Velocity aidedattitude estimation on so (3) with sensor delay. In Decision and Control (CDC), 2014IEEE 53rd Annual Conference on, 114–120. IEEE. (cited on pages 32 and 165)

Khosravian, A.; Trumpf, J.; Mahony, R.; and Hamel, T., 2015b. Recursive attitudeestimation in the presence of multi-rate and multi-delay vector measurements. InProc. American Control Conference. (cited on page 31)

Page 210: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

188 BIBLIOGRAPHY

Kim, H. J.; Shim, D. H.; and Sastry, S., 2002. Nonlinear model predictive trackingcontrol for rotorcraft-based unmanned aerial vehicles. In American Control Confer-ence, 2002. Proceedings of the 2002, vol. 5, 3576–3581. IEEE. (cited on page 34)

Kingston, D. B. and Beard, A. W., 2004. Real-time attitude and position estimationfor small uavs using low-cost sensors. In AIAA 3rd Unmanned Unlimited TechnicalConference, Workshop and Exhibit. Citeseer. (cited on page 32)

Kumar, V. and Michael, N., 2012a. Opportunities and challenges with autonomousmicro aerial vehicles. The International Journal of Robotics Research, 31, 11 (2012),1279–1291. (cited on pages 25 and 60)

Kumar, V. and Michael, N., 2012b. Opportunities and challenges with autonomousmicro aerial vehicles. The International Journal of Robotics Research, 31, 11 (2012),1279–1291. (cited on page 29)

Lee, T.; Leoky, M.; and McClamroch, N. H., 2010. Geometric tracking control of aquadrotor uav on SE(3). In Decision and Control (CDC), 2010 49th IEEE Conferenceon, 5420–5425. IEEE. (cited on pages 33 and 161)

Leishman, J. G., 2002. Principles of Helicopter Aerodynamics. Cambridge AerospaceSeries. (cited on pages 2, 25, 28, 73, 74, 84, 85, 89, 95, 112, and 118)

Leishman, R. C.; Macdonald, J. C.; Beard, R. W.; and McLain, T. W., 2014. Quadro-tors and accelerometers: State estimation with an improved dynamic model. Con-trol Systems, IEEE, 34, 1 (2014), 28–41. (cited on pages 32 and 79)

Li, M. and Mourikis, A. I., 2013. High-precision, consistent ekf-based visual–inertialodometry. The International Journal of Robotics Research, 32, 6 (2013), 690–711. (citedon page 164)

Lim, H.; Park, J.; Lee, D.; and Kim, H. J., 2012. Build your own quadrotor: Open-source projects on unmanned aerial vehicles. Robotics Automation Magazine, IEEE,19, 3 (Sept 2012), 33–45. (cited on pages 1, 7, 31, and 33)

Liu, Y.; Zhu, Z.; and Howe, D., 2005. Direct torque control of brushless dc driveswith reduced torque ripple. Industry Applications, IEEE Transactions on, 41, 2 (2005),599–608. (cited on page 108)

Luo, J.; Zhu, L.; and Yan, G., 2015. Novel quadrotor forward-flight model based onwake interference. AIAA Journal, 53, 12 (2015), 3522–3533. (cited on pages 2, 28,29, and 113)

Lupashin, S. and D’Andrea, R., 2011. Adaptive open-loop aerobatic maneuvers forquadrocopters. In IFAC world congress, vol. 18, 2600–2606. (cited on page 33)

Lupashin, S.; Hehn, M.; Mueller, M. W.; Schoellig, A. P.; Sherback, M.; and

D’Andrea, R., 2014. A platform for aerial robotics research and demonstration:The flying machine arena. Mechatronics, 24, 1 (2014), 41–54. (cited on pages 10and 12)

Page 211: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

BIBLIOGRAPHY 189

Lupashin, S.; Schollig, A.; Sherback, M.; and D’Andrea, R., 2010. A simple learn-ing strategy for high-speed quadrocopter multi-flips. In Robotics and Automation(ICRA), 2010 IEEE International Conference on, 1642–1648. IEEE. (cited on pages 2,7, 25, and 29)

Madani, T. and Benallegue, A., 2006. Backstepping control for a quadrotor heli-copter. In Intelligent Robots and Systems, 2006 IEEE/RSJ International Conference on,3255–3260. IEEE. (cited on page 34)

Mahony, R.; Hamel, T.; and Pflimlin, J.-M., 2008. Nonlinear complementary filterson the special orthogonal group. Automatic Control, IEEE Transactions on, 53, 5(2008), 1203–1218. (cited on pages 3, 31, 161, 165, and 175)

Mahony, R.; Kumar, V.; and Corke, P., 2012. Multirotor aerial vehicles: Modeling,estimation, and control of quadrotor. Robotics and Automation Magazine, 19, 3 (2012),20–32. (cited on pages 1, 7, 27, and 28)

Mangler, K. and Squire, H., 1953. The induced velocity field of a rotor. TechnicalReport 2642, Aeronautical Research Council. http://naca.central.cranfield.ac.uk/reports/arc/rm/2642.pdf. (cited on page 88)

Martin, P. and Salaun, E., 2010. The true role of accelerometer feedback in quadro-tor control. In Robotics and Automation (ICRA), 2010 IEEE International Conferenceon, 1623–1629. IEEE. (cited on pages 7, 28, 29, 78, and 113)

Maxon Motor, 2015. Maxon Motor worldwide. http://www.maxonmotor.in/maxon/view/product/motor/dcmotor/re/re30/268193. [Online; accessed 20-Sept-2015].(cited on page 21)

Mayhew, C. G.; Sanfelice, R. G.; and Teel, A. R., 2013. On path-lifting mech-anisms and unwinding in quaternion-based attitude control. Automatic Control,IEEE Transactions on, 58, 5 (2013), 1179–1191. (cited on pages 33 and 149)

Meier, L., 2015. Qgroundcontrol: Mavlink micro air vehicle communication protocol.http://qgroundcontrol.org/mavlink/start. [Online; accessed 20-Sept-2015]. (citedon pages 12, 60, and 61)

Mellinger, D. and Kumar, V., 2011. Minimum snap trajectory generation and con-trol for quadrotors. Robotics and Automation (ICRA), 2011 IEEE International Confer-ence on. IEEE, (2011). (cited on pages 7, 10, 11, 25, 33, 142, and 144)

Mellinger, D.; Michael, N.; and Kumar, V., 2012. Trajectory generation and con-trol for precise aggressive maneuvers with quadrotors. The International Journal ofRobotics Research, (2012). (cited on pages 2, 28, 29, 34, and 161)

Michael, N.; Mellinger, D.; Lindsey, Q.; and Kumar, V., 2010. The grasp multiplemicro-uav testbed. Robotics & Automation Magazine, IEEE, 17, 3 (2010), 56–65. (citedon page 12)

Page 212: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

190 BIBLIOGRAPHY

Mikrokopter Team, 2015. Mikrokopter. http://wiki.mikrokopter.de/. [Online; ac-cessed 20-Sept-2015]. (cited on pages 11, 14, and 15)

Mokhtari, A. et al., 2004. Dynamic feedback controller of euler angles and windparameters estimation for a quadrotor unmanned aerial vehicle. In Robotics andAutomation, 2004. Proceedings. ICRA’04. 2004 IEEE International Conference on, vol. 3,2359–2366. IEEE. (cited on page 33)

Mueller, M. W. and D’Andrea, R., 2013. A model predictive controller for quadro-copter state interception. In Control Conference (ECC), 2013 European, 1383–1389.IEEE. (cited on page 34)

Mueller, M. W.; Hehn, M.; and D’Andrea, R., 2013. A computationally efficientalgorithm for state-to-state quadrocopter trajectory generation and feasibility ver-ification. In Intelligent Robots and Systems (IROS), 2013 IEEE/RSJ International Con-ference on, 3480–3486. IEEE. (cited on page 35)

MYRCMART, 2015. Banggood: Sunnysky X2207S KV2100 Brushless MotorCW/CCW For RC Quadcopter. http://www.myrcmart.com/apm-26-ardupilot-mega-26-flight-control-board-multicopter-plane-helicopter-black-p-7816.html. [Online;accessed 20-Sept-2015]. (cited on page 15)

Omari, S.; Hua, M.-D.; Ducard, G.; and Hamel, T., 2013. Hardware and software ar-chitecture for nonlinear control of multirotor helicopters. Mechatronics, IEEE/ASMETransactions on, 18, 6 (2013), 1724–1736. (cited on pages 28, 29, and 81)

Orsag, M. and Bogdan, S., 2009. Hybrid control of quadrotor. Control and Automa-tion, IEEE Mediterranean Conference on, (2009). (cited on pages 2 and 30)

Orsag, M. and Bogdan, S., 2012. Influence of forward and descent flight on quadro-tor dynamics. Recent Advances in Aircraft Technology, (2012). (cited on page 30)

PaparazziUAV Team, 2015. Paparazzi the free autopilot - kroozsd. https://wiki.paparazziuav.org/wiki/KroozSD. [Online; accessed 20-Sept-2015]. (cited on page 15)

Paul, R. P., 1981. Robot manipulators: mathematics, programming, and control: the com-puter control of robot manipulators. Richard Paul. (cited on page 160)

Pflimlin, J.-M.; Binetti, P.; Soueres, P.; Hamel, T.; and Trouchet, D., 2010. Mod-eling and attitude control analysis of a ducted-fan micro aerial vehicle. ControlEngineering Practice, 18, 3 (2010), 209–218. (cited on pages 75 and 76)

Pivano, L.; Johansen, T. A.; and Smogeli, O. N., 2009. A four-quadrant thrustestimation scheme for marine propellers: Theory and experiments. Control SystemsTechnology, IEEE Transactions on, 17, 1 (2009), 215–226. (cited on page 30)

Podhradsky, M.; Bone, J.; Coopmans, C.; and Jensen, A., 2013. Battery model-based thrust controller for a small, low cost multirotor unmanned aerial vehicles.In Unmanned Aircraft Systems (ICUAS), 2013 International Conference on, 105–113.IEEE. (cited on pages 2, 30, and 48)

Page 213: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

BIBLIOGRAPHY 191

Pounds, P., 2007. Design, Construction and Control of a Large Quadrotor Micro Air Vehicle.Phd thesis, Faculty of Engineering, Australian National University, Acton, ACT,2601, Australia. (cited on pages 26, 28, 72, 74, and 161)

Pounds, P. and Mahony, R., 2004. Towards dynamically-favourable quad-rotor aerialrobots. In Australasian Conference on Robotics and Automation. (cited on pages 27and 93)

Pounds, P.; Mahony, R.; and Corke, P., 2005. Small-scale aeroelastic rotor simula-tion, design and fabrication. In Proceedings of the Australasian Conference on Roboticsand Automation. (cited on pages xviii, 97, and 99)

Pounds, P.; Mahony, R.; and Corke, P., 2006. Modelling and control of a quad-rotor robot. In Proceedings Australasian Conference on Robotics and Automation 2006.Australian Robotics and Automation Association Inc. (cited on page 26)

Pounds, P.; Mahony, R.; and Corke, P., 2009. Design of a static thruster for microairvehicle rotorcraft. Journal of Aerospace Engineering, 22, 1 (2009), 85–94. (cited onpages 97 and 99)

Pounds, P.; Mahony, R.; and Corke, P., 2010. Modelling and control of a largequadrotor robot. Control Engineering Practice, 18, 7 (2010), 691–699. (cited on pages13 and 72)

Pounds, P.; Mahony, R.; Hynes, P.; and Roberts, J. M., 2002. Design of a four-rotor aerial robot. In Proceedings of the 2002 Australasian Conference on Robotics andAutomation (ACRA 2002), 145–150. Australian Robotics & Automation Association.(cited on page 93)

Prouty, R. W., 1995. Helicopter performance, stability, and control. (cited on pages 2,25, 27, 28, and 96)

Pucci, D., 2012. Flight dynamics and control in relation to stall. In American ControlConference (ACC), 2012, 118–124. IEEE. (cited on page 98)

Pucci, D.; Hamel, T.; Morin, P.; and Samson, C., 2011. Nonlinear control of pvtolvehicles subjected to drag and lift. In Decision and Control and European ControlConference (CDC-ECC), 2011 50th IEEE Conference on, 6177–6183. IEEE. (cited onpage 98)

Purwin, O. and Andrea, R. D., 2009. Performing aggressive maneuvers using iter-ative learning control. In Robotics and Automation, 2009. ICRA’09. IEEE InternationalConference on, 1731–1736. IEEE. (cited on page 33)

Quigley, M.; Conley, K.; Gerkey, B.; Faust, J.; Foote, T.; Leibs, J.; Wheeler, R.; and

Ng, A. Y., 2009. Ros: an open-source robot operating system. In ICRA workshop onopen source software, 3.2, 5. (cited on page 60)

Page 214: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

192 BIBLIOGRAPHY

ROS Team, 2015. Robot Operating System. http://www.ros.org/. [Online; accessed20-Sept-2015]. (cited on page 62)

Sa, I. and Corke, P., 2012a. 100hz onboard vision for quadrotor state estimation. InAustralasian Conference on Robotics and Automation. (cited on page 32)

Sa, I. and Corke, P., 2012b. System identification, estimation and control for a costeffective open-source quadcopter. In Robotics and Automation (ICRA), 2012 IEEEInternational Conference on, 2202–2209. IEEE. (cited on page 13)

Salazar-Cruz, S.; Palomino, A.; and Lozano, R., 2005. Trajectory tracking for afour rotor mini-aircraft. In Decision and Control, 2005 and 2005 European ControlConference. CDC-ECC’05. 44th IEEE Conference on, 2505–2510. IEEE. (cited on page33)

Schiano, F.; Alonso-Mora, J.; Rudin, K.; Beardsley, P.; Siegwart, R.; and Sicil-iano, B., 2014. Towards estimation and correction of wind effects on a quadrotoruav. In IMAV 2014: International Micro Air Vehicle Conference and Competition 2014,Delft, The Netherlands, August 12-15, 2014. Delft University of Technology. (citedon page 32)

Seddon, J. M. and Newman, S., 2011. Basic helicopter aerodynamics, vol. 40. JohnWiley & Sons. (cited on pages 2, 73, and 84)

Shen, S.; Michael, N.; and Kumar, V., 2013. Obtaining liftoff indoors: Autonomousnavigation in confined indoor environments. Robotics & Automation Magazine, IEEE,20, 4 (2013), 40–48. (cited on pages 2 and 29)

Slotine, J. and Sastry, S. S., 1983. Tracking control of non-linear systems usingsliding surfaces, with application to robot manipulators. International journal ofcontrol, 38, 2 (1983), 465–492. (cited on page 160)

Sørensen, A. J. and Smogeli, Ø. N., 2009. Torque and power control of electri-cally driven marine propellers. Control Engineering Practice, 17, 9 (2009), 1053–1064.(cited on page 30)

Spica, R.; Giordano, P. R.; Ryll, M.; Bülthoff, H. H.; and Franchi, A., 2013. Anopen-source hardware/software architecture for quadrotor uavs. In 2nd Workshopon Research, Education and Development of Unmanned Aerial System. (cited on page13)

Staub, N. and Franchi, A., 2015. Battery-aware dynamical modeling and identifica-tion for the total thrust in multi-rotor uavs using only an onboard accelerometer.In 2015 IEEE Int. Conf. on Robotics & Automation. (cited on page 30)

Sydney, N.; Smyth, B.; and Paley, D. A., 2013. Dynamic control of autonomousquadrotor flight in an estimated wind field. In Decision and Control (CDC), 2013IEEE 52nd Annual Conference on, 3609–3616. IEEE. (cited on page 32)

Page 215: Aerodynamics and Control of Quadrotors · Aerodynamics and Control of Quadrotors Moses Bangura A thesis submitted for the degree of ... ease of design and simple dynamics have

BIBLIOGRAPHY 193

Tang, Y.-R. and Li, Y., 2013. Realization of the flight control for an indoor uavquadrotor. In Information and Automation, 2013 IEEE International Conference on.(cited on page 30)

Tayebi, A. and McGilvray, S., 2006. Attitude stabilization of a vtol quadrotor air-craft. Control Systems Technology, IEEE Transactions on, 14, 3 (2006), 562–571. (citedon page 33)

Thienel, J. and Sanner, R. M., 2003. A coupled nonlinear spacecraft attitude con-troller and observer with an unknown constant gyro bias and gyro noise. AutomaticControl, IEEE Transactions on, 48, 11 (2003), 2011–2015. (cited on pages 141 and 147)

Tomic, T. and Haddadin, S., 2015. Simultaneous estimation of aerodynamic andcontact forces in flying robots: Applications to metric wind estimation and collisiondetection. In Robotics and Automation (ICRA), 2015 IEEE International Conference on,5290–5296. IEEE. (cited on page 32)

Vedder, B., 2015. VESC - Open source ESC. http://vedder.se/2015/01/vesc-open-source-esc. [Online; accessed 18-Sept-2015]. (cited on page 24)

Vicon Motion Systems Ltd, 2015. Vicon Motion Capture System. http://www.vicon.com/. [Online; accessed 20-Sept-2015]. (cited on page 133)

Waslander, S. L. and Wang, C., 2009. Wind disturbance estimation and rejectionfor quadrotor position control. In AIAA Infotech@ Aerospace Conference and AIAAUnmanned... Unlimited Conference, Seattle, WA. (cited on pages 27, 29, 32, and 78)

Yeo, D. W.; Sydney, N.; Paley, D. A.; and Sofge, D., 2015. Onboard flow sensing fordownwash detection and avoidance with a small quadrotor helicopter. In AIAAGuidance, Navigation and Control Conference. (cited on pages 2 and 29)

Zarovy, S.; Costello, M.; Mehta, A.; Flynn, A.; Gremillion, G.; Miller, D.; Ran-ganathan, B.; Humbert, J. S.; and Samuel, P., 2010. Experimental study of gust ef-fects on micro air vehicles. In AIAA Atmospheric Flight Mechanics Conference. (citedon page 32)

Zhang, X.; Li, X.; Wang, K.; and Lu, Y., 2014. A survey of modelling and iden-tification of quadrotor robot. In Abstract and Applied Analysis, vol. 2014. HindawiPublishing Corporation. (cited on page 25)