In recent years, quadcopter unmanned aerial vehicles have gained significant attention due to their wide-ranging applications in areas such as traffic monitoring, power line inspection, and disaster relief. However, the quadcopter is an underactuated system with strong nonlinearity and coupling, making it highly susceptible to external disturbances during flight, which complicates control design. Traditional control methods like PID, backstepping, and sliding mode control have been employed, but they often struggle with robustness under uncertainties and disturbances. This paper addresses these challenges by proposing a robust adaptive backstepping sliding mode controller based on RBF neural network for quadcopter attitude control. The approach integrates backstepping sliding mode control with RBF network approximation and compensation, utilizing a minimal parameter learning method to enhance adaptability and robustness. Through Lyapunov stability analysis, the system’s stability is guaranteed, and simulation results demonstrate superior performance compared to conventional methods.

The dynamics of a quadcopter are derived from the Newton-Euler formulation, considering the rigid body assumptions. The attitude dynamics, including roll, pitch, and yaw, can be represented in state-space form. Let the state vector be defined as $x = [x_1, x_2, x_3, x_4, x_5, x_6]^T = [\phi, \dot{\phi}, \theta, \dot{\theta}, \psi, \dot{\psi}]^T$, where $\phi$, $\theta$, and $\psi$ are the roll, pitch, and yaw angles, respectively. The state equations under external disturbances are given by:
$$ \dot{x}_1 = x_2 $$
$$ \dot{x}_2 = \frac{l U_2}{I_x} + x_4 x_6 \frac{I_y – I_z}{I_x} – \frac{J_r x_4 \omega_r}{I_x} + d_1 $$
$$ \dot{x}_3 = x_4 $$
$$ \dot{x}_4 = \frac{l U_3}{I_y} + x_2 x_6 \frac{I_z – I_x}{I_y} – \frac{J_r x_2 \omega_r}{I_y} + d_2 $$
$$ \dot{x}_5 = x_6 $$
$$ \dot{x}_6 = \frac{U_4}{I_z} + x_2 x_4 \frac{I_x – I_y}{I_z} + d_3 $$
Here, $U_2$, $U_3$, and $U_4$ are the control inputs for roll, pitch, and yaw, respectively; $l$ is the distance from the rotor center to the quadcopter’s center of mass; $I_x$, $I_y$, $I_z$ are the moments of inertia; $J_r$ is the rotor inertia; $\omega_r$ is the gyroscopic effect term; and $d_1$, $d_2$, $d_3$ represent bounded external disturbances with $|d_i| \leq d_0$ for $i=1,2,3$. The control inputs are related to the rotor speeds through:
$$ \begin{bmatrix} U_1 \\ U_2 \\ U_3 \\ U_4 \end{bmatrix} = \begin{bmatrix} b & b & b & b \\ 0 & -l b & 0 & l b \\ -l b & 0 & l b & 0 \\ -k_l & k_l & -k_l & k_l \end{bmatrix} \begin{bmatrix} \omega_1^2 \\ \omega_2^2 \\ \omega_3^2 \\ \omega_4^2 \end{bmatrix} $$
where $b$ is the thrust factor and $k_l$ is the drag coefficient. For attitude control, we focus on designing controllers for $U_2$, $U_3$, and $U_4$, with similar structures due to symmetry. Thus, the controller design for roll angle is detailed, and it can be extended to pitch and yaw.
The proposed controller combines backstepping sliding mode control with RBF neural network adaptation. The backstepping approach involves designing virtual control laws step by step to stabilize the system. First, define the tracking error for the roll angle as $z_1 = x_1 – x_{1d}$, where $x_{1d} = \phi_d$ is the desired roll angle. The virtual control law is introduced as $x_{2v} = \dot{x}_{1d} – c_1 z_1$, with $c_1 > 0$. Then, the velocity tracking error is $z_2 = x_2 – x_{2v} = \dot{z}_1 + c_1 z_1$. A sliding surface is constructed as $\sigma = k_1 z_1 + z_2$, where $k_1 > 0$ and $(k_1 + c_1) > 0$. The derivative of the sliding surface is:
$$ \dot{\sigma} = \alpha + \beta U_2 + v + d_1 $$
where $\alpha = \dot{\theta} \dot{\psi} (I_y – I_z)/I_x – J_r \dot{\theta} \omega_r / I_x$, $\beta = l / I_x$, and $v = (k_1 + c_1) \dot{z}_1 – \ddot{x}_{1d}$. The nominal control law, assuming no disturbances, is designed as:
$$ U_2^* = -\frac{1}{\beta} \left[ \alpha + v + \left( \frac{1}{\Delta} + \frac{1}{\Delta \beta} – \frac{\dot{\beta}}{2\beta} \right) \sigma \right] $$
with $\Delta > 0$. This nominal control ensures asymptotic stability of the closed-loop system, as proven using Lyapunov theory. However, to handle disturbances and uncertainties, an RBF neural network is employed to approximate $U_2^*$. The RBF network output is given by $h_j = \exp\left( -\frac{\| a – c_j \|^2}{2b_j^2} \right)$ for $j=1,\dots,q$, where $a$ is the input vector, $c_j$ are center vectors, and $b_j$ are width parameters. The ideal neural network output is $U_2^*(k) = W^{*T} h(k) + \mu_l$, where $W^*$ is the ideal weight vector, $h(k)$ is the Gaussian function output, and $\mu_l$ is the approximation error bounded by $|\mu_l| \leq \mu_0$. Using the minimal parameter learning method, the weight upper bound $\| W^* \|_F \leq W_{\text{max}}$ is estimated, and the control law is designed as:
$$ U_2 = -\frac{1}{2\sigma} \hat{O} h^T h $$
where $\hat{O}$ is the estimate of $O = \| W^* \|_F^2$, and the adaptation law is:
$$ \dot{\hat{O}} = \frac{\gamma}{2} \sigma^2 h^T h – k \gamma \hat{O} $$
with $\gamma > 0$ and $k > 0$. The Lyapunov function $V(t) = \frac{1}{2} z_1^2 + \frac{1}{2\beta} \sigma^2 + \frac{1}{2\gamma} \tilde{O}^2$, where $\tilde{O} = \hat{O} – O$, is used to prove uniform ultimate boundedness of the tracking error. The quadcopter attitude system under this control law ensures that the tracking error converges to a small region around zero, with robustness to disturbances.
For simulation, the quadcopter parameters are selected as follows: mass $m = 0.8$ kg, gravity $g = 9.8$ m/s², moments of inertia $I_x = I_y = 5.5 \times 10^{-3}$ kg·m², $I_z = 1.1 \times 10^{-2}$ kg·m², distance $l = 0.165$ m, thrust factor $b = 2.98 \times 10^{-6}$ N·s², drag coefficient $k_l = 2 \times 10^{-7}$ N·m·s², and rotor inertia $J_r = 3.357 \times 10^{-5}$ kg·m². The controller parameters for the RBF network adaptive backstepping sliding mode control are tuned as: $c_{1\phi} = 5$, $k_{1\phi} = 10$, $\Delta_\phi = 0.25$, $\gamma_\phi = 0.05$, $k_\phi = 0.1$ for roll; $c_{1\theta} = 7.5$, $k_{1\theta} = 12.5$, $\Delta_\theta = 0.25$, $\gamma_\theta = 0.1$, $k_\theta = 0.05$ for pitch; and $c_{1\psi} = 3$, $k_{1\psi} = 9$, $\Delta_\psi = 0.3$, $\gamma_\psi = 0.01$, $k_\psi = 0.2$ for yaw. For comparison, a conventional backstepping sliding mode controller is implemented with control law $U_\phi = -k_{es1} \text{sgn}(S_\phi) – k_1 S_\phi – \frac{I_y – I_z}{I_x} \dot{\theta} \dot{\psi} + \ddot{\phi}_d – c_1 (\dot{\phi} – \dot{\phi}_d)$, and parameters $k_{es1\phi} = 1$, $c_{1\phi} = 1$, $k_{1\phi} = 3$ for roll; $k_{es1\theta} = 0.5$, $c_{1\theta} = 1.5$, $k_{1\theta} = 5$ for pitch; and $k_{es1\psi} = 1.5$, $c_{1\psi} = 1$, $k_{1\psi} = 10$ for yaw.
The simulation involves two scenarios: external disturbance tracking and sudden disturbance rejection. In the first scenario, the initial attitude is $[0.3, 0.3, 0.3]^T$ rad, and the desired attitude is $[0, 1, 0]^T$ rad over 10 seconds. External disturbances $d_1 = 0.5 \sin t$, $d_2 = 0.1 \cos t$, and $d_3 = 0.5 \sin 2t$ are applied. The tracking performance and settling time are compared between the proposed method and the backstepping sliding mode control. The results show that the proposed controller achieves faster convergence and smaller tracking errors. For instance, the settling times for roll, pitch, and yaw angles are significantly reduced, as summarized in the table below.
| Attitude Angle | Proposed Method Settling Time (s) | Backstepping Sliding Mode Settling Time (s) |
|---|---|---|
| Roll ($\phi$) | 0.878 | 5.429 |
| Pitch ($\theta$) | 2.092 | 4.931 |
| Yaw ($\psi$) | 1.229 | 5.465 |
In the second scenario, the initial attitude is $[0.3, 0.3, 0.3]^T$ rad, and the desired trajectory is $[\sin t, \sin t, \sin t]^T$ rad over 10 seconds. White noise is injected as a sudden disturbance from 3 to 4 seconds. The proposed controller demonstrates better disturbance rejection, with smaller deviations and faster recovery compared to the conventional method. The settling times under sudden disturbances are compared in the following table.
| Attitude Angle | Proposed Method Settling Time (s) | Backstepping Sliding Mode Settling Time (s) |
|---|---|---|
| Roll ($\phi$) | 4.079 | 6.442 |
| Pitch ($\theta$) | 4.079 | 6.066 |
| Yaw ($\psi$) | 4.128 | 6.168 |
The superiority of the proposed method is attributed to the RBF network’s ability to approximate the nominal control law and compensate for disturbances adaptively. The minimal parameter learning reduces computational complexity, while the Lyapunov-based adaptation ensures stability. The quadcopter attitude control benefits from this integration, achieving high precision and robustness. Future work could explore real-time implementation and extension to trajectory tracking for full quadcopter dynamics.
In conclusion, this paper presents a robust adaptive backstepping sliding mode control scheme based on RBF network for quadcopter attitude stabilization. The controller effectively handles external disturbances and uncertainties, providing faster response and better tracking accuracy than traditional methods. The theoretical analysis and simulations validate the approach, highlighting its potential for practical applications in quadcopter systems. The use of neural networks in control design offers a flexible framework for handling nonlinearities, making it suitable for various autonomous vehicles.
