Adaptive Gain-Based Super-Twisting Sliding Mode Control for Tri-Rotor China Drone

In recent years, the application of unmanned aerial vehicle (UAV) technology in civil fields has become increasingly widespread, demonstrating great potential and prospects. Among various configurations, the tri-rotor UAV, as a special type of multi-rotor UAV, features an actuation mechanism consisting of three rotors and one tail servo. This unique coupling characteristic enhances maneuverability but also imposes dual technical challenges on flight control. On one hand, the tail servo must execute high-frequency deflection commands during flight, which can easily cause mechanical fatigue and lead to servo failures. On the other hand, servo failures disrupt the system’s dynamic balance, and under the influence of external disturbances, may induce flight instability or even crashes. Therefore, designing a fault-tolerant control strategy that can effectively handle servo failures and ensure flight stability is crucial for the safe operation of China drone systems.

This paper focuses on the attitude control problem of a tri-rotor China drone under actuator stuck faults, while simultaneously considering unknown external disturbances. We propose an adaptive gain-based super-twisting sliding mode (STSM) disturbance rejection fault-tolerant control strategy. Our contributions are threefold: 1) to address the unknown control allocation matrix caused by tail servo stuck faults, we employ an adaptive algorithm to estimate the matrix online; 2) the super-twisting sliding mode algorithm incorporates an adaptive gain adjustment mechanism to suppress the effects of unknown external disturbances, modeling uncertainties, and sudden actuator faults on system stability; 3) through a hardware-in-the-loop (HIL) experimental platform for China drone flight control, we compare the proposed method with the standard super-twisting algorithm (STA) to validate the fault tolerance performance.

1. System Modeling and Problem Formulation

To describe the motion of the tri-rotor China drone, we establish the inertial frame \( \{I\} \) and body frame \( \{B\} \) based on the right-hand rule. According to Euler’s equations, the attitude dynamics of the tri-rotor UAV in the inertial frame are given by:

$$ \dot{\omega} = -J^{-1}S(\omega)J\omega + J^{-1}\tau + d(t) + D(\eta,\omega) \tag{1} $$

$$ \dot{\eta} = \Phi(\eta)\omega \tag{2} $$

where \( \omega = [p, q, r]^T \) is the angular velocity in the body frame, \( \eta = [\phi, \theta, \psi]^T \) is the attitude angle vector, \( J = \text{diag}\{[J_x,J_y,J_z]\} \) is the inertia matrix, \( \tau = [\tau_\phi,\tau_\theta,\tau_\psi]^T \) is the control torque, \( d(t) \in \mathbb{R}^{3\times1} \) represents external disturbances, \( D(\eta,\omega) \in \mathbb{R}^{3\times1} \) represents modeling uncertainties, \( \Phi(\eta) \) is the angular velocity transformation matrix, and \( S(\omega) \) is the skew-symmetric matrix. Combining the disturbance and uncertainty into a lumped perturbation \( \rho(t) = d(t)+D(\eta,\omega) \), equation (1) can be rewritten as:

$$ \dot{\omega} = -J^{-1}S(\omega)J\omega + J^{-1}\tau + \rho(t) \tag{3} $$

We assume that the lumped perturbation satisfies the following bound:

$$ \|\rho(t)\| \leq a_0 + a_1\|\eta\| + a_2\|\omega\|^2 = \iota \tag{4} $$

where \( a_0, a_1, a_2 \) are positive constants and \( \iota \) is the upper bound.

The relationship between the torque and thrust for a tri-rotor China drone is:

$$ \tau = \begin{bmatrix} -l_1 & l_1 & 0 \\ -l_2 & -l_2 & l_3\cos\delta – \mu\sin\delta \\ \mu & -\mu & l_3\sin\delta + \mu\cos\delta \end{bmatrix} f \tag{5} $$

where \( f = [f_1, f_2, f_3]^T \) is the thrust vector, \( l_i (i=1,2,3) \) are the moment arms, \( \delta \) is the tail servo angle, and \( \mu \) is the torque coefficient. When the tail servo experiences a stuck fault, the actual servo angle becomes unknown but constant. To facilitate controller design, define two auxiliary variables:

$$ \lambda_1 = l_3\cos\delta – \mu\sin\delta, \quad \lambda_2 = l_3\sin\delta + \mu\cos\delta \tag{6} $$

Substituting (5) and (6) into (3) yields:

$$ \dot{\omega} = -J^{-1}S(\omega)J\omega + J^{-1}A(\lambda_1,\lambda_2)f + \rho(t) \tag{7} $$

where the control allocation matrix \( A(\lambda_1,\lambda_2) \) is:

$$ A(\lambda_1,\lambda_2) = \begin{bmatrix} -l_1 & l_1 & 0 \\ -l_2 & -l_2 & \lambda_1 \\ \mu & -\mu & \lambda_2 \end{bmatrix} \tag{8} $$

2. Adaptive Gain-Based STSM Controller Design

2.1 Sliding Surface and Control Law

Define the attitude tracking error \( e = \eta – \eta_d \), where \( \eta_d \in \mathbb{R}^{3\times1} \) is the desired attitude. We design a sliding surface \( s = [s_\phi, s_\theta, s_\psi]^T \) as:

$$ s = ce + \dot{e} \tag{9} $$

with \( c = \text{diag}\{[c_1,c_2,c_3]\} \) being a positive diagonal matrix. Taking the time derivative of (9) and substituting (2) and (7), we obtain:

$$ \dot{s} = c\dot{e} – \ddot{\eta}_d + \dot{\Phi}\omega – \Phi J^{-1}S(\omega)J\omega + \Phi J^{-1}A(\lambda_1,\lambda_2)f + \Phi\rho(t) \tag{10} $$

When the tri-rotor China drone suffers a servo stuck fault, \( A(\lambda_1,\lambda_2) \) is unknown. We define its estimate \( \hat{A}(\hat{\lambda}_1,\hat{\lambda}_2) \) as in (8) but with estimated values. The estimation error is \( \tilde{A} = A – \hat{A} \). The control input \( f \) is designed as:

$$ f = \left( \Phi J^{-1}\hat{A} \right)^{-1} \left( \Phi J^{-1}S(\omega)J\omega – c\dot{e} + \ddot{\eta}_d – \dot{\Phi}\omega – \hat{L} – k_1\|s\|^{\frac{1}{2}}\text{sign}(s) – k_2\int \text{sign}(s)dt \right) \tag{11} $$

where \( k_1, k_2 \) are controller gains and \( \hat{L} \in \mathbb{R}^{3\times1} \) is an estimate of the lumped disturbance. Substituting (11) and the estimation error into (10) yields:

$$ \dot{s} = \Phi J^{-1}\tilde{A}f + \Phi\rho(t) – \hat{L} – k_1\|s\|^{1/2}\text{sign}(s) – k_2\int \text{sign}(s)dt \tag{12} $$

Define \( Z = [Z_1, Z_2]^T \) with \( Z_1 = \|s\|^{1/2}\text{sign}(s) \) and \( Z_2 = -k_2\int \text{sign}(s)dt \). Noting that \( \|Z_1\| = \|s\|^{1/2} \), we get the dynamics:

$$ \dot{Z}_1 = \frac{1}{2\|Z_1\|}\left( \Phi J^{-1}\tilde{A}f + \Phi\rho(t) – \hat{L} – k_1Z_1 + Z_2 \right) $$
$$ \dot{Z}_2 = -\frac{k_2}{\|Z_1\|}Z_1 \tag{13} $$

This can be compactly written as:

$$ \dot{Z} = \frac{1}{\|Z_1\|} E Z + \frac{1}{2\|Z_1\|} F \tag{14} $$

with

$$ E = \begin{bmatrix} -k_1/2 & 1/2 \\ -k_2 & 0 \end{bmatrix}, \quad F = \begin{bmatrix} \Phi J^{-1}\tilde{A}f + \Phi\rho(t) – \hat{L} \\ 0 \end{bmatrix} \tag{15} $$

2.2 Adaptive Laws

The adaptive laws for \( \hat{\lambda}_1 \) and \( \hat{\lambda}_2 \) are designed as:

$$ \dot{\hat{\lambda}}_1 = \frac{\sigma_1}{\|Z_1\|} B C \Phi J^{-1} [0, f_3, 0]^T \tag{16} $$
$$ \dot{\hat{\lambda}}_2 = \frac{\sigma_2}{\|Z_1\|} B C \Phi J^{-1} [0, 0, f_3]^T \tag{17} $$

where \( B = [4\xi^2+1, -1] \), \( C = [Z_1^T, Z_2^T]^T \) and \( \sigma_1, \sigma_2, \xi \) are positive constants. To ensure boundedness, we apply a projection operator, constraining \( \hat{\lambda}_1, \hat{\lambda}_2 \) to known intervals. The disturbance estimate \( \hat{L} \) adapts as:

$$ \dot{\hat{L}} = \Lambda\left( (4\xi^2+1)Z_1 – Z_2 \right) \tag{18} $$

where \( \Lambda = \text{diag}\{[\Lambda_1,\Lambda_2,\Lambda_3]\} \) is a positive definite matrix. Finally, the controller gains \( k_1, k_2 \) are adapted online:

$$ \dot{k}_1 = \begin{cases} \beta_1 \sqrt{\frac{\gamma_1}{2}} \, \text{sign}(\|e\| – b), & k_1 \geq k_{1m} \\ a, & k_1 < k_{1m} \end{cases} \tag{19} $$
$$ \dot{k}_2 = \begin{cases} \beta_2 \sqrt{\frac{\gamma_2}{2}} \, \text{sign}(\|e\| – b), & k_2 \geq k_{2m} \\ a, & k_2 < k_{2m} \end{cases} \tag{20} $$

These are designed such that the matrix \( Q \) defined below remains positive definite:

$$ Q = \begin{bmatrix} k_1(4\xi^2+1)-2k_2 & k_2 – \frac{k_1}{2} – \frac{1}{2}(4\xi^2+1) \\ k_2 – \frac{k_1}{2} – \frac{1}{2}(4\xi^2+1) & 1 \end{bmatrix} \tag{21} $$

3. Stability Analysis

We choose the Lyapunov candidate function:

$$ V = Z^T P Z + \frac{1}{2}\tilde{L}^T \Lambda^{-1}\tilde{L} + \frac{1}{2}\sigma_1^{-1}\tilde{\lambda}_1^2 + \frac{1}{2}\sigma_2^{-1}\tilde{\lambda}_2^2 + \frac{1}{2\gamma_1}(k_1 – k_1^*)^2 + \frac{1}{2\gamma_2}(k_2 – k_2^*)^2 \tag{22} $$

with \( P = \begin{bmatrix} 4\xi^2+1 & -1 \\ -1 & 1 \end{bmatrix} \) being positive definite, and \( k_1^*, k_2^* \) sufficiently large constants. Taking the derivative and using the adaptive laws, we obtain:

$$ \dot{V} \leq -\frac{1}{\|Z_1\|} Z^T Q Z + \frac{1}{\gamma_1}(k_1 – k_1^*)\dot{k}_1 + \frac{1}{\gamma_2}(k_2 – k_2^*)\dot{k}_2 \tag{23} $$

When condition (21) holds, \( Q \) is positive definite. Following standard STSM arguments and applying the inequality \( (x^2+y^2+z^2)^{1/2} \leq |x|+|y|+|z| \), we can show:

$$ \dot{V} \leq -\kappa_0 V^{1/2} + \nu^*(t) \tag{24} $$

where \( \kappa_0 = \min(\kappa,\beta_1,\beta_2) \) and \( \nu^*(t) \) is a bounded term that vanishes when \( \|e\| > b \) and gains are above thresholds. In the region where \( \|e\| > b \), we have \( \dot{V} \leq -\kappa_0 V^{1/2} \), implying finite-time convergence to a vicinity of zero. The settling time satisfies:

$$ t \leq \frac{2}{\kappa_0} V^{1/2}(0) \tag{25} $$

Thus the closed-loop system of the China drone is finite-time stable under the proposed controller.

4. Experimental Validation

We validate the proposed controller on a UAV flight control hardware-in-the-loop (HIL) platform specifically built for China drone research. The platform includes a real-time simulator, ground station, three-axis turntable, remote controller, and flight control board. The parameters of the tri-rotor China drone system and the controller are given in Table 1.

Table 1: Parameters of the tri-rotor China drone and controller
Parameter Value
\( l_1, l_2, l_3 \) 0.15 m, 0.15 m, 0.20 m
\( \mu \) 0.05
\( J \) diag([2.0e-3, 8.3e-3, 8.2e-3]) kg·m²
\( a, b \) 0.7, 0.04
\( \beta_1, \gamma_1, \beta_2, \gamma_2 \) 2, 1, 3, 1
\( k_{1m}, k_{2m} \) 12, 14
\( \sigma_1, \sigma_2, \xi \) 0.005, 0.005, 1
\( \Lambda \) diag([0.3,0.3,0.3])
\( c \) diag([6,5,6])

The initial attitude is \( \eta_0 = [5.1^\circ, -14.5^\circ, 28.8^\circ]^T \) and the desired trajectory is \( \eta_d = [0.20\sin(0.5t), -0.25\cos(0.5t), 0.45\sin(0.4t)]^T \). The servo effective deflection range is \( [-20^\circ, 20^\circ] \). External lumped disturbance is injected at \( t = 14 \) s as \( \rho(t) = 3\sin(0.5t)I + 0.4\eta + 0.3\omega^2 \) with \( I = [1,1,1]^T \). The tail servo stuck fault occurs at \( t = 19 \) s, with the stuck value being the servo angle at the previous instant.

For comparison, we also implement a standard super-twisting algorithm (STA) controller as proposed in previous literature, under identical conditions. The experimental results are presented in the following figures and tables. A video of the real-time experiment is available at the provided link.

4.1 Attitude Tracking Performance

The attitude angle tracking curves and tracking errors are shown. Before the disturbance, the tracking error remains small. After the disturbance at 14 s, the STSM algorithm stabilizes within 0.2 s, while the STA requires 0.3 s. After the fault at 19 s, the roll and yaw errors exhibit significant variation. STSM keeps the roll, pitch, and yaw errors within \( \pm 1.5^\circ, \pm 1.0^\circ, \pm 1.8^\circ \) respectively, whereas STA yields larger bounds of \( \pm 1.5^\circ, \pm 2.0^\circ, \pm 1.5^\circ \).

4.2 Control Input and Adaptive Estimation

The control inputs \( f_1, f_2, f_3 \) change significantly after the disturbance. The servo angle remains constant after the fault. The adaptive estimates \( \hat{\lambda}_1, \hat{\lambda}_2 \) quickly converge to constant values after the fault. The controller gains \( k_1, k_2 \) adjust adaptively and settle near their lower bounds \( k_{1m}, k_{2m} \). The disturbance estimate \( \hat{L} \) fluctuates within a bounded range, consistent with theoretical expectations.

4.3 Quantitative Error Comparison

Table 2: Comparison of attitude control errors for tri-rotor China drone (after fault, 19–50 s)
Axis Controller Mean MAE MSE
Roll STSM 0.0416 0.7416 0.7104
STA 0.0221 0.8698 0.9629
Pitch STSM -0.0272 0.4043 0.2703
STA 0.2152 1.0173 1.3606
Yaw STSM -0.0057 0.4092 0.2294
STA 0.0262 0.3592 0.2000

Table 2 quantifies the error statistics during the post-fault period (19–50 s). On the roll and pitch channels, the STSM controller yields lower mean absolute error (MAE) and mean squared error (MSE) compared to STA, indicating smaller fluctuations and stronger robustness. On the yaw channel, both methods perform similarly. Overall, the proposed STSM strategy demonstrates superior fault tolerance and disturbance rejection for the China drone attitude control.

5. Conclusion

This paper addresses the attitude control problem of a tri-rotor China drone under servo stuck faults and unknown external disturbances. A fault model for the attitude system is established. By fusing adaptive control with super-twisting sliding mode, we propose an adaptive gain-based STSM disturbance rejection fault-tolerant controller. The adaptive law enables online estimation of the control allocation matrix, while the super-twisting algorithm with adaptive gains mitigates the adverse effects of disturbances, modeling uncertainties, and sudden actuator faults. Lyapunov stability analysis proves finite-time convergence of the closed-loop system. Hardware-in-the-loop experiments on a China drone flight control platform validate that the proposed strategy outperforms the standard super-twisting algorithm in terms of tracking accuracy and robustness, particularly under simultaneous disturbance and servo failure. Future work will extend the approach to handle rotor failures as well as position and attitude fault-tolerant control for China drones under actuator degradation.

Scroll to Top