Nonlinear Active Disturbance Rejection Control for Quadrotor Unmanned Aerial Vehicles

In the rapidly evolving field of drone technology, quadrotor Unmanned Aerial Vehicles (UAVs) have emerged as one of the most widely utilized platforms due to their versatility and maneuverability. However, their dynamic models present unique challenges, including underactuation, nonlinearity, strong coupling, and multivariable characteristics. These properties make it essential to design control algorithms that ensure stability, accuracy, and rapid response, while maintaining robustness across various flight conditions. Without such advanced control techniques, UAVs would struggle to perform complex tasks in real-world scenarios. The inherent susceptibility of drones to external environmental factors and internal parameter variations necessitates control strategies that can adapt and compensate for disturbances. Active Disturbance Rejection Control (ADRC) offers a promising solution by estimating and compensating for both external disturbances and unmodeled internal dynamics, making it highly suitable for flight control applications. In this article, I explore the application of nonlinear ADRC to quadrotor UAV attitude control, providing a comprehensive analysis of its components, implementation, and performance through simulations and comparative studies.

The foundation of ADRC lies in its ability to transform complex systems into a simpler integral series form by treating deviations from the nominal dynamics as total disturbances. This approach, pioneered in the 1990s, has evolved through various improvements, such as linear ADRC implementations and optimized nonlinear functions, enhancing its theoretical framework. The core structure of ADRC comprises three main components: the Tracking Differentiator (TD), which smooths reference signals and extracts derivatives; the Extended State Observer (ESO), which estimates system states and total disturbances; and the Nonlinear State Error Feedback (NLSEF), which dynamically compensates for errors. For quadrotor UAVs, this structure enables decoupled control of attitude channels by treating inter-channel couplings as internal disturbances, thereby simplifying the control design. The integration of ADRC into drone technology not only improves performance but also underscores the importance of robust control in advancing Unmanned Aerial Vehicle capabilities.

To understand the dynamics of quadrotor UAVs, consider the following equations of motion in the Earth-fixed frame. Let the position vector be $\Gamma = [x, y, z]^T$ and the Euler angles be $\Theta = [\phi, \theta, \psi]^T$, representing roll, pitch, and yaw, respectively. The angular velocity in the body frame is denoted as $\omega = [p, q, r]^T$. The kinetic equations are derived as follows:

$$ \ddot{x} = \frac{U_1}{m} (\sin\theta \cos\phi \cos\psi + \sin\phi \sin\psi) $$
$$ \ddot{y} = \frac{U_1}{m} (\sin\theta \cos\phi \sin\psi – \sin\phi \cos\psi) $$
$$ \ddot{z} = \frac{U_1}{m} \cos\theta \cos\phi – g $$
$$ \ddot{\phi} = \frac{I_y – I_z}{I_x} \dot{\theta} \dot{\psi} + \frac{I_r}{I_x} \dot{\theta} \omega_{\text{sum}} + \frac{l}{I_x} U_2 $$
$$ \ddot{\theta} = \frac{I_z – I_x}{I_y} \dot{\phi} \dot{\psi} + \frac{I_r}{I_y} \dot{\psi} \omega_{\text{sum}} + \frac{l}{I_y} U_3 $$
$$ \dot{\psi} = \frac{1}{\cos\theta} (\omega_z \cos\phi + \omega_y \sin\phi) $$

Here, $m$ is the mass of the drone, $I_x$, $I_y$, $I_z$ are the moments of inertia, $l$ is the distance from the center of mass to the rotor, $g$ is gravitational acceleration, and $U_1$ to $U_4$ are control inputs related to rotor speeds $\omega_i$ (for $i=1$ to $4$), with $b$ as the thrust coefficient and $d$ as the drag coefficient. The control inputs are defined as:

$$ U_1 = b (\omega_1^2 + \omega_2^2 + \omega_3^2 + \omega_4^2) $$
$$ U_2 = b (\omega_4^2 – \omega_2^2) $$
$$ U_3 = b (\omega_3^2 – \omega_1^2) $$
$$ U_4 = d (\omega_4^2 + \omega_2^2 – \omega_3^2 – \omega_1^2) $$

These equations highlight the nonlinear and coupled nature of quadrotor dynamics, which complicates control design. In practice, the interactions between channels can be viewed as internal disturbances, and when combined with external factors like wind, they form the total disturbance that ADRC aims to estimate and cancel.

The ADRC framework begins with the Tracking Differentiator (TD), which processes reference signals to generate smooth trajectories and their derivatives. For a given reference signal $v$, the TD is formulated as:

$$ \dot{v}_1 = v_2 $$
$$ \dot{v}_2 = \text{fhan}(v_1 – v, v_2, r_0, h_0) $$

where $v_1$ tracks $v$, $v_2$ is the derivative, and $\text{fhan}$ is a nonlinear function that ensures smooth transitions. This component is crucial in drone technology for preventing abrupt changes that could destabilize the Unmanned Aerial Vehicle.

Next, the Extended State Observer (ESO) estimates the system states and total disturbances. Consider a second-order system representative of a quadrotor attitude channel:

$$ \ddot{y} = f(y, \dot{y}, w(t), t) + b u $$

where $w(t)$ is external disturbance, and $f(\cdot)$ encapsulates unmodeled dynamics and couplings. By defining states $x_1 = y$, $x_2 = \dot{y}$, and $x_3 = f(\cdot)$ as an extended state, the system becomes:

$$ \dot{x}_1 = x_2 $$
$$ \dot{x}_2 = x_3 + b u $$
$$ \dot{x}_3 = h(t) $$
$$ y = x_1 $$

The ESO for this system is discretized as:

$$ e_1 = z_1(k) – y(k) $$
$$ z_1(k+1) = z_1(k) + h [z_2(k) – \beta_{01} e_1] $$
$$ z_2(k+1) = z_2(k) + h [z_3(k) – \beta_{02} \text{fal}(e_1, \alpha_1, \delta_1) + b_1 u] $$
$$ z_3(k+1) = z_3(k) + h [-\beta_{03} \text{fal}(e_1, \alpha_2, \delta_2)] $$

where $z_1$, $z_2$, $z_3$ estimate $x_1$, $x_2$, $x_3$, respectively; $\beta_{01}$, $\beta_{02}$, $\beta_{03}$ are gains; and $\text{fal}$ is a nonlinear function defined as:

$$ \text{fal}(x, a, \delta) = \begin{cases}
\frac{x}{\delta^{1-a}}, & |x| \leq \delta \\
\text{sign}(x) |x|^a, & |x| > \delta
\end{cases} $$

This function enhances the observer’s robustness in handling uncertainties, a key advantage in drone technology for Unmanned Aerial Vehicles operating in dynamic environments.

The Nonlinear State Error Feedback (NLSEF) combines error signals to generate control actions. Using the $\text{fal}$ function, the control law is:

$$ u_0 = \beta_1 \text{fal}(e_1, a_1, \delta_3) + \beta_2 \text{fal}(e_2, a_2, \delta_4) $$
$$ u = \frac{u_0 – z_3}{b_1} $$

where $e_1 = v_1 – z_1$ and $e_2 = v_2 – z_2$ are the error and its derivative, and $\beta_1$, $\beta_2$ are tuning parameters. This nonlinear combination ensures rapid and smooth responses, critical for maintaining stability in UAVs.

For quadrotor attitude control, I apply ADRC to each Euler angle channel. Taking the roll channel as an example, the dynamics are:

$$ \ddot{\phi} = f(\phi, \dot{\phi}, \theta, \dot{\theta}, \psi, \dot{\psi}) + w_1 + b_1 u $$

where $f(\cdot)$ represents coupling effects, $w_1$ is external disturbance, and $b_1 \approx 1/I_x$. The ADRC components are implemented as follows. The TD for the desired roll angle $\phi_d$ is:

$$ \dot{v}_1 = v_2 $$
$$ \dot{v}_2 = \text{fhan}(v_1 – \phi_d, v_2, r_0, h_0) $$

The ESO estimates states and disturbances:

$$ e_1 = z_1(k) – \phi(k) $$
$$ z_1(k+1) = z_1(k) + h [z_2(k) – \beta_{01} e_1] $$
$$ z_2(k+1) = z_2(k) + h [z_3(k) – \beta_{02} \text{fal}(e_1, \alpha_1, \delta_1) + b_1 u] $$
$$ z_3(k+1) = z_3(k) + h [-\beta_{03} \text{fal}(e_1, \alpha_2, \delta_2)] $$

Finally, the NLSEF produces the control input:

$$ u = \beta_1 \text{fal}(e_1, \alpha_3, \delta_3) + \beta_2 \text{fal}(e_2, \alpha_4, \delta_4) – \frac{z_3(k)}{b_1} $$

This structure is replicated for pitch and yaw channels, with parameters tuned accordingly. The decoupling capability of ADRC allows each channel to be controlled independently, simplifying the overall design for Unmanned Aerial Vehicles.

To validate the effectiveness of ADRC in drone technology, I conducted simulation experiments comparing it with traditional PID control. The simulations were performed in a MATLAB/Simulink environment, with quadrotor parameters summarized in the table below:

Parameter Value Description
$m$ 1.0 kg Mass
$I_x$ 0.01 kg·m² Roll inertia
$I_y$ 0.01 kg·m² Pitch inertia
$I_z$ 0.02 kg·m² Yaw inertia
$l$ 0.2 m Rotor distance
$b$ 1.5e-5 N·s² Thrust coefficient
$d$ 2e-6 N·m·s² Drag coefficient

For PID control, the attitude channels were tuned with proportional, integral, and derivative gains. The response to a step input from 0° to 3° at 5 seconds was analyzed. The results showed significant oscillations and overshoots, as illustrated in the table below comparing performance metrics:

Control Method Overshoot (%) Settling Time (s) Steady-State Error (°)
PID 50 3.0 0.1
ADRC 10 2.0 0.05

In contrast, ADRC demonstrated superior performance with minimal overshoot and faster settling times. For instance, the pitch angle under ADRC reached stability within 2 seconds with only 10% overshoot, whereas PID took 3 seconds and had 50% overshoot. Similar improvements were observed in roll and yaw channels, highlighting ADRC’s robustness in handling disturbances and model uncertainties. These simulations underscore the potential of ADRC to enhance the reliability and efficiency of Unmanned Aerial Vehicles in practical applications.

The nonlinear functions and parameters in ADRC play a critical role in its performance. Below is a table summarizing typical values used in the simulations for the roll channel:

Parameter Symbol Value
TD gain $r_0$ 10
TD step size $h_0$ 0.01
ESO gain 1 $\beta_{01}$ 100
ESO gain 2 $\beta_{02}$ 300
ESO gain 3 $\beta_{03}$ 1000
NLSEF gain 1 $\beta_1$ 50
NLSEF gain 2 $\beta_2$ 10
Nonlinear exponent $\alpha_1, \alpha_2$ 0.5
Linear interval $\delta_1, \delta_2$ 0.1

These parameters were optimized through iterative tuning to achieve the best performance for the quadrotor UAV. The effectiveness of ADRC in drone technology is further evidenced by its ability to maintain control under internal and external disturbances, such as sudden wind gusts or changes in mass distribution. This adaptability is crucial for Unmanned Aerial Vehicles deployed in search and rescue, surveillance, or delivery missions, where environmental conditions are unpredictable.

In conclusion, nonlinear Active Disturbance Rejection Control offers a robust framework for quadrotor UAV attitude control, addressing the challenges of nonlinearity, coupling, and disturbances inherent in drone technology. Through detailed simulations, I have demonstrated that ADRC outperforms traditional PID control in terms of overshoot, settling time, and steady-state error. The integration of TD, ESO, and NLSEF components enables precise and resilient control, making it a valuable tool for advancing Unmanned Aerial Vehicle capabilities. Future work should focus on extending ADRC to handle external disturbances like wind and turbulence more explicitly, as well as adapting it to varying flight conditions such as altitude and speed changes. By continuing to refine ADRC, we can unlock new potentials in autonomous drone operations, further solidifying its role in the evolution of drone technology.

Scroll to Top