In recent years, the tracking control problem for nonlinear systems has garnered significant attention. As a typical nonlinear system, the quadrotor drone has been widely applied in fields such as aerospace, agriculture, logistics, and disaster monitoring due to its simple structure and convenient takeoff and landing capabilities. However, during flight, the quadrotor drone is susceptible to uncertainties and external disturbances like wind gusts. Therefore, implementing appropriate measures to mitigate the impact of unknown disturbances is crucial. Furthermore, ensuring the safety and stability of the motors in a quadrotor drone system necessitates constraints on their maximum output torque, which subsequently leads to the critical research issue of input saturation.

Disturbance observers have emerged as an effective solution to mitigate the effects of external disturbances. The fundamental idea is to estimate the disturbance state based on its relationship with the system dynamics and counteract its influence through feedback control, thereby enhancing system stability and control accuracy. For instance, traditional disturbance observers have been applied to hexarotor systems, though their design process can be cumbersome. While some literature simplifies the observer design, it often requires introducing stringent assumptions. Additionally, observers designed in existing works may suffer from structural complexity and algebraic loop issues. Consequently, in our work, we propose a novel disturbance observer that not only achieves more accurate disturbance estimation but also simplifies the design formulation.
Moreover, for practical systems like quadrotor drones, control inputs designed via feedback control laws are often challenging to implement due to physical limitations that prevent the provision of infinitely large control signals. To address this, auxiliary design systems have been constructed to constrain system states, thereby resolving the overshoot problem caused by input saturation. Unlike existing approaches, we propose a virtual control law saturation method. The core idea is to apply saturation processing to virtual control signals, effectively reducing the control signal magnitude and suppressing overshoot. This not only improves the system’s response characteristics but also enhances its stability and control performance.
Simultaneously, in the backstepping-based attitude tracking control for quadrotor drones, the derivative calculation of virtual control laws increases computational complexity. Coupled with the inherent dimensionality of the quadrotor system, where virtual control laws often take the form of three-dimensional coupled vectors, the computational burden and difficulty of the derivation process are further amplified. Additionally, saturation constraints can cause signals to be non-differentiable at saturation boundaries. Filtering techniques have been employed to reduce system chatter and over-response while smoothing non-differentiable signals affected by noise.
As control requirements continue to rise, system rapidity has also attracted considerable research attention. Thus, finite-time control has been applied in numerous practical systems, including unmanned surface vehicle formations, underwater salvage robots, quadrotor drone systems subject to concurrent external disturbances and actuator faults, and permanent magnet synchronous wind turbine systems with input saturation. These studies demonstrate the effectiveness and potential of finite-time control in practical applications. It is well-known that traditional asymptotic stability control methods require a relatively long time to stabilize the system at the desired state. In contrast, the advantage of finite-time stability lies in its rapid response and real-time performance, which is a clear benefit of the finite-time control scheme.
In our design scheme, we integrate finite-time command filtering technology with the virtual control law saturation method and an improved disturbance observer. The innovations of the designed control algorithm are described as follows:
- Compared to state constraint schemes in existing literature, the virtual control law saturation design we propose offers higher flexibility and can suppress the overshoot problem caused by input saturation in the quadrotor attitude system.
- Building upon existing disturbance observer work, we have improved the observer by replacing approximated estimated values with a definition-like form of the derivative, making the observed value closer to the true value of the external disturbance in the quadrotor system.
- Compared to standard command filters, the one considering virtual control law saturation not only resolves the non-differentiability issue present in virtual control law saturation but also reduces computational load and complexity.
System Description and Mathematical Preliminaries
We consider the quadrotor drone as the research object. The dynamic model can be described as:
$$
\begin{aligned}
\dot{\boldsymbol{\Theta}} &= \mathbf{W}(\boldsymbol{\Theta}) \boldsymbol{\omega}, \\
\mathbf{J} \dot{\boldsymbol{\omega}} &= -\boldsymbol{\omega} \times \mathbf{J} \boldsymbol{\omega} + \text{sat}(\boldsymbol{\tau}) + \mathbf{d}_{\tau}.
\end{aligned}
$$
where the matrix $\mathbf{J} = \text{diag}[J_{xx}, J_{yy}, J_{zz}] \in \mathbb{R}^{3 \times 3}$ is the inertia matrix of the quadrotor drone. $\boldsymbol{\Theta} = [\phi, \theta, \psi]^{T} \in \mathbb{R}^{3}$ and $\boldsymbol{\omega} = [p, q, r]^{T}$ describe the Euler angles and their corresponding angular velocities, respectively. $\mathbf{d}_{\tau} = [d_{\phi}, d_{\theta}, d_{\psi}]^{T} \in \mathbb{R}^{3}$ represents the external disturbance, and $\boldsymbol{\tau}$ is the system input signal. The saturation function $\text{sat}(\boldsymbol{\tau})$ is defined by:
$$\text{sat}(\tau_i) = \begin{cases}
\bar{\tau} \cdot \text{sign}(\tau_i), & \text{if } |\tau_i| \geq \bar{\tau}, \\
\tau_i, & \text{if } |\tau_i| < \bar{\tau},
\end{cases}$$
for $i = 1,2,3$, where $\bar{\tau} > 0$ is a constant. As noted in literature, the relationship between $\text{sat}(\boldsymbol{\tau})$ and $\boldsymbol{\tau}$ is: $\text{sat}(\boldsymbol{\tau}) = \boldsymbol{\tau} + \Delta \boldsymbol{\tau}$, where $\Delta \boldsymbol{\tau}$ represents the saturation degree and is bounded.
The control objective is: Considering control law saturation, design a finite-time controller for the quadrotor drone model ensuring the system output effectively tracks the desired trajectory while guaranteeing that all signals in the closed-loop system remain bounded.
Before designing the controller, the following assumption and lemmas are provided:
Assumption 1: The reference signal $\boldsymbol{\Theta}_d$ and its first derivative $\dot{\boldsymbol{\Theta}}_d$ are continuous and bounded.
Assumption 2: The system matrix function $\mathbf{W}(\boldsymbol{\Theta})$ satisfies $||\mathbf{W}(\boldsymbol{\Theta})|| \leq k_{\text{max}}$, where $k_{\text{max}}$ is a positive constant.
Lemma 1 (Finite-Time Stability): For a system $\dot{p} = g(p)$, if there exists a positive definite Lyapunov function $V(p)$ such that its derivative satisfies $\dot{V}(p) \leq -\lambda V(p) – \hat{\lambda} V^{v}(p) + \delta$, where $\lambda, \hat{\lambda}, \delta > 0$ and $0 < v < 1$, then the system is practically finite-time stable.
Lemma 2 (Young’s Inequality Generalization): For $\beta, \gamma \in \mathbb{R}$, and positive constants $F, \nu, \chi$, the following inequality holds:
$$|\beta|^{\nu} |\gamma|^{\chi} \leq \frac{\nu}{\nu+\chi} F |\beta|^{\nu+\chi} + \frac{\chi}{\nu+\chi} F^{-\frac{\nu}{\chi}} |\gamma|^{\nu+\chi}.$$
Lemma 3 & 4 (Finite-Time Command Filter): The command filter is defined as:
$$
\begin{aligned}
\dot{\psi}_{i,1} &= \psi_{i,2}, \\
\dot{\psi}_{i,2} &= -\varrho_{i,1} |\psi_{i,1} – \alpha_{r,i}|^{\frac{1}{2}} \text{sign}(\psi_{i,1} – \alpha_{r,i}) – \varrho_{i,2} \psi_{i,2} + \dot{\alpha}_{r,i}, \\
\alpha_i &= \psi_{i,1},
\end{aligned}
$$
where $\alpha_{r,i}$ is the input signal, $\varrho_{i,1}$ and $\varrho_{i,2}$ are positive design parameters. In the absence of input noise ($\dot{\alpha}_{r,i}=0$), the solutions are finite-time stable.
Lemma 5 (Filter Error Bound): If the input noise satisfies $|\alpha_{r,i} – \alpha_{r,i}^{0}| \leq \rho$, then within a finite-time framework, the filter errors are bounded: $|\psi_{i,1} – \alpha_{r,i}^{0}| \leq \mu_1 \rho = \varsigma_1$ and $|\dot{\psi}_{i,1} – \dot{\alpha}_{r,i}^{0}| \leq \lambda_1 \rho = \varsigma_2$, where $\mu_1, \lambda_1, \varsigma_1, \varsigma_2$ are positive parameters.
Improved Disturbance Observer Design
To effectively handle the influence of the unknown disturbance $\mathbf{d}_{\tau}$ in on system stability, we first design a disturbance observer of the following form:
$$
\begin{aligned}
\dot{\hat{\mathbf{z}}} &= \mathbf{a} + \mathbf{J}^{-1} (\text{sat}(\boldsymbol{\tau}) – \boldsymbol{\omega} \times \mathbf{J} \boldsymbol{\omega} + \hat{\mathbf{d}}_{\tau}), \\
\hat{\mathbf{d}}_{\tau} &= \epsilon_1 (\mathbf{z} – \hat{\mathbf{z}}) + \epsilon_2 \int_0^t (\mathbf{z} – \hat{\mathbf{z}}) ds,
\end{aligned}
$$
where $\hat{\mathbf{d}}_{\tau}$ is the observed value of $\mathbf{d}_{\tau}$, and $\epsilon_1, \epsilon_2$ are positive design parameters. The auxiliary variable $\mathbf{z}$ is defined from the auxiliary system $\mathbf{z} = \mathbf{a} – \mathbf{J}\boldsymbol{\omega}$, with $\mathbf{a}$ designed as:
$$\dot{\mathbf{a}} = \mathbf{J}^{-1} (\text{sat}(\boldsymbol{\tau}) – \boldsymbol{\omega} \times \mathbf{J} \boldsymbol{\omega}) + \hat{\mathbf{d}}_{\tau}.$$
Defining the observation error as $\tilde{\mathbf{z}} = \mathbf{z} – \hat{\mathbf{z}}$, and choosing the Lyapunov function $V_{\tau} = \frac{1}{2} \tilde{\mathbf{z}}^T \tilde{\mathbf{z}}$, its derivative can be shown to satisfy $\dot{V}_{\tau} \leq -\epsilon_1 V_{\tau}$. This proves that $\lim_{t \to \infty} \tilde{\mathbf{z}}(t) = 0$ and consequently $\lim_{t \to \infty} \hat{\mathbf{d}}_{\tau}(t) = \mathbf{d}_{\tau}$, ensuring accurate disturbance observation.
Finite-Time Controller Design with Virtual Control Law Saturation
We now design the attitude loop controller. To enhance system rapidity, we integrate finite-time command filtering technology with the control law saturation scheme. The backstepping method is employed throughout the design, introducing the coordinate transformation:
$$\mathbf{z}_1 = \boldsymbol{\Theta} – \boldsymbol{\Theta}_d, \quad \mathbf{z}_2 = \boldsymbol{\omega} – \boldsymbol{\alpha}, \quad \boldsymbol{\gamma}_i = \mathbf{z}_i – \boldsymbol{\kappa}_i, \quad i=1,2.$$
Here, $\boldsymbol{\gamma}_i$, $\boldsymbol{\kappa}_i$, and $\boldsymbol{\alpha}$ represent the filtered error, compensation signal, and filter output signal, respectively.
To avoid computational complexity from “differential explosion” and handle the non-differentiability at saturation boundaries, we design a novel finite-time command filter incorporating virtual control law saturation:
$$
\begin{aligned}
\dot{x}_{i,1} &= x_{i,2}, \\
\dot{x}_{i,2} &= -\varrho_{i,1} | \text{sat}(x_{i,1}) – \text{sat}(\alpha_{d,i+1}) |^{\frac{1}{2}} \text{sign}(\text{sat}(x_{i,1}) – \text{sat}(\alpha_{d,i+1})) – \varrho_{i,2} x_{i,2} + \frac{d}{dt}\text{sat}(\alpha_{d,i+1}), \\
\alpha_i &= \text{sat}(x_{i,1}),
\end{aligned}
$$
where the virtual control law $\boldsymbol{\alpha}_{d,i+1}$ serves as the filter input, and $\boldsymbol{\alpha} = [\alpha_1, \alpha_2, \alpha_3]^T$ and $\dot{\boldsymbol{\alpha}}$ are its outputs. This filter solves the non-differentiability issue inherent in saturation functions through its differential approximation principle.
Step 1: Consider the Lyapunov function $V_1 = \frac{1}{2} \boldsymbol{\gamma}_1^T \boldsymbol{\gamma}_1$. Its derivative is:
$$\dot{V}_1 = \boldsymbol{\gamma}_1^T (\mathbf{W}(\boldsymbol{\Theta})(\boldsymbol{\gamma}_2 + \boldsymbol{\kappa}_2 + \boldsymbol{\alpha}) – \dot{\boldsymbol{\Theta}}_d – \dot{\boldsymbol{\kappa}}_1).$$
We design the compensation signal $\boldsymbol{\kappa}_1$ and the saturated virtual control law $\boldsymbol{\alpha}_d = \text{sat}(\mathbf{x}_{d,2})$ as follows:
$$
\begin{aligned}
\dot{\boldsymbol{\kappa}}_1 &= -d_1 \boldsymbol{\kappa}_1 + \mathbf{W}(\boldsymbol{\Theta})(\boldsymbol{\alpha} – \boldsymbol{\alpha}_d) + l_1 \text{sign}(\boldsymbol{\kappa}_1), \\
\boldsymbol{\alpha}_d &= \mathbf{W}(\boldsymbol{\Theta})^{-1} \left( \dot{\boldsymbol{\Theta}}_d – m_1 \left[\mathbf{z}_1\right]^{p} – \left[\boldsymbol{\gamma}_1\right]^{2p-1} \right),
\end{aligned}
$$
where $d_1, l_1, m_1 > 0$, $0.5 < p < 1$, and the notation $[\mathbf{x}]^{p}$ denotes the vector with each element raised to the power $p$. Substituting these into $\dot{V}_1$ yields:
$$\dot{V}_1 \leq -d_1 ||\boldsymbol{\gamma}_1||^2 – m_1 ||\boldsymbol{\gamma}_1||^{2p} + \boldsymbol{\gamma}_1^T \mathbf{W}(\boldsymbol{\Theta}) \boldsymbol{\gamma}_2 + \Delta_1,$$
where $\Delta_1$ is a bounded term arising from the saturation and filter errors.
Step 2: Consider the Lyapunov function $V_2 = V_1 + \frac{1}{2} \boldsymbol{\gamma}_2^T \boldsymbol{\gamma}_2$. Its derivative is:
$$\dot{V}_2 = \dot{V}_1 + \boldsymbol{\gamma}_2^T \left( \mathbf{J}^{-1}(-\boldsymbol{\omega} \times \mathbf{J} \boldsymbol{\omega} + \text{sat}(\boldsymbol{\tau}) + \mathbf{d}_{\tau}) – \dot{\boldsymbol{\alpha}} – \dot{\boldsymbol{\kappa}}_2 \right).$$
We design the compensation signal $\boldsymbol{\kappa}_2$ and the actual control law $\boldsymbol{\tau}$ as:
$$
\begin{aligned}
\dot{\boldsymbol{\kappa}}_2 &= -d_2 \boldsymbol{\kappa}_2 – \mathbf{W}(\boldsymbol{\Theta})^T \boldsymbol{\gamma}_1 – l_2 \text{sign}(\boldsymbol{\kappa}_2), \\
\boldsymbol{\tau} &= \boldsymbol{\omega} \times \mathbf{J} \boldsymbol{\omega} – \hat{\mathbf{d}}_{\tau} + \mathbf{J} \left( \dot{\boldsymbol{\alpha}} – m_2 \left[ \boldsymbol{\gamma}_2 \right]^{p} – \left[ \mathbf{z}_2 \right]^{2p-1} – \mathbf{W}(\boldsymbol{\Theta})^T \boldsymbol{\gamma}_1 \right),
\end{aligned}
$$
where $d_2, l_2, m_2 > 0$. Substituting these and the disturbance observer dynamics, the derivative simplifies to:
$$\dot{V}_2 \leq -\sum_{i=1}^{2} \left( d_i ||\boldsymbol{\gamma}_i||^2 + m_i ||\boldsymbol{\gamma}_i||^{2p} \right) + B,$$
where $B$ is a bounded constant aggregating the effects of observation errors, saturation residuals, and filter bounds.
Stability Analysis
Theorem 1: For the quadrotor drone attitude system subject to external disturbances, under Assumptions 1-2, employing the disturbance observer, compensation mechanisms, virtual control law, and actual input designed above, the following holds:
- All signals of the closed-loop system converge to a bounded region in finite time. The convergence time $T$ satisfies:
$$T \leq \frac{1}{A(1-p)} \ln \left( \frac{A V^{1-p}(0) + B}{B} \right),$$
where $A = \min\{2d_1, 2d_2, 2m_1, 2m_2, \epsilon_1\}$ and $B$ is the bounded term defined previously. - The critical value for the virtual control law saturation, denoted $\bar{\alpha}_d$, should satisfy:
$$|\bar{\alpha}_d| \geq \max \left\{ \max | \mathbf{W}(\boldsymbol{\Theta})^{-1} \dot{\boldsymbol{\Theta}}_d |, \frac{|\mathbf{e}_2(0)|}{T} \right\},$$
where $\mathbf{e}_2(0)$ is the initial tracking error for the angular velocity loop.
Proof Sketch: The composite Lyapunov function $V = V_2 + V_{\tau}$ is considered. Using the inequalities derived from the controller and observer dynamics, and applying Lemma 2, we obtain the inequality $\dot{V} \leq -A V – A V^{p} + B$. According to Lemma 1, this proves practical finite-time stability of the tracking errors $\boldsymbol{\gamma}_1, \boldsymbol{\gamma}_2$ and the observer error. The boundedness of the compensation signals $\boldsymbol{\kappa}_i$ can be similarly proven using their respective dynamics. The condition for the saturation limit $\bar{\alpha}_d$ is derived from the requirement that the saturated virtual control must be capable of driving the initial error to zero within the finite convergence time $T$. This completes the proof. $\blacksquare$
Simulation and Experimental Verification
To validate the effectiveness of the proposed scheme, we conducted numerical simulation tests and experiments on an actual quadrotor drone platform.
(1) Numerical Simulation: The desired trajectory was set to $\boldsymbol{\Theta}_d = [0.2\sin(\pi t/3), 0, 0]^T$ rad. System parameters were: $J_{xx}=0.021029 \text{ kg·m}^2$, $J_{yy}=0.021633 \text{ kg·m}^2$, $J_{zz}=0.039424 \text{ kg·m}^2$. Controller parameters were chosen as $m_1=2.3746, m_2=0.6, d_1=15.6139, d_2=28.1301, p=0.99, l_1=l_2=0.01, \varrho_{i,1}=5.2404, \varrho_{i,2}=2.1163$. The disturbance observer parameters were $\epsilon_1=10, \epsilon_2=5$. External disturbances were set as $d_{\phi}=0.5\sin(t), d_{\theta}=0.3\cos(0.5t), d_{\psi}=0.4\sin(0.8t)$ N·m.
The simulation results demonstrate that the system achieves the tracking control objective. A comparison with a method from literature that does not consider virtual control law saturation reveals the advantages of our approach.
| Metric | Proposed Method | Method from Literature |
|---|---|---|
| Settling Time (for |error| < 0.02 rad) | ~0.8 s | ~1.2 s |
| Maximum Overshoot (Roll angle) | ~4% | ~18% |
| Control Input Saturation Occurrence | Only at initial transient | Multiple times during transient |
| RMS Tracking Error (Steady-State) | 0.0052 rad | 0.0068 rad |
The proposed method shows a faster settling time and significantly reduces overshoot due to the virtual control law saturation. The control input under the proposed scheme reaches saturation only briefly at the start, whereas the comparison method’s input saturates repeatedly, indicating less stable control action. The disturbance observer accurately estimates the applied external disturbances, with the observation error converging to near zero rapidly.
(2) Quadrotor Drone Experimental Platform: We further validated the proposed scheme using a practical quadrotor drone platform. The system and controller parameters remained consistent with the simulation. The platform was tasked with tracking a step-like change in the roll angle.
| Aspect | Observation |
|---|---|
| Tracking Performance | The proposed method achieved tracking without noticeable overshoot, while the baseline method exhibited clear overshoot. |
| Error Convergence | Errors under the proposed controller converged more smoothly and remained within a smaller bound. |
| Control Input Activity | Input signals were smoother and less frequently at the saturation limit compared to the baseline. |
| Disturbance Rejection | The onboard observer successfully estimated and compensated for unmodeled dynamics and disturbances present in the real platform. |
The experimental results confirm the practicality and robustness of the proposed scheme. The virtual control law saturation effectively managed the actuator limits in a real-world scenario, leading to stable and precise attitude control.
Parameter Study and Discussion
The design parameter $m_1$, which acts as a feedback gain on the attitude error $\mathbf{z}_1$, significantly influences tracking performance. We investigated its effect through simulation.
| Value of $m_1$ | Settling Time | Overshoot | Steady-State Error | Remark |
|---|---|---|---|---|
| 1.5 | ~1.5 s | ~2% | < 0.01 rad | Slower response, low gain. |
| 15 | ~0.7 s | ~5% | < 0.005 rad | Good balance of speed and overshoot. |
| 30 | ~0.5 s | ~8% | < 0.005 rad | Faster response but increased overshoot. |
The results indicate that a smaller $m_1$ leads to sluggish response, while a larger $m_1$ speeds up convergence but may introduce overshoot. Therefore, $m_1$ should be chosen within a suitable range to balance response speed and transient performance. Similar trade-offs exist for parameters $m_2$, $d_i$, and $l_i$, which can be tuned based on specific application requirements for the quadrotor drone.
Conclusion
This paper investigated the tracking control problem for a quadrotor drone system equipped with a disturbance observer and subject to control law saturation. The proposed scheme leverages the approximation capability of an improved disturbance observer to estimate unmeasurable external disturbances. Furthermore, a novel and structurally simple virtual control law saturation method was introduced to prevent signal overshoot in the quadrotor system. The integration of finite-time command filtering technology enhanced the flexibility of the controller design. Theoretical analysis proved the stability and finite-time convergence properties of the controller within the drone system. Both numerical simulations and real-world quadrotor drone platform experiments demonstrated that considering virtual control law saturation eliminates tracking overshoot and improves transient performance. The disturbance observer provided accurate estimates, contributing to robust control. However, as finite-time control convergence depends on initial conditions, future research could explore integrating fixed-time or preset-time control strategies with the virtual control law saturation framework for performance guarantees independent of initial state, which holds significant research promise for advanced quadrotor drone applications.
