this work is to leverage MEMS technology for turbulent
airflow measurements in order to improve multirotor drone
performance in high winds. To this end, we make the
following three specific contributions:
•FlowDrone. We instantiate the MEMS-based flow sens-
ing technology in the FlowDrone (Fig. 1): a quadrotor
equipped with MEMS hot-wire airflow sensors, which
enable real-time (>500Hz) estimates of wind magnitude
and direction.
•Wind-aware control. We propose a reinforcement learn-
ing (RL) pipeline for training a wind-aware controller
that utilizes the wind estimate from the flow sensor. The
key components of the RL training pipeline are: (i) a
simulator that captures relevant aerodynamic effects, (ii)
the simulation of wind gusts recorded from real experi-
ments with additional domain randomization, and (iii) a
neural network policy that takes as input a history of wind
estimates along with the drone’s state estimate and outputs
a residual control input added to the open-source PX4
controller [5].
•Hardware experiments. We perform hardware experi-
ments demonstrating the improved performance of the
FlowDrone’s wind-aware controller in the presence of
a wind gust as compared to two strong wind-unaware
baselines: (i) the widely-used PX4 controller (referred to
as ‘baseline’), and (ii) a controller trained using RL with
identical simulated winds but without the ability to access
real-time wind estimates (referred to as ‘wind-unaware’).
Over the course of 30 flights (10 per controller), each
exposed to a 5 m/s gust, the mean maximum error in the
direction of wind was: 0.44 m for wind-aware, 0.58 for
wind-unaware, and 0.78 for baseline. This constitutes a
44% improvement of wind-aware over baseline.
A. Related Work
Multirotor drone control in wind. Current multirotor
drones typically treat wind as an external disturbance and
rely on a feedback controller to perform gust rejection [6],
[7], e.g., using techniques from robust and adaptive control
[8]–[10]. Recently, techniques from adaptive control have
also been combined with deep neural network representations
of aerodynamic effects in order to perform multirotor control
in the presence of wind [11].
Alternative approaches to wind estimation include utilizing
an extended Kalman filter with measurements from the
drone’s IMU (e.g., as implemented by the widely used PX4
controller [12]). Such wind estimates can then be utilized by
a feedback controller for gust rejection [13].
The approaches mentioned above rely on indirect es-
timates of wind (e.g., by observing the drone’s motion as
measured by its IMU or optical flow sensor). In this work,
we seek to leverage sensors that directly measure wind with
adequate accuracy and frequency to improve multirotor drone
control.
Conventional airflow sensors. One of the most com-
monly used sensors for measuring airspeed on fixed-wing
platforms is the pitot-static tube [14]. However, they suffer
from high lag and typically have settling times on the
order of seconds [15], making them unreliable for unsteady
flow measurements. Moreover, conventional one-dimensional
pitot-static tubes do not provide estimates of flow direction,
and are in fact insensitive to changes in direction of up to
15◦-20◦[16]. This renders them unsuitable as an omnidirec-
tional flow sensor. Another conventional airflow sensor is
the hot-wire anemometer [17]. While these sensors have a
significantly faster response (on the order of milliseconds
or even microseconds [18]), their form factor is not well-
suited for multirotor applications. Specifically, they typically
require large, heavy, and expensive circuitry, and are also
fragile due to the unshielded microscale wire [19].
Airflow sensors for multirotor drones. Motivated by
the challenges with conventional airflow sensors, there have
been efforts to develop custom airflow sensing technology
for multirotor drones. For example, flow speed (but not
direction) can be estimated by measuring the deflection of a
single sensing element [20], [21]. The whisker-like sensors
used in [22] can resolve airflow direction from deflection
using multiple sensing elements; however, [22] does not
provide a characterization of the temporal characteristics (lag
and frequency) of the sensors. Differential pressure probes
have also been used for resolving the wind vector [23], [24].
However, these have relatively high errors in angle estimation
(12◦error in [24]), and are based on principles used by
conventional airflow sensors (which suffer from high latency
and low temporal resolution). Another sensing modality
uses fast-response multi-hole pressure probes (MHPPs) [25],
which yield wind magnitude and direction estimates of 1 m/s
and 5◦respectively. However, these sensors are unable to
measure outside a 90◦cone of acceptance, and also utilize a
large probe whose length is that of the drone itself [26]. In
this work, we utilize recently developed MEMS-based hot-
wire sensors, which afford a small form factor (millimeter
scale), fast response (>500Hz), and accurate wind speed
and direction estimation.
II. SYSTEM OVERVIEW
In this section, we provide an overview of the FlowDrone
architecture and its main components; this architecture is
illustrated in Fig. 2.
Drone hardware. The FlowDrone platform is built on top
of the Holybro X500 Kit with a Pixhawk 4 autopilot. The
drone is equipped with an accelerometer and magnetometer,
as well as an onboard Holybro M8N GPS for compass
readings (the primary yaw reference), and a PX4FLOW
Smart Camera and LIDAR-Lite v3 for optical flow and height
measurements. The GPS is not used as the flights were
conducted indoors. These sensors are used by the Pixhawk
to calculate state estimates, which are then passed to an
onboard companion computer (a Raspberry Pi 4 8 GB Model
B) over the PX4-ROS2 bridge at 100 Hz. We highlight that
all sensing and computation is onboard, thus allowing for
future outdoor deployment.
Sensors and wind estimation. The key feature of the
FlowDrone is the use of MEMS hot-wire technology for