0% found this document useful (0 votes)
6 views

Modeling and Adaptive Control of a Quadrotor

This paper presents two adaptive control strategies for stabilizing the attitude of quadrotors, focusing on a Model Identification Adaptive Controller (MIAC) and a Model Reference Adaptive Control (MRAC) scheme. The proposed methods utilize recursive least-squares estimation and Lyapunov theory to ensure stability despite variations in system parameters. Simulation results demonstrate the effectiveness of these adaptive controllers compared to traditional nonadaptive methods.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Modeling and Adaptive Control of a Quadrotor

This paper presents two adaptive control strategies for stabilizing the attitude of quadrotors, focusing on a Model Identification Adaptive Controller (MIAC) and a Model Reference Adaptive Control (MRAC) scheme. The proposed methods utilize recursive least-squares estimation and Lyapunov theory to ensure stability despite variations in system parameters. Simulation results demonstrate the effectiveness of these adaptive controllers compared to traditional nonadaptive methods.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Proceedings of 2012 IEEE

International Conference on Mechatronics and Automation


August 5 - 8, Chengdu, China

Modeling and Adaptive Control of a Quadrotor


Matthias Schreier
Institute of Automatic Control and Mechatronics
Control Theory and Robotics Lab
TU Darmstadt
Landgraf-Georg-Str. 4, 64283 Darmstadt, Germany
[email protected]

Abstract—In this paper, we propose two variants of adaptive The present paper focuses on the adaptation of the stabilization
state space controllers for attitude stabilization and self-tuning control loops for coping with either varying or even unknown
of a four-rotor aerial robot, a quadrotor. First of all, the use of system inertia tensor. This is especially useful for the increas-
a Model Identification Adaptive Controller (MIAC) is proposed
in terms of combining a recursive least-squares estimator with ing amount of modular quadrotor platforms which will often
exponential forgetting with an integral discrete-time state space change sensor configuration or load.
controller. Furthermore, a continuous-time Model Reference The remainder of this paper is structured as follows. In
Adaptive Control (MRAC) scheme based on Lyapunov theory Section II, the mathematical model of a quadrotor UAV is
is applied to the simplified dynamics of a quadrotor, which presented in terms of Euler angles as well as in a more sophis-
guarantees global asymptotic stability for at least linear overall
systems. The effectiveness of the suggested adaptive methods is ticated quaternion representation which is used for simulation
demonstrated in simulations with a quaternion-based nonlinear studies. Section III explains the quadrotor control concept
dynamic model of a quadrotor derived in this work. The results without adaptive extensions and the design of a discrete-time
are compared to a designed nonadaptive integral state space integral state space controller for roll and pitch movements.
controller. This serves as the basis for the comparison with the two
Index Terms—UAV, VTOL, quadrotor, adaptive control, iden-
tification, stabilization
adaptive variants presented in Section IV which are considered
the core of this paper. First, the use of a Model Identifi-
cation Adaptive Controller (MIAC) is proposed in terms of
I. I NTRODUCTION combining a recursive least-squares estimator with exponential
forgetting with an integral discrete-time state space controller.
Unmanned Aerial Vehicles (UAVs) are a class of mobile Furthermore, a continuous-time Model Reference Adaptive
robots which recently received considerable interest. This Control (MRAC) scheme based on Lyapunov theory is applied
especially holds for quadrotors that belong to the so-called to the simplified dynamics of a quadrotor which guarantees
Vertical Take-Off and Landing (VTOL) systems. A quadrotor global asymptotic stability for at least linear overall systems.
is an UAV with four rotors in cross configuration whose Simulation results underline the effectiveness of the proposed
motion behavior is influenced solely by changing its indi- control schemes.
vidual propellers’ speeds. This is mainly done by use of
lightweight, highly efficient brushless direct current motors II. M ODELING OF A QUADROTOR UAV
with advantageous dynamic properties. In contrast to heli- The dynamic behavior of a quadrotor has been described in
copters, quadrotors have better maneuverability, are easier and a variety of publications to varying degrees of complexity, see
cheaper to produce due to simpler mechanics and are therefore for example [11]–[14]. The following derivation is roughly
more and more favored [1], [2]. However, they require more based upon [8], but extends its mathematical description by
complex control algorithms in order to successfully stabilize the full consideration of nonlinear coupling between the axes
the nonlinear unstable multivariable system. In the past, a as well as by a quaternion-based representation. Aerodynamic
considerable amount of work has been done to fulfill this side effects and elastic deformations play a minor role at slow
requirement. The following list, which is not intended to speeds, sufficient stiffness and realistic flight maneuvers and
be exhaustive, provides a short overview over some of the are therefore omitted. The basis of the model is Fig. 1 which
contributions. shows a freely moving quadrotor in three-dimensional space.
• P(I)D control [1], [3], [18] The origin of the body-fixed frame (CS)B (basis vectors
• PD2 control [3], [4] e1B , e2B , e3B ) is located at the center of gravity whose
• Sliding mode control [1], [5] position in earth-fixed inertial frame (CS)I (basis vectors
• Adaptive sliding mode control [2] e1I , e2I , e3I ) is given by the vector (I) r = (x, y, z)T . The
• State-dependent Riccati control [1], [6] orientation of the quadrotor is first described by three Euler
• Backstepping control [1], [5], [7] angles (roll angle φ, pitch angle θ, yaw angle ψ) combined in
• Feedback linearization [2], [8], [9] the vector Ω = (φ, θ, ψ)T . A rotation from (CS)I to (CS)B is
• H∞ control [10] realized by three consecutive elementary rotations. Earth-fixed

978-1-4673-1278-3/12/$31.00 ©2012 IEEE 383

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.
F1
front Here, J is the inertia tensor of the symmetric rigid body
F2
left around its center of mass, ω Q its angular velocity vector
with (B) ω Q = (ωx , ωy , ωz )T , M the vector of the extern
torques applied to the body, and M G the vector of gyroscopic
− − torques. All values are expressed in the body-fixed frame
e1B φ
θ (CS)B
+
which facilitates the calculations tremendously. The inertia
+ F4 tensor only contains diagonal entries due to the symmetric
L e3B e2B structure, so (B) J = diag(Jx , Jy , Jz ). The vector of extern
F3
+ − torques M is composed of the thrust differences and drag
ψ r moments of the individual rotors and, under consideration of
the rotation directions, results in
⎛ ⎞
e1I right Lb(ω22 − ω42 )
(CS)I
(B) M =
⎝ Lb(ω12 − ω32 ) ⎠. (4)
rear
e2I d(ω1 − ω22 + ω32 − ω42 )
2
e3I
The so called drag factor d describes an air resistance, the
Fig. 1. Configuration of a quadrotor parameter L is equal to the length of the lever between center
of mass and the four motors. The gyroscopic torques are a
result of rotational movements of the quadrotor in combination
basis vectors are transfered to body-fixed ones by first rotating with rotating rotors of inertia Jr and are calculated as
around the z-axis with rotation matrix Rz (ψ), afterwards ⎛ ⎛ ⎞⎞
0
around the new y-axis with rotation matrix Ry (θ) and at last ⎝(B) ω Q × ⎝0⎠⎠ (ω1 − ω2 + ω3 − ω4 ). (5)
around the newest resulting x-axis with rotation matrix Rx (φ). (B) M G = Jr
1
The entire orthonormal rotation matrix I RB ∈ SO(3) which
transforms direction vectors from the body-fixed to the inertial Furthermore, the relation between the angular velocity vec-
frame results from right multiplication of elementary rotations. tor ω Q and the vector of Euler angles Ω = (φ, θ, ψ)T
With the use of the abbreviations cx for cos(x) and sx for is required1 . The nonlinear relationship can be found by a
sin(x) it reads coefficient comparison with a skew symmetric matrix S that
is determined by the rotation matrix I RB from (1) and its time
I
RB = Rz (ψ)Ry (θ)Rx (φ)
⎛ ⎞⎛ ⎞⎛ ⎞ derivative: S((B) ω Q ) = (I RB )T I R˙ B . For the defined Euler
cψ −sψ 0 cθ 0 sθ 1 0 0 angle rotation sequence, the kinematic euler equations result
= ⎝sψ cψ 0⎠ ⎝ 0 1 0 ⎠ ⎝0 cφ −sφ ⎠ in ⎛ ⎞
0 0 1 −sθ 0 cθ 0 sφ cφ 1 sin φ tan θ cos φ tan θ
⎛ ⎞ Ω̇ = ⎝0 cos φ − sin φ ⎠ (B) ω Q . (6)
cψ cθ cψ sθ sφ − sψ cφ cψ sθ cφ + sψ sφ sin φ cos φ
= ⎝sψ cθ sψ sθ sφ + cψ cφ sψ sθ cφ − cψ sφ ⎠ . 0 cos θ cos θ
−sθ cθ sφ cθ cφ The four angular velocities of the rotors are the real input
(1) variables of the quadrotor, but in order to simplify the control
Every rotor (i = 1, . . . , 4) generates a thrust force F i propor- design, the artificial input vector u = (u1 , u2 , u3 , u4 )T is
tional to the square of the rotor’s angular speed ωi [8]. The defined as follows:
⎛ ⎞ ⎛ ⎞ ⎛ 2⎞
proportionality factor is called thrust factor b and is dependent u1 b b b b ω1
on the air density, the geometry of the rotor blade as well as ⎜u 2 ⎟ ⎜ 0 b 0 −b ⎟ ⎜ω2 2 ⎟
u=⎜ ⎟ ⎜
⎝u3 ⎠ = ⎝ b 0 −b 0 ⎠ ⎝ω3 2 ⎠
⎟⎜ ⎟ (7)
its pitch angles.In body-fixed
T coordinates we consequently get
2
(B) F i = −bωi 0 0 1 . By transforming the thrust forces u4 d −d d −d ω4 2
to the inertial frame and making use of the principle of linear The variable u1 is equal to the sum of all rotor thrust
momentum, the following equations can be introduced for a forces and consequently matches the resulting lift-forces in
quadrotor of mass m under gravity g: hover flight. The variables u2 and u3 correspond to forces
 T 4
 which result from a speed difference of two opposite mo-
(B) F i
(I) r̈ = 0 0 g + I RB (2) tors leading to roll and pitch movements while the input
i=1
m variable u4 can be interpreted as a yaw moment. Introduc-
Consequently, the translational movement of the quadrotor is ing the abbreviation g(u) = ω1 − ω2 + ω3 − ω4 , (2), (3), (6)
fully described. With the principle of angular momentum a and (7) can be used to formulate a nonlinear state space
second vector differential equation can be formulated that also 1 It should be mentioned that in many publications on quadrotors this
describes the rotatory movement of the body: dependency is simplified by implicitly assuming small angle approximation
which results in an equality between the Euler rates Ω̇ = (φ̇, θ̇, ψ̇)T and the
(B) J (B) ω̇ Q +((B) ω Q × (B) J (B) ω Q ) = (B) M − (B) M G (3) angular velocity vector B ω Q (see for example [8], [11]).

384

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.
system ẋ = f (x, u) with the 12-dimensional state vector (ẋ, ẏ, ż, q0 , q1 , q2 , q3 , ωx , ωy , ωz , x, y, z)T as follows:
x = (x1 , ..., x12 )T = (ẋ, ẏ, ż, φ, θ, ψ, ωx , ωy , ωz , x, y, z)T and ⎛ ⎞
−(2x5 x7 + 2x4 x6 ) um1
the artificial input vector u = (u1 , u2 , u3 , u4 )T : ⎜ ⎟
⎜ −(2x6 x7 − 2x4 x5 ) um1 ⎟
⎜ g − (x24 − x25 − x26 + x27 ) u1 ⎟
⎛ ⎞ ⎜ 1 m ⎟
−(cos x4 sin x5 cos x6 + sin x4 sin x6 ) um1 ⎜ ⎟
⎜−(cos x4 sin x5 sin x6 − sin x4 cos x6 ) um1 ⎟ ⎜ 21(−x5 x8 − x6 x9 − x7 x10 ) ⎟
⎜ ⎟
⎜ ⎟ ⎜ 2 (x4 x8 − x7 x9 + x6 x10 ) ⎟
⎜ g − (cos x4 cos x5 ) um1 ⎟ ⎜ 1 ⎟

⎜ x7 + x8 sin x4 tan x5 + x9 cos x4 tan x5 ⎟
⎟ ⎜ 12 (x7 x8 + x4 x9 − x5 x10 ) ⎟
⎜ ⎟
⎜ ⎟ ẋ = ⎜ 2 (−x 6 x8 + x5 x9 + x4 x10 ) ⎟ (12)
⎜ x8 cos x4 − x9 sin x4 ⎟ ⎜x9 x10 Jy −Jz − Jr x9 g(u) + L u2 ⎟
⎜ ⎟ ⎜ ⎟
⎜ sin x4
x + cos x4
x ⎟ Jx Jx
⎜x x Jz −Jx + Jr x g(u) + L u ⎟
Jx
⎜ cos x5 8 cos x5 9 ⎟ ⎜ 8 10 Jy Jy 8 Jy 3 ⎟
ẋ = ⎜ Jy −Jz
x8 x9 Jx − Jx x8 g(u) + Jx u2
Jr L ⎟ (8) ⎜ ⎟
⎜ ⎟ ⎜ J −J
x8 x9 xJz y + J1z u4 ⎟
⎜ Jz −Jx Jr L ⎟ ⎜ ⎟
⎜ x7 x9 Jy + Jy x7 g(u) + Jy u3 ⎟ ⎜ ⎟
⎜ ⎟ ⎜ x 1 ⎟
⎜ Jx −Jy
x 7 x 8 Jz + Jz u 4 1 ⎟ ⎝ ⎠
⎜ ⎟ x2
⎜ x1 ⎟
⎜ ⎟ x3
⎝ x2 ⎠
This singularity-free model serves as the basis for all simula-
x3
tions in this paper. It should be mentioned at this point that in
order to facilitate the specification of the initial orientation
However, this Euler angles-based representation suffers from as well as the later interpretation of the quaternion-based
the so called gimbal lock problematic which in this case representation, it is useful to have two conversion formulas
results in a singular configuration for pitch angles of θ = ±90◦ at hand which help converting quaternions to Euler angles and
(division by zero). vice versa [14]:
This problem can be overcome by using a quaternion-    arctan (2(q q +q q ),(q2 −q2 −q2 +q2 )) 
φ 2 2 3 0 1 0 1 2 3
based description of the system [20]. The normalized quater- θ = − arcsin(2(q1 q3 −q0 q2 )) (13)
ψ arctan2 (2(q1 q2 +q0 q3 ),(q02 +q12 −q22 −q32 ))
nion q = (q0 , q1 , q2 , q3 )T describes a one-axis rotation by the
⎛ ⎞
rotation angle σ around the so-called euler axis with unit vector  q0  cos φ
2 cos θ
2 cos ψ
2 +sin
φ
2 sin θ
2 sin ψ
2
cos σ
e = (e1 , e2 , e3 )T and is defined as q = e sin 2σ [20]. To q1 ⎜ sin φ
cos θ
cos ψ
2 −cos
φ
sin θ
sin ψ

2 q2 = ⎝ cos 2
φ
sin
2
cos ψ
2
φ
2 2
ψ ⎠ (14)
2 +sin cos sin
θ θ
adapt the derivation, the relation between the quaternion q q3 2
φ
2
ψ
2
φ
2 2
ψ
cos cos θ
sin 2 −sin sin θ
cos
and the rotation matrix I RB from (1) is required. It can be 2 2 2 2 2

formulated according to [14] as The hover state Ω = 0, for example, equals an initial
quaternion of q = (±1, 0, 0, 0)T . The parameter values of
 the quadrotor used for simulations are summarized in table I.
q02 +q12 −q22 −q32 2(q1 q2 −q0 q3 ) 2(q1 q3 +q0 q2 )
I
RB = 2(q1 q2 +q0 q3 ) q02 −q12 +q22 −q32 2(q2 q3 −q0 q1 ) . (9) They are based on either measurements on a real system that
2(q1 q3 −q0 q2 ) 2(q2 q3 +q0 q1 ) q02 −q12 −q22 +q32 is currently under development (m, b, d, L) or extracted from
appropriate CAD-models (Jx , Jy , Jz , Jr ).
Moreover, the quaternion differential equation TABLE I
Q UADROTOR PARAMETERS
 
1 0
q̇ = q • (10) parameter abbreviation value unit
2 (B) ω Q mass m 0.58 kg
lever length L 0.25 m
roll inertia Jx 0.01 kg m2
has to be solved instead of the kinematic euler equations (6).
pitch inertia Jy 0.01 kg m2
The operator ” • ” describes the common quaternion mul- yaw inertia Jz 0.02 kg m2
tiplication which can also be formulated as a matrix-vector rotor inertia Jr 3.8e-05 kg m2
multiplication [14]: drag factor d 2.82e-07 kg m2
thrust factor b 1.55e-05 kg m
⎛ ⎞⎛ ⎞
q0 −q1 −q2 −q3 0
1⎜q1 q0 −q3 q2 ⎟ ⎜ωx ⎟ III. D ISCRETE - TIME INTEGRAL STATE SPACE
q̇ = ⎜

⎟⎜ ⎟ (11)
2 q2 q3 q0 −q1 ⎠ ⎝ωy ⎠ STABILIZATION CONTROL
q3 −q2 q1 q0 ωz This section presents the control concept as well as the
design of a nonadaptive integral state space controller for atti-
Using (2), (3), (9) and (11), it is possible to replace (8) with tude stabilization which will serve as a basis for the adaptive
an equivalent state space system on quaternion basis with schemes in Section IV. The goal of the control structure, which
the now 13-dimensional state vector x = (x1 , ..., x13 )T = is sketched in Fig. 2, is to stabilize the quadrotor and to allow

385

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.
free movement in space by a selection of appropriate reference state vector x = (φ, φ̇)T :
signals. Controlled variables are the height z, the roll angle φ,    
0 1 0
ẋ(t) = x(t) + L u2 (t)
0 0 J
    x 
u1,s A b (16)
zs Height controller
 
φ(t) = 1 0 x(t)
Stabilization controller
  
u2,s cT
φs Roll controller

the conversion formulas Ad = Φ(T ) and


ω1,s z
Nonlinear ω2,s
ω1
ω2 φ By applying
T
ω3,s Speed controllers ω3 Quadrotor θ
Mapping ω4,s ω4 ψ̇ bd = 0 Φ(T − τ )bdτ
 with the state-transition matrix Φ(t) =
L−1 (Is − A)−1 (see for example [15]) and sample time T
u3,s
θs Pitch controller

to (16), the equivalent discrete-time state space system can be


formulated as follows:
ψ˙s Yaw controller
u4,s
  
T 2L
1 T
x(k + 1) = x(k) + 2J TL
x u2 (k)
0 1
   J
  
x
Fig. 2. Control concept Ad (17)
bd
 
the pitch angle θ and the yaw rate ψ̇. With this selection, any φ(k) = 1 0 x(k)
  
position in space can be reached. However, it is not possible cT
to control an arbitrary combination of position and orientation As a basis, we use two decoupled state space controllers for
due to the underactuated system. This can be explained to roll and pitch angles. Although the system itself has double-
the effect that a nonzero roll or pitch angle always forces integrating behavior, we extend the controllers by a discrete-
a translation of the quadrotor. The relationship is used here time integrator of the form FI (z) = z−1 kI
with gain kI as
directly to initiate position changes by selecting appropriate shown in Fig. 3. The reason for this modification is the fact
reference angles. These can be provided either by a hand-
operated remote control or a superimposed flight controller. FI (z)

The output variables us = (u1,s , u2,s , u3,s , u4,s )T of the four φs (k) xI (k + 1)
z −1
xI (k)
kI
u2 (k)
bd
x(k + 1)
1z −1
x(k)
cT
φ(k)

controllers are mapped to reference variables of four minor


motor speed control loops which are considered sufficiently Ad

fast to neglect their dynamics. Consequently, in the rest of


this paper we assume that u = us holds. The mapping is kTx

realized by inverting (7), which is possible for b = d. In


order to realize the concept only a subset of the mentioned Fig. 3. Integral state-space roll stabilization control loop
quadrotor state equations are needed. By neglecting gyroscopic
torques and linearizing the rotatory system around the hover that only then it is possible to compensate for (constant)
state, we optain the simplified differential equations for the disturbances that act upon the input side of the controlled
stabilization control loops and their corresponding Laplace system. Indeed these disturbances occur in reality due to
transfer functions blade flapping effects [13]. In order to design the controller
L φ(s) L parameters kx T and kI , system (17) is enhanced by the
φ̈ = u2  Fφ (s) = = , (15a) integrator, and a pole placement operation is realized by using
Jx U2 (s) Jx s 2
L θ(s) L Ackermann’s formula [16], so that all poles of the closed-
θ̈ = u3  Fθ (s) = = , (15b) loop system lie at the real locations zi = 0.9 (T = 0.01 s).
Jy U3 (s) Jy s 2
This choice results in a good compromise between actuator
which result in double-integrating systems. Due to the similar stress and dynamics. Fig. 4 shows the stabilization of the
roll and pitch dynamics, only the roll control is further quadrotor with initial values φ(0) = θ(0) = 70◦ (all other
explained2 . Equation (15a) can also be formulated as an initial values are zero) as well as an input disturbance reg-
equivalent continuous-time state space system with the reduced ulation at t = 1.2 s. One can see that the fairly basic linear
controllers are able to successfully stabilize the system without
2 Height and yaw control are not in the focus of this paper, but it should
big overshoots even under these extreme initial orientation
be mentioned for completeness that the height control is composed of a
discrete-time P DT1 -controller with transfer function Gz (z) =
−70(z−0.99) values with strong coupling between the axes. Furthermore,
z−0.7
0.02z
combined with a P T1 -prefilter Vz (z) = z−0.98 and weight force compen- a strong simultaneous positive constant load disturbance mo-
sation while the yaw rate controller is a simple gain kp = 0.1 combined mentum of 0.25 Nm acts in roll and pitch direction from
with a prefilter of the same type. Set points of these two controllers are time t = 1.2 s on. This corresponds to disturbance values
zero. Furthermore, realistic limits have been imposed on the artificial input
variables, so that u1 ∈ [1 N, 15 N], u2 ∈ [−2 N, 2 N], u3 ∈ [−2 N, 2 N], of u2d = u3d = 1 N for the artificial input variables and thus
u4 ∈ [−0.05 Nm, 0.05 Nm] as well as appropriate anti-windup extensions. 50% of the saturation limits. Despite this large disturbance, the

386

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.
80
φ as the actual roll and pitch angles as can be seen in Fig. 6. In
60 θ

Jˆx
φ,θ (°)

40

20
zi = 0.9 Ackermann’s
0 RLS
formula
−20
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Parameters
t (s)

Fig. 4. Stabilization and disturbance rejection of the integral state control u2


Roll controller φ, φ̇
φs
φ
Quadrotor
angle control deviation only increases to a maximum of 4◦ and θ
is compensated completely by the additional integral term. The θs u3 θ, θ̇
Pitch controller
simulation underlines the effectiveness and quality of the state
controller. However, the fixed control parameters cannot cope
with varying system inertias. Fig. 5 shows the step response Parameters
of the roll controller mentioned above, which is designed zi = 0.9 Ackermann’s
RLS
for the nominal inertia Jx = 0.01 kg m2 when the system formula
actually has twice and four times that inertia respectively. Jˆy
While an increase to the double value is unproblematic due

Fig. 6. Model identification adaptive stabilization control loops


1
0.8 order to calculate u2 and u3 , the thrust factors of the propellers
φ (°)

0.6 Jx=0.01kgm2 have to be known. This condition is considered to be fulfilled.


0.4 Jx=0.02kgm2 The online controller synthesis is done using Ackermann’s
0.2 Jx=0.04kgm2 formula [16]. As a design criterion the poles of the closed-
0 loop system should stay at the optimal location zi = 0.9
0 0.5 1 1.5 2 2.5 3
t (s) (T = 0.01 s) independent of the inertias. This should result
in a non-oscillating transient step response. For estimating the
Fig. 5. Step response of nonadaptive control loop for different inertias
parameter vector Θ̂ = (â1 , ..., âm , b̂1 , ..., b̂m )T of a Z-transfer
function with dead time d of the form
to the robustness of the controller, the oscillation tendency
is much more pronounced if the fourfold inertia is applied. Y (z) b1 z −1 + ... + bm z −m
F (z) = = z −d , (18)
This would disturb video recordings from a quadrotor platform U (z) 1 + a1 z −1 + ... + am z −m
tremendously, for example, so that an adaptation seems vital
the recursive least squares estimation is given by
in this case. Furthermore, an adaptation makes sense if the
inertia tensor is completely unknown which will render a Θ̂(k + 1) = Θ̂(k) + γ(k) y(k + 1) − ψ T (k + 1)Θ̂(k) ,
standard control design impossible. A self-tuning controller
avoids the complex measurement or calculation of the inertias P (k)ψ(k + 1)
γ(k) = ,
and will facilitate first-time operation. Therefore, two adaptive ψ T (k + 1)P (k)ψ(k + 1) + λ
schemes are proposed to solve the in hand deficits of a standard
I − γ(k)ψ T (k + 1) P (k)
quadrotor control design. P (k + 1) = ,
λ
IV. A DAPTIVE CONTROL OF A QUADROTOR (19)
A. Model Identification Adaptive Control (MIAC)
with the correction vector γ(k), the regression vector ψ(k) =
In the first case, adaptation is realized for the integral state (−y(k−1), ..., −y(k−m), u(k−d−1), ..., u(k−d−m))T , the
controller described in Section III. Roll and pitch inertias are forgetting factor λ and the covariance matrix P [17]. Adapting
estimated by two parallel running Recursive Least-Squares to our case, we first convert (15a) to discrete-time by applying
(RLS) estimators with exponential forgetting in closed-loop the zero-order hold conversion
combined with an online controller synthesis. The proposed    
z−1 −1 1
parallel operation is valid for small angles – resulting in a Fzoh (z) = Z L F (s) (20)
decoupling of the axes – and a diagonally dominant inertia z s t=kT
tensor3 . Input variables of the estimators are u2 and u3 as well in which Z represents the Z-transform, L−1 conforms to
3 This is only a minor constraint in practice as one will always aim to place the inverse Laplace-transform of the continuous-time process,
additional loads symmetrically to the structure. k is equal to a nonnegative integer and T refers to the

387

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.
sampling time [16]. The corresponding discrete-time system can be considered sensible because it will result in a self-
can consequently be written in form of the Z-transfer function adaptation of the stabilization controllers under minor oscilla-
tory translational movements of the quadrotor. The initial con-
T 2 L −1
2Jx (z + z −2 ) troller parameters are kT (0) = 0, kI (0) = 0, i.e. considered
Fφ (z) = . (21)
1 − 2z −1 + z −2 completely unknown. Initial numerator parameters are fixed at
b̂1 (0) = b̂2 (0) = 1.25 · 10−2 which corresponds to only 10%
A coefficient comparison with (18) reveals that the denomi-
of the actual inertia and simulates a strong misestimation of
nator coefficients ai are independent of the inertia and that
the initial parameters. The initial values of the denominator are
Jx can be calculated from b̂1 as well as b̂2 . In our case
set to the right values â1 (0) = −2 and â2 (0) = 1 which are
the inertia is therefore calculated from the more accurately
known because of the system structure. The forgetting factor
estimated average as Jˆx = T 2 L/(b̂1 + b̂2 ). Fig. 7 shows the
is λ = 0.99, initial covariance matrices are diagonal matrices
simulation results for the proposed MIAC in comparison to
with P (0) = diag(100, 100). The estimators rapidly converge
the nonadaptive control loops. During the first 5 seconds, the
to the correct nominal inertia values and the control quality
is equal to that of the optimal adjusted fixed state controller.
5 Under load changes, the adaptation displays its potential as it
shows an almost instantaneous optimal step response without
φs,φ (°)

0
overshoot in comparison to the nonadaptive case. The drives’
φs speed values clearly reveal the swaying of the quadrotor as
φ (adaptive) well as the increased required actuating values to satisfy the
−5 φ (nonadaptive)
dynamic specifications under larger inertias. If the adaptation
0 5 10 15
t (s)
is only used for self-tuning, the estimator can of course be
deactivated after convergence and the controller parameters
5 remain fixed.
B. Model Reference Adaptive Control (MRAC)
θs,θ (°)

0
θs As a second variant, a Model Reference Adaptive Control
θ (adaptive) scheme as sketched as in Fig 8 is proposed. There are two
−5 θ (nonadaptive)

0 5 10 15
t (s) φg , φ̇g
0.05
Reference model
Adaptive law
(Roll)
0.04
Jˆx, Jˆy (kgm2)

Parameters
0.03

0.02
Jˆx u2
Roll controller
0.01 Jˆy
φs
φ, φ̇
0
0 5 10 15 Quadrotor θ, θ̇
t (s)
θs u3
3200 Pitch controller

3000
ni (min−1)

2800 Parameters
Reference model
2600
n1 n2 n3 n4 Adaptive law θg , θ̇g
(Pitch)
2400
0 5 10 15
t (s)

Fig. 8. Model reference adaptive stabilization control loops


Fig. 7. Self-tuning and behavior of MIAC during inertia changes

equivalent reference models, one for roll and one for pitch
inertias have their nominal values Jx = Jy = 0.01 kg m2 movements, which represent the desired closed-loop dynamics
for which the nonadaptive controllers were optimized. At of the quadrotor4 . A Lyapunov-based adaptive law5 , that
t = 5 s they are instantly increased to Jx = 0.04 kg m2 guarantees the asymptotic stability in case of linear systems,
and Jy = 0.03 kg m2 which can be considered a worst case estimates the parameters of a state space controller of the form
scenario of a sudden load change during flight. Plotted are the T
reference values φs and θs , the controlled variables φ and θ, u2 = −k̂ x + v̂φs , (22)
the inertia adaptation as well as the drive speeds ni . For the 4 Only the roll control loop is described further, the pitch loop behaves
excitation signals, square waves of amplitude 5◦ are chosen accordingly.
as reference variables for the roll and pitch control loop. This 5 The derivation can be found in the appendix and is roughly based on [19].

388

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.
T
with feedback gain k̂ , prefilter v̂ and state vector x = (φ, φ̇)T the MRAC equals the dynamics of the nonadaptive controller
with the help of the reference variable φs and state errors and the self-tuning can be considered fulfilled after a short
 = x − xg according to adaptation transient. Furthermore, the adaptation to the inertia
 t parameter step works smoothly and the benefit in opposite
T T
k̂ = bTg P xT dτ + k̂ (0), (23a) to the nonadaptive controller becomes obvious. Disturbing
0 oscillations are completely suppressed.
 t
v̂ = − bTg P φs dτ + v̂(0). (23b)
0 V. C ONCLUSION
The matrix P in (23) is symmetric, positive definite and has
Two adaptive control designs (MIAC and MRAC) have been
to fulfill the matrix Lyapunov equation
applied to a quadrotor unmanned aerial vehicle in order to
P Ag + ATg P = −Q (24) cope with unknown and varying system inertia. Numerical
simulations based on a singularity-free nonlinear model in
for symmetric, positive definite matrices Q which act as a quaternion representation reveal their superiority over the
design parameter that influences the transient of the adaptation fixed-parameter integral state controller designed in this work.
itself6 [19]. The stable linear roll reference model is given in Oscillations in the step response of the attitude stabilization
the same canonical form as (16) in order to fulfill the compat- control loops due to varying inertia are removed effectively
ibility criteria of perfect model-following automatically: by both schemes which is considered especially useful for the
   
0 1 0 increasingly used modular quadrotor platforms with changing
ẋg = Ag x + bg φs = xg + φ (25)
−100 −20 100 s loads.
All eigenvalues are consequently fixed to −10 which equals
eigenvalues of 0.9 of a discrete-time system for T = 0.1 s. A PPENDIX
Thus the goal of the adaptation is to enforce the same closed- The objective of the applied MRAC design method accord-
loop dynamics as the nonadaptive control of Section III in ing to [19] is to choose an input vector u ∈ Rp in a way
order to facilitate the comparison. Fig. 9 shows the self-tuning that all signals in closed-loop remain bounded and that the
as well as the adaptation of the controller to changing system states of the n-dimensional unknown system ẋ = Ax + Bu
inertia in comparison to the nonadaptive version. During with system matrix A ∈ Rn×n and input matrix B ∈ Rn×p
follow the states of a parallel reference model of the form
5
ẋg = Ag xg + B g w with Ag ∈ Rn×n being a stable reference
system matrix, B g ∈ Rn×p the desired input matrix and
w ∈ Rp a bounded reference input vector. If A and B were
φs,φ (°)

0
φs known, a controller of the form u = −K o x + V o w with
φ (adaptive) optimal feedback matrix K o ∈ Rp×n and optimal prefilter
−5 φ (nonadaptive)
matrix V o ∈ Rp×p could be applied, which would result in
0 2 4 6 8 10 12 14 16 18 20 the closed-loop behavior ẋ = (A − BK o )x + BV o w. If
t (s)
one chooses K o and V o in a way that Ag = A − BK o and
5 B g = BV o holds, then the dynamics of the controlled system
would equal that of the reference system. Due to A and B
θs,θ (°)

0 being unknown, the (time-dependent) controller parameters K̂


θs
and V̂ have to be estimated by an appropriate adaptive law.
θ (adaptive)
−5 θ (nonadaptive)
With the state error  = x−xg as well as the parameter errors
ΔK = K̂ − K o and ΔV = V̂ − V o , the error differential
0 2 4 6 8 10 12 14 16 18 20
t (s) equation

Fig. 9. Self-tuning and behavior of MRAC during inertia changes ˙ = Ag  + B g V −1


o (−ΔKx + ΔV w) (26)

the first 10 seconds the inertias have their nominal values can be derived which itself can be considered a nonau-
Jx = Jy = 0.01 kg m2 for which the nonadaptive controllers tonomous system. If one finds a Lyapunov function V , then
were optimized. At t = 10 s they are instantly increased to the stability of the equilibrium  = ΔK = ΔV = 0 is
Jx = 0.04 kg m2 and Jy = 0.03 kg m2 as in the simulation of guaranteed. According to [19], the positive definite function
Section IV-A. Plotted are once again the reference variables
φs and θs and the controlled variables φ and θ. The initial V (, ΔK, ΔV ) = T P  + tr(ΔK T ΓΔK + ΔV T ΓΔV )
controller parameters are kT (0) = 0, i.e. considered com- (27)
pletely unknown, and Q = diag(150, 150). The dynamics of in which P Ag + ATg P = −Q holds for arbitrary positive
definite matrices Q can be considered a Lyapunov candidate.
6 This equation can be computed off-line. Introducing the new quantity Γ−1 = V o sgn(l) with l > 0 if

389

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.
V o positive definite and l < 0 if V o negative definite, the [6] H. Voos, “Nonlinear State-Dependent Riccati Equation Control of a
time derivative of (27) along the trajectories of (26) results in Quadrotor UAV,” in Proc. of the IEEE International Conference on
Control Applications, Munich, Germany, oct 2006.
T [7] T. Madani and A. Benallegue, “Sliding mode observer and backstepping
V̇ = ˙ T P  + T P ˙ + tr(ΔK̇ ΓΔK + ΔK T ΓΔK̇ control for a quadrotor unmanned aerial vehicles,” in Proc. of the
T American Control Conference, New York, USA, jul 2007, pp. 5887–5892.
+ ΔV̇ ΓΔV + ΔV T ΓΔV̇ ) [8] H. Voos, “Entwurf eines Flugreglers für ein vierrotoriges unbemanntes
(28)
= −T Q + 2tr(ΔK T Γ(ΔK̇ − B Tg P xT sgn(l)) Fluggerät (Control Systems Design for a Quadrotor UAV),” Automa-
tisierungstechnik, vol. 57, no. 9, pp. 423–431, 2009.
+ ΔV T Γ(ΔV̇ + B Tg P wT sgn(l))) [9] A. Mokhtari, A. Benallegue, and B. Daachi, “Robust Feedback
Linearization and GH∞ Controller for a Quadrotor Unmanned Aerial
after a longer calculation. Choosing the adaptive law according Vehicle,” Journal of Electrical Engineering, vol. 57, no. 1, pp. 20–27,
to [19] as 2006.
[10] G. Raffo, M. Ortega, and F. Rubio, “An integral predictive/nonlinear
˙ ˙ H∞ control structure for a quadrotor helicopter,” Automatica, vol. 46,
ΔK̇ = K̂ − K̇ o = K̂ = B Tg P xT sgn(l), (29a) no. 1, pp. 29–39, jan 2010.
˙ ˙ [11] S. Bouabdallah, P. Murrieri, and R. Siegwart, “Design and Control of an
ΔV̇ = V̂ − V̇ o = V̂ = −B Tg P wT sgn(l), (29b) Indoor Micro Quadrotor,” in Proc. of the IEEE International Conference
on Robotics and Automation, 2004.
then the trace in (28) vanishes and we get V̇ = −T Q, [12] A. Sanca, P. Alsina, and J. Cerqueira, “Dynamic Modelling of a
which renders V a valid Lyapunov function because of its Quadrotor Aerial Vehicle with Nonlinear Inputs,” in Proc. of the IEEE
Latin American Robotic Symposium, oct 2008, pp. 143 –148.
negative semidefinite derivative. Consequently, the equilibrium [13] G. M. Hoffmann, H. Huang, S. L. Waslander et al., “Quadrotor Heli-
state of the error equation is stable in the sense of Lyapunov, copter Flight Dynamics and Control: Theory and Experiment,” in Proc.
but not necessarily asymptotically stable. However, with the of the AIAA Guidance, Navigation and Control Conference and Exhibit,
Hilton Head, South Carolina, 2007.
help of the Lemma of Barbalat [21], it can be easily verified [14] J. Wendel, Integrierte Navigationssysteme. Sensordatenfusion, GPS und
that lim V̇ = lim (−T (t)Q(t)) = 0 holds. Consequently Inertiale Navigation. Munich: Oldenbourg Wissenschaftsverlag, 2007.
t→∞ t→∞ [15] J. Lunze, Regelungstechnik 2. Mehrgrößenregelung, Digitale Regelungs-
the state errors decline to zero independent of the initial technik, 4th ed. Berlin/Heidelberg/New York: Springer-Verlag, 2006.
parameters and the adaptive control system is said to be [16] J. Ackermann, Abtastregelung, 3rd ed. Berlin/Heidelberg/New York:
globally asymptotically stable. Springer-Verlag, 1988.
[17] R. Isermann, Digitale Regelsysteme. Stochastische Regelungen,
R EFERENCES Mehrgrößenregelungen, Adaptive Regelungen, Anwendungen, 2nd ed.
Berlin/Heidelberg/New York: Springer-Verlag, 1987, vol. 2.
[1] S. Bouabdallah, “Design and control of quadrotors with application to [18] J. Li and Y. Li, “Dynamic Analysis and PID Control for a Quadrotor,”
autonomous flying,” Ph.D. dissertation, École Polytechnique Fédérale de in Proc. of the IEEE International Conference on Mechatronics and
Lausanne, 2007. Automation, Beijing, China, aug 2011.
[2] D. Lee, H. J. Kim, and S. Sastry, “Feedback Linearization vs. Adaptive [19] P. A. Ioannou and J. Sun, Robust Adaptive Control. New Jersey: Prentice-
Sliding Mode Control for a Quadrotor Helicopter,” International Journal Hall, 1996.
of Control, Automation and Systems, vol. 7, no. 3, pp. 419–428, jun 2009. [20] S. Winkler, “Zur Sensordatenfusion für integrierte Navigationssysteme
[3] A. Tayebi and S. McGilvray, “Attitude stabilization of a four-rotor aerial unbemannter Kleinstflugzeuge,” Ph.D. dissertation, Technische Universität
robot,” in Proc. of the IEEE Conference on Decision and Control, Atlantis, Carolo-Wilhelmina zu Braunschweig, 2007.
Paradise Island, Bahamas, dec 2004, pp. 1216–1221. [21] J. E. Slotine and W. Li, “Applied Nonlinear Control”. New Jersey:
[4] A. Tayebi and S. McGilvray, “Attitude Stabilization of a VTOL Quadrotor Prentice-Hall, 1991.
Aircraft,” in IEEE Transactions on Control Systems Technology, vol. 14,
may 2006, pp. 562–571.
[5] S. Bouabdallah and R. Siegwart, “Backstepping and Sliding-mode
Techniques Applied to an Indoor Micro Quadrotor,” in Proc. of the IEEE
International Conference on Robotics and Automation, Barcelona, Spain,
apr 2005, pp. 2247–2252.

390

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY CALICUT. Downloaded on March 16,2025 at 16:37:36 UTC from IEEE Xplore. Restrictions apply.

You might also like