Multirotor Aircraft: Modelling, State Estimation and...

55
Multirotor Aircraft: Modelling, State Estimation and Control Robert Mahony College of Engineering and Computer Science Australian National University Tutorial on International Conference on Robotics and Automation Friday, 20 May, 2016. 23-May-16 1

Transcript of Multirotor Aircraft: Modelling, State Estimation and...

Page 1: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Multirotor Aircraft: Modelling,

State Estimation and Control

Robert MahonyCollege of Engineering and

Computer Science

Australian National University

Tutorial on International Conference on Robotics and

Automation

Friday, 20 May, 2016.23-May-16 1

Page 2: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 2

The quadrotor

Quadrotor aerial vehicle is the most

flexible and adaptable platforms for

undertaking aerial research.

• Small and safe.

• Operates well in indoor laboratory

environment.

• Many manufacturers but fairly

uniform functionality.

• Can carry sensor and computer

payload to function autonomously –

at least for short time.

• Capable of hover flight or forward

flight.

• Sensing and control problems are

ubiquitous for aerial robotics.

Small scale research quadrotors

and larger commercial vehicles

use identical control code.

Page 3: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Part I: Modelling

23-May-16Modelling, estimation and control of quads 3

Page 4: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 4

Quadrotors

Quadrotor control is achieved by

differential control of the thrust

generated by each rotor.

• Heave (total thrust) is the sum

of thrust generated by each

rotor.

• Pitch and roll are obtained by

differential thrust along the NS

axis or EW axis.

• Yaw control is obtained by

differential control of the NS

rotors compared to the EW

rotors such that the total thrust

is constant. A quadrotor consists of 4 individual rotors

attached to a rigid cross airframe.

A quadrotor is under-actuated and the remaining degrees of freedom, translational

velocity in the horizontal plane, must be controlled through the system dynamics.

Page 5: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 5

N - rotor vehicles

The conceptual idea of a quadrotor is

straightforward to extend to multirotor

vehicles.

The advantage of these configurations is

safety and and redundancy rather than

aerodynamic efficiency.

Page 6: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Rigid body dynamics of quadrotor

23-May-16Modelling, estimation and control of quads 6

rotation

matrix

velocity

position

drag

gravity

inertia tensor

angular velocity

torque

thrust

Page 7: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 7

Rigid-body dynamics in generalized coord.

Rigid-body dynamics in

homogeneous coordinates

Rigid-body

dynamics in

local

generalised

coordinates.

RT R = I

Page 8: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 8

Primary aerodynamics of quadrotor

Page 9: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 9

Primary thrust relationship

The thrust cT coefficient for a

given rotor motor system is best

identified using static thrust tests.

ModelData

Lumped parameter model

Page 10: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 10

We will look at one or two of the

secondary aerodynamic effects

since they effect secondary stability.

But we will base the control design

on the primary model.

Page 11: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 11

Page 12: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 12

Page 13: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 13

Multirotor vehicle

Page 14: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

There are a number of secondary aerodynamic effects

associated with quadrotors.

Secondary Aerodynamic effects

23-May-16Modelling, estimation and control of quads 14

Horizontal forces

• Blade flapping

• Parasitic drag

• Aerodynamic drag

Vertical Forces

• Ground effect

• Inflow damping

• Translational lift

Other aerodynamic effects

• Vortex states

• Flow variation due to local environment

Page 15: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Horizontal aerodynamic forces

23-May-16Modelling, estimation and control of quads 15

Page 16: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 16

Aerodynamic drag

23-May-16HYCON2-EECI-M2: Aerial Robotic Vehicles 16

Aerodynamic drag has similar characteristics to blade flapping effects.

• Aerodynamic drag is quadratic in velocity: It is negligible at low speeds and

dominates at high speed.

• Blade flapping is linear with velocity: It is dominant at low speeds and

negligible at high speed.

Page 17: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 17

Ground effect

Page 18: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 18

Other aerodynamic effects

Inflow damping

Reduced thrust

Page 19: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 19

Other aerodynamic effects

Translational lift

Page 20: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 20

Vortex state

A vortex state in a full sized helicopter

occurs when the tip vortex grows to

create a closed air cell in which the

helicopter is trapped. The helicopter

will fall to the ground unless the pilot

takes action.

Vortex state is generally caused in

vehicles carrying heavy payloads and

descending slowly. For this reasons,

most helicopters do not directly

descend in hover, they will always fly

in at an angle.

Page 21: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Part II: State Estimation

23-May-16Modelling, estimation and control of quads 21

Page 22: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Estimation from IMU and GPS

23-May-16Modelling, estimation and control of quads 22

Page 23: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 23

Complementary filters

-

Page 24: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 24

Frequency response of complementary filter

Page 25: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Basic attitude estimation

23-May-16Modelling, estimation and control of quads 25

Page 26: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Attitude observer on SO(3)

23-May-16 26Modelling, estimation and control of quads

Page 27: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 27

Block diagram of SO(3) filter with bias est.

Page 28: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Velocity aided attitude

23-May-16Modelling, estimation and control of quads 28

Page 29: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Velocity aided attitude

23-May-16Modelling, estimation and control of quads 29

Page 30: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Velocity Aided Attitude in bod-fixed frame

23-May-16Modelling, estimation and control of quads 30

Allibert, Mahony, Bangura, “Velocity Aided Attitude Estimation for Aerial Robotic

Vehicles Using Latent Rotation Scaling”, ICRA 2016 (TuCbT3.12)

Page 31: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Results

23-May-16 31

• Implementation on

several UAV systems are

all highly successful.

• Easily add estimation of gyro bias.

• When accelerometers are used for

attitude estimate this minimises drift

in yaw estimate.

Modelling, estimation and control of quads

Page 32: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Monte-Carlo comparison of performance

23-May-16Modelling, estimation and control of quads 32

Monte-Carlo simulation averaged over 100 repeats of initial conditions drawn from

an initial distribution. Noise characteristics typical of UAV platform. (Zamani 2012)

Page 33: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Part III: Control

23-May-16Modelling, estimation and control of quads 33

Page 34: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 34

Almost all control systems for small scale aerial robotics use a hierarchical

control architecture as shown above.

The key to high performance control is

• A trajectory planner that minimizes snap actuation requirements on the

motors.

• Integrated attitude trajectory planning with attitude control.

• High gain robust motor control

The key constraint in the control is the motor control response, including steady

state error, disturbance rejection, and limited bandwidth..

Page 35: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 35

Almost all control systems for small scale aerial robotics use a hierarchical

control architecture as shown above.

The key to high performance control is

• A trajectory planner that minimizes snap actuation requirements on the

motors.

• Integrated attitude trajectory planning with attitude control.

• High gain robust motor control

The key constraint in the control is the motor control response, including steady

state error, disturbance rejection, and limited bandwidth..

Page 36: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 36

Almost all control systems for small scale aerial robotics use a hierarchical

control architecture as shown above.

The key to high performance control is

• A trajectory planner that minimizes snap actuation requirements on the

motors.

• Integrated attitude trajectory planning with attitude control.

• High gain robust motor control

The key constraint in the control is the motor control response, including steady

state error, disturbance rejection, and limited bandwidth..

Page 37: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 37

Almost all control systems for small scale aerial robotics use a hierarchical

control architecture as shown above.

The key to high performance control is

• A trajectory planner that minimizes snap actuation requirements on the

motors.

• Integrated attitude trajectory planning with attitude control.

• High gain robust motor control

The key constraint in the control is the motor control response, including steady

state error, disturbance rejection, and limited bandwidth..

Page 38: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 38

Almost all control systems for small scale aerial robotics use a hierarchical

control architecture as shown above.

The key to high performance control is

• A trajectory planner that minimizes snap actuation requirements on the

motors.

• Integrated attitude trajectory planning with attitude control.

• High gain robust motor control

The key performance constraint is motor control response, including

steady state error, disturbance rejection, and limited bandwidth..

Page 39: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 39

Block diagram of system architecture

FastestFastNormalSlow

Typical value

10-20Hz

Typical value

50-200Hz

Typical value

500Hz-2kHz

Typical value

1-5Hz

Limitation is typically the motor control bus rate

AvionicsInertial Navigation System ESCElectronic

speed

controllers

Page 40: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Motor-Rotor control

23-May-16Modelling, estimation and control of quads 40

Mom

entu

m

theory

Bla

de e

lem

ent

mo

mentu

m t

heory

BE

MT

Page 41: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control on Electronic Speed Controller (ESC)

23-May-16Modelling, estimation and control of quads 41

Identify the constants

in offline experiments.

Computes CT in real time on the

electronic speed controller

Page 42: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Motor-Rotor control loop design on ESC

23-May-16Modelling, estimation and control of quads 42

• Inner loop current control: tuned to be nearly unstable to generate fast rise

time.

• Intermediate loop: regulates aerodynamic mechanical power

• The outer-level: standard PI regulator for thrust.

The resulting system has a rise time of 50ms (comparable to RPM controllers) and

gust disturbance rejection of 90% (compared to RPM control).

Page 43: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Thrust Control Experiments

23-May-16Modelling, estimation and control of quads 43

Using this approach –

errors in thrust control for

individual rotors can be

improved by an order of

magnitude: 20% error

was reduced to <2%

error.

Page 44: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Motor Control

23-May-16Modelling, estimation and control of quads 44

The key performance constraint for quadrotors is motor-rotor control

response, including steady state error, disturbance rejection, and limited

bandwidth.

Present systems typically have rise times around 50ms.

There isn’t time in this talk to discuss this topic in detail today but this is an

active research area.

Page 45: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Attitude Control

23-May-16Modelling, estimation and control of quads 45

Canonical error for control

Page 46: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Stability demonstration

23-May-16Modelling, estimation and control of quads 46

Page 47: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 47

The inner loop stability problem can be solved using estimates provided by

the attitude filter discussed earlier in the talk.

This control and estimator run on the embedded avionics system at rates of

50-200Hz.

Page 48: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Trajectory stabilisation (position control)

23-May-16Modelling, estimation and control of quads 48

Page 49: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Attitude planning

23-May-16Modelling, estimation and control of quads 49

Needed for feedforward in

attitude control

Page 50: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 50

The trajectory planner should take into account the system limitations – in

particular the rate limitations of the motor system.

Typically this is done by minimizing a suitable cost functional that penalizes the

snap (or 4th derivative the trajectory).

Page 51: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Trajectory planning

23-May-16Modelling, estimation and control of quads 51

Page 52: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Optimal trajectories

23-May-16Modelling, estimation and control of quads 52

Page 53: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

Control architecture

23-May-16Modelling, estimation and control of quads 53

Page 54: Multirotor Aircraft: Modelling, State Estimation and …mrsl.grasp.upenn.edu/loiannog/tutorial_ICRA2016/ICRA_tutorial... · Multirotor Aircraft: Modelling, State Estimation and Control

23-May-16Modelling, estimation and control of quads 54

Quadrotor

Fundamental questions in aerial

robotic systems.

• Attitude estimation – IMU,

• Velocity estimation – GPS, IMU,

VICON …

• Position estimation – Vision,

VICON, GPS, …

• Motor control – embedded control.

• Attitude control – robustness and performance.

• Integrated path planning and position/velocity control – performance,

replanning, feedback.

All of this has to implemented on embedded hardware weighing as little

as possible. Finally, you will want to do something with the quadrotor.