Fast Terminal Sliding Mode Control for Quadrotor Drones with Actuator Saturation

In recent years, quadrotor drones have garnered significant attention due to their versatility in applications ranging from aerial photography and surveillance to search and rescue operations. As a vertical take-off and landing unmanned aerial vehicle, the quadrotor drone can hover and maneuver in confined spaces, making it ideal for complex tasks. However, controlling a quadrotor drone is challenging due to its inherent nonlinearities, underactuation, and strong coupling between degrees of freedom. In practical scenarios, additional issues such as model uncertainties, external disturbances, and actuator saturation further complicate control design, potentially leading to performance degradation or even instability. Therefore, developing robust control strategies that ensure fast convergence and robustness against these adversities is crucial for reliable quadrotor drone operations.

Traditional control methods, such as PID, often fall short in handling nonlinear dynamics and disturbances. Sliding mode control (SMC) has emerged as a powerful technique for nonlinear systems due to its robustness against uncertainties and disturbances. In particular, terminal sliding mode control can achieve finite-time convergence, which is desirable for quadrotor drones requiring rapid response. However, conventional terminal sliding mode controllers may suffer from singularity issues and chattering. To address these, nonsingular fast terminal sliding mode (NFTSM) control has been proposed, combining fast convergence with singularity avoidance. Moreover, in real-world quadrotor drone applications, actuators like motors have physical limits, leading to saturation that must be accounted for in control design. This paper proposes a comprehensive control scheme for quadrotor drones based on a multi-loop structure, integrating adaptive NFTSM for position and attitude loops, and a disturbance observer-based SMC for the rotor speed loop with actuator saturation.

We begin by presenting a detailed nonlinear mathematical model of the quadrotor drone, which forms the foundation for control design. The model includes aerodynamics, motor dynamics, and saturation effects. Next, we design controllers for each loop: the outer position loop and inner attitude loop use adaptive NFTSM to handle uncertainties and disturbances, while the rotor speed loop employs a sliding mode disturbance observer to estimate and compensate for saturation-induced perturbations. Stability is proven via Lyapunov theory, ensuring finite-time convergence. Simulation results demonstrate the effectiveness of our approach in achieving fast and accurate tracking despite challenges. Throughout this paper, we emphasize the robustness and applicability of our method for quadrotor drone control, with the term ‘quadrotor drone’ repeatedly highlighted to underscore its focus.

The quadrotor drone consists of four rotors arranged in a cross configuration, each producing thrust and torque. By varying rotor speeds, the quadrotor drone can achieve translational and rotational motions. Let us define two coordinate frames: the earth-fixed frame \( E\{e_x, e_y, e_z\} \) and the body-fixed frame \( B\{e_1, e_2, e_3\} \). The position of the quadrotor drone’s center of mass in \( E \) is denoted by \( \mathbf{P} = [x, y, z]^T \), and its linear velocity is \( \mathbf{V} = [u, v, w]^T \). The attitude is represented by Euler angles \( \boldsymbol{\Phi} = [\phi, \theta, \psi]^T \) (roll, pitch, yaw), and the angular velocity in \( B \) is \( \boldsymbol{\Omega} = [p, q, r]^T \). The rotation matrix from \( B \) to \( E \) is given by:

$$ \mathbf{R} = \begin{bmatrix} c_\theta c_\psi & s_\phi s_\theta c_\psi – c_\phi s_\psi & c_\phi s_\theta c_\psi + s_\phi s_\psi \\ c_\theta s_\psi & s_\phi s_\theta s_\psi + c_\phi c_\psi & c_\phi s_\theta s_\psi – s_\phi c_\psi \\ -s_\theta & s_\phi c_\theta & c_\phi c_\theta \end{bmatrix} $$

where \( s_\cdot = \sin(\cdot) \), \( c_\cdot = \cos(\cdot) \). The dynamics of the quadrotor drone are derived from Newton-Euler equations, incorporating thrust, drag, and motor dynamics. The translational dynamics are:

$$ \dot{\mathbf{P}} = \mathbf{V} $$

$$ \dot{\mathbf{V}} = -g \mathbf{e}_z – \frac{C_d}{m} \|\mathbf{V}\| \mathbf{V} + \frac{T}{m} \mathbf{R} \mathbf{e}_z + \mathbf{D}_1 $$

where \( g \) is gravity, \( m \) is mass, \( C_d \) is drag coefficient, \( T \) is total thrust, and \( \mathbf{D}_1 \) represents external disturbances. The rotational dynamics are:

$$ \mathbf{J} \dot{\boldsymbol{\Omega}} = -\boldsymbol{\Omega} \times \mathbf{J} \boldsymbol{\Omega} + \sum_{i=1}^4 ((-1)^i w_i j_r) \boldsymbol{\Omega} \times \mathbf{e}_3 + \boldsymbol{\tau}_a $$

where \( \mathbf{J} = \text{diag}(J_x, J_y, J_z) \) is inertia matrix, \( j_r \) is rotor inertia, \( w_i \) is rotor speed, and \( \boldsymbol{\tau}_a = [\tau_{1a}, \tau_{2a}, \tau_{3a}]^T \) is torque vector. The rotor dynamics include saturation:

$$ j_r \dot{\omega}_i = \text{sat}(\tau_i) – k_m \omega_i^2 – c_v \omega_i + d_i $$

where \( \tau_i \) is motor torque, \( k_m \) is torque coefficient, \( c_v \) is viscous friction, \( d_i \) is disturbance, and \( \text{sat}(\cdot) \) is saturation function defined as:

$$ \text{sat}(\tau_i) = \begin{cases} \tau_{hi}, & \tau_i > \tau_{hi} \\ \tau_i, & \tau_{bi} \leq \tau_i \leq \tau_{hi} \\ \tau_{bi}, & \tau_i < \tau_{bi} \end{cases} $$

with \( \tau_{hi} \) and \( \tau_{bi} \) as upper and lower bounds. The thrust and torque relationships are:

$$ \begin{bmatrix} T \\ \tau_{1a} \\ \tau_{2a} \\ \tau_{3a} \end{bmatrix} = \begin{bmatrix} b & b & b & b \\ 0 & -lb & 0 & lb \\ -lb & 0 & lb & 0 \\ -k_m & k_m & -k_m & k_m \end{bmatrix} \begin{bmatrix} \omega_1^2 \\ \omega_2^2 \\ \omega_3^2 \\ \omega_4^2 \end{bmatrix} $$

where \( b \) is thrust coefficient and \( l \) is arm length. This model captures key aspects of quadrotor drone behavior, enabling control design.

To manage complexity, we adopt a multi-loop control structure for the quadrotor drone, comprising position, attitude, and rotor speed loops. This hierarchical approach simplifies design by decoupling dynamics. We propose adaptive nonsingular fast terminal sliding mode control for position and attitude loops, and disturbance observer-based sliding mode control for the rotor speed loop. This ensures robust performance against uncertainties, disturbances, and actuator saturation in quadrotor drone operations.

For the position loop, define tracking error \( \mathbf{e}_1 = \mathbf{P} – \mathbf{P}_d \), where \( \mathbf{P}_d \) is desired position. The dynamics can be rewritten as:

$$ \dot{\mathbf{X}}_{11} = \mathbf{X}_{12}, \quad \dot{\mathbf{X}}_{12} = \mathbf{f}_1(\mathbf{X}_{12}) + \mathbf{u}_1 + \mathbf{d}_1 $$

where \( \mathbf{X}_{11} = \mathbf{P} \), \( \mathbf{X}_{12} = \mathbf{V} \), \( \mathbf{f}_1 \) is known nonlinearity, \( \mathbf{u}_1 \) is virtual control, and \( \mathbf{d}_1 = \Delta \mathbf{f}_1 + \mathbf{D}_1 \) aggregates uncertainties and disturbances. We design a nonsingular fast terminal sliding surface for each axis \( i \in \{x, y, z\} \):

$$ s_{1,i} = \dot{e}_{1,i} + \alpha_{1,i} e_{1,i} + \lambda(e_{1,i}) $$

with \( \lambda(e_{1,i}) = \begin{cases} \beta_{1,i} e_{1,i}^{m_1/n_1}, & |e_{1,i}| \geq e_{s1} \\ k_1 e_{1,i} + k_2 e_{1,i}^2 \text{sgn}(e_{1,i}), & |e_{1,i}| < e_{s1} \end{cases} \), where \( \alpha_{1,i}, \beta_{1,i} > 0 \), \( m_1, n_1 \) are positive odd integers with \( m_1 < n_1 \), \( e_{s1} > 0 \), \( k_1 = (2 – m_1/n_1) e_{s1}^{m_1/n_1 – 1} \), \( k_2 = (m_1/n_1 – 1) e_{s1}^{m_1/n_1 – 2} \). This avoids singularity while ensuring fast convergence. The control law is:

$$ u_{1,i} = -\gamma_{1,i} s_{1,i} – \xi_{1,i} s_{1,i}^{\mu_1} + \ddot{P}_{d,i} – f_{1,i} – \hat{d}_{1,i} – \alpha_{1,i} \dot{e}_{1,i} – \dot{\lambda}(e_{1,i}) $$

where \( \gamma_{1,i}, \xi_{1,i} > 0 \), \( 0 < \mu_1 < 1 \), and \( \hat{d}_{1,i} \) is estimate of \( d_{1,i} \). The adaptation law is:

$$ \dot{\hat{d}}_{1,i} = r_{1,i} s_{1,i} $$

with \( r_{1,i} > 0 \). Stability is proven via Lyapunov function \( V_{1,i} = \frac{1}{2} s_{1,i}^2 + \frac{1}{2r_{1,i}} \tilde{d}_{1,i}^2 \), where \( \tilde{d}_{1,i} = d_{1,i} – \hat{d}_{1,i} \). Similarly, for the attitude loop, define error \( \mathbf{e}_2 = \boldsymbol{\Phi} – \boldsymbol{\Phi}_d \), with dynamics:

$$ \dot{\mathbf{X}}_{21} = \mathbf{X}_{22}, \quad \dot{\mathbf{X}}_{22} = \mathbf{f}_2(\mathbf{X}_{12}) + \mathbf{g} \mathbf{u}_2 + \mathbf{d}_2 $$

where \( \mathbf{X}_{21} = \boldsymbol{\Phi} \), \( \mathbf{X}_{22} = \boldsymbol{\Omega} \), \( \mathbf{g} = \text{diag}(1/J_x, 1/J_y, 1/J_z) \), \( \mathbf{u}_2 = \boldsymbol{\tau}_a \), and \( \mathbf{d}_2 = \Delta \mathbf{f}_2 + \mathbf{D}_2 \). The sliding surface is:

$$ s_{2,i} = \dot{e}_{2,i} + \alpha_{2,i} e_{2,i} + \lambda(e_{2,i}) $$

with parameters analogous to position loop. Control law and adaptation law are designed similarly, ensuring finite-time convergence for the quadrotor drone’s attitude.

In the rotor speed loop, actuator saturation is treated as additive disturbance. Define error \( e_i = \omega_i – \omega_{d,i} \), where \( \omega_{d,i} \) is desired speed from attitude controller. The dynamics are:

$$ j_r \dot{\omega}_i = \tau_i + \delta_i – k_m \omega_i^2 – c_v \omega_i + d_i $$

where \( \delta_i = \text{sat}(\tau_i) – \tau_i \) is saturation effect. Let \( \bar{\tau}_i = \tau_i / j_r \), \( \Gamma_i = -(k_m \omega_i^2 + c_v \omega_i)/j_r – \dot{\omega}_{d,i} + \kappa_i e_i \), and \( \Delta \Gamma_i = (\delta_i + d_i)/j_r \). Then, \( \dot{s}_i = \bar{\tau}_i + \Gamma_i + \Delta \Gamma_i \) for sliding surface \( s_i = e_i + \kappa_i \int e_i \), \( \kappa_i > 0 \). Design a disturbance observer:

$$ c_i = (D_i + \eta_i) \text{sgn}(\sigma_i), \quad \sigma_i = s_i – z_i, \quad \dot{z}_i = \bar{\tau}_i + \Gamma_i + c_i $$

where \( D_i \) bounds \( \Delta \Gamma_i \), \( \eta_i > 0 \). The control law is:

$$ \tau_i = j_r (-\Gamma_i – c_i – \varepsilon_i \text{sgn}(s_i) – k_i s_i) $$

with \( \varepsilon_i, k_i > 0 \). This compensates saturation and disturbances, guaranteeing stability for quadrotor drone rotor control.

To summarize the control parameters, we present tables for clarity. Table 1 lists quadrotor drone system parameters used in simulations, while Table 2 provides control gains for each loop.

Table 1: Quadrotor drone system parameters
Parameter Symbol Value
Mass \( m \) 0.652 kg
Gravity \( g \) 9.8 m/s²
Inertia (x-axis) \( J_x \) 1.3215 × 10⁻⁴ kg·m²
Inertia (y-axis) \( J_y \) 1.2522 × 10⁻⁴ kg·m²
Inertia (z-axis) \( J_z \) 2.3527 × 10⁻⁴ kg·m²
Rotor inertia \( j_r \) 2.3 × 10⁻³ kg·m²
Thrust coefficient \( b \) 2.103 × 10⁻⁴ N/(rad/s)²
Torque coefficient \( k_m \) 2.091 × 10⁻⁶ N·m/(rad/s)²
Viscous friction \( c_v \) 0.6 × 10⁻⁴ N/(rad/s)
Arm length \( l \) 0.12 m
Table 2: Control parameters for quadrotor drone loops
Loop Parameter Value
Position \( \alpha_{1,x}, \alpha_{1,y}, \alpha_{1,z} \) 10, 10, 11
\( \beta_{1,x}, \beta_{1,y}, \beta_{1,z} \) 1, 1, 1
\( \gamma_{1,x}, \gamma_{1,y}, \gamma_{1,z} \) 3, 3, 5
\( \xi_{1,x}, \xi_{1,y}, \xi_{1,z} \) 1, 1, 1
\( m_1, n_1, \mu_1, e_{s1} \) 3, 5, 0.6, 0.01
Attitude \( \alpha_{2,\phi}, \alpha_{2,\theta}, \alpha_{2,\psi} \) 8, 8, 9
\( \beta_{2,\phi}, \beta_{2,\theta}, \beta_{2,\psi} \) 0.5, 0.5, 0.5
\( \gamma_{2,\phi}, \gamma_{2,\theta}, \gamma_{2,\psi} \) 2, 2, 3
\( m_2, n_2, \mu_2, e_{s2} \) 3, 5, 0.6, 0.01
Rotor Speed \( \kappa_i \) 5
\( \varepsilon_i, k_i \) 0.1, 2
\( \eta_i, D_i \) 0.5, 1.0

For simulation, we consider a quadrotor drone with initial conditions: position \( [0, 0, 0]^T \) m, attitude \( [0, 0, 0]^T \) rad. Desired trajectory is set to \( [0.5, 0.8, 1.0]^T \) m for position and 0.1 rad for yaw. At t = 5 s, a pulse disturbance is applied to test robustness. The control algorithms are implemented in MATLAB/Simulink, and results show fast convergence within 2 s, with recovery after disturbance. The quadrotor drone maintains stable hover and tracking, demonstrating effectiveness of our approach.

Key performance metrics can be summarized in Table 3, highlighting the quadrotor drone’s response characteristics.

Table 3: Performance metrics for quadrotor drone control
Metric Value Description
Settling time (position) < 2 s Time to reach within 2% of desired
Overshoot < 5% Maximum overshoot in position
Disturbance rejection < 0.5 s Recovery time after pulse at 5 s
Control effort Bounded Torques within saturation limits

The proposed control scheme offers several advantages for quadrotor drone applications. First, the nonsingular fast terminal sliding mode ensures rapid finite-time convergence without singularity issues, crucial for agile quadrotor drone maneuvers. Second, adaptive laws estimate uncertainties and disturbances online, enhancing robustness without requiring prior knowledge. Third, the disturbance observer handles actuator saturation effectively, preventing performance degradation. These features make our method suitable for real-world quadrotor drone operations where conditions are unpredictable.

In comparison to existing methods, our approach integrates multiple techniques into a cohesive framework. For instance, traditional sliding mode control for quadrotor drones may suffer from chattering, but our use of terminal sliding reduces this while maintaining robustness. Adaptive elements compensate for model inaccuracies common in quadrotor drones due to payload variations or aerodynamic changes. The disturbance observer explicitly addresses saturation, a practical issue often overlooked in theoretical designs. Thus, our controller advances quadrotor drone control by balancing performance and practicality.

To further illustrate the mathematical rigor, we derive stability proofs using Lyapunov theory. For the position loop, consider Lyapunov candidate \( V_{1,i} = \frac{1}{2} s_{1,i}^2 + \frac{1}{2r_{1,i}} \tilde{d}_{1,i}^2 \). Its derivative is:

$$ \dot{V}_{1,i} = s_{1,i} \dot{s}_{1,i} – \frac{1}{r_{1,i}} \tilde{d}_{1,i} \dot{\hat{d}}_{1,i} $$

Substituting control and adaptation laws yields:

$$ \dot{V}_{1,i} = -\gamma_{1,i} s_{1,i}^2 – \xi_{1,i} s_{1,i}^{\mu_1+1} \leq 0 $$

ensuring asymptotic stability and finite-time convergence via LaSalle’s principle. Similar analysis applies to attitude and rotor speed loops, confirming overall stability for the quadrotor drone system.

In conclusion, we have presented a comprehensive control strategy for quadrotor drones facing model uncertainties, external disturbances, and actuator saturation. By combining adaptive nonsingular fast terminal sliding mode with disturbance observers in a multi-loop structure, we achieve fast, robust, and stable control. Simulations validate the approach, showing prompt trajectory tracking and disturbance rejection. Future work may extend this to swarm coordination or fault-tolerant control for quadrotor drones. Overall, this contribution enhances the reliability and performance of quadrotor drones in diverse applications.

Throughout this paper, we emphasize the centrality of quadrotor drone technology, and our method provides a solid foundation for advanced autonomous systems. The integration of adaptive and observer-based techniques sets a precedent for handling real-world constraints in quadrotor drone control. We hope this work inspires further research into robust control methodologies for unmanned aerial vehicles, particularly quadrotor drones, as they continue to evolve and impact society.

Scroll to Top