Professional Documents
Culture Documents
HIGH-LEVEL CONTROLLERS
Abstract This paper studies four control allocations strategies with applications to quadrotor unmanned
aerial vehicles (UAVs). Control allocation determines how a desired control effort is distributed among the
available system inputs. When a system has more actuators than task degrees of freedom (DoF), this problem
poses itself naturally, since there are multiple actuators choices capable of generating the same control effort.
On the other hand, if the task DoF equals the number of actuators, unless some sort of saturation occurs, the
mapping between control effort and actuators inputs is unique. This is exactly the case for quadrotor UAVs.
To countermeasure this input saturation, four control allocation strategies are presented. The first is derived
from the well known weighted least squares (WLS) criterion optimization. To obtain a more predictable control
degradation, the direct control allocation (DCA) is introduced. Then, a generalization of the DCA, called partial
control allocation (PCA) is studied. The last studied control allocation strategy is a suboptimal variation of the
PCA (S-PCA). Simulations of the last three methods are conducted and their performance is compared.
Resumo Este artigo estuda quatro estrategias de distribuicao de controle com aplicacoes a veculos aereos
nao-tripulados (VANTs) quadrirrotores. A distribuicao de controle determina como um esforco de controle
desejado e distribudo entre as entradas disponveis de um sistema. Quando um sistema possui mais atuadores
do que graus de liberdade (DoF) da tarefa, este problema surge naturalmente, dado que ha multiplas escolhas
de atuadores que produzem o mesmo esforco de controle. Em contrapartida, se a tarefa possui DoF igual a
quantidade de atuadores, a menos que ocorra saturacao, o mapeamento entre esforcos de controle e acao dos
atuadores e unico. Este e exatamente o caso para quadrirrotores. Para combater esta saturacao de entrada,
quatro estrategias de distribuicao de controle sao apresentadas. A primeira deriva diretamente da otimizacao do
criterio de mnimos quadrados ponderado (WLS). Visando obter uma degradacao mais previsvel do controle, o
metodo de alocacao direta (DCA) e introduzido. Em seguida, uma generalizacao do metodo, denominada PCA e
estudada. A ultima estrategia de distribuicao estudada e uma variacao subotima do PCA (S-PCA). Simulacoes
dos ultimos tres metodos sao conduzidas e o desempenho dos algoritmos e comparado.
u
2 0 lt 0 lt v22
= 2 . (5)
Figure 1: Free body diagram of a quadrotor with u3 lt 0 lt 0 v3
propellers arranged symmetrically around the cen- u4 d d d d v42
ter of mass, main propellers efforts, a body fixed | {z } | {z } | {z }
frame {B}, and an inertial frame {E}. u M v
shown that this solution might not exist, and does Then, the equations of motion are rewritten as
not ensure maximum attainable torque. These
points lead to the partial control allocation (PCA) mp = mgz u1 Rz , (6)
strategy, and the further development of the S- J = u2 x + u3 y + u4 z J . (7)
PCA, a suboptimal variation of the last. Finally,
the last three strategies are evaluated in a rapid Remark. From (5) it is clear that control allo-
ascent flight simulation. cation is not affected by possible changes in the
model, as previously stated.
2 Problem Formulation
2.2 Control Allocation Model
2.1 Rigid Body Dynamics
Note that the components u1 and u2,3,4 represent
Consider a quadrotor with four propellers, as a force along z# # #
b and torques about xb , yb , and
shown in Figure 1. Each propeller generates a #z, respectively. Consequently, u is the vector of
b
torque #i on the body, about its z#
b axis, that control efforts. High-level control strategies are
opposes the propeller rotation. The propellers synthesized from (6) and (7), using u as the con-
#
also generate forces fi on the body, along its z#
b trol input, see (Bouabdallah, 2007; Mellinger and
axis. The rotation from {E} to {B} is denoted by Kumar, 2011; Mellinger et al., 2012). These con-
R SO(3). trollers produce a desired control vector ud .
The position of the quadrotor center of mass, The inverse mapping, that produces the pro-
expressed in an inertial frame, is p R3 . Then, peller velocities from the efforts, is
the quadrotor translational dynamics are
2 lt 1
2
v1 l 0 u1
4 d
v 2 1
X
mp = mgz Rz fi , (1) 2 1 l 2
0 lt d u2
2 = .
v3 4lt l 0 2 lt 1 u3
i=1
d
where m is the vehicle mass, g the gravity mag- v42 l 2 0 lt 1
d
u4
nitude, and z = [0 0 1]T . Expressed in {B}, the | {z }
v
| {z } | {z }
u
M1
body angular velocity w.r.t. {E} is R3 , and (8)
it is governed by the dynamic equation
Although this matrix is invertible, the inverse
l (f4 f2 )
mapping might produce an unreachable velocity
J + J = l (f1 f3 ) , (2)
vector v. This is because actuators are subject to
(2 1 + 4 3 )
bound constraints. Therefore, the control alloca-
where l is the distance from the body center of tion of a quadrotor UAV is formulated as follows:
mass to the propellers, and J R33 the body Find v from (8), subject to
inertia matrix. 2
As discussed in (Bouabdallah, 2007), since the 0 vmin vi2 vmax
2
, i, (9)
propellers direction of rotation does not change, that best meets the desired control vector ud .
the forces and torques generated by the propul- Inequality (9) defines a feasible set W. Nat-
sion groups are written in terms of the propellers urally, if the value obtained when ud is applied
velocities vi squared, such as2 : to (8) lies inside W, the solution is trivial. Fur-
fi = t vi2 , (3) thermore, (5) maps W into a feasible set of control
efforts U. Hence, if ud U the solution is also
i = d vi2 , (4) straightforward.
2 If the propellers are allowed to change the rotation In general, the boundary U of the feasible
direction, the term vi2 is changed to |vi | vi . set U is obtained from W, but it may not be
the image of W (Durham, 1993). This happens
when points on W are mapped into the interior
of U. Nonetheless, since the mapping is a homeo-
morphism, U is a simple image of W, obtained
from (5) (Monteiro et al., 2016).
Altitude [m]
simulated
400
y [m]
reference 0
The previous results are validated in MATLAB 200
0 -2
with an Ascending Technologies Hummingbird 0 2 4 6 0 2 4 6
(b) (d)
model (Mueller and DAndrea, 2014) that includes 2 10
Yaw [deg]
drag and first order motor dynamics with time 0
x [m]
0
constant 0.015 s. From this model the saturation 10
-2 20
levels are computed, yielding 0 2 4 6
(e)
0 2 4 6
20
u1
178 rad/s vi 770 rad/s, i. (21)
Force [N]
10 15.4
14.8
This implies the following propellers thrust force: 0
0 2 4 6
(f)
0.5
0.2 N fi 3.8 N, i. (22)
Torque [N.m]
u2
u3
0 u4
in (Monteiro et al., 2016). The controller con- Figure 6: Simulation results for the PCA.
sists of a PD outer loop that controls the posi- (a) (c)
tion, while the inner loop controls the attitude 600 2
Altitude [m]
simulated
400
of the vehicle through the Backstepping tech-
y [m]
reference 0
200
nique (Bouabdallah, 2007). 0 -2
0 2 4 6 0 2 4 6
(b) (d)
(a) (c) 2 200
Yaw [deg]
2
x [m]
Altitude [m]
500 simulated 0 0
y [m]
reference 0
-2 -200
0 2 4 6 0 2 4 6
0 -2 (e)
0 2 4 6 0 2 4 6
(b) (d) 20
u1
2 200
Force [N]
Yaw [deg]
100 10 15.4
x [m]
0
0 14.8
-2 100 0
0 2 4 6 0 2 4 6 0 2 4 6
(e) (f)
0.5
Torque [N.m]
20 u2
u1
u3
Force [N]
0 u4
10 15.4
-0.5
14.8 0 2 4 6
0
0 2 4 6 Time [s]
(f)
0.5 Figure 7: Simulation results for the S-PCA.
Torque [N.m]
u2
u3
0 u4
To evaluate the methods the quadrotor is re-
-0.5
0 2 4 6 quired to ascend with 2g acceleration, i.e. along
Time [s]
z#e , hold a fixed yaw angle, and describe a circle
Figure 4: Unmanaged rotors saturation. (a) to of radius 1.5m on the xy-plane.
(c) vehicle position; (d) yaw angle; (e) required
thrust force and (f) required torques.
4.1 Discussion
(a) (c)
600 2
Altitude [m]
400
simulated If one considers the whole simulation, the vehicle
y [m]
reference 0
200 stability is guaranteed only when the PCA strat-
0
0 2 4 6
-2
0 2 4 6 egy is used. None of the other algorithms were
(b) (d)
2 200
capable of achieving this performance. Nonethe-
less, both the DCA and S-PCA, which does not
Yaw [deg]
x [m]
0 0
depend directly one M, maintained the stability
-2 -200
0 2 4 6 0 2 4 6 for a limited time. Comparing these two, the DCA
(e)
20
u1
method showed a better overall performance, that
degraded only after 5 s. At this point the vehicle
Force [N]
10 15.4
had already achieved 200 m. Therefore, depend-
14.8
0
0 2 4 6
ing on the duration of the prescribed maneuver,
(f) this could be satisfactory. The case depicted in
0.5
Torque [N.m]
u2
u3
Figure 4 represents the case where no control al-
u4
0
location strategy is used and the propellers satu-
-0.5
0 2 4 6 rates arbitrarily. This is evidently the worst per-
Time [s] formance, and the vehicle was not able to follow
Figure 5: Simulation results for the DCA.
the trajectory at all. not convex. Since we know that U is convex, by
contradiction = min{1 , 2 , 3 }.
5 Conclusion
References
This work studied four control allocation strate-
gies, which regard control bound constraints. Bouabdallah, S. (2007). Design and control of
These strategies were tested via simulations on a quadrotors with application to autonomous
quadrotor UAV model. The first strategy was a flying, PhD thesis, Ecole Polytechnique Fed-
reformulation of the WLS allocation as a QP prob- erale de Lausanne.
lem. The motivation for this was to reduce com- Ducard, G. and Hua, M.-D. (2011). Discussion
putational cost, which favors real-time implemen- and practical aspects on control allocation for
tation on embedded systems. Secondly, a simple a multi-rotor helicopter, Int. Conf. on Un-
solution to the DCA method was deduced. How- manned Aerial Vehicle in Geomatics.
ever simple, we showed that this solution might
not exist. Then, the PCA method and its solution Durham, W. C. (1993). Constrained control al-
were restated. Besides generating higher torques, location, J. of Guidance, Control, and Dyn.
the solution was proved to exist for every desired 16(4): 717725.
control effort. Noticing that the exact knowledge
Harkegard, O. (2002). Efficient active set algo-
of the matrix M elements, required for the PCA
rithms for solving constrained least squares
solution, might be unavailable, we proposed the
problems in aircraft control allocation, IEEE
S-PCA strategy. The solution obtained through
Conf. on Dec. and Contr., Vol. 2, IEEE,
the S-PCA is suboptimal when compared to that
pp. 12951300.
of the PCA, but it does not require this previous
knowledge. Johansen, T. A. and Fossen, T. I. (2013).
All but the QP strategy were evaluated via Control allocation a survey, Automatica
simulation. The case where no explicit control al- 49(5): 10871103.
location strategy is employed, and therefore sat-
Marks, A., Whidborne, J. F. and Yamamoto, I.
uration is not managed, stressed the importance
(2012). Control allocation for fault tolerant
of control allocation. Applying any of the other
control of a VTOL octorotor, UKACC Int.
methods improved the performance significantly.
Conf. on Control, IEEE, pp. 357362.
The unstable response observed using the DCA
strategy might be due to its lower attainable Mellinger, D. and Kumar, V. (2011). Minimum
torque, when compared to the PCA. Therefore, a snap trajectory generation and control for
study on which flight situations result in the un- quadrotors, IEEE Int. Conf. on Robot. and
solvability of the DCA scheme is still necessary. Autom., pp. 25202525.
Mellinger, D., Michael, N. and Kumar, V. (2012).
A Proof of Proposition 2 Trajectory generation and control for precise
aggressive maneuvers with quadrotors, Int.
Definition 1 Let S Rn be a compact connected J. of Robot. Research 31(5).
set. Then a hole Hi of S is any bounded connected
subset of the complement of S. Monteiro, J. C., Lizarralde, F. and Hsu, L.
(2016). Optimal control allocation of quadro-
Definition 2 The set that fills the holes of S is tor UAVs subject to actuator constraints,
fill(S) = S H1 . . . Hk . American Contr. Conf., IEEE.
Mueller, M. W. and DAndrea, R. (2014). Sta-
The proof follows defining a line ud , with > 0
bility and control of a quadrocopter despite
and an arbitrary direction ud . From the above
the complete loss of one, two, or three pro-
definition, it is clear that this line intersects U
pellers, IEEE Int. Conf. on Robot. and Au-
ud iff fill(U) {0}. If this line intersects U,
tom., pp. 4552.
then > 0 such that ud U.
Petersen, J. A. and Bodson, M. (2006). Con-
B Proof of Proposition 3 strained quadratic programming techniques
for control allocation, IEEE Trans. on Con-
Consider the infinite planes Pi , i = 1, . . . , 12, trol Syst. Tech. 14(1): 9198.
that contain the faces of U . The values 1 to
Yoon, H.-J., Cichella, V. and Hovakimyan,
3 project u on three of these planes, without
N. (2016). Robust adaptive control al-
changing its direction. By contradiction, suppose
location for an octocopter under actuator
that 6= min{1 , 2 , 3 } solves the PCA prob-
faults, AIAA Guidance, Navigation., Con-
lem. This is iff u intersects a plane Pk in the
trol, Conf., p. 0635.
interior of U Pk U 6 U U is