You are on page 1of 8

2017 IEEE International Conference on Robotics and Automation (ICRA)

Singapore, May 29 - June 3, 2017

Model-based Wind Estimation for a Hovering VTOL Tailsitter


UAV
Y. Demitri† , S. Verling, T. Stastny, A. Melzer and R. Siegwart

Abstract— To many unmanned aerial vehicle (UAV)


designs, the lack of information about the wind speed
and direction is a limiting factor in achieving robust
outdoor flight. This paper addresses the problem of
wind estimation onboard a hovering vertical take-off
and landing (VTOL) tailsitter UAV. The proposed
estimation framework makes use of the standard on-
board sensor suite: inertial measurement unit (IMU),
global positioning system (GPS) and a magnetometer.
No additional airspeed sensor is needed. As a result,
the autopilot is provided with an estimate of the wind
velocity vector in the horizontal (north-east) plane.
An aerodynamic model of the vehicle has been derived
and used in a Kalman filter framework to estimate the
horizontal wind velocity vector in real-time.
The wind estimator has been implemented onboard Fig. 1: Wingtra One - tailsitter UAV
the UAVs autopilot and validated in real flight. As a
result, we successfully obtain the direction and speed
of the wind with an estimation accuracy close to the
accuracy range of the ground truth measurement. landing vertically while maintaining level attitude. While
Furthermore, the derived grey-box model allows to wind disturbances are generally an integral challenge
generalise the framework to different airframes. for any autonomous UAV control, most efforts tackling
this challenge have been focused on developing more
I. Introduction
robust control algorithms. Thereby, the idea is to blindly
The last decade has seen a substantial boom in un- minimize the control error, without explicit information
manned aerial vehicle (UAV) technology, demonstrat- about the incident wind. The most common multi-copter
ing their immense capabilities. So far, UAVs have had UAV designs, e.g. quadcopters, are relatively symmetri-
a successful transfer from research laboratories to the cal across their horizontal body axes. Therefore, explicit
consumer market. Among the promising UAV designs are information about the wind velocity does not add much
hybrid systems, which combine the agility and maneu- value improving controllability.
verability of multi-copters with the efficiency and range In this light, a tailsitter UAV - like the platform used in
of fixed-wing systems. This matches the requirements of this work (Fig. 2) - has the special property of a highly
various commercial applications, which include covering asymmetric design, when comparing the dimensions of
wide areas, as well as taking off and landing vertically its x- and y-axes. Hence, the effect of wind attacking
in confined spaces. Therefore, hybrid UAVs can have perpendicular to the wing area is substantially different
remarkable impact on industries such as agriculture, from winds blowing parallel along the wing area. For
mining or parcel delivery in the near future. this reason, providing the autopilot with a real-time
The Wingtra One [1] in Fig. 1 is a tailsitter UAV. It is estimate of the wind vector is crucial for improving flight
a mechanically simple form of hybrid UAV, with vertical performance in high winds and can be the determining
take-off and landing (VTOL) capabilities and the ability factor in guaranteeing safe autonomous landing.
to transition into efficient forward flight by performing a Generally, the problem of wind estimation is solved
90◦ tilt maneuver in the air. for fixed-wing systems by use of a pitot tube [2]. Hereby,
One major drawback of the tailsitter design is its the airspeed measurement is compared with a ground
high susceptibility to wind disturbances, when in hover velocity measurement from the GPS to provide the wind
flight. Due to the wide surface area of the vertically velocity. In the case of a hovering (multi-copter) UAV,
hovering wing, the vehicle experiences substantial drag a unidirectional airspeed sensor is practically infeasible,
forces from winds acting in a direction normal to the wing because the flight direction varies strongly w.r.t the
area. This drastically limits the UAV’s capabilities in vehicle’s body-fixed frame. Furthermore, the highly tur-
bulent airflow around the vehicle body caused by the
*This work was heavily supported by Wingtra AG.
† All authors are with the Autonomous Systems Lab from ETH spinning propellers makes the placement of any kind
Zurich. - email: demitriy@ethz.ch of airspeed sensor very inconvenient. For that reason,

978-1-5090-4633-1/17/$31.00 ©2017 IEEE 3945


there have been some recent efforts [3]–[7] in model-based A. System Overview
wind estimation for multi-copter UAVs, with different A schematic representation of the deployed system is
applications in mind. depicted in Fig. 2 in vertical hovering configuration. The
In particular, Waslander et. al [6] have derived a model UAV is composed of a wing, equipped with two propellers
for simulating wind, as well as a detailed theoretical for vertical thrust, as well as roll control by differential
model of the different effects of wind on the body and thrust. In the slipstream of the propellers, there are two
propeller forces of a quadcopter. The aim is to eliminate flaps at the trailing edge of the wing. The flaps are used
the effect of wind on the model-based feedback position to control pitch and yaw, by deflecting the propeller
control law. The result is a formula for inferring the wind slipstream. For the remainder of this work we define the
velocity from accelerometer measurements, validated by body-fixed coordinate frame, as denoted in Fig. 2 by bx ,
simulation results. This model has been used by Abey- by and bz .
wardena et al. [5], showing an increased accuracy in
position and velocity estimates by augmenting a visual-
inertial fusion framework with a wind velocity state.
The results have been validated in an experimental flight
setup using a vicon motion capture system. A different
application where an explicit wind velocity estimate is
needed has been demonstrated by Neumann et al. [4].
In their work, a gas-sensitive UAV is used for the task
of gas distribution mapping, where the prevailing wind
plays a major role in the motion of the detected gases.
They perform wind tunnel experiments to determine a
black-box static model, which maps the inclination angle
of the quadcopter to different freestream velocities.
To the best of our knowledge, there have been no
efforts addressing the wind estimation problem on a
hovering tailsitter UAV, modelling its aerodynamics and
observability of the wind vector. Furthermore, all previ- Fig. 2: 3-dimensional model of the Wingtra S125 tailsit-
ous work has relied on either wind tunnel data or indoor ter prototype with denoted body frame axes.
motion capture systems.
The goals of this work have been to:
B. Aerodynamic Model
• derive and tune a grey-box model for the aerody-
namic forces acting on the Wingtra tailsitter UAV. In order to determine the wind velocity incident on
• develop a framework to estimate the wind velocity the vehicles surface, we need to construct a model, which
vector in real-time. maps the onboard sensor data to the wind velocity vector
• validate the wind estimation framework on outdoor I v W in the inertial (north-east) frame, in the following
flight data. form
I v W = f (I v G , φ, θ, ψ). (1)
The remainder of this paper is structured as follows.
Section II introduces the system and the derived aerody- Hereby the 3-dimensional attitude of the vehicle is de-
namic model, as well a methodology for parameter iden- noted by its euler angles (in the Tait-Bryan convention):
tification. In Section III, we present the wind estimation roll φ, pitch θ and yaw ψ. The 2-dimensional ground
framework, followed by an overview of the experimental velocity vector in the inertial frame is denoted by I v G .
setup and results in Section IV. Finally, conclusions are The attitude and ground velocity states are assumed to
drawn in Section V, along with a note on future work. be given by the main state estimation framework running
onboard the autopilot by fusion of IMU, GPS and magne-
II. System Model tometer measurements. Note that throughout this paper
we use a leading subscript to denote a vector’s reference
In this section, we describe the system at hand, frame. We use the subscript I for the 2-dimensional
deriving an aerodynamic model, which enables us to inertial north-east frame and B  , when rotated around
infer the wind velocity from the ground velocity and the vehicle’s yaw angle ψ.
the 3-dimensional attitude estimates. The attitude and In the following, we describe the wind model
ground velocity are assumed to be given by the main f (I v G , φ, θ, ψ), derived from first principle equations of
state estimator through fusion of IMU, magnetometer aerodynamic forces acting on the vehicles body. Primar-
and GPS measurements. Thereafter, we present the ily, in section II-B.1, we infer the horizontal freestream
methodology used to identify the model parameters from velocity I v ∞ , i.e. the relative speed of the the air far
real flight data. upstream from the UAV w.r.t. the vehicle’s body. In a

3946
second step - described in section II-B.2 - we include the With the help of the trigonometric relationships dis-
ground velocity states to obtain the wind vector as the played in the equilibrium of forces in the bottom left
difference between freestream and ground velocities. corner of Fig. 3 and equations (2) - (4), we can solve for
1) Freestream velocity: To determine the freestream v∞ . This provides us with the following mapping of pitch
velocity I v ∞ , we consider the forces acting on the vehicle angles θ to freestream velocities v∞
body in steady-state flight, i.e. at a constant freestream

velocity and constant altitude. Without loss of generality, 
2mg tan |θ|
we consider the 2-dimensional case with only frontal v∞ = ± = ±kx tan |θ|. (5)
horizontal freestream velocity v∞ and drop all indices cD ρA
for 3-dimensional reference frames. The same model is
applied to the lateral freestream velocity and is regarded with the lumped parameter kx .
as a analogous and decoupled problem. The prevailing We conclude that the frontal component of the hori-
forces are depicted in the free body diagram in Fig. 3. zontal freestream velocity can be modelled as the square
Hereby, fT denotes the total thrust force produced by the root tangent of the pitch angle θ, scaled by a coefficient
propellers, fG denotes the gravitational force pointing kx . Conveniently, we apply the same model to the y-axis
downwards and fL and fD denote the aerodynamic lift of the vehicle’s body, mapping the roll angle φ to the lat-
and drag forces acting on the wing surface. To maintain eral freestream velocity, with a scaling factor ky . Whereas
the steady-state of constant freestream and altitude, the the flat-plate assumption cannot be directly justified
aircraft is tilted by the pitch angle θ. Assuming a flat- for lateral freestream, it has shown a reasonable fit on
plate model [8], the equations for the lift and drag forces empirical data (see section II-C). Intuitively, the scaling
are given by factor k describes the relationship between constant tilt
angles and constant freestream velocities at the steady-
1 2
||fL ||2 = cL ρA sin(θ) cos(θ)v∞ , (2) state. For high drag and lift forces, the factor k becomes
2 small, meaning that higher tilt angles are needed to move
1 with a certain velocity relative to the air.
||fD ||2 = cD ρA cos2 (θ)v∞
2
, (3)
2 Furthermore, we extend the model by two parameters
with cL and cD being the lift and drag coefficients, to include asymmetries along the bx axis:
ρ being the air density and A being the wing area. • As the wing is slightly tilted w.r.t the fuselage and
Additionally, the gravitational force is given by IMU in positive pitch direction, we introduce an
offset parameter ox .
||fG ||2 = mg. (4)
• Because the curvature of the fuselage is significantly
different and also the wing’s airfoil is asymmetric,
we split the scaling parameter into separate scaling
factors kx+ and kx− for positive and negative pitch
angles respectively.
By rotating the resulting freestream velocities around the
yaw angle ψ with the transformation matrix
 
cos(ψ) − sin(ψ)
Tψ = , (6)
sin(ψ) cos(ψ)

we obtain north and east components of the horizontal


freestream velocity, given by
   
kx+ tan(|θ|)I{θ>0} − kx− tan(|θ|)I{θ≤0} + ox
I v ∞ = Tψ

−ky sign(φ) tan(|φ|)
(7)

with I{.} being the indicator function taking the value 1,


if the condition {.} is satisfied and the value 0 otherwise.
Notably, the derived model assumes zero freestream ve-
locity in vertical direction. A further simplification is that
we do not explicitly consider the downward airstream
caused by the spinning propellers, which is highly tur-
bulent and therefore difficult to quantify. The effect is
Fig. 3: 2-D free body diagram for frontal freestream assumed to be captured by the parameter identification
velocity (side view of the wing). with real data.

3947
2) Wind Triangle: Converting the freestream velocity
obtained in section II-B.1 into wind velocities is trivial
given a reliable estimate for the ground velocities. We
apply the so-called wind triangle [4], shown in Fig. 4,
which simply states that the vector of wind velocities
vW is equal to the difference between the freestream
velocity v∞ (relative speed of air to UAV) and the
ground velocity vG (relative speed of ground to UAV).
We obtain the following equation for inferring the wind
speed vector

I vW = f (I v G , φ, θ, ψ) = I v ∞ − I v G . (8)
with I v ∞ obtained from equation (7) as a function of (a) Roll maneuver
the angles φ, θ and ψ.

Fig. 4: Wind Triangle

C. Parameter Identification
(b) Pitch maneuver
In order to complete the theoretical model, derived
with multiple strong assumptions in section II-B.1, em- Fig. 5: Constant tilt angle and altitude flight maneuvers
pirical data is needed. We perform outdoor flight ma- for roll and pitch.
neuvers to identify values for kx+ , kx− , ox and ky ,
as well as quantify the model uncertainty used for the
estimation framework in Section III. The flights are
performed outdoors with almost no wind, so we can wind bias B  bW . Hence, we approximate the freestream
consider the measured ground velocities as a measure for velocity, by using the measured ground velocity B  v G ,
the freestream velocity v∞ (see section II-B.2). corrected by the wind bias B  bW as follows
Specifically, to determine the parameters for the static
model in equation (8), we fly the system in steady state v
B ∞
= B  v G − B  bW (10)
at multiple tilt angles and measure the corresponding
ground velocities. The maneuvers are performed along
1) Roll maneuvers: The measured roll angles are
both bx and by axes separately, with constant pitch and
transformed by the model function from equation (7),
roll angles respectively. An example is depicted in Fig.
5.
obtaining  the augmented independent variable xi =
sign(φi ) tan |φi | for every data point i ∈ 1, 2, ..., Ni re-
Hereby, we denote the measured world frame ground
spectively. As the dependent variable corresponding to
velocity I v G , rotated by the yaw angle with Tψ as
  xi , we use the approximate freestream velocity yi =
 v G[x]
v
B  ∞[y] ,i
. We perform a weighted linear least squares
 B
v = Tψ I vG =
B G
(9) regression (WLLS), using the weights wi to normalise
v
B  G[y]
the data w.r.t to the number of data points collected for
To correct for biases caused by slight winds, the every segment of a certain angle/velocity pair. This is
maneuvers have been performed in successive pairs of to eliminate the bias towards the more densely sampled
opposite direction by changing heading (i.e. yaw angle) parts of the measured range. For the by -model, the
by 180◦ . Assuming constant wind throughout such a regression is constrained to a line through the origin,
pair of successive measurements, the arithmetic mean as the UAV is assumed to be symmetric along the by
between the average measured ground velocities corre- axis. The optimal scale factor ky∗ is obtained from the
sponds directly to the wind speed, which we call the roll maneuvers by the following optimization

3948
Ni 
  2

ky∗
= argmin wi ky xi − yi . (11)
ky i=1
2) Pitch maneuvers: For the bx -model, the dependent
variable is extended, to obtain the bx -axis parameters
stacked in the vector kx = (kx+ , kx− , ox ). We obtain the
extended dependent variable by
⎛  ⎞
I{θi >0} tan |θi |
xi = ⎝I{θi ≤0} tan |θi |⎠ .
1
The rest of the WLLS regression is analogous to the
one performed on the roll maneuvers. We acquire the
optimal parameter set kx by the following optimisation
Ni 
  2

kx∗
= argmin wi kx xi − yi . (12)
kx i=1
Fig. 6 depicts the resulting model fit, plotting the
freestream velocities yi against the tilt angles for each
of the roll and pitch maneuvers.
III. Estimation Framework
In order to reliably estimate the wind velocity, we use a
Kalman filter formulation [9], tracking the 2-dimensional
wind velocity vector I v W in the inertial north-east frame,
as well as a 2 × 2 covariance matrix P , capturing the
uncertainty about the states. The Kalman filter starts
with an initial guess for the state and covariance and Fig. 6: Model fit from constant tilt angle and altitude
then recursively alternates between a propagation step flight maneuvers for roll (upper) and pitch (lower). The
and a measurement step. measured data points (blue, transparent) are plotted into
A. Propagation Step a tilt angle to freestream velocity frame. The system
Typically, the propagation step is based on a process model with optimal parameters (red, solid) is shown with
model, which in this case captures the expected behavior 3σ-bounds (red, shaded area).
of wind and serves as a prediction of the wind speeds
between incoming measurements. In general, wind ve-
locity is known to constitute a dominant static part The covariance matrix Q of the noise parameter ηp
and a highly uncertain dynamic part, the wind gusts. can be tuned to capture the expected dynamic range of
For reference on the dynamic range of wind, a common wind.
model for simulating wind is the Dryden Gust Model [10].
It models the wind as a power spectral density (PSD) B. Measurement Step
function with a dominant static part at frequency 0 rad/s, In this step, we use the sensor measurements to obtain
and a dynamic part in the range of 0.1 − 1.5 rad/s. the inferred wind velocity vector I ṽ W , determined by
Due to this highly uncertain behavior, for the purpose equation (8). Along with a covariance matrix R, these
of prediction in the given Kalman filter, north and east are plugged into the Kalman filter at the measurement
wind speeds are best modelled by random walk step
xk+1 = xk + ηp (13) z = I ṽ W + ηm , (15)

with process noise ηp ∼ N (0, Q), modeled as additive where z is the measurement used as input to the
Gaussian noise. Hereby, xk denotes the state vector at Kalman filter, constituting the inferred wind speed vec-
the discrete timestep k. In this case, the state vector tor I ṽ W with additive Gaussian measurement noise
x corresponds to the north and east components of the ηm ∼ N (0, R).
wind velocity The uncertainty about the measurement model is
  threefold:
vW[N ] • The state variance of the attitude estimates φ, θ
x = I vW = . (14)
vW[E] and ψ is given by the main state estimator by

3949
fusion of IMU and magnetometer measurements.
When propagated from quaternions to euler an-
gles and then through the wind model from equa-
tion (8), it amounts to a variance in the range of
10−6 −10−3 m2/s2 on the wind states.
• The state variance of the ground velocity vector I v G
is also given by the main state estimator by fusion
of IMU, magnetometer and GPS measurements. It
lies in the range of 0.02−0.2 m2/s2 .
• The modelling error quantified by the residual errors
rx and ry of the regressions from equations (12) and
(11) amount to rx = 0.09 m2/s2 and ry = 0.36 m2/s2
and are fixed to the vehicles body frame.
Evidently, the contribution of the attitude variance to
the wind estimate is a at least two orders of magnitude
smaller than both other error sources and can therefore
be neglected in this framework. The most dominant
source of uncertainty, namely the modelling error, is
composed of two body-fixed noise parameters rx and ry ,
which are propagated to the wind velocity estimates by
rotation around the yaw angle ψ. As for the uncertainty
about the ground velocity vector I v G , it is given in the
inertial north-east frame directly and is denoted by rN
and rE . Hence, the overall measurement noise matrix R
can be computed as
Fig. 7: Kalman filter flowgraph showing the process
   
r 0 r 0 model used in the propagation step (A) and the mea-
R = Tψ x Tψ + N . (16)
0 ry 0 rE surement model used for the measurement step (B).

It is worthy to note, that an alternative formulation of


TABLE I: Ground truth wind measurement specifica-
the measurement noise which includes the attitude state
tions.
variances would be possible using an implicit Extended
Kalman Filter as described in [11]. However, this involves Wind speed Wind direction
linearisations, which drastically increase computation Measurement accuracy ±5% ±7◦
time and as shown above provide negligible contribution Output resolution 0.01 m/s 22.5◦
Output frequency 0.1 Hz 0.1 Hz
to the total error. Hence, we choose the computationally
efficient solution, which can run seamlessly on the UAV’s
microcontroller.
The onboard estimator has been tested in real flight
IV. Experiments and Results tests. In this case, we fly the UAV with different maneu-
In this section, we present the performed validation vers on a day with wind speeds ranging from 0−6 m/s.
experiments and evaluate the resulting wind estimate For reference, we use an external wind measurement
provided by the Kalman filter, benchmarked against setup, composed of a cup anemometer measuring wind
ground truth data which we acquire with an external speed and a wind vane measuring the wind direction. The
wind measurement setup. measurement setup is placed at approx. 4.5 m height (∼
flight altitude) and at a distance of approx. 20 m away
A. Validation Experiments from the vehicle.
The proposed wind estimation framework has been The reference wind measurements are delivered at a
implemented onboard the UAV’s autopilot, which de- rate of 0.1 Hz, providing a measurement of the average
ploys a modified version of the PX4 flight stack [12]. wind speed and direction over time segments of 10 s. The
The board runs an STM32 microcontroller with 256 output resolution and measurement accuracy, as given by
kbit random access memory (RAM) and a 180 MHz the data sheet, are listed in Table I for wind speed and
processor with single-precision floating point unit (FPU). direction respectively.
The implementation is in C++ and is very light-weight It is worthy to note, that the sensor specifications
due to the efficient formulation of the Kalman filter, as of the wind measurement setup cause a considerable
well as the ability to run at much lower frequency than limitation in evaluating the estimation results. Most
other modules, given the relatively slow wind dynamics. significantly, as seen in Table I, the wind direction mea-

3950
surements are delivered every 10 seconds at a resolution 50

Angle [◦ ]
of 22.5 ◦ and an internal measurement error of up to 7 ◦ . 0
This allows us to validate the general performance of the −50
wind estimator, however we cannot determine a true esti- −100
mation error with the current ground truth measurement
0 50 100 150 200 250
setup. Therefore, in this section we merely speak of an
approximate estimation error as an evaluation measure Time [s]
for the estimation of wind speed and direction.
60
The flight maneuvers performed to validate the wind

Angle [◦ ]
estimates include combinations of holding the vehicle’s 40
position against the wind (non-zero tilt angles), as well 20
as holding zero tilt angle and letting the vehicle’s position
drift with the wind. This has allowed decoupling the 50 100 150 200 250
effects of the different terms in equation (8) and has
Time [s]
helped in tuning the estimator parameters. Furthermore,
the experiments have been performed at a range of Fig. 8: Top: The estimated wind direction is plotted
varying orientations, i.e. yaw angles, to evaluate the mea- (blue, solid), along with its mean value over 10 second
surement model along both body-frame axes separately, segments (blue, dots). The ground truth measurement of
as well as coupled pitch/roll tilt angles. the wind direction (red, stars) is plotted for reference, as
well as the UAV’s heading, i.e. yaw angle ψ (blue dashed
B. Estimation Results line). Bottom: The estimation error (blue, circles), i.e. the
difference between the average estimated and measured
In the following, we evaluate the performance of the wind direction at 10 second intervals is plotted along with
proposed approach, demonstrating the results on a rep- the output resolution of the wind vane (red, dashed line)
resentative data set1 To compare the estimated states at 22.5 ◦ .
to the ground truth data, we convert the wind velocity
vector into direction and magnitude to match the sensor
output.
1) Wind Direction: The upper plot in Fig. 8 depicts 2) Wind Speed: Along the same evaluation criteria,
the estimated wind direction compared to the direction we observe the resulting magnitude of the wind velocity
delivered by the wind sensor at 0.1 Hz. Additionally, we estimate in Fig. 9, as we did for the wind direction.
have plotted the mean estimated wind direction over 10 s The top plot shows the estimated wind speed com-
intervals to match the sensor output for better visual pared to the averaged wind speed provided by the wind
evaluation. We can see that the estimated direction is sensor at 0.1 Hz. As with the wind direction, we have
well aligned with the ground truth and remains stable plotted the mean estimated wind speed over 10 s match-
w.r.t. changes in the yaw angle. The lower plot in Fig. ing the sensor output. Notice, the steep convergence from
8 shows the approximate estimation error, i.e. the dif- an arbitrary initialisation of 4 m/s towards the ground
ference between the estimated and the measured wind truth measurement within the first 2 seconds. On the
direction, with a mean error of approximately 15◦ . bottom plot, we can see the residuals between the esti-
It is important to note, that the approximate esti- mated wind speed and the ground truth measurements,
mation error of 15◦ falls into the same range of the with a mean difference below 0.4 m/s. This corresponds
measurement error of the wind vane, which is ±7◦ with to a relative error below 25%, clearly larger than mea-
a further depreciation by the crude output resolution of surement accuracy of the ground truth sensor. We con-
22.5◦ . Furthermore, the sample frequency of the ground firm the validity of the estimate within the presented
truth is by a factor of 500 smaller than the recorded estimation error, showing that there is still room for
estimate. Therefore, we cannot determine wether the improvement in terms of magnitude of the estimated
sensor measurement or the estimated wind direction is wind velocity.
closer to the true wind direction. We conclude that the Overall, the wind estimator shows promising quali-
estimation in terms of wind direction is valid and it is tative results. We have quantified the estimated wind
not possible to quantify further improvements to the velocity within the constraints of the deployed mea-
estimation accuracy with the current ground truth setup. surement setup. We see great potential for employing
the current wind estimate in applications that make
1 For practical and weather dependent reasons, the validation use of an approximate indication of wind speed and
set was collected on the predecessor of the prototype presented in direction, e.g. high-level navigation laws. However, the
the section II, however the modelling and estimation approach is estimation accuracy of the real-time wind speed may
identical. In section II, we chose to present the modelling data from
the airframe with more pronounced asymmetries along the bx axis not be sufficient for applications with higher demands
to emphasize the generalisability of the model. on accuracy at fast-changing dynamics, e.g. model-based

3951
Wind speed [m/s] Wind speed [m/s]
optimised hovering. Further improvements to the wind
estimator can include adding measurement models to the
3 Kalman filter, which consider the aerodynamic moment,
2 as well as the actuation response. Moreover, deriving a
1 dynamic model could help estimate fast-changing wind
0 50 100 150 200 250 gusts, as opposed to the static model derived in this work.

Time [s] ACKNOWLEDGMENT


1.5 The authors would like to emphasize their gratitude
to the whole Wingtra team for inspiring this work and
1 continuously providing support. Special thanks to Carl
0.5 Olsson and Michal Stasiak for their time and effort on
several long field testing sessions.
50 100 150 200 250
References
Time [s]
[1] S. Verling, B. Weibel, M. Boosfeld, K. Alexis, M. Burri,
Fig. 9: Top: The estimated wind speed is plotted (blue, and R. Siegwart, “Full attitude control of a VTOL tailsitter
UAV,” in 2016 IEEE International Conference on Robotics
solid), along with its mean value over 10 second segments and Automation (ICRA), pp. 3006–3012, May 2016.
(blue, dots). The ground truth measurement of the wind [2] A. Cho, J. Kim, S. Lee, and C. Kee, “Wind estimation and
speed (red, stars) is plotted for reference. Bottom: The airspeed calibration using a UAV with a single-antenna GPS
receiver and pitot tube,” IEEE Transactions on Aerospace and
estimation error (blue, circles), i.e. the difference between Electronic Systems, vol. 47, pp. 109–117, January 2011.
the average estimated and measured wind speed at 10 [3] M. Burri, M. Dätwiler, M. W. Achtelik, and R. Siegwart,
second intervals. “Robust state estimation for micro aerial vehicles based on
system dynamics,” in 2015 IEEE International Conference on
Robotics and Automation (ICRA), pp. 5278–5283, May 2015.
[4] P. P. Neumann, S. Asadi, A. J. Lilienthal, M. Bartholmai, and
J. H. Schiller, “Autonomous gas-sensitive microdrone: Wind
feedback control. vector estimation and gas distribution mapping,” Robotics &
Automation Magazine, IEEE, vol. 19, no. 1, pp. 50–61, 2012.
V. Conclusion and Future Work [5] D. Abeywardena, Z. Wang, G. Dissanayake, S. L. Waslander,
and S. Kodagoda, “Model-aided state estimation for quadro-
A simplistic framework for estimating the wind sur- tor micro air vehicles amidst wind disturbances,” in 2014
rounding a hovering UAV is presented in this paper. IEEE/RSJ International Conference on Intelligent Robots
and Systems, pp. 4813–4818, Sept 2014.
Specifically for the tailsitter design, this opens up a range [6] S. Waslander and C. Wang, “Wind Disturbance Estimation
of possibilities for designing adaptive control strategies, and Rejection for Quadrotor Position Control,” AIAA In-
that can achieve more robust flight amidst wind distur- fotech@Aerospace Conference, no. April, pp. 1–14, 2009.
[7] F. Schiano, J. Alonso-Mora, K. Rudin, P. Beardsley, R. Sieg-
bances. The proposed estimation framework uses only wart, and B. Siciliano, “Towards estimation and correction of
the standard onboard sensor suite and is based on a grey- wind effects on a quadrotor UAV,” in IMAV 2014: Interna-
box model of the airframe’s aerodynamics. This allows tional Micro Air Vehicle Conference and Competition 2014,
Delft, The Netherlands, August 12-15, 2014, Delft University
for simple generalisation to various airframes. The model of Technology, 2014.
formulation is decoupled for each of the horizontal body- [8] R. E. Cory, Supermaneuverable perching. PhD thesis, Mas-
frame axes, to facilitate asymmetric designs such as the sachusetts Institute of Technology, 2010.
[9] R. E. Kalman, “A new approach to linear filtering and predic-
VTOL tailsitter. The uncertainty in the observed wind tion problems,” Journal of basic Engineering, vol. 82, no. 1,
velocity vector is captured by the Kalman filter and nat- pp. 35–45, 1960.
urally propagated to the state uncertainty. Furthermore, [10] J. Etele, “Overview of wind gust modelling with applica-
tion to autonomous low-level UAV control,” Mechanical and
the experiments designed to tune the model parameters Aerospace Engineering Department, November 2006.
involve outdoor flight of simple maneuvers, eliminating [11] M. Skliar and W. Ramirez, “Implicit kalman filtering,” Inter-
the dependency on a wind tunnel or motion capture national Journal of Control, vol. 66, no. 3, pp. 393–412, 1997.
[12] L. Meier, D. Honegger, and M. Pollefeys, “PX4: A node-based
system, which often pose practical constraints. Finally, multithreaded open source robotics framework for deeply em-
the wind estimation has been evaluated in real flight bedded platforms,” in 2015 IEEE International Conference on
tests and compared to a ground truth measurement. The Robotics and Automation (ICRA), pp. 6235–6240, May 2015.
results have been successful with an approximate estima-
tion error below 15 ◦ in wind direction and 0.4 m/s in wind
magnitude. Notably, the deviation of the estimated wind
direction from the measured direction lies within the
range of measurement accuracy and output resolution
of the sensor itself.
The result of this work is a ready-to-use estimate of the
wind speed and direction, which can be used for adaptive
control strategies, e.g. autonomous landing or energy

3952

You might also like