Sie sind auf Seite 1von 10

Quadcopter Drone: Adaptive Control Laws

Alfredo M. Garó M. Tianyang Cao Al Chandeck


ECE Grad Student ECE Grad Student ECE Grad Student
garomonegro@gatech.edu tcao77@gatech.edu a.chandeck@gatech.edu

Abstract—This project implements adaptive control laws in Before we start diving into the control theory, we need
order to control a Parrot Rolling Spider mini drone. We will go the equations of motions from which we will derive our
through two steps: Step 1 - Linear Adaptive Control, Step 2 - state-space equations. For any drone we normally need nine
Nonlinear Controller. We simulate the performance of our model
reference adaptive controller (MRAC) and our fixed-gain linear equations of motion. These define the dynamics of: the linear
controller, and show that the former outperforms the latter in acceleration (ẍ, ÿ, z̈) with respect to the world frame, angular
stabilization and tracking tasks. velocities (ṗ, q̇, ṙ) with respect to the drone’s body frame, and,
Index Terms—Model Reference Adaptive Controller, Lin- lastly, the Euler rates (φ̇, θ̇, ψ̇).
earization, Quadcopter, Parrot Rolling Spider, Nonlinear Con-
troller.
T
I. I NTRODUCTION ẍ = − [cos(φ) sin(θ) cos(ψ) + sin(φ) sin(ψ)]
m
When one tries to control a physical plant/system, an
accurate dynamics model is crucial. Traditional control laws T
are designed assuming the estimated plant parameters are ÿ = − [cos(φ) sin(θ) sin(ψ) − sin(φ) cos(ψ)]
m
ideal. This poses a potential problem, since failure to obtain
the plant model and parameters correctly would lead to a T
failure in the control tasks. But as we know, the real world z̈ = − cos(φ) cos(θ) + g
m
is unpredictable and not only could the system parameters
change over time, but also the properties of the environment. τx + Iy qr − Iz qr
Adaptive Control techniques are capable of dealing with such ṗ =
Ix
parameter uncertainty problems. By the inverse Lyapunov
functions approach, we can design feedback controllers with τy − Ix pr + Iz pr
dynamic gains that can adapt to the uncertainties, as opposed q̇ =
Iy
to the fixed gains in the traditional static controllers.
τz + Ix pq − Iy pq
We will go through several steps to design a functional ṙ =
Iz
adaptive controller for a quadcopter, specifically the Parrot
Rolling Spider, and show that this controller is better able to Let Θ = [φ, θ, ψ]| and let w = [ṗ, q̇, ṙ]| . Using the following
control the drone for stabilization and tracking tasks than the transformation we can obtain the Euler Rates from the Body
traditional controllers. rates.

II. E QUATIONS OF M OTION AND S TATE -S PACE


Θ̇ = W −1 w
A. Equations of Motion
 
cos(θ) sin(φ) sin(θ) cos(φ) sin(θ)
1 
W −1 = 0 cos(φ) cos(θ) − sin(φ) cos(θ)
cos(θ)
0 sin(φ) cos(φ)
With this transformation we get:
r cos(φ) sin(θ) q sin(θ) sin(φ)
φ̇ = p + +
cos(θ) cos(θ)

θ̇ = q cos(φ) − r sin(φ)

r cos(φ) q sin(φ)
ψ̇ = +
cos(θ) cos(θ)
B. State-Space Representation III. S TEP 1: L INEAR A DAPTIVE C ONTROL
Now we have to go from the equations of motion to the A. Linearization
state-space representation. The latter will define the states of
the system, in our case the quadcopter, that are relevant to us. We will linearize the equations of motion about hover, so
These states are (xi , i = 1, ..., 12), which together make up that the linearized state and control inputs have an equilibrium
our state vector X as follows: at Xeq with the linearized control input. We will establish
the corresponding performance specifications for the system
X = [x1 , x2 , x3 , x4 , x5 , x6 , x7 , x8 , x9 , x10 , x11 , x12 ]| and design a linear feedback controller that will stabilize the
Components xi , i = 1, ..., 12 forming the state vector X system and meet established specifications.
correspond to the following (in the same order).
We had previously defined the state dynamics as Ẋ, where
X = [x, y, z, φ, θ, ψ, ẋ, ẏ, ż, p, q, r]| Ẋ = f (X, U ) and f ∈ R12 . At hover f must meet
Then, the dynamics of the state vector X, also known as f (Xeq , Ueq ) = 0. The equilibrium point at the hover, and the
state dynamic, are given by the vector Ẋ = [x˙1 , x˙2 , ..., x˙12 ]| , corresponding input to achieve it correspond to:
whose components are defined as follows:
Xeq = [xeq , yeq , zeq , 0, 0, ψeq , 0, 0, 0, 0, 0, 0]|
[x˙1 , x˙2 , x˙3 ]| = [x7 , x8 , x9 ]| (1)
Ueq = [weq 2 , weq 2 , weq 2 , weq 2 ]|

x˙4 = x10 + sin(x4 ) tan(x5 )x11 + cos(x4 ) tan x5 x12 (2) Where Ueq corresponds to the input U (Equation 12) needed
to achieve hover.

x˙5 = cos(x4 )x11 − sin(x4 )x12 (3) U = [u1 , u2 , u3 , u4 ]| = [w12 , w22 , w32 , w42 ]| (12)

sin(x4 ) cos(x4 ) Notice that to achieve hover, the rotational speeds of all
x˙6 = x11 + x12 (4)
cos(x5 ) cos(x5 ) the propellers must be equal. Also, the thrust T must counter
the force due to gravity on the drone (T = mg). From the
T definition of thrust (Equation 11) we get:
x˙7 = − [cos(x4 ) sin(x5 ) cos(x6 ) + sin(x4 ) sin(x6 )] (5)
m
r
mg
T weq =
x˙8 = − [cos(x4 ) sin(x5 ) sin(x6 ) − sin(x4 ) cos(x6 )] (6) 4ka
m
As we know, by linearizing a nonlinear time-invariant
T
x˙9 = − cos(x4 ) cos(x5 ) + g (7) system we can only get local properties. In order to obtain
m the linear representation of the system ∆Ẋ = A∆X + B∆U
τx Iy − Iz we need to get the Jacobian matrices A and B. Here, ∆X
x˙10 = + x11 x12 (8) and ∆U are the perturbation about the equilibrium point. The
Ix Ix
actual state and input are re-defined as X = Xeq + ∆X and
τy −Ix + Iz U = Ueq + ∆U .
x˙11 = + x10 x12 (9)
Iy Iy
τz Ix − Iy ∂f
x˙12 = + x10 x11 (10) A= (X, U )|(Xeq ,Ueq )
Iz Iz ∂X
where T , τx , τy , τz are defined as: ∂f
B= (X, U )|(Xeq ,Ueq )
∂U
T = Ka (w1 2 + w2 2 + w3 2 + w4 2 ) (11) Utilizing the previous two equations and our system defini-
tion, Ẋ = f (X, U ), we found A and B to be:
τx = Ka l(w4 2 − w2 2 )
τy = Ka l(w1 2 − w3 2 )  
O6x6 I6x6
2 2
τz = Km (w1 − w2 + w3 − w4 ) 2 2 A= (13)
Λ O6x6
The variables wi2 , i = 1, 2, 3, 4, are the squared angular
velocities of the propellers. They represent the four direct 
O8x4

inputs to the system and are are grouped in a single input B= (14)

vector U , as equation 12 shows in III-A. These and all other
variables as well as all other constants are defined in the Where Oixj and Iixj are the zero matrix and the identity
Appendix section. matrix respectably, of size ixj. Λ and ∆ are defined as follows:
Here pm stands for Parameter Mismatch, and Apm = A

0 0 0 g sin(ψeq ) g cos(ψeq ) 0
 since the linearized matrix A doesn’t depend on any parameter
0 0 0 −g cos(ψeq ) g sin(ψeq ) 0 of the drone. We obtained Bpm assuming a miscalculation of

0 0 0 0 0 0
 m and l by a factor of 1.5, which gives us an overestimation
Λ=
0 0 0
 of 50%.
 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0 Reference Model: ẋm (t) = Am xm (t) + Bm r(t)
K Ka Ka Ka

a
m m m m For the reference model we used the real linearized model
 0 − KIxa l 0 Ka l
Ix

of our system, since this is how ideally the plant should
∆ =  Ka l
 
0 − KIya l 0  behave. This means that Am = A and Bm = B. In our

 Iy
Km
Iz − KIzm Km
Iz − KIzm case r(t) is the reference model control input that makes ẋm
achieve hover at the desired location (x,y,z) = (2,2,3).
B. Linear Controller design
With the linearization done, designing the linear controller
Controller:
is simple: we just need to find a gain matrix K such that the
close-loop system has all the eigenvalues in the left half plane.

u(t) = Kx| (t)x(t) + Kr| (t)r(t) (17)


∆Ẋ = A∆X + B∆U (15)
∆U = −K∆X (16)
Closing the loop:
Here Kx ∈ RN xM , Kr ∈ RM xM , where N = 12 is the
∆Ẋ = (A − BK)∆X dimension of our state-space, and M = 4 is the dimension of
the input space.
With ψeq as zero, we aimed to place all the Eigen Values
of the close loop system completely in the R axis. After
the pole placement, we obtained the gain matrix K = Adaptation laws:
[1x107 K1 , 1x105 K2 ], here K ∈ RM xN and K1 , K2 are
defined as follows:
K̇x (t) = −Γx x(t)e| (t)P B (18)
 
1.32 1.18 2.61 2.46 −1.41 1.83 |
K̇r (t) = −Γr r(t)e (t)P B (19)
1.62 1.25 1.93 2.04 −1.81 −1.02
K1 = 
1.54 1.24 2.61 2.54 −2.04 1.83 

1.68 1.32 1.94 2.41 −1.89 −1.03


Where e(t) is the tracking error defined as e(t) = x(t) −
xm (t), P is the positive definite matrix found solving the
 
86.80 108.79 64.44 15.47 −4.90 48.56
106.61 104.75 55.63 10.27 −9.12 −37.69 Riccati Equation, and Γ is an arbitrary adaptation gain matrix.
K2 =  
We are using the static matrix K that is being used in the
107.86 112.99 64.49 15.96 −12.56 48.52 
110.72 114.92 55.76 15.48 −9.61 −37.69 Linear Controller as the initial condition of our dynamic matrix
Kx and I4x4 as the initial condition of Kr , hence Kx| (0) = K
and Kr| (0) = I4x4 .

C. Linear MIMO MRAC design


For this section, we will treat the perturbation ∆X and
∆U from Equation 15 as the state and the input itself for
convenience sake. D. Results
We will purposely use incorrect parameter values of the
Quadcopter in order to create an ”Estimated Plant” with
parameter mismatch. Then, we will show that the Adaptive Below are the graphs of the response of the 12 linearized
Control laws let us track the Reference Model signal more states for the Linear Controller in Equation 16. Here we
precisely as compared to the Linear Control laws. can see the system converging to the desired hover position,
where the first three states are [x, y, z]| = [2, 2, 3]| and the
Estimated plant: ẋ(t) = Apm x(t) + Bpm u(t) rest are zero.
Fig. 1: States [x1 , x2 , x3 ]| = [x, y, z]| Fig. 4: States [x10 , x11 , x12 ]| = [p, q, r]|

Now, the graphs corresponding to the response of the


system with the linear MIMO MRAC, where we can see that
the adaptive controller in Equation 17 - 19 is better able to
track the reference model than the regular linear controller in
Equations 16.

Fig. 2: States [x4 , x5 , x6 ]| = [φ, θ, ψ]|

Fig. 3: States [x7 , x8 , x9 ]| = [ẋ, ẏ, ż]| Fig. 5: States [x1 , x2 , x3 ]| = [x, y, z]|
Fig. 6: States [x4 , x5 , x6 ]| = [φ, θ, ψ]| Fig. 8: States [x10 , x11 , x12 ]| = [p, q, r]|

IV. S TEP 2: N ONLINEAR C ONTROLLER


In this section, we are going to augment our linear adaptive
controller from the last section so that it can control the actual
nonlinear plant. Again, the MRAC approach will be used here,
but with the addition of parametrized nonlinearities. Before
diving into controller designs, we are going to do a coordinate
transformation that will allow us to do our design easily. With
this transformation, it is possible to put all the nonlinear terms
in the span of the control input. The goal is to get the system
into the following form:
Ẋ = AX + B[U + α| Φ(X)]
With this form, it will be straightforward to design the MIMO
MRAC controller.

A. Differential flatness: Transformation of the State


This system and many other engineered or man-made mo-
bile vehicles have the property of differential flatness. There
exists a transformation of state that will provide full control of
the position variables if control over the orientation is relaxed.
Let q be a vector representing the position of the center of mass
of the drone in the world inertial frame, i.e.:
 
x
q = y 
z
Define e3 as the third column of the 3D rotation matrix, R.
 
− cos x4 sin x5 cos x6 − sin x4 sin x6
e3 = − cos x4 sin x5 sin x6 + sin x4 cos x6 
− cos x4 cos x5
Fig. 7: States [x7 , x8 , x9 ]| = [ẋ, ẏ, ż]| The system can then be rewritten as:
  Plugging them into the x˙7 0 , x˙8 0 , x˙9 0 expressions, the g term
Ka u1  
in the original equation 21 is successfully factored into the
 Ka u2  0
span of B. Finally, we can write out the state dynamics for

mq̈ = e3 1 1 1 1   + m 0
Ka u3 
g the transformed states (where c(*) and s(*) represent cos(*)
Ka u4 and sin(*), respectively):
Let’s define the following coordinate transformation:
x˙1 0 = x07
0
q = q + λe3 (20)
Where λ is a positive real constant. x˙07 = x¨01
The new transformed states then become:  1
= −m T + λ(x210 + x211 ) + c(x4 )c(x5 )g


x01 = x0 = x1 + λ(− cos x4 sin x5 cos x6 − sin x4 sin x6 )


 
c(x4 )s(x5 )c(x6 ) − s(x4 )s(x6 )
x02 = y 0 = x2 + λ(− cos x4 sin x5 sin x6 + sin x4 cos x6 )
h i
+ λ( Iy −IIxz −Ix x11 x12 + τIxx ) + s(x4 )c(x5 )g
x03 = z 0 = x3 + λ(− cos x4 cos x4 )  
s(x4 )s(x5 )c(x6 ) − c(x4 )s(x6 )
x0 = x˙0 7 1 h i
−I +I +I τ 
− λ( x Iyy z x10 x12 + Iyy ) + s(x5 )g c(x5 )c(x6 )
x80
= x˙02
x09 = x˙0
3
x˙2 0 = x08
1) New State Dynamics: We need to obtain the dynamics
equations for the transformed states. Below are some key
results from the mathematical derivation: x˙08 = x¨02
 1
x˙1 0 = x˙1 + λ[sin x4 sin x5 cos (x6 )x10 − cos x4 sin (x6 )x10 T + λ(x210 + x211 ) + c(x4 )c(x5 )g

= −m
 
− cos x5 cos (x6 )x11 ] c(x4 )s(x5 )s(x6 ) − s(x4 )c(x6 )
h i
x˙07 = x¨01 + λ( −Ix +I Ix
y −Iz
x 11 x 12 + τx
Ix ) + s(x 4 )c(x 5 )g
 1
T + λ(x210 + x211 ) c(x4 )s(x5 )c(x6 ) − s(x4 )s(x6 )
 
= −m
 
s(x4 )s(x5 )s(x6 ) − c(x4 )c(x6 )
h i
+λ −Ix +I y −Iz
h i
x11 x12 + τIxx s(x4 )s(x5 )c(x6 ) − c(x4 )s(x6 )

−I +I +I τ 
Ix − λ( x Iyy z x10 x12 + Iyy ) + s(x5 )g c(x5 )s(x6 )
h i
−Ix +Iy +Iz τ 
−λ Iy x10 x12 + Iyy cos x5 cos x6
x˙3 0 = x09
0
x˙2 = x˙2 + λ[sin x4 sin x5 sin (x6 )x10 + cos x4 cos (x6 )x10
− cos x5 sin (x6 )x11 ] x˙0 = x¨0
9
 13
T + λ(x210 + x211 ) + c(x4 )c(x5 )g c(x4 )c(x5 )
 
˙ 0 ¨0 = −m
x8 = x2 h i
+ λ( −Ix +I y −Iz
x11 x12 + τIxx ) + s(x4 )c(x5 )g s(x4 )c(x5 )
 1 
T + λ(x210 + x211 ) cos x4 sin x5 sin x6 − sin x4 cos x6
 
= −m Ix
h i
+λ −Ix +I y −Iz τx
h i
Ix x 11 x 12 + Ix
sin x4 sin x5 sin x6 − cos x4 cos x6− λ( −Ix +Iy +Iz x10 x12 + τy ) + s(x5 )g s(x5 )
Iy Iy
h i
−Ix +Iy +Iz τy  
−λ Iy x 10 x 12 + Iy cos x 5 sin x 6 2) Rewriting State Dynamics in Matrix Form: With the new
state vector defined as
x˙3 0 = x˙3 + λ[sin x4 cos x5 x10 + sin x5 x11 ] |
X 0 = x1 0 x2 0 x3 0 x7 0 x8 0 x9 0


x˙09 = x¨03 we can write the entire state dynamics in the following
 1
T + λ(x210 + x211 ) cos x4 cos x5
 
= −m matrix form:
h
−Ix +Iy −Iz τx
i  (21)
+λ Ix x11 x12 + Ix sin x4 cos x5 Ẋ 0 = A00 X 0 + B 00 [U + α| Φ(X 0 )]
h i
−Ix +Iy +Iz τ 
−λ Iy x10 x12 + Iyy sin x5 + g Where,
The next step is to transform g so that it can be factored
into the span of the B matrix as well. By inspection, one can B 00 [U + α| Φ]
1
 
find that by decomposing g into the following three terms: −m T + λ(x210 + x211 ) + c(x4 )c(x5 )g
 
cos x4 cos x5 g,   (22)
00 λ( −Ix +Iy −Iz x x τx
=B  11 12 + Ix ) + s(x4 )c(x5 )g 

Ix
sin x4 cos x5 g,  
 
sin x5 g −I +I +I
−λ( x y z x x + y ) + s(x )g
τ
Iy 10 12 Iy 5
− Kma a − λK al Ka λKa l
 
  Iy c, − m a − Ix b,
0 0
0 1 0 0 κ1 = − Kma d − λK al Ka λKa l 
Iy f, − m d − Ix e,

0 0
0 0 1 0

0
 − Kma g − λK al Ka λKa l
Iy i, − m g − Ix h,
00 0
0 0 0 1
A =0

 0
0 0 0 0
0 0
0 0 0 0
− Kma a − λK al Ka λKa l
 
0 0
0 0 0 0 Iy c, − m a − Ix b
κ2 = − Kma d − λK al Ka λKa l 
Iy f, − m d − Ix e

 
03x3 − Kma g − λK al Ka λKa l
Iy i, − m g − Ix h
00
B =
R
where, 
R = R1 R2 R3
 α| = Λ+ Υ .

Here, Λ+ represents the Moore-Penrose pseudo inverse of Λ.



c(x4 )s(x5 )c(x6 )
 
a
 This is the final transformed state dynamics in matrix form.
R1 = c(x4 )s(x5 )s(x6 ) − s(x4 )c(x6 ) = d
c(x4 )c(x5 ) g B. Nonlinear MIMO MRAC Design

    Reference Model (in the transformed coordinates):


s(x4 )s(x5 )c(x6 ) − c(x4 )s(x6 ) b
0 0
R2 = s(x4 )s(x5 )s(x6 ) + c(x4 )c(x6 ) =  e  Ẋm = Am Xm + Bm r(t)
s(x4 )c(x5 ) h
   
c(x5 )c(x6 ) c Adaptive Controller (in the transformed coordinates):
R3 = c(x5 )s(x6 ) = f 
−s(x5 ) i e0 (t) = X 0 (t) − Xm
0
(t)
0 0 0
u0 (t) = Kx| X 0 (t) + Kr| r(t) − α̂ | Φ(X)
 2
x10 + x211

0
c(x4 )c(x5 )
  K̇x0 (t) = −Γx X 0 (t)e | P B 0
0
 x11 x12  0
Φ(X ) =    K̇r0 (t) = −Γr r0 (t)e | P B 0
s(x4 )c(x5 )

0
 x10 x11  α̂˙ 0 (t) = Γα Φ0 (X)e | P B 0
s(x5 )
Finally, we can obtain the desired form of B[U + α| Φ(X 0 )] In order to express the control input in the original coordinates,
by manipulating equation 22: i.e. convert u0 (t) to u(t), we just need to do the following.
B 00 [U + α| Φ(X 0 )] = B 00 [ΛU + ΥΦ(X 0 )] The only part in u0 (t) that is expressed in the transformed
coordinates is X 0 (t). Therefore, if we replace X 0 (t) by the
Where, coordinate transformation from X 0 (t) to X(t) as follow:
 
− Ka Ka Ka Ka
x01 = x0 = x1 + λ[−c(x4 )s(x5 )c(x6 ) − s(x4 )s(x6 )]
 0m m
− λK al
m
0
m
λKa l 
Λ= Ix Ix 
− λK al
0 λKa l
0
Iy Iy
x02 = y 0 = x2 + λ[−c(x4 )s(x5 )s(x6 ) + s(x4 )c(x6 )]
 
λ g 0 0 0 0
λ(−Ix +Iy −Iz ) x03 = z 0 = x3 + λ[−c(x4 )c(x4 )]
Υ = 0 0 g 0 0

Ix 
−λ(−Ix +Iy −Iz )
0 0 0 0 Ix g
x07 = x7 + λ[s(x4 )s(x5 )c(x6 )x10 − c(x4 )s(x6 )x10 − c(x5 )c(x6 )x11 ]
Then, we can rewrite the system as:

Ẋ 0 = A0 X 0 + B 0 [U + α| Φ(X 0 )] x08 = x8 + λ[s(x6 )(s(x4 )s(x5 )x10 − c(x5 )x11 ) + c(x4 )c(x6 )x10 ]

Where,
A0 = A00 x09 = x9 + λ[s(x4 )c(x5 )x10 + s(x5 )x11 ]
 
0 03x3 Then the control input will depend on X(t) instead of X 0 (t).
B =
κ Therefore, we get the expression for u(t) with everything
  expressed in the original coordinates.
κ = κ1 κ2
Fig. 9: States trans. coord. [x01 , x02 , x03 ]| = [x0 , y 0 , z 0 ]| Fig. 10: States trans. coord. [x07 , x08 , x09 ]| = [ẋ0 , ẏ 0 , ż 0 ]|

C. Results
The simulation plots for the nonlinear MIMO MRAC
controller (Fig. 9 to Fig. 12) and the fixed-gain linear
controller (Fig. 13), as well as the response of the nonlinear
system to the Linear MIMO MRAC (Fig. 14 and Fig.
15) are provided in this section for comparison. The plant
parameter mismatch is the same as before (overestimation by
50%). The plots include graphs of the states of the actual
plant xno. (t), and the corresponding states of the model
reference xmno. (t), in both the transformed coordinates and
the original coordinates. Now, the desired hover state is set
at [x, y, z] = [1, 1, 1], and λ is 0.01, which means that the
virtual point is just above the drone’s center of mass.

In the case of the system in transformed coordinates (Fig.


9 and Fig. 10), the plant states track the reference states
perfectly and both of them converge to the ideal values
quickly and smoothly.
Fig. 11: States orig. coord. [x1 , x2 , x3 ]| = [x, y, z]|
Now for the original coordinates, the three position states
converge to the ideal values relatively fast (Fig. 11). However,
they have small non-vanishing oscillations. As to the other
three velocity states (Fig. 12), they also converge to zero, but
with much larger yet bounded oscillations. Finally, the state trajectories of the linear MRAC controller
applied to the nonlinear plant are displayed in Fig. 14 and
In the case of the response of the nonlinear system to the Fig. 15. The system blows up as well. This shows the linear
fixed-gain linear controller many states (both translational MRAC controller is unable to achieve what the nonlinear
and angular) blow up and hence the system is not stabilized. MRAC does for the nonlinear plant. However, it performs
This results are obvious since linearization only works locally better than the fixed-gain linear controller. This makes sense
in a neighborhood close to the equilibrium. since it tries to adapt to the unstable situation and thus slows
down the blowing-up process.
Fig. 14: Linear MRAC controller applied to nonlinear dynam-
ics

Fig. 12: States orig. coord. [x7 , x8 , x9 ]| = [ẋ, ẏ, ż]|

Fig. 15: Linear MRAC controller applied to nonlinear dynam-


ics

Fig. 13: Fixed-gain linear controller applied to nonlinear


dynamics
V. A PPENDIX
A. Variables
Definition of the variables used throughout the report:
wi : Angular velocity of propeller i, measured in RPM.
T : Total thrust of the drone.
τx : Torque about the x axis.
τy : Torque about the y axis.
τz : Torque about the z axis.
Ix : Momentum of inertia in the x axis.
Iy : Momentum of inertia in the y axis.
Iz : Momentum of inertia in the z axis.
m : Mass of the drone.
l : Length of each of the quadcopter’s arms.
g : Acceleration due gravity.
Ka : Aerodynamic value dependent on air density (constant
at low altitudes), thrust coefficient (constant), drone and rotor
geometry (constants). Used to calculate thrust exerted by
each rotor.
Km : Aerodynamic value dependent on air density (constant
at low altitudes), torque coefficient (constant), drone and
rotor geometry (constants). Used to calculate torque exerted
by each rotor.

B. Constants
Definitions of the parameters used throughout the report
which are specific to the drone being used, the Parrot Rolling
Spider:

m = 68 grams
l = 6.24 cm
g = 9.81 sm2
Ka = 4.72x10−8 kg · m
Km = 1.1393x10−10 kg · m2
Ix = 6.86x10−5 kg · m2
Iy = 9.2x10−5 kg · m2
Iz = 1.366x10−4 kg · m2

VI. REFERENCE
Lyu, Haifeng, ”Multivariable Control of a Rolling Spider
Drone” (2017). Open Access Master’s Theses. Paper 1064.
http://digitalcommons.uri.edu/theses/1064

Das könnte Ihnen auch gefallen