The paper presents an adaptive trajectory tracking control strategy for quadrotor Micro Aerial Vehicles. The proposed approach, while keeping the typical assumption of an orientation dynamics faster than the translational one, removes that of absence of external disturbances and of perfect symmetry of the vehicle. In particular, the trajectory tracking control law is made adaptive with respect to the presence of external forces and moments, and to the uncertainty of dynamic parameters as the position of the center of mass of the vehicle. A stability analysis as well as numerical simulations are provided to support the control design.
Injustice - Developers Among Us (SciFiDevCon 2024)
AIM 2013 talk
1. Adaptive trajectory tracking for quadrotor
MAVs in presence of parameter uncertainties
and external disturbances
Gianluca Antonelli†, Filippo Arrichiello†,
Stefano Chiaverini†, Paolo Robuffo Giordano⊕,
in alphabetical order
†University of Cassino and Southern Lazio, Italy
http://webuser.unicas.it/lai/robotica
⊕CNRS at IRISA, France
http://www.irisa.fr/lagadic
kindly presented by prof. Bruno Siciliano
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
2. Trajectory tracking control for quadrotor
Adaptive with respect to
uncertainties in total mass
uncertainties in Center Of Gravity (COG)
presence of 6-DOF external disturbances
Assumption: closed-loop orientation dynamics faster than
translational one
Stability analysis
Numerical simulations
Experimental results (not in the paper)
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
4. Dynamics
Mathematical model expressed in body-fixed frame
MRB ˙ν + CRB(ν)ν + τv,W + gRB(RB
I ) = τv,
beyond the common terms, we model
τv,W = Φv,W (RI
B)γv,W =
RB
I O3×3
O3×3 RB
I
γv,W
whit γv,W ∈ R6 external disturbance constant in the inertial
frame, e.g., wind
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
5. Dynamics -2-
Exploiting the linearity in the parameters
Φv( ˙ν, ν, RB
I )γv = τv
and rewriting with respect to the inertial frame while separating the xy
dynamics from z:
Φxy(η, ˙η, ¨η)
φz(η, ˙η, ¨η)
γv = τv
with γv ∈ R16:
mass (1 parameter)
first moment of inertia (3 p.)
inertia tensor (6 p.)
external disturbance (6 p.)
with:
τv =
τ1
τ2
=
0
0
Z
K
M
N
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
7. Mapping from the angular velocities to the force-torques
Z
K
M
N
= Bv
ω2
t,1
ω2
t,2
ω2
t,3
ω2
t,4
with
Bv =
b b b b
0 b(l + rC,y) 0 −b(l − rC,y)
b(l + rC,x) 0 −b(l − rC,x) 0
−d d −d d
rC,x, rC,y being the COG coordinates
COG influences the mapping from thrust generated from the
motors to the vehicle forces/moments
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
8. Inverse mapping
Any controller determines a control action Zc Kc Mc Nc
T
further
projected onto the motor input u ∈ R4
u = B−1
v
Zc
Kc
Mc
Nc
where B−1
v ∈ R4×4 is
B−1
v =
l − rC,x
4bl
0
1
2bl
−
l − rC,x
4dl
l − rC,y
4bl
1
2bl
0
l − rC,y
4dl
l + rC,x
4bl
0 −
1
2bl
−
l + rC,x
4dl
l + rC,y
4bl
−
1
2bl
0
l + rC,y
4dl
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
9. Current inverse mapping
When the COG position estimate ˆrC is affected by an error, the real
mapping becomes
Z
K
M
N
= Bv|rC
B−1
v ˆrC
Zc
Kc
Mc
Nc
=
1 0 0 0
˜rC,y
2
1 0
b˜rC,y
2d
˜rC,x
2
0 1 −
b˜rC,x
2d
0 0 0 1
Zc
Kc
Mc
Nc
wrong COG estimate ⇒ a coupling from altitude and yaw control
actions onto roll and pitch dynamics
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
10. Controller block diagram
η1d
ψd
φd, θd
Zc
pos
or
Kc
Mc
Nc
B−1
v
u
motors
w2
t,i
Bv
Z
K
M
N
τv,W
η
plant
Classical MAV control architecture with adaptation wrt parameters
and compensation of the COG position
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
11. Altitude controller
error
˜z = zd − z ∈ R
sz = ˙˜z + λz ˜z ∈ R
full version
Z =
1
cos φ cos θ
(φz ˆγv + kpzsz)
˙ˆγv = K−1
γ,zφT
z sz
with ˆγv ∈ R16
reduced version
Z =
1
cos φ cos θ
(ˆγz + kpzsz)
˙ˆγz = k−1
γ,zsz
with ˆγz ∈ R1
the reduced version designed to compensate only for persistent
terms ⇒ null steady state error wrt a minimal set of parameters!
(λz > 0, kpz > 0, Kγ,z > O, kγ,z > 0)
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
12. Horizontal controller
error
˜ηxy = xd − x yd − y
T
∈ R2
sxy = ˙˜ηxy + λxy ˜ηxy ∈ R2
full version
virtual input solutions of:
cφsθ
−sφ
=
1
Z
Rz (Φxy ˆγv + kp,xysxy) ,
˙ˆγv = K−1
γ,xyΦT
xysxy.
with ˆγv ∈ R16
reduced version
virtual input solutions of:
cφsθ
−sφ
=
1
Z
Rz ˆγxy + kp,xysxy
˙ˆγxy = k−1
γ,xysxy
with ˆγxy ∈ R2
again: the reduced version compensates only for persistent terms
⇒ null steady state error wrt a minimal set of parameters!
(λxy > 0, kp,xy > 0, Kγ,xy > O, kγ,xy > 0)
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
13. Orientation controller
The inputs are the desired roll, pitch and yaw
The commanded forces map onto the real ones according to
K = Kc +
˜rC,y
2
Zc +
b˜rC,y
2d
Nc
M = Mc +
˜rC,x
2
Zc −
b˜rC,x
2d
Nc
N = Nc
Neither the altitude nor the yaw control loop are affected by ˜rC, thus both Zc
and Nc convergence to a steady state value
Roll and pitch control can be designed by considering the estimation error as
an external, constant, disturbance:
K = Kc +
1
2
Zc +
b
d
Nc ˜rC,y
M = Mc +
1
2
Zc −
b
d
Nc ˜rC,x
The disturbance value is unknown and its effect may be compensated by
resorting to several adaptive control laws well known in the literature
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
14. COG estimation
PD control for roll and pitch =⇒ steady-state error because of the
wrong COG estimate
A simple integral action can counteract this effect resulting a zero
steady-state error
˙ˆrC,x
˙ˆrC,y
= −krC
θd − θ
φd − φ
, krC
> 0
As a byproduct, in absence of moment disturbance, the estimates
(ˆrC,x, ˆrC,y) are driven towards the real COG offsets (rC,x, rC,y)
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
15. Stability analysis
Altitude controller: let ˜γv = γv − ˆγv and consider the Lyapunov
function
V (sz, ˜γv) =
m
2
s2
z +
1
2
˜γT
v Kγ,z ˜γv
Along the system trajectories
˙V (sz, ˜γv) = sz m¨zd − m¨z + mλz
˙˜z − ˜γT
v Kγ,z
˙ˆγv
= sz (φzγv − cos φ cos θZ) − ˜γT
v Kγ,z
˙ˆγv = −kp,zs2
z ≤ 0
State trajectories are bounded
Asymptotic stability can be further proven by resorting to Barbalat’s
Lemma as in classical adaptive control schemes
Similar machinery for the horizontal controller case
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
16. Simulation results
Constant disturbance
γv,W =
0.5
0.6
0
0
0
0
[N, Nm]
displacement of 1 m in the 3
directions x, y and z
20 deg in yaw
0 2 4 6 8 10 12 14 16 18
0
0.5
1
1.5
0 2 4 6 8 10 12 14 16 18
0
5
10
15
20
norm of the 3D position error
[m]
norm of the yaw error
[deg]
time [s]
time [s]
proposed control law (blue-solid line) and
its non adaptive version (red-dashed line)
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
17. Simulation results
0 2 4 6 8 10 12 14 16 18 20
−10
−5
0
5
10
0 2 4 6 8 10 12 14 16 18 20
−10
−5
0
5
10
rollpitch[deg]rollpitch[deg]
time [s]
time [s]
Roll and pitch angle; on the top the desired (gray) and real (blue)
values for the adaptive version while on the bottom the desired (gray
dashed) and real (red dashed) values for the non adaptive simulation
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
18. Simulation results
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
13
14
15
16
17
18
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
−0.2
−0.1
0
0.1
0.2
time [s]
time [s]
Z[N]τ2[Nm]
Force along zb (top) and moments (bottom) by applying the proposed
control law (blue-solid line) and its non adaptive version (red-dashed
line)
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
20. Experimental results
additional
weight
Experiments on a mikrokopter with an unknown weight attached
Theory and numerical simulations confirmed
Results on a forthcoming publication
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013
21. Adaptive trajectory tracking for quadrotor
MAVs in presence of parameter uncertainties
and external disturbances
Gianluca Antonelli†, Filippo Arrichiello†,
Stefano Chiaverini†, Paolo Robuffo Giordano⊕,
in alphabetical order
†University of Cassino and Southern Lazio, Italy
http://webuser.unicas.it/lai/robotica
⊕CNRS at IRISA, France
http://www.irisa.fr/lagadic
kindly presented by prof. Bruno Siciliano
Antonelli Arrichiello Chiaverini Robuffo-Giordano Wollongong, 12 July 2013