Fixed-wing unmanned aerial vehicles (UAVs) have long been viewed as valuable assets in both defense and commercial domains. Their endurance and speed makes them ideal for gathering information or transporting cargo across open sky. However, for robotics applications where navigation around obstacles is a necessity, fixed-wings have typically been overlooked in favor of rotary-wing vehicles. Quadcopter UAVs in particular, with their simple mechanical design and high thrust-to-weight ratios, have often been preferred for these applications. This is predominantly because at low speeds and in linear regimes, quadcopters can achieve near-zero turn radii. Fixed-wings, in contrast, have a fixed (often sizable) minimum turn radius in traditional steady-level flight regimes.
At high speeds and in more dynamic regimes, simplified differentially-flat quadcopter models exist which dramatically reduce the computation time needed to generate feasible trajectories . These simplified models have been shown to work well in practice . Such models do not exist for fixed-wings traveling at high angles-of-attack, however high angles-of-attack regimes are necessary for fixed-wings to achieve tight turn radii (see Figure 2).
In this paper, we present a nonlinear model predictive control approach which uses direct trajectory optimization (i.e., direct NMPC) to compute dynamically feasible, collision-free trajectories in real-time. Our approach hinges on a minimalistic dynamics model and solving a very fast feasibility problem, rather than an optimization problem, while enforcing state and actuator constraints. We also employ local linear feedback to compensate for modeling errors between re-plans. We first demonstrate that post-stall aerobatics provide a significant advantage in terms of minimum achievable turn-radii for fixed-wing UAVs. We then present our simplified 17-state model to be used by the optimizer and use this model to conduct a performance evaluation of the trajectory optimizer as a function of integration method and number of knot points. Finally, we conduct a series of hardware experiments where we evaluate our approach. We compare the performance of our algorithm with and without local feedback between plans.
Ii Post-Stall Motion Planning
Early work in aircraft design and control recognized the value of post-stall maneuvers for increasing aircraft maneuverability . However, in combat, these high angle-of-attack maneuvers are often viewed as impractical, since they make an aircraft vulnerable by reducing its kinetic energy .
In the context of mobile robotics, however, these post-stall maneuvers have the potential to dramatically reduce radius of curvature, allowing a fixed-wing vehicle to navigate through very constrained environments (see Figure 2). We believe that the tight turning radii capable of being achieved by fixed-wing UAVs at high angles-of-attack put them on par with quadcopter maneuverability and motivates the need for post-stall kinodynamic motion planning strategies.
Iii Related Work
In comparison to rotorcraft UAVs , significantly less work has been done to explore the use of fixed-wing UAVs as a platform for mobile robotics. Some of the earliest and most notable work in post-stall maneuvers with fixed-wing UAVs is presented in , where researchers explored transition to-and-from a prop-hang configuration. This was preceded by work in , which sought to generate real-time trajectories for a planar ducted-fan UAV with aerodynamic surfaces. The control of fixed-wing UAVs in post-stall flight was also advanced through the exploration of post-stall perching , where a library of trajectories was used to enable robust perching performance. Motion planning for fixed-wing UAVs was also explored in , where a library of funnels exploited invariance of initial conditions to navigate safely through an obstacle field in real-time. The initial work was limited to simple planar model representations, but then was extended to higher dimensional models which could exploit the full angle-of-attack envelope. More recently, researchers have explored real-time trajectory motion-planning of fixed-wing UAVs using simplified models restricted to low angle-of-attack domains . Authors have also investigated in simulation aggressive aerobatic fixed-wing turn-around maneuvers [20, 14]. The authors of [16, 11, 2] have for the last several years been leading the way in developing control and planning strategies for aerobatic fixed-wing vehicles. Their work has been characterized by very high fidelity physics models  which break aerodynamic surfaces into segments, capture transient aerodynamic effects, and model motor and propeller physics. Several recent publications [15, 3] have designed real-time motion planners using trajectory libraries generated offline using these high fidelity physics models.
The work presented here takes a different approach. Instead of building a high-fidelity physics model of the aircraft, we build a medium-fidelity physics model which is amenable to real-time trajectory optimization. Despite the computational complexity , we choose to utilize direct trajectory optimization methods because of their improved numerical conditioning, sparse constraints, and ability of the gradient computations to be trivially parallelized . As discussed in , these direct methods can also be easily seeded by a simplified randomized motion planner. We formulate a nonlinear feasibility problem which can be solved at real-time rates and use local linear feedback to stabilize the vehicle between replans. We also optimize and control over the entire state-space, so as to not make assumptions of timescale separations.
We believe that to navigate in complex environments which are unknown a-priori, we must be able to generate sophisticated trajectories in real-time that exploit the full flight envelope for fixed-wing vehicles and achieve “supermaneuverability” . Trajectory libraries, while commonly used to reduce online computational burdens, often become computationally expensive and result in sub-optimal solutions when the vehicle state space is large (6) and the environment is complex . In addition, our approach must be able to handle complicated physics models with complex aerodynamics, which are in general not differentially flat.
Our approach utilizes a minimalistic nonlinear model and real-time direct trajectory optimization to rapidly solve a feasibility problem in real-time. In comparison to other real-time trajectory generation approaches, we believe that our direct method has several advantages, including the ability to exploit problem sparsity and impose state constraints.
Iv-a Dynamics Model
We extend the planar post-stall aircraft model presented in  into a three-dimensional model of a fixed-wing UAV with a propeller in a “puller” configuration. We define our state as . Here represents the position of the center of mass in the world frame , represents the set of -- euler angles, are control surface deflections due to the right and left ailerons, elevator and rudder respectively, is the magnitude of thrust from the propeller, is the velocity of the center of mass in the body-fixed frame , and represents the angular velocity of the body in the body-fixed frame. We can then write , . The equations of motion then become
Here is vehicle mass,
is the vehicle’s inertia tensor with respect to the center of mass,are the total forces applied to the vehicle in body-fixed coordinates,
are the moments applied about the vehicle’s center of mass in body-fixed coordinates,are the angular velocity inputs of the control surfaces. denotes the rotation from the body-fixed frame to the world frame, and is the rotation which maps the euler angle rates to an angular velocity in body-fixed frame.
The forces acting on the vehicle can be written as
where represent the forces due to the aerodynamic surfaces, represents the forces due to the propeller and is given as . is the rotation matrix that defines the orientation of the thrust source with respect to the body fixed frame. is the rotation matrix that defines the aerodynamic surface reference frame with respect to the body fixed frame. The aerodynamics surfaces used for this model are the wing, the horizontal and vertical fuselage components, the horizontal and vertical tail, and the control surfaces.
To model forces on the aerodynamic surfaces, we use
where is the velocity of the aerodynamic surface in the surface reference frame given as
Here represents the displacement from the vehicle center of mass to the aerodynamic surface “hinge” point,
represents the rotation matrix that transforms vectors in the body-fixed frame into the aerodynamic surface frame,is the simple rotation rate of the aerodynamic surface in the aerodynamic surface frame. This is only non-zero for actuated surfaces.
is the velocity due to the backwash of the propeller. It can be approximated using momentum theory as,
where is the thrust input, is the area of the actuator disk, is the density of air and is the velocity at the propeller. is an empirically determined backwash velocity coefficient. For a given aerodynamic surface, the angle of attack becomes
in the body fixed frame can be given as
where . To model the thrust dynamics, we assume a first order linear model for the thrust given above where and are constants and is the normalized PWM value, where . comes from the flat plate model in  and is given as .
Iv-B Control Strategy
To achieve real-time planning for fixed-wing vehicles across the entire flight envelope, we utilize a four-stage, hierarchical control strategy consisting of a randomized motion planner, a spline-based smoothing algorithm, direct trajectory optimization, and local linear feedback control. The spline-based smoothed path is used as a seed to the trajectory optimizer and also provides a receding horizon goal point. The local linear feedback controller compensates for model-uncertainty and environmental disturbances between plans.
Iv-B1 RRT Generation and Spline-Based Smoothing
The seed path is generated through a combination of standard RRT , spline-based smoothing satisfying a maximum curvature constraint , and a final re-parametrization of the trajectory. This combination of steps is useful for obtaining a path which is more dynamically feasible than a raw RRT, and also helps to intelligently select an endpoint for the trajectory optimizer.
First, the RRT is grown in a three dimensional state space with a 10% bias towards the goal point, until it arrives within an error ball around the goal. The resultant path from start to goal is then pruned as described in  to remove extraneous nodes.
We then employ G2 Continuous Cubic Bézier Spiral Path Smoothing (G2CBS) to obtain a continuous curvature, smooth path . This algorithm examines each set of three adjacent nodes in the pruned path. It transforms them into a local 2D space, computes control points for two symmetric G2 splines satisfying a maximum curvature constraint (set to ), then transforms the control points back into 3D. The output of this algorithm is a set of 3D control points for each spline,
A 3rd order Bézier curve can be evaluated by,
where is the set of control points for the spline. This expression allows us to evaluate the and splines represented by the control points and , and to stitch together the overall G2 continuous path , which consists of straight line segments and spline segments.
We extend this approach to compute the curvature of the entire path, in order to apply a rough kinematic mapping between curvature and velocity. This mapping allows us to reparametrize the seed path in terms of time. By picking an endpoint for the trajectory optimizer based on a constant time along the seed path, the duration of the optimized trajectory is somewhat regularized. This helps to prevent the solver from wasting computational resources planning too far into the future, and allows us to provide a more feasible estimate of final velocity to the solver. We compute the first and second order derivatives ofwith respect to , and . Pulling out the individual elements as,
We can express the curvature along as,
with the curvature along the straight segments of path equal to 0. The curvature along the entire path is then mapped to velocity as,
where is the full path as a function of , is the maximum velocity for the kinematic model, is the linear kinematic mapping parameter which relates curvature to velocity, and is the overall path length. We can reparametrize by time with,
which yields a numerically invertible relationship between and .
To select an endpoint to feed into the trajectory optimization step, we simply evaluate the position and velocity equations at the time horizon .
Iv-B2 Direct Trajectory Optimization
Direct trajectory optimization formulates the nonlinear optimization problem by including both inputs and states as decision variables . A collocation or transcription of the dynamics is then used to constrain the variables to ensure dynamic feasibility. For this reason, direct trajectory optimizers are well suited to accept a set of state variable initializations and are are often more robust to local minima than indirect methods . Here, we use a direct transcription formulation of Simpson’s integration rule as described in  and formulate a feasibility problem— our objective is to ensure dynamic feasibility of the trajectory and collision avoidance. To solve our direct trajectory feasibility problem, we employ the Sparse Nonlinear Optimizer (SNOPT) . Collision avoidance is formulated as a non-penetration constraint on the occupancy grid.
Our feasibility problem can be written as
Here, signifies the system state and is the control actions. is the time step, and represent the bounds on the desired final and initial states (,), respectively. is the number of knot points. The minimum distance function is generated using the distance map from an OctoMap .
Iv-C Local Linear Feedback Control
To control the aircraft to a trajectory between plans, we use time-varying LQR (TVLQR).
is found by integrating
backwards in time from to . Here and and
Here and signify the nominal trajectories. and are the costs on state and action respectively. is defined by a final cost .
V Real-Time Trajectory Optimization Performance
To evaluate the performance of our NMPC approach, we explore trajectory optimization for a post-stall 90 degree turn using our fixed-wing UAV model. We consider this 90 degree turn to be a representative maneuver for aerobatic post-stall motion planning. We consider two metrics— computation speed and trajectory following performance. Direct transcription methods, while computationally efficient (i.e. able to exploit sparsity), do not provide the same kind of accuracy as is provided by some shooting and direct pseudospectral methods. Therefore, we do not use integration error as a metric, but rather error in following a trajectory using local feedback. LQR provides this metric as a cost-to-go, and to evaluate trajectory following, we examine the final cost of a simulated vehicle following this trajectory using TVLQR. With regards to computation time, we look at the time required to find an optimal solution when a naive seed is provided (i.e. linear progression of states from initial state to the goal) and when SNOPT’s warm-start feature is used with a feasible seed. To test the warm-start, we sample from a set of random-initial condition states and examine the time-required to re-optimize the trajectory.
As can be observed in Figures 3 and 4, the Euler integration scheme does not become feasible until 20 knot points are used. In general, the Hermite-Simpson integration method out-performs the Euler integration method by a factor of almost 2-1 for both the naive seed optimization and warm-start optimization, especially below 30 knot points. The Hermite-Simpson approach shows good trajectory following at 10 knot points, while the Euler integration method does not show comparable trajectory following until 24 knot points. SNOPT’s warm-start also shows a 4:1 improvement over the naive seeding.
The time spent in the gradient calls for the Euler integration warm-start is in general less than the Hermite-Simpson warm-start, which is reasonable since the Hermite-Simpson gradients are more computational intensive.
Given these results, we chose to use Hermite-Simpson integration as our integration method with 10 knot points. This provides the best computational performance ( 0.1s for a warm-start) and reasonably good trajectory following.
Vi Hardware Experiments
Vi-a Experimental Set-up
The plane used for the experiments was a 24” wingspan Edge 540 EPP model produced by Twisted Hobbys (Figure 6), with an overall weight of 120g. It has an independently controllable rudder and elevator, as well as a pair of kinematically linked ailerons. A 13g 2300kv Crack Series out-runner motor was paired with a 7x3.5 GWS propeller for the thruster. In addition to the stock components for the aircraft, five Vicon markers were attached at various locations on the airframe. A custom bungee launcher was built to produce consistent initial conditions for each trial, and an adapter designed to interface with the launcher was attached to the underside of the plane. Maximum throws were measured for each control surface along with their corresponding PPM inputs in order to generate a linear mapping between desired control surface angle and PPM value.
The experiments were performed in an 8m x 8m Vicon capture area, with 10 Vantage V5 cameras distributed along the periphery of the space. The Vicon system was configured to report position and quaternion data at 200Hz to the machine running the planning and control algorithms, which was a Dell Precision 5530 laptop with an Intel i7-8850H CPU. The planning machine used the ROS package vicon_bridge to generate a ROS topic with the timestamped pose data, which was then then differentiated over a single timestep to obtain linear and angular velocities. In addition, the quaternion data was transformed into yaw/pitch/roll Tait-Bryan angles.
In order to deliver desired control inputs to the plane, a serial interface was developed to communicate with an 8MHz Arduino Pro Mini microcontroller. The planning computer sends the desired PPM values to the microcontroller, which relays this signal to a Spectrum DX6i transmitter module through the trainer port. The transmitter then broadcasts the signal to the RC receiver on the plane. Since the trainer signal is only broadcast when the trainer switch is actively depressed on the transmitter, the trainer switch also acted as an emergency stop for the experiment.
Vi-B System Identification
To account for discrepancies between the modeled dynamics and the actual plane dynamics, we compared linear and angular accelerations predicted by the dynamics model with actual measurements from flight experiments. Modification of a few parameters was found to significantly improve the accuracy of the model. Specifically, we scaled the wing and horizontal fuselage area by a factor of 2, scaled the rudder area by a factor of 0.75, and set the backwash velocity coefficients to , . In addition, we estimated the linear thrust model coefficients as , . Results of these model adjustments can be found in Figure 7.
Vi-C Control Experiments
The experiments were conducted with a virtual map consisting of a system of hallways roughly 1.75m wide. A goal point was specified in the hallway directly adjacent to the initial conditions of the plane, and several variations of the experiments were conducted. For one set of trials, the launcher was used to provide a consistent set of initial conditions, and the controller was set to execute the full receding horizon control stack. In another variant, the stack was executed through the receding horizon trajectory optimization step, but the input trajectories were commanded open loop, without the feedback term generated from TVLQR. Additionally, several handthrown trials were performed using the full control stack.
For the constraints on the trajectory optimization problem, strong bounds on final position () and weak bounds on final velocity () were found to produce a reasonable balance between feasibility and desired behavior. Overall,
The diagonals of the cost matrices and for the local linear feedback controller were set to,
with final costs:
A time horizon of was chosen as the minimum value that allows planning with sufficient forethought to execute complex maneuvers. The replanning frequency was chosen as 5Hz based on the data from Figure 3.
The testing of our direct NMPC algorithm in hardware demonstrated very successful results. For the task where we navigated in a virtual corridor, 10 out of 10 trials navigated without colliding with our virtual walls (see green lines in Figure 9). At the first corner, the highest AoA was 38 degrees and 66 degrees at the second corner. We also tested our algorithm without local feedback between plans, and these trials almost immediately failed (see red lines in Figure 9). While we did occasionally violate our constraint towards the end of the trials (0.55 m radius), the actual plane never collided (see Figure 10). We believe this is acceptable since SNOPT is able to relax these constraints during elastic mode operation to minimize infeasibilities. To test robustness to initial conditions without a launcher, we also conducted some handthrown trials and had good success see (Figure 9).
In this paper, we described an approach for real-time receding horizon control with fixed-wing UAVs that can exploit post-stall aerodynamics to make tight turns in constrained environments. We demonstrated very successful experimental results with a medium-fidelity aircraft physics model. We believe that one avenue of future work is understanding how the performance of local feedback laws under uncertainty can be incorporated into the optimization routine to carry-out robust real-time feedback motion planning, such has been explored [19, 5]. Another avenue to explore would be the impact of sensing on these maneuvers and how real-time post-stall motion planning can coupled with perception, as has been explored in the quadcopter domain (e.g. ).
-  (2014) Real-time obstacle collision avoidance for fixed wing aircraft using b-splines. In Control (CONTROL), 2014 UKACC International Conference on, pp. 115–120. Cited by: §III.
-  (2018) Autonomous fixed-wing aerobatics: from theory to flight. In 2018 IEEE International Conference on Robotics and Automation (ICRA), pp. 6573–6580. Cited by: §III.
-  (2019) High-speed obstacle-avoidance with agile fixed-wing aircraft. In 2019 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 971–980. Cited by: §III.
-  (2016) An improved indirect model predictive control approach for modular multilevel converter. In IECON 2016-42nd Annual Conference of the IEEE Industrial Electronics Society, pp. 5959–5964. Cited by: §III.
-  (2017) Experience-driven predictive control with robust constraint satisfaction under time-varying state uncertainty.. In Robotics: Science and Systems, Cited by: §VIII.
-  (2018) Pampc: perception-aware model predictive control for quadrotors. In 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 1–8. Cited by: §VIII.
-  (2005) SNOPT: an sqp algorithm for large-scale constrained optimization. SIAM review 47 (1), pp. 99–131. Cited by: §IV-B2.
-  (1984) Supermaneuverability. Technical report Cited by: §II, §IV.
-  (1985) Fluid-dynamic lift: practical information on aerodynamic and hydrodynamic lift. Cited by: §IV-A.
-  (2013) OctoMap: an efficient probabilistic 3d mapping framework based on octrees. Autonomous Robots 34 (3), pp. 189–206. Cited by: §IV-B2.
-  (2016) Modeling dynamics of agile fixed-wing uavs for real-time applications. In 2016 international conference on unmanned aircraft systems (ICUAS), pp. 1303–1312. Cited by: §III.
-  (2000) Performance assessment of fighter aircraft incorporating advanced technologies. Ph.D. Thesis, Loughborough University. Cited by: §II.
-  (1998) Rapidly-exploring random trees: a new tool for path planning. Technical report . Cited by: §IV-B1.
-  (2016) Aggressive turn-around manoeuvres with an agile fixed-wing uav. IFAC-PapersOnLine 49 (17), pp. 242–247. Cited by: §III.
-  (2019) Real-time motion planning with a fixed-wing uav using an agile maneuver space. Autonomous Robots, pp. 1–20. Cited by: §III.
-  (2017) Agile fixed-wing uav motion planning with knife-edge maneuvers. In Unmanned Aircraft Systems (ICUAS), 2017 International Conference on, pp. 114–123. Cited by: §III, §III.
-  (2017) Recent developments in aerial robotics: an survey and prototypes overview. arXiv preprint arXiv:1711.10085. Cited by: §III.
-  (2016) Funnel libraries for real-time robust feedback motion planning. arXiv preprint arXiv:1601.04037. Cited by: §III.
-  (2017) DIRTREL: robust trajectory optimization with ellipsoidal disturbances and lqr feedback.. In Robotics: Science and Systems, Cited by: §VIII.
-  (2010) Agile turnaround using post-stall maneuvers for tail-sitter vtol uavs. In 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 1612–1617. Cited by: §III.
-  (2011) Minimum snap trajectory generation and control for quadrotors. In 2011 IEEE International Conference on Robotics and Automation, pp. 2520–2525. Cited by: §I.
-  (2012) Trajectory generation and control for precise aggressive maneuvers with quadrotors. The International Journal of Robotics Research 31 (5), pp. 664–674. Cited by: §I.
-  (2002) Real-time constrained trajectory generation applied to a flight control experiment. IFAC Proceedings Volumes 35 (1), pp. 175–180. Cited by: §III.
-  (2000) A new computational approach to real-time trajectory generation for constrained mechanical systems. In Decision and Control, 2000. Proceedings of the 39th IEEE Conference on, Vol. 1, pp. 845–851. Cited by: §IV.
-  (2014) Robust post-stall perching with a simple fixed-wing glider using LQR-trees. Bioinspiration & Biomimetics 9 (2). Cited by: §III, §IV-A.
-  (2016) Evaluating direct transcription and nonlinear optimization methods for robot motion planning. IEEE Robotics and Automation Letters 1 (2), pp. 946–953. Cited by: §IV-B2.
-  (2009) Nonlinear agile control test bed for a fixed wing aircraft in a constrained environment. In AIAA Infotech@ Aerospace Conference and AIAA Unmanned… Unlimited Conference, pp. 1927. Cited by: §III.
-  (2009) Underactuated robotics: learning, planning, and control for efficient and agile machines: course notes for mit 6.832. Working draft edition, pp. 3. Cited by: §III, §IV-B2.
-  (2008) 3D smooth path planning for a uav in cluttered natural environments. In 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 794–800. Cited by: §IV-B1.
-  (2010) An analytical continuous-curvature path-smoothing algorithm. IEEE Transactions on Robotics 26 (3), pp. 561–568. Cited by: §IV-B1, §IV-B1.