Next Article in Journal
IRONEDGE: Stream Processing Architecture for Edge Applications
Next Article in Special Issue
Temporal Multimodal Data-Processing Algorithms Based on Algebraic System of Aggregates
Previous Article in Journal
Interpretation for Variational Autoencoder Used to Generate Financial Synthetic Tabular Data
Previous Article in Special Issue
CUDA and OpenMp Implementation of Boolean Matrix Product with Applications in Visual SLAM
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Integral Backstepping Control Algorithm for a Quadrotor Positioning Flight Task: A Design Issue Discussion

Department of Aeronautics and Astronautics, National Cheng Kung University, Tainan 701, Taiwan
*
Author to whom correspondence should be addressed.
Algorithms 2023, 16(2), 122; https://doi.org/10.3390/a16020122
Submission received: 5 January 2023 / Revised: 5 February 2023 / Accepted: 14 February 2023 / Published: 16 February 2023
(This article belongs to the Collection Feature Paper in Algorithms and Complexity Theory)

Abstract

:
For quadrotor control applications, it is necessary to rely on attitude angle changes to indirectly achieve the position trajectory tracking purpose. Several existing literature studies omit the non-negligible attitude transients in the position controller design for this kind of cascade system. The result leads to the position tracking performance not being as good as expected. In fact, the transient behavior of the attitude tracking response cannot be ignored. Therefore, the closed-loop stability of the attitude loop as well as the position tracking should be considered simultaneously. In this study, the flight controller design of the position and attitude control loops is presented based on an integral backstepping control algorithm. This control algorithm relies on the derivatives of the associated virtual control laws for implementation. Examining existing literature, the derivatives of the virtual control law are realized approximated by numerical differentiations. Nevertheless, in practical scenarios, the numerical differentiations will cause the chattering phenomenon of control signals in the presence of unavoidable measurement noise. The noise-induced control signals may further cause damage to the actuators or even diverge the system response. To address this issue, the analytic form for the derivative of the virtual control law is derived. The time derivative virtual control law is analyzed and split into the disturbance-independent compensable and disturbance-dependent non-compensable terms. By utilizing the compensable term, the control chattering due to the differentiation of the noise can be avoided significantly. The simulation results reveal that the proposed control algorithm has a better position tracking performance than the traditional dual-loop control scheme. Meanwhile, a relatively smooth control signal can be obtained for a realistic control algorithm realization. Simulations are provided to illustrate the position tracking issue of a quadrotor and to demonstrate the effectiveness of the proposed compromised control scheme.

1. Introduction

The quadrotor has been widely used in economic, commercial, entertainment [1], and military industries—for example, prospecting, documentary filming, spraying medicine, reconnaissance, attack, and other tasks. As a result, quadrotors play an essential role in the livelihoods, businesses, and the military for people. Position trajectory control is the key to realizing these applications when flying in turbulent environments [2,3], flight path planning [4], and avoiding dynamic obstacles [5].
Due to the maneuverability and applicability of the quadrotors, it has attracted extensive research interest in recent years. The study [6] presented an adaptive controller that introduced the artificial neural network to adjust the control gain adaptively. The study [7] proposed a combination of backstepping and sliding model approaches based on a PID-type sliding surface to address the position control problem of the quadrotors. In [8], an optimal bounded robust control algorithm for secure autonomous navigation of a quadrotor is proposed. Other related research includes: the backstepping controllers [9,10,11,12,13,14], sliding mode controllers [15,16], and adaptive controllers [6,17,18]. Several research studies considered fuselage drag in the model [16,18]. The viscous drag force depends on the fluid viscosity, air speed, humidity, and the fuselage design prototype. It is hard to make a deterministic analysis of the effects of drag. In general, the quantitative results are estimated by conducting the experimental studies [19,20]. Nevertheless, some researchers did not consider the drag force in the external disturbances [8,9,11,15]. To fulfill the practical scenarios, the time-varying, and state-dependent external disturbances are considered in these studies [21,22,23]. Some of the studies do not include measurement noise [6,7,8,10,15,18,24] and actuator saturation limitations [25] in the numerical simulations. These imperfections lead to mismatches between numerical simulation and practical implementations. In fact, the saturation of actuators may lead to system instability. The measurement noise may be amplified when conducting the numerical differentiation. This skill causes serious control chattering of the control signals. With regard to the position flight controller, some of the articles [7,9,10,11,13,18,26,27] separate the dynamics into the position loop and attitude loop, and then design the controller individually. In these works, the attitude transients are ignored based on the assumption that the attitude response is fast enough. However, transient behavior in the attitude loop does exist due to the nature of the quadrotor flight properties and finite inner-loop control bandwidth. Therefore, the tracking performance of the position loop is limited due to the transient response of the attitude loop. To address this cascade transition issue, the integral backstepping control algorithm is introduced inspired by the work [28], where the integral term is applied to suppress the effects of disturbances [29]. However, the construction of the virtual control law needs information from unmeasurable states. The studies [9,14] conducted the numerical differentiation and applied a low-pass filter. It should be mentioned that the drawback of a low-pass filter gives rise to the phase delay. To avoid the control delay problem, the analytic form of virtual controls is derived. The analytic form is obtained by dividing the virtual control into a disturbance-independent term and a disturbance-dependent term and then applying the compensation for the former. Simulation results reveal that the relatively smooth control signals are available from the proposed analytic form of virtual controls.
The objective of this study aims to develop a position tracking control algorithm for a quadrotor in the presence of both the disturbance and the measurement noise. Instead of presenting a new robust control theory, the topic of this paper is to solve a controller design issue when applying the backstepping scheme. In the existing backstepping control algorithms, the virtual control inputs contain unmeasurable information. This issue can be dealt with in two ways: taking the time derivative on the state variable directly or designing an extra observer. On the one hand, taking the time derivative will induce serious control chattering when the state variables contain measurement noise. On the other hand, designing an extra state estimator or an observer would definitely increase realization complexities. Therefore, in the paper, an analytic way is presented. The proposed analytic flight control algorithm, which uses available state information only, can be taken as a compromised control law for practical consideration. Therefore, applying the virtual input derivative as well as designing the observer design can be avoided. Most importantly, the serious control chattering induced by measurement noise can be attenuated and thus the control saturation can be avoided as well. This advantage makes a great contribution to the position control closed-loop stability.
The contributions of this study are summarized as follows: (i) proposing the integral backstepping control algorithm for the quadrotor position tracking demands; (ii) providing the corresponding stability analysis based on Lyapunov theory in the presence of the unknown disturbances; (iii) deriving the analytic form of the virtual controls so that more smooth control signals can be obtained by the proposed analytic solution instead of using the numerical differentiation directly; and (iv) highlighting the advantage of the proposed flight controller with consideration of disturbances and measurement noise for comparative studies. Simulation results reveal that the proposed integral backstepping control algorithm with the analytic virtual control law has a better trajectory tracking performance. Meanwhile, smoother realizable control signals are obtained.
The organization of this study is concluded as follows: the dynamics modeling and the actuator analysis are performed in Section 2; the proposed integral backstepping control algorithm is derived in Section 3, the correlated stability analysis is provided; the comparison of the numerical simulations is presented in Section 4; finally, the conclusions are made in Section 5.

2. Dynamics Modeling

In this paper, to address the design issue clearly, we focus on 3-DoF quadrotor dynamics. Hence, the simplified 3-DoF dynamics model is adopted rather than the 6-DoF quadrotor systems. It is worth noticing that the considered 3-DoF model is a classical example to illustrate the control difficulty for such cascade nonlinear systems subject to both the matched and mismatched disturbances. To address this control problem, the 3-DoF dynamic model of a quadrotor is considered in this study to provide a deeper understanding of the proposed algorithm. The dynamic configuration for a 3-DoF quadrotor system is shown in Figure 1. The geometry parameters are summarized in Table 1.
The quadrotor system contains two brushless direct currents (BLDC) motors to provide the thrusts to drive the quadrotor system. In practical scenarios, each BLDC motor is controlled by the electric speed controller (ESC). The ESC controls the rotation speed of the BLDC motor to the desired speed according to given pulse width modulation (PWM) duty cycles. In other words, there exists a simple mapping relationship between desirable rotor speeds and the given PWM duty cycles. Refer to [15,30,31], and the thrust F i generated by i-th rotor with the speed Ω i , i = 1 , 2 , is modeled as
F i = C T Ω i 2
where C T is the thrust coefficient. On the basis of (1), the total force F and torque M can be expressed as
F M = Γ Ω 1 2 Ω 2 2
where the force distribution matrix Γ is defined as
Γ = C T C T L C T L C T
The inverse mapping of (2) is given by
Ω 1 2 Ω 2 2 = Γ 1 F M
where
Γ 1 = 1 2 C T 1 2 C T L 1 2 C T 1 2 C T L
The system kinetic energy T includes the translation kinematic energy 1 2 m ( x ˙ 2 + z ˙ 2 ) and the rotational kinematic energy 1 2 J θ ˙ 2 ; the potential energy V with respect to the datum z = 0 is m g z . Thus, the Lagrangian L = T V can be represented by
L = T V = 1 2 m ( x ˙ 2 + z ˙ 2 ) + 1 2 J θ ˙ 2 m g z
The Lagrange equation is
d d t L η ˙ j L η j = N j , j = 1 , 2 , 3
where the generalized coordinate η j represents x, z, and θ ; the generalized force N j is F s θ + d x , F c θ + d z , and M + d θ , respectively. The notations c ( · ) and s ( · ) represent cos · and sin · . The following time-varying and state-dependent disturbance models of the external disturbances d x , d z , and d θ are considered:
d x ( t , x ˙ ) = f x ( t ) C d x x ˙ d z ( t , z ˙ ) = f y ( t ) C d z z ˙ d θ ( t , θ ˙ ) = f θ ( t ) C d θ θ ˙
where f x ( t ) , f y ( t ) , and f z ( t ) are unknown time-varying disturbances used to simulate the influence from the wind gusts; C d x x ˙ , C d z z ˙ , and C d θ θ ˙ are correlated to the state-dependent aerodynamic drag forces. C d x , C d y , and C d z are the associated viscous drag coefficients.
Substituting (6) into (7) gives the dynamic equations shown as follows:
m x ¨ = F s θ + d x
m z ¨ = F c θ m g + d z
J θ ¨ = M + d θ
Hence, on the basis of the dynamics (9)–(11), given the desired trajectories in x- and z-directions, the control laws F and M are designed. Then, based on the actuator model (4), the desired rotation speeds of BLDC are obtained to achieve the trajectory tracking demands.
It should be noticed that the BLDC motors have a command deadzone in the low-speed region. This imperfection induces the undesired response and instability of the system. To address this issue, the minimum motor speed command, Ω m i n , is considered in this study. Furthermore, to provide enough margin of control torque in the landing phase, the minimum force F m i n and the maximum F m a x are imposed. The quantities of F m a x , F m i n , and Ω m i n are set by
F m a x = 3 m g F m i n = m g 2 Ω m i n = Ω i d l e
where Ω i d l e is the idle speed value that is dependent on the hardware configuration. From (4) and (12), the maximum value of the magnitude of control torque can be given by
M m a x = ( F 2 C T Ω i d l e 2 ) L ( F m i n 2 C T Ω i d l e 2 ) L
M m a x + = 2 L C T Ω m a x 2 F 2 L C T Ω m a x 2 F m a x
where F is the desired control force to manipulate the z-directional flight dynamics and will be designed later. M m a x + and M m a x are the maximum torques at the upper and lower limits of the BLDC motor speed, respectively. Note that usually Ω m i n is more important to consider than Ω m a x . This is because the motor speed cannot be negative. Generally, M m a x + and M m a x satisfy
M m a x + M m a x
Conclusively, the following saturation conditions are considered in the flight controller implementation:
F m a x F F m i n
Ω m a x Ω i Ω m i n
| M | M m a x
for i = 1 , 2 .

3. Flight Controller Design

The 3-DoF quadrotor model has been derived in (9)–(11). The system contains two independent control inputs: one is the translational force F and the other is the rotational torque M. The main design task is to develop proper control laws to achieve the desired flight demands. In this study, the control objective is the trajectory tracking control, namely ( x , z ) ( x d , z d ) , and keeps the attitude θ stable simultaneously. In a physical sense, the force F can be independently designed to achieve altitude tracking control. However, the translation x relies on the change of the attitude θ making the system have the force component in the x-direction. Therefore, the system dynamics (9)–(11) are divided into a fully-actuated subsystem S 1 and an under-actuated subsystem S 2 described as follows:
S 1 : z ¨ = F c θ m g + d z m
S 2 : x ¨ = F s θ m + d x m θ ¨ = M J + d θ J
The control force F is designed for the subsystem (19) to achieve the desired altitude z d . Based on the designed control force F, the control torque M is then designed for the subsystem (20) to achieve the desired position x d . Meanwhile, the attitude θ remains stable. For the convenience of the flight controller design, the stability analysis of the general error dynamics in the presence of unknown perturbations is presented firstly. The altitude and attitude controllers are then designed.

3.1. Stability Analysis of General Error Dynamics

Consider a class of the error system as follows:
e ˙ = A e e + v
where e R n is the error state vector, A e R n × n is a Hurwitz system matrix, and v R n is an unknown perturbation. Assume that the perturbation v satisfies
v v +
where · is the Euclidean 2-norm, and v + > 0 is a known upper bound of the perturbation.
To perform the stability analysis, consider the Lyapunov function candidate of the quadratic form:
V = e T P e
where P = P T > 0 . Taking the time derivative of (23) along the system trajectory (21), it follows that
V ˙ = 2 e T P e ˙ = e T P A e + A e T P e + 2 e T P v
If there exists a feasible solution Q = Q T > 0 to satisfy
P A e + A e T P + Q < 0 ,
then (24) becomes
V ˙ e T Q e + 2 e T P v
From the Cauchy–Schwarz inequality, the term e T P satisfies
e T P e T P
Applying the matrix norm property, the symmetric matrix P can be related to its maximum eigenvalue λ m a x ( P ) ; that is,
P = λ m a x ( P T P ) = λ m a x ( P 2 ) = λ m a x ( P ) 2 = λ m a x ( P )
Based on (28), (27) becomes
e T P λ m a x P e
Rayleigh’s inequality gives λ m i n Q e 2 e T Q e λ m a x Q e 2 . According to Rayleigh’s inequality, (22), and (29), (26) follows with:
V ˙ e T Q e + 2 e T P v λ m i n Q e 2 + 2 λ m a x P e v = λ m i n Q e e 2 λ m a x P λ m i n Q v λ m i n Q e e ε
where
ε = 2 λ m a x P λ m i n Q v +
Equation (30) indicates that the stability is guaranteed when e > ε . However, there is no conclusion when e < ε . Hence, it can be deduced that the error state vector e will approach a region W , i.e.,
e W a s t
where
W = ε
The stability result for the general error system (21) is summarized as follows:
Theorem 1.
Consider the general error system shown in (21). If the unknown perturbation v satisfies the assumption (22) and there exists a feasible solution ( P , Q ) of LMI (25), then it can be guaranteed that the error state vector e will approach a region W described in (33) in the sense of Lyapunov.

3.2. Altitude Proportional-Integral-Derivative Controller Design

Consider the fully-actuated subsystem S 1 shown in (19). Assume that the change rate of disturbance is bounded by
| d ˙ z | d ˙ z +
where d ˙ z + > 0 is a known value. Define the tracking errors e z 1 and e z 2 as
e z 1 = z z d e z 2 = z ˙ z ˙ d
The error dynamics is then obtained:
e ˙ z 1 = e z 2 e ˙ z 2 = F c θ m g + d z m z ¨ d
Design the proportional-integral-derivative (PID) control law as
F = m c θ u z
where
u z = z ¨ d k p z e z 1 k i z 0 t e z 1 ( τ ) d τ k d z e z 2 + g
and the control gain pair ( k p z , k i z , k d z ) > 0 . Substituting the control law (37) into (36) gives the closed-loop system as
e ˙ z 1 = e z 2 e ˙ z 2 = k p z e z 1 k i z 0 t e z 1 ( τ ) d τ k d z e z 2 + d z m
To analyze the stability, define an extended state e z 0 as follows:
e z 0 = 0 t e z 1 ( τ ) d τ d z m k i z
Then, the extended closed-loop system (39) can be described by
e ˙ z = A z e z + v z
where e z = [ e z 0 , e z 1 , e z 2 ] T is the augmented error state vector, v z = [ d ˙ z m k i z , 0 , 0 ] T is the extended disturbance vector, and the closed-loop system matrix is
A z = 0 1 0 0 0 1 k i z k p z k d z ,
respectively.
Obviously, (41) is the standard form of the general error system described in (21). Therefore, by Theorem 1, the design problem is to choose the control gain pair ( k p z , k i z , k d z ) properly such that the matrix A z is Hurwitz. As a consequence, there exists a Lyapunov function V z = e z T P z e z , where P z = P z T > 0 and thereby V ˙ z λ m i n Q z e z e z ε z is achieved, where Q z = Q z T > 0 is the feasible solution of (25):
P z A z + A z T P z + Q z < 0
Moreover, ε z = 2 λ m a x P z λ m i n Q z d ˙ z + m k i z according to (31).
As a result, the tracking error e z will approach a region ε z eventually, i.e.,
e z ε z a s t .
Remark 1.
Note that providing the external disturbance d z satisfies the slow time-varying condition, i.e., d ˙ z 0 , and it can be deduced from (44) that ε 0 and V ˙ z λ m i n ( Q z ) e z 2 , which further implies that the fully-actuated subsystem S 1 is asymptotically stable.

3.3. Position Integral Backstepping Controller Design

Consider the under-actuated subsystem S 2 described in (20). Assume that the disturbances d x and d θ satisfy
| d ˙ x | d ˙ x + | d x | d x + | d θ | d θ +
where d ˙ x + , d x + , and d θ + > 0 are known constants. Since the control force F has already been designed for the subsystem (19) to achieve the desired altitude z d , the control torque M should be further designed for the subsystem (20) to achieve the desired position x d and to keep the attitude θ stable. What follows is the illustration of the integral backstepping controller (IBC) design procedure used to highlight the tracking control problem for such cascade system (20).
Following the similar manners presented in the previous section, define the position tracking errors e x 1 and e x 2 as follows:
e x 1 = x x d e x 2 = e ˙ x 1 = x ˙ x ˙ d
Then, the position tracking error dynamics are given by
e ˙ x 1 = e x 2
e ˙ x 2 = F s θ m + d x m x ¨ d
θ ¨ = M J + d θ J
For the above error dynamics, the position integral backstepping control algorithm is proposed as follows:
Theorem 2.
Consider the error dynamics (47)–(49). The closed-loop system is stable in the sense of bounded input bounded output (BIBO) if there exist the feasible solution of the matrices P x = P x T > 0 and Q x = Q x T > 0 satisfying the following LMIs:
P x A x + A x T P x + Q x < 0
Q x F m a x 2 m 2 k z 1 p 23 x 2 0 0 0 0 0 0 0 0 > 0
where the closed-loop system matrix
A x = 0 1 0 0 0 1 k i x k p x k d x
with the control gains ( k p x , k i x , k d x ) > 0 , and the matrix P x composed by the following specific structure:
P x = P 1 x P 2 x P 2 x T P 3 x
where p 1 x > 0 , P 2 x = [ p 22 x , p 23 x ] R 1 × 2 , P 3 x R 2 × 2 . Then, based on the integral backstepping control algorithm, the control torque is designed as
M = J ( φ ˙ 2 c θ s θ φ 1 k z 2 ( θ ˙ φ 2 ) w sign ( θ ˙ φ 2 ) )
where
φ 2 = 1 c θ φ ˙ 1 2 e x 12 T P 3 x g x 1 k z 1 s θ φ 1
φ 1 = m F u x
u x = x ¨ d k p x e x 1 k i x 0 t e x 1 ( τ ) d τ k d x e x 2
g x 1 = 0 F m T
e x 12 = e x 1 e x 2 T
with the control gains k z 1 > 0 , k z 2 > 0 , and
w = d θ + J + η , η > 0
If the control law (54) is realizable, then the error of (47)–(49) will approach a region ε x z , i.e.,
e x s θ φ 1 ε x z a s t
where
ε x z = λ m a x P x z λ m i n Q x z d ˙ x + m k i x
and
e x = 0 t e x 1 ( τ ) d τ d x m k i x e x 1 e x 2 T
P x z = P x 0 3 × 1 0 1 × 3 1
Q x z = Q x M 2 T M 2 k z 1
M 2 = F m p 23 x 0 0 .
Proof of Theorem 2.
Consider the system state s θ as the virtual control input φ 1 of the inner systems (47) and (48). Design the virtual control φ 1 like the form of (56):
s θ = φ 1 = m u x F
where u x is defined in (57). Replacing s θ in (48) with the virtual control (56) produces the following virtual error system:
e ˙ x 1 = e x 2 e ˙ x 2 = k p x e x 1 k i x 0 t e x 1 ( τ ) d τ k d x e x 2 + d x m
Introduce the extended state e x 0 as
e x 0 = 0 t e x 1 ( τ ) d τ d x m k i x
Then, the virtual error system (68) becomes
e ˙ x = A x e x + v x
where e x = [ e x 0 , e x 12 T ] T = [ e x 0 , e x 1 , e x 2 ] T is the extended position tracking error vector, v x = [ d ˙ x m k i x , 0 , 0 ] T is the extended disturbance vector, and the closed-loop system matrix is revealed in (52). By properly designing the control gain ( k p x , k i x , k d x ) , Theorem 1 indicates that there exists a Lyapunov function V x = e x T P x e x such that
V ˙ x = 2 e x T P x A x e x v x λ m i n Q x e x e x ε x
where the matrices P x = P x T > 0 and Q x = Q x T > 0 are the feasible solution pair of the Lyapunov equation, shown as (50). The error boundary ε x is
ε x = 2 λ m a x P x λ m i n Q x d ˙ x + m k i x
Equation (71) implies that the magnitude of the extended position tracking error vector e x will approach a region described by ε x .
However, s θ is coupled by the system state variable, not a control input. In other words, the virtual control φ 1 in (56) can be realized if s θ = φ 1 can be fulfilled. Towards this aim, define the error variable z 1 as follows:
z 1 = s θ φ 1
Then, the system ( e x , θ ) is transformed into the domain of ( e x , z 1 ) :
e ˙ x = f x + g x φ 1 + g x z 1 + D x
z ˙ 1 = c θ θ ˙ φ ˙ 1
where
f x = e x 1 e x 2 0 , g x = 0 g x 1 = 0 0 F m , D x = d ˙ x m k i x 0 d x m x ¨ d
Apparently, once the error variable z 1 converges to zero, it means that the term s θ converges to the desired virtual control input φ 1 . Then, the error vector e will converge to a region described in (72). Follow the standard steps of the integral backstepping control algorithm, treat θ ˙ in (75) as the virtual control input φ 2 , and then design a proper φ 2 such that the system ( e x , z 1 ) is stable.
Consider the Lyapunov function candidate as follows:
V 1 = V x + 1 2 z 1 2
Taking the time derivative of (77) along the trajectories (74)–(75) and introducing (71), it follows that
V ˙ 1 = 2 e x T P x e ˙ x + z 1 z ˙ 1 = 2 e x T P x f x + g x φ 1 + g x z 1 + D x + z 1 c θ θ ˙ φ ˙ 1 = 2 e x T P x f x + g x φ 1 + D x + 2 e x T P x g x z 1 + z 1 c θ θ ˙ φ ˙ 1 = 2 e x T P x A x e x + 2 e x T P x v x + 2 e x T P x g x z 1 + z 1 c θ θ ˙ φ ˙ 1
Consider the specific structure of P x shown in (53), and then (78) becomes
V ˙ 1 = 2 e x T P x A x e x + 2 e x T P x v x + 2 e x 0 e x 12 T P 1 x P 2 x P 2 x T P 3 x 0 g x 1 z 1 + z 1 c θ θ ˙ φ ˙ 1 = e x T Q x e x + 2 e x T P x v x + 2 e x 0 P 2 x g x 1 z 1 + e x 12 T P 3 x g x 1 z 1 + z 1 c θ θ ˙ φ ˙ 1 = e x T Q x e x + 2 e x T P x v x + 2 e x 0 P 2 x g x 1 z 1 + z 1 c θ θ ˙ φ ˙ 1 + 2 e x 12 T P 3 x g x 1
Design a virtual control input θ ˙ = φ 2 like (55). Substituting (55) into (79) gives
V ˙ 1 = e x T Q x e x + 2 e x T P x v x + 2 e x 0 P 2 x g x 1 z 1 k z 1 z 1 2 = e x T Q x e x + 2 e x T P x v x + 2 e x 0 p 23 x F m z 1 k z 1 z 1 2 = e x z 1 T Q x M 2 T M 2 k z 1 Q x z e x z 1 + e x z 1 T P x 0 3 × 1 0 1 × 3 1 P x z v x 0 = e x z 1 T Q x z e x z 1 + e x z 1 T P x z v x 0
Based on the Schur complement [32], Q x z > 0 is guaranteed if and only if
Q x > 0 and Q x M 2 T k z 1 1 M 2 > 0
or, equivalently,
Q x > 0 and Q x F 2 m 2 k z 1 p 23 x 2 0 0 0 0 0 0 0 0 > 0
In the sense of the worst-case design, replacing F in (82) with F m a x yields (51).
If there exist the feasible matrices P x and Q x to fulfill (50) and (51), as mentioned in (30), (80) is governed by
V ˙ 1 λ m i n Q x z e x z 1 e x z 1 ε x z
where ε x z is shown as (62). Equation (83) shows that the system ( e x , z 1 ) is stable in the sense of BIBO. As a result, the error vector will approach a region ε x z eventually. As mentioned earlier, θ ˙ is the system state, not a control input that can be directly assigned. Thus, define the error variable
z 2 = θ ˙ φ 2 .
Then, the system ( e x , z 1 , θ ˙ ) described in (74) and (75) can be transformed into the domain of ( e x , z 1 , z 2 ) :
e ˙ x = f x + g x φ 1 + g x z 1 + D x
z ˙ 1 = c θ φ 2 + z 2 φ ˙ 1
z ˙ 2 = M J + d θ J φ ˙ 2
The objective is to seek the control torque M so that the overall error systems (85)–(87) are stable. Consider the composite Lyapunov function candidate as
V = V 1 + 1 2 z 2 2 = e x T P x e x + 1 2 z 1 2 + 1 2 z 2 2
Taking the time derivative of (88) along the system trajectories (85)–(87) and introducing (80) and (83), it follows that
V ˙ = 2 e x T P x e ˙ x + z 1 z ˙ 1 + z 2 z ˙ 2 = 2 e x T P x f x + g x φ 1 + g x z 1 + D x + z 1 c θ φ 2 + z 2 φ ˙ 1 + z 2 z ˙ 2 = 2 e x T P x f x + g x φ 1 + D x + z 1 c θ φ 2 φ ˙ 1 + 2 e x T P x g x + z 2 z ˙ 2 + c θ z 1 = 2 e x T P x A x e x + v x + z 1 c θ φ 2 φ ˙ 1 + 2 e x T P x g x λ m i n Q x z e x z 1 e x z 1 ε x z + z 2 M J + d θ J φ ˙ 2 + c θ z 1 λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 + z 2 M J + d θ J φ ˙ 2 + c θ z 1
Designing the control torque M like (54), substituting (54) into (89) yields
V ˙ λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 + z 2 J φ ˙ 2 c θ z 1 k z 2 z 2 w sign z 2 J + d θ J φ ˙ 2 + c θ z 1 λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 + z 2 φ ˙ 2 c θ z 1 k z 2 z 2 w sign z 2 + d θ J φ ˙ 2 + c θ z 1 λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 k z 2 z 2 2 + z 2 w sign z 2 + d θ J λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 k z 2 z 2 2 w z 2 sign z 2 + z 2 d θ J λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 k z 2 z 2 2 w | z 2 | + | z 2 | | d θ J | λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 k z 2 z 2 2 | z 2 | w d θ + J
By choosing w which is shown in (60), (90) meets
V ˙ λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 k z 2 z 2 2 η | z 2 |
and consequently V ˙ < 0 if
e x z 1 E 1
where
E 1 = e x z 1 R 4 × 1 : e x z 1 ε x z
The control force (37) can be realized because it depends on the system states and parameters only. However, the control torque proposed in (54) needs the information of φ ˙ 1 and φ ˙ 2 . Refs. [9,12,13] perform the numerical differentiation to estimate φ ˙ 1 and φ ˙ 2 from φ 1 and φ 2 , and then apply the low-pass filter to inhibit the effects of the measurement noise. However, a phase delay will be induced inevitably due to the use of a low-pass filter. Instead of taking the numerical differentiation, in this study, an analytical form of the position integral backstepping controller is proposed. The associated detailed derivations are presented in the next section.

3.4. Proposed Analytic Form of the Proposed Position Integral Backstepping Controller

The analytic form of φ ˙ 1 and φ ˙ 2 will be obtained by introducing the system dynamics (9)–(11). Then, split the terms φ ˙ 1 and φ ˙ 2 into a disturbance-independent compensable term and a disturbance-dependent term, respectively. By utilizing the compensable terms to construct φ ˙ 1 and φ ˙ 2 , the control chattering due to the differentiation of the noise can be avoided significantly. For readability, the results of the proposed analytic integral backstepping controller (AIBC) are summarized in the following theorem; afterward, the comments and proofs are provided.
Theorem 3.
Consider the systems (47)–(49). The IBC (54) presented in Theorem 2 is modified by the following analytic form, namely AIBC:
M = J c θ 3 F 2 c θ 3 F 2 + m 2 s θ u x u z φ ˙ 2 , 0 c θ s θ φ 1 k z 2 θ ˙ φ 2 w sign θ ˙ φ 2
where
φ ˙ 2 , 0 = 1 c θ φ ¨ 1 , 0 , 0 2 e x 12 T P 3 x 0 F ˙ 0 m 2 g x 1 T P 3 x e x 2 F s θ m x ¨ d k z 1 c θ θ ˙ φ ˙ 1 , 0 + s θ θ ˙ c θ 2 φ ˙ 1 , 0 2 e x 12 T P 3 x g x 1 k z 1 s θ φ 1
φ 2 = 1 c θ φ ˙ 1 , 0 , 0 2 e x 12 T P 3 x g x 1 k z 1 s θ φ 1
φ 1 = m F x ¨ d k p x e x 1 k i x 0 t e x 1 ( τ ) d τ k d x e x 2
φ ¨ 1 , 0 , 0 = m u ¨ x , 0 F + m 2 u x F ˙ 0 2 F 3 m u x F ¨ 0 F 2 m 2 u ˙ x , 0 F ˙ 0 F 2
φ ˙ 1 , 0 = m F u ˙ x , 0 u x F ˙ 0 F 2
F ¨ 0 = m u ¨ z , 0 , 0 c θ + θ ˙ 2 u z c θ + 2 θ ˙ 2 s θ 2 u z c θ 3 + 2 θ ˙ s θ u ˙ z , 0 c θ 2
u ¨ x , 0 , 0 = x d ( 4 ) k p x F s θ m x ¨ d k i z e x 2 k d x F ˙ 0 s θ + F c θ θ ˙ m x d ( 3 )
u ¨ z , 0 , 0 = z d ( 4 ) k p z F c θ m g z ¨ d k i z e z 2 k d z F ˙ 0 c θ F s θ θ ˙ m z d ( 3 )
F ˙ 0 = m c θ u ˙ z , 0 + u z s θ θ ˙ c θ 2
u ˙ z , 0 = z d ( 3 ) k p z e z 2 k i z e z 1 k d z F c θ m g z ¨ d
u ˙ x , 0 = x d ( 3 ) k p x e x 2 k i x e x 1 k d x F s θ m x ¨ d
The terms e x 12 , g x 1 , P 3 x , u z , and u x are the same as given in (38), (53), (57), (58), and (59), respectively. The corresponding control gains ( k p z , k i z , k d z , k p x , k i x , k d x ) > 0 , and
w = d θ + J + M + + η 1 , η 1 > 0
where M + > 0 is the upper bound of the absolute value of those disturbance-dependent non-compensable terms. Notice that φ 2 in (96) is different from (55). The control law (94) guarantees that the extended error vector e = [ e x T , z 1 ] T will approach a region ε x z 0 , i.e.,
e x z 1 ε x z 0 a s t
where
ε x z 0 = λ m a x P x z λ m i n Q x z d ˙ x + m k i x 2 + k d x d x + F m i n + k d z d z + c θ + F m i n | φ 1 | 2
and θ + is the upper bound of the attitude angle θ, that is,
| θ | θ +
It is assumed that the upper bound θ + < π / 2 during the flight mission.
Proof of Theorem 3 .
When realizing the IBC (54), it can be found from (55) that φ ˙ 2 requires second derivatives of φ 1 . From (56), it implies that the information of F is needed to construct φ 1 . In other words, to derive the analytic form of IBC (54), namely AIBC, it is necessary to compute the first and second derivatives of F and φ 1 , respectively. Next, construct φ ˙ 2 such that the analytic form of IBC (54) can be obtained. When performing the time derivatives, the appeared terms x ¨ , z ¨ , and θ ¨ are replaced by the system dynamic equations (9)–(11). The terms correlated to the disturbance will be expressed as a unified variable starting with , and the remaining terms can be compensated since it is state-dependent, which is denoted as the subscript 0. Finally, the AIBC is constructed in terms of state-dependent terms only.
As mentioned above, to obtain the first derivative of F and φ 1 , differentiate u z in (38) and u x in (57) as follows:
u ˙ z = u ˙ z , 0 + u z , 0 u ˙ x = u ˙ x , 0 + u x , 0
where u ˙ z , 0 is shown in (104), u ˙ x , 0 is shown in (105), and
u z , 0 = k d z d z m u x , 0 = k d x d x m ,
respectively. Thus, the time derivatives of F in (37) and φ 1 in (97) are
F ˙ = F ˙ 0 + F 0
φ ˙ 1 = φ ˙ 1 , 0 + φ 1 , 0
where F ˙ 0 is shown as (103), φ ˙ 1 , 0 as shown in (99), and
F 0 = k d z d z c θ
φ 1 , 0 = k d x d x F m u x k d z d z c θ F 2 = k d x d x F k d z d z c θ F φ 1
respectively.
According to (109), φ 1 , 0 satisfies
| φ 1 , 0 | k d x d x + F m i n + k d z d z + c θ + F m i n | φ 1 |
Replacing φ ˙ 1 in (55) with φ ˙ 1 , 0 , it follows that
θ ˙ = φ 2 = 1 c θ φ ˙ 1 , 0 2 e x 12 T P 3 x g x 1 k z 1 z 1
Substituting (117) into (79) gives
V ˙ 1 = e x T Q x e x + 2 e x T P x v x + 2 e x 0 P 2 x g x 1 z 1 k z 1 z 1 2 + z 1 φ 1 , 0 = e x T Q x e x + 2 e x T P x v x + 2 e x 0 p 23 x F m z 1 k z 1 z 1 2 + z 1 φ 1 , 0 = e x z 1 T Q x M 2 T M 2 k z 1 e x z 1 + e x z 1 T P x 0 3 × 1 0 1 × 3 1 v x φ 1 , 0 = e x z 1 T Q x z e x z 1 + e x z 1 T P x z v x φ 1 , 0 λ m i n Q x z e x z 1 e x z 1 ε x z 0
where ε x z 0 is shown in (108). To obtain φ ¨ 1 , 0 and F ¨ 0 , taking the time derivative of u ˙ x , 0 in (105) and u ˙ z , 0 in (104) as follows:
u ¨ z , 0 = u ¨ z , 0 , 0 + u z , 1 u ¨ x , 0 = u ¨ x , 0 , 0 + u x , 1
where u ¨ z , 0 , 0 is shown in (102), u ¨ x , 0 , 0 is given by (101), and
u z , 1 = k p z d z m k d z F 0 c θ m u x , 1 = k p x d x m k d x F 0 s θ m ,
respectively.
Taking the time derivative of F ˙ 0 in (103) yields
F ¨ 0 = F ¨ 0 , 0 + F M M + F 1
where M is the AIBC to be determined later, F ¨ 0 , 0 is shown as (100), and
F M = m s θ u z J c θ 2 F 1 = m u z , 1 c θ + m d θ s θ u z J c θ 2
Substituting F ¨ 0 in (121) into the time derivative of φ ˙ 1 , 0 in (99) gives
φ ¨ 1 , 0 = m u ¨ x , 0 , 0 + u x , 1 F u ˙ x , 0 F ˙ 0 F 2 u ˙ x , 0 F 0 F 2 m u ˙ x , 0 + u x , 0 F ˙ 0 + u x F ¨ 0 , 0 + F M M + F 1 F 2 2 u x F ˙ 0 F ˙ 0 + F 0 F 3 = φ ¨ 1 , 0 , 0 + φ 1 , 1 m u x F M M F 2
where φ ¨ 1 , 0 , 0 is shown as (98) and
φ 1 , 1 = m u x , 1 F + m 2 u x F ˙ 0 F 0 F 3 m u x F 1 F 2 m u x , 0 F ˙ 0 + u ˙ x , 0 F 0 F 2
Taking the time derivative of φ 2 in (96) gives
φ ˙ 2 = d d t 1 c θ φ ˙ 1 , 0 2 e x 12 T P 3 x g x 1 k z 1 z 1 = 1 c θ φ ¨ 1 , 0 , 0 + φ 1 , 1 m u x F M M F 2 2 e x 12 T P 3 x 0 F ˙ 0 + F 0 m 2 g x 1 T P 3 x e x 2 F s θ m + d x m x ¨ d k z 1 c θ θ ˙ φ ˙ 1 , 0 φ 1 , 0 + s θ θ ˙ c θ 2 φ ˙ 1 , 0 2 e x 12 T P 3 x g x 1 k z 1 z 1 = 1 c θ φ ¨ 1 , 0 , 0 2 e x 12 T P 3 x 0 F ˙ 0 m 2 g x 1 T P 3 x e x 2 F s θ m x ¨ d k z 1 c θ θ ˙ φ ˙ 1 , 0 φ ˙ 2 , 0 a + s θ θ ˙ c θ 2 φ ˙ 1 , 0 2 e x 12 T P 3 x g x 1 k z 1 z 1 φ ˙ 2 , 0 b m u x F M M c θ F 2 + 1 c θ φ 1 , 1 2 e x 12 T P 3 x 0 F 0 m 2 g x 1 T P 3 x 0 d x m + k z 1 φ 1 , 0 Δ φ 2 , 0 = φ ˙ 2 , 0 + φ 2 , 0 m u x F M M c θ F 2
where φ ˙ 2 , 0 = φ ˙ 2 , 0 a + φ ˙ 2 , 0 b is described in (95) and
φ 2 , 0 = 1 c θ φ 1 , 1 2 e x 12 T P 3 x 0 F 0 m 2 g x 1 T P 3 x 0 d x m + k z 1 φ 1 , 0 ,
respectively.
Consider the composite Lyapunov function candidate in (88). Taking the time derivative of (88) along the system trajectories (85)–(87) and introducing (118) and (125) leads to
V ˙ = 2 e x T P x e ˙ x + z 1 z ˙ 1 + z 2 z ˙ 2 = 2 e x T P x A x e x + v x + z 1 c θ φ 2 φ ˙ 1 + 2 e x T P x g x λ m i n Q x z e x z 1 e x z 1 ε x z 0 + z 2 M J + d θ J φ ˙ 2 + c θ z 1 λ m i n Q x z e x z 1 e x z 1 ε x z 0 k z 1 z 1 2 + z 2 M J + d θ J φ ˙ 2 , 0 φ 2 , 0 + m u x F M M c θ F 2 + c θ z 1 λ m i n Q x z e x z 1 e x z 1 ε x z 0 k z 1 z 1 2 + z 2 c θ F 2 + J m u x F M J c θ F 2 M + d θ J φ ˙ 2 , 0 φ 2 , 0 + c θ z 1
Hence, design the control torque M as follows:
M = J c θ F 2 c θ F 2 + J m u x F M φ ˙ 2 , 0 c θ z 1 k z 2 z 2 w sign z 2 = J c θ F 2 c θ F 2 + J m u x m s θ u z J c θ 2 φ ˙ 2 , 0 c θ z 1 k z 2 z 2 w sign z 2
Collating (128) gives the AIBC algorithm shown in (94).
Substituting (94) into (127) yields
V ˙ λ m i n Q x z e x z 1 e x z 1 ε x z 0 k z 1 z 1 2 + z 2 d θ J φ 2 , 0 k z 2 z 2 w sign z 2 λ m i n Q x z e x z 1 e x z 1 ε x z 0 k z 1 z 1 2 k z 2 z 2 2 w z 2 sign z 2 + z 2 d θ J φ 2 , 0
Assume that φ 2 , 0 in (126) is bounded and satisfies
| φ 2 , 0 | M +
Then, (129) can be rewritten as
V ˙ λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 k z 2 z 2 2 w | z 2 | + | z 2 | | d θ + J + M + | λ m i n Q x z e x z 1 e x z 1 ε x z k z 1 z 1 2 k z 2 z 2 2 | z 2 | w d θ + J M +
Therefore, by choosing w shown in (106), (131) becomes
V ˙ λ m i n Q x z e x z 1 e x z 1 ε x z 0 k z 1 z 1 2 k z 2 z 2 2 η 1 | z 2 |
As a result, the subsystem S 2 ( e x , z 1 , z 2 ) is stable if
e x z 1 E 2
where
E 2 = e x z 1 R 4 : e x z 1 ε x z 0
Equations (108) and (132) reveal that the asymptotic stability is guaranteed when the disturbances d x and d z vanish. There are several ways to improve the tracking performance, integral gain k i x , or considering larger F m i n .
In practical scenarios, the measured states are always contaminated with the measurement noise. The advantage of the proposed AIBC is that it avoids differentiating the virtual controls φ 1 and φ 2 directly. An analytic form of φ ˙ 2 is provided by (95), which consists of measurable states without any numerical differentiation. A smoother control signal is thus obtained. Meanwhile, the proposed AIBC is less prone to inducing control signal saturation since it does not amplify noise effects induced by numerical differentiation. In other words, the proposed AIBC allows higher control gain to suppress the error boundary ε x z .
According to the actuator configuration, there exist upper bounds for the control inputs, which implies that the system states are bounded. Therefore, one can deduce that there exists a positive value M + to satisfy (130) so that the state-disturbance coupled terms Δ ϕ 2 , 0 in (126) are bounded.
In the design of the IBC (54) and the proposed AIBC (94), the signum function is introduced to reject the matched perturbations. In fact, (54) and (94) can be further interpreted as the sliding mode controllers. The existence proofs of the sliding modes for the IBC and the AIBC are derived in Appendix B.
Remark 2.
The derivation procedures of the proposed AIBC for the extension to the 6-DoF drone are described as follows: (i) First of all, the 6-DoF quadrotor model will be divided into an underactuated subsystem and a fully actuated one, as shown in (19) and (20), respectively. Generally, the underactuated subsystem consists of the translation dynamics ( X , Y ) and the roll and pitch dynamics ( ϕ , θ ) . As for the fully actuated subsystem, it contains the altitude dynamics Z and yaw dynamics ψ. (ii) Next, apply the integral backstepping control algorithm to derive the position control law, similar to Section 3.2 and Section 3.3. (iii) Finally, follow the procedures from Section 3.4 to introduce the system dynamics to obtain the analytic form of the position integral backstepping controller derived in the previous step.

4. Numerical Simulations

In the following simulations, the fourth-order Runge–Kutta (RK4) algorithm with a step size of 0.001 seconds is applied in the Matlab environment. The system starts from rest, and the desired flight trajectory is generated from the start point ( x d , z d ) = ( 0 , 0 ) to the end point ( x d , z d ) = ( 1 , 1 ) through a command pre-filter, which guarantees the continuity of the associated flight profiles. The profiles of x d and its successive derivatives are shown in Figure 2, where z d uses the trajectory generation scheme. The system parameters are summarized in Table 2.
The altitude controller is constructed from (37). For comparison, three different position controllers are used:
  • Cascade PID controller (CPID). The cascade PID control presented in Appendix A is used;
  • Integral backstepping controller (IBC). The position integral backstepping controller derived from Theorem 2 is used, where the time derivatives of the virtual controls, φ ˙ 1 and φ ˙ 2 , are calculated by the approximated differentiator (APD) as illustrated in Appendix A;
  • Analytic integral backstepping controller (AIBC). The proposed analytic integral backstepping controller presented in Theorem 3 is applied.
For CPID, the control gains are k p x = k p z = 24 , k i x = k i z = 18 , k d x = k d z = 9.5 , k p θ = 36 , k i θ = 42 , and k d θ = 10.5 , respectively. The feasible solution pair ( P θ , Q θ ) that satisfies (A13) is
P θ = 2.2220 0.9223 0.0183 0.9223 1.1954 0.0441 0.0183 0.0441 0.0241 , Q θ = 0.7706 0.1506 0.1413 0.1506 0.6885 0.0646 0.1413 0.0646 0.2089
For IBC, the control gains are k z 1 = 10 , k z 2 = 5 , k p x = k p z = 24 , k i x = k i z = 18 , and k d x = k d z = 9.5 , respectively. The resulting feasible solution pair ( P z , Q z ) that satisfies (43) is
P z = 1.3252 0.2021 0.0348 0.2021 1.1050 0.0442 0.0348 0.0442 0.0335 , Q z = 0.6258 0.1520 0.3657 0.1520 0.8575 0.0420 0.3657 0.0420 0.2742
The feasible solution pair ( P x , Q x ) that satisfies (50) is
P x = 1.3252 0.2021 0.0348 0.2021 1.1050 0.0442 0.0348 0.0442 0.0335 , Q x = 0.6258 0.1520 0.3657 0.1520 0.8575 0.0420 0.3657 0.0420 0.2742
According to (53), the matrix P 3 x is
P 3 x = 1.1050 0.0442 0.0442 0.0335
The switching gain in IBC w = 18 > 1.2 max ( d θ ) J = 16.69 is used to fulfill (60). The proposed AIBC is not sensitive to measurement noise. Therefore, higher control gains for the position loop in x-direction are considered to inhibit the effects of disturbances. The control gains are k z 1 = 10 , k z 2 = 5 , k p z = 24 , k i z = 18 , k d z = 9.5 , k p x = 242 , k i x = 720 , and k d x = 27 , respectively. The corresponding feasible solution pair ( P x , Q x ) is
P x = 15.8665 3.1698 0.0062 3.1698 1.5796 0.0220 0.0062 0.0220 0.0046 , Q x = 4.4330 0.7453 0.1592 0.7453 2.1634 0.0629 0.1592 0.0629 0.1025
From (53), the matrix P 3 x is
P 3 x = 1.5796 0.0220 0.0220 0.0046
Assume M + = 2.5 in AIBC; then, w = 20 > 1.2 m a x ( d θ ) + J + M + = 19.61 is used to satisfy (106). The step-wise procedures to implement the control law are briefly summarized as follows:
1.
Given the desired position and altitude trajectory x d , z d , and their successive derivatives, ( x ˙ d , x ¨ d , x d ( 3 ) , x d ( 4 ) ) and ( z ˙ d , z ¨ d , z d ( 3 ) , z d ( 4 ) ) ;
2.
Given the control gain pair ( k p z , k i z , k d z ) , then determine the control force F from (37);
3.
Determine the control torque M:
(a)
For CPID, calculate the desired attitude θ d from (57) and (A3). Then, the control torque is obtained from (A7). It should be noticed that the derivative of desired attitude, θ ˙ d and θ ¨ d , is obtained by using the APD to θ d ;
(b)
For IBC, given the control gain pair ( k p x , k i x , k d x ) , solve the LMI (50) and then verify (51). Then, the control torque can be obtained from (54). It should be noticed that the derivative of virtual controls, φ ˙ 2 and φ ˙ 1 , is obtained by using the APD from φ 2 and φ 1 , respectively;
(c)
For AIBC, given the control gain pair ( k p x , k i x , k d x ) , solve the LMI (50) and then verify (51). Then, the control torque can be obtained from (94) so that the related quantities can be found in (95)–(105) accordingly;
4.
Based on the calculated control force and control torque, compute the desired motor speed from (2);
5.
Feed the desired speed to BLDC to generate the computed controls ( F , M ) .
The simulation results are shown in Figure 3, Figure 4, Figure 5, Figure 6, Figure 7, Figure 8, Figure 9, Figure 10 and Figure 11. The evolution of external disturbances is shown in Figure 3. Figure 3a,b depicted the time-varying disturbances and the state-dependent viscous drags, respectively. Figure 3a implies that the properties of external disturbances are max ( | f x | ) = 0.2243 , max ( | f z | ) = 0.2612 , max ( | f θ | ) = 0.049 , max ( | f ˙ x | ) = 0.3321 , max ( | f ˙ x | ) = 0.2938 , and max ( | f ˙ θ | ) = 0.056 . The zero-mean Gaussian white noise with variances of 10 3 and 10 5 are considered for the measurement noise of ( x , x ˙ , z , z ˙ ) and ( θ , θ ˙ ) , respectively. The measured and actual states are illustrated in Figure 4. The actual states are collected from the integral of the system dynamics based on different control approaches. The measured states are the actual states that add the measurement noise, which will be used in the feedback control process. For the CPID, the APD is used for estimating the desired angular velocity θ ˙ d and the desired angular acceleration θ ¨ d from desired attitude θ d defined in (A3). For IBC, the APD is utilized to estimate the time derivative of virtual controls, that is, estimate φ ˙ 1 and φ ˙ 2 from φ 1 and φ 2 by the APD. Both APDs with a cutoff frequency of 10 Hz are considered. On the contrary, regarding the proposed AIBC, it does not need to use the APD since the time derivatives of the virtual controls are acquired by the analytic approach.
The comparison of tracking performance for different approaches is revealed in Figure 5 and Figure 6, respectively. The corresponding root–mean–square error (RMSE) of the resulting tracking errors is summarized in Table 3. The results reveal that the proposed AIBC has the best tracking performance compared with the CPID and IBC. In fact, due to the numerical differentiations, the rotor speeds of CPID and IBC are saturated, which may induce flight instability.
Figure 7, Figure 8 and Figure 9 compare the computed and truly allowed controls for CPID, IBC, and AIBC, respectively. In Figure 7a, the computed force and torque both are denoted as a green line and are obtained from (37) and (A7); in Figure 8a, the computed force and torque both are denoted as a green line and are obtained from (37) and (54); the control laws shown in Figure 9a are obtained from (37) and (94), respectively. From the actuator configuration, the square of the computed rotor speed is computed from (4). Note that negative rotor speeds are not allowed in the practical scenarios. To meet the real situation, the negative rotor speed will be saturated by Ω m i n and then, by (2), the truly allowed control force and torque are generated by the rotor speeds reversely, as shown in Figure 7a, Figure 8a, and Figure 9a with a brown line, magenta line, and blue line, respectively. It can be found that the computed controls cannot be achieved due to the control signal saturation. The root of the matter is the amplified control signal due to differentiating the noisy feedback states. A similar phenomenon can be observed in Figure 8. In contrast to CPID and IBC, the proposed AIBC avoids the numerical differentiation and thereby the AIBC without inducing the control signal saturation. The computed and truly allowed controls are matched as shown in Figure 9a. Figure 10 compares the computed controls for different approaches. The results reveal that the proposed AIBC has a smooth-feasible profile, which is helpful for controller implementations.
Figure 11 shows the virtual controls of the IBC and AIBC. Results indicate that the control chattering can be significantly reduced by utilizing the proposed AIBC rather than using IBC with APD. Meanwhile, the proposed AIBC enables allowing larger control gains to improve the trajectory tracking performance because it without involves any numerical differentiation. It is worth pointing out that applying larger control gains will induce more series control chattering since the numerical differentiation is used for estimating the time derivative of virtual controls. In summary, the proposed AIBC has a smoother profile, which is superior from a control realization point of view.

5. Conclusions

In this paper, an integral backstepping control algorithm called AIBC is proposed for the quadrotor trajectory tracking demands. The related stability analysis based on the Lyapunov theory in the presence of matched as well as mismatched disturbances is also presented. Compared with the conventional cascade control algorithm, the proposed control algorithm has a better tracking performance since the developed methods consider the dynamics of the position loop and the attitude loop simultaneously. Moreover, the analytic form of the virtual control laws is derived. To alleviate the noise amplification issue, the analytic method avoids the use of numerical differentiation of the virtual control law. As a consequence, a smoother control signal can be obtained from the proposed analytic solution. In summary, the proposed AIBC control algorithm has better trajectory tracking performance and is able to generate reasonable/realizable control signals. Moreover, control saturation can be avoided as well. Simulation results reveal the effectiveness and feasibility of the presented control algorithm. The proposed methodology can be extended to a 6-DoF position control of quadrotor systems. In addition, the model uncertainties will be taken into the control design considerations in our future advanced studies.

Author Contributions

Conceptualization, C.-C.P.; methodology, Y.-R.L. and C.-C.P.; software, C.-C.C.; validation, C.-C.C.; formal analysis, Y.-R.L., C.-C.C. and C.-C.P.; investigation, C.-C.C.; resources, C.-C.P.; data curation, Y.-R.L.; writing—original draft preparation, Y.-R.L. and C.-C.C.; writing—review and editing, Y.-R.L. and C.-C.P.; visualization, C.-C.C.; supervision, C.-C.P.; project administration, C.-C.P.; funding acquisition, C.-C.P. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Ministry of Science and Technology under Grant No. MOST 111-2221-E-006-170 and MOST 111-2923-E-006-004-MY3.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Derivation of Conventional Cascade PID Flight Controller

One of the control methodologies for quadrotor positioning control is conventional cascade control. The cascade control designs the position controller and attitude controller separately [21]. The tracking error of the position loop will be turned into the desired attitude command and fed through it to the attitude loop. For this algorithm, the transient response of the attitude loop is ignored. However, due to the imperfections of modeling and sensing, there always exist tracking errors in the attitude loop. It leads to the precision of the positioning being limited to the tracking performance of the attitude loop. In the following, the algorithm of the conventional cascade control is presented.
Consider the x-direction dynamics of the under-actuated subsystem shown in (20):
x ¨ = F s θ m + d z m
where F has been assigned for the altitude tracking; let θ = θ d be the desired attitude such that the desired dynamics of (A1) can be compensated. Hence, (A1) becomes
x ¨ = F s θ d m + d z m
Design s θ d in the form of (56); by inverse mapping, the desired attitude is then obtained:
θ d = sin 1 m u x F
To fulfill the state limitation (109), the saturation of desired attitude command | θ d | θ + is imposed. If (A3) can be achieved, it has been proven from (56)–(71) that the tracking error of the position loop is bounded by (72). The desired angular velocity θ ˙ d and the desired angular acceleration θ ¨ d are obtained by the approximated differentiator (APD) [21]. The transfer function of APD is given by
T ( s ) = s ϵ s + 1
where ϵ = 1 2 π f c is the time constant, and f c is the cutoff frequency.
In that follows, the attitude controller is designed to track the desired attitude. Define the tracking errors
e θ 1 = θ θ d e θ 2 = θ ˙ θ ˙ d
Then, the error dynamics are
e ˙ θ 1 = e θ 2 e ˙ θ 2 = M J + d θ J θ ¨ d
Design the control torque M as
M = J θ ¨ d k i θ 0 t e z 1 ( τ ) d τ k p θ e θ 1 k d θ e θ 2
where the control pairs ( k p θ , k i θ , k d θ ) > 0 . Substituting (A7) into (A6) gives the closed-loop dynamics as follows:
e ˙ θ 1 = e θ 2 e ˙ θ 2 = k p θ e θ 1 k i θ 0 t e θ 1 ( τ ) d τ k d θ e θ 2 + d θ J
Define the virtual extended state e θ 0 as
e θ 0 = 0 t e θ 1 ( τ ) d τ d θ J k i θ
Then, the closed-loop dynamics (A8) can be written as
e ˙ θ = A θ e θ + v θ
where e θ = [ e θ 0 , e θ 1 , e θ 2 ] T is the augmented error vector, v θ = [ d ˙ θ J k i θ , 0 , 0 ] T is the augmented disturbance vector, and the closed-loop system matrix is
A θ = 0 1 0 0 0 1 k i θ k p θ k d θ
Applying Theorem 1, it can be concluded that the attitude tracking error e θ will approach a region ε θ , i.e.,
e θ ε θ , ε θ = 2 λ m a x P θ λ m i n Q θ d ˙ θ + J k i θ , as t
where the matrices P θ = P θ T > 0 and Q θ = Q θ T > 0 are the feasible solution of
P θ A θ + A θ T P θ + Q θ < 0
Equation (A12) reveals that the asymptotic stability cannot be guaranteed due to the external disturbance d ˙ θ . It means that the desired attitude (A3) cannot be realized perfectly, resulting in the precision of position tracking decreases.

Appendix B. Existence Proof of Sliding Mode

In the sense of the sliding mode control, the error variable z 2 defined in (84) can be interpreted as the sliding surface. The control laws (54) and (94) are the sliding mode controller because they enable forcing the system states to reach the sliding surface z 2 . Consider the sliding dynamics (87), and select a Lyapunov function candidate as
V z 2 = 1 2 z 2 2
Taking the time derivative of (A14) along the trajectory (87), it follows that
V ˙ z 2 = z 2 z ˙ 2 = z 2 M J + d θ J φ ˙ 2
In what follows, the IBC (54) and AIBC (94) will be respectively substituted into (A15) to show the approaching condition. First, substituting (54) into (A15) obtains
V ˙ z 2 = z 2 φ ˙ 2 c θ s θ φ 1 k z 2 θ ˙ φ 2 w sign z 2 + d θ J φ ˙ 2 = z 2 c θ z 1 k z 2 z 2 w sign z 2 + d θ J = k z 2 z 2 2 w | z 2 | + z 2 c θ z 1 + d θ J k z 2 z 2 2 w | z 2 | + | z 2 | | c θ z 1 | + d θ + J k z 2 z 2 2 | z 2 | w | c θ z 1 | d θ + J
Equation (A16) indicates that the approaching condition is fulfilled by choosing the switching gain shown in (60), which η should be
η = | c θ z 1 | + η ˜ .
Then, (A16) becomes
V ˙ z 2 k z 2 z 2 2 η ˜ | z 2 |
where η ˜ > 0 is a parameter to be designed. Therefore, the sliding surface z 2 exponentially converges to zero within the finite time t f . With the aid of (A14) and (A18), the finite time can be solved by
t f 1 k z 2 ln 1 + k z 2 η ˜ | z 2 ( 0 ) |
For (A17), it guarantees that the approaching condition is satisfied for any initial condition; then, the sliding dynamics (87) converge to zero within the finite time described in (A19). In fact, the control parameter η > 0 can be arbitrarily assigned since the stability of the overall systems (47)–(49) has been guaranteed by (88) and (91). In the presence of mismatched disturbances, the switching gain (60) for any η > 0 does not guarantee the approaching condition z ˙ 2 z 2 < 0 . However, when the disturbances vanish, the state θ and z 1 will converge until the condition η | c θ z 1 | > 0 such that the approaching condition holds. Eventually, the sliding motion occurs.
Next, we are going to analyze the approaching condition for the proposed AIBC (94). According to (125), replacing φ ˙ 2 in (A15) with φ ˙ 2 , 0 + φ 2 , 0 m u x F M M c θ F 2 , it follows that
V ˙ z 2 = z 2 z ˙ 2 = z 2 M J + d θ J φ ˙ 2 , 0 + φ 2 , 0 m 2 s θ u x u z M c θ F 2 = z 2 1 J + m 2 s θ u x u z c θ F 2 M + d θ J φ ˙ 2 , 0 + φ 2 , 0 = z 2 c θ F 2 + s θ u x u z J c θ F 2 M + d θ J φ ˙ 2 , 0 φ 2 , 0
Substituting (94) into(A20) yields
V ˙ z 2 = z 2 φ ˙ 2 , 0 c θ z 1 k z 2 z 2 w sign z 2 + d θ J φ ˙ 2 , 0 φ 2 , 0 = z 2 c θ z 1 k z 2 z 2 w sign z 2 + d θ J φ 2 , 0 = k z 2 z 2 2 w | z 2 | + z 2 c θ z 1 + d θ J φ 2 , 0 k z 2 z 2 2 w | z 2 | + | z 2 | | c θ z 1 | + d θ + J + M + k z 2 z 2 2 | z 2 | w | c θ z 1 | d θ + J M +
Therefore, by designing η in (106) as
η = | c θ z 1 | + d θ + J + M + + η ˜ ,
then (A21) becomes
V ˙ z 2 k z 2 z 2 2 η ˜ | z 2 |
for η ˜ > 0 . As mentioned above, (A22) guarantees that the approaching condition is fulfilled for any initial condition. However, the systems (47)–(49) are still stable for any η > 0 . It has been proven in (88) and (132). In the absence of mismatched disturbances, the system states converge. It implies that the η | c θ z 1 | M + > 0 will be satisfied, and then the approaching condition is fulfilled. Eventually, the sliding motion occurs.
Introducing the signum function makes it possible to reject the matched disturbance. Meanwhile, the price of robustness is the chattering phenomenon of the control signal. To avoid the chattering caused by the signum function in the control law, the saturation function [33] or a hyperbolic tangent [34,35] can be used in practical implementations. Applying the higher-order sliding mode control [35,36] may also be a feasible solution for the chattering reduction compared to the conventional sliding mode control.

References

  1. Bashi, O.I.D.; Hasan, W.; Azis, N.; Shafie, S.; Wagatsuma, H. Unmanned aerial vehicle quadcopter: A review. J. Comput. Theor. Nanosci. 2017, 14, 5663–5675. [Google Scholar] [CrossRef]
  2. Penicka, R.; Scaramuzza, D. Minimum-Time Quadrotor Waypoint Flight in Cluttered Environments. IEEE Robot. Autom. Lett. 2022, 7, 5719–5726. [Google Scholar] [CrossRef]
  3. Zhou, B.; Pan, J.; Gao, F.; Shen, S. RAPTOR: Robust and Perception-Aware Trajectory Replanning for Quadrotor Fast Flight. IEEE Trans. Robot. 2021, 37, 1992–2009. [Google Scholar] [CrossRef]
  4. Peng, C.C.; Cheng-Yu, W. Design of Constrained Dynamic Path Planning Algorithms in Large-Scale 3D Point Cloud Maps for UAVs. J. Comput. Sci. 2023, 67, 101944. [Google Scholar] [CrossRef]
  5. Falanga, D.; Kleber, K.; Scaramuzza, D. Dynamic obstacle avoidance for quadrotors with event cameras. Sci. Robot. 2020, 5, eaaz9712. [Google Scholar] [CrossRef]
  6. Yañez-Badillo, H.; Beltran-Carbajal, F.; Tapia-Olvera, R.; Favela-Contreras, A.; Sotelo, C.; Sotelo, D. Adaptive Robust Motion Control of Quadrotor Systems Using Artificial Neural Networks and Particle Swarm Optimization. Mathematics 2021, 9, 2367. [Google Scholar] [CrossRef]
  7. Nettari, Y.; Labbadi, M.; Kurt, S. Adaptive Robust Finite-Time Tracking Control for Quadrotor Subject to Disturbances. Adv. Space Res. 2022, in press. [CrossRef]
  8. Betancourt, J.; Castillo, P.; Garcia, P.; Balaguer, V.; Lozano, R. Robust bounded control scheme for quadrotor vehicles under high dynamic disturbances. preprint 2022. [CrossRef]
  9. Madani, T.; Benallegue, A. Backstepping control for a quadrotor helicopter. In Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems, Beijing, China, 9–15 October 2006; pp. 3255–3260. [Google Scholar] [CrossRef]
  10. Jasim, W.; Gu, D. Integral backstepping controller for quadrotor path tracking. In Proceedings of the 2015 International Conference on Advanced Robotics (ICAR), Istanbul, Turkey, 27–31 July 2015; pp. 593–598. [Google Scholar] [CrossRef]
  11. Zhou, L.; Zhang, J.; She, H.; Jin, H. Quadrotor UAV flight control via a novel saturation integral backstepping controller. Automatika 2019, 60, 193–206. [Google Scholar] [CrossRef]
  12. Labbadi, M.; Cherkaoui, M. Robust adaptive backstepping fast terminal sliding mode controller for uncertain quadrotor UAV. Aerosp. Sci. Technol. 2019, 93, 105306. [Google Scholar] [CrossRef]
  13. Koksal, N.; An, H.; Fidan, B. Backstepping-based adaptive control of a quadrotor UAV with guaranteed tracking performance. ISA Trans. 2020, 105, 98–110. [Google Scholar] [CrossRef] [PubMed]
  14. Xuan-Mung, N.; Hong, S.K. Robust Backstepping Trajectory Tracking Control of a Quadrotor with Input Saturation via Extended State Observer. Appl. Sci. 2019, 9, 5184. [Google Scholar] [CrossRef] [Green Version]
  15. Govea-Vargas, A.; Castro-Linares, R.; Duarte-Mermoud, M.A.; Aguila-Camacho, N.; Ceballos-Benavides, G.E. Fractional Order Sliding Mode Control of a Class of Second Order Perturbed Nonlinear Systems: Application to the Trajectory Tracking of a Quadrotor. Algorithms 2018, 11, 168. [Google Scholar] [CrossRef] [Green Version]
  16. Niu, Y.; Ban, H.; Zhang, H.; Gong, W.; Yu, F. Nonsingular Terminal Sliding Mode Based Finite-Time Dynamic Surface Control for a Quadrotor UAV. Algorithms 2021, 14, 315. [Google Scholar] [CrossRef]
  17. Zhao, J.; Wang, X.; Gao, G.; Na, J.; Liu, H.; Luan, F. Online Adaptive Parameter Estimation for Quadrotors. Algorithms 2018, 11, 167. [Google Scholar] [CrossRef] [Green Version]
  18. Liu, J.; Gai, W.; Zhang, J.; Li, Y. Nonlinear adaptive backstepping with ESO for the quadrotor trajectory tracking control in the multiple disturbances. Int. J. Control. Autom. Syst. 2019, 17, 2754–2768. [Google Scholar] [CrossRef]
  19. Chovancová, A.; Fico, T.; Chovanec, Ľ.; Hubinsk, P. Mathematical Modelling and Parameter Identification of Quadrotor (a survey). Procedia Eng. 2014, 96, 172–181. [Google Scholar] [CrossRef] [Green Version]
  20. Ventura Diaz, P.; Yoon, S. High-fidelity computational aerodynamics of multi-rotor unmanned aerial vehicles. In Proceedings of the 2018 AIAA Aerospace Sciences Meeting, Kissimmee, FL, USA, 8–12 January 2018; p. 1266. [Google Scholar]
  21. Moreno-Valenzuela, J.; Pérez-Alcocer, R.; Guerrero-Medina, M.; Dzul, A. Nonlinear PID-Type Controller for Quadrotor Trajectory Tracking. IEEE/ASME Trans. Mechatron. 2018, 23, 2436–2447. [Google Scholar] [CrossRef]
  22. Jia, Z.; Yu, J.; Mei, Y.; Chen, Y.; Shen, Y.; Ai, X. Integral Backstepping Sliding Mode Control for Quadrotor Helicopter under External Uncertain Disturbances. Aerosp. Sci. Technol. 2017, 68, 299–307. [Google Scholar] [CrossRef]
  23. Ríos, H.; Falcón, R.; González, O.A.; Dzul, A. Continuous Sliding-Mode Control Strategies for Quadrotor Robust Tracking: Real-Time Application. IEEE Trans. Ind. Electron. 2019, 66, 1264–1272. [Google Scholar] [CrossRef]
  24. Zhang, Z.; Wang, F.; Guo, Y.; Hua, C. Multivariable sliding mode backstepping controller design for quadrotor UAV based on disturbance observer. Sci. China Inf. Sci. 2018, 61, 1–16. [Google Scholar] [CrossRef] [Green Version]
  25. Goodarzi, F.; Lee, D.; Lee, T. Geometric nonlinear PID control of a quadrotor UAV on SE(3). In Proceedings of the 2013 European Control Conference (ECC), Zurich, Switzerland, 17–19 July 2013; pp. 3845–3850. [Google Scholar] [CrossRef] [Green Version]
  26. Demirhan, M.; Premachandra, C. Development of an Automated Camera-Based Drone Landing System. IEEE Access 2020, 8, 202111–202121. [Google Scholar] [CrossRef]
  27. Piponidis, M.; Aristodemou, P.; Theocharides, T. Towards a Fully Autonomous UAV Controller for Moving Platform Detection and Landing. In Proceedings of the 2022 35th International Conference on VLSI Design and 2022 21st International Conference on Embedded Systems (VLSID), Bangalore, India, 26 February–2 March 2022; pp. 180–185. [Google Scholar] [CrossRef]
  28. Peng, C.C.; Li, Y.; Chen, C.L. A robust integral type backstepping controller design for control of uncertain nonlinear systems subject to disturbance. Int. J. Innov. Comput. Inf. Control 2011, 7, 2543–2560. [Google Scholar]
  29. Meslouli, I.; Kahouadji, M.; Choukchou-Braham, A.; Bensalah, C.; Mokhtari, M.R.; Cherki, B. Experimental validation of quaternion based integral backstepping design for attitude tracking. In Proceedings of the 2018 6th International Conference on Control Engineering & Information Technology (CEIT), Istanbul, Turkey, 25–27 October 2018; pp. 1–6. [Google Scholar] [CrossRef]
  30. Peng, C.C.; Chen, T.Y. A recursive low-pass filtering method for a commercial cooling fan tray parameter online estimation with measurement noise. Measurement 2022, 205, 112193. [Google Scholar] [CrossRef]
  31. Peng, C.C.; Su, C.Y. Modeling and Parameter Identification of a Cooling Fan for Online Monitoring. IEEE Trans. Instrum. Meas. 2021, 70, 1–14. [Google Scholar] [CrossRef]
  32. Zhang, F. The Schur Complement and Its Applications; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2006; Volume 4. [Google Scholar]
  33. Aguilar-Ibañez, C. Stabilization of the PVTOL aircraft based on a sliding mode and a saturation function. Int. J. Robust Nonlinear Control. 2017, 27, 843–859. [Google Scholar] [CrossRef]
  34. Shi, Z.; Deng, C.; Zhang, S.; Xie, Y.; Cui, H.; Hao, Y. Hyperbolic Tangent Function-Based Finite-Time Sliding Mode Control for Spacecraft Rendezvous Maneuver Without Chattering. IEEE Access 2020, 8, 60838–60849. [Google Scholar] [CrossRef]
  35. Khandekar, A.A.; Malwatkar, G.M.; Patre, B.M. Discrete Sliding Mode Control for Robust Tracking of Higher Order Delay Time Systems with Experimental Application. ISA Trans. 2013, 52, 36–44. [Google Scholar] [CrossRef]
  36. Defoort, M.; Floquet, T.; Kokosy, A.; Perruquetti, W. A Novel Higher Order Sliding Mode Control Scheme. Syst. Control Lett. 2009, 58, 102–108. [Google Scholar] [CrossRef] [Green Version]
Figure 1. The dynamic configuration of the 3-DoF quadrotor system.
Figure 1. The dynamic configuration of the 3-DoF quadrotor system.
Algorithms 16 00122 g001
Figure 2. Desired output x d to its fourth differentiation.
Figure 2. Desired output x d to its fourth differentiation.
Algorithms 16 00122 g002
Figure 3. Evolution of external disturbances. (a) the time-varying disturbances; (b) the state-dependent viscous drags.
Figure 3. Evolution of external disturbances. (a) the time-varying disturbances; (b) the state-dependent viscous drags.
Algorithms 16 00122 g003
Figure 4. Comparison of measured and actual states for different approaches. (a) CPID; (b) IBC; (c) AIBC.
Figure 4. Comparison of measured and actual states for different approaches. (a) CPID; (b) IBC; (c) AIBC.
Algorithms 16 00122 g004
Figure 5. Comparison of the desired command and system response in the x-direction for different approaches. (a) desired command and actual states; (b) tracking errors.
Figure 5. Comparison of the desired command and system response in the x-direction for different approaches. (a) desired command and actual states; (b) tracking errors.
Algorithms 16 00122 g005
Figure 6. Comparison of the desired command and system response in the z-direction for different approaches. (a) desired command and actual states; (b) tracking errors.
Figure 6. Comparison of the desired command and system response in the z-direction for different approaches. (a) desired command and actual states; (b) tracking errors.
Algorithms 16 00122 g006
Figure 7. Comparison of computed and truly allowed controls and rotor speeds for the CPID. (a) comparison of the computed and truly allowed controls (CPID); (b) square of computed rotor speeds; (c) truly allowed rotor speeds.
Figure 7. Comparison of computed and truly allowed controls and rotor speeds for the CPID. (a) comparison of the computed and truly allowed controls (CPID); (b) square of computed rotor speeds; (c) truly allowed rotor speeds.
Algorithms 16 00122 g007
Figure 8. Comparison of computed and truly allowed controls and rotor speeds for the IBC. (a) comparison of the computed and truly allowed controls (IBC); (b) square of computed rotor speeds; (c) truly allowed rotor speeds.
Figure 8. Comparison of computed and truly allowed controls and rotor speeds for the IBC. (a) comparison of the computed and truly allowed controls (IBC); (b) square of computed rotor speeds; (c) truly allowed rotor speeds.
Algorithms 16 00122 g008
Figure 9. Comparison of computed and truly allowed controls and rotor speeds for the proposed AIBC. (a) comparison of the computed and truly allowed controls (AIBC); (b) square of computed rotor speeds; (c) truly allowed rotor speeds.
Figure 9. Comparison of computed and truly allowed controls and rotor speeds for the proposed AIBC. (a) comparison of the computed and truly allowed controls (AIBC); (b) square of computed rotor speeds; (c) truly allowed rotor speeds.
Algorithms 16 00122 g009
Figure 10. Comparison of computed control force and torque for different approaches. (a) computed control force; (b) computed control torque.
Figure 10. Comparison of computed control force and torque for different approaches. (a) computed control force; (b) computed control torque.
Algorithms 16 00122 g010
Figure 11. Virtual controls of the IBC and AIBC.
Figure 11. Virtual controls of the IBC and AIBC.
Algorithms 16 00122 g011
Table 1. Explanation of the physical quantities of the quadrotor planar motion system.
Table 1. Explanation of the physical quantities of the quadrotor planar motion system.
QuantityDescriptionUnit
mMasskg
JMoment of inertiakg-m 2
gGravitational accelerationm/s 2
LDistance between motors and center of massm
Table 2. System parameters.
Table 2. System parameters.
mLJ C T g C dx , C dz C d θ
Unitkgmkg-m 2 N/(rad/s) 2 m/s 2 (N/(m/s)N.m/(rad/s)
0.60.25 3.544 × 10 3 1.339 × 10 6 9.8 1 × 10 3 1.2 × 10 4
Table 3. The RMSE of tracking errors for different approaches.
Table 3. The RMSE of tracking errors for different approaches.
CPIDIBC(Proposed) AIBC
x-direction0.03140.02290.0037
z-direction0.00550.01450.0043
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Li, Y.-R.; Chen, C.-C.; Peng, C.-C. Integral Backstepping Control Algorithm for a Quadrotor Positioning Flight Task: A Design Issue Discussion. Algorithms 2023, 16, 122. https://doi.org/10.3390/a16020122

AMA Style

Li Y-R, Chen C-C, Peng C-C. Integral Backstepping Control Algorithm for a Quadrotor Positioning Flight Task: A Design Issue Discussion. Algorithms. 2023; 16(2):122. https://doi.org/10.3390/a16020122

Chicago/Turabian Style

Li, Yang-Rui, Chih-Chia Chen, and Chao-Chung Peng. 2023. "Integral Backstepping Control Algorithm for a Quadrotor Positioning Flight Task: A Design Issue Discussion" Algorithms 16, no. 2: 122. https://doi.org/10.3390/a16020122

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop