Source-linked AI summary
Nonlinear MPC for Quadrotor Fault-Tolerant Control
Fang Nan, Sihao Sun, Philipp Foehn, Davide Scaramuzza
TL;DR
Complete failure of one rotor makes quadrotor flight difficult, while existing NMPC implementations had not demonstrated real-world control in this setting. The paper develops a nonlinear predictive controller that models the damaged vehicle and rotor limits, and validates recovery in simulations and experiments, including extreme orientations and agile flights.
Problem
Complete rotor failure is a difficult fault-tolerant control problem, and prior NMPC work had not demonstrated real-world quadrotor control after such a failure.
Method
The proposed NMPC uses the full nonlinear quadrotor model, individual rotor thrust constraints, and a real-time iteration scheme for onboard control.
Results
The NMPC recovered a damaged quadrotor from arbitrary orientations and agile flights, including flipping maneuvers, while also controlling position and following trajectories.
Takeaways & Limitations
The controller can stabilize and control a quadrotor after complete single-rotor failure, including during aggressive maneuvers and trajectory tracking.
Abstract
from arXiv · showhide
The mechanical simplicity, hover capabilities, and high agility of quadrotors lead to a fast adaption in the industry for inspection, exploration, and urban aerial mobility. On the other hand, the unstable and underactuated dynamics of quadrotors render them highly susceptible to system faults, especially rotor failures. In this work, we propose a fault-tolerant controller using nonlinear model predictive control (NMPC) to stabilize and control a quadrotor subjected to the complete failure of a single rotor. Differently from existing works, which either rely on linear assumptions or resort to cascaded structures neglecting input constraints in the outer-loop, our method leverages full nonlinear dynamics of the damaged quadrotor and considers the thrust constraint of each rotor. Hence, this method could effectively perform upset recovery from extreme initial conditions. Extensive simulations and real-world experiments are conducted for validation, which demonstrates that the proposed NMPC method can effectively recover the damaged quadrotor even if the failure occurs during aggressive maneuvers, such as flipping and tracking agile trajectories.
VIDEO
The paper addresses rotor-failure risks in quadrotors, emphasizing fault-tolerant flight as an algorithmic alternative to mechanical adaptations. Figure 1 illustrates recovery after complete rotor failure during an upside-down flipping maneuver.
- Quadrotors are widely used because of their structural simplicity and efficiency, despite their susceptibility to rotor failures.
- Fault-tolerant flight control improves safety through algorithmic adaptations rather than mechanical changes such as parachutes.
- Figure 1 shows recovery after one rotor completely failed when the quadrotor was upside-down at the apex of a flipping maneuver.
B. Related Work
Prior fault-tolerant quadrotor work addresses partial rotor effectiveness loss and complete rotor failure with adaptive, linear, and nonlinear controllers, but commonly relies on simplifying assumptions or neglects actuator limits. The proposed NMPC framework instead uses full nonlinear dynamics and rotor-thrust constraints, enabling onboard control and recovery validation under severe failures.
- Prior approaches: Existing quadrotor fault-tolerant controllers include sliding mode, L1 adaptive, active disturbance rejection, PID, LQR, LPV, SLQ, and nonlinear methods.
- Fault-tolerant control: Complete rotor failure is more challenging and practically relevant than partial motor failure because shutting down a severely damaged rotor avoids imbalance-induced vibrations.
- Limitations of prior work: Most prior controllers use small-angle linearization or time-scale separation and do not incorporate actuator limits, which are crucial after rotor failures.
- NMPC motivation: NMPC predicts nonlinear dynamics over a receding horizon, optimizes performance, and can exploit quadrotor input space while respecting constraints.
- Proposed framework: The proposed framework tolerates complete failure of one rotor using real-time iteration, full nonlinear dynamics, single-rotor thrust inputs, and correct thrust limits.
- Validation: Simulation and real-world experiments demonstrate recovery from flipping and agile-flight conditions while tracking agile trajectories after complete single-rotor failure.
II. METHODOLOGY
The quadrotor model represents body and inertial frames, rotor-generated thrust and torques, quaternion attitude, and first-order rotor thrust dynamics. These elements provide the model variables and actuator relationships used for controller design.
- Quadrotor Modeling: The model defines body and inertial coordinate frames and represents attitude with quaternions.The body frame and rotor indices are specified in Fig. 2, while the inertial z-axis points upward opposite gravity.
- Quadrotor Modeling: Rotor thrusts T1 to T4 generate collective thrust and torque through rotor positions and the torque coefficient.The control-effectiveness matrix maps individual rotor thrusts to collective force and moments.
- Quadrotor Modeling: The model includes first-order rotor thrust dynamics because motors cannot track commanded thrust instantaneously.The time constant σ is identified from data, and ui denotes the command for rotor i.
B. Fault-Tolerant Model Predictive Control
The fault-tolerant NMPC optimizes predicted nonlinear quadrotor behavior under dynamics and thrust constraints. It adapts the attitude objective and actuator bounds to represent complete rotor failure and reduced yaw controllability.
- Fault-Tolerant Model Predictive Control: NMPC optimizes a finite-horizon control sequence subject to discrete system dynamics and input bounds.The state is propagated through xk+1 = f(xk, uk), while Q, QN, and R weight running and terminal costs.
- Fault-Tolerant Model Predictive Control: When rotor i fails, its thrust upper bound is set to zero so the prediction model explicitly represents the unavailable actuator.During normal flight, each rotor upper bound is Tmax; under failure, the failed rotor’s bound and command are zero.
- Fault-Tolerant Model Predictive Control: The cost combines a running term depending on state and input with a terminal term depending only on the terminal state.Reference values are either hover references or sampled trajectory points across the prediction horizon.
- Fault-Tolerant Model Predictive Control: The attitude error is decomposed into yaw and xy components because a failed-rotor quadrotor cannot fully control attitude.The failure-condition cost sets Qz to zero and retains only qxy, aligning thrust direction while discarding yaw control.
C. Incremental Nonlinear Dynamic Inversion (INDI)
INDI refines NMPC thrust commands to address aerodynamic and mechanical model mismatch. It estimates external torques from filtered measurements and reallocates desired force and torque while keeping the failed rotor inactive.
- Incremental Nonlinear Dynamic Inversion (INDI): INDI compensates for model uncertainties by approximating external torques from instantaneous sensor measurements.This avoids requiring an accurate aerodynamic model, which is difficult to obtain for fault-tolerant quadrotor control.
- Incremental Nonlinear Dynamic Inversion (INDI): Filtered angular velocity, rotor-speed-derived forces, and torque estimates are used to construct the incremental angular-dynamics approximation.The approximation assumes actuator dynamics are significantly faster than changes in quadrotor body rates.
- Incremental Nonlinear Dynamic Inversion (INDI): Desired collective thrust and angular acceleration from NMPC are converted into a desired torque and then into individual rotor thrust commands.The inversion uses the reduced control-effectiveness matrix, whose failed-rotor column is set to zero.
- Incremental Nonlinear Dynamic Inversion (INDI): The damaged rotor’s final command remains zero while Moore-Penrose inversion handles the reduced-rank actuator mapping.The reduced matrix is formed by removing the failed rotor’s effectiveness column.
III. SIMULATIONS
The simulations compare the proposed NMPC with a validated cascaded nonlinear benchmark and measure controller computation on the onboard Jetson TX2 platform. The evaluation uses the same platform intended for real-world experiments.
- Simulations: The simulations compare the proposed NMPC against a cascaded nonlinear controller in the same environment.The benchmark had previously been validated in real-world experiments under strong external wind disturbances.
- Simulations: The computational evaluation uses the NVIDIA Jetson TX2, matching the onboard computing unit used in real-world experiments.Controller computation time is recorded and reported in Table I.
- Simulations: Table II reports the weight selection used for the NMPC cost function.The same cost-function weights are used in both simulations and real-world experiments.
A. Implementation Details
The controller is implemented for real-time operation with explicit rotor-failure simulation and onboard computational evaluation. NMPC is slower than the benchmark but reaches a frequency reported as sufficient for quadrotor control.
- A. Implementation Details: The algorithm runs on Agilicious using SQP-based real-time iteration with ACADO and qpOASES, using a 1 s prediction horizon.The same implementation framework is used in simulation and real-world experiments.
- A. Implementation Details: Rotor failure is simulated by clamping one motor command to zero when an external mode switch is triggered.Failure detection itself is outside the paper’s scope; the failed-rotor index is supplied directly to the controller.
- A. Implementation Details: NMPC averages more than 150 Hz on the NVIDIA Jetson TX2, meeting the reported control requirement despite a longer iteration time than the nonlinear benchmark.Its maximum iteration time is 25 ms and occurs only immediately after failure-triggered solver reinitialization.
B. Recovery from Randomized Orientations
Randomized recovery tests show that the proposed NMPC recovers damaged quadrotors across extreme initial orientations more reliably than the benchmark. The benchmark becomes ineffective beyond large tilt angles because it does not account for actuator limits.
- B. Recovery from Randomized Orientations: All 200 randomized NMPC trials recovered, whereas the benchmark succeeded in only 85, with lower recovery time and height loss for NMPC.Initial orientations were uniformly sampled, with zero initial velocity and angular rates.
- B. Recovery from Randomized Orientations: The benchmark recovers mainly near hover orientation, with success rate almost zero when the initial direction exceeds 90° of tilt.Figure 4 bins recovery success by the cosine of the initial tilt angle.
- B. Recovery from Randomized Orientations: During upside-down recovery, actuator saturation causes benchmark failure, while NMPC recovers without violating actuator constraints.Figure 5 compares attitude and thrust commands for the two controllers against the actuator limit.
IV. REAL-WORLD EXPERIMENTS
Real-world experiments evaluate rotor-failure recovery during hovering using an instrumented quadrotor and onboard state estimation and control. After failure, the vehicle maintains horizontal position and reaches a stable rotating equilibrium within 2 seconds.
- A. Experiment Setup: The simulated recovery setup compares NMPC and benchmark attitude and thrust commands from an initially 180°-flipped state against actuator limits.Attitude is represented by the inertial-frame components of the thrust-direction vector zB.
- A. Experiment Setup: The real-world platform uses VICON tracking, an EKF, and a Jetson TX2 running state estimation and control at 150 Hz.The quadrotor has four motors with 5-inch propellers, each providing up to 8.5 N lift force, and has a total mass of 0.75 kg.
- B. Rotor Failure during Hovering Flight: The hovering experiment triggers a rotor failure and then commands the damaged quadrotor to remain at its original position.The reference is set to hover at the same position after failure.
- B. Rotor Failure during Hovering Flight: After the first rotor fails at t = 0.5 s during hover, the quadrotor enters a stable rotating equilibrium within 2 s while effectively controlling x- and y-position.The vehicle begins yaw spinning after failure, and controller weights influence the equilibrium inclination angle and yaw rate.
C. Trajectory Tracking under Rotor Failure
The damaged quadrotor tracks pre-designed lemniscate trajectories after complete single-rotor failure, accurately at lower speed and with greater error at 5 m s−1. The high-speed result is qualified by oscillatory velocity and aerodynamic-model uncertainty.
- C. Trajectory Tracking under Rotor Failure: The quadrotor tracks a pre-designed trajectory at up to 5 m/s despite complete failure of a single rotor.The experiments use lemniscate references with maximum velocities of 2 m s−1 and 5 m s−1.
- C. Trajectory Tracking under Rotor Failure: Tracking the slower trajectory is accurate, whereas the faster trajectory produces higher tracking error.The faster reference has a maximum velocity of 5 m s−1 and the slower one 2 m s−1.
- C. Trajectory Tracking under Rotor Failure: At 5 m s−1, position follows the desired trajectory with a small delay, while spinning motion produces high-frequency velocity oscillations.The position and velocity histories are shown for the center of gravity.
- C. Trajectory Tracking under Rotor Failure: Aerodynamic model uncertainties may explain inadequate tracking, because the implemented INDI controller does not compensate for aerodynamic forces on the damaged quadrotor.The effect of these aerodynamic forces on trajectory tracking remains to be further justified.
D. Rotor Failure during Agile Flights
Real-world experiments test NMPC recovery after complete single-rotor failure during an upside-down flip and agile racing flight. The controller exploits nonlinear dynamics and staged thrust commands to restore orientation, stabilize yaw, and control position.
- D. Rotor Failure during Agile Flights: The NMPC recovers a damaged quadrotor after single-rotor failure during both upside-down flipping and agile racing flight.The experiments cover failure at the apex of a vertical flip and while tracking an agile racing trajectory.
- D. Rotor Failure during Agile Flights: During the upside-down recovery, T3 is set to 5 N while T2 and T4 are zero, then T4 increases to stop the flip.High thrusts on T3 and T4 produce a high yaw rate that further stabilizes the quadrotor through the gyroscopic effect before position control.
- D. Rotor Failure during Agile Flights: The controller commands recovery to hovering immediately after failure at approximately t = 0.5 s during the flipping maneuver.The experiment reaches the upside-down orientation at t ≈ 0.5 s, when failure of the first rotor is triggered.
- D. Rotor Failure during Agile Flights: The proposed method can control the damaged quadrotor’s position and follow a trajectory after a single-rotor failure.The racing-flight experiment evaluates recovery while the quadrotor is tracking an agile trajectory.