1. Introduction
Multirotor helicopters are a class of Unmanned Aerial Vehicle (UAV) that are employed in a wide range of applications, resulting in one of the most appealing classes of vehicles for both research and industry. The standard quadrotor represents the most common configuration, which is equipped with four fixed-pitch blades connected to independent motors. Variable-Pitch Quadrotors (VPQs) can instead vary both the rotation speed of each motor and the blade pitch of each propeller, theoretically doubling the degrees of freedom of each actuator. VPQs are also known as collective pitch quadcopters or heliquads.
This results in many advantages, from which it is possible to list higher thrust rate of change, reverse thrust, reverse flight capabilities, and scaling well with size [
1,
2,
3]. Moreover, the popular ArduPilot control suite supports VPQs using the
Heliquad configuration. Despite this, VPQs still represent a market niche, where few commercial devices (e.g., the Assault Reaper 500, the Stingray 500, and the WLtoys Assassin V383, for recreational use) are available. In most of the scientific literature, however, custom prototypes (e.g., [
4,
5,
6]) are developed to test algorithms and control strategies. Fixed-pitch quadrotors and VPQs have similar dynamics, while relevant differences arise in the control effectiveness matrix. This allows for identical control laws for both configurations, but VPQs require a more complex control allocation algorithm. The additional degrees of freedom, provided by the pitch angles, can be exploited to satisfy additional constraints, such as minimizing energy consumption, handling the presence of faults and failures (as defined in [
7]), etc.
Specifically, the control allocation algorithm, which manages the redundancy while respecting constraints, strictly depends on two key factors: the thrust model and the choice of the control inputs.
As regards the thrust model, several mathematical models have been proposed in the literature to catch the relation between motor speed, pitch angle, as well as propeller size and shape [
3,
5,
6,
8,
9].
As for the choice of the control inputs, a VPQ instead has eight inputs available in general (i.e., four motor speeds and four pitch angles), a relevant input redundancy which is perfectly suited to provide actuator fault tolerance while satisfying actuation constraints. Two issues must be faced in this case. The increased number of actuators entails higher manufacturing costs and smaller payloads due to the extra weight. Moreover, the non-linearity of the control allocation problem makes it harder to solve online. In any case, the solution in which both the pitch angle and the motor speed can independently concur in providing the requested thrusts and torques is investigated in the literature, as carried out in [
9,
10] and, partially, in [
6,
11].
Alternatively, some simplifications have been proposed in the literature. The simpler solution is to assume constant motor speeds and use pitch angles as control inputs, as proposed in [
1,
3,
8,
12,
13]; in this case, four inputs are available, so the allocation problem is very simple and there is no redundancy at all. Employing a single central motor to drive the four propellers makes a decrease in costs, weight, and inertia possible. However, assuming the rotational speed is constant is just a choice to simplify the control scheme, and employing a time-varying speed, even with a single central motor, is feasible (see, for example, [
12,
14]). Taking into account a variable centralized motor speed allows for some input redundancy (five inputs) and thus enables for fault-tolerant control, which is the focus of this paper.
Any fault that can affect a conventional quadrotor can affect VPQs as well, and they can involve any part of the rotor system (e.g., ESC, motor, propeller). The most common class of actuator fault is a Loss of Effectiveness (LOE), i.e., the produced thrust is lower than the expected one. In fact, LOE may be the consequence of many issues: battery voltage drop [
15], increased drag due to the blade pitch [
5], and of course any physical damage to the blades [
16]. However, as for the specific case of fault diagnosis and tolerant control for VPQs, few works can be found in the literature. In [
17], the presence of a pitch lock-in-place is considered for a VPQ, and both fault diagnosis and fault-tolerant control are developed. The authors of [
14] focus on the effects of a lock-in-place in a centrally powered VPQ, but no fault diagnosis or fault-tolerant control are proposed. Finally, in [
18], a fault detection and fault-tolerant control strategy to face both pitch lock-in-place and motor LOE is proposed.
A major issue in control of multirotors is the presence of wind. In the UAV literature, both active and passive fault-tolerant control schemes have been employed to cope with the presence of wind. In [
19], the authors model the aerodynamic effects, define the upper bounds, and then deal with the wind by means of a robust sliding mode control; in [
20], extended state observers are instead employed to mitigate the effects of wind. The presence of external disturbances is also detrimental to the fault diagnosis task, as the effects of both the disturbances and faults may trigger a fault detection algorithm. In this paper, we show that horizontal wind can be managed for both the purposes of fault diagnosis and disturbance rejection by means of a single observer that estimates the actuator faults and the effects of the wind.
The main contribution of this paper is proposing a novel, complete fault-tolerant control scheme for a VPQ under actuator faults and wind, which consists of three main tasks: fault and disturbance estimation, non-linear control with disturbance rejection, and fault-tolerant control allocation. The proposed control strategy fills a gap in the literature because, to the best of the authors’ knowledge, there are no fault-tolerant control schemes for VPQs that take into account common external disturbances such as the wind. With respect to the authors’ previous works [
17,
18], in this paper, we consider the effects of wind that introduce significant complexity in the first two tasks, i.e., fault estimation and control. As an additional contribution, we propose a generalized strategy that is well-suited for both centrally powered VPQs and VPQs with four independent motors. In fact, the fault and disturbance estimation strategy, as well as the non-linear control law, does not depend on the choice of the control inputs (i.e., centralized or independent propeller speed). On the other hand, the control allocation algorithm must exploit redundancy to achieve fault tolerance, so the choice of the control inputs is relevant; however, the proposed control allocation algorithm is designed such that it suffices to enable an equality constraint to deal with a centrally powered VPQ (instead of a conventional one with four separate motors).
The paper is structured as follows. In
Section 2, the mathematical model of the vehicle is detailed, including the characterization of variable-pitch propellers and the model of actuator faults to be faced.
Section 3 is devoted to the design of a Non-linear Disturbance Observer (NDO) to estimate faults and disturbances. In
Section 4, a double-loop controller to track position and orientation, despite the presence of external disturbances, is introduced. In
Section 5, a control allocation strategy that redistributes the control effort by taking into account the presence of actuator faults is detailed. Simulation results to show the effectiveness of the overall fault-tolerant control strategy are proposed in
Section 6. Finally, conclusions and future works end the paper.
2. Mathematical Model
The overall kinematics and dynamics of a generic multirotor, thus including variable-pitch quadrotors, can be approximated as that of a unique rigid body with six degrees of freedom [
21]. Let us consider an earth-fixed frame
, which is assumed to be inertial, and a body-fixed frame
, which is placed in the center of mass of the vehicle. For simplicity, we assume the center of mass coincides with the geometric center of the quadrotor, as depicted in
Figure 1.
From now on, the standard basis vectors of
are denoted with
. Let us denote with
the position of the center of mass with respect to
, and with
the angular velocity of the vehicle. Neglecting the second-order effects (i.e., rotor dynamics, blade flapping, gyroscopic and inertial effects due to the rotors), the quadrotor kinematics and dynamics can be expressed as [
21]
where
m is the total system mass,
is the tensor of inertia along the
,
, and
axes,
and
are the linear and angular friction coefficients,
is the vector of the attitude angles (roll, pitch, and yaw, respectively) that characterize the rotation from
to
.
where
and
are introduced for the sake of brevity,
and
are the overall force and torque due to the motors (decomposed in
),
is the force due to the wind (decomposed in
), and
is the kinematic coordinate transformation related to the adopted roll–pitch–yaw rotation, that is [
22]:
Let us denote with
the actual lift thrust produced by the
i-th actuator. In VPQs, as in conventional quadrotors, all the actuators are oriented upwards and they produce collinear lift forces only, as depicted in
Figure 2.
Denoting with
the overall lift force, given by
, we have
In other words, the overall lift thrust is along
only, because none of the actuators can generate a horizontal force in
. Then, substituting (
4) in the first row of (
1), we obtain the following model:
The four-dimensional vector is the so called virtual input vector.
2.1. Input Mapping
Consider the
i-th motor. We denote with
the lift thrust generated by the propeller attached to the motor, with
the generated drag, and with
the angular rate of the propeller, taken to be positive when the rotation of the motor matches that of the propeller (clockwise or counter-clockwise). Let us consider the case of rectangular, untwisted blades (which are suitable for variable-pitch drones) with uniform inflow. Let us assume the blade pitch is limited in order to avoid propeller stalling, which is an undesired effect to be avoided in practice. Then, both the lift force and drag of each rotor can be expressed as a function of the rotational speed [
3]:
where
and
are the lift and drag coefficients that depend on the blade geometry. In the case of fixed-pitch propellers,
and
are constant. In a variable-pitch propeller, however, as the pitch angle
changes, the lift and drag coefficients change as well. Two main approaches to characterize the dependency of
and
on
can be found in [
9], and they can be categorized into grey-box (e.g., [
3]) and black-box (e.g., [
5]) approaches. In this work, we follow the grey-box approach of [
3], which makes use of the blade element theory and the momentum theory to obtain
where
is the propeller radius,
is the air density, while
and
are dimensionless lift and drag coefficients, which are functions of
. Following [
9,
23], which assume steady-state linearized blade aerodynamics, we consider the implicit relations
where
,
,
, and
. In detail,
is the blade solidity,
is the number of blades,
c is the chord length,
is the 2D lift–curve–slope of the airfoil section, comprising the rotor, and finally,
is the zero-lift drag coefficient (see [
9] for further details). Without loss of generality, we consider a ’+’ quadrotor configuration (see
Figure 1), so the overall input mapping is
where
l is the arm length. The mapping (
12) is nonlinear in
and
, which are the actual control inputs for each motor
i, for a total of eight inputs.
2.2. Explicit Lift and Drag Functions
Equations (
10) and (
11) are implicit functions of
, so they are not practical for online computation. In the literature, such functions are solved iteratively by means of numerical approaches [
9]. In this section, instead, we introduce two equivalent equations that determine the coefficients
and
in terms of explicit functions of
.
The lift function
in (
10) is expected to be an odd function of
[
9]. In fact, from (
8), we obtain
which is an explicit odd function of
. The drag function
in (
11) is expected to be an even function of
[
9]. Then, noting that
, (
11) can be rewritten as
which is an explicit even function of
. We also calculate in advance the derivatives of (
13) and (
14) with respect to
, as they are going to be employed in the remainder of the paper. We have
where the second row is obtained with the use of
2.3. Actuator Faults and Control Input Definition
A total of eight control inputs are considered, which are the pitch angles
and the squares of the desired rotor speeds, denoted as
, for
. All the control inputs are collapsed in the vectors
In the absence of faults, the relation
holds. For each actuator
i, a possible LOE is considered, so that the resulting angular speed may be lower than the desired one, i.e.,
Each
, for
, is an unknown and time-varying quantity which models the fault magnitude on the
i-th actuator. It is constrained in
, where
corresponds to the faultless scenario. For the sake of brevity, the fault magnitudes are collected in the vector
3. Wind and Fault Estimation
We assume the wind acts on the
plane only, that is,
. In other words, we neglect the updraft, and we claim that the horizontal wind does not generate any significant torque due to the symmetry of the vehicle. Thus, six target independent variables need to be estimated; these are
and
, and they are summarized in the extended uncertainty vector
. By handling the joint vector
as an external disturbance, a disturbance observer for the estimation
of
is then designed, which in our purpose can be defined as a dynamical system in the form
for which
as
, and where
is the observer state,
and
compactly refers to the quadrotor state and the control inputs, and where
and
are smooth function to design. Several disturbance observers have been proposed in the literature. Here, we follow the NDO proposed in [
24], which can be summarized as follows.
Define an auxiliary variable s which directly depends on the estimation target . Usually, the auxiliary variable is chosen, for some smooth function .
Find the dynamics of the auxiliary variable s. In this step, the disturbance observer design problem is turned into a state observer design problem.
Based on the auxiliary dynamics , design a state observer for the estimation of s.
Define by using the inverse function of the chosen auxiliary variable definition.
For design purposes, the model is conveniently rewritten in
Section 3.1. Then, the design of the NDO is proposed in
Section 3.2.
Remark 1. The estimation of the actuator faults and the external force generated by the wind is obtained by the disturbance observer, where only kinematic data are required, i.e., without the need of measuring motor speeds, motor currents, etc.
Remark 2. The design of involves the solution of a set of partial differential equations.
Remark 3. If the dynamics of is uncertain, the ultimate boundedness of is demanded instead of convergence.
3.1. Model Manipulation
Note that the input mapping (
12) and the action of the fault (
18) can be rewritten as
and
resulting in the overall relation
.
The quadrotor kinematics and dynamics in (
5) can be equivalently expressed as
Then, defining
and
, we can rewrite the overall quadrotor model in order to show that the non-linear model is affine with respect to the uncertainty
. In fact, we have
where
and
, with
Finally,
P is almost everywhere nonsingular, since
where
almost everywhere (assuming
). Noting that each
is positive in real flight conditions,
is different from zero in non-aerobatic flight, and
, then the inverse of
P is well-defined in practical flight conditions.
3.2. Disturbance Observer Design
The NDO is designed on model (
26). Indeed, the NDO design in DOBC is well-known for control affine systems [
25], so the idea is actually based on the affine uncertainty, which is
in our problem. Consider the auxiliary variable
, where
is a function to design. For the sake of brevity, we denote
. By differentiation, we have
where
is a known term given by
The disturbance observer is then designed as
where
and
are estimations for
s and
, respectively. The function
is investigated through the estimation error dynamics. On this purpose, let us consider the error variables
and
. The error dynamics is
With the choice
, where
is Hurwitz, the overall estimation error boils down to
which is an asymptotically stable linear time-invariant system, perturbed by the unknown input
.
5. Control Allocation
In this section, we show how the virtual input (i.e.,
and
) can be distributed among the motors (i.e.,
u) and the pitch servos (i.e.,
). Let us consider a non-linear optimization problem in the optimization variables
and
u:
where
in (
51) is a cost function to be determined, while (
52) and (
53) represent generic non-linear and nonconvex constraints. In the literature, the control allocation problem in multirotors is usually tackled with lightweight methods, such as pseudo-inverse and redistributed pseudo-inverse [
29,
30]. Such methods are motivated by the need for high rates, but they are not effective in the presence of constraints and rate limits. Moreover, they need a significant simplification of the problem formulation (i.e., linear or quadratic cost functions, linear equality constraints, potentially also removing inequality constraints). In the following, we set up the control allocation problem and we detail a method to solve it efficiently by means of a locally convex Quadratic Programming (QP) reformulation (as carried out, for example, in [
31] for a marine vessel).
The method that is detailed in this section to solve the non-linear allocation problem (
51)–(
53) represents a simplified version of the generic Sequential Quadratic Programming (SQP) strategy (see, for example, [
32]) to solve non-linear optimization problems. The main differences are
SQP employs the Hessian of the Lagrangian in the cost function, while we employ the Hessian of the original cost function. In other words, we always set the Lagrange multipliers’ initial guess to zero for simplicity, so that the Hessian of the Lagrangian coincides with the Hessian of the original cost function.
Once the search direction is found, a full step is performed in the proposed method, and no merit function is computed.
The stopping criterion in the proposed method boils down to performing just a single iteration (i.e., a single QP is solved as in Real-Time Iteration [
33], instead of a sequence of QP problems as done in SQP), and so no convergence criteria are needed.
These modifications introduce some loss of accuracy in the solution, but they reduce the number of evaluations, in order to perform the allocation faster in view of online implementation.
5.1. Equality Constraints
The equality constraints (
52) originate from (
22)–(
23), namely
where
and
Please note that
and
have been defined in (
8), while
and
have been defined in (
15). The time-varying numeric values for
,
, and
w in (
54) are given by (
46) (
,
) and (
33) (
), respectively; in other words, the actual lift force and torques must satisfy those required by the inner loop, also taking into account the actual fault estimation.
Please note that the equality constraints are non-linear and nonconvex with respect to the optimization variables
and
u. Non-linear optimization problems are hard to solve online due to computational limits, as well as because the existence of the solution is not guaranteed in general. To solve efficiently the problem online, the equality constraints (
52) are linearized, as in SQP, so that a QP problem can be obtained. Using the first-order Taylor approximation around
, we have
where
and
represent the current value of
and
u, respectively. Then, (
54) can be approximated by
where
,
, and
As
w is not available, to build the control allocation problem online we replace it in (
60) with its estimation contained in
.
Remark 4. In the case of a centralized motor, it suffices to add the constraint ; provided that the same initial value is employed for u, then holds. In other words, (59) is replaced by 5.2. Inequality Constraints
The inequality constraints of interest to be included in (
53), in practice, are saturation constraints and rate limits, i.e.,
Such inequality constraints are affine with respect to the optimization variables and u, so they are tractable in online optimization.
Replacing (
52) with its approximation (
59) (or (
61), for a single centralized motor) and expressing the constraints (
62) in the variable
, we obtain an optimization problem in the form
where
are defined to express the inequality constraints (
62) in a more compact way. Please note that (
63) is a QP problem by construction, provided that the cost function
is quadratic.
5.3. Cost Function
The main term to be considered in a cost function for UAVs, especially in the case of multirotors, is the energy consumption
. A quadratic form for
is often assumed in the UAV literature [
29,
30]; such a choice is mainly motivated by simplicity, as it usually leads to a QP problem. Motivated by the need for autonomy in UAVs, more detailed representations, coming from physically accurate consumption models, have been proposed in the literature as well. The most employed models are second-order polynomials [
9] and irrational functions [
34], as well as more generic non-linear functions [
6]. All of the previous choices fit well with the proposed framework, as it is always possible to locally approximate the cost function with a quadratic cost function, as done for example in [
31]. For the purpose of this work, the steady-state thruster consumption from [
34] is employed. Given a generic matrix
and
, let us introduce, with a slight abuse of notation, the short
(i.e., the
k-th power of the absolute values of the entries of
M, in an element-wise fashion). Then, the steady-state thruster consumption for a quadrotor can be rewritten as
where
and
should be intended element-wise as already anticipated. Furthermore,
is assumed to be constant for simplicity (see [
34] for further details) and
with
for
. Hence, we can define the cost function
where
,
,
,
are symmetric positive definite matrices. The first term of (
67), which takes into account energy consumption, is detailed in (
65). The second and the third quadratic terms of (
67) discourage variations in the control inputs to minimize actuator wear and tear. The last term of (
67) defines preferred values
for the pitch angles
. This term becomes necessary in order to compensate for the first term (i.e., the one that discourages energy consumption), because the actuator is more energy-efficient when the pitch angle is large in magnitude. Thus, in the absence of the fourth term, the pitch angle is often stuck to its saturation limit to minimize energy consumption. In such a case, the only way to increase the lift further is to increase the motor speed, as the pitch angle cannot be increased in magnitude, so the maneuverability of the vehicle worsens.
Considering the second-order Taylor approximation for
, i.e.,
and performing some manipulation, (
67) becomes
where
c is a constant term (i.e., a term that does not depend on
x), which is irrelevant for the solution of the optimization problem, so it can be neglected.
5.4. Scaling and Infeasibility
The problem formulation according to (
59) (or (
61), for a single centralized motor), (
64), (
69), that is,
shows two drawbacks. First of all, the existence of a feasible solution is not guaranteed, so problem infeasibility must be dealt with. Moreover, the problem is ill-conditioned, because the magnitude of
and
is very different; according to (
17)–(
18),
is typically in the range of decimals (in radians), while
u is typically in the range of tens of thousands (in radians per second squared), and the same occurs for
and
.
To improve the problem conditioning, diagonal scaling is performed [
32]. We define a new optimization variable
where
is a diagonal matrix such that the components of
z share the same magnitude, as they become constrained in
according to the rate limits in (
62) (please note that the box constraint estimation
is conservative; tighter constraints may apply).
In order to deal with infeasible problems, we soften the equality constraint by adding a vector of unconstrained artificial variables
into the equality constraint, while minimizing the norm of the artificial variable. The overall problem (
70), after the change of variables and the softening of equality constraints, becomes
which can be finally rewritten in the classical form that is usually required by QP solvers, i.e.,
where
and are large enough to guarantee feasibility (e.g., , ), while and are empty matrices, because no inequality constraints are left, with an exception made for the upper and lower bounds that are usually introduced separately.
Once the solution
of (
72)–(
74) is calculated, the solution to the control allocation problem is
Remark 5. The choice of a quadratic penalty for ζ is made for simplicity, as it introduces a small number of additional variables and it makes the cost function smooth and hence easier to solve online. This strategy is similar to the quadratic penalty method in [32] and, more precisely, to the weighted least squares in [35]. As a drawback, such a penalty term is not exact, i.e., the solution of the penalized problem is not equivalent to the solution of the original problem [32,36]. In particular, the higher the penalty through , the more the solutions of the two problems coincide, but also the worse is the conditioning. Thus, is a trade-off between ideal solution quality and acceptable conditioning. We claim that this issue is not crucial, because several approximations are introduced to simplify the problem, and so the solution is not exact anyway. Alternatively, it is possible to introduce additional positively constrained slack variables and to employ exact penalty functions, such as and penalties, at the price of dealing with the nonsmoothness of the cost function (see [32] for further details). 6. Numerical Simulation
A numerical simulation is performed using MATLAB, where the inner loop and the outer loop run at 400 Hz (i.e., ArduPilot’s loop rate) and 10 Hz, respectively. A zero-order hold is performed between consecutive samples. The quadrotor parameters are set according to [
18] and they are reported in
Table 1. Different from [
18], the friction is neglected and the thrust-to-weight ratio is slightly increased (from
to
) in order to face severe faults.
The control parameters were set empirically through a coarse grid search (as such, better performances could be achieved with a finer tuning). The closed-loop poles for the inner loop are placed in
and
for
, in
and
for
and
, and finally in
and
for
. The outer loop poles are instead placed in
and
for both
and
. A properly scaled white Gaussian sensor noise is simulated according to an MPU-9250 IMU TDK InvenSense [
37], which is a common device in quadrotor flight controllers (i.e., in Pixhawk 4).
6.1. Independent Motors’ Speed
Let us first consider a VPQ equipped with four independent motors and four independent pitch servos. The simulation is performed for a total of 30 s under the external wind force reported in
Figure 3, which also reports the correspondent estimations provided by the observer, where the gain matrix has been set as
, with
I being the identity matrix.
Due to the stochastic nature of the wind, achieving the boundedness of the estimation error replaces the ideal goal of a perfect convergence, which is here achieved in the case of bounded derivatives of the wind force. The estimation of the faults and the wind is practically started after a finite time from the beginning of the flight (i.e., after of simulation in this example), in order to make the initial conditions of the observer practically irrelevant.
Faults components and their estimations are reported in
Figure 4.
Two trapezoidal faults are injected. The first one affects motor 1 after 10 s (the LOE magnitude is , i.e., ) and a second one affects motor 3 after 15 s (the LOE magnitude is , i.e., ). In the range , each is set equal to 1, matching the reasonable assumption of no faults at the initial time (or, without loss of generality, we assume that we know the fault status at the beginning of the flight). Note that, since each estimation is provided independently from the NDO, the same results can be achieved in the case of simultaneous faults.
The tracking reference components and the related state variables are reported in
Figure 5.
The references on and are sinusoidal signals, the reference on forces the quadrotor to face both ascending and descending profiles, while the yaw angle is kept at zero. The system is forced to change the velocity constantly in both magnitude and direction, with a linear speed magnitude up to 7 m/s. All the references are smoothly tracked with an acceptable error (the plotted variables are the actual state variables instead of the noisy ones), with the exception of the yaw component (), which exhibits a temporary increasing error when the fault worsens.
The references
and
generated by the outer loop are reported in
Figure 6.
Please note that, when the fault is rapidly worsening, the tracking capabilities in the inner loop are affected. The inner/outer loop approach, which employs a higher frequency of the inner loop and a zero-order hold, allows us to track the references, despite the presence of noise, faults, and disturbances.
The control inputs
u and
are reported in
Figure 7.
All the actuators are subject to the same saturation constraints. This allows us to plot the bounds with horizontal dashed lines in
Figure 7 (upper bounds in this case). In particular, the saturation limits have been set as
where
,
,
, and
are detailed in
Table 1. Considering
,
corresponds to a thrust-to-weight ratio equal to
.
At the beginning, when no fault is present, the opposite actuators (1 and 3, 2 and 4) show similar motor speeds and pitch angles, due to symmetry. As soon as the fault on motor 1 occurs, the opposite actuators 1 and 3 behave differently; in response to the severe fault acting on motor 1, the control allocation algorithm demands a high speed and a large pitch angle to compensate for the missing lift force.
6.2. Centralized Motor
In this section, we consider a VPQ equipped with a single centralized motor and four independent pitch servos. The simulation conditions and the wind components are the same as the previous simulation, including the same random seed.
Figure 8 reports the wind effect and its estimations provided by the observer; no noticeable differences can be noted, as expected, because the fault estimation does not directly depend on the actual inputs.
The same consideration holds for the faults and their estimations (
Figure 9).
The tracking reference components and the related state variables are reported in
Figure 10 and
Figure 11. The performances are similar; minor differences in the outer loop tracking capabilities can be detected.
Finally, the control inputs
u and
are reported in
Figure 12.
First of all, please note that the motor speeds coincide, as expected. Furthermore, in response to the fault acting on motor 1, the control allocation algorithm demands a high motor speed to compensate for the missing lift force. As there is only one centralized motor, the speed of every propeller must increase. Analogously, please note that, the larger the fault, the higher the average value of the pitch angle.
As the motor speed is higher on average in the case of the centralized motor (
Figure 7 and
Figure 12), the energy consumption is higher. This is unavoidable, because in the case of the centralized motor, the input redundancy is lower than in the case of independent motors. In
Table 2, we summarize the overall normalized (i.e.,
) consumption during the flight, as proposed in (
65).
7. Conclusions
Unlike standard quadrotors that are equipped with four fixed-pitch blades and four independent motors, VPQs can vary both the rotation speed and the blade pitch of each propeller, thus increasing the degrees of freedom for control purposes. In addition to higher thrust rate of change, reverse thrust and reverse flight capabilities, and scaling well with size, VPQs enable for fault-tolerant control strategies thanks to their inherent input redundancy, whether they are equipped with four independent motors or a centralized one. We have shown that a single observer can estimate both actuator loss of effectiveness and the external disturbance given by horizontal wind. According to the disturbance observer-based control framework, the estimation of the wind is fed forward in the outer (position) control loop. The estimation of the actuator loss of effectiveness is instead employed in the control allocation algorithm. It manages each propeller’s pitch and motor speed to generate the force and the torques commanded by the inner (attitude and altitude) control loop. Simulation results show that the estimation of both the disturbance and the actuator loss of effectiveness is practically feasible in the presence of conventional measurement noise in commercial devices. We remark that the fault estimation is performed from kinematic data of the onboard inertial measurement unit only, without the need to measure the motor speed nor the current drawn by the actuators.
Comparing centralized and independent motors, the former is less efficient in terms of energy consumption, especially in the case of faults, because all the propellers must spin faster. Clearly, many other factors should be considered to evaluate the energy consumption properly, such as possible weight and cost reduction. In any case, both centralized and independent motors can tolerate actuator faults using the proposed scheme. The proposed control scheme could also deal with pitch lock-in-place, provided that reliable information on the stuck fault is available (e.g., measuring the current pitch angle or estimating it through a fault detection algorithm). Practically, it is sufficient to constrain the faulty pitch servo to the current value, and the control allocation algorithm can accommodate for the stuck fault using the remaining control inputs. However, in the case of a single centralized motor, the reduced amount of redundancy makes it less robust to lock-in-place faults and severe loss of effectiveness.