Fundamental Concepts
of Reactive Control for
Autonomous Drones
By Luca Mottola and Kamin Whitehouse
Abstract
Autonomous drones represent a new breed of mobile
computing system. Compared to smartphones and connected
cars that only opportunistically sense or communicate,
drones allow motion control to become part of the application logic. The efficiency of their movements is largely dictated by the low-level control enabling their autonomous
operation based on high-level inputs. Existing implementations of such low-level control operate in a time-triggered fashion. In contrast, we conceive a notion of
reactive control that allows drones to execute the low-level
control logic only upon recognizing the need to, based on
the influence of the environment onto the drone operation. As a result, reactive control can dynamically adapt
the control rate. This brings fundamental benefits, including more accurate motion control, extended lifetime, and
better quality of service in end-user applications. Based
on 260+ hours of real-world experiments using three aerial drones, three different control logic, and three hardware platforms, we demonstrate, for example, up to 41%
improvements in motion accuracy and up to 22% improvements in flight time.
1. INTRODUCTION
Robot vehicle platforms, often called “drones,” offer exciting new opportunities for mobile computing. While many
mobile systems, such as smartphones and connected cars,
simply respond to device mobility, drones allow computer
systems to actively control device location. Such a feature
enables interactions with the physical world to happen
in new ways and with new-found scale, efficiency, or
precision. 4, 8, 18
Autopilots. Figure 1 schematically illustrates the hardware and software components in modern drone platforms.
Key to their operation is the autopilot software implementing the low-level motion control. The control loop processes
high-level commands coming from a Ground-Control
Station (GCS) as well as various sensor inputs, such as, accelerations and Global Positioning System (GPS) coordinates,
to operate actuators such as electrical motors that set the 3D
orientation of the drone.
Together with the mechanical design, the autopilot soft-
ware is crucial to determine a drone’s performance along
a number of essential metrics. For example, the low-level
control directly influences the quality of the shots when
using drones for imagery applications. 17, 18 Further, it is
partly responsible for the overall energy efficiency, as a
The original version of this paper is entitled “Reactive
Control of Autonomous Drones” and was published in
Proceedings of the 14th ACM International Conference on
Mobile Systems, Applications, and Services, Singapore,
June 2016.
drone’s lifetime is often a result of how streamlined is the
autopilot operation. 5, 24
Unsurprisingly, most existing autopilots employ
Proportional-Integral-Derivative (PID) 2 designs. Processing
is thus time-triggered: every T time units, sensors are probed,
control decisions are computed, and commands are sent
to the actuators. Such a deterministic operation simplifies
implementations and allows designers to directly rely on a
vast body of existing literature. 2
Reactive control. Based on a handful of key observations,
a fundamental leap of abstraction, and an unconventional
use of recent advances in programming languages, we conceive a notion of reactive control that allows autopilots
to significantly improve a drone’s performance in both
motion accuracy and energy consumption. Rather than
periodically triggering the control logic, we only run the
control logic upon recognizing the need to. Depending on
the influence of the environment onto the drone operation, for example, due to wind gusts or pressure gradients,
control may run more or less frequently, regardless of the
the fixed rate of a corresponding time-triggered implementation. As a result, reactive control dynamically adapts the
control rate.
Reactive control yields several advantages, including more timely and adaptive control decisions leading
to improved motion accuracy and energy efficiency. As it
Ground-control station
Autopilot
Figure 1. Hardware and software components in modern drone
platforms. Users configure high-level mission parameters at the
ground-control station (GCS), whereas the autopilot software
implements the low-level motion control aboard the drone.
research highlights
DOI: 10.1145/3264417