Content uploaded by Yao Su
Author content
All content in this area was uploaded by Yao Su on Aug 07, 2021
Content may be subject to copyright.
IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JULY, 2021 1
Nullspace-Based Control Allocation of Overactuated
UAV Platforms
Yao Su†, Pengkang Yu†, Matthew J. Gerber, Lecheng Ruan, and Tsu-Chin Tsao
Abstract—Multirotor copters with full six Degree of Freedom
(DoF) maneuvering are often overactuated. The control allocation
of overactuated UAV platforms can have an infinite number of
solutions due to their redundancy. The most common allocation
framework is based on Force Decomposition (FD), which provides
a robust least-square solution and is easy to implement, but it does
not account for input constraints. A control allocation framework
based on Quadratic Programming (QP) can take input con-
straints; however, it will introduce linear approximation error and
it has not been formulated and implemented on physical systems.
In this paper, we propose a nullspace-based allocation framework
for overactuated UAV platforms that combines the advantages
of the FD-based framework and QP-based framework. Our
proposed nullspace-based framework can take input constraints
while eliminating the linear approximation error in the control
allocation. It is also robust against controller sampling frequency
and measurement noise. These three allocation frameworks are
implemented and compared on our novel overactuated UAV
platform in simulation to evaluate the robustness of the proposed
method and in experiment for a vertical rotation trajectory to
demonstrate its performance.
Index Terms—Control allocation, overactuated UAV, nullspace,
optimization, approximation error, projection
I. INTRODUCTION
OVERACTUATED multirotor unmanned aerial vehicles
(UAVs) have recently gained interest in research labs
due to their advantages in overcoming the coupled position and
attitude control problem in collinear multirotor UAVs [1]. As a
result, they are suitable for more challenging applications that
traditional multirotors are incapable of, such as exploration in
constrained spaces and non-level takeoff or landing. The redun-
dant actuation improves fault tolerance and energy efficiency as
well [2]. However, the overactuation also introduces additional
challenges on how to effectively allocate desired force and
torque commands in the presence of an infinite number of
possible solutions. This challenge is known as the control-
allocation problem in overactuated UAVs, which is the key to
take full advantage of the redundancy of these systems.
Many studies have been conducted in the past two decades
to address this control-allocation problem and several strate-
gies have been proposed. Ryll et al. implemented a control
algorithm on a tilt-rotor quadcopter platform and proposed an
optimized allocation strategy that considered input redundancy
†Equal contribution.
Manuscript received: February 24, 2021; Revised: June 9, 2021; Accepted:
July 26, 2021. This paper was recommended for publication by Editor Pauline
Pounds upon evaluation of the Associate Editor and Reviewers’ comments.
Y. Su, P. Yu, M.J. Gerber, L. Ruan, and T. Tsao are with Mechanical and
Aerospace Engineering Department, University of California, Los Angeles.
e-mails: {yaosu, paulyu1994, gerber211, ruanlecheng, ttsao}@ucla.edu.
Digital Object Identifier (DOI): see top of this page.
[3]. However, this allocation framework relies on taking the
derivative of the dynamics, which requires accurate accelera-
tion measurements or estimation. Another solution provided
by Kamel et al. used Force Decomposition (FD) to trans-
form the nonlinear allocation problem into a linear one [4],
which is solvable by the least-square method. Although this
approach is implemented on a physical platform and is proven
to be effective, it cannot take any arbitrary input constraint
into consideration (e.g. input saturation), and could lead to
instability when tracking challenging trajectories that trigger
the constraints [5].
Quadratic Programming (QP)-based framework introduced
in [6] can handle both inequality and equality constraints by
formulating the allocation problem as a QP problem. It relies
on the first-order Taylor series expansion to transform a nonlin-
ear equality constraint to an approximate linear equality con-
straint. However, this approximation continuously introduces
additional error into the system, crippling its applicability to
physical platforms. Similarly, some other advanced strategies,
such as unconstrained least-squares [7], nonlinear optimization
[8], nullspace-based input reconfiguration [9], and SVD-based
frameworks [10], are demonstrated only in simulations with
relatively simple dynamics models, despite their theoretical
formulations and merits.
The existing literature indicates a gap between (1) the classic
FD-based framework that works well in physical platforms but
cannot account for system constraints and (2) the QP-based
framework that handles input constraints but has not been
successfully formulated and implemented for real hardware. To
fill this gap, we first review and analyze both the FD- and QP-
based frameworks and investigate their shortcomings. Then,
we propose a nullspace-based control allocation framework for
overactuated UAVs, which uses the constrained QP to solve
for a high-quality initial guess of the desired control input,
and then projects that initial guess onto the nullspace of the
allocation matrix to find the real control input.
In this paper, we will implement all three frameworks on
our overactuated multirotor UAV platform to comprehensively
evaluate their robustness in simulation and verify their perfor-
mance in experiment. This platform (Fig. 1) has a similar high-
level dynamics compared to the twist-and-tilt rotor quadcopter
platforms presented in [11] and [12]. We compare the perfor-
mance of the three frameworks under kinematic-singularity in
tracking a vertical rotation trajectory.
Because the proposed nullspace-based framework can in-
clude both inequality and equality constraints, it can han-
dle kinematic-singularity condition well comparing with the
traditional FD-based framework. Meanwhile, the nullspace
projection eliminates the error introduced by the nonlinear
2 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JULY, 2021
constraint approximation and finds an exact solution, which
is more robust against measurement noise and controller sam-
pling frequency than the QP-based framework. Our method
is capable of combining the advantages of these two existing
frameworks while avoiding the known issues, exhibiting more
robust and superior performance.
The remainder of the paper is organized as follows. The
dynamic model of our overactuated UAV platform with passive
gimbal mechanism and the related hierarchical control struc-
ture is described in Section II. Section III reviews two existing
FD- and QP-based control allocation frameworks and presents
the proposed nullspace-based framework for control allocation.
Section IV shows the simulation studies for investigating the
effect of parameters inside the nullspace-based framework and
comparing the robustness of three control allocation frame-
works. Section V presents the simulation and experimental
results of three control allocation frameworks implemented
on our overactuated UAV platform to track a vertical rotation
trajectory. The conclusion is addressed in Section VI.
II. DYNAMICS MODE L AN D CON TROL STRUCTURE
A. Dynamics Overview
The overactuated UAV platform to evaluate three allocation
frameworks (Fig. 1) consists of four traditional mini quad-
copters attached to the central frame via passive gimbal joints
with two DoF that are perpendicular to each other, and the
joint angles are independently controlled by torques of each
quadcopter [13]. The passive joints have unlimited ranges of
angulation, so the thrust vector generated by the quadcopter
can be pointed at any direction. Under the control framework,
each quadcopter provides thrust force with variable magnitude
and direction defined by the two-DoF gimbal, resulting in a
system with 12 DoF in total. The corresponding coordinate
frames are shown in Fig. 1.
The dynamic model of this platform can be simplified
as a rigid body subjected to four thrusts generated by the
quadcopters
¨
ξ
ξ
ξ
˙
ν
ν
ν=1
m
WR
R
RB0
0
0
0
0
0I
I
I−1J
J
Jξ
J
J
JνT
T
T+G
G
G
0
0
0,(1)
where ¨
ξ
ξ
ξand ˙
ν
ν
νare the linear and angular acceleration of the
central frame respectively, mand I
I
Iare the total mass and
inertia matrix of the platform, G
G
Gis gravitational acceleration
in FW,WR
R
RBis the rotation matrix from FBto FW. And
J
J
Jξ="sβ1sα2cβ2−sβ3−sα4cβ4
−sα1cβ1sβ2sα3cβ3−sβ4
cα1cβ1cα2cβ2cα3cβ3cα4cβ4#(2)
J
J
Jν=l"0cα2cβ20−cα4cβ4
−cα1cβ10cα3cβ30
−sα1cβ1−sα2cβ2−sα3cβ3−sα4cβ4#(3)
T
T
T= [T1T2T3T4]T(4)
where s [·]and c [·]are simplified notation for sin [·]and cos [·],
lis the distance from each quadcopter geometric center to
the geometric center of central frame, αiand βiare the joint
angles of gimbal i, and Tiis the magnitude of the thrust force
generated by quadcopter i.
Fig. 1: Prototype and coordination system of the overactuated UAV
platform. Each of the four traditional quadcopters is mounted on a
two-DOF passive gimbal with equal distance to the center of main
frame to generate three-dimensional thrust force.
B. Hierarchical Control Architecture
The developed controller has a hierarchical structure with
three parts [3]. The high-level controller is based on the rigid-
body dynamics model and provides the desired force and
torque inputs for the overall platform. A control allocation
is designed to map the overall force and torque inputs to the
desired joint angles and thrusts for individual quadcopters with
gimbals. A low-level controller is designed for each quadcopter
to track the desired inputs with fast response. The control
diagram is shown in Fig. 2.
C. Position and Attitude Control
Feedback linearization is implemented to obtain the desired
control input u
u
udas
u
u
ud=mWR
R
RT
B0
0
0
0
0
0I
I
Iu
u
uξ
u
u
uν−G
G
G
0
0
0=J
J
Jξ
J
J
JνT
T
T=B
B
B(α
α
α, β
β
β)T
T
T(5)
where α
α
α= [α1· · · α4]Tand β
β
β= [β1· · · β4]T.
With the feedback linearization controller Eq. (5) and the
platform dynamics Eq. (1), the system becomes
¨
ξ
ξ
ξ
˙
ν
ν
ν=u
u
uξ
u
u
uν(6)
where u
u
uξand u
u
uνare virtual inputs for position and attitude
control. These two virtual inputs can be designed by a con-
ventional LQR controller [13] or second-order PID tracking
controller [14].
III. CON TRO L ALL OC ATIO N MET HO DS
This section starts with outlining two commonly used al-
location methods based on FD and QP respectively. Their
advantages and disadvantages are discussed. This motivates
us to propose a novel nullspace-based allocation framework
that combines the merits of the two existing methods. The
computing logic of these three allocation frameworks are
shown in Fig. 3.
A. Nominal Allocation by Force Decomposition
The control-allocation problem is to solve the desired joint
angles α
α
α,β
β
βand thrust forces T
T
Tfrom Eq. (5) given the control
u
u
ud, which is a nonlinear mapping. One intuitive solution can
SU et al.: NULLSPACE-BASED CONTROL ALLOCATION OF OVERACTUATED UAV PLATFORMS 3
Fig. 2: Hierarchical control structure for the overactuated UAV platform. The high-level position and attitude tracking controller gives u
u
uξ
and u
u
uνto the allocation. The whole-body input is then allocated as the desired thrusts and joint angles for each quadcopter. Each quadcopter
regulates its joint angles and thrust with an onboard low-level controller.
be found in [4], which uses FD to transform this nonlinear
mapping to a linear mapping problem. The thrust vector of
each quadcopter on the two-DOF gimbal can be expressed as
F
F
Fi="Fix
Fiy
Fiz #=Ti"sβi
−sαicβi
cαicβi#,(7)
and we define the combined thrust vector as
F
F
F=F
F
FT
1F
F
FT
2F
F
FT
3F
F
FT
4T(8)
Then Eq. (5) can be transformed into,
u
u
ud=B
B
B(α
α
α, β
β
β)T
T
T=W F
W F
W F (9)
where
W
W
W=
1 0 0 . . . 0 1 0
0 1 0 . . . −1 0 0
0 0 1 . . . 0 0 1
0 0 0 . . . 0 0 −l
0 0 −l . . . 0 0 0
0l0. . . 0l0
(10)
W
W
W∈R6×12 is a constant allocation matrix and it is in full
row rank because the UAV platform is overactuated. Therefore,
Moore–Penrose pseudoinverse W
W
W†can be applied such that
W
W
WW
W
W†=I
I
I6.
Then F
F
Fcan be calculated with the general form
F
F
F=W
W
W†u
u
ud+N
N
NWZ
Z
Z(11)
where N
N
NW∈R12×6is the nullspace of W
W
Wand Z
Z
Z∈R6×1is
an arbitrary vector. The least-squares solution is obtained by
setting Z
Z
Z= 0 to minimize the control effort. The inputs of
each individual quadcopter can be uniquely determined by
Ti=qF2
ix +F2
iy +F2
iz
αi=atan2(−Fiy, Fiz )
βi=asin(Fix
Ti
)
(12)
where atan2 (·,·)is the quadrant-corrected arc-tangent function
with two inputs. Therefore, this framework can provide a
feasible solution (T
T
T , α
α
α, β
β
β)to the control allocation problem
Eq. (5) defined by Eqs. (11) and (12).
This FD-based allocation framework can be implemented
with high controller sampling frequency because of its sim-
plicity. It provides a least-square solution which minimizes the
control effort, and it is robust towards sampling frequency and
measurement noise. However, constraints such as thrust-force
saturation and maximum angular velocity of the tilting angle
cannot be implemented with this framework. When the plat-
form is tracking some challenging trajectory, this framework
could generate a desired thrust force greater than the motor
saturation value, leading to instability [15].
In addition, the FD-based framework cannot handle the
kinematic-singularity problem [16]. From Eqs. (7) and (12),
when βi=±π
2,Fiy and Fiz are zero, and αican be any
angle. Therefore, βi=±π
2is defined as the kinematic singular
configuration for the gimbal. Near this singular configuration,
αiwill rapidly change with small perturbations on Fiy and Fiz ,
making the gimbal ill-conditioned. The singularity problem can
be resolved by limiting the maximum ˙αiin control allocation.
The QP-based allocation framework is motivated by addressing
the control saturation constraints and gimbal singularity issues
and is introduced next.
B. Quadratic Programming-Based Allocation Framework
The QP-based allocation framework for general control
allocation problem has been proposed to impose linear equality
and inequality constraints [6]. To avoid kinematic singularity
by directly having constraints on T
T
T,α
α
α,β
β
βand their derivatives,
this framework uses first-order Taylor expansion to approx-
imate the nonlinear equality constraint by a linear equality
constraint. The nonlinear input mapping for the UAV platform
in Eq. (5) is linearly approximated as follows:
s
s
s+B
B
B(α
α
αo, β
β
βo)∆T
T
T+∂
∂α
α
α(B
B
B(α
α
α, β
β
β)T
T
T)α
α
α=α
α
αo
β
β
β=β
β
βo
T
T
T=T
T
To
∆α
α
α
+∂
∂β
β
β(B
B
B(α
α
α, β
β
β)T
T
T)α
α
α=α
α
αo
β
β
β=β
β
βo
T
T
T=T
T
To
∆β
β
β=u
u
ud−B
B
B(α
α
αo, β
β
βo)T
T
To
(13)
where T
T
To,α
α
αo,β
β
βoare values of T
T
T,α
α
α,β
β
βat the previous time
step, ∆[·]is the difference with respect to the previous time
step of a variable, and s
s
sis a slack variable.
Then a QP problem can be formulated to solve for the
optimal solution at each time step under the objective function
J
J
J(∆X
X
X, s
s
s) = ∆X
X
XTP
P
P∆X
X
X+s
s
sTR
R
Rs
s
s(14)
with X
X
Xdefined as
X
X
X=T
T
TTα
α
αTβ
β
βTT(15)
where P
P
P,R
R
Rare constant gain matrices.
4 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JULY, 2021
Fig. 3: Computing logic of three allocation frameworks. FD-based framework (dashed blue arrows) converts the nonlinear allocation problem
to a linear mapping, and acquires a least-square solution by setting Z
Z
Z= 0 in the general solution. QP-based framework (dotted orange
arrows) transforms the allocation problem to a constrained QP with Taylor expansion, but it only generates an approximate solution. The
nullspace-based framework (solid green arrows) formulates the constrained QP problem with extra constraints, and projects the approximate
solution onto the nullspace of the allocation matrix to obtain an exact solution.
The QP-based framework can also include inequality con-
straints to limit the value of a variable or its rate of change as
X
X
Xmin −X
X
Xo≤∆X
X
X≤X
X
Xmax −X
X
Xo(16)
∆X
X
Xmin ≤∆X
X
X≤∆X
X
Xmax (17)
with Eqs. (13) to (17), the optimal ∆X
X
Xcan be solved and the
desired inputs for the current time step can be determined by
X
X
X=X
X
Xo+ ∆X
X
X(18)
The first-order linear approximation in every time step
will continuously introduce disturbances to the system by
the approximation error, which violates the nonlinear equality
constraint in Eq. (5). In addition, this framework is not robust
against controller sampling frequency and measurement noise,
as will be shown in Section IV-C, making its effectiveness on
hardware implementation uncertain.
C. Nullspace-Based Allocation Framework
To overcome the limitations of QP-based control allocation
frameworks discussed above while preserving its advantages,
we propose a novel nullspace-based allocation framework,
which eliminates the approximation error in two steps. In the
first step, the QP problem (Eqs. (13) to (17)), is modified
and solved, where the equality constraint Eq. (13) is replaced
and additional term on the objective function is introduced
(step1). Then, the solution from step1 with the approximate
linear equality constraints is projected onto the nullspace of
the allocation space to eliminate the linear approximation error
and satisfy the nonlinear equality constraints (step2).
Instead of using Eq. (13), the general solution of the nominal
allocation strategy Eq. (11) can be approximated as a linear-
equality constraint,
s
s
s+F
F
F(T
T
To, α
α
αo, β
β
βo) + ∂F
F
F
∂α
α
αα
α
α=α
α
αo
β
β
β=β
β
βo
T
T
T=T
T
To
∆α
α
α+∂F
F
F
∂β
β
βα
α
α=α
α
αo
β
β
β=β
β
βo
T
T
T=T
T
To
∆β
β
β
+∂F
F
F
∂T
T
Tα
α
α=α
α
αo
β
β
β=β
β
βo
T
T
T=T
T
To
∆T
T
T=W
W
W†u
u
ud+N
N
NWZ
Z
Z
(19)
where Z
Z
Zis treated as an unknown variable to solve in this
modified QP problem. The objective function Eq. (14) is
replaced by,
J
J
J(∆X
X
X, s
s
s, Z
Z
Z) = ∆X
X
XTP
P
P∆X
X
X+s
s
sTR
R
Rs
s
s+Z
Z
ZTQ
Q
QZ
Z
Z(20)
This new QP problem still provides an approximate solution
for X
X
Xby Eq. (18), but its solution can be approximately
rewritten into the general solution form Eq. (11). If a solution
F
F
F(T
T
T , α
α
α, β
β
β)can be described by Eq. (11) with no error, it
is an exact solution. Therefore, using this equality constraint
Eq. (19) to replace Eq. (13) inside QP formulation can decrease
the error caused by linearization.
Then Z
Z
Z∗, which is the vector related to the nullspace of the
allocation matrix W
W
W, can be solved with
Z
Z
Z∗=N
N
N†
W(F
F
F(T
T
T , α
α
α, β
β
β)−W
W
W†u
u
ud)(21)
By substituting this into Eq. (11), the exact solution of the
desired force vector F
F
F∗can be found
F
F
F∗=W
W
W†u
u
ud+N
N
NWZ
Z
Z∗(22)
Then (T
T
T∗, α
α
α∗, β
β
β∗)can be solved from Eq. (12).
The modified QP problem imposes an increment of the
variables in both the objective function and equality constraint.
Introducing Z
Z
Z, a measure of distance between the approximate
solution F
F
F(T
T
T , α
α
α, β
β
β)and the least-square solution W
W
W†u
u
ud, in the
objective function allows weighting penalty on the distance.
In step2, the projection process (Eqs. (21) and (22)) brings
the approximate solution with linear equality constraint to
exact solution with nonlinear equality constraint. Thus we
have eliminated the approximation error that occurs in every
time step and acts as persistent disturbances to the control
system. This implies that the control system performance may
be improved.
On the other hand, there is no guarantee that the inequality
constraints (Eqs. (16) and (17)) are still satisfied by the
projected solution (T
T
T∗, α
α
α∗, β
β
β∗). The possible violations of the
linear inequality constraints, if persistent over a time duration,
may cause instability. Therefore, strategies to minimize the
possibility of such occurrence are called for. We suggest the
followings, and their effects will be presented in Section IV-B.
a) Put the constraints of ∆α
α
αon Eqs. (16) and (17) to avoid
the singularity. Increasing the weights on the terms related to
∆α
α
αin P
P
Pmatrix of the objective function Eq. (20), also sets a
higher priority to keep the solution away from the singularity
boundary.
b) Adjust the weights on Q
Q
Qin objective function Eq. (20)
so that Z
Z
Zis relatively small and Z
Z
Z≈Z
Z
Z∗. When Z
Z
Z∗is small,
F
F
Fis close to F
F
F∗. Therefore, when using Eq. (12) to solve
(T
T
T∗, α
α
α∗, β
β
β∗)from F
F
F∗, the constraints will be unlikely violated.
c) Set safety margins on the inequality constraints. Even if
these inequality constraints are violated after the projection,
the result can still be used as long as it is within the safety
margin.
SU et al.: NULLSPACE-BASED CONTROL ALLOCATION OF OVERACTUATED UAV PLATFORMS 5
IV. SIMULATION STUDY
A. Simulation Setup
A simulator of our UAV platform is built in Matlab Simulink
environment with Simscape module. The Simscape module
calculates the multi-body dynamics of the platform and con-
tains all physical properties, including gyroscopic effects and
others that are neglected in the dynamics model used for
controller design. Other system properties are also modeled,
including controller sampling frequencies, communication de-
lays, measurement noise, the dynamics of propeller motors,
and thrust-force saturation.
B. Parameter Study for Nullspace-based Framework
A parameter study based on the Monte Carlo method is
conducted to investigate the effect of ∆α
α
αmax and Q
Q
Qin the pro-
posed nullspace-based allocation framework when the platform
is near singularity. The study (Fig. 4) includes three different
cases of the nullspace-based allocation framework with differ-
ent ∆α
α
αmax and Q
Q
Qalong with the nominal FD-based allocation
as a reference. For each test, the joint angle α1(which is in sin-
gular configuration) is calculated from sampled u
u
udand X
X
Xo.u
u
ud
is sampled as u
u
ud= [0,0,−mg, 0,0,0]T+δu, where δu∈R6×1
is a random vector with zero mean and standard variance
0.01.X
X
Xois sampled as X
X
Xo= [T
T
TT
o, α
α
αT
o, β
β
βT
o]T, where T
T
To=
[1
4mg, 1
4mg, 1
4mg, 1
4mg]T+δT,α
α
αo= [0,π
2,0,−π
2]T+δα,
β
β
βo= [π
2,0,−π
2,0]T+δβ. Computation is performed on 5000
points sampled from the random vectors δT, δα, δβ∈R4×1
with zero mean and standard variance of 0.001,0.01,0.01,
respectively.
10.56
21.86
67.58
<=0.1 0.1~0.3 >0.3
0
20
40
60
80
Percentage/%
(a) Nominal Allocation
12.82
83.20
3.98
<=0.1 0.1~0.3 >0.3
0
20
40
60
80
100
Percentage/%
(b) Nullspace-Based Allocation (∆αmax = 0.3,Q
Q
Q= 1e4×I6)
94.94
4.14 0.92
<=0.1 0.1~0.3 >0.3
0
20
40
60
80
100
Percentage/%
(c) Nullspace-Based Allocation (∆αmax = 0.1,Q
Q
Q=I6)
99.88
0.10 0.02
<=0.1 0.1~0.3 >0.3
0
20
40
60
80
100
Percentage/%
(d) Nullspace-Based Allocation (∆αmax = 0.1,Q
Q
Q= 1e4×I6)
Fig. 4: Parameter study for nullspace-based allocation framework
based on Monte Carlo method. (∆αmax = 0.3rad is the safety margin
on real hardware. Data points outside the margin are plotted in blue,
those violating QP constraints but inside the safety margin are plotted
in green, and those satisfying QP constraints are plotted in red.)
As shown in Fig. 4a, α1can change rapidly with the FD-
based allocation framework when the platform is near singu-
larity. For the nullspace-based allocation framework (Figs. 4b
to 4d), the distribution range of α1can be squeezed by con-
straining ∆α
α
αand adjusting weights in the Q
Q
Qmatrix, demon-
strating the effectiveness of the suggestions in Section III-C.
Although there are six points violating the QP constraints
in Fig. 4d, five of them are still inside the safety margin.
There is only one single point that violates the safety margin
(0.02% probability), and its magnitude is small (0.39 rad)
compared with the FD-based framework. Therefore, although
the nullspace-based framework does not guarantee that ∆α
α
α
is always within the designated boundary, this framework
effectively prevents the singularity effects of the platform and
improves the control performance.
C. Robustness Study to Compare Three Frameworks
The performance of the three allocation frameworks are
compared under different controller sampling frequencies and
measurement noise levels (Fig. 5). The platform is controlled
to repeatedly track the same reference trajectory with the
sampling frequency varying from 40–100 Hz (Fig. 5a) or with
the noise power (the height of power spectral density (PSD)
of the white noise) of position and attitude measurements
increased from 5e−9to 28×5e−9(Fig. 5b). For each test,
the RMS errors of position and attitude are plotted.
405060708090100
Controller Sampling Frequency/Hz
6
8
10
12
e (RMS) /m
10-3
0
0.01
0.02
0.03
0.04
0.05
e (RMS) /rad
F
Q
N
F
Q
N
(a) RMS Error under different sampling frequency
202122232425262728x5e-9
Measurement Noise/(rad, m)
0
0.05
0.1
e (RMS) /m
0
0.2
0.4
0.6
0.8
1
e (RMS) /rad
F
Q
N
F
Q
N
(b) RMS Error under different measurement noise
Fig. 5: Robustness comparison of three control allocation frameworks.
(F for FD-based framework, Q for QP-based framework, N for
nullspace-based framework)
As shown in both plots, the QP-based framework always
exhibits higher tracking error than other two frameworks,
which is caused by the approximate linear equality constraint.
The errors of the FD-based framework and the proposed
nullspace framework are almost identical, and controller sam-
pling frequency or measurement noise has little influence on
the tracking performance. However, the tracking error of QP-
based framework will increase significantly when sampling
frequency is below 60 Hz or the measurement noise is larger
than 27×5e−9.
These two studies demonstrate that the developed nullspace-
based allocation framework is as robust as the FD-based
framework under various controller sampling frequencies and
6 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JULY, 2021
0 5 10 15
Time (s)
-0.2
-0.1
0
0.1
0.2
Position(m)
xyz
(a) F: Position.
0 5 10 15
Time (s)
-0.2
-0.1
0
0.1
0.2
Position(m)
xyz
(b) Q: Position.
0 5 10 15
Time (s)
-0.2
-0.1
0
0.1
0.2
Position(m)
xyz
(c) N: Position.
0 5 10 15
Time (s)
-2
-1.5
-1
-0.5
0
0.5
Orientation (rad)
pitchref pitch
(d) F: Attitude.
0 5 10 15
Time (s)
-2
-1.5
-1
-0.5
0
0.5
Orientation (rad)
pitchref pitch
(e) Q: Attitude.
0 5 10 15
Time (s)
-2
-1.5
-1
-0.5
0
0.5
Orientation (rad)
pitchref pitch
(f) N: Attitude.
0 5 10 15
Time (s)
0
0.2
0.4
0.6
Thrust Forces(N)
T1
T3
T2
T4
(g) F: Thrust Forces.
0 5 10 15
Time (s)
0
0.2
0.4
0.6
Thrust Forces(N)
T1
T3
T2
T4
(h) Q: Thrust Forces.
0 5 10 15
Time (s)
0
0.2
0.4
0.6
Thrust Forces(N)
T1
T3
T2
T4
(i) N: Thrust Forces.
0 5 10 15
Time (s)
-2
-1
0
1
2
Tilting Angles (rad)
1
3
2
4
(j) F: Tilting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Tilting Angles (rad)
1
3
2
4
(k) Q: Tilting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Tilting Angles (rad)
1
3
2
4
(l) N: Tilting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Twisting Angles (rad)
1
3
2
4
(m) F: Twisting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Twisting Angles (rad)
1
3
2
4
(n) Q: Twisting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Twisting Angles (rad)
1
3
2
4
(o) N: Twisting Angles.
0 5 10 15
Time (s)
0
0.05
0.1
0.15
Allocation Error
eu1
eu2
(p) F: Allocation Error.
0 5 10 15
Time (s)
0
0.05
0.1
0.15
Allocation Error
eu1
eu2
(q) Q: Allocation Error.
0 5 10 15
Time (s)
0
0.05
0.1
0.15
Allocation Error
eu1(step1)
eu2(step1)
eu1(step2)
eu2(step2)
2 2.5 3
0
0.5
110-5
5 5.5 6
0
0.5
110-10
(r) N: Allocation Error.
Fig. 6: Simulation: Vertical rotation trajectory tracking performance comparison between three allocation methods on the overactuated UAV
platform. (F for FD-based framework, Q for QP-based framework, N for nullspace-based framework)
measurement noise levels. However, the performance of QP-
based framework deteriorates significantly under low sampling
frequency or high measurement noise, demanding stricter
requirements on implementation than the other two frame-
works. This finding may partially explain the lack of real
implementation work using the QP-based framework.
V. SIMULATION AND EXPE RI ME NT RE SU LTS
A. Vertical Rotation Simulation
Before doing real world experiment, three allocation frame-
works are implemented in the simulation environment intro-
duced in Section IV to track the vertical rotation trajectory
(Fig. 6). The UAV platform is controlled to rotate around its
pitch axis from 0 to −π
2in 12 s, while maintaining the initial
states of the other five DOF. This vertical rotation scenario
is selected because the kinematic singularity (Section III-A)
appears at −π
2pitch.
We can easily find in (Figs. 6d and 6j) that when the attitude
of the platform is close to −π
2pitch, the desired tilting angle
command α1and α3calculated by the FD-based allocation
framework change dramatically and thus the control of whole
platform becomes unstable. And for the case with QP-based
allocation framework, the desired thrust force keep oscillating
from 6 to 9 s (Fig. 6h), which dramatically degrades the
position and attitude control performance (Figs. 6b and 6e). Al-
though it controls the platform to −π
2pitch in the end, but this
SU et al.: NULLSPACE-BASED CONTROL ALLOCATION OF OVERACTUATED UAV PLATFORMS 7
behaviour in transition phase is unacceptable. The nullspace-
based allocation we proposed can solve the singularity problem
in the FD-based framework and improve the transient phase
performance in the QP-based framework, as shown in Figs. 6c
and 6f both position regulation and attitude tracking control
remain stable.
The position and attitude allocation errors in allocation
errors in Figs. 6p to 6r, are defined by
e
e
eu1=
u
u
ureal(1 : 3) −u
u
ud(1 : 3)
2
e
e
eu2=
u
u
ureal(4 : 6) −u
u
ud(4 : 6)
2(23)
The allocation errors of the FD-based framework (Fig. 6p)
are zero before singularity happens, because of the exact
solution. For the QP-based framework, the allocation error
is not zero (Fig. 6q), due to the linearization approximation,
which makes the platform perform poorly. For the nullspace-
based framework, the allocation error after step1 (modified
QP) is already small, thanks to the penalty of Z
Z
Zin the
objective function, and remaining error is then eliminated in
step2 (projection) (Fig. 6r). Because the error after step1 is
already very small, the final exact solution (T
T
T∗, α
α
α∗, β
β
β∗)still
satisfy the inequality constraints for (T
T
T , α
α
α, β
β
β)as discussed in
Section III-C, and avoids the singularity.
B. Experiment Setup
The overactuated UAV platform consists of four Crazyflie
2.1 quadcopters (Bitcraze), four 3D-printed gimbals, and a
cross-shaped carbon-fiber central frame. The maximum thrust
force generated by each quadcopter is 0.6 N, and the thrust can
only be generated in the positive direction due to the geometry
of the propellers. The high-level controller and the control-
allocation framework discussed in this work runs on a ground
PC, which has sufficient computational power to implement the
optimization algorithms. The desired magnitude of thrusts and
joint angles are wirelessly sent to each quadcopter by Crazy
Radio PA antennas at 100 Hz. Each quadcopter is capable of
tracking these desired signals with all the necessary onboard
computation, sensing, and actuation. The communication struc-
ture is shown in Fig. 7.
Fig. 7: Communication setup of the platform in experiment. A ground
PC takes feedback from OptiTrack motion-capture system and runs
the high-level controller at 100 Hz. Each quadcopter receives signals
from the ground PC and runs low-level controller at 500 Hz
C. Vertical Rotation Experiment
Similar to Section V-A, three allocation frameworks are
implemented on the overactuated UAV platform in experiment
to track the vertical rotation trajectory as shown in Fig. 8.
Starting at 10 s, the FD-based allocation framework results
in instability. As the joint angles β1and β3approach ±π
2
(i.e., the second joint of the top and bottom gimbals), these
two gimbals become singular and ill-conditioned. For the QP-
based framework, the singularity problem is solved by adding
constraints on the rate of change of α
α
αangles, and the platform
is stable at −π
2pitch. However, the tracking performance is
worse with larger error in transition phase and oscillation in
steady state because of the approximate formulation and the
measurement noise (Section IV-C). For the nullspace-based
framework we proposed, the tracking performance is as good
as the FD-based allocation during the transition phase, and
the system is more stable at −π
2pitch. These results demon-
strate that the nullspace projection eliminates the perturbation
introduced by the linearization in the QP framework.
VI. CONCLUSION
The nullspace-based allocation framework we proposed in
this paper makes synergy of the existing Force Decomposition
and Quadratic Programming control-allocation methods for
overactuated UAV platforms while mitigating the limitations
of each method. The simulation and experimental results from
applying the three methods to our gimbal-based multirotor
platform has verified that the proposed nullspace-based frame-
work is as robust against controller sampling frequency and
measurement noise as the FD-based framework. Furthermore,
the proposed framework can handle hard constraints on tilting
angles and thrust forces like the QP-based framework to solve
kinematic-singularity. The proposed framework eliminates er-
rors caused by the first order approximation of nonlinear
equality constraints in the QP-based framework by exploiting
the nullspace of the allocation matrix to find the exact solution.
As demonstrated by our experiment, the proposed method
is viable for real-time computation and should be applicable
to the control allocation in the hierarchical control of other
overactuated UAVs.
ACKNOWLEDGMENT
The authors would like to thank Dr. Hangxin Liu, Mr.
Wenzhong Yan and Dr. Ankur Mehta for the access and
technical assistance in the motion capture system.
REFERENCES
[1] M. Furci, C. Nainer, L. Zaccarian, and A. Franchi, “Input allocation for
the propeller-based overactuated platform rospo,” IEEE Transactions on
Control Systems Technology, vol. 28, no. 6, pp. 2720–2727, 2020.
[2] R. Rashad, J. Goerres, R. Aarts, J. B. C. Engelen, and S. Stramigioli,
“Fully actuated multirotor uavs: A literature review,” IEEE Robotics
Automation Magazine, vol. 27, no. 3, pp. 97–107, 2020.
[3] M. Ryll, H. H. B¨
ulthoff, and P. R. Giordano, “A novel overactuated
quadrotor unmanned aerial vehicle: Modeling, control, and experimental
validation,” IEEE Transactions on Control Systems Technology, vol. 23,
no. 2, pp. 540–556, 2014.
[4] M. Kamel, S. Verling, O. Elkhatib, C. Sprecher, P. Wulkop, Z. Taylor,
R. Siegwart, and I. Gilitschenski, “The voliro omniorientational hexa-
copter: An agile and maneuverable tiltable-rotor aerial vehicle,” IEEE
Robotics & Automation Magazine, vol. 25, no. 4, pp. 34–44, 2018.
8 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED JULY, 2021
0 5 10 15
Time (s)
-0.2
-0.1
0
0.1
0.2
Position(m)
xyz
(a) F: Position.
0 5 10 15
Time (s)
-0.2
-0.1
0
0.1
0.2
Position(m)
xyz
(b) Q: Position.
0 5 10 15
Time (s)
-0.2
-0.1
0
0.1
0.2
Position(m)
xyz
(c) N: Position.
0 5 10 15
Time (s)
-2
-1.5
-1
-0.5
0
0.5
Orientation (rad)
pitchref pitch
(d) F: Attitude.
0 5 10 15
Time (s)
-2
-1.5
-1
-0.5
0
0.5
Orientation (rad)
pitchref pitch
(e) Q: Attitude.
0 5 10 15
Time (s)
-2
-1.5
-1
-0.5
0
0.5
Orientation (rad)
pitchref pitch
(f) N: Attitude.
0 5 10 15
Time (s)
0
0.2
0.4
0.6
Thrust Forces(N)
T1
T3
T2
T4
(g) F: Thrust Forces.
0 5 10 15
Time (s)
0
0.2
0.4
0.6
Thrust Forces(N)
T1
T3
T2
T4
(h) Q: Thrust Forces.
0 5 10 15
Time (s)
0
0.2
0.4
0.6
Thrust Forces(N)
T1
T3
T2
T4
(i) N: Thrust Forces.
0 5 10 15
Time (s)
-2
-1
0
1
2
Tilting Angles (rad)
1
3
2
4
(j) F: Tilting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Tilting Angles (rad)
1
3
2
4
(k) Q: Tilting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Tilting Angles (rad)
1
3
2
4
(l) N: Tilting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Twisting Angles (rad)
1
3
2
4
(m) F: Twisting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Twisting Angles (rad)
1
3
2
4
(n) Q: Twisting Angles.
0 5 10 15
Time (s)
-2
-1
0
1
2
Twisting Angles (rad)
1
3
2
4
(o) N: Twisting Angles.
(p) Vertical rotation trajectory tracking demonstrated by the “gimbal” platform using the proposed nullspace based allocation framework
Fig. 8: Experiment: Vertical rotation trajectory tracking performance comparison between three allocation methods on the overactuated UAV
platform. (F for FD-based framework, Q for QP-based framework, N for nullspace-based framework)
[5] Y. Su, “Compensation and control allocation with input saturation limits
and rotor faults for multi-rotor copters with redundant actuations,” Ph.D.
dissertation, University of California, Los Angeles, 2021.
[6] T. A. Johansen, T. I. Fossen, and S. P. Berge, “Constrained nonlinear
control allocation with singularity avoidance using sequential quadratic
programming,” IEEE Transactions on Control Systems Technology,
vol. 12, no. 1, pp. 211–216, 2004.
[7] M. Bodson, “Evaluation of optimization methods for control allocation,”
Journal of Guidance, Control, and Dynamics, vol. 25, no. 4, pp. 703–
711, 2002.
[8] T. A. Johansen, “Optimizing nonlinear control allocation,” in 2004
43rd IEEE Conference on Decision and Control (CDC) (IEEE Cat.
No.04CH37601), vol. 4, 2004, pp. 3435–3440 Vol.4.
[9] T. P´
eni, B. Vanek, G. Lipt´
ak, Z. Szab´
o, and J. Bokor, “Nullspace-based
input reconfiguration architecture for overactuated aerial vehicles,” IEEE
Transactions on Control Systems Technology, vol. 26, no. 5, pp. 1826–
1833, 2018.
[10] J. Zhang, P. Bhardwaj, S. A. Raab, and F. Holzapfel, “Control allocation
framework with svd-based protection for a tilt-rotor vtol transition air
vehicle,” in AIAA Aviation 2019 Forum, 2019, p. 3265.
[11] M. J. Gerber and T.-C. Tsao, “Twisting and tilting rotors for high-
efficiency, thrust-vectored quadrotors,” Journal of Mechanisms and
Robotics, vol. 10, no. 6, 2018.
[12] F. Senkul and E. Altu˘
g, “System design of a novel tilt-roll rotor quadrotor
uav,” Journal of Intelligent & Robotic Systems, vol. 84, 11 2015.
[13] P. Yu, Y. Su, G. Gerber, L. Ruan, and T. Tsao, “A six degree-of-freedom
multi-rotor copter with unconstrained attitude angles and high thrust
force efficiency,” IEEE Robotics and Automation Letters, 2021.
[14] C. Pi, L. Ruan, P. Yu, Y. Su, S. Cheng, and T. Tsao, “A simple six
degree-of-freedom aerial vehicle built on quadcopters,” CCTA, 2021.
[15] L. Ruan, “Independent position and attitude control on multirotor aerial
platforms,” Ph.D. dissertation, Univ. of California, Los Angeles, 2020.
[16] O. Elkhatib, “Control allocation of a tilting rotor hexacopter,” Master’s
thesis, ETH Zurich, Zurich, 2017.