Source-linked AI summary
Accurate Tracking of Aggressive Quadrotor Trajectories using Incremental Nonlinear Dynamic Inversion and Differential Flatness
Ezra Tal, Sertac Karaman
TL;DR
Aggressive quadrotor flight requires accurate tracking despite aerodynamic drag and rapidly changing accelerations. The paper combines differential-flatness feedforward references with INDI and encoder-based motor control, achieving centimeter-scale tracking in high-speed experiments and testing robustness under added disturbances.
Problem
Accurate tracking of aggressive quadcopter trajectories is difficult because high-speed aerodynamic drag is hard to model and fast-changing acceleration requires higher-order derivatives.
Method
The controller combines differential-flatness feedforward inputs through jerk and snap with INDI for disturbance compensation and closed-loop optical-encoder motor-speed control for torque actuation.
Results
6.6 cm RMS position tracking error was achieved while reaching 12.9 m/s and 2.1g in complex 3D flight, with robustness tests using a drag plate and tensioned wire.
Takeaways & Limitations
The control design supports accurate aggressive trajectory tracking without modeling or estimating aerodynamic drag parameters.
Abstract
from arXiv · showhide
Autonomous unmanned aerial vehicles (UAVs) that can execute aggressive (i.e., high-speed and high-acceleration) maneuvers have attracted significant attention in the past few years. This paper focuses on accurate tracking of aggressive quadcopter trajectories. We propose a novel control law for tracking of position and yaw angle and their derivatives of up to fourth order, specifically, velocity, acceleration, jerk, and snap along with yaw rate and yaw acceleration. Jerk and snap are tracked using feedforward inputs for angular rate and angular acceleration based on the differential flatness of the quadcopter dynamics. Snap tracking requires direct control of body torque, which we achieve using closed-loop motor speed control based on measurements from optical encoders attached to the motors. The controller utilizes incremental nonlinear dynamic inversion (INDI) for robust tracking of linear and angular accelerations despite external disturbances, such as aerodynamic drag forces. Hence, prior modeling of aerodynamic effects is not required. We rigorously analyze the proposed control law through response analysis, and we demonstrate it in experiments. The controller enables a quadcopter UAV to track complex 3D trajectories, reaching speeds up to 12.9 m/s and accelerations up to 2.1g, while keeping the root-mean-square tracking error down to 6.6 cm, in a flight volume that is roughly 18 m by 7 m and 3 m tall. We also demonstrate the robustness of the controller by attaching a drag plate to the UAV in flight tests and by pulling on the UAV with a rope during hover.
I. INTRODUCTION
The paper develops accurate quadrotor trajectory tracking for high-speed, high-acceleration maneuvers where aerodynamic drag and higher-order trajectory derivatives challenge conventional low-speed control designs. Its controller combines differential-flatness feedforward terms with INDI and demonstrates aggressive flight experimentally.
- Motivation: High-speed quadrotor tracking is challenging because aerodynamic drag becomes dominant and fast-changing accelerations require jerk and snap information.Conventional low-speed VTOL control typically neglects both aerodynamics and higher-order derivatives.
- Control design: The proposed design uses differential flatness to generate feedforward terms from trajectory derivatives up to fourth order and INDI to compensate for drag without aerodynamic-parameter modeling.The feedforward terms include velocity, acceleration, jerk, and snap, while incremental control addresses modeling inaccuracies and external disturbances.
- Control design: Snap is tracked through closed-loop motor-speed control using optical encoders, providing direct control over the torque associated with vehicle angular acceleration.The paper identifies direct snap control through motor-speed measurements as a novel aspect of the design.
- Experimental validation: The controller tracks complex 3D trajectories at speeds up to 12.9 m/s and accelerations up to 2.1g, with RMS tracking error down to 6.6 cm.Experiments were conducted in a flight volume roughly 18 m long, 7 m wide, and 3 m tall.
- Experimental validation: Robustness was demonstrated by attaching a drag plate during flight tests and pulling the UAV with a tensioned wire during hover.The paper also analyzes the benefits of the controller's key components through response analysis.
- Paper extension: A singularity-free quaternion attitude representation supports tracking of aggressive trajectories that would produce singular states with Euler angles.The current work extends a preliminary CDC 2018 version with quaternion reformulation, fuller architecture and analysis, and higher-speed experiments.
B. Differential Flatness
Differential flatness converts the quadrotor trajectory-tracking problem into state tracking using position and yaw as flat outputs. The resulting feedforward references incorporate jerk, snap, yaw rate, and yaw acceleration, while unmodeled forces are handled through sensor-based control.
- Flat outputs: The flat outputs are inertial-frame position x_ref(t) and vehicle yaw angle ψ_ref(t).The yaw angle belongs to the circle group T.
- Reference derivatives: Dynamic feasibility requires x_ref to be C4 and ψ_ref to be C2, yielding velocity, acceleration, jerk, snap, yaw rate, and yaw acceleration references.The first four position derivatives are defined continuously, while yaw is differentiated twice.
- Feedforward references: Differential flatness expresses quadrotor states and inputs from the flat outputs and their derivatives, reformulating trajectory tracking as state tracking.The paper derives angular-rate and angular-acceleration references from trajectory jerk, snap, yaw rate, and yaw acceleration.
- Feedforward references: Differentiating the translational dynamics produces jerk and snap expressions used to generate feedforward angular-rate and angular-acceleration inputs.These feedforward inputs are the mechanism by which higher-order reference derivatives enter the controller.
- Disturbance handling: Rather than model body and rotor drag in the flatness transform, the design forgoes external-force modeling and compensates directly through sensor-based control.Including external forces in the transform would make the controller depend on a vehicle-specific aerodynamics model.
- Implementation boundary: The controller omits the reference first and second derivatives of specific thrust because the corresponding motor-speed derivatives cannot be commanded.The unused references arise in the flatness expressions but are not applied by the controller.
III. TRAJECTORY TRACKING CONTROL
The trajectory-tracking architecture combines outer-loop position and velocity control with intermediate acceleration, attitude, and angular-rate control, and an inner loop for motor-speed actuation. Measurements from the state estimate, IMU, and optical encoders support these loops.
- Control architecture: The architecture includes an outer loop for position and velocity, an intermediate loop for linear acceleration, attitude, angular rate, and angular acceleration, and an inner loop for vehicle moment and thrust.The inner loop directly controls moment and thrust through closed-loop motor-speed control.
- Measurements: The controller uses estimated position, velocity, and attitude together with optical-encoder motor speeds and IMU linear-acceleration and angular-rate measurements.Angular acceleration is obtained by numerically differentiating measured angular rate, and low-pass filtering reduces measurement noise.
A. PD Position and Velocity Control
The controller uses cascaded PD position–velocity control, then incrementally commands acceleration and attitude from thrust and yaw references. Differential-flatness feedforward terms and INDI updates support acceleration tracking despite disturbances or modeling errors.
- Position and velocity control uses two cascaded proportional-derivative controllers.
- The commanded acceleration combines reference trajectory derivatives with position, velocity, and acceleration deviations.The reference acceleration is obtained directly from the trajectory, whereas commanded acceleration includes feedback deviation terms.
- The specific thrust vector is computed from measured acceleration and motor-speed-based thrust, with identically filtered signals preserving equal phase lag.Filtering occurs after transforming thrust and acceleration into the inertial frame, under a slow-changing external-force assumption.
- The incremental thrust relation updates thrust and attitude commands so commanded acceleration can be achieved despite disturbances or modeling errors.Further increments are applied at subsequent control updates if the commanded value is not obtained immediately.
- The controller computes angular-rate and angular-acceleration references from differential-flatness-based trajectory information.These references support the intermediate acceleration, attitude, and angular-rate control architecture.
C. PD Attitude and Angular Rate Control
The attitude and angular-rate controller commands angular motion using kinematic errors and feedforward references rather than vehicle inertia parameters. By tracking angular rate and acceleration, it incorporates trajectory jerk and snap into aggressive-trajectory control.
- The attitude controller specifies angular-rate commands using angular kinematics without vehicle-specific inertia parameters.This avoids discrepancies from inertia-model mismatch and provides vehicle-independent gains.
- Angular acceleration commands combine attitude error, angular-rate error, and feedforward angular acceleration.The feedforward terms are defined from the reference trajectory.
- Tracking attitude, angular rate, and angular acceleration enables the controller to track trajectory jerk and snap.The paper identifies snap as corresponding to vehicle angular acceleration.
D. INDI Angular Acceleration Control
The controller converts commanded thrust and moments into motor-speed commands through nonlinear inversion, while optical encoders provide the measurements needed for accurate closed-loop control.
- Angular acceleration control: INDI computes commanded control moments from measured angular rate, angular acceleration, and control moment signals.The external moment is treated as slow-changing relative to the low-pass-filter dynamics.
- Nonlinear motor inversion: Nonlinear inversion explicitly incorporates motor response dynamics to compute more accurate thrust and moment inputs than linearized inversion.The nonlinear equation can be solved numerically, for example with Newton’s method.
- Motor-speed measurement: Optical encoders measure motor rotational speed at high rate and enable accurate thrust and control-moment calculations for INDI.The encoder detects reflective stripes attached to each motor hub.
- Feasibility handling: Saturated motor commands are handled by adjusting the body-z control moment first, then modifying thrust or clipping infeasible commands when necessary.Body-z moment adjustments typically least affect vehicle stability and position tracking.
- Motor-speed control: Throttle commands use a regressed motor-speed-to-throttle map with integral action for battery-voltage changes, while measured motor speed remains unfiltered to reduce phase lag.The throttle vector contains the electronic speed-control commands.
IV. RESPONSE ANALYSIS
The response analysis linearizes the incremental and non-incremental controllers around hover to characterize their closed-loop acceleration dynamics and compare their robustness mechanisms.
- Analysis setup: The analysis compares the proposed incremental controller with a non-incremental controller using linearized hover dynamics.Forward motion and pitch movement are considered around the hover state.
- Linearized dynamics: The linearized model relates forward acceleration to pitch dynamics and identifies the pitch acceleration channel within the closed-loop system.The pitch angle and vehicle inertia about the body y-axis appear in the linearized relations.
- Linearized dynamics: The pitch channel is represented through motor-speed deviations and a linearized control-effectiveness gain, with the four-motor configuration contributing a factor of 4.The gain is kG = 8ω0lxkτ and the moment relation is µy = kGω.
A. Robustness against Disturbance Forces and Moments
The analysis shows how incremental feedback rejects external forces and moments while preserving nominal acceleration tracking, with rejection limited by filter and motor bandwidths.
- Angular acceleration response: The closed-loop angular acceleration dynamics are determined solely by the motor dynamics, theoretically limiting trackable trajectory aggressiveness to motor-response bandwidth.This bandwidth limitation also applies to the non-incremental controller.
- Disturbance rejection: Incremental control counteracts disturbance moments using the difference between expected motor-induced acceleration and measured acceleration containing the disturbance.Disturbance rejection depends on the bandwidths of the low-pass filters and motors.
- Disturbance rejection: The non-incremental controller lacks these feedback loops, allowing disturbance moments to propagate undamped into attitude and position control.Its angular acceleration is based on the estimated moment rather than direct closed-loop evaluation of acting moments.
- Disturbance rejection: Incremental control corrects disturbance forces through the difference between thrust-induced acceleration and measured acceleration, yielding superior force and moment rejection with identical nominal tracking.The comparison is made against the non-incremental controller in simulated position step responses.
B. Robustness against Modeling Errors
The modeling-error analysis compares incremental and non-incremental acceleration tracking and finds that incremental feedback implicitly corrects inaccurate inertia and control-effectiveness parameters.
- Modeling-error setup: The controller uses few vehicle-specific parameters, but the analysis tests whether tracking remains effective when inertia and control-effectiveness values are inaccurate.The linearized equations incorporate the ratio of Jyy and kG.
- Angular acceleration response: Modeling error acts as a gain error in the non-incremental controller, producing incorrect angular acceleration.The incremental controller instead compares expected motor-induced acceleration with measured acceleration.
- Angular acceleration response: The incremental controller quickly reaches the commanded acceleration even for very large model discrepancies, although modeling error affects the transient response.The responses are shown for several modeling-error values in Fig. 8.
- Linear acceleration response: Incremental control accurately tracks a continuous acceleration reference under large modeling errors, whereas non-incremental tracking degrades more severely as error grows.The reference has continuous jerk and snap signals and reaches ax,ref(3) = 1 m/s2.
C. Jerk and Snap Tracking
Jerk and snap feedforward tracking improves the response to rapidly changing acceleration references, with experiments evaluating aggressive trajectories and the associated tracking performance.
- C. Jerk and Snap Tracking: Jerk and snap tracking enables the controller to follow fast-changing acceleration references.The feedforward terms kqs and s2 appear in the acceleration response transfer function.
- C. Jerk and Snap Tracking: Two feedforward terms add zeros to the closed-loop transfer function, acting with the LPF as a lead compensator.Tuning kq places the zeros to improve tracking of rapidly changing acceleration inputs during aggressive maneuvers.
- C. Jerk and Snap Tracking: Including jerk and snap tracking produces a faster simulated response and more accurate acceleration tracking.The improvement is subsequently evaluated in flight experiments.
- C. Jerk and Snap Tracking: The experiments evaluate two trajectories with yawing, turns exceeding 2g acceleration, and straight-line speeds up to 12.9 m/s.The section examines feedforward inputs based on reference trajectory jerk and snap.
A. Experimental Setup
Experiments use an instrumented quadrotor in an indoor motion-capture room to evaluate trajectory tracking on demanding 3D and roulette-curve paths under different yaw and drag conditions.
- A. Experimental Setup: The quadrotor has a 609 g flying mass and uses T-Motor F35A ESCs, F40 Pro II motors, and Gemfan Hulkie 5055 propellers.Adjacent motors are mounted 18 cm apart and the vehicle is powered by a single 4S LiPo battery.
- A. Experimental Setup: Control computations run at 2000 Hz on an STM32H7 microcontroller, while motion capture provides position, velocity, and orientation measurements at 360 Hz.The OptiTrack system has an average latency of 18 ms.
- A. Experimental Setup: The controller uses low-pass-filtered optical-encoder and IMU measurements, with platform-specific parameters updated for the experiments without loss of tracking accuracy.The filters use a second-order Butterworth design with a 30 Hz cutoff.
- A. Experimental Setup: The 3D trajectory is tested with forward yaw and constant yaw, and its performance is reported in Table IV and Fig. 12.The evaluation includes a high-speed straight and fast turns.
- A. Experimental Setup: The forward-yaw trajectory reaches 12.9 m/s, limits RMS tracking error to 6.6 cm, and reaches 20.8 m/s2 (2.12g) proper acceleration.Constant-yaw flights show similar values, with yaw-error differences reported separately.
- A. Experimental Setup: The roulette curve contains fast successive turns that require tracking large jerk and snap, and one lap takes 22.4 s.Its reference, proposed-controller, disabled-feedforward, and drag-plate cases are shown in Fig. 13.
C. Jerk and Snap Tracking
Experiments show that jerk and snap tracking improves roulette-curve performance, while INDI maintains tracking under increased aerodynamic drag and applied hover disturbances.
- C. Jerk and Snap Tracking: Disabling jerk and snap tracking increases RMS position error from 9.0 cm to 16.8 cm on the roulette curve.Enabled jerk and snap tracking also produces less overshoot, consistent with the analyzed lead-compensation effect.
- D. Increased Aerodynamic Drag: A 16 cm × 32 cm drag plate more than triples frontal area, yet the controller is not adapted for the resulting aerodynamic effects or changed inertia.The drag-plate configuration is compared with the proposed controller in Fig. 13.
- D. Increased Aerodynamic Drag: The drag plate does not significantly affect position tracking, although an externally generated yaw moment causes motor saturation and a momentary large yaw error.Consistent tracking otherwise demonstrates INDI robustness.
- E. Nonlinear Control Effectiveness Inversion: Nonlinear control-effectiveness inversion theoretically improves angular-acceleration and trajectory tracking by accounting for local nonlinearity and motor transient response.The comparison uses linearized INDI as the alternative inversion method.
- E. Nonlinear Control Effectiveness Inversion: Experiments find no significant tracking difference between nonlinear and linearized inversion, while neglecting motor transients can cause fast yaw oscillations.Including the motor time constant resolves this issue when it differs greatly from the controller interval.
- VI. Robustness Experiments: During hover with a changing wire disturbance, position remains within 4 cm when an external force of approximately 3.7 N is applied.The disturbance force and position error are shown in Figs. 16 and 17.
- VI. Conclusions: Overall, the system achieves 6.6 cm RMS position error at 12.9 m/s and 2.1g, without modeling or estimating aerodynamic drag parameters.The experiments demonstrate robustness against external disturbances in an 18 m × 7 m × 3 m flight volume.