Time-Optimal Control for Tiny Quadcopters

More Info
expand_more

Abstract

Time-optimal model-predictive control is essential in achieving fast and adaptive quadcopter flight. Due to the limited computational performance of onboard hardware, aggressive flight approaches have relied on off-line trajectory optimization processes or non time-optimal methods. In this work we propose a computational efficient model predictive controller (MPC) that approaches time-optimal flight and runs onboard a consumer quadcopter. The proposed controller is built on the principle that constrained optimal control problems (OCPs) have a so-called 'bang-bang' solution. Our solution plans a bang-bang maneuver in the critical direction while aiming for a 'minimum-effort' approach in non-critical direction. Control parameters are computed by means of a bisection scheme using an analytical path prediction model. The controller has been compared with a classical PID controller and theoretical time-optimal trajectories in simulations. We identify the consequences of the OCP simplifications and propose a method to mitigate one of these effects. Finally, we have implemented the proposed controller onboard a consumer quadcopter and performed indoor flights to compare the controller's performance to a PID controller. Flight experiments have shown that the controller runs at 512hz onboard a Parrot Bebop quadcopter and is capable of fast, saturated flight, outperforming traditional PID controllers in waypoint-to-waypoint flight while requiring only minimal knowledge of the quadcopter's dynamics.