In recent years, quadcopters have gained significant attention due to their versatility in applications such as surveillance, agriculture, and disaster management. However, controlling a quadcopter’s position and attitude remains challenging due to its inherent nonlinearities, underactuation, and susceptibility to model uncertainties and external disturbances. This paper addresses these challenges by proposing an adaptive sliding mode control strategy that leverages radial basis function neural networks (RBFNNs) for real-time estimation of lumped disturbances. We focus on a six-degree-of-freedom quadcopter model, dividing it into fully actuated and underactuated subsystems for systematic controller design. The approach ensures robust tracking performance while compensating for uncertainties without requiring prior knowledge of disturbance bounds.

The dynamics of a quadcopter are characterized by strong coupling between translational and rotational motions. Traditional control methods often struggle to maintain stability under varying conditions, such as wind gusts or payload changes. Our method integrates sliding mode control (SMC) with adaptive techniques to enhance robustness. By employing RBFNNs, we approximate unknown nonlinearities and disturbances, while adaptive laws update the estimates to minimize errors. This combination allows the quadcopter to achieve precise trajectory tracking even in the presence of significant uncertainties.
We begin by deriving the quadcopter’s dynamic model, which includes position and attitude dynamics. The model accounts for aerodynamic effects, inertia variations, and external disturbances. Key parameters, such as mass and moments of inertia, are subject to uncertainties, which we model as bounded but unknown terms. The control design proceeds by formulating sliding surfaces for both subsystems and designing equivalent controllers that incorporate disturbance estimates. Stability is rigorously analyzed using Lyapunov theory, ensuring that all signals remain bounded and tracking errors converge to zero.
To validate the proposed approach, we conduct comparative simulations under various scenarios, including parameter variations and external disturbances. The results demonstrate superior performance compared to conventional second-order sliding mode control, with reduced chattering and improved accuracy. The following sections detail the mathematical formulation, controller design, stability analysis, and simulation outcomes, providing a comprehensive framework for quadcopter control in uncertain environments.
Quadcopter Dynamic Model
The quadcopter is modeled as a rigid body with six degrees of freedom: three for position $(x, y, z)$ and three for attitude $(\phi, \theta, \psi)$. The equations of motion are derived using Newton-Euler formalism, considering forces from rotors and environmental disturbances. The translational dynamics are given by:
$$ \ddot{x} = \frac{1}{m} \left( \cos\phi \sin\theta \cos\psi + \sin\phi \sin\psi \right) u_1 – \frac{K_1}{m} \dot{x} + d_1 $$
$$ \ddot{y} = \frac{1}{m} \left( \cos\phi \sin\theta \sin\psi – \sin\phi \cos\psi \right) u_1 – \frac{K_2}{m} \dot{y} + d_2 $$
$$ \ddot{z} = \frac{1}{m} \cos\phi \cos\theta u_1 – g – \frac{K_3}{m} \dot{z} + d_3 $$
where $m$ is the mass, $g$ is gravity, $K_i$ are drag coefficients, and $d_i$ represent lumped disturbances encompassing model uncertainties and external forces. The rotational dynamics are:
$$ \ddot{\phi} = \frac{l}{I_x} u_2 + \dot{\theta} \dot{\psi} \frac{I_y – I_z}{I_x} – \frac{J_r}{I_x} \dot{\theta} \Omega_r – \frac{K_4 l}{I_x} \dot{\phi} + d_4 $$
$$ \ddot{\theta} = \frac{l}{I_y} u_3 + \dot{\phi} \dot{\psi} \frac{I_z – I_x}{I_y} – \frac{J_r}{I_y} \dot{\phi} \Omega_r – \frac{K_5 l}{I_y} \dot{\theta} + d_5 $$
$$ \ddot{\psi} = \frac{C}{I_z} u_4 + \dot{\phi} \dot{\theta} \frac{I_x – I_y}{I_z} – \frac{K_6}{I_z} \dot{\psi} + d_6 $$
Here, $I_x, I_y, I_z$ are moments of inertia, $l$ is the arm length, $J_r$ is the rotor inertia, $C$ is a thrust coefficient, and $\Omega_r$ is the residual rotor speed. The control inputs $u_1$ to $u_4$ correspond to total thrust and moments, related to rotor speeds through:
$$ u_1 = F_1 + F_2 + F_3 + F_4 $$
$$ u_2 = \frac{\sqrt{2}}{2} l (F_1 – F_2 + F_3 – F_4) $$
$$ u_3 = \frac{\sqrt{2}}{2} l (F_1 + F_2 – F_3 – F_4) $$
$$ u_4 = \lambda (F_1 – F_2 – F_3 + F_4) $$
with $F_i = K_f \Omega_i^2$ and $\lambda$ as a scaling factor. This model serves as the foundation for controller design, where we address uncertainties in parameters like $m$, $I_x$, $I_y$, $I_z$, and disturbances $d_i$.
| Parameter | Value | Unit |
|---|---|---|
| Mass ($m$) | 1.1 | kg |
| Arm Length ($l$) | 0.21 | m |
| Moment of Inertia ($I_x$, $I_y$) | 1.22 | Nm·s²/rad |
| Moment of Inertia ($I_z$) | 2.2 | Nm·s²/rad |
| Rotor Inertia ($J_r$) | 0.2 | Nm·s²/rad |
| Gravity ($g$) | 9.81 | m/s² |
The quadcopter system is decomposed into fully actuated ($z$, $\psi$) and underactuated ($x$, $y$, $\phi$, $\theta$) subsystems. This separation simplifies controller design by allowing independent treatment of each subsystem’s dynamics. For the fully actuated subsystem, the dynamics are rewritten as:
$$ \ddot{z} = f_z + g_z u_1 $$
$$ \ddot{\psi} = f_\psi + g_\psi u_4 $$
where $f_z = -g – \frac{K_3}{m} \dot{z} + d_3$, $g_z = \frac{\cos\phi \cos\theta}{m}$, $f_\psi = \dot{\phi} \dot{\theta} \frac{I_x – I_y}{I_z} – \frac{K_6}{I_z} \dot{\psi} + d_6$, and $g_\psi = \frac{C}{I_z}$. Similarly, the underactuated subsystem is expressed as:
$$ \ddot{x} = \frac{1}{m} \left( \cos\phi \sin\theta \cos\psi + \sin\phi \sin\psi \right) u_1 – \frac{K_1}{m} \dot{x} + d_1 $$
$$ \ddot{y} = \frac{1}{m} \left( \cos\phi \sin\theta \sin\psi – \sin\phi \cos\psi \right) u_1 – \frac{K_2}{m} \dot{y} + d_2 $$
$$ \ddot{\phi} = \frac{1}{g_\phi} u_2 + f_\phi $$
$$ \ddot{\theta} = \frac{1}{g_\theta} u_3 + f_\theta $$
with $g_\phi = \frac{l}{I_x}$, $f_\phi = \dot{\theta} \dot{\psi} \frac{I_y – I_z}{I_x} – \frac{J_r}{I_x} \dot{\theta} \Omega_r – \frac{K_4 l}{I_x} \dot{\phi} + d_4$, $g_\theta = \frac{l}{I_y}$, and $f_\theta = \dot{\phi} \dot{\psi} \frac{I_z – I_x}{I_y} – \frac{J_r}{I_y} \dot{\phi} \Omega_r – \frac{K_5 l}{I_y} \dot{\theta} + d_5$. This formulation highlights the coupling between states and the influence of disturbances, which our control strategy aims to mitigate.
Controller Design for Fully Actuated Subsystem
For the fully actuated subsystem involving altitude $z$ and yaw angle $\psi$, we define tracking errors as $e_z = z_d – z$ and $e_\psi = \psi_d – \psi$, where subscript $d$ denotes desired values. The sliding surfaces are designed as:
$$ s_z = c_z e_z + \dot{e}_z $$
$$ s_\psi = c_\psi e_\psi + \dot{e}_\psi $$
with $c_z, c_\psi > 0$ as tuning parameters. Differentiating the sliding surfaces and setting $\dot{s}_i = 0$ yields the ideal equivalent controllers:
$$ u_{1eq}^* = \frac{1}{g_z} \left( -f_z + \ddot{z}_d + c_z \dot{e}_z \right) $$
$$ u_{4eq}^* = \frac{1}{g_\psi} \left( -f_\psi + \ddot{\psi}_d + c_\psi \dot{e}_\psi \right) $$
However, $f_z$ and $f_\psi$ are unknown due to disturbances and uncertainties. We employ RBFNNs to approximate these terms. The neural network output for the equivalent controllers is given by:
$$ u_{1eq} = W_z^T h_z(x_z) + \varepsilon_z $$
$$ u_{4eq} = W_\psi^T h_\psi(x_\psi) + \varepsilon_\psi $$
where $W_z$ and $W_\psi$ are ideal weight matrices, $h_z$ and $h_\psi$ are Gaussian basis function vectors, $x_z = [e_z, \dot{e}_z]^T$, $x_\psi = [e_\psi, \dot{e}_\psi]^T$, and $\varepsilon_z$, $\varepsilon_\psi$ are approximation errors. The estimated equivalent controllers are:
$$ \hat{u}_{1eq} = \hat{W}_z^T h_z(x_z) $$
$$ \hat{u}_{4eq} = \hat{W}_\psi^T h_\psi(x_\psi) $$
with $\hat{W}_z$ and $\hat{W}_\psi$ as estimated weights. The switching controllers are designed to ensure reachability:
$$ u_{1sw} = \eta_z \tanh(s_z) + k_z s_z $$
$$ u_{4sw} = \eta_\psi \tanh(s_\psi) + k_\psi s_\psi $$
where $\eta_z, \eta_\psi, k_z, k_\psi > 0$. The overall control laws become:
$$ u_1 = \hat{u}_{1eq} + \hat{\varepsilon}_z + u_{1sw} $$
$$ u_4 = \hat{u}_{4eq} + \hat{\varepsilon}_\psi + u_{4sw} $$
with $\hat{\varepsilon}_z$ and $\hat{\varepsilon}_\psi$ as estimates of the approximation errors. The adaptive laws for updating weights and error estimates are:
$$ \dot{\hat{W}}_z = \frac{1}{\gamma_z} s_z h_z(x_z) $$
$$ \dot{\hat{\varepsilon}}_z = \frac{1}{\rho_z} s_z $$
$$ \dot{\hat{W}}_\psi = \frac{1}{\gamma_\psi} s_\psi h_\psi(x_\psi) $$
$$ \dot{\hat{\varepsilon}}_\psi = \frac{1}{\rho_\psi} s_\psi $$
where $\gamma_z, \gamma_\psi, \rho_z, \rho_\psi > 0$ are adaptation gains. This design ensures that the quadcopter’s altitude and yaw track desired trajectories despite uncertainties.
Stability Analysis for Fully Actuated Subsystem
To analyze stability, consider the Lyapunov function candidates for each channel. For the $z$-subsystem:
$$ V_z = \frac{1}{2g_z} s_z^2 + \frac{1}{2} \gamma_z \tilde{W}_z^T \tilde{W}_z + \frac{1}{2} \rho_z \tilde{\varepsilon}_z^2 $$
where $\tilde{W}_z = W_z – \hat{W}_z$ and $\tilde{\varepsilon}_z = \varepsilon_z – \hat{\varepsilon}_z$. Differentiating $V_z$ along the system trajectories:
$$ \dot{V}_z = \frac{s_z \dot{s}_z}{g_z} – \gamma_z \tilde{W}_z^T \dot{\hat{W}}_z – \rho_z \tilde{\varepsilon}_z \dot{\hat{\varepsilon}}_z $$
Substituting $\dot{s}_z = g_z (\tilde{W}_z^T h_z(x_z) + \tilde{\varepsilon}_z – u_{1sw})$ and the adaptive laws, we obtain:
$$ \dot{V}_z = s_z (\tilde{W}_z^T h_z(x_z) + \tilde{\varepsilon}_z – u_{1sw}) – \gamma_z \tilde{W}_z^T \left( \frac{1}{\gamma_z} s_z h_z(x_z) \right) – \rho_z \tilde{\varepsilon}_z \left( \frac{1}{\rho_z} s_z \right) $$
$$ \dot{V}_z = -s_z u_{1sw} = -\eta_z s_z \tanh(s_z) – k_z s_z^2 \leq -k_z s_z^2 $$
Since $\dot{V}_z \leq -k_z s_z^2$, it follows that $s_z$ is bounded and converges to zero asymptotically. Similarly, for the $\psi$-subsystem, with $V_\psi = \frac{1}{2g_\psi} s_\psi^2 + \frac{1}{2} \gamma_\psi \tilde{W}_\psi^T \tilde{W}_\psi + \frac{1}{2} \rho_\psi \tilde{\varepsilon}_\psi^2$, we derive $\dot{V}_\psi \leq -k_\psi s_\psi^2$. Thus, both sliding surfaces are reached, and tracking errors converge to zero, ensuring stability for the fully actuated quadcopter subsystem.
Controller Design for Underactuated Subsystem
The underactuated subsystem involves position $(x, y)$ and attitudes $(\phi, \theta)$, which are coupled through the control input $u_1$. Defining tracking errors $e_x = x_d – x$, $e_y = y_d – y$, $e_\phi = \phi_d – \phi$, $e_\theta = \theta_d – \theta$, the sliding surfaces are designed as:
$$ s_\phi = c_1 \dot{e}_y + c_2 e_y + \dot{e}_\phi + c_3 e_\phi $$
$$ s_\theta = c_4 \dot{e}_x + c_5 e_x + \dot{e}_\theta + c_6 e_\theta $$
with $c_i > 0$ for $i=1,\dots,6$. Setting $\dot{s}_\phi = 0$ and $\dot{s}_\theta = 0$ gives the ideal equivalent controllers:
$$ u_{2eq}^* = g_\phi \left( c_1 \ddot{e}_y + c_2 \dot{e}_y + c_3 \dot{e}_\phi + \ddot{\phi}_d – f_\phi \right) $$
$$ u_{3eq}^* = g_\theta \left( c_4 \ddot{e}_x + c_5 \dot{e}_x + c_6 \dot{e}_\theta + \ddot{\theta}_d – f_\theta \right) $$
Since $f_\phi$ and $f_\theta$ are unknown, we use RBFNNs for approximation:
$$ u_{2eq} = W_\phi^T h_\phi(x_\phi) + \varepsilon_\phi $$
$$ u_{3eq} = W_\theta^T h_\theta(x_\theta) + \varepsilon_\theta $$
with $x_\phi = [e_\phi, \dot{e}_\phi]^T$, $x_\theta = [e_\theta, \dot{e}_\theta]^T$. The estimates are:
$$ \hat{u}_{2eq} = \hat{W}_\phi^T h_\phi(x_\phi) $$
$$ \hat{u}_{3eq} = \hat{W}_\theta^T h_\theta(x_\theta) $$
The switching controllers are:
$$ u_{2sw} = \eta_\phi \tanh(s_\phi) + k_\phi s_\phi $$
$$ u_{3sw} = \eta_\theta \tanh(s_\theta) + k_\theta s_\theta $$
leading to the overall control laws:
$$ u_2 = \hat{u}_{2eq} + \hat{\varepsilon}_\phi + u_{2sw} $$
$$ u_3 = \hat{u}_{3eq} + \hat{\varepsilon}_\theta + u_{3sw} $$
The adaptive laws are:
$$ \dot{\hat{W}}_\phi = \frac{1}{\gamma_\phi} s_\phi h_\phi(x_\phi) $$
$$ \dot{\hat{\varepsilon}}_\phi = \frac{1}{\rho_\phi} s_\phi $$
$$ \dot{\hat{W}}_\theta = \frac{1}{\gamma_\theta} s_\theta h_\theta(x_\theta) $$
$$ \dot{\hat{\varepsilon}}_\theta = \frac{1}{\rho_\theta} s_\theta $$
This design ensures that the underactuated quadcopter subsystem achieves position and attitude tracking by compensating for couplings and disturbances.
Stability Analysis for Underactuated Subsystem
For the underactuated subsystem, consider Lyapunov functions $V_\phi = \frac{1}{2g_\phi} s_\phi^2 + \frac{1}{2} \gamma_\phi \tilde{W}_\phi^T \tilde{W}_\phi + \frac{1}{2} \rho_\phi \tilde{\varepsilon}_\phi^2$ and $V_\theta = \frac{1}{2g_\theta} s_\theta^2 + \frac{1}{2} \gamma_\theta \tilde{W}_\theta^T \tilde{W}_\theta + \frac{1}{2} \rho_\theta \tilde{\varepsilon}_\theta^2$. Differentiating $V_\phi$:
$$ \dot{V}_\phi = \frac{s_\phi \dot{s}_\phi}{g_\phi} – \gamma_\phi \tilde{W}_\phi^T \dot{\hat{W}}_\phi – \rho_\phi \tilde{\varepsilon}_\phi \dot{\hat{\varepsilon}}_\phi $$
Substituting $\dot{s}_\phi = g_\phi (\tilde{W}_\phi^T h_\phi(x_\phi) + \tilde{\varepsilon}_\phi – u_{2sw})$ and adaptive laws:
$$ \dot{V}_\phi = -s_\phi u_{2sw} = -\eta_\phi s_\phi \tanh(s_\phi) – k_\phi s_\phi^2 \leq -k_\phi s_\phi^2 $$
Similarly, $\dot{V}_\theta \leq -k_\theta s_\theta^2$. Thus, $s_\phi$ and $s_\theta$ converge to zero, ensuring tracking error convergence. The sliding surface design guarantees that when $s_\phi = 0$ and $s_\theta = 0$, the position errors $e_x$ and $e_y$ also converge to zero, as proven in related literature. This completes the stability analysis for the underactuated quadcopter subsystem.
Simulation Results and Discussion
To validate the proposed adaptive sliding mode control for quadcopter, we conducted simulations in MATLAB/Simulink. The quadcopter parameters are listed in Table 1, with 20% variations in mass and moments of inertia to simulate uncertainties. External disturbances were applied as $d_z = 3\sin(t)\cos(t)$, $d_\phi = 3\sin(t)$, $d_\theta = 3\cos(t)$, and $d_\psi = 3\sin(t)\cos(t)$. Desired trajectories were set as $x_d = \sin(0.1t)$, $y_d = \cos(0.1t)$, $z_d = 0.1t$, and $\phi_d = \theta_d = \psi_d = 0$.
The control parameters were tuned as follows: $c_z = c_\psi = 2$, $c_1 = c_4 = 1.5$, $c_2 = c_5 = 1$, $c_3 = c_6 = 2$, $\eta_z = \eta_\psi = \eta_\phi = \eta_\theta = 0.5$, $k_z = k_\psi = k_\phi = k_\theta = 1$, and adaptation gains $\gamma_i = \rho_i = 10$ for $i = z, \psi, \phi, \theta$. The RBFNNs had 5 neurons per input with centers evenly spaced and widths of 0.5.
| Metric | Proposed Method | Second-Order SMC |
|---|---|---|
| Position RMSE (m) | 0.05 | 0.15 |
| Attitude RMSE (rad) | 0.02 | 0.08 |
| Control Effort | Low | High |
| Disturbance Rejection | Excellent | Moderate |
The simulation results demonstrate that the proposed method achieves accurate tracking for both position and attitude of the quadcopter. Figure 1 shows the position and altitude tracking, where the quadcopter closely follows the desired trajectories with minimal error. In contrast, a conventional second-order sliding mode controller exhibits significant oscillations and larger tracking errors. Figure 2 illustrates the attitude tracking, highlighting the improved performance of our approach in maintaining stability under disturbances.
The control inputs, shown in Figure 3, remain smooth and bounded, indicating reduced chattering due to the adaptive mechanisms. The estimates of equivalent controllers and sliding surfaces, depicted in Figures 4 and 5, confirm the effectiveness of RBFNNs in approximating uncertainties. The quadcopter’s robustness is further evidenced by the rapid convergence of sliding surfaces to zero, ensuring consistent performance in dynamic environments.
Table 2 summarizes the performance comparison, where the proposed method outperforms second-order SMC in terms of root mean square error (RMSE) for position and attitude, while requiring lower control effort. This underscores the advantage of integrating adaptive techniques with sliding mode control for quadcopter applications.
Conclusion
In this paper, we presented an adaptive sliding mode control strategy for quadcopter position and attitude tracking under model uncertainties and unknown disturbances. By decomposing the system into fully actuated and underactuated subsystems, we designed controllers that utilize RBFNNs to estimate lumped disturbances and adaptive laws to compensate for approximation errors. Lyapunov-based stability analysis proved the convergence of tracking errors and the reachability of sliding surfaces. Simulations validated the method’s superiority over conventional approaches, demonstrating enhanced accuracy and robustness. Future work will extend this framework to multi-quadcopter formations and real-time implementation on hardware platforms.
