Attitude Control of Quadrotor Drone Using Disturbance Observer and Command Filtering

In this paper, I address the challenging problem of attitude tracking control for quadrotor drones, which are highly susceptible to actuator failures and external disturbances such as wind gusts and turbulence. The quadrotor drone is a versatile unmanned aerial vehicle (UAV) with applications ranging from surveillance to delivery, but its nonlinear dynamics and underactuated nature make control design complex. Here, I propose a finite-time fault-tolerant control scheme based on backstepping, integrating a neural network disturbance observer and command filtering techniques. This approach ensures robust and rapid convergence of attitude errors, even in the presence of uncertainties and faults. The key innovations include a finite-time disturbance observer for quick compensation, a command filter to avoid computational complexity, and input saturation handling to prevent singularities. Throughout this work, the term “quadrotor drone” will be emphasized to highlight the focus on this specific UAV platform.

The quadrotor drone operates in a three-dimensional space, with its attitude dynamics governed by Euler angles and angular velocities. The system can be described by the following state-space model, which accounts for actuator faults and disturbances:

$$ \dot{\Theta} = R(\Theta) \omega $$
$$ \dot{\omega} = -J^{-1} \omega \times J\omega + J^{-1} \tau_F + D $$

where \(\Theta = [\phi, \theta, \psi]^T\) represents the roll, pitch, and yaw angles; \(\omega \in \mathbb{R}^3\) is the angular velocity vector; \(J = \text{diag}(I_{xx}, I_{yy}, I_{zz})\) is the inertia matrix; \(\tau_F \in \mathbb{R}^3\) is the input torque under actuator faults; and \(D \in \mathbb{R}^3\) denotes unknown external disturbances. The rotation matrix \(R(\Theta)\) is non-singular and defined as:

$$ R(\Theta) = \begin{bmatrix} 1 & \sin\phi \tan\theta & \cos\phi \tan\theta \\ 0 & \cos\phi & -\sin\phi \\ 0 & \sin\phi / \cos\theta & \cos\phi / \cos\theta \end{bmatrix} $$

Actuator faults are modeled as \(\tau_F = \rho \tau + \kappa\), where \(\rho = \text{diag}(\rho_1, \rho_2, \rho_3)\) is a fault gain matrix and \(\kappa = [\kappa_1, \kappa_2, \kappa_3]^T\) is a bias vector. This covers scenarios like partial failure or combined faults. To protect the quadrotor drone’s motors, I introduce an input saturation function using hyperbolic tangent:

$$ \text{sat}(x) = \begin{cases} x_{\text{max}} \tanh(x), & x_i \geq 0 \\ x_{\text{min}} \tanh(x), & x_i < 0 \end{cases} $$

This limits torque inputs and avoids chattering. The control objective is to ensure that the quadrotor drone’s attitude tracks a desired reference signal within finite time, despite faults and disturbances, while keeping all closed-loop signals bounded.

To achieve this, I design a finite-time neural network disturbance observer that rapidly estimates and compensates for the combined effects of actuator faults and external disturbances. The observer structure is as follows:

$$ \hat{\Delta} = \hat{w}^T H + \hat{\eta} \frac{\tilde{\omega}}{\|\tilde{\omega}\|} + k_1 (\tilde{\omega})^{p_0/q_0} $$
$$ \dot{\hat{\omega}} = -J^{-1} \omega \times J\omega + J^{-1} \text{sat}(\tau) + \hat{w}^T H + \hat{\eta} \frac{\tilde{\omega}}{\|\tilde{\omega}\|} + k_1 (\tilde{\omega})^{p_0/q_0} $$

where \(\tilde{\omega} = \omega – \hat{\omega}\) is the estimation error, \(\hat{\Delta}\) is the estimated disturbance, \(H\) is the basis vector of a radial basis function (RBF) neural network, and \(\hat{w}\), \(\hat{\eta}\) are adaptive parameters. The parameters \(k_1, p_0, q_0\) are positive with \(p_0/q_0 < 1\). The adaptive laws are:

$$ \dot{\hat{w}} = k_2 (H \tilde{\omega}^T – k_3 \hat{w}) $$
$$ \dot{\hat{\eta}} = k_4 (\|\tilde{\omega}\| – k_5 \hat{\eta}) $$

Using Lyapunov analysis, I prove that this observer ensures finite-time convergence of estimation errors. For instance, consider the Lyapunov function \(V_0 = \frac{1}{2} \tilde{\omega}^T \tilde{\omega} + \frac{1}{2k_2} \text{tr}(\tilde{w}^T \tilde{w}) + \frac{1}{k_4} \tilde{\eta}^2\), where \(\tilde{w} = w^* – \hat{w}\) and \(\tilde{\eta} = \eta – \hat{\eta}\). Its derivative satisfies:

$$ \dot{V}_0 \leq -A_0 V_0^{(p_0+q_0)/(2q_0)} + B_0 $$

with \(A_0 > 0\) and bounded \(B_0\). By Lemma 1, the errors converge in finite time, enhancing the quadrotor drone’s robustness.

Next, I develop a controller using backstepping with command filtering. The system is transformed into error coordinates: \(z_1 = \Theta – \Theta_d\) and \(z_2 = \omega – \bar{\alpha}\), where \(\Theta_d\) is the desired attitude and \(\bar{\alpha}\) is the output of a first-order command filter:

$$ \bar{\alpha} = \alpha – \chi \dot{\bar{\alpha}} $$

Here, \(\alpha\) is the virtual control law, and \(\chi = \text{diag}(\chi_1, \chi_2, \chi_3)\) is a design parameter matrix. To compensate for filtering errors, I introduce a compensation mechanism with signals \(\xi_1\) and \(\xi_2\):

$$ \dot{\xi}_1 = -r_1 \xi_1 + R\bar{\alpha} – R\alpha + R\xi_2 – P l_1 $$
$$ \dot{\xi}_2 = -r_2 \xi_2 – R^T \xi_1 – Q l_2 $$

where \(P = \text{diag}(\text{sign}(\xi_{11}), \text{sign}(\xi_{12}), \text{sign}(\xi_{13}))\), \(Q = \text{diag}(\text{sign}(\xi_{21}), \text{sign}(\xi_{22}), \text{sign}(\xi_{23}))\), and \(l_1, l_2\) are positive vectors. The compensated errors are \(e_1 = z_1 – \xi_1\) and \(e_2 = z_2 – \xi_2\). The virtual control law is designed as:

$$ \alpha = R^{-1} \left( -r_1 z_1 + \dot{\Theta}_d – c_1 (e_1^T e_1)^{(2p-1)/2} \right) $$

with \(c_1 > 0\) and \(p \in (1/2, 1)\). The actual control torque for the quadrotor drone is:

$$ \tau = J \left[ -J^{-1} \omega \times J\omega – \hat{\Delta} + \dot{\bar{\alpha}} – r_2 z_2 – R^T z_1 – c_2 (e_2^T e_2)^{(2p-1)/2} \right] $$

where \(c_2 > 0\). This controller incorporates the disturbance estimate \(\hat{\Delta}\) to counteract faults and disturbances, ensuring finite-time tracking.

Stability analysis is conducted using Lyapunov theory. Consider the Lyapunov function \(V_2 = \frac{1}{2} e_1^T e_1 + \frac{1}{2} e_2^T e_2\). Its derivative yields:

$$ \dot{V}_2 \leq -A_1 V_2 – A_2 V_2^{(p+1)/2} + B $$

where \(A_1 = \min\{2r_1 – 1, 2r_2 – 3\}\), \(A_2 = \min\{2^{(p+1)/2} c_1, 2^{(p+1)/2} c_2\}\), and \(B\) is a bounded term combining disturbance estimation errors and saturation effects. According to Lemma 1, this implies that the tracking errors \(e_1\) and \(e_2\) converge to a neighborhood of zero in finite time. Similarly, the compensation signals \(\xi_1\) and \(\xi_2\) converge, ensuring that the original errors \(z_1\) and \(z_2\) also achieve finite-time convergence. Thus, the quadrotor drone’s attitude system is globally stable with prescribed performance.

To validate the proposed scheme, I perform numerical simulations and physical experiments. The quadrotor drone parameters are: mass \(m = 2.6 \, \text{kg}\), gravity \(g = 10 \, \text{m/s}^2\), arm lengths \(j_1 = j_2 = 0.5 \, \text{m}\), and inertia \(J = \text{diag}(0.16, 0.16, 0.32) \, \text{kg} \cdot \text{m}^2\). Controller and observer parameters are summarized in the table below:

Parameter Value Description
\(k_1\) 3.4 Observer gain
\(k_2\) 2.4 Adaptive law gain
\(k_3\) 2.3 Weight update gain
\(k_4\) 10 Error bound gain
\(k_5\) 4 Bound adaptation gain
\(p\) 0.95 Fractional power
\(p_0, q_0\) 49, 50 Observer exponents
\(r_1\) 9 Compensation gain
\(r_2\) 5 Compensation gain
\(c_1\) 5 Virtual control gain
\(c_2\) 7 Control gain
\(\chi\) 0.1 Filter parameter
\(\tau_{\text{max}}, \tau_{\text{min}}\) ±0.18 N·m Torque limits

In simulation, the quadrotor drone starts from initial attitude \(\Theta(0) = [0.5, 0.4, 0.4]^T\) rad and tracks \(\Theta_d = [0.4\cos(t), 0.3, 0.1]^T\) rad. At \(t = 10\) s, actuator faults and disturbances are applied: \(\rho = \text{diag}(0.5, 0.5, 0.5)\), \(\kappa_i = 0.01\), and \(D = 0.4\sin(t)\). The results show that the disturbance observer accurately estimates the combined perturbation, as seen in the convergence of \(\hat{\Delta}\) to \(\Delta\). The attitude tracking errors converge within seconds, outperforming comparative methods like conventional backstepping or sliding mode control. For example, the roll angle \(\phi\) achieves tracking with less overshoot and faster settling time. The compensation signals \(\xi_1\) and \(\xi_2\) decay to zero, validating the filter design. Control inputs remain within saturation limits, demonstrating smooth torque commands without chattering.

For physical verification, I use a quadrotor drone testbed with a Pixhawk controller and Raspberry Pi for implementation. The platform includes a fan to simulate wind disturbances. The quadrotor drone is tasked with tracking \(\Theta_d = [0.2\sin(t), 0, 0]^T\) rad from an initial state \(\Theta(0) = [-0.65, -0.35, 0.6]^T\) rad. Experimental results align with simulations: the attitude angles converge to the reference within finite time, and the observer effectively compensates for real-world disturbances. The control inputs show minimal chattering, ensuring safe operation of the quadrotor drone. Key metrics from experiments are summarized below:

Metric Simulation Value Experimental Value
Roll tracking error (RMSE) 0.012 rad 0.018 rad
Pitch tracking error (RMSE) 0.008 rad 0.015 rad
Yaw tracking error (RMSE) 0.005 rad 0.010 rad
Convergence time ~2 s ~3 s
Max torque usage 0.15 N·m 0.17 N·m

The finite-time disturbance observer proves crucial for handling abrupt faults in the quadrotor drone. Its neural network component approximates nonlinear uncertainties with high accuracy, while the finite-time structure ensures quick response. The command filter simplifies derivative calculations, avoiding the explosion of complexity typical in backstepping. Moreover, the input saturation function preserves actuator life and prevents singularity issues. These features make the scheme practical for real-world quadrotor drone applications, where reliability and robustness are paramount.

In conclusion, I have presented a comprehensive control strategy for quadrotor drone attitude tracking under actuator faults and disturbances. The integration of a finite-time neural network disturbance observer and command filtering backstepping achieves finite-time convergence with enhanced robustness. Both numerical and experimental results confirm the effectiveness of the approach, showing rapid error reduction and stable performance. Future work may extend this to multi-quadrotor drone formations or incorporate advanced learning techniques for adaptive fault detection. The proposed scheme offers a viable solution for improving the autonomy and safety of quadrotor drones in dynamic environments.

Throughout this paper, the focus on quadrotor drone systems underscores their importance in modern robotics. The mathematical formulations, such as the dynamics $$ \dot{\omega} = -J^{-1} \omega \times J\omega + J^{-1} \tau_F + D $$, highlight the nonlinear challenges addressed. By leveraging tools like Lyapunov analysis and RBF neural networks, the controller ensures that the quadrotor drone can withstand real-world uncertainties. This work contributes to the ongoing advancement of UAV technology, paving the way for more resilient and intelligent quadrotor drone operations.

Scroll to Top