Introduction

In recent years, UAVs have gained widespread popularity in both civil and military applications. Owing to their versatile capabilities and broad applicability, UAVs have been widely adopted across numerous research domains, including tracking control, collision avoidance, aerial manipulation, swarm systems, image processing, and deep learning. The performance of UAVs has been extensively studied and improved in various research contexts1,2,3. However, many UAV accidents have occurred due to errors made by inexperienced operators, environmental disturbances, and failures of onboard components. To prevent secondary accidents and protect high-value research equipment, the development of fault-tolerant control (FTC) systems for robust UAV operation has become increasingly important. A number of multirotor UAVs are designed with actuator redundancy to handle potential faults. Nevertheless, in scenarios where multiple actuators fail during flight, UAVs lacking an FTC mechanism cannot compensate for the motor loss, which may lead to accidents.

Various control algorithms has been investigated to ensure reliable and high-performance flight both before and after the occurrence of a fault. Researchers have explored the development and application of diverse control techniques for UAVs, such as linear and adaptive proportional–integral–derivative (PID) control4, feedback linearization5, backstepping control6, sliding mode control7,8,9, model predictive control10, adaptive control11,12,13, and intelligent control strategies based on fuzzy logic and machine learning. It is thus essential to develop an FTC framework that can be complementarily integrated with existing flight controllers, thereby preserving the advantages of the control methods mentioned above.

When operating at high altitudes, UAVs are subject to adverse effects on attitude control due to factors such as wind gusts and variations in air pressure. Simultaneously, they may also encounter internal issues, such as onboard device failures. These combined challenges complicate the attitude control problem for quadcopters. To address disturbance signals, many researchers have developed compensation systems. In14, a Nussbaum gain was employed to adaptively compensate for sampling errors and actuator failures, thereby effectively mitigating the impact of such failures on flight performance. In15, a nonlinear harmonic disturbance observer and a robust controller were jointly applied to compensate for external disturbances, enabling the system’s attitude angle tracking error under disturbance to converge to an equilibrium point. Furthermore, robust control methods have been integrated with disturbance observer-based control (DOBC) in16 and with nonlinear disturbance observer techniques in17. A time-domain disturbance observer (DOB) was also combined with output feedback control and a sliding mode controller to achieve trajectory tracking control for quadcopter aircraft. These disturbance observers typically exhibit long response times when estimating mismatched disturbances, which in turn increases the overall controller response time.

To address both actuator failures and external disturbances, the authors of18 constructed a novel state observer. By integrating full-loop control with terminal sliding mode control, they designed a finite-time fault-tolerant controller that compensates for fault signals and ensures estimation error converges to zero within a fixed time. In19, a robust adaptive sliding mode Thau observer was proposed to estimate the time-varying amplitude of actuator failure. This observer was incorporated into the fault diagnosis process for each actuator, significantly improving estimation accuracy.

In the design of UAV controllers, finite-time control schemes enable high-precision tracking and rapid convergence performance under external disturbances. For instance, reference20 developed a finite-time fault-tolerant control strategy using an integral terminal sliding mode controller driven by an adaptive fuzzy state observer. In21, adaptive backstepping control was integrated with a fuzzy logic system to accommodate known actuator faults within a finite time horizon. A non-singular fast terminal sliding mode control algorithm was proposed in22 to address trajectory tracking of UAVs subject to multi-source disturbances. Furthermore,21 introduced a fully-connected layer recursive sliding mode fault-tolerant control strategy to achieve system convergence and chattering suppression within a limited time. This approach enhances the adjustment capability for parameter variations induced by external uncertainties and reduces the settling time of the controller. To tackle input saturation, the authors of23 presented a finite-time auxiliary system based on a backstepping control scheme. By incorporating auxiliary compensation signals, this method mitigates the effects of input saturation, thereby improving both the robustness of the UAVs against aggregated disturbances and the response speed of the controller.

To further enhance the capability of UAVs in handling actuator and system faults, several advanced control strategies have been proposed. In24, the authors introduced an adaptive incremental nonlinear dynamic inversion (INDI) control method, which enables high-performance nonlinear control without relying on an accurate system model. Meanwhile, the authors of25,26 developed an adaptive backstepping tracking control strategy capable of effectively compensating for external unknown disturbances while achieving precise attitude tracking. In27, a novel adaptive fuzzy terminal sliding mode control scheme was designed for uncertain nonlinear systems subject to external disturbances and successfully applied to a two-link robotic arm control system. Furthermore, the authors of28,29,30 integrated adaptive control techniques with neural networks to address partial failures and jamming of aircraft actuators. They designed an adaptive neural network-based fault-tolerant controller that ensures stable tracking performance under system parametric uncertainties and actuator faults.

Combined with the above research results, this paper combines the finite time strategy and adaptive control method into the design of the disturbance observer, which not only reduces the estimation error caused by external disturbances, but also shortens the response time of the disturbance observer. The main contributions of this paper are as follows:

  1. (1)

    This work addresses combined fault conditions, including actuator efficiency loss, sensor biases, and unknown external disturbances, within a unified framework.

  2. (2)

    The mathematical model of quadrotor UAVs under combined faults is established, and the method for calculating parameters is provided.

  3. (3)

    A new AFTDO observer is proposed, which can accurately and quickly compensate for actuator faults and external disturbances, enhancing the system’s responsiveness while maintaining robustness.

  4. (4)

    Designing position and attitude controllers based on AFTDO disturbance observers. The challenges of UAV flight in complex environments are further examined. Compared with traditional control methods, it has more practical significance.

The remaining sections of this paper are as follows. Section “Problem formulation and quadrotor dynamics” describes the combined faults and corresponding assumptions. In Section “Fault-tolerant control scheme”, the nonlinear disturbance observer and the Pose controller is designed based on the paper scheme, along with the proof process. In Section “Simulation”, simulation results are presented using MATLAB/Simulink based on the proposed control scheme. Finally, in Section “Conclusions”, conclusions and future work recommendations are provided.

Problem formulation and quadrotor dynamics

Quadrotor dynamics

To describe the quadrotor dynamic model, two coordinate systems are introduced, the quadrotor coordinate system and Earth-Centered Inertial coordinate system, which are denoted as \(\left\{ {\varvec{B}} \right\} = \{ O_{b} ,x_{b} ,y_{b} ,z_{b} \}\) and \(\left\{ {\varvec{A}} \right\} = \{ O_{e} ,x_{e} ,y_{e} ,z_{e} \}\), shown in (Fig. 1).

Fig. 1
figure 1

Structural diagram of quadcopter.

We can know in Fig. 1, motors 1 and 3 rotate counterclockwise; motors 2 and 4 rotate clockwise. Motors are installed at the top diagonal of the quadcopter body, with a distance of \(l\) from the center of mass, The lift \(F_{s} (s = 1,...,4)\) generated by the propeller is opposite to the direction of gravity, The torque \(\tau_{s}\) generated by the four propellers cancels each other out, Fig. 2 illustrates the lift characteristics under fault-free conditions.

Fig. 2
figure 2

Operational thrust without fault.

Based on the model structure of the quadrotor, the coordinate transformation matrix from the ground coordinate system to the body coordinate system, denoted as \(C_{g}^{b}\):

$$C_{g}^{b} = \left[ \begin{gathered} \, \cos \theta \cos \psi {\text{ c}}os\theta {\text{sin}}\psi {\text{ - sin}}\theta \hfill \\ {\text{sin}}\theta {\text{c}}os\psi {\text{sin}}\theta - {\text{sin}}\psi {\text{c}}os\phi {\text{ sin}}\theta {\text{s}} {\text{in}}\psi {\text{sin}}\phi {\text{ + c}}os\psi {\text{c}}os\phi {\text{ c}}os\theta {\text{sin}}\psi \hfill \\ {\text{sin}}\theta {\text{c}}os\psi {\text{c}}os\phi + {\text{sin}}\psi {\text{s}} {\text{in}}\phi {\text{ sin}}\theta {\text{s}} {\text{in}}\psi {\text{c}}os\phi - \cos \psi {\text{s}} {\text{in}}\phi {\text{ c}}os\theta \cos \phi \, \hfill \\ \end{gathered} \right]$$
(1)

According to the theorem of momentum and moment of momentum, the system of dynamic differential equations can be obtained:

$$m\dot{\xi }_{g} = C_{b}^{g} F_{b}^{T} + G_{g}$$
(2)
$$I_{b} \dot{w}_{b} + \omega_{b}^{ \times } (I_{b} \omega_{b} ) = \tau_{b}^{T} { + }\Gamma_{b}$$
(3)

where \(m\) is the quadrotor’s weight;\(F_{b}^{T} = [0,0, - f_{T} ]^{T}\) is the lift vector in the body coordinate system;\(f_{T}\) denotes the total thrust magnitude of the rotors;\(G_{g} { = [0,0,}mg{]}^{T}\) is the gravity vector in the body coordinate system;\(\xi_{g} = [u,v,w]^{T}\) represents the translation velocity vector in the ground coordinate system;\(\tau_{b}^{T} = [\tau_{\phi } ,\tau_{\theta } ,\tau_{\psi } ]^{T}\) is the control torque vector in the body coordinate system;\(\tau_{\phi } ,\tau_{\theta } ,\tau_{\psi }\) represents the roll, pitch, and yaw control torques, respectively;\(\omega_{b} = [p_{b} ,q_{b} ,r_{b} ]^{T}\) is the angular velocity in the body coordinate system;\(\Gamma_{b}\) is the gyroscopic torque on the quadrotor caused by rotor rotation;\(I_{b}\) is the inertia tensor matrix of the quadrotor. In addition,

$$I_{b} = \left[ \begin{gathered} I_{x} \, 0 \, 0 \hfill \\ 0 \, I_{y} \, 0 \hfill \\ 0 \, 0 \, I_{z} \hfill \\ \end{gathered} \right];w_{b}^{ \times } = \left[ \begin{gathered} 0 \, - r_{b} \, q_{b} \hfill \\ r_{b} \, 0 \, - p_{b} \hfill \\ - q_{b} \, p_{b} \, 0 \hfill \\ \end{gathered} \right];\Gamma_{b} = w_{b}^{ \times } \left[ \begin{gathered} 0 \hfill \\ 0 \hfill \\ I_{r} \Omega_{r} \hfill \\ \end{gathered} \right]$$
(4)

where \(I_{x} ,I_{y} ,I_{z}\) represent the roll, pitch, and yaw rotational inertias of the quadrotor, \(\Omega_{r} = \Omega_{1} - \Omega_{2} + \Omega_{3} - \Omega_{4}\) denotes the sum of the rotational speeds of the four motors.\(I_{r}\) is the polar moment of inertia of a single rotor.

The kinematic equations of the quadrotor can be expressed in the following form:

$$\left\{ \begin{gathered} \dot{\eta }_{b} = Q^{ - 1} w_{b} \hfill \\ Q^{ - 1} = \left[ \begin{gathered} 1{\text{ sin}}\phi {\text{tan}}\theta {\text{ cos}}\phi {\text{tan}}\theta \hfill \\ {\text{0 cos}}\phi {\text{ - sin}}\phi \hfill \\ {\text{0 sin}}\phi \sec \theta {\text{ cos}}\phi \sec \theta \, \hfill \\ \end{gathered} \right] \hfill \\ \dot{p}_{g} = \xi_{g} = C_{b}^{g} \xi_{b} ,C_{b}^{g} = \left( {C_{g}^{b} } \right)^{T} \, \hfill \\ \end{gathered} \right.$$
(5)

where \(\eta_{b} = [\phi ,\theta ,\psi ]^{T}\) represents the attitude vector;\(Q\) is the transformation matrix relating the rate of change of the attitude angles to the body angular velocities;\(p_{g} = [x_{g} ,y_{g} ,z_{g} ]^{T}\) is the position vector of the UAV. Taking the derivative of \(\eta_{b}\) with respect to time yields:

$$\left\{ \begin{gathered} \dot{\eta }_{b} = [\dot{\phi },\dot{\theta },\dot{\psi }]^{T} \hfill \\ \ddot{\eta }_{b} = [\ddot{\phi },\ddot{\theta },\ddot{\psi }]^{T} \hfill \\ \end{gathered} \right.$$
(6)

Based on Eqs. (6) and (8), the differential equation for the Quadrotor attitude angles can be obtained as follows:

$$\left\{ \begin{gathered} \ddot{\eta }_{b} = \alpha_{s} \tilde{\tau }_{b} + D(\cdot) \hfill \\ D(\cdot) = \Pi^{ - 1} C(\eta_{b} ,\dot{\eta }_{b} ) \hfill \\ C(\eta_{b} ,\dot{\eta }_{b} ) = - I_{b} \dot{Q}\dot{\eta }_{b} - (Q\dot{\eta }_{b} )^{ \times } \Pi \dot{\eta }_{b} \hfill \\ \end{gathered} \right. \,$$
(7)

where \(\Pi = I_{b} Q\),\(\tilde{\tau }_{b} = \Pi^{ - 1} \tau_{b}\),\(\tau_{b}\) represents the actual control torque of the quadrotor, \(D(\cdot)\) represents the system disturbances acting on the body.

Lemma 1

For a nonlinear system \(\dot{x}(t) = f(x(t))\), if there exists a positive definite Lyapunov function \(V(x)\), its time derivative satisfies the following relation:

$$\dot{V}(x) \le - AV^{a} (x) + B$$
(8)

where \(A > 0,B > 0,s \in (0,1)\),the system converges to the set \(\left\{ {x|V^{1 - a} (x) \le \frac{B}{A(1 - \gamma )}} \right\},\gamma \in (0,1)\), and converge to \(T \le \frac{{V^{1 - a} (x(t_{0} ))}}{A\gamma (1 - a)}\).

Problem formulation

The quadcopter belongs to a typical underactuated system. When a quadcopter performs flight missions in unknown environments, it is very susceptible to various types of external interference, which can cause plane crashes. When studying the control algorithm of quadcopter unmanned aerial vehicles, the vector of uncertainty in the altitude and attitude modeling is:

$$\ell (p,\nu ) = \left[ {\ell_{p} (p,t),\ell_{v} (v,t)} \right]^{T} ,$$
(9)

The design and analysis of finite-time fault-tolerant control algorithms require the following assumptions.

Assumption 1

Only consider the impact of constant wind on quadcopter drones, without taking into account turbulent wind.

Assumption 2

The flight control chip of quadcopter aircraft has sufficient computing power to meet control requirements.

Assumption 3

Each component of the uncertainty perturbation model \(\ell (x,t)\) is unknown, but there are fixed boundaries.i.e., for \(i = 1 \cdots 4\),

$$\left| {\ell_{i} (x,t)} \right| \le \overline{\ell }_{i} (x,t) \, \forall t \ge 0,$$
(10)

where the bounding function \(\overline{\ell }_{i} (x,t)\) is known.

Assumption 4

Damage to propeller blades or decrease in rotational speed indicates actuator failure. For example, damage to propeller blades can lead to a partial loss of thrust generated by the corresponding rotor5. Therefore, the actuator fault considered is modeled as follows. for \(s = 1 \cdots 4\),

$$w_{s}^{ * } = \alpha_{s} w_{s}$$
(11)

where \(w_{s}\) represents the propeller blade speed,\(w_{s}^{ * }\) is actual speed of the malfunctioning propeller, and \(\alpha_{s} \in \left( {\overline{\alpha },1} \right]\) is an unknown constant and represents the current propeller rotation reduction factor,\(\overline{\alpha }\) indicates the lower line of propeller speed required for quadcopter. For example,\(\overline{\alpha } = 0\) indicates that the propeller is stuck or completely damaged, and \(\alpha_{s} = 1\) indicates that the propeller is in normal operation, and \(0 < \overline{\alpha } < \alpha_{s} < 1\) represents a faulty rotor. Figure 3 illustrates the lift characteristics under actuator fault conditions.

Fig. 3
figure 3

Control output after fault.

Assumption 5

Further considering bias faults and external disturbances, they are collectively referred to as lumped disturbances along with actuator faults.

$$d(t) = \alpha_{s} w_{s} + \sigma_{i} (t)w_{s} + d_{i} (t)$$
(12)

where \(\sigma_{i} (t)\) is 0 indicate no bias or 1 indicate bias.\(\left| {d_{i} (t)} \right| \le {\text{D}}_{i}\) indicate bounded external disturbance and \({\text{D}}_{i}\) is a constant.

Remark 1

The disturbances \(d^{ * } (k)\) considered in this article mainly depend on unknown environmental disturbances and do not take into account disturbances from the body components themselves. Over a short sampling period, we define the lumped disturbance as remaining nearly constant or varying within an extremely small range, i.e.\(\Delta d^{ * } (k + i) \approx 0\).

Fault-tolerant control scheme

In this section, a detailed derivation of the nonlinear disturbance observer for the quadrotor will be presented, and a corresponding fault-tolerant control strategy will be proposed to address combined faults.

Design of nonlinear disturbance observer

To enable the observer in this paper to better estimate the effects of combined faults, and following the design approach of the disturbance observer, the following nonlinear disturbance observer is obtained:

$$\hat{e}_{d}^{ * } (k_{d} ) = r(k_{d} ) + q(x(k_{d} ),x(k_{d} + 1))$$
(13)
$$r(k_{d} + 1) = r(k_{d} ) - G(x(k_{d} ),x(k_{d} + 1))\hat{e}_{d} (k_{d} )$$
(14)

where \(r(k_{d} )\) is the disturbance observer state vector,\(\hat{e}_{d}^{ * } (k)\) is the estimator of the first component \(D(\cdot)\) of \(e_{d} (k_{d} )\),\(q(x(k_{d} ),x(k_{d} + 1))\) and \(G(x(k_{d} ),x(k_{d} + 1))\) are the observer function vectors. In order to design of observer, we propose the following scheme.

Theorem 1

Design of the state observer satisfies assumption3. If the observer has accurate estimation, then the chosen function \(q(x(k_{d} ),x(k_{d} + 1))\) and \(G_{ob} = {\text{diag}}\left\{ {l_{1} ,l_{2} ,l_{3} } \right\}\) needs to satisfy the following conditions:

$$\begin{gathered} G(\cdot,\cdot)\Delta x(k_{d} + 2) = \Delta p(x(k_{d} + 1),x(k_{d} + 2)) \hfill \\ \, 0 < l_{i} < 2,i = 1,2,3 \hfill \\ \end{gathered}$$
(15)

Proof of Theorem 1

To demonstrate the stability of the DNDOB, we define:

$$e_{ob} (k_{d} ) = e_{d}^{ * } (k_{d} ) - \hat{e}_{d}^{ * } (k_{d} )$$
(16)

The next moment \(e_{ob} (k_{d} )\) can be represented as

$$\begin{gathered} e_{ob} (k_{d} + 1) = e_{d}^{ * } (k_{d} + 1) - \hat{e}_{d}^{ * } (k_{d} + 1) \hfill \\ \, = e_{d}^{ * } (k_{d} + 1) - r(k_{d} + 1) - q(x(k_{d} + 1),x(k_{d} + 2)) \hfill \\ { = }e_{d}^{ * } (k_{d} + 1) - G(\cdot,\cdot)\hat{e}_{d}^{ * } (k_{d} ) - \Delta q(x(k_{d} + 1),x(k_{d} + 2)) \hfill \\ \end{gathered}$$
(17)

According (14), the above error system can be rewritten as

$$\begin{gathered} e_{ob} (k_{d} + 1) = e_{d}^{ * } (k_{d} + 1) - \hat{e}_{d}^{ * } (k_{d} ) - G(\cdot,\cdot)e_{d}^{ * } (k_{d} ) \hfill \\ \, = e_{d}^{ * } (k_{d} + 1) - e_{d}^{ * } (k_{d} ) + (I - G(\cdot,\cdot)(e_{d}^{ * } (k_{d} ) - \hat{e}_{d}^{ * } (k_{d} ))) \hfill \\ { = (}I - G(\cdot,\cdot))e_{ob} (k_{d} ) + \Delta e_{d}^{ * } (k_{d} + 1) \hfill \\ \end{gathered}$$
(18)

According to Remark 1 and (14), we can obtain \(\Delta e^{ * } (k_{d} + i) = 0\),In addition,\(\left| {1 - l_{i} } \right| < 1\), which implies selecting as \(G(\cdot,\cdot)\) a Schur matrixthe nonlinear disturbance observer can asymptotically track the disturbance of system.

According to Assumption 5 all disturbances as lumped disturbances, the observer primarily estimates the angular velocity \(e_{w}\) of the UAV and the disturbance estimation values \(e_{ob} (k_{d} )\),so:

$$\begin{gathered} \dot{e}_{w} = ge_{d} - k_{1} sig(e_{w} )^{\alpha 1} \hfill \\ \dot{e}_{ob} (k_{d} ) = - k_{2} sig(e_{w} )^{\alpha 1} - \dot{d} \hfill \\ \end{gathered}$$
(19)

Construct Lyapunov function as follows:

$$V = \frac{1}{2}e_{w}^{T} e_{w} + \frac{1}{2}e_{ob} (k_{d} )^{T} Pe_{ob} (k_{d} )$$
(20)

where P is positive definite symmetric matrix.

Derivative of the above equation can obtain:

$$\begin{gathered} \dot{V} = e_{w}^{T} \dot{e}_{w} + e_{ob} (k_{d} )^{T} P\dot{e}_{ob} (k_{d} ) \hfill \\ \, = e_{w}^{T} (ge_{ob} (k_{d} ) - k_{1} sig(e_{w} )^{\alpha 1} ) + e_{ob}^{T} (k_{d} )P( - k_{2} sig(e_{w} )^{\alpha 2} - \dot{d}) \hfill \\ \end{gathered}$$
(21)

Select \({\text{P}}k_{2} = g^{T}\), then:

$$e_{w}^{T} (ge_{ob} (k_{d} ) - e_{ob}^{T} (k_{d} ){\text{P}}k_{2} sig(e_{w} )^{\alpha 2} = e_{w}^{T} {\text{g}}e_{ob}^{T} (k_{d} ) - e_{ob}^{T} (k_{d} )g^{T} sig(e_{w} )^{\alpha 2}$$
(22)

Select \(k_{2} = \Gamma g^{T}\) can obtain:

$$\dot{V} = \hat{e}_{ob}^{T} (k_{d} )g\hat{e}_{ob} (k_{d} ) - \hat{e}_{ob}^{T} (k_{d} )K_{1} \hat{e}_{ob} (k_{d} )) - r^{T} (k_{d} + 1)\Gamma^{ - 1} \dot{r}( - K_{2} e_{ob}^{T} (k_{d} ))$$
(23)

According to the finite time stability theorem, if there exists a constant \(c > 0\cdot\gamma \in (0,1)\) such that \(\dot{V} \le - cV^{\gamma }\), the observer can converge in finite time, and the upper limit of convergence time is:

$$T \le \frac{{V(0)^{1 - \gamma } }}{c(1 - \gamma )}$$
(24)

Select \(\alpha 1 = 0.5,\alpha 2 = 0\;\cdot\;sig(e_{w} )^{\alpha 2} = sig(e_{w} )\) then:

$$\begin{gathered} \dot{V} = \hat{e}_{w}^{T} (g\hat{e}_{ob} (k_{d} ) - k_{1} \left| {e_{w} } \right|^{{{\raise0.7ex\hbox{$1$} \!\mathord{\left/ {\vphantom {1 2}}\right.\kern-0pt} \!\lower0.7ex\hbox{$2$}}}} sig(e_{w} ) + e_{ob}^{T} (k_{d} )( - k_{2} sig(e_{w} ) - \dot{d}) \hfill \\ \, \le - k_{1} \left\| {e_{w} } \right\|^{{{\raise0.7ex\hbox{$3$} \!\mathord{\left/ {\vphantom {3 2}}\right.\kern-0pt} \!\lower0.7ex\hbox{$2$}}}} - (k_{2} - \delta_{\max } )\left\| {e_{ob} (k_{d} )} \right\|\left\| {e_{w} } \right\|^{{{\raise0.7ex\hbox{$1$} \!\mathord{\left/ {\vphantom {1 2}}\right.\kern-0pt} \!\lower0.7ex\hbox{$2$}}}} \hfill \\ \end{gathered}$$
(25)

According to the finite time stability theorem, the system can converge within a finite time and the upper limit of convergence time is:

$${\text{T}} \le \frac{4}{c}V(0)^{{{\raise0.7ex\hbox{$3$} \!\mathord{\left/ {\vphantom {3 4}}\right.\kern-0pt} \!\lower0.7ex\hbox{$4$}}}}$$
(26)

Adaptive finite-time fault-tolerant controller design

Based on the disturbance observer designed in the preceding section, a finite-time fault-tolerant control (FTC) strategy is developed in this section for a quadrotor system subject to combined faults. The overall control structure is illustrated in (Fig. 4). Due to the under-actuated nature of the quadrotor, decoupling computation is essential for coordinating the position and attitude subsystems. In this scheme, both subsystems compare the observed state estimates with the corresponding reference signals, while an Adaptive Finite-Time Fault-Tolerant Controller provides real-time compensation for the resulting tracking deviations.

Fig. 4
figure 4

Control structure scheme.

Attitude controller design

Based on the model established in the Sect.  2, when the system is subject to combined fault disturbances, attitude tracking error is defined as

$$e_{\Theta } = e - e_{\Theta d}$$
(27)

where Attitude tracking error \(e_{\Theta } = \left[ {e_{\Theta \phi } ,e_{\Theta \theta } ,e_{\Theta \varphi } } \right]^{T}\).

Selected terminal sliding surface was:

$$S_{i} = e_{\Theta } + \delta_{i} e_{\Theta } + \sigma_{i} e_{\Theta }^{a}$$
(28)

where \(\delta_{i} ,\sigma_{i} > 0\) and \(0 < a = \frac{n}{m} < 1\), Since the solution process for the three attitude angles is similar, the pitch angle is used as an example.

The pitch subsystem of the quadcopter is represented as

$$\left\{ \begin{gathered} \dot{x}_{1} = x_{2} \hfill \\ \dot{x}_{2} = f_{\theta } (x) + (1 - \alpha_{s} )u_{\theta } g_{\theta } (x) + d \hfill \\ \end{gathered} \right.$$
(29)

where \(u_{\theta }\) is the expected control input that needs to be obtained,\(g_{\theta } (x) = I_{y}^{ - 1}\),\(d\) represents external interference and is a component of \(D(\cdot)\).

Pitch angle tracking error was

$$e_{\theta } = \theta - \theta_{d}$$
(30)

It immediately follows that:

$$\dot{e}_{\theta } = \dot{\theta } - \dot{\theta }_{d}$$
(31)

Select the terminal sliding surface as

$$s_{\theta } = \dot{e}_{\theta } + \delta_{1} e_{\theta } + \sigma_{1} e_{\theta }^{a}$$
(32)

Derivative of t he above equation, we can obtain:

$$\begin{gathered} \dot{s}_{\theta } = \ddot{e}_{\theta } + \delta_{1} \dot{e}_{\theta } + \sigma_{1} \frac{{d(e_{\theta }^{a} )}}{dt} \hfill \\ { = }\ddot{e} - \ddot{e}_{\theta d} + \delta_{1} \dot{e}_{\theta } + \sigma_{1} \frac{{d(e_{\theta }^{a} )}}{dt} \hfill \\ \end{gathered}$$
(33)

The reaching law for the sliding mode surface is selected:

$$\dot{s}_{\theta 1} = - k_{1} s_{\theta } - \eta_{1} sign(s_{\theta } )$$
(34)

Based on Eq. (29) and the sliding mode surface, the expression for controller \(u_{\theta }\) is obtained as follows:

$$u_{\theta } = \frac{1}{{1 - \alpha_{3} }}\left[ {(\ddot{\theta }_{d} - f_{\theta } (x) - \delta_{3} \dot{e}_{\theta } - \sigma_{3} ae_{\theta }^{a - 1} - dsign(s_{\theta } ))} \right]$$
(35)

Theorem 2

Assume that there exists a positive definite and continuous function \(S(x)\), satisfies the inequality \(\dot{s}_{x} + \delta s_{x} + \sigma s_{x}^{a} < 0\), The initial state of system is \(s_{0}\),\(\delta ,\sigma > 0\) and \(0 < a < 1\) Then the state \(S(x)\) will converge to the equilibrium point in a finite time.

$$t_{s} \le \frac{1}{\delta (1 - a)}\ln (\frac{{\delta s_{\theta }^{1 - a} (t) + \sigma }}{\sigma })$$
(36)

Proof of Theorem 2

In order to verify that the unmanned aerial vehicle system can reach a convergence state within a finite time after being affected by actuator efficiency loss and sudden disturbances,When \(t \to 0\), then \(\phi \to \phi_{c} ,\psi \to \psi_{c} ,\varphi \to \varphi_{c}\).

The Lyapunov function is selected as follows:

$$V_{1} = \frac{1}{2}s_{\theta }^{2}$$
(37)

Substituting Eqs. (34) and (35) into Eq. (33) to get:

$$\dot{s}_{\theta } = - k_{1} s_{\theta } - \eta_{1} sign(s_{\theta } ) - dsign(s_{\theta } ) - \alpha_{3} sign(s_{\theta } )$$
(38)

Substituting the above expression into Eq. (37) and differentiating yields:

$$\begin{gathered} \dot{V}_{1} = s_{\theta } \dot{s}_{\theta } \hfill \\ \, = s_{\theta } ( - k_{1} s_{\theta } - \eta_{1} sign(s_{\theta } ) - d_{1} sign(s_{\theta } ) - \alpha_{1} sign(s_{\theta } )) \hfill \\ { = } - k_{1} s_{\theta }^{2} - (\eta_{1} + d_{1} )\left| {s_{\theta } } \right| \hfill \\ \end{gathered}$$
(39)

According to Assumption 3, it follows that:

$$\dot{V}_{1} { = } - k_{1} s_{\theta }^{2} - (\eta_{1} + d)\left| {s_{\theta } } \right| \le 0$$
(40)

where \(k,\eta ,d\) is a positive real number greater than 0, so can be obtained \(\dot{V}_{1} < 0\). According to the Lyapunov stability criterion, the designed sliding surface will gradually converge to a stable state, indicating that the yaw angle control process in the attitude controller can continue to reach a stable state after being disturbed and faulty, so that the attitude controller can satisfy convergence under global conditions. When \(t \to \infty\), then.

\(e \to 0\).

Therefore, pitch controller ensures pitch system remains asymptotically stable. by appropriately setting parameters, the sliding mode surface can converge to the equilibrium state within finite time, with the convergence time given as

$$t_{s} \le \frac{1}{\delta (1 - a)}\ln \left( {\frac{{\delta s_{\theta }^{1 - a} (t) + \sigma_{1} }}{{\sigma_{1} }}} \right)$$
(41)

Based on the above analysis, the selected formula (41) can ensure that the subsystem converges quickly to the equilibrium point within a limited time.

Similarly, the tracking errors for the roll and yaw subsystems are given by:

$$\begin{gathered} e_{\phi } = \phi - \phi_{d} \hfill \\ e_{\varphi } = \varphi - \varphi_{d} \hfill \\ \end{gathered}$$
(42)

Select the terminal sliding surface as:

$$\begin{gathered} s_{\phi } = \dot{e}_{\phi } + \delta_{1} e_{\phi } + \sigma_{1} e_{\phi }^{{a_{2} }} \hfill \\ s_{\varphi } = \dot{e}_{\varphi } + \delta_{1} e_{\varphi } + \sigma_{1} e_{\varphi }^{{a_{3} }} \hfill \\ \end{gathered}$$
(43)

The selected reaching law is:

$$\begin{gathered} \dot{s}_{\phi 1} = - k_{2} - \eta_{2} sign(s_{\phi } ) \hfill \\ \dot{s}_{\varphi 1} = - k_{3} - \eta_{3} sign(s_{\varphi } ) \hfill \\ \end{gathered}$$
(44)

The controller for yaw and roll is designed as:

$$\begin{gathered} \dot{U}_{\phi } = s_{\phi } \dot{s}_{\phi } \hfill \\ \, = s_{\phi } ( - k_{1} - \eta_{2} sign(s_{\phi } ) - d_{2} sign(s_{\phi } ) - \alpha_{3} sign(s_{\phi } )) \hfill \\ { = } - k_{2} s_{\phi } - (\eta_{2} + d_{2} )\left| {s_{\phi } } \right| \hfill \\ \end{gathered}$$
(45)
$$\begin{gathered} \dot{U}_{\varphi } = s_{\varphi } \dot{s}_{\varphi } \hfill \\ \, = s_{\varphi } ( - k_{3} - \eta_{3} sign(s_{\varphi } ) - d_{3} sign(s_{\varphi } ) - \alpha_{3} sign(s_{\varphi } )) \hfill \\ { = } - k_{3} s_{\varphi } - (\eta_{3} + d_{3} )\left| {s_{\varphi } } \right| \hfill \\ \end{gathered}$$
(46)

It follows from the above that: the controller designed in this section ensures that the quadrotor control system ultimately reaches a stable state, and under the Lyapunov stability criterion, it converges asymptotically.

Position controller design

When the system is subject to combined fault disturbances, the position tracking errors in the three directions are defined as follows:

$$E_{p} = P - P_{d}$$
(47)

where \(E_{p} = [e_{x} ,e_{y} ,e_{z} ]^{T}\), The actual position \(P = [x,y,z]^{T}\), the desired position \(P_{d} = [x_{d} ,y_{d} ,z_{d} ]^{T}\).

The sliding mode surface for the position subsystem is selected as follows:

$$S_{i} = \dot{E}_{p} + \delta_{j} E_{p} + \sigma E_{p}^{b}$$
(48)

The reaching law for the position controller is selected as follows:

$$\dot{S}_{x} = k_{4} S_{x} + \eta_{4} sign(S_{x} )$$
(49)
$$\dot{S}_{z} = k_{5} S_{z} + \eta_{5} sign(S_{z} )$$
(50)
$$\dot{S}_{y} = k_{6} S_{y} + \eta_{6} sign(S_{y} )$$
(51)

Based on the selected sliding mode surface for the system, the input expression for the position control can be obtained as follows:

$$\begin{gathered} u_{x} = \frac{1}{{1 - \alpha_{4} }}\left[ {(\ddot{x}_{d} - f_{x} (x) - \delta_{4} \dot{e}_{x} - \sigma_{4} be_{x}^{b - 1} - d_{1} sign(s_{x} ))} \right] \hfill \\ u_{y} = \frac{1}{{1 - \alpha_{5} }}\left[ {(\ddot{y}_{d} - f_{y} (x) - \delta_{5} \dot{e}_{y} - \sigma_{5} be_{y}^{b - 1} - d_{2} sign(s_{y} ))} \right] \hfill \\ u_{z} = \frac{1}{{1 - \alpha_{6} }}\left[ {(\ddot{z}_{d} - f_{z} (x) - \delta_{6} \dot{e}_{z} - \sigma_{6} be_{z}^{b - 1} - d_{3} sign(s_{z} ))} \right] \hfill \\ \end{gathered}$$
(52)

For the designed controller, the derivative of Eq. (48) can be obtained:

$$\dot{S}_{i} = \ddot{E}_{p} + \delta_{i} \dot{E}_{p} + \sigma_{i} \frac{1}{1 - a}E_{p}^{a - 1} \dot{E}_{p}$$
(53)

Theorem 3

Consider the augmented system in Eq. (7) and Assumptions 1, 2. and 3. If the finite time convergent position controller is designed as Eq. (48), then the estimated error (47) will converge to the equilibrium point in finite time.

Proof the Theorem 3

The Lyapunov function for the position controller is selected as:

$$V_{2} = \frac{1}{2}(s_{x}^{2} + s_{y}^{2} + s_{z}^{2} )$$
(54)

Substituting Eqs. (46) and (48) into the above expression and differentiating yields:

$$\begin{gathered} \dot{V}_{2} = s_{i} \dot{s}_{i} \hfill \\ \, = s_{i} ( - k_{l} s_{i} - \eta_{l} sign(s_{i} ) - d_{l} sign(s_{i} ) - \alpha_{l} sign(s_{i} )) \hfill \\ { = } - k_{l} s_{i}^{2} - (\eta_{l} + d_{l} )\left| {s_{i} } \right| \hfill \\ \end{gathered}$$
(55)

where \(i = x,y,z\), and \(l\) is a positive constant. So we can obtain:

$$\dot{V}_{2} { = } - k_{l} s_{i}^{2} - (\eta_{l} + d_{l} )\left| {s_{i} } \right| \le 0$$
(56)

where \(k,\eta ,d\) is a positive real number greater than 0, so can be obtained \(\dot{V}_{2} < 0\).According to the Lyapunov stability criterion, the designed sliding surface will gradually converge to a stable state, indicating that the position controller can meet the required height for flight after being disturbed and faulty, so that the position controller can satisfy convergence under global conditions. When \(t \to 0\), then \(e \to 0\).

According to Theorem 2, the sliding mode surface can converge to the equilibrium point within finite-time, with the convergence time given as:

$$t_{s} \le \frac{1}{{\delta_{i} (1 - a)}}\ln (\frac{{\delta_{i} s_{\theta }^{1 - a} (t) + \sigma_{i} }}{{\sigma_{i} }})(i = x,y,z)$$
(57)

In summary, the position controller designed in this section ensures that the UAV control system ultimately reaches a stable state and converges asymptotically under the Lyapunov stability criterion.

Simulation

This section presents simulation results to validate the key contributions of this work. First, the fault estimation performance of the proposed AFTDO observer is evaluated. Subsequently, the designed position and attitude controllers are compared with sliding mode control (SMC) and active disturbance rejection control (ADRC) through numerical simulations, highlighting the importance of accounting for combined faults in the controller design.

Prior to the simulation experiments, the system parameters are initialized. Table 1 summarizes the dynamic model parameters of the quadrotor, while Table 2 lists the parameter values used in the fault-tolerant controller.

Table 1 UAV model parameters.
Table 2 Fault tolerant controller parameters.

To evaluate the fault tolerance performance of the proposed algorithm under actuator faults, combined system faults, and external disturbances are simultaneously introduced into the system. As illustrated by the numerical simulation results in (Fig. 5), the disturbance observer developed in this work achieves shorter convergence time and reduced overshoot compared to conventional observers. In scenarios involving both combined faults and unknown disturbances, the proposed method converges to the equilibrium point more rapidly. These results confirm that the proposed strategy offers more effective compensation for aggregated disturbances and exhibits enhanced robustness.

Fig. 5
figure 5

Disturbance observer estimation capability.

This section evaluates the control performance of the proposed scheme in handling lumped disturbances under a scenario where the complete failure of Motor 1 coincides with a sensor fault at t = 8.5 s. As shown in Fig. 6, following the failure of Motor 1, the altitude of the UAV decreases rapidly. However, within 1 s, the height recovers. This behavior can be attributed to the controller’s detection of the fault in Motor 1, which triggers a compensatory speed increase in Motor 3, as depicted in (Fig. 7). Nevertheless, the thrust from Motor 3 alone is insufficient to fully counteract the disturbance caused by the failure of Motor 1, resulting in a net altitude loss of approximately 0.4 m.

Fig. 6
figure 6

Diagram of Motor 1 Failure.

Fig. 7
figure 7

Diagram of motor 1 failure speed.

The control performance was further evaluated under a more challenging scenario involving simultaneous partial failure of two motors (Motors 2 and 3) and a sensor fault within the lumped disturbance. In this case, the speeds of Motors 2 and 3 were reduced to 90% of their nominal values. As demonstrated in Fig. 11, the resulting degradation in motor efficiency is clearly observed. Figures 8 and 9 show a distinct descent in UAV altitude, which is primarily attributable to the loss of motor efficiency and the consequent reduction in total lift force. This initial altitude decrease is subsequently compensated by the controller, enabling the trajectory to gradually converge toward the desired value. Quantitative results summarized in Table 3 confirm that the proposed control scheme exhibits superior stability and faster response compared to benchmark methods.

Fig. 8
figure 8

Position variation curve.

Fig. 9
figure 9

Attitude variation curve.

Table 3 Comparison of simulation results value.

The reduction in propeller speed results in diminished thrust output, preventing the quadrotor from returning to its pre-fault altitude of approximately 5 m. Consequently, the altitude profile exhibits a descending segment, with the vehicle eventually stabilizing at around 4.6 m. As evidenced by the attitude and propeller speed variation curves, the roll angle undergoes a pronounced deviation. This is primarily attributable to the asymmetric thrust distribution among the propellers, which compromises the quadrotor’s lateral stability. Furthermore, speed-induced torque variations generate oscillatory responses in both the pitch and yaw angles.

The attitude error comparison experiments in Figs. 10 and 11 demonstrate that the proposed algorithm achieves faster convergence with significantly suppressed airframe vibration. This improvement results from the controller’s effective compensation for faults and disturbances, which shortens the system response time and confirms its strong fault-tolerant capability.

Fig. 10
figure 10

Position error curve.

Fig. 11
figure 11

Attitude error curve.

As shown in Figs. 12 and 13, the amplitude variations in roll and pitch angles are smaller than those obtained using the active disturbance rejection control method. Furthermore, the yaw angle and altitude responses in Figs. 14 and 15 indicate that the proposed control algorithm reduces the descent magnitude of the UAV by 0.2 m. Figure 16 shows that after fault injection, the unaffected motors receive updated control signals, leading to a rapid increase in their rotational speeds. With the intervention of the proposed controller, the quadrotor regains stable operation by t = 13 s.

Fig. 12
figure 12

Comparison of roll angle variation curves.

Fig. 13
figure 13

Comparison of pitch angle variation curves.

Fig. 14
figure 14

Comparison of yaw angle variation curve.

Fig. 15
figure 15

Comparison of height variation curve.

Fig. 16
figure 16

Propeller speed variation curve.

Conclusions

This paper addresses the finite-time fault-tolerant control problem for quadrotor systems under simultaneous actuator faults and external disturbances. A disturbance observer is designed to estimate the composite uncertainties, followed by the development of a finite-time fault-tolerant controller grounded in finite-time stability theory. Rigorous stability analysis is provided using Lyapunov methods. The proposed controller not only compensates for faults and disturbances effectively but also suppresses system oscillations and guarantees global stability. Simulation results validate that the control scheme ensures global convergence of the quadrotor system, exhibits strong robustness against faults and disturbances, and delivers excellent trajectory tracking performance.

The control strategy presented in this work demonstrates effective performance in handling combined faults and disturbances in simulation environments. Future research will focus on further refinement of the method and its implementation on more complex UAV platforms through hardware-in-the-loop experiments and physical prototypes, thereby enhancing the practical applicability and scalability of the proposed approach.