Embedding Adaptive Features in the ArduPilot Control Architecture for Unmanned Aerial Vehicles

More Info
expand_more

Abstract

The operation of Unmanned Aerial Vehicles (UAVs) is often subject to state-dependent alterations and unstructured uncertainty factors, such as unmodelled dynamics, environmental weather disturbances, aerodynamics gradients, or changes in inertia and mass due to payloads. While a large number of autopilot solutions have been proposed to operate UAVs, none of these solutions is able to counteract the effects of state-dependent and unstructured uncertainties online by parameter estimation and adaptive control techniques. This work presents a systematic integration of adaptive control into ArduPilot, a popular open-source autopilot suite maintained by a large community of UAV developers. Adaptation features are embedded in the ArduPilot control structure without altering the original architecture, to allow users to use the autopilot suite as usual. Tests show that the proposed adaptive ArduPilot provides consistent improved performance in several uncertain flight conditions. The source code of the proposed adaptive ArduPilot is released at https://github.com/Friend-Peng/Adaptive-ArduPilot-Autopilot.