In recent years, quadrotor unmanned aerial vehicles have garnered significant attention due to their structural simplicity, high maneuverability, compact size, low cost, and excellent concealment. As the core of quadrotor systems, flight control systems have become a focal point of research. According to classical control theory, quadrotor systems are typically divided into two loops: an inner loop for attitude control and an outer loop for position and altitude control. However, practical quadrotor applications face challenges such as nonlinearity, strong coupling, underactuation, and uncertainties from external disturbances and unmodeled dynamics. To address these issues, we propose a novel prescribed performance adaptive backstepping sliding mode control algorithm. This approach ensures that tracking errors remain within predefined bounds, enhances convergence speed, and compensates for lumped disturbances using an adaptive RBF neural network.

The quadrotor dynamics are derived using the Newton-Euler formulation, considering the vehicle as a rigid body with symmetric structure. We define two coordinate frames: the inertial frame (OEXEYEZE) and the body frame (OBXBYBZB). The transformation between these frames is achieved through rotation matrices. The dynamic model of the quadrotor is expressed as:
$$ \ddot{x} = \frac{U_1 (\cos\phi \sin\theta \cos\psi + \sin\phi \sin\psi)}{m} + d_x $$
$$ \ddot{y} = \frac{U_1 (\cos\phi \sin\theta \sin\psi – \sin\phi \cos\psi)}{m} + d_y $$
$$ \ddot{z} = \frac{U_1 (\cos\phi \cos\theta – mg)}{m} + d_z $$
$$ \ddot{\phi} = \frac{U_2 + (I_y – I_z) \dot{\theta} \dot{\psi}}{I_x} + d_\phi $$
$$ \ddot{\theta} = \frac{U_3 + (I_z – I_x) \dot{\phi} \dot{\psi}}{I_y} + d_\theta $$
$$ \ddot{\psi} = \frac{U_4 + (I_x – I_y) \dot{\phi} \dot{\theta}}{I_z} + d_\psi $$
Here, \( m \) represents the mass, \( g \) is gravitational acceleration, \( [x, y, z]^T \) denotes position coordinates, \( [\phi, \theta, \psi]^T \) are the roll, pitch, and yaw angles, \( I_x, I_y, I_z \) are moments of inertia, \( d_i \) (for \( i = x, y, z, \phi, \theta, \psi \)) are external disturbances, and \( U_1, U_2, U_3, U_4 \) are control inputs. The control inputs relate to rotor thrusts \( F_i = b \Omega_i^2 \), where \( b \) is the thrust coefficient and \( \Omega_i \) is the rotor speed. The total thrust and moments are:
$$ U_1 = \sum F_i = b (\Omega_1^2 + \Omega_2^2 + \Omega_3^2 + \Omega_4^2) $$
$$ U_2 = b l (\Omega_4^2 – \Omega_2^2) $$
$$ U_3 = b l (\Omega_3^2 – \Omega_1^2) $$
$$ U_4 = d l (\Omega_2^2 + \Omega_4^2 – \Omega_1^2 – \Omega_3^2) $$
where \( l \) is the arm length and \( d \) is the drag coefficient. For controller design, we introduce virtual control inputs \( u_x, u_y, u_z \):
$$ u_x = U_1 (\cos\phi \sin\theta \cos\psi + \sin\phi \sin\psi) $$
$$ u_y = U_1 (\cos\phi \sin\theta \sin\psi – \sin\phi \cos\psi) $$
$$ u_z = U_1 \cos\phi \cos\theta $$
The desired angles and total thrust are computed as:
$$ \theta_d = \arctan\left( \frac{u_x \cos\psi_d + u_y \sin\psi_d}{u_z} \right) $$
$$ \phi_d = \arctan\left( \cos\theta_d \frac{u_x \sin\psi_d – u_y \cos\psi_d}{u_z} \right) $$
$$ U_1 = \frac{u_z}{\cos\theta_d \cos\phi_d} $$
To handle uncertainties and disturbances, we design a prescribed performance function that constrains the tracking error. Define the error vector \( e = x – x_d \), where \( x = [x, y, z, \phi, \theta, \psi]^T \) and \( x_d \) is the desired trajectory. The performance function \( \rho(t) \) is:
$$ \rho(t) = (\rho_0 – \rho_\infty) e^{-\kappa t} + \rho_\infty $$
where \( \rho_0 > \rho_\infty > 0 \) are initial and steady-state error bounds, and \( \kappa > 0 \) controls the convergence rate. The transformed error \( \lambda \) is:
$$ \alpha = \frac{e(t)}{\rho(t)} $$
$$ \lambda = S^{-1}(\alpha) = \frac{1}{2} \ln\left( \frac{\delta^+ + \alpha}{\delta^- – \alpha} \right) $$
This ensures \( -\delta^- \rho(t) < e < \delta^+ \rho(t) \). The derivative of \( \lambda \) is:
$$ \dot{\lambda} = r (\dot{e} – n) $$
where \( r = \frac{1}{2\rho} \left( \frac{1}{1+\alpha} – \frac{1}{\alpha-1} \right) \) and \( n = \frac{e \dot{\rho}}{\rho} \).
We employ a backstepping approach with a fast terminal sliding mode surface. Define the Lyapunov function \( V_1 = \frac{1}{2} \lambda^2 \). The virtual control law is designed as:
$$ e_2 = x_2 – \dot{x}_d – n + c \lambda $$
where \( c > 0 \) is a constant. The sliding surface is:
$$ s = k_0 \ln[k_1 \cosh(\lambda^{p/q})] \tanh(k_2 \lambda) + e_2 $$
with parameters \( k_0, k_1, k_2 > 0 \), and \( p, q \) odd integers satisfying \( \frac{1}{2} < \frac{p}{q} < 1 \). The derivative of \( s \) is:
$$ \dot{s} = \Theta + \dot{e}_2 $$
where \( \Theta = \frac{k_0 p \sinh(\lambda^{p/q}) \lambda^{p/q-1} \dot{\lambda} \tanh(k_2 \lambda)}{q \cosh(\lambda^{p/q})} + k_0 k_2 \ln[k_1 \cosh(\lambda^{p/q})] (1 – \tanh^2(k_2 \lambda)) \dot{\lambda} \).
A novel piecewise variable-speed reaching law is proposed to reduce chattering:
$$ \dot{s} = -\eta I s^{\xi^{1-\Delta}} – \frac{\varepsilon g(s)}{I} \text{sign}(s) $$
$$ I = a + (1 – a) e^{-z |s|^b} $$
where \( \eta, \varepsilon, z, b > 0 \), \( 0 < a < 1 \), \( \Delta < 1 \), and \( g(s) \) is a piecewise function:
$$ g(s) = \begin{cases}
1 & \text{if } s \geq \xi \\
\frac{s}{\xi^{\xi^\Delta}} & \text{if } s < \xi
\end{cases} $$
This reaching law adapts the gain based on the distance to the sliding surface, improving convergence and chattering suppression.
To compensate for lumped disturbances (external disturbances and system uncertainties), we employ an RBF neural network. The network structure has inputs \( x_r = [x_{r1}, x_{r2}, \dots, x_{rn}]^T \), hidden layer outputs \( h_r = [h_{r1}, h_{r2}, \dots, h_{rm}]^T \), and weights \( w_r = [w_{r1}, w_{r2}, \dots, w_{rm}]^T \). The Gaussian basis functions are:
$$ h_{rj} = \exp\left( -\frac{\| x_r – c_{rj} \|^2}{2 b_{rj}^2} \right), \quad j = 1, 2, \dots, m $$
The disturbance estimate is:
$$ \hat{d} = \hat{w}_r^T h_r + u_D $$
where \( u_D = \hat{\upsilon}_D \tanh(s / \nu) \) is a robust补偿 term, and \( \hat{\upsilon}_D \) is an estimate of the approximation error bound. The adaptive laws for weights and compensation term are:
$$ \dot{\hat{w}}_r = \chi_1 s h_r $$
$$ \dot{\hat{\upsilon}}_D = \chi_2 s \tanh(s / \nu) $$
with \( \chi_1, \chi_2 > 0 \). The overall control law is:
$$ u = \frac{1}{G} \left[ \ddot{x}_d – f(x) + \dot{n} – r \lambda – c_1 \dot{\lambda} – \Theta – \eta I s / \xi^{1-\Delta} – \frac{\varepsilon g(s)}{I} \text{sign}(s) – u_D – \hat{w}_r^T h_r \right] $$
where \( G = \text{diag}(1/m, 1/m, 1/m, 1/I_x, 1/I_y, 1/I_z) \) and \( f(x) = [0, 0, -g, (I_y – I_z) \dot{\theta} \dot{\psi} / I_x, (I_z – I_x) \dot{\phi} \dot{\psi} / I_y, (I_x – I_y) \dot{\phi} \dot{\theta} / I_z]^T \).
Stability is proven using Lyapunov theory. Consider the Lyapunov function:
$$ V_2 = V_1 + \frac{1}{2} s^2 + \frac{1}{2\chi_1} \tilde{w}_r^T \tilde{w}_r + \frac{1}{2\chi_2} \tilde{\upsilon}_D^2 $$
where \( \tilde{w}_r = w_r – \hat{w}_r \) and \( \tilde{\upsilon}_D = \upsilon_D – \hat{\upsilon}_D \). Its derivative is:
$$ \dot{V}_2 = -c r \lambda^2 – r k_0 \ln[k_1 \cosh(\lambda^{p/q})] \tanh(k_2 \lambda) \lambda – \eta I s^2 / \xi^{1-\Delta} – \frac{\varepsilon g(s)}{I} |s| $$
which is negative semi-definite, ensuring global asymptotic stability.
Simulation experiments are conducted using MATLAB/Simulink with quadrotor parameters: \( m = 2 \, \text{kg} \), \( l = 0.2 \, \text{m} \), \( g = 9.8 \, \text{m/s}^2 \), \( I_x = I_y = 0.0021 \, \text{kg·m}^2 \), \( I_z = 0.0036 \, \text{kg·m}^2 \). The initial state is \( [x_0, y_0, z_0, \phi_0, \theta_0, \psi_0]^T = [0.5, 1.5, 0, 0, 0, \pi/5]^T \), and the desired trajectory is \( [x_d, y_d, z_d, \psi_d]^T = [\sin(t/2), \cos(t/2), t/5 + 1, 0]^T \). Lumped disturbances are \( d_i = 0.6 \sin(t) e^{-0.001t} + 0.6 \sin(t) + 0.6 \cos(t) \) for \( i = 1, 2, 3, 4, 5, 6 \). Controller parameters are set as follows:
| Parameter | Value |
|---|---|
| \( c \) | [2, 2, 2, 1, 1, 10]^T |
| \( k_0 \) | [0.1, 0.1, 0.1, 0.1, 0.1, 0.1]^T |
| \( k_1 \) | [3, 3, 3, 3, 3, 3]^T |
| \( k_2 \) | [5, 5, 5, 5, 5, 5]^T |
| \( p \) | [5, 5, 5, 5, 5, 5]^T |
| \( q \) | [9, 9, 9, 9, 9, 9]^T |
| \( \eta \) | [2, 2, 2, 2, 2, 8]^T |
| \( \Delta \) | [0.01, 0.01, 0.01, 0.01, 0.01, 0.01]^T |
| \( \varepsilon \) | [0.1, 0.1, 0.1, 0.1, 0.1, 0.1]^T |
| \( a \) | [0.5, 0.5, 0.5, 0.5, 0.5, 0.5]^T |
| \( z \) | [10, 10, 10, 10, 10, 10]^T |
| \( b \) | [1.5, 1.5, 1.5, 1.5, 1.5, 1.5]^T |
| \( \xi \) | [0.4, 0.4, 0.4, 0.4, 0.4, 0.4]^T |
| \( \rho_0 \) | [0.6, 0.8, 1.2, 0.5, 1.2, 1]^T |
| \( \rho_\infty \) | [0.08, 0.08, 0.05, 0.1, 0.2, 0.05]^T |
| \( \kappa \) | [3, 3.5, 3, 0.8, 0.8, 3]^T |
We compare our method (TTC) with adaptive backstepping sliding mode (ARBSM), global fast terminal sliding mode (PTSM), and predefined-time sliding mode (GRSM) controllers. Performance metrics include root mean square error (RMSE) and standard deviation of tracking error (SDTE), defined as:
$$ \text{RMSE} = \sqrt{ \frac{\sum_{k=1}^n e_i^2(k)}{n} } \quad \text{for} \quad i = x, y, z, \psi $$
$$ T_e = e_x^2(k) + e_y^2(k) + e_z^2(k) + e_\psi^2(k) $$
$$ T_m = \frac{\sum_{k=1}^n T_e(k)}{n} $$
$$ \text{SDTE} = \sqrt{ \frac{\sum_{k=1}^n (T_e(k) – T_m)^2}{n} } $$
The results are summarized in the following table:
| Control Algorithm | RMSE (x-axis, m) | RMSE (y-axis, m) | RMSE (z-axis, m) | RMSE (ψ, rad) | SDTE |
|---|---|---|---|---|---|
| ARBSM | 0.055 | 0.059 | 0.139 | 0.053 | 0.171 |
| PTSM | 0.053 | 0.053 | 0.101 | 0.045 | 0.191 |
| GRSM | 0.076 | 0.060 | 0.132 | 0.082 | 0.217 |
| TTC (Proposed) | 0.039 | 0.041 | 0.083 | 0.038 | 0.121 |
Our method reduces RMSE by 15.6% to 53.7% and SDTE by 29.2% to 44.2% compared to other algorithms, demonstrating superior tracking accuracy and disturbance rejection. The RBF network effectively estimates disturbances, and the adaptive laws ensure bounded weights and compensation terms.
In conclusion, the prescribed performance adaptive backstepping sliding mode control algorithm for quadrotor UAVs ensures rapid convergence, robust disturbance compensation, and predefined transient and steady-state performance. The combination of error transformation, fast terminal sliding mode, and neural network adaptation provides a solid foundation for intelligent quadrotor development. Future work will focus on real-time implementation and handling more complex scenarios.
