Introduction to Multicopter Design and Control

37
Introduction to Multicopter Design and Control Lesson 06 Dynamic Model and Parameter Measurement Quan Quan , Associate Professor [email protected] BUAA Reliable Flight Control Group, http://rfly.buaa.edu.cn/ Beihang University, China

Transcript of Introduction to Multicopter Design and Control

Page 1: Introduction to Multicopter Design and Control

Introduction to Multicopter Design and Control

Lesson 06 Dynamic Model and Parameter Measurement

Quan Quan , Associate [email protected]

BUAA Reliable Flight Control Group, http://rfly.buaa.edu.cn/Beihang University, China

Page 2: Introduction to Multicopter Design and Control

2016/12/25 2

Howisthemulticopterdynamicmodelestablishedandhowarethemodelparameters

measured?

Page 3: Introduction to Multicopter Design and Control

Outline

1. Multicopter Control Model

2. Aerodynamic Drag Model

3. Model Parameter Measurement

4. Conclusion

2016/12/25 3

Page 4: Introduction to Multicopter Design and Control

Rigid bodykinematic model

Propulsor model

Throttle command

Position and attitude

Rigid bodydynamic model

Control effectiveness model

Velocity and angular velocity

Thrust and moments

Propeller angular speeds

Multicopter flight control rigid model

1. Multicopter Control Model

2016/12/25 4

Fig 6.1 Flow chart of the multicopter modeling

(1) Rigid body kinematic model. Kinematics areindependent of the mass and force. It only studiesvariables like position, velocity, attitude, angularvelocity, etc.(2) Rigid body dynamic model. The biggest differencebetween this model and other rigid body dynamicmodels is that the thrust direction is always consistentwith the negative direction of the axis.(3) Control effectiveness model. The difference betweenthe quadcopter and the hexacopter is merely about thecontrol effectiveness model.(4) Propulsor model. This model is a whole powermechanism that includes a brushless direct current motor,an electronic speed controller and a propeller. The inputis a throttle command between 0 and 1 and the outputsare propeller angular speeds.

b bo z

General Description

Page 5: Introduction to Multicopter Design and Control

2016/12/25 5

(1) AssumptionsAssumption 1. The multicopter is a rigid body.Assumption 2. The mass and the moments of inertia are constant.Assumption 3. The geometric center and the Center of Gravity (CoG)of the multicopter are the same.Assumption 4. The multicopter is only under gravity and propellerthrust. Furthermore, the gravity points along the positive direction ofthe axis and the propeller thrust points along the negative directionof the axis.Assumption 5. Propellers with odd indices rotate anticlockwise andpropellers with even indices rotate clockwise.

b bo ze eo z

1. Multicopter Control Model

Multicopter Flight Control Rigid Model

Page 6: Introduction to Multicopter Design and Control

Rigid bodykinematic model

Propulsor model

Throttle command

Position and attitude

Rigid bodydynamic model

Control effectiveness model

Velocity and angular velocity

Thrust and moments

Propeller angular speeds

Multicopter flight control rigid model

2016/12/25 6

1. Multicopter Control Model

Page 7: Introduction to Multicopter Design and Control

2016/12/25 7

(2) Rigid body kinematic model

e e

b

p v

R R ω

• Quaternion model

e e

T b0 v

bv 0 3 v

12

12

q

q

p v

q ω

q I q ω

• Rotation matrix model

Readers can refer to Lesson 5 for the attitude representation.

• Euler angle model

1. Multicopter Control Model

Multicopter Flight Control Rigid Model

e e

b

p v

Θ W ω

Page 8: Introduction to Multicopter Design and Control

Rigid bodykinematic model

Propulsor model

Throttle command

Position and attitude

Rigid bodydynamic model

Control effectiveness model

Velocity and angular velocity

Thrust and moments

Propeller angular speeds

Multicopter flight control rigid model

2016/12/25 8

1. Multicopter Control Model

Page 9: Introduction to Multicopter Design and Control

2016/12/25 9

(3) Rigid body dynamic model

• Position dynamic model in EFCFe e

3 3fgm

v e b

Assumption 4. The multicopter is onlyunder gravity and propeller thrust.Furthermore, the gravity points alongthe positive direction of the axis andthe propeller thrust points along thenegative direction of the axis.

• Position dynamic model in ABCF

Do the derivation on both sides, one has

b b b T3 3

fgm

v ω v R e e

e eo z

b bo z

1. Multicopter Control Model

Multicopter Flight Control Rigid Model

e b v R v

e b b

b b b

v R v R v

R v R ω v

b

3

b b

3fgm

R v R

e

ω v

Re

Page 10: Introduction to Multicopter Design and Control

2016/12/25 10

• Attitude dynamic model

Based on Assumptions 1-3, the attitude dynamic equation in the ABCF is established as

where represents the moments generated by thepropellers in the body axes; represents the multicoptermoments of inertia.

3 3J

Gyroscopic torquesMoments

1. Multicopter Control Model

Multicopter Flight Control Rigid Model(3) Rigid body dynamic model

b b ba J ω ω J ω G τ

T 3 x y z τ

Page 11: Introduction to Multicopter Design and Control

Rigid bodykinematic model

Propulsor model

Throttle command

Position and attitude

Rigid bodydynamic model

Control effectiveness model

Velocity and angular velocity

Thrust and moments

Propeller angular speeds

Multicopter flight control rigid model

2016/12/25 11

1. Multicopter Control Model

Page 12: Introduction to Multicopter Design and Control

e e

T b0 v

bv 0 3 v

e3 3

b b ba

12

12

q

q

fgm

p v

R

q ω

q I q ω

v e e

J ω ω J ω G τ

e

e

3 3

b b ba

e

b

fgm

v e Re

J ω ω J

p v

R R ω

ω G τ

2016/12/25 12

(4) Combination

• Model 1 • Model 2 • Model 3

1. Multicopter Control Model

Multicopter Flight Control Rigid Model

e e

b

e3 3

b b ba

fgm

v e e

J ω ω J

p v

R

ω

ω

Θ

G

W

τ

Page 13: Introduction to Multicopter Design and Control

Rigid bodykinematic model

Propulsor model

Throttle command

Position and attitude

Rigid bodydynamic model

Control effectiveness model

Velocity and angular velocity

Thrust and moments

Propeller angular speeds

Multicopter flight control rigid model

2016/12/25 13

1. Multicopter Control Model

Page 14: Introduction to Multicopter Design and Control

where is modeled as a constant that can be easily determinedby experiments.

2016/12/25 14

When a multicopter hovers without wind,the single propeller thrust is expressed as

where is modeledas a constant that can be easilydetermined by experiments.

1. Multicopter Control Model

Control Effectiveness Model

Fig 6.2 Quadcopter propellers’ rotation direction

2Ti iT c

4T p T2

14

c D C

2Mi iM c

5M p M2

14

c D C

The reaction torque created by one single propeller is expressed as

(Readers can refer to Lesson 4)

bx

by

bx

by45

d

dbobo

Page 15: Introduction to Multicopter Design and Control

2016/12/25 15

4

2 2 2 2T 1 2 3 4

1i

i

f T c

The total thrust that acts on the quadcopter is

For a plus-configuration quadcopter,the moments created by propellers are

2 2T 2 4

2 2T 1 3

2 2 2 2M 1 2 3 4

x

y

z

dc

dc

c

4

21T T T T22T T2

T T 3

2M M M M 4

0 00 0

x

y

z

f c c c cdc dc

dc dcc c c c

M

(1) Quadcopters

where

1. Multicopter Control Model

Control Effectiveness Model

Fig 6.2 Quadcopter propellers’ rotation direction

4 5T p T M p M2 2

1 1,4 4

c D C c D C

bx

by

bx

by45

d

dbobo

Page 16: Introduction to Multicopter Design and Control

2016/12/25 16

2 2 2 2T 1 2 3 4

2 2 2 2T 1 2 3 4

2 2 2 2M 1 2 3 4

2 2 2 22 2 2 2

2 2 2 22 2 2 2

x

y

z

dc

dc

c

4

T T T T212T T T T223

T T T T 24

M M M M

2 2 2 22 2 2 22 2 2 2

2 2 2 2

x

y

z

c c c cf

dc dc dc dc

dc dc dc dc

c c c c

M

4

2 2 2 2T 1 2 3 4

1i

i

f T c

1. Multicopter Control Model

Control Effectiveness Model(1) Quadcopters

The total thrust that acts on the quadcopter is

For an X-configuration quadcopter,the moments created by propellers are Fig 6.2 Quadcopter propellers’ rotation direction

bx

by

bx

by45

d

dbobo

Page 17: Introduction to Multicopter Design and Control

2016/12/25 17

Fig 6.3 Airframe configuration parameters of a multicopter

Assumption 5. Propellers with oddindices rotate anticlockwise andpropellers with even indices rotateclockwise.

r

r

r r

r

2T T T 1

21 T 1 2 T 2 T 2

1 T 1 2 T 2 T

2M 1 M 2 M

sin sin sin

cos cos cosr

r

n

n nx

n ny

z n n

c c cfd c d c d c

d c d c d c

c c c

M

r

14r, 1 , 1, ,r

inn i i n M

The model can be represented as

where

1. Multicopter Control Model

Control Effectiveness Model(1) Multicopters

bx

by

12

n

rn

1d

2d

rndbo

Page 18: Introduction to Multicopter Design and Control

Rigid bodykinematic model

Propulsor model

Throttle command

Position and attitude

Rigid bodydynamic model

Control effectiveness model

Velocity and angular velocity

Thrust and moments

Propeller angular speeds

Multicopter flight control rigid model

2016/12/25 18

1. Multicopter Control Model

Page 19: Introduction to Multicopter Design and Control

bUmU

ss R bC ss

2Tc

2Mc

m b=U U

ssm

11T s

Propulsor Model

R bm

1 ( )1

CT s

2016/12/25 19

Fig 6.4 Signal transmission of the motor-propeller model

where the input is the throttle and the output is motor speed . is the constant time that will determine the dynamic response.

The model is

mT

1. Multicopter Control Model

Page 20: Introduction to Multicopter Design and Control

2. Aerodynamic Drag Model

2016/12/25 20

Blade-flapping is the upward-and-downward movement of a rotating blade [1]. Asshown in Fig 6.5 (a), the advancing blade, upon meeting the wind, gains a higherrelative speed and responds to the increase of speed by producing more thrust andgenerating the upward flapping velocity. As shown in Fig6.5 (b)(c), the upward flappingvelocity reduces the angle of attack and further the thrust.

Fig 6.5 Propeller angular velocity and the variation of angle of attack

Readers can refer to [1] Blade flapping: http://www.dynamicflight.com/aerodynamics/flapping/

Blade-Flapping

Page 21: Introduction to Multicopter Design and Control

2016/12/25 21

Fig 6.6 Propeller flapping velocity and displacement

As shown in Figure 6.6 (a), the flightdirection is right and the propellerrotates anticlockwise. The maximumrelative velocity takes place at point A,while the maximum upwarddisplacement takes place at point B.The point A lags behind the point B byπ/2 phase, which is the same as thesinusoidal motion law, as shown inFigure 6.6 (b). In Figure 6.6 (c), thelower side is advancing blade area andthe upper side is retreating blade area.Since the position lags behind thevelocity by π/2 phase, the front side isknown as the upward displacementarea and the back side is the downwarddisplacement area.

2. Aerodynamic Drag Model

Blade-Flapping

Page 22: Introduction to Multicopter Design and Control

2016/12/25 22

Fig 6.7 Rotor blade thrust during flight

The flapping effect can changethe rotating blade direction andfurther the thrust direction. Asshown in the left figure, thrustdirection is no longer parallel tothe axis. There is an associatedinduced drag in the negativedirection of the axis. Theinduced drag is proportional tothe thrust generated by thepropeller and it is also the mainpart of the multicopter’s drag.The Aerodynamic Drag Model isbased on this induced drag.

b bo z

b bo x

2. Aerodynamic Drag Model

Blade-Flapping

Thrust

Direction of flight

Drag

Drag

Thrust

Maximum downward displacement

BD

bz

Maximum upward displacement

bx

Lift

Lift

Page 23: Introduction to Multicopter Design and Control

where are drags along body axes respectively and is the drag coefficient.

2016/12/25 23

The position dynamic model is represented as

The accelerations along the body axes are

The drags are simply expressed as

b b bb b

b bb b b

sin

cos sinx y z z y

y z x x z

v v v g

v v v g

b b b T3 3

fgm

v ω v R e e

b b b b,o x o y

2. Aerodynamic Drag Model

Aerodynamic Drag Model

b b

b b

drag

drag

x x

y y

f k v

f k v

b b,x yf f

dragk

Page 24: Introduction to Multicopter Design and Control

2016/12/25 24

The Aerodynamic Drag Model is expressed as

ordragk is the drag coefficient

b b bb b b

b bb b b b

drag

drag

sin

cos sin

x y z z y x

y z x x z y

kv v v g v

mk

v v v g vm

b b bb b b

b bb b b b

drag

drag

drag

sin

cos sin

0

x y z z y x

y z x x z y

kv v v g v

mk

v v v g vm

k

2. Aerodynamic Drag Model

Aerodynamic Drag Model

Page 25: Introduction to Multicopter Design and Control

Position of the CoG

3. Model Parameter Measurement

2016/12/25 25

Fig 6.8 Determination of the CoG’s position

The steps are:Step 1. Fetch a thin wire and tie aweight at one end of the wire. Then tieone side of the boom arm in themiddle of the wire and lift the otherside of the wire. Record the wireposition in the multicopter as the solidline shown in Fig 6.8 (a). It will be thedotted line shown in Figure 6.8 (b).Step 2. Put the contact point in theother place and record the wireposition in the same way as the solidline shown in Fig 6.8 (b).Step 3. The intersection of tworecorded lines is the position of theCoG, as shown in Fig 6.8 (b).Step 4. Repeat the steps above severaltimes in order to improve themeasurement accuracy.

Page 26: Introduction to Multicopter Design and Control

2016/12/25 26

Principle: Take oz axis as an example. The swing period of the bifilar pendulum is

Then Fig 6.10 Measurement of principal moments of inertia by using a bifilar pendulum

0 20

4 zzJ LTm gd

220

0216zzm gdJ T

L

Fig 6.9 Measurement of principal moments of inertia

How to calculate?

3. Model Parameter Measurement

Moment of inertia

, ,xy yz xzJ J J

ox

y z

L

d

Page 27: Introduction to Multicopter Design and Control

2016/12/25 27

where is the multicopter moment of inertia about the vertical rotation axis V. The steps are :Step 1. Measure the principal moments of inertia

.Step 2. Record the angle and measure the moment of inertia .Step 3. Calculate according to the above equation.

Fig 6.11 Side view of the measurement of products of inertia

The concrete steps are presented in “Quan Q, Dai X H, Wei Z B, Wang J,Cai K-Y. A method to measure the moments of inertia and products ofinertia of small aircraft, CN, CN 103487211 A[P] 2014. (In Chinese)”.

3. Model Parameter Measurement

Products of inertia2 2cos sin

sin2V xx zz

xzJ J JJ

VJ

, ,xx yy zzJ J J

VJ

xzJ

Page 28: Introduction to Multicopter Design and Control

R bm

1 ( )1

CT s

2016/12/25 28

Fig 6.13 Inertia link of motors and step response curve

Fig 6.12 Signal transmission from RC transmitter to thrust and moments

Dynamic parameter Steady parameter

(1) Basic principles

2TT c 2

MM c

3. Model Parameter Measurement

Propulsor System’s Parameter Measurement

ESCBattery

Throttle

bU

mUss R bC

ss Thrust2

Tc

2Mc

Torque

m b=U U

ssm

11T s

Motor-Propeller

RC Transmitter

m

11T s

ss

ss0.632 t

ss

tmT

ss

Page 29: Introduction to Multicopter Design and Control

2016/12/25 29

Fig 6.14 Propulsor system measurement device1 (Netizen DIY)

(2) Measurement device

Fig 6.15 Professional propulsor system measurement device RCbenchmark-15802

1. http://bbs.5imx.com/forum.php?mod=viewthread&tid=8711442. https://www.rcbenchmark.com/?from=singlemessage&isappinstalled=0

3. Model Parameter Measurement

Propulsor System’s Parameter Measurement

Page 30: Introduction to Multicopter Design and Control

2016/12/25 30

(2) Measurement device

3. Model Parameter Measurement

Propulsor System’s Parameter Measurement

Fig 6.16 A device for the measurement of propulsion system’s parameters

As shown in Figure 6.16, the blade thrust is measureddirectly by the dynamometer, the motor speed ismeasured directly by the non-contact tachometer andthe value of the throttle command is read directly fromthe RC transmitter or calculated by the multimeter.The concrete steps for the torque measurement are :Step 1. When the control signal is 0 and the propelleris static, adjust the position of weights andcounterweights in order to keep the thin stick level.Record the initial position of the weights p1;Step 2. Make the motor rotate by giving a specifiedthrottle command. When the motor speed is stable, thereaction torque will tilt the thin stick. Adjust finely theposition of the weights in order to keep the thin sticklevel. Record the position of the weights p2;Step 3. Assume that the mass of the weights is . Thereaction torque generated by the propulsor isexpressed as

fm

2 1 fM p p m g

+-

Laser tachometer

Dynamometer

Laser

Propeller

Thin wire

Thin stick

Scale

Weights

MotorMotor wires

Holder

BaseESC BatteryShunt

ReceiverMultimeter contacts

Linear bearingSmooth guide

Counterweights

Page 31: Introduction to Multicopter Design and Control

2016/12/25 31

(2) Measurement device

3. Model Parameter Measurement

Propulsor System’s Parameter Measurement

Fig 6.16 A device for the measurement of propulsion system’s parameters

The linear bearing is used because it can move androtate smoothly along the guided direction (in orderto measure the blade thrust) and the rotation direction(in order to measure the torque). Meanwhile, the dragand the torque generated by the movement and therotation are small enough to be ignored. Experimentsshow that this method can detect the tiny change ofthe moments with a high accuracy.The lines and devices are hooked up according toFigure 6.16. A common motor XXD 2212, whose KVvalue is 1000 RPM/V, is used in this test. The batteryis ACE 3S1P. The RC system is Walkera DEVO-10Suite. The propellers are APC1047 and the ESC isHobbywing 30A. It is considered that the throttlerange calibration for ESC has already been performedbefore the experiments.

+-

Laser tachometer

Dynamometer

Laser

Propeller

Thin wire

Thin stick

Scale

Weights

MotorMotor wires

Holder

BaseESC BatteryShunt

ReceiverMultimeter contacts

Linear bearingSmooth guide

Counterweights

Page 32: Introduction to Multicopter Design and Control

2016/12/25 32

(3) Measurement results (Steady parameter)

Fig 6.17 Throttle v.s. steady-state speed curve

When , the throttlecommand v.s. steady-statespeed curve is nearly linear.After the linear fitting is appliedto this curve, one has

0.2 0.8

Objective:

R bm

1 ( )1

CT s

Steady parameter

3. Model Parameter Measurement

Propulsor System’s Parameter Measurement

ss 6342 1779 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

测量曲线

拟合曲线: =1000(6.342+1.779)

Throttle command

ssSt

eady

-sta

te sp

eed

RPM

电调死区

饱和区Saturation

zone

Dead zone

3ss 6.342 1.779 10

Measure curveFitting curve :

Page 33: Introduction to Multicopter Design and Control

2016/12/25 33

Fig 6.18 Motor response curve

The ESC input line is connected to the three-positionswitch of the RC transmitter (the output jumpsamong 0, 0.5, 1). The dynamometer is used to recordthe thrust variation after the switch position ischanged quickly.It is assumed that the motor is a first-order low-passfilter. The time constant of the first-order low-passfilter determines the step response of the motor. Itsvalue is the time taken to achieve 0.632ϖss (ϖss is thesteady-state speed) from zero. Due to the quadraticrelation between the thrust and the motor speed, thevalue of is actually the time needed to achieve athrust value of 0.4Tmax (Tmax is the steady-state thrust)from zero-thrust.

mT

Objective: R bm

1 ( )1

CT s

Dynamic parameter

mT

3. Model Parameter Measurement

Propulsor System’s Parameter Measurement(3) Measurement results

m e s 0.098sT t t t 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

-1

0

1

2

3

4

5

6

7

8

9

Thru

stN

Time s

max 8.55NT

max0.4T

etstmT

Page 34: Introduction to Multicopter Design and Control

2016/12/25 34

Fig 6.19 Steady-state speed v.s. thrust curve Fig 6.20 Steady-state speed v.s. moment curve

Objective:Steady parameter

3. Model Parameter Measurement

Propulsor System’s Parameter Measurement(3) Measurement results

9 2M 3.733 10 N m/RPMc 7 2

T 1.984 10 N/RPMc 2ss0.003733 1000M s

2s0.1984 1000T

2T ssT c 2

M ssM c

Page 35: Introduction to Multicopter Design and Control

4. Conclusion

2016/12/25 35

• In this lesson, the multicopter flight control rigid model, the controleffectiveness model and the propulsor model are given. These modelsconstitute the multicopter control model. Readers can also refer to[2][3][4] for more information.

• Furthermore, the Aerodynamic Drag Model is established.• For real systems, the model parameters need to be determined.

Therefore, the methods to obtain the model parameters are presented.• For high accuracy control, models with higher accuracy are required,

such as dynamic model involving disturbances induced by wind or theground effect.

[2] Bresciani T. Modelling, Identification and Control of a Quadrotor Helicopter [Master dissertation]. Lund University, Sweden, 2008.[3]De Oliveira M. Modeling, Identification and Control of a Quadrotor Aircraft [Master dissertation]. Czech Technical University, Czech, 2011.[4] Pounds P, Mahony R, Corke P. Modelling and control of a large quadrotor robot. Control Engineering Practice, 2010, 18(7): 691-699.00

Page 36: Introduction to Multicopter Design and Control

2016/12/25 36

Yangguang Cai

Acknowledgement

Deep thanks go to

for material preparation.

Jinrui Ren XunhuaDai

Page 37: Introduction to Multicopter Design and Control

2016/12/25 37

Thank you!All course PPTs and resources can be downloaded at

http://rfly.buaa.edu.cn/course

For more detailed content, please refer to the textbook: Quan, Quan. Introduction to Multicopter Design and Control. Springer,

2017. ISBN: 978-981-10-3382-7.It is available now, please visit http://

www.springer.com/us/book/9789811033810