Trajectory Tracking Control for VTOL Drones Using Nonlinear Extended State Observer

In recent years, vertical take-off and landing (VTOL) drones have gained significant attention due to their versatility in applications ranging from surveillance to delivery. Among these, tilt-propulsion VTOL drones stand out for their ability to seamlessly transition between hovering and forward flight, combining the benefits of multi-rotor and fixed-wing aircraft. However, the vertical take-off and landing mode of such drones presents substantial control challenges, including complex uncertainties from aerodynamic disturbances, model inaccuracies, and external environmental factors. Achieving high-precision trajectory tracking in this mode is critical for operations in confined spaces or during autonomous missions. In this article, we address these challenges by proposing a robust control scheme based on a nonlinear extended state observer (NLESO) and sliding mode control (SMC). Our approach enhances disturbance rejection and tracking performance, ensuring reliable operation of VTOL drones under uncertain conditions.

The control of VTOL drones, especially during vertical take-off and landing, demands controllers that can handle nonlinear dynamics and unmodeled effects. Traditional methods like PID control are widely used but often lack robustness against disturbances. Advanced techniques such as sliding mode control offer improved robustness, but they may suffer from chattering and require accurate disturbance estimation. To overcome these limitations, we integrate an NLESO into a dual-loop sliding mode controller. The NLESO estimates lumped disturbances in real-time, allowing for compensation and improved tracking accuracy. This article details the dynamic modeling of a tilt-propulsion VTOL drone, the design of the NLESO-based controller, stability analysis via Lyapunov methods, and simulation results demonstrating the efficacy of our approach. Throughout, we emphasize the application to VTOL drones, highlighting how our method addresses their unique challenges.

System Modeling for VTOL Drones

To design an effective controller, we first establish a comprehensive dynamic model of the tilt-propulsion VTOL drone. This drone features multiple propulsion systems, including front propellers and rear distributed ducted fans, which can tilt to enable mode transitions. We adopt a component-based modeling approach, deriving equations for thrust generation, aerodynamic forces, and rigid-body dynamics. The model accounts for the interactions between components, which is essential for accurate control in VTOL operations.

The thrust generated by the front propellers is modeled using blade element momentum theory. The thrust coefficient \(C_T\) is given by:

$$C_T = \frac{p k b}{3\pi R} (l_1 \phi_r + l_2)$$

where \(p\), \(k\), \(b\), \(\phi_r\), and \(R\) represent the number of blades, blade lift slope, chord length, reference twist angle, and radius, respectively. The terms \(l_1\) and \(l_2\) are defined as:

$$l_1 = 1 + \frac{3}{2} \mu_x^2, \quad l_2 = 0.05 – 0.3\mu_x^2 – \frac{3}{2}(\bar{v}_i + \mu_z)$$

Here, \(\mu_x\), \(\mu_z\), and \(\bar{v}_i\) are dimensionless velocities in the propeller coordinate frame. The thrust for a single front propeller is then:

$$T_p = 0.5 \rho (\Omega R)^2 A C_T$$

where \(\rho\) is air density, \(\Omega\) is rotational speed, and \(A\) is the disk area. For the distributed ducted fans, the thrust is influenced by the duct design. The duct thrust ratio \(q\) is defined as:

$$q = \frac{f(x)}{1 + f(x)}$$

with \(x = h/d\) (duct height to inner diameter ratio). The empirical function \(f(x)\) is piecewise: for \(0 < x \leq 0.2\), \(f(x) = 100x^3 – 52.87x^2 + 10.32x + 0.0007\); for \(0.2 < x \leq 1\), \(f(x) = 0.85x^3 – 1.94x^2 + 1.50x + 0.53\). The thrust for a set of ducted fans is:

$$T_d = \frac{N}{1 – q} \left[0.5 \rho (\Omega_d R_d)^2 A_d C_{T_d}\right]$$

where \(N\) is the number of fans. The total propulsion forces and moments are summarized as:

$$\mathbf{F}_{\text{sum}} = \begin{bmatrix} 0 \\ 0 \\ T_{pl} + T_{pr} + T_{dl} + T_{dr} \end{bmatrix}, \quad \mathbf{M}_{\text{sum}} = \begin{bmatrix} l_p(T_{pl} – T_{pr}) + l_d(T_{dl} – T_{dr}) \\ s_p(T_{pl} + T_{pr}) – s_d(T_{dl} + T_{dr}) \\ 0 \end{bmatrix}$$

Here, \(T_{pl}, T_{pr}, T_{dl}, T_{dr}\) denote thrusts from left/right front propellers and ducted fans, while \(l_p, l_d, s_p, s_d\) are geometric offsets. The yaw rudder effect is modeled as \(M_{\text{rudder}} = k_r \delta_r T_d c\), where \(k_r\) is a dimensionless coefficient, \(\delta_r\) is the control input, and \(c\) is a reference chord length. Aerodynamic forces at low speeds are approximated as drag: \(\mathbf{F}_{\text{aero}} = \mathbf{K} V^2 = \begin{bmatrix} k_1 V_x^2 & k_2 V_y^2 & k_3 V_z^2 \end{bmatrix}^T\), with \(k_1 = -0.03, k_2 = -0.03, k_3 = -0.15\).

The overall dynamics of the VTOL drone in vertical take-off and landing mode are derived using Newton-Euler equations. Define the inertial frame \(I\) and body frame \(B\). The position vector is \(\mathbf{P} = [X, Y, -H]^T\), and the attitude vector (Euler angles) is \(\mathbf{\Theta} = [\phi, \theta, \psi]^T\). The equations of motion are:

$$m \ddot{\mathbf{P}} = \mathbf{G} + \mathbf{F} + \mathbf{F}_{\text{aero}} + \mathbf{d}_F$$
$$J \mathbf{R}^{-1}_{\Theta} \ddot{\mathbf{\Theta}} = -\mathbf{R}^{-1}_{\Theta} \dot{\mathbf{\Theta}} \times J \mathbf{R}^{-1}_{\Theta} \dot{\mathbf{\Theta}} – J \dot{\mathbf{R}}^{-1}_{\Theta} \dot{\mathbf{\Theta}} + \mathbf{M} + \mathbf{d}_M$$

where \(m\) is mass, \(J\) is inertia matrix, \(\mathbf{G}\) is gravity, \(\mathbf{F} = \mathbf{R}_{IB} \mathbf{F}_{\text{sum}}\) and \(\mathbf{M} = \mathbf{R}_{IB} \mathbf{M}_{\text{sum}} + M_{\text{rudder}}\) are total forces and moments in inertial frame, and \(\mathbf{d}_F, \mathbf{d}_M\) represent lumped uncertainties (e.g., model errors, disturbances). This model forms the basis for our controller design, focusing on compensating \(\mathbf{d}_F\) and \(\mathbf{d}_M\) to improve tracking for VTOL drones.

Nonlinear Extended State Observer Design

To handle uncertainties, we design a nonlinear extended state observer (NLESO) that estimates lumped disturbances in real-time. The NLESO offers advantages over linear ESOs, including faster convergence and better accuracy for time-varying disturbances. Consider a general system: \(\dot{x} = \xi + b u\), \(\dot{\xi} = f + w\), where \(w\) is disturbance. We define the NLESO as:

$$\dot{z}_1 = z_2 + b u + \gamma_1 \varepsilon^{-1} g(x – z_1)$$
$$\dot{z}_2 = \gamma_1 \varepsilon^{-2} g(x – z_1)$$

with \(g(z) = \begin{cases} z^\alpha \text{sign}(z) & |z| \leq \delta \\ z & |z| > \delta \end{cases}\), where \(\varepsilon > 0\), \(0 < \alpha < 1\), and \(0 < \delta \leq 1\). The parameters \(\gamma_1, \gamma_2\) are chosen so that the matrix \(A = \begin{bmatrix} -\gamma_1 & 1 \\ -\gamma_2 & 0 \end{bmatrix}\) is Hurwitz. Define estimation errors: \(\eta_1 = (x – z_1)/\varepsilon\), \(\eta_2 = \xi – z_2\). The error dynamics are:

$$\varepsilon \dot{\eta} = A \eta + \varepsilon B \dot{\xi}$$

where \(B = [0, 1]^T\). Using Lyapunov analysis, we can show that the errors converge to a small region around zero. For \(|z| \leq \delta\), the convergence condition is \(\|\eta\| \leq \frac{2b_1 \delta \varepsilon D}{\lambda_{\min}}\), and for \(|z| > \delta\), \(\|\eta\| \leq \frac{2\varepsilon \|PB\| D}{\lambda_{\min}}\), where \(D\) bounds \(\dot{\xi}\), and \(\lambda_{\min}\) is the minimum eigenvalue of \(Q\) from \(A^T P + P A = -Q\). This NLESO provides accurate disturbance estimates, which we integrate into the controller for VTOL drones.

Dual-Loop Sliding Mode Controller Design

Our control scheme employs a dual-loop structure: an outer loop for position tracking and an inner loop for attitude tracking. Both loops use sliding mode control enhanced with NLESO compensation. This design ensures robust trajectory tracking for VTOL drones despite uncertainties.

Position Subsystem Controller

Define position error \(\mathbf{e}_p = \mathbf{P} – \mathbf{P}_d\). The sliding surface is:

$$\mathbf{s}_1 = \dot{\mathbf{e}}_p + \Lambda_1 \mathbf{e}_p$$

where \(\Lambda_1 = \text{diag}(\lambda_{1x}, \lambda_{1y}, \lambda_{1z}) > 0\). Taking derivative:

$$\dot{\mathbf{s}}_1 = \ddot{\mathbf{e}}_p + \Lambda_1 \dot{\mathbf{e}}_p = \frac{\mathbf{G} + \mathbf{F}_{\text{aero}} + \mathbf{F} + \mathbf{d}_F}{m} – \ddot{\mathbf{P}}_d + \Lambda_1 \dot{\mathbf{e}}_p$$

The virtual control input \(\mathbf{F}\) is designed as:

$$\mathbf{F} = m \left( \ddot{\mathbf{P}}_d – \Lambda_1 \dot{\hat{\mathbf{e}}}_p – C_1 \hat{\mathbf{s}}_1 \right) – \mathbf{G} – \mathbf{F}_{\text{aero}} – \hat{\mathbf{d}}_F$$

where \(C_1 = \text{diag}(c_{1x}, c_{1y}, c_{1z}) > 0\), \(\dot{\hat{\mathbf{e}}}_p\) and \(\hat{\mathbf{s}}_1\) are estimated values using NLESO, and \(\hat{\mathbf{d}}_F\) is the disturbance estimate. This compensates uncertainties and ensures tracking.

Attitude Subsystem Controller

For attitude tracking, define error \(\mathbf{e}_\Theta = \mathbf{\Theta} – \mathbf{\Theta}_d\). The sliding surface is:

$$\mathbf{s}_2 = \dot{\mathbf{e}}_\Theta + \Lambda_2 \mathbf{e}_\Theta$$

with \(\Lambda_2 = \text{diag}(\lambda_{2\phi}, \lambda_{2\theta}, \lambda_{2\psi}) > 0\). The dynamics simplify to:

$$\ddot{\mathbf{\Theta}} = J_M^{-1} \left( \mathbf{R}_{M\Theta}^{-} + \mathbf{M} + \mathbf{d}_M \right)$$

where \(J_M = J \mathbf{R}^{-1}_{\Theta}\). The control moment \(\mathbf{M}\) is:

$$\mathbf{M} = J_M \left( \ddot{\mathbf{\Theta}}_d – \Lambda_2 \dot{\mathbf{e}}_\Theta – C_2 \mathbf{s}_2 \right) – \mathbf{R}_{M\Theta}^{-} – \eta \, \text{sat}(\mathbf{s}_2)$$

with \(C_2 > 0\), \(\eta > 0\), and \(\text{sat}(\cdot)\) as a saturation function to reduce chattering. The attitude commands \(\theta_d\) and \(\phi_d\) are derived from position control via:

$$\theta_d = \arctan\left( \frac{F_x \cos \psi_d + F_y \sin \psi_d}{F_z} \right), \quad \phi_d = \arctan\left( \cos \theta_d \frac{F_x \sin \psi_d – F_y \cos \psi_d}{F_z} \right)$$

using a finite-time differentiator for derivatives.

Control Allocation

The virtual controls \(\mathbf{F}\) and \(\mathbf{M}\) are allocated to actuator commands. For thrusts:

$$\begin{aligned}
T_{pl} + T_{pr} + T_{dl} + T_{dr} &= T_z \\
(T_{pl} – T_{pr}) l_p + (T_{dl} – T_{dr}) l_d &= M_x \\
(T_{pl} + T_{pr}) s_p – (T_{dl} + T_{dr}) s_d &= M_y \\
M_{\text{yaw}} &= M_z
\end{aligned}$$

where \(T_z\) is the vertical force from \(\mathbf{F}\), and \(M_x, M_y, M_z\) are moments. Solving this yields individual thrusts and rudder deflection, enabling precise control of the VTOL drone.

Stability Analysis

We analyze stability using Lyapunov theory for the closed-loop system with NLESO. Consider the combined Lyapunov function \(V = V_1 + V_2\), where \(V_1 = \frac{1}{2} \mathbf{s}_1^T \mathbf{s}_1\) for position loop and \(V_2 = \frac{\varepsilon}{2} \eta^T P \eta\) for NLESO. From earlier, for \(|z| \leq \delta\), we have:

$$\dot{V} \leq -a_3 V + b_3$$

with \(a_3 = \min(a_1, a_2)\) and \(b_3 = b_1 \delta \varepsilon D\). For \(|z| > \delta\):

$$\dot{V}_1 \leq -a_1 V_1 + b_4$$

By choosing parameters such as large \(c_1\) and small \(\varepsilon\), we ensure \(\lim_{t \to \infty} \|\mathbf{s}\|\) is bounded in a small region. Thus, the system is uniformly ultimately bounded, guaranteeing stable trajectory tracking for VTOL drones under uncertainties.

Simulation Results and Discussion

To validate our approach, we conduct simulations for a tilt-propulsion VTOL drone with parameters: mass \(m = 18 \, \text{kg}\), inertia \(J = \text{diag}(0.87, 1.1, 1.55) \, \text{kg·m}^2\), reference area \(S = 1.15 \, \text{m}^2\), and chord \(c = 0.6 \, \text{m}\). The controller parameters are set as \(\Lambda_1 = \text{diag}(6,6,6)\), \(C_1 = 4\), \(\Lambda_2 = \text{diag}(30,30,30)\), \(C_2 = 6\), \(\eta = 0.2\). The NLESO uses \(\alpha = 0.5\), \(\delta = 0.1\), \(\varepsilon = 0.02\), \(\gamma_1 = 3\), \(\gamma_2 = 2\). We compare four controllers: SMC alone, SMC with adaptive disturbance estimator, SMC with linear ESO (LESO), and SMC with NLESO.

Disturbances are modeled as time-varying forces and moments: \(\mathbf{d}_F = [20\sin(0.3\pi t), 20\sin(0.1\pi t), 40\sin(0.2\pi t)]^T \, \text{N}\) and \(\mathbf{d}_M = [0.3, 0.4\cos(0.1\pi t), -0.2]^T \, \text{N·m}\). The desired trajectory simulates a typical VTOL mission: vertical ascent from point O to A (0–4 s), forward translation to B (4–6 s), hover and yaw rotation at B (6–10 s), translation to C (10–12 s), and vertical descent to D (12–18 s).

The results show that all controllers achieve basic tracking, but SMC with NLESO outperforms others in accuracy and smoothness. Position tracking errors are significantly reduced, especially during hover and maneuvers. The NLESO provides precise disturbance estimates with minimal lag, whereas adaptive estimator and LESO show larger errors. For example, the force disturbance estimation error for NLESO is within ±2 N, compared to ±5 N for LESO. Attitude tracking is swift and stable across all controllers, thanks to effective control allocation.

Control inputs, such as propeller speeds and rudder deflections, remain smooth and within limits for SMC with NLESO, while other controllers exhibit chattering or abrupt changes. This demonstrates the robustness of our method for VTOL drones in dynamic environments. The table below summarizes key performance metrics:

Controller Position RMSE (m) Attitude RMSE (rad) Disturbance Estimate Error
SMC alone 0.15 0.05 N/A
SMC + Adaptive 0.10 0.04 High
SMC + LESO 0.06 0.03 Medium
SMC + NLESO 0.03 0.02 Low

The RMSE values are computed over the entire trajectory. SMC with NLESO reduces position error by 50% compared to LESO and 80% compared to plain SMC, highlighting its superiority. These simulations confirm that our NLESO-based approach enhances trajectory tracking for VTOL drones, making them more reliable in real-world applications.

Conclusion

In this article, we have presented a robust trajectory tracking control scheme for VTOL drones in vertical take-off and landing mode. By integrating a nonlinear extended state observer with dual-loop sliding mode control, we effectively estimate and compensate for lumped disturbances, including aerodynamic effects and model uncertainties. The dynamic modeling captures the unique features of tilt-propulsion VTOL drones, enabling accurate controller design. Stability is proven via Lyapunov analysis, ensuring bounded tracking errors. Simulation results demonstrate that our method significantly improves tracking precision and disturbance rejection compared to conventional approaches. Future work may involve experimental validation on physical VTOL drone platforms and extension to full flight envelope control, including transition modes. Overall, this contribution advances the control capabilities of VTOL drones, facilitating their deployment in challenging environments.

Scroll to Top