We investigate the anti-saturation control problem for fixed-wing drones (FWUAVs) operating in complex dynamic environments. Our work addresses the combined challenges of external time-varying disturbances, sensor faults, output saturation, and input saturation. We propose a neural network adaptive control framework that integrates state observers, fault observers, disturbance observers, and auxiliary systems. The radial basis function neural networks are employed to approximate unknown dynamics and estimate unmeasured states. We prove that all signals in the closed-loop system are ultimately uniformly bounded via Lyapunov stability analysis. Simulation results demonstrate that our method ensures stable flight of fixed-wing drones under simultaneous adverse conditions.
1. Introduction
Fixed-wing drones are widely used in long-endurance reconnaissance, surveillance, and intelligence missions due to their superior range and flight time. However, in complex environments, these fixed-wing drones face severe threats from sensor faults, input/output nonlinear constraints, and external disturbances. Sensor faults caused by high humidity, vibration, temperature extremes, and electromagnetic interference can lead to inaccurate state measurements, degrading flight control performance and potentially causing catastrophic accidents. Numerous studies have addressed sensor fault diagnosis and compensation using observers or learning-based methods. Nevertheless, the coupling effects among sensor faults, output saturation (where measurements exceed sensor range), input saturation (actuator limits), and time-varying disturbances are rarely considered simultaneously for fixed-wing drones.
Existing research has separately tackled sensor faults, input saturation, and disturbance rejection. For instance, some works developed fault-tolerant control for quadrotors with sensor and actuator faults, while others studied output saturation in consensus algorithms or input saturation in fixed-wing drone trajectory tracking. Disturbance observer-based control methods have shown effectiveness in rejecting wind gusts for fixed-wing drones. However, to the best of our knowledge, no unified framework integrates all these challenges for fixed-wing drones. This paper fills this gap by designing a composite observer-based adaptive control strategy that simultaneously handles sensor faults, output saturation, input saturation, and external disturbances for fixed-wing drones.
Our main contributions are threefold:
- We design a radial basis function neural network (RBFNN)-based state observer to estimate unknown states, while also addressing unknown control gains.
- We construct a fault observer and a disturbance observer to estimate actuator faults and external disturbances, respectively, enabling their compensation.
- We develop an anti-saturation tracking controller using an auxiliary system and backstepping technique, guaranteeing ultimate boundedness of all closed-loop signals.

2. System Model and Problem Formulation
We consider a fixed-wing drone attitude system described by the following nonlinear dynamics:
$$
\begin{aligned}
\dot{\boldsymbol{\chi}}_1 &= \boldsymbol{f}_1(\boldsymbol{\chi}_1) + \boldsymbol{g}_1(\boldsymbol{\chi}_1)\boldsymbol{\chi}_2 + \boldsymbol{d}_1 \\
\dot{\boldsymbol{\chi}}_2 &= \boldsymbol{f}_2(\boldsymbol{\chi}_1,\boldsymbol{\chi}_2) + \boldsymbol{g}_2(\boldsymbol{\chi}_1,\boldsymbol{\chi}_2)\text{sat}(\boldsymbol{u}) + \boldsymbol{d}_2 \\
\boldsymbol{y} &= \text{sat}_s(\boldsymbol{\chi}_1 + \boldsymbol{s})
\end{aligned}
$$
where $\boldsymbol{\chi}_1 \in \mathbb{R}^3$ represents the attitude angles (roll, pitch, yaw), $\boldsymbol{\chi}_2 \in \mathbb{R}^3$ the angular rates, $\boldsymbol{u} \in \mathbb{R}^3$ the control inputs (rudder surfaces), and $\boldsymbol{y} \in \mathbb{R}^3$ the measured outputs. $\boldsymbol{d}_1, \boldsymbol{d}_2$ are time-varying external disturbances. $\boldsymbol{s}$ denotes sensor fault effects. The saturation functions $\text{sat}(\cdot)$ and $\text{sat}_s(\cdot)$ model input and output constraints, respectively, defined as piecewise linear functions with saturation limits $u_{li}, u_{ui}$ and $l_{li}, l_{ui}$. We assume disturbances and their derivatives are bounded. The desired trajectory $\boldsymbol{\chi}_{1d}$ and its derivative are known and bounded.
3. Observer Design
3.1 State Observer
Since $\boldsymbol{\chi}_1$ and $\boldsymbol{\chi}_2$ are not directly measurable due to sensor faults and saturation, we design a state observer using RBFNN approximations:
$$
\hat{\boldsymbol{\chi}}_1 = -\boldsymbol{C}_1\boldsymbol{\chi}_1 + \boldsymbol{A}_1\boldsymbol{\rho}_1^T\boldsymbol{\phi}_1(\hat{\boldsymbol{\chi}}_1,\hat{\boldsymbol{\chi}}_2) + \boldsymbol{B}_1\hat{\boldsymbol{\chi}}_2 + \boldsymbol{C}_1\hat{\boldsymbol{\chi}}_1 + \boldsymbol{d}_1 \\
\hat{\boldsymbol{\chi}}_2 = -\boldsymbol{C}_2\boldsymbol{\chi}_2 + \boldsymbol{A}_2\boldsymbol{\rho}_2^T\boldsymbol{\phi}_2(\hat{\boldsymbol{\chi}}_1,\hat{\boldsymbol{\chi}}_2) + \boldsymbol{\rho}_3^T\boldsymbol{\Delta}_3 + \hat{\boldsymbol{u}}
$$
where $\hat{\boldsymbol{\chi}}_i$ are estimates, $\boldsymbol{\rho}_i$ are neural network weights, $\boldsymbol{\phi}_i$ are basis functions, $\boldsymbol{C}_i$ are positive definite gain matrices, and $\boldsymbol{A}_i, \boldsymbol{B}_i$ are known constant matrices. The observation error dynamics are derived and boundedness is proved later. The adaptive laws for neural weights follow:
$$
\dot{\hat{\boldsymbol{\rho}}}_{1i} = \boldsymbol{\Psi}_{1i}(\boldsymbol{\chi}_1,e_{1i}) \\
\dot{\hat{\boldsymbol{\rho}}}_{2i} = \boldsymbol{\Psi}_{2i}(\boldsymbol{\chi}_2,e_{2i})
$$
3.2 Fault Observer
We model sensor faults as $\boldsymbol{s} = \boldsymbol{\xi} – \boldsymbol{\iota}$, where $\boldsymbol{\iota}$ is an unknown vector and $\boldsymbol{\xi}$ is defined via the output saturation function. The fault observer is designed as:
$$
\dot{\hat{\iota}}_i = -\iota_i\hat{\iota}_i + \hat{\boldsymbol{\xi}}_i – \hat{\iota}_i + \eta_i\tanh(\hat{\iota}_i/\epsilon_i) \\
\hat{s}_i = \hat{\iota}_i – \boldsymbol{\chi}_1
$$
The estimation error dynamics are analyzed, and using Lyapunov techniques we obtain boundedness of $\tilde{s}_i$.
3.3 Disturbance Observer
To estimate $\boldsymbol{d}_1$ and $\boldsymbol{d}_2$, we design two disturbance observers:
$$
\dot{\hat{\boldsymbol{\psi}}}_1 = -\boldsymbol{K}_1\boldsymbol{\psi}_1 – \boldsymbol{K}_1(\boldsymbol{\rho}_1^T\boldsymbol{\phi}_1 + \boldsymbol{B}_1\hat{\boldsymbol{\chi}}_2 + \boldsymbol{C}_1\hat{\boldsymbol{\chi}}_1) \\
\hat{\boldsymbol{d}}_1 = \boldsymbol{\psi}_1 + \boldsymbol{K}_1\boldsymbol{\chi}_1
$$
$$
\dot{\hat{\boldsymbol{\psi}}}_2 = -\boldsymbol{K}_2\boldsymbol{\psi}_2 – \boldsymbol{K}_2(\boldsymbol{\rho}_2^T\boldsymbol{\phi}_2 + \boldsymbol{\rho}_3^T\boldsymbol{\Delta}_3 + \hat{\boldsymbol{u}}) \\
\hat{\boldsymbol{d}}_2 = \boldsymbol{\psi}_2 + \boldsymbol{K}_2\boldsymbol{\chi}_2
$$
where $\boldsymbol{K}_1, \boldsymbol{K}_2$ are positive definite gains. With proper selection of gains, the disturbance estimation errors are bounded and converge to a small residual set.
4. Controller Design
We define tracking errors and introduce auxiliary states $\boldsymbol{\zeta}_1, \boldsymbol{\zeta}_2$ to handle input saturation:
$$
e_1 = \hat{\boldsymbol{\chi}}_1 – \boldsymbol{\chi}_{1d} – \boldsymbol{\zeta}_1, \\
e_2 = \hat{\boldsymbol{\chi}}_2 – \boldsymbol{\alpha} – \boldsymbol{\zeta}_2
$$
where $\boldsymbol{\alpha}$ is a first-order filtered virtual control signal. The auxiliary system is designed as:
$$
\dot{\boldsymbol{\zeta}}_1 = -\boldsymbol{\tau}_1\boldsymbol{\zeta}_1 + \boldsymbol{B}_1\boldsymbol{\zeta}_2, \\
\dot{\boldsymbol{\zeta}}_2 = -\boldsymbol{\tau}_2\boldsymbol{\zeta}_2 + \boldsymbol{\rho}_3^T\boldsymbol{\Delta}_3 – \boldsymbol{\rho}_3^T\boldsymbol{\Delta}_3
$$
The virtual control law $\boldsymbol{\alpha}_d$ and actual control law $\boldsymbol{u}$ are:
$$
\boldsymbol{\alpha}_d = \boldsymbol{B}_1^{-1}\left[ -\boldsymbol{K}_{e1}\boldsymbol{e}_1 – \boldsymbol{\rho}_1^T\boldsymbol{\phi}_1 – \boldsymbol{C}_1\hat{\boldsymbol{\chi}}_1 + \dot{\boldsymbol{\chi}}_{1d} + \dot{\boldsymbol{\zeta}}_1 \right] \\
\boldsymbol{u} = \boldsymbol{\Xi}^{-1}\left[ -\boldsymbol{K}_{e2}\boldsymbol{e}_2 + \dot{\boldsymbol{\alpha}} – \boldsymbol{B}_1^T\boldsymbol{e}_1 – \boldsymbol{\rho}_2^T\boldsymbol{\phi}_2 – \boldsymbol{\rho}_3^T\boldsymbol{\Delta}_3 – \hat{\boldsymbol{d}}_2 – \boldsymbol{\zeta}_2 \right]
$$
where $\boldsymbol{\Xi}$ is the estimate of the control gain matrix (ensured invertible via projection). Adaptive laws for neural weights and the unknown parameter $\boldsymbol{\Theta}$ are given by projection operators to guarantee boundedness.
5. Stability Analysis
We consider the Lyapunov function candidate:
$$
V = \sum_{i=1}^3 \left( V_{1i} + V_{2i} + V_{31i} + V_{32i} \right) + V_{41} + V_{42}
$$
where each $V_{(\cdot)}$ corresponds to observation errors, fault estimation errors, disturbance estimation errors, and tracking errors. After lengthy derivations (summarized in Table 1), we obtain:
$$
\dot{V} \leq -\lambda_1 V + \lambda_2
$$
where $\lambda_1>0$ depends on controller gains and $\lambda_2$ is a finite bound. Thus all error signals are ultimately uniformly bounded. The detailed conditions are omitted here for brevity.
| Component | Dominant Term | Required Condition |
|---|---|---|
| State observer errors $\tilde{\boldsymbol{\chi}}_1,\tilde{\boldsymbol{\chi}}_2$ | $-\frac{1}{2}\|\tilde{\boldsymbol{\chi}}_1\|^2 – \frac{1}{2}\|\tilde{\boldsymbol{\chi}}_2\|^2$ | Gains $C_{1i}, C_{2i}$ sufficiently large |
| Fault estimation errors $\tilde{s}_i$ | $-\frac{1}{2}\|\tilde{s}_i\|^2$ | $\iota_i > 0$ |
| Disturbance estimation errors $\tilde{\boldsymbol{d}}_1,\tilde{\boldsymbol{d}}_2$ | $-\frac{1}{2}\|\tilde{\boldsymbol{d}}_1\|^2 – \frac{1}{2}\|\tilde{\boldsymbol{d}}_2\|^2$ | Gains $K_{1i}, K_{2i}$ sufficiently large |
| Tracking errors $\boldsymbol{e}_1,\boldsymbol{e}_2$ | $-\lambda_{\min}(\boldsymbol{K}_{e1})\|\boldsymbol{e}_1\|^2 – \lambda_{\min}(\boldsymbol{K}_{e2})\|\boldsymbol{e}_2\|^2$ | $\boldsymbol{K}_{e1},\boldsymbol{K}_{e2}$ positive definite |
| Filter error $\tilde{\boldsymbol{\alpha}}$ | $-\frac{1}{\theta_\alpha}\|\tilde{\boldsymbol{\alpha}}\|^2 + \|\tilde{\boldsymbol{\alpha}}\|\cdot\|\boldsymbol{\pi}\|$ | $\theta_\alpha$ small enough |
| Auxiliary states $\boldsymbol{\zeta}_1,\boldsymbol{\zeta}_2$ | $-\tau_{1\min}\|\boldsymbol{\zeta}_1\|^2 – \tau_{2\min}\|\boldsymbol{\zeta}_2\|^2$ | $\tau_1,\tau_2$ positive |
6. Simulation Results
We performed numerical simulations on a fixed-wing drone model. The desired attitude command was set as a smooth step using error functions. External disturbances included a 5-second wind gust (magnitude [30,20,10] m/s) and sinusoidal disturbances on angular rates. Sensor faults were simulated as slow drifts described by error functions. The control parameters are listed in Table 2.
| Observer | Parameter | Value |
|---|---|---|
| State Observer | $\boldsymbol{A}_1$ | diag(0.2,0.2,0.2) |
| $\boldsymbol{B}_1$ | diag(2,2,2) | |
| $\boldsymbol{C}_1$ | diag(0.5,0.5,0.5) | |
| Fault Observer | $\iota_i$ | 1 |
| $\epsilon_i$ | 0.01 | |
| Disturbance Observer | $\boldsymbol{K}_1$ | diag(10,10,10) |
| $\boldsymbol{K}_2$ | diag(12,12,12) | |
| Controller | $\boldsymbol{K}_{e1}$ | diag(10,10,10) |
| $\boldsymbol{K}_{e2}$ | diag(2,2,2) | |
| $\tau_1,\tau_2$ | diag(0.5,0.5,0.5), diag(0.3,0.3,0.3) |
Disturbance estimation performance: The proposed disturbance observer accurately estimated the time-varying winds and sinusoidal disturbances. Estimation errors converged to small neighborhoods within 1 second, even after the wind gust ceased at t=5 s.
State estimation: The RBFNN-based state observer successfully reconstructed the attitude angles despite sensor faults and output saturation. The observation errors converged to zero within 2 seconds, demonstrating the effectiveness of our observer structure for fixed-wing drones.
Fault estimation: The fault observer tracked the sensor fault profiles (error functions) with bounded errors. Although the fault estimation exhibited slightly larger transients due to the coupling with output saturation, the overall error remained bounded and acceptable for flight control.
Tracking control: The actual attitude angles (roll, pitch, yaw) closely followed the desired commands after an initial transient. The tracking errors converged to within 0.5° after 5 seconds, despite simultaneous disturbances, faults, and saturations. The control inputs (rudder deflections) remained within the saturation limits due to the auxiliary system, avoiding windup effects. A comparison with standard backstepping (without our observers and auxiliary system) showed significant improvements in settling time and steady-state accuracy for fixed-wing drones.
7. Conclusion
In this paper, we have presented a comprehensive anti-saturation control framework for fixed-wing drones facing sensor faults, external disturbances, output saturation, and input saturation. By integrating RBFNN-based state observers, fault observers, disturbance observers, and auxiliary systems, we achieved robust attitude tracking. Lyapunov analysis proved ultimate boundedness of all signals. Simulation results confirmed that our method maintains stable and accurate flight for fixed-wing drones under severe combined adverse conditions. Future work will extend this approach to formation flight and adaptive structure design for fixed-wing drone swarms.
