Quadrotor Drone Attitude Control via Nonlinear Active Disturbance Rejection

Quadrotor Unmanned Aerial Vehicles (UAVs) dominate modern drone technology due to their maneuverability and vertical takeoff capabilities. However, their dynamics exhibit underactuation, strong nonlinearity, parameter coupling, and multivariable interactions, making robust control design essential for complex missions. Without advanced control techniques, these Unmanned Aerial Vehicles struggle to reject environmental disturbances like wind gusts or payload shifts. Active Disturbance Rejection Control (ADRC) addresses this by estimating and compensating for both internal dynamics and external perturbations, enabling precise attitude stabilization.

ADRC emerged from foundational work by Han Jingqing in the 1990s, transforming complex systems into integral-chain forms by treating deviations as “total disturbances.” This framework comprises three core components:

1. Tracking Differentiator (TD)

The TD smooths reference signals and extracts derivatives. For an input \( v \), the dynamics are:

$$ \begin{cases} \dot{v}_1 = v_2 \\ \dot{v}_2 = \text{fhan}(v_1 – v, v_2, \Gamma_0, h_0) \end{cases} $$

where \( v_1 \) tracks \( v \), \( v_2 \) estimates its derivative, and \(\text{fhan}\) is a nonlinear function minimizing setpoint overshoot.

2. Extended State Observer (ESO)

The ESO estimates unmodeled dynamics and disturbances. For a second-order system \( \ddot{y} = f(y, \dot{y}, w(t), t) + bu \):

$$ \begin{cases} e_1 = z_1 – y \\ \dot{z}_1 = z_2 – \beta_{01}e_1 \\ \dot{z}_2 = z_3 – \beta_{02}\text{fal}(e_1, \alpha_1, \delta_1) + b_1u \\ \dot{z}_3 = -\beta_{03}\text{fal}(e_1, \alpha_2, \delta_2) \end{cases} $$

The nonlinear function \(\text{fal}\) is defined as:

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

Here, \( z_3 \) estimates the total disturbance \( f(\cdot) \), enabling real-time compensation.

3. Nonlinear State Error Feedback (NLSEF)

This component synthesizes the control signal using errors \( e_1 = v_1 – z_1 \) and \( e_2 = v_2 – z_2 \):

$$ u_0 = \beta_1 \text{fal}(e_1, \alpha_3, \delta_3) + \beta_2 \text{fal}(e_2, \alpha_4, \delta_4) $$

The final control law compensates disturbances via \( u = \left( u_0 – z_3 \right) / b_1 \).

Quadrotor Dynamics and ADRC Integration

The quadrotor UAV’s attitude dynamics in roll (\(\phi\)), pitch (\(\theta\)), and yaw (\(\psi\)) are:

$$ \begin{cases} \ddot{\phi} = f_1(\phi, \dot{\phi}, \theta, \dot{\theta}, \psi, \dot{\psi}) + w_1 + b_1U_2 \\ \ddot{\theta} = f_2(\phi, \dot{\phi}, \theta, \dot{\theta}, \psi, \dot{\psi}) + w_2 + b_2U_3 \\ \ddot{\psi} = f_3(\phi, \dot{\phi}, \theta, \dot{\theta}, \psi, \dot{\psi}) + w_3 + b_3U_4 \end{cases} $$

where \( w_i \) are disturbances, \( b_i \) control gains, and \( U_i \) rotor thrust inputs. Cross-coupling terms \( f_i(\cdot) \) are treated as internal disturbances. For roll control:

  1. TD: \( \dot{v}_1 = v_2 \), \( \dot{v}_2 = \text{fhan}(v_1 – \phi_d, v_2, r_0, h_0) \)
  2. ESO: Estimates \( z_3 ≈ f_1(\cdot) + w_1 \)
  3. NLSEF: Generates \( u = \left[ \beta_1 \text{fal}(e_1, \alpha_3, \delta_3) + \beta_2 \text{fal}(e_2, \alpha_4, \delta_4) – z_3 \right] / b_1 \)
ADRC Parameters for Quadrotor Attitude Control
Component Parameter Value Role
ESO \(\beta_{01}, \beta_{02}, \beta_{03}\) 150, 3000, 8000 Observer gains
\(\alpha_1, \alpha_2\) 0.5, 0.25 Nonlinear exponents
\(\delta_1, \delta_2\) 0.01, 0.01 Linear intervals
NLSEF \(\beta_1, \beta_2\) 25, 15 Error gains
\(\alpha_3, \alpha_4\) 0.75, 1.25 Nonlinear exponents
\(\delta_3, \delta_4\) 0.02, 0.02 Linear intervals

Simulation: ADRC vs. PID for Drone Technology

We simulated a 3° step response under disturbances using MATLAB. Both controllers stabilized the Unmanned Aerial Vehicle, but ADRC demonstrated superior performance:

Attitude Control Performance Comparison (3° Step Response)
Metric PID ADRC Improvement
Rise Time (s) 0.8 0.5 37.5%
Settling Time (s) 3.2 2.0 37.5%
Overshoot (%) 50 10 80%
Steady-State Error (°) 0.1 0.02 80%

Key Observations:

  • PID Control: Exhibited prolonged oscillations (~3s) and 50% overshoot across pitch, yaw, and roll axes.
  • ADRC: Limited oscillations to <2s with ≤10% overshoot. Disturbance rejection was instantaneous due to ESO’s real-time estimation.

These results underscore ADRC’s robustness for Unmanned Aerial Vehicles operating in volatile environments.

Conclusion and Future Work in Drone Technology

Nonlinear ADRC significantly enhances quadrotor UAV attitude control by dynamically canceling coupled dynamics and environmental disturbances. Future work will integrate aerodynamic models of wind gusts and turbulence to test ADRC under flight envelope variations. Advancing this drone technology will enable autonomous operations in complex scenarios like search/rescue or infrastructure inspection.

Scroll to Top