Data Driven Dynamics Modelling Using Flight Logs Signed2
Data Driven Dynamics Modelling Using Flight Logs Signed2
Student Paper
Author(s):
Galliker, Manuel Yves
Publication date:
2021-06-24
Permanent link:
https://doi.org/10.3929/ethz-b-000507495
Rights / license:
In Copyright - Non-Commercial Use Permitted
This page was generated automatically upon download from the ETH Zurich Research Collection.
For more information, please consult the Terms of use.
Autonomous Systems Lab
Prof. Roland Siegwart
Semester Thesis
Data-Driven Dynamics
Modelling Using Flight Logs
Lecturers may also require a declaration of originality for other written papers compiled for their
courses.
__________________________________________________________________________
I hereby confirm that I am the sole author of the written work here enclosed and that I have compiled it
in my own words. Parts excepted are corrections of form and content by the supervisor .
Preface v
Abstract vii
Symbols ix
1 Introduction 1
1.1 Dynamics Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Parametric Models . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Model Free Approaches . . . . . . . . . . . . . . . . . . . . . 2
1.1.3 Combined Approaches . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Dynamics Modelling for UAVs . . . . . . . . . . . . . . . . . . . . . 3
1.2.1 Dynamics Modelling for Fixed-Wings . . . . . . . . . . . . . 4
1.2.2 Dynamics Modelling for Multi-Rotors . . . . . . . . . . . . . 4
1.2.3 Dynamics Modelling for VTOLs . . . . . . . . . . . . . . . . 4
1.2.4 Data Collection for System Identification of UAVs . . . . . . 4
1.3 Use case of dynamics models for UAVs . . . . . . . . . . . . . . . . . 5
1.3.1 Dynamic Models and System Analysis . . . . . . . . . . . . . 5
1.3.2 Dynamic Models in Simulation . . . . . . . . . . . . . . . . . 5
1.3.3 Dynamic Models for Control and Planning . . . . . . . . . . 6
3 Data Handling 10
3.1 Data Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1.1 Data Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1.2 Data Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1.3 Flight Time Selection . . . . . . . . . . . . . . . . . . . . . . 10
3.1.4 Data Resampling . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.1.5 Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.1.6 Airspeed Computation . . . . . . . . . . . . . . . . . . . . . . 11
3.2 Data Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
ii
4 Modeling of UAV Components 13
4.1 Rotor Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.1.1 Standard Rotor Model . . . . . . . . . . . . . . . . . . . . . . 14
4.1.2 Tilting Rotor Model . . . . . . . . . . . . . . . . . . . . . . . 16
4.1.3 Bidirectional Rotor Model . . . . . . . . . . . . . . . . . . . . 17
4.2 Aerodynamic Models . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2.1 Wing Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2.2 Control Surface Deflection . . . . . . . . . . . . . . . . . . . . 19
4.2.3 Model Interpolation . . . . . . . . . . . . . . . . . . . . . . . 20
4.2.4 Full Fuselage Drag Model . . . . . . . . . . . . . . . . . . . . 21
4.2.5 Elevator Model . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.6 Tilting Wing Section Model . . . . . . . . . . . . . . . . . . . 22
5 Parameter Optimization 24
5.1 Linear Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.1.1 Multiple Linear Regression . . . . . . . . . . . . . . . . . . . 25
5.1.2 Quadratic Program . . . . . . . . . . . . . . . . . . . . . . . . 26
5.2 Non-Linear Optimization . . . . . . . . . . . . . . . . . . . . . . . . 26
5.3 Choice of Optimization Parameters . . . . . . . . . . . . . . . . . . . 27
5.3.1 Lumping of Parameters . . . . . . . . . . . . . . . . . . . . . 27
6 Vehicle Models 29
6.1 Multirotor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.2 Quadplane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.3 Delta Quadplane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.4 Tiltwing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7 Model Analysis 35
7.1 Force and Moment Predictions . . . . . . . . . . . . . . . . . . . . . 35
7.1.1 Prediction Metrics . . . . . . . . . . . . . . . . . . . . . . . . 35
7.2 Parameter and Data Analysis . . . . . . . . . . . . . . . . . . . . . . 36
7.2.1 Parameter Biases . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.2.2 Parameter Bounds . . . . . . . . . . . . . . . . . . . . . . . . 37
7.2.3 Parameter Confidence and Significance . . . . . . . . . . . . . 37
7.2.4 Separate Observabilily of Parameters . . . . . . . . . . . . . . 38
7.2.5 Dedicated Maneuvers . . . . . . . . . . . . . . . . . . . . . . 39
8 Results 40
8.1 Multirotor and Quadplane . . . . . . . . . . . . . . . . . . . . . . . . 40
8.1.1 Multirotor Model Results . . . . . . . . . . . . . . . . . . . . 40
8.1.2 Quadplane and Delta Quadplane . . . . . . . . . . . . . . . . 43
8.1.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
8.2 Tiltwing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
8.2.1 Force Prediction . . . . . . . . . . . . . . . . . . . . . . . . . 45
8.2.2 Force Parameter Analysis . . . . . . . . . . . . . . . . . . . . 47
8.2.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Bibliography 57
Hereby I want to acknowledge the people that supported me with the knowledge and
skills needed to conduct the research and writing of this thesis. I would like to thank
my supervisors Jaeyoung Lim, Dr. Nicholas Lawrance, Dr. Thomas Stastny and
Dr. Prof. Roland Siegwart for hosting this thesis and the many hours of supporting
me. I also want to thank Markus Achtelik for supporting the thesis from the side of
Auterion, providing valuable industry inside and flight log data. David Rohr from
ASL supported me with flight data collection and valuable information about the
Aero mini tiltwing model. Here I would also like to mention Fabian Kaiser, who in
my time working at Wingtra has supported and mentored me in learning python
which benefited me greatly in this thesis. To conclude, I also want to thank my
family and friends for the continuing support, care and love.
v
Abstract
A good dynamics model has many useful applications such as in simulations and
control. Obtaining such models using conventional methods such as wind tunnel
testing for UAVs can be time intensive, challenging and time intensive. For this
reasons this thesis presents a data-driven dynamics modelling pipeline for a unified
flight log(uLog) format. The objective hereby is to provide a framework to obtain a
dynamics model without the requirement for additional infrastructure, such as for
example a wind tunnel, just by analyzing the flight data provided by the by default
on the vehicle installed sensors. The dynamics models are obtained by minimizing
a cost function of a parametric model for the given data. The developed framework
is demonstrated with several types of different UAV models, including multirotors
and vertical take-off and landing (VTOL) UAVs. The obtained dynamics models
showed promising results and generated good force predictions. However, it was
also shown that the selection of used data is crucial to obtain a model that is well
generalizable and represents the underlying physical effects which were modeled.
For this more flight data with dedicated maneuvers would be necessary.
vii
Symbols
Conventions
a, A scalar (normal letter)
a vector (lower case bold letter)
A matrix (upper case bold letter)
c normal coefficient
c̄ coefficient adjusted for normalized actuator inputs
Symbols
α angle of attack
αs stall angle
αB angle of attack with respect to body frame
αW angle of attack with respect to wing frame
αtilt wing tilt angle with respect to body frame
δ control surface deflectionS
η rotor angular velocity
rotation vector
λ model interpolation parameter
φ, θ, ψ roll, pitch and yaw angle
ψ stacked angular accelerations
ψpred predicted stacked angular accelerations
ρ air density
Σ covariance matrix
τmax maximum tilting angle
ω vehicle angular velocity
ameasured stacked accelerometer measurements
ainertial stacked accelerations relative to inertial frame
apred stacked predicted accelerations
c stacked parameter
c∗ stacked optimal parameters
D rotor diameter
eA A A
x , ey , ez unitary basis vectors of frame A
ix
F force
f system dynamics function
g gravitational acceleration
krotor rotor angular velocity constant
kcs control surface deflection constant
h measurement model function
J rotor advance ratio
M moment
m mass
p̂rotor normalized rotor thrust direction
r position
R rotation matrix
t time
u stacked normalized system inputs
u normalized system input
va airspeed
va,xz airspeed projected into xz-plane
va,x , va,y , va,z components of airspeed in body frame in x, y and z direction
v|| airspeed parallel to rotor axis
v⊥ airspeed perpendicular to rotor axis
w airspeed velocity due to propwash
X feature matrix
x stacked system states
x̂ stacked estimated system states
y stacked system outputs
Indices
af attached flow region
c continuous
cs control surface
d discrete
D drag
DM drag moment
F force
fp flat plate
g ground speed
k discrete time-step index
L lift
M moment
ps post stall region
RM rolling moment
T thrust
w wind speed
x x axis
y y axis
z z axis
Frames
Frames are denoted as lowered capital letters before a vector. E.g. Br denotes the
vector r expressed in frame B.
Introduction
Good knowledge of the dynamics of a UAV is not only helpful in analyzing the
performance of the system but can also be used in other applications such as simu-
lations and control of the vehicle. The system dynamics are usually expressed in a
mathematical model, which is hereafter referred to as the dynamics model. To the
complex and non-linear nature of aerodynamics also results a in general non-linear
system behaviour and obtaining system knowledge typically involves some form of
experiments and data collection. This thesis will focus on obtaining a dynamics
model from flight logs data, containing measurements of the already installed sen-
sors and the outputs generated by the flight controller. By not using any additional
sensors or infrastructure, such as for example a wind tunnel, this approach is very
accessible. A special focus in this thesis is set on the dynamic models for vertical
take-off and landing (VTOL) UAVs.
δ
x = ẋ = fc (x, u) (1.1)
δt
Often, the internal states of a system can not or not completely be observed in a
direct way and have to be related to the measurable system outputs y through a
measurement model.
y = hc (x, u) (1.2)
Hereby, the system dynamics are described in continuous time, since the physics
governing dynamics and kinematics of mechanical systems are continuous in nature.
Nonetheless, it can be many times advantageous to express the dynamics of the
system in discrete time due to the discrete nature of computer systems. Hereby,
the resulting discrete time system dynamics can be obtained by discretization of the
continuous time dynamics using for example Euler or Exact discretization methods.
With this a set of discrete equations for the system dynamics and measurement can
be obtained.
1
Chapter 1. Introduction 2
yk = hd (xk , uk ) (1.4)
Since both the measurement data and the later described applications of the dynam-
ics model are in discrete-time this thesis will from now on only focus on discrete-time
dynamic systems.
The process used to obtain such a dynamics model is referred to as system iden-
tification (SysID). In many cases the complete system dynamics are not known
beforehand and the dynamics model is obtained or improved by using measured
data.
yk = hd (xk , uk , c, t) (1.6)
For the process of SysID with a parametric model, only the parameter vector c
is unknown and all the other properties are given, measured or estimated and the
former is generally obtained by an optimization over the data set.
number of needed parameters to describe the problem is not finite. This approach
can capture dynamics not explicitly specified by the operator, as outlined in [5].
On the down side this approach has generally a larger sample complexity than the
parametric model and a physical interpretation by the user is in general not possible,
as outlined in [2] and [3]. Since the obtained function fd does not necessarily need
to describe the underlying physical effects this method can be prone to over-fitting
and could predict completely wrong and nonphysical dynamics for a state space
region it has not been trained on, which complicates the validation of model free
approaches.
Fk = fF (xk , uk ) (1.7)
Mk = fM (xk , uk ) (1.8)
Figure 1.1: Examples of forces and moments acting on fixed-wing UAV [6]
Chapter 1. Introduction 4
Due to the assumption of constant mass and the lack of kinematic constraints the
linear and angular velocities can be obtained by the discrete integral of the forces and
moments and the pose of the system by the discrete integral of the linear and angular
velocities. As an example the numerical integration of the linear accelerations to
obtain linear velocities using the trapezoidal method is shown below.
T
vi,k+1 = vi,k + (ai,k+1 + ai,k ) (1.9)
2
for a first code verification step and undesired behaviours can be detected before
they lead to damage or in the worst case a crash of the UAV system. Furthermore,
a good simulation can also be used to make a first fast assessment of a controller
performance. A Simulation can also be used for pilot training to eliminate the
risks of training on a real UAV in flight while lowering training cost and increasing
accessibility. This is especially for VTOLs a real industry need and the reason this
Thesis was conducted in collaboration with Auterion.
This thesis aimed to develop a pipeline that can be used to estimate a UAV dynamics
model from flight data using the unified log (ULog) file format. Hereby, the aim is
to obtain the best possible dynamics model using only the standard sensors already
present on a UAV. Due to its more interpretable results and easier possibility to
characterize the results the work done in this thesis focuses on parametric models.
For the reasons of relevance and novelty a special focus is placed on VTOL UAVs.
Inertial Measurement Unit A UAV typically has one or multiple inertial mea-
surement units (IMU), which each consist of an MEMS (microelectromechanical
system) accelerometer and MEMS gyroscope. The accelerometer measures the lin-
ear accelerations along its principal axis (relative to the inertial frame) minus the
gravity vector.
7
Chapter 2. Data Driven Dynamics Pipeline for ULogs 8
The gyroscope uses the Coriolis effect to measure the angular velocities in radians/s.
A direct measurement of angular accelerations is typically not present.
Airspeed Sensor The airspeed sensor uses a differential pressure sensor and a
Pitot tube to measure the airspeed parallel to the Pitot tube. In general it is
only present on fixed-wing and VTOL platforms, but not on multirotors. The
most widely used membrane based differential pressure MEMS sensors have low
sensitivities for small pressure differences and need a significant incoming airflow
to deliver meaningful results as can be seen by the specified minimum pressure
difference in the datasheet of the commonly used MS4525DO sensor (Appendix ??).
The necessary differential pressures for a meaningful measurement are in practice
only reached at around 5m/s.
1
apred,k = fF (xk , uk , c) (2.3)
m
A similar approach was used for the prediction of the moments and tested on some
test logs generated by the Gazebo simulator [13]. Since for real flight logs in com-
parison to the logs generated by the simulator no measurement of the angular
acceleration is present, as explained in 2.1.2, this approach was not followed any
further and the focus of the thesis was set on the force prediction. It would be
possible to take the derivative of the measured angular velocity as an estimate of
the angular acceleration. However, the angular velocity measurements of real flight
logs were already quite noisy. Taking the derivative would only increase this effect.
To achieve a reasonable estimate of the angular dynamics of the system it seemed
more promising to extend the existing by including the propagation error (obtained
angular velocity from integrated moments and obtained attitude from integrated
angular velocity) in the optimization. The same approach could also be used to
improve the force prediction by taking velocity and position into account. Due to
time constraints these approaches were not followed further.
Data Handling
10
11 3.2. Data Selection
3.1.5 Normalization
Data normalization is then performed for all the actuator inputs u, which are typ-
ically logged as a on-time of the pulse width modulation (PWM) signal. Outputs
corresponding to rotors are in general normalized to be between 0 (no thrust) and
1 (full thrust). Outputs for control surfaces are normalized to be between -1 (max.
negative deflection) and 1 (maximum positive deflection). In both cases the inputs
are normalized using the specified minimum and maximum PWM values specified
in the ULog file. Currently this is still done manually.
B va = CBI I vg (3.1)
Out of a good airspeed measurement from the airspeed sensor and under the as-
sumption of no slipstream velocity (va,y = 0) it is possible to estimate the wind
speed vector. With a good wind speed estimate a better version of the airspeed
could in the future be obtained as follows:
B va = CBI ( I vg − I vw ) (3.2)
The tool is published under an open source license with the name Visual Dataframe
Selector and can be accessed in [15]. Its use in the pipeline is optional and config-
urable.
Chapter 4
Modeling of UAV
Components
Since many UAVs are built up from similar physical components it was decided to
use a modular approach for this project. This way the dynamics model for each UAV
model type (e.g. multirotor, quadplane, ect. ) is built up from basic component
building blocks, which can be shared between different models. A model component
is a physical subsystem, that generates forces and moments which are then used to
calculate the forces and moments of the hole system and is implemented with its
own class. A certain type of component generates the defined forces and moments
depending on a set of predefined properties and optimization coefficients, which are
used characterize the behaviour of the model component. These building blocks are
subdivided into rotor models and aerodynamic models.
Figure 4.1: Model Type using aerodynamic and rotor models as building blocks
To account for differences between UAV model types (e.g. different multirotors)
and keep the rotor and aerodynamic models as general as possible each model type
and its sub components are configurable by a yaml config file.
Model Component Overview Table For an improved overview over the dif-
ferent developed model components a table with the following content is added to
each components description:
• Temporal Data: The data needed in the model for each timestamp. This
data is generally obtained from the flight log.
13
Chapter 4. Modeling of UAV Components 14
As a core component of any dynamics model, a modular rotor model design was
developed using the normalized actuator input value (urotor ∈ [0, 1]). A Rotor
model can be introduced by specifying the rotor axis (along which thrust acts),
rotor position and turning direction.
Local Airspeed
The airspeed at the rotor position can differ slightly from the airspeed of the CoG
due to rotational movement relative to the air due to the angular velocity. Using
the angular velocity ω and the position of the rotor relative to the centre of gravity
B rrotor the local airspeed is obtained:
By projecting the local airspeed into the direction of the rotor axis B p̂rotor results
in the local airspeed parallel to the rotor axis.
By then subtracting the parallel local airspeed from the local airspeed the compo-
nents perpendicular to the rotor axis are computed as follows:
The rotor thrust force uses a common model and consists of two main components.
The first thrust coefficient CT 0 is used to model the thrust force when no external
inflow parallel to the rotor axis is present. The second thrust coefficient CT 1 models
the effect of decreasing angle of attack on the propeller blades due to the inflow
velocity depending on the advance ratio J.
B v||
J= (4.6)
ηD
Where D is the propeller diameter. Hereby, the second thrust coefficient CT 1 is
multiplied with the advance ratio J and hence specifies at what advance ratio J the
rotor does not produce thrust anymore.
The two coefficients are not distinguishable for a given advance ration. This means
that the data used to obtain this model should contain data points for a range of
different advance ratios.
Chapter 4. Modeling of UAV Components 16
The rotor drag force exists due to the local airspeed perpendicular to the rotor axis
and acts in opposite direction to it. Similarly to the rotor drag model in for example
[9], the rotor drag force is modeled as linearly proportional to the perpendicular
component of the local velocity and the angular velocity
B FD = −cD η B v⊥ , (4.8)
The rotor drag moments is a direct effect of the drag forces on the turning rotor
blades acting in opposite directions. Similar to the rotor thrust force the drag
moment coefficient is a linear function of the advance ratio.
The rotor rolling moment is generated due to the local airspeed component perpen-
dicular to the rotor axis. This component results in the advancing blade generating
more lift than the retracting blade which results in a rolling moment.
Hereby, the direction of the rolling moment depends on the turning direction of the
rotor.
The tilting rotor model was developed on top of the standard rotor model to enable
its application for VTOL platform such as tiltrotor or tiltwing UAVs. It accounts
for the same forces and moments and expands the existing functionality by enabling
the rotation of the rotor axis around a rotation (tilting) axis.
17 4.1. Rotor Models
Figure 4.3: Illustration of tilting rotor with used vectors and angles and resulting
forces
The new rotor direction is then obtained by converting the active rotation vector
to a rotation matrix which can be applied to the rotor axis for zero tilt angle.
The bidirectional rotor model can reverse the turning direction of the propeller in
flight and therefore reverse the thrust force. This is used for example in some race
Chapter 4. Modeling of UAV Components 18
quad models and is achieved by extending the standard rotor model with a nor-
malized input range from -1 to 1 for maximum rotational speed in both directions.
The rotor axis is computes as follows:
Figure 4.4: Illustration of bidirectional rotor with thrust for clockwise and counter
clockwise turning direction
The wing model accounts for the lift and drag force acting in the xz-plane of the
body frame.
19 4.2. Aerodynamic Models
q
va,xz = 2 + v2
va,x (4.16)
a,z
For simplicity, the lift and drag forces are computed in the aerodynamic (also sta-
bility axis) frame before they are converted back to the body frame. This way drag
always acts in negative x direction and lift in the negative z direction of the aero-
dynamic frame. The stability axis frame is obtained by rotating the body frame
around the y axis by the angle of attack α. This way the x-axis of the aerodynamic
frame always points in the direction of the airspeed B vair,xz .
Figure 4.5: Lift and drag force acting along the principal axis of the aerodynamic
frame
Out of the airspeed projected into the xz plane the angle of attack can be computed.
The airspeed is defined as the angle from the aerodynamic frame to the wing frame
and a positive value indicates flow coming from slightly below the wing resulting in
a positive lift force.
Should a better measured model between the servo input and the control surface
angle be present is is always possible to model the relation as a polynomial function
of ucs .
Chapter 4. Modeling of UAV Components 20
eλ(α+αs )
σ(α) = 1 − (4.19)
(eλ(α+αs ) eλ(α−αs ) )
Hereby, αs denotes the stall angle and λ a scaling factor used to control the band-
width of the interpolation.
Figure 4.6: Symmetric sigmoid function for a stall angle of 15° and a scale factor of
50
The Lift and drag forces are then obtained by combining the symmetric sigmoid
function with the lift and drag force components for the attached flow and post
stall region.
Lift
As described above two different models for the attached flow and post stall regions
are used for lift and drag respectively. For the attached flow region, where the angle
of attack is smaller than the stall angle, the lift force A FL,af is modeled as a linear
dependency on the angle of attack and the sum of control surface deflections of the
wing.
A1 2
A FL,af = −ez ρA va,xz (cl0 + clα α + clδ (Σ δi )) (4.22)
2
21 4.2. Aerodynamic Models
The control surfaces of the wing can include both ailerons and flaps and their
deflection is denoted by δ.
For the post stall region a simple flat plate model is used where the maximum lift
force A FL,ps is obtained at an angle of attack of 45°.
1
A FL,ps = −eA 2
z ρA va,xz sin(2α) (4.23)
2
Drag
For the attached flow region the drag force A FD,af is modeled by a quadratic
dependence on the angle of attack and a linear dependence on the sum of the
absolute control surface deflections.
1
A FD,af = −eA 2 2
x ρA va,xz (cd0 + cdα α + cdα2 α + cdδ (Σ |δi |)) (4.24)
2
For the post stall region there is again a flat plate model used characterized by a
minimal drag for at 0° and a maximum drag coefficient at 90° angle of attack.
1
A FD,ps = −eA 2 2 2
x ρA va,xz ((1 − sin(α) )cs,min + sin(α) cs,max ) (4.25)
2
The full fuselage drag model account for the drag force on the fuselage in all three
different axis with a simple drag coefficient for each axis.
ρ
B Fdrag,f = − (eB cD,x va,x |va,x | + eB B
y cD,y va,y |va,y | + ez cD,z va,z |va,z |) (4.26)
2 x
B Fdrag,f = −eB
y CD,f,y va,y |va,y | (4.28)
the default angle of the elevator control surface are not separately observable from
the main wing forces, since depend on the same parameters and act in the same
direction. Therefore, this model only computes the list change due to the elevator
deflection.
1
A FL = −eA 2
z (1 − σ(α)) ρA va,xz clδe δe (4.29)
2
1
= −eA
A FD
2
x (1 − σ(α)) ρA va,xz cdδe |δe | (4.30)
2
Since none of the modeled VTOL vehicles had a rudder this component was not yet
modeled.
The tilting wing model section is one of the more specialized components and was
developed for the tiltwing model, for which the propeller down-wash over the wing
has a significant contribution to the local airspeed around the wing. To account for
different angular velocities of the rotors the wing is split up in different segments
for each rotor.
Tilting Angle
The tilting functionalities of the tilting wing section model is inherited from the
rotor assigned to the wing section and uses the equations 4.31 and 4.12 introduced
above. In addition it also introduces the tilt angle αtilt as a scalar value, following
the same convention as the angle of attack.
Local Airspeed
Since the centre of pressure of each wing section B rcps is at a different position
the local airspeed can be adjusted for the movement relative to the air due to the
angular velocity.
23 4.2. Aerodynamic Models
Out of the airspeed projected into the xz plane the angle of attack relative to the
wing can be computed by subtracting the tilt angle from the angle of attack relative
to the body frame. Note that the angles are defined from aerodynamic/wing frame
to body frame and the positive direction is the shared y axis. Hence, For the
configuration above αtilt and αB are negative.
Forces
The Tilting wing model section hereby computes the lift and drag forces using the
same mathematical model as the standard wing model (section 4.2.1) with the local
airspeed and angle of attack computation as shown above.
Chapter 5
Parameter Optimization
The optimization framework is the building block used to find the optimal parame-
ters minimizing a certain cost function. As described in section 2.2, the goal hereby
is to minimize the the squared acceleration prediction error.
As can be seen the predicted accelerations are a function of the estimated state
vector x̂, the input vector u and the coefficient vector c. The optimization is
concerned with finding the optimal parameter vector c. For this different numerical
strategies are used depending on how the prediction of the acceleration depends on
the parameter vector.
The acceleration prediction is computed out of the mass and total force prediction
of the model and is expressed in body frame.
1
B apred (x̂, u, c) = B Ftot,pred (x̂, u, c) (5.2)
m
The angular acceleration is obtained by taking in addition to the moments also the
effect of the rotating body frame into account.
Both the measured and predicted linear and angular accelerations were implemented
as stacked row vectors of the following form:
ax,1 ψx,1
ay,1 ψy,1
az,1
, ψ = ψz,1
a=
ax,2 ψx,2 (5.4)
.... ....
az,n ψz,n
The acceleration vectors used in the optimization (āmeas and āpred ) are the ob-
tained by either stacking the linear and angular accelerations or just choosing one
components, depending on whether the operator desires to estimate forces, moments
or both at the same time.
24
25 5.1. Linear Optimization
For the linear optimization each of the used model components return a feature
matrix (e.g. Xrotors ) by separating out all the desired estimation parameters c. The
single feature matrices are then stacked horizontally to achieve the full prediction
matrix.
evaluation. On the downside this method does not allow the implementation of
constraints.
Apart from a good initial guess also the constraining of the parameters is very
important here. On top of the advantages described in section this also helps by
excluding both other local minimas 5.1.2 this helps in excluding other minimas, to
which the algorithm may converge. This is very important, since due to the nonlin-
ear nature of the problem the problem there could be multiple sets of parameters c
that result in a lower cost for the given data b just predicting well in sum instead
of representing the modelled effects.
Due to the more complex optimization at hand the non-linear optimization al-
gorithms are computationally much more expensive than the linear optimization.
Therefore the amount of data used in the optimization had to be drastically reduced.
The non linear optimization was implemented using the SciPy library [17]. In
comparison to the linear optimization this framework does not operate directly on
the matrix data, but needs a cost function passed to the optimizer. This cost
function uses the current set of parameters c as an input to compute the force
27 5.3. Choice of Optimization Parameters
prediction of each modelled components. For the model components where the this
relation is non-linear a method for the force prediction was included directly in the
respective model. The total predicted accelerations were then computed out of the
sum of the component forces.
k
1 X
apred (x̂, u, c) = Fi (x̂i , ui , cI ) (5.12)
m i=1
Those properties are not contained on the flight data and have to either be manually
measured on the UAV or estimated. When it is impossible to obtain a measurement
with sufficient accuracy it is also possible to factor those properties together with
the optimization coefficients and estimate a lumped parameter.
This is for example the case with the angular rotor velocity, which is not measured
using a typical ESC. This results in combining the square of the angular velocity
constant krotor with the two rotor thrust coefficients for the thrust prediction. This
can be seen by substituting equation 4.1 into 4.7.
2
c̄T 0 = krotor cT 0 (5.14)
2
c̄T 1 = krotor cT 1 (5.15)
Without an intermediate measurement the optimizer can not distinguish between
the separate factors making up the lumped coefficient and there are exists no unique
solution for retrieving the separate parameters back from the lumped coefficient.
to the physical drone. In this case measuring those properties has the advantage
of resulting in optimization parameters, that are closer to the modelled physical
coefficients and therefore more comparable between different models and easier to
constrain. In contrast it is much harder to get an accurate measurement of the
inertia matrix I. Here it might be beneficial to include its contribution into the
optimization due to the non linear influence of its components. This should be
investigated further when focusing more on the moment estimation in future.
Chapter 6
Vehicle Models
To model the full dynamics of a UAV a full vehicle model is constructed using the
component classes introduced in chapter 4. The full forces and moments acting on
the system is then obtained by the sum of its components:
n
X
Ftot = Fi (6.1)
i=1
n
X
Mtot = Mi (6.2)
i=1
In this thesis there were a total of 4 models developed in the order introduced
below. These models were chosen as stepping stones towards the model for the
tiltwing VTOL UAV, on which the thesis lays a special focus. With the modular
approach of the developed component classes it would be possible to quickly develop
additional models when needed such as for example a fixed-wing model.
6.1 Multirotor
The first and simplest developed model was the multirotor model. It is comprised
of a specified number of upwards facing rotors and a fuselage drag model with
components for all three directions. Hereby, it is assumed that all the rotors are
equal and the rotor coefficients are estimated on the sum of all rotor forces. As can
be seen in the table above this model has only linear dependencies on its parameters
and can therefore use the linear optimization techniques.
29
Chapter 6. Vehicle Models 30
6.2 Quadplane
Full Fuselage
va , ρ cD,y
Drag
The quadplane model corresponds to PX4s standard VTOL and was developed for
testing with the gazebo simulator. It uses a total of 5 standard rotors to model the
four vertical and the pusher rotor. Hereby the pusher rotor is modeled by a separate
set of coefficients while the assumed to be identical vertical rotors share the same
coefficients. It furthermore includes a wing with two ailerons and an elevator.
31 6.3. Delta Quadplane
The fuselage drag is modeled to only contain the drag force in the y-direction. Since
the drag forces in the xz-plane for wing and fuselage both depend on the same
temporal data (va,xy , ρ) and act in the same direction they are not distinguishable.
For this reason the drag effects in the xz-plane of the wing and the fuselage will be
lumped together.
To achieve a linear model for the quadplane the stall angle αs and the model
blending factor λ were specified by the operator using domain knowledge. It would
however be interesting to extend on the work done with the linear model by including
the non-linear parameters in the optimization at some point.
Full Fuselage
va , ρ cD,y
Drag
The delta quadplane model was then developed by adapting the standard quadplane
model, since this airframe was seen to be more common which was thought to make
the data acquisition easier.
Chapter 6. Vehicle Models 32
In comparison to the standard VTOL quadplane the delta quadplane has no tail.
Therefore the elevator is omitted and the control surfaces on the wing are used to
control both pitch and roll angle of the UAV. Since they combine the two functions
they are sometimes referred to as ailevons. Also the coefficients of this model were
obtained by fixing the stall angle αs and the model blending factor λ and using a
linear optimization technique.
6.4 Tiltwing
The tilwing model was the final and most challenging of the models that was de-
veloped in this thesis. It was chosen, because it offers challenging and strongly
33 6.4. Tiltwing
coupled dynamics and because it was the only VTOL model where there existed a
possibility to collect flight data within the scope of this thesis.
The tiltwing model was specifically developed for the Aero Mini tiltwing, but could
be adapted to other tiltwing models fairly easily. It can tilt its wing with the 4
rotors by 90 from a vertical to a horizontal position. Since the propwash induced
by the rotors influences the airspeed around the wing behind it the latter was split
up into 4 sections. Each section contains a tilting rotor and a tilting wing section.
The local airspeed is then computed as explained in section 4.2.6. Hereby all tilting
wing sections and tilting rotors share the same optimization coefficients.
Furthermore, the tail rotor of the tiltwing model, used to help control the pitch
angle in hover, is modeled by a standard rotor. Also an elevator model and the
fuselage drag model for all three directions is present. In comparison to the two
quadplane models introduced above the tilting of the wing results in the fuselage
drag forces for xB and zB (which are calculated in body frame B) direction to not
always be aligned with the wing drag forces for xW and zW (which are calculated
in wing frame W ).
Similar to the quadplane models above also here the the stall angle αs and the model
blending factor λ were fixed by the operator as a first step. The wing profile is
symmetric and similar to a National Advisory Committee for Aeronautics (NACA)
0018 profile. This information was used to set the stall angle to 15 and to constrain
the lift offset coefficient cL0 and the linear drag coefficient cDα to be equal to zero.
This way the modelled wing produces no lift and minimum drag at zero angle of
attack.
The nonlinear influence of the rotor thrust force on the airspeed around the wing
section was kept in the model and its coefficients were added to the non-linear
optimization.
In contrast to the other models there was a lot more information about vehicle
Chapter 6. Vehicle Models 34
properties such as mass, wing area and the mapping from actuator output to control
surface deflection and rotor angular velocity present. This information can be seen
in appendix A and was incorporated into the model.
Chapter 7
Model Analysis
Root Mean Squared Error The root mean squared error (RMSE), which is
minimized by the optimization, was used as a first metric to asses the performance
of the fit. For the defined cost function it is computed as follows:
It can be interpreted as the average acceleration prediction error and gives a good
R2 Error In contrast to the RMSE the R2 error returns the ratio between the
variance explained by the model and the total variance present in the data. This
allows for a better comparison between the performance on different data sets, since
a data set that contains a larger set of the state space typically results in a larger
variance in the acceleration data and therefore a larger RMSE. For the R2 value
that does not necessarily need to be case.
Pn
(ameas,i − apred,i )2
R2 = Pi=1
n 2
(7.2)
i=1 (ameas,i − amean )
35
Chapter 7. Model Analysis 36
Sensor Bias The biases arising from the sensor measurements can have a strong
influence on the parameter estimation of the model. The sensor biases can usually
only be mitigated by the estimator to a certain extent. The mitigation is especially
hard for systematic biases, such as an IMU placed outside of the centre of gravity
or measurement drifts due to for example the temperature change due to electron-
ics heating up the electronic compartment of the UAV. Although some of these
systematic biases, such as the IMU offset where the introduced errors correlates
with the angular velocity, could be included in the optimizer many others like the
temperature drift of for example the IMU can many times not be inferred from the
data set. Under the assumption of a zero mean amplitude distribution of the noise
this effect will be mitigated by the optimizer when enough data is used.
Modelling Bias The modelling bias describes the influence of physical effects
that were not accounted for in the model structure or data processing of the model.
One such example for this thesis would be the neglected influence of the wind on the
airspeed. For a good parameter fit the effects of the neglected components should
be small in comparison to the modeled effects.
Data Bias Additional bias can also be introduced by the distribution of data. If
a certain region of the state space is over represented this leads to the regions with
higher data density being more heavily weighted in the fit. To mitigate this effect
the Visual Dataframe Selector introduced in section 3.2 was used to visualize the
37 7.2. Parameter and Data Analysis
data distributions and to choose a suitable subset of the data. A future extension
to the framework could also be a weighting of the data points according to their
occurrence.
In reality all different biases will be present to a certain extent for all coefficients.
There are certain tests and methods than can be employed to analyze, indicate or
mitigate the effects of some of these biases. Unfortunately it is very hard to cover all
possible biases with a standardized approach that works for every model and a good
domain and model knowledge is still critical in the parameter and data analysis.
If some parameters can be observed to go to the bounds after the optimization, this
can then be used as an indicator, that the modelled effect was either not represented
well enough in the data or used to overcompensate another effect.
Linear Models For the linear model, for which the influence of the single coeffi-
cients can be separated, there exists already a range of standard tools that can be
used to assess the significance of a value for linear regressions. One such method
investigated in this thesis is the p-value test. It generates a quantitative metric
Chapter 7. Model Analysis 38
for whether the relationship between an independent variable (the optimization co-
efficient in our case) and the dependent variable (the acceleration prediction) is
statistically significant by controlling for the effects of all the other dependent vari-
ables. It works by defining a null hypothesis, which is usually that the coefficients
equals zero and therefore has no effect of the dependent value. The p-value then
indicates the amount of evidence for the null hypothesis as a value between 0 and
1. Hereby, a low value means that it is likely, that the parameter has an influence
on the dependent variable. A common significance threshold hereby is the value of
0.05, but this can be adapted depending on the needs of the project.
Linear Model For the linear model the separate observability can be assessed
by analyzing the dependencies between the rows of the feature matrix X. Each
row of X corresponds to the the influence of a certain coefficient on the predicted
accelerations given the used data. Therefore the covariance between two different
rows of X indicates how similar the effect of the two different effects is up to a scale
factor. Hereby, a correlation value close to 1 or −1 means that the effects are not
well separately observable for the given data.
Σ = Corr(X) (7.3)
Cov(Xi , Xj )
Σij = p (7.4)
V ar(Xi ) V ar(Xj )
Unfortunately, there was not enough time to specify the needed maneuvers on top
of the development done in this thesis. Therefore, the author had to work with the
data that could be accessed in the limited time. To get better parameters for the
developed model and therefore further validate the work done the use of dedicated
maneuvers would be a required next step.
Chapter 8
Results
The four models were used together with data from the simulator and from flight
logs. The main results obtained by investigating the effect of the data and the
resulting dynamics predictions shall be introduced below.
The multirotor and the two quadplane models were used mainly as stepping stones
for the more complicated tiltwing model and to illustrate the parameter analysis
for the linear models.
The multirotor was used in a first step to mainly validate the rotor dynamics.
Here, it will also be used as a comprehensible example to show the different metrics
used for the parameter analysis of the linear models. Although the same metrics
are also valid for more complex linear models such as the quadplanes introduced
in section 6.2, the problems of significance and separate observability just become
more pronounced for those models.
The examples showed in this section were generated by configuring the multirotor
model for a quadrotor and by using data from the gazebo simulator, where the
drone was controlled manually with a joystick.
Acceleration Prediction As can be seen the regressed model for the multirotor
was able to obtain a very good acceleration prediction for the simulator model,
which is an important first step in validating the core functionalities of the model.
40
41 8.1. Multirotor and Quadplane
For some context on the data used in the optimization also the airspeed in body
frame, calculated as explained in 3.1.6, is included here.
RM SE = 0.1141 m/s2
R2 : 0.9994
Chapter 8. Results 42
Coefficient
cD,rotor cT 1,rotor cT 0,rotor cD,f,x cD,f,y cD,f,z
Name
As can be seen above, the influence of all parameters, expect the fuselage drag in
x-direction, is well observable in the data and gives a significant results.
By looking at the correlation matrix it can be seen that the strongest cross-correlations
exists between the coefficients for rotor thrust and fuselage drag in z-direction
(about -85%) and the rotor drag and fuselage drag in x − direction (about 80%).
This means that for the given data the effects of the rotor drag in x-direction and
the fuselage drag in x-direction are not well distinguishable. Also the estimated
drag coefficients for x and y differ a lot, which exceeds the expected difference of
the author for the frame of the IRIS quadcopter, which has a similar shape and
offers a similar area of resistance from the x and y directions. Together with the
p-value there are some indicator, that the parameter estimate for the drag in x di-
rection could potentially be improved by better highlighting this effect in the data
set. This could be done by inducing airspeed in the x-direction with movement
while also changing the collective thrust at the same point. But to make definitive
43 8.1. Multirotor and Quadplane
conclusions those experiments should be conducted in real flight data, for which the
correlation matrix and p-values might look quite different due to the for example
much larger noise floor.
When looking at the correlation matrix it can be seen, that there is also a quite
strong correlation between the rotor drag coefficient and the fuselage drag coefficient
for the y-direction. This suggests, that despite the p-values not indicating a bad
significance, the model components of rotor drag and fuselage drag in y-direction
could likely also be improved by exciting the dynamics along that axis for different
collective thrust values.
A similar strong correlation can be observed between the two motor thrust param-
eters. Similar to the drag in y-direction it is assumed that also this difference could
be highlighted a bit more by having a larger range of airspeeds in z-direction for
different collective thrust values. Hereby, it seems likely that the model, although
working well for the observed input and airspeed range, could perform significantly
worse for larger rotor inflow airspeed or collective thrust differences using the ob-
tained parameters.
In the end though, it is not trivial to asses a specific covariance or p-value threshold
from which on more data needs to be collected. This depends strongly on the use
case of the dynamics model. Furthermore, model components modelling closely
related effects, as for example the two coefficients for rotor thrust, will always have
a higher base correlation value than completely non related components. But the
presented metrics can nonetheless be used as indicators on which parts of the model
are least represented or observable in the data which can then be taken into account
when improving the data selection.
The above explained examples show, how the problem of significance and separate
observability and finding a close to physical parameter fit is not trivial even for this
very simple example, and how sensitive the problem is to the selected data.
log, downloaded from the public log repository https://logs.px4.io [24] respectively.
This limited the ceiling for validation and model parameter quality respectively.
Furthermore, by not knowing any information about the properties of the UAVs
used to generate the public flight logs like for example mass, wing area or propeller
diameter all those properties have to be lumped in into the optimization coefficients.
This makes the definitions of bounds and using domain knowledge in the analysis
of the many more coefficients much harder.
For this reason, even though a detailed analysis similar to the quadrotor model
could be shown this section, it is kept brief by design.
An example is shown above from a section of hover flight from a log from the
gazebo simulator. Below a acceleration prediction for the delta quadplane is shown.
Hereby, a cruise flight loiter segment from a mission flight is shown to also present
some data on the cruise dynamics, where the wing and puller rotor dynamics are
dominant. It was also observed, that the acceleration measurements in this log
contains a lot of noise, when compared with for example the tilt wing data. This is
especially the case in the z-direction. Also it can be observed, that the accelerations
in z- and x-direction seem to oscillate in a somehow periodic manner. This seems to
be the case due to the estimated airspeed neglecting the influence of wind, which is
estimated at around 5m/s from the log data. This would well explain the periodic
increase and decrease of the lift and drag force due to variations in airspeed. This
is a good example in showing the limitations of the current implementation of the
airspeed computation and motivates an improvement in that area.
45 8.2. Tiltwing
8.1.3 Conclusion
All the developed linear vehicle models offered some promising first results and seem
to be conceptually well suited to eventually deliver good parameter fits. However,
in order to fully validate the design more rigorous testing on real flight data is
needed. To achieve not only a model that predicts well in sum, but that delivers also
meaningful parameters the possibility to collect data and the design of maneuvers
to highlight all the relevant dynamics are crucial. Nonetheless the methods used
in the parameter analysis provided some good indications for how well a parameter
is fit. With more time and by iterating between maneuver design and parameter
analysis those methods could potentially be refined or extended.
8.2 Tiltwing
In contrast to the other model there was quite same data and measurements of the
system properties like mass and wing area present. The available data was generated
from manual flights and contained more dynamics excitation than a normal mission
flight. Due to the limited time of the thesis it was not possible to collect data with
dedicated maneuvers.
Acceleration Prediction The tiltwing model was used together with a training
dataset to estimate all the model coefficients.
Chapter 8. Results 46
In addition to the measured and predicted acceleration also the tilt angle is included
in the plot above. Hereby, a tilt angle of 90 corresponds to a vertical wing and a
tilt angle of 0 to the wing being fully horizontal. As can be seen above, the training
data contains a wide range of quite evenly distributed tilt angles. Since the tilting of
the wing is the main distinctive feature for this model this was chosen deliberately.
RM SE : 1.0799 m/s2
R2 : 0.9521
The force prediction of the model does a reasonable job in predicting the occurring
forces for the challenging dynamics of the tilt wing. Interestingly, the force predic-
tion seems to be more accurate in the direction the rotors are facing. This is a first
indicator, that the rotor models contribute more to the force estimate than other
components.
The coefficients obtained from the training data set were then used to predict the
forces on a completely unseen data set.
47 8.2. Tiltwing
As can be seen in Fig.8.8, the parameters obtained from the training set translate
well to the test set. Notable here is that in contrast to the training set, the test
set contains multiple transitions. Also here a good prediction is generated which
indicates, that the obtained results are to a certain extend generalizable to unseen
data. This claim is supported by the force prediction evaluation metrics being only
slightly worse than on the training data set.
RM SE : 1.1662 m/s2
R2 : 0.9481
Although the model managed to generate a good prediction for this test set, this
does not mean that this will be the case for any test set. For a closer look, the
resulting model parameters were inspected in more detail in the next section.
The different parameters of the tilt wing model were then analyzed. As outlined in
chapter 7, the parameter analysis is much less generalize for the non-linear vehicle
models. Therefore the parameters will be mainly compared to the expected values
and some reference measurements. Furthermore the contribution of all model com-
ponents is visualized separately for the training data set. This way the contribution
of each component can be analyzed.
Chapter 8. Results 48
Rotor Thrust A central component for the tiltwing model is the rotor thrust.
It generated the largest force in hover and also influences the wing model by the
propwash. Hereby it was observed, that the optimization tended to overestimate the
contribution of the tail rotor in comparison to the main rotor to the point of even
estimating the thrust of the tail rotor to be larger than the thrust of a single main
rotor. Due to the motor and propeller specifications (appendix A) and a ground
49 8.2. Tiltwing
truth measurement of the rotor thrust at zero inflow velocity it could be concluded,
that this behaviour was not representing the underlying physical effects.
Figure 8.11: Measured main rotor thrust for no air inflow [21]
Figure 8.12: Measured tail rotor thrust for no air inflow [21]
Since the thrust influences directly or indirectly all the other model components it
was decided to implement tight bounds, that only allowed the maximum thrust of
the two rotors to vary within about 15% with respect to the fit obtained from the
measurements shown above. The new combination resulted in only a marginally
worse performing model. This indicates, that the difference between the two com-
ponents is not well observable in the data.
Chapter 8. Results 50
For both models the optimizer managed to find coefficients that are close to the
measured thrust but did not converge to the bounds. Furthermore, the effect of
reduced thrust due to air inflow perpendicular to the rotor was not separately
observable for the tail rotor. Since for nominal hover flight, where the tail rotor
is active, large inflow velocity variations are not expected this might be an area of
the model that contains to many DoF. The model complexity could potentially be
reduced here. For sure a good parameter fit for cT 1,tail would not have the highest
priority.
Wing Lift and Drag To analyze the predictions of the lift and drag curves for
the predicted values were plotted over the large range of angle of attack, which can
occur in for example the transition of the tiltwing. In order to set the estimated
51 8.2. Tiltwing
values in perspective an educated guess about the expected value is added based on
the NACA 0018 profile [25] and a thorough study of airfoil behaviour for the post
stall region [26].
Figure 8.15: Predicted and expected lift coefficient over angle of attack
As can be seen from figure 8.10 the lift force does most of the work compensating
gravity in the z direction in the middle of the training log as would be expected. In
contrast to this it the resulting lift coefficient curve is much higher than expected
from the reference and a clear weak point of the model. It was tried to constrain
especially flat plate lift coefficient cL,f p to a value smaller than 1. But the optimizer
would not converge to a better solution and instead just try to compensate the lost
lift with the rotor drag and other model components resulting in a much higher cost
over all.
Chapter 8. Results 52
Figure 8.16: Predicted and expected drag coefficient over angle of attack
The drag model on the other hand is much closer to the expected value. Hereby
it likely contains also some contribution of the fuselage drag in x-direction and
therefore is higher by an almost constant offset from the expected value.
By looking closer at the distribution of the angle of attack (Fig. 8.17) with respect
to the wing, it can be seen that most of the data points are in the post stall or
model interpolation region.
Figure 8.17: Predicted and expected drag coefficient over angle of attack
53 8.2. Tiltwing
Hereby it is important to remember that the wing angle of attack is not obtained
purely from the data but the propwash is estimated together with the rotor thrust.
To verify that the prop-wash is having the expected effect of reducing the angle of
attack all three computed angle of attack values were plotted simultaneously.
Even a small systematic errors in the range of a few degrees in the wing angle of
attack can have a large impact on how much of the measured data is attributed to
the attached flow and post stall regions and can therefore have a large impact of the
whole model. Possible sources for this are next to the prop-wash estimation the tilt
angle, measured by a potentiometer, and the manually fixed stall angle. Especially
the stall angle might be not very easy to determine, since the turbulent prop-wash
over the wing could delay the stalling of the wing to a certain extent.
For the further investigation of the wing model it would be beneficial to get some
data where the vehicle is gliding without the rotors to analyze the effects of the
wing separately to get a better estimate for meaningful bounds before including it
again in a larger optimization.
y-direction is not well separately observable from the rotor drag as was already the
case for the quadrotor. This fuselage drag model would be an interesting model
component to investigate further and see how well those parameters can even be
estimated. If it turns out to be almost not separately observable from the wing
parameters it might make more sense to lump its effects together with the tilting
wing section model.
Elevator Lift In figure ?? no contribution of the elevator lift or drag can be seen.
This effect is also likely hard to observe without dedicated experiments.
8.2.3 Conclusion
The determined model for the tiltwing was able to well predict the summed dy-
namics of the system, especially when taking into account that no dedicated data
collection effort was conducted. Due to the latter reason it turned out, that many
of the parameter fits are likely not well generalizable and do not all represent the
underlying physical effects. Here, the design of maneuvers to highlight those dy-
namics separately and potentially a complexity reduction of the model would be a
good way forward. Also the effect of the wind would be taken into account and
could still be one of the big sources of error and bias in the model.
Chapter 9
The developed pipeline for data-driven dynamics estimation using flight logs proved
to be a useful framework to allow for a fast development of new vehicle models out of
the different components. In comparison to model free approaches the parametric
models incorporate domain knowledge about the dynamics of a system into its
mathematical description.
To help the operator in assessing whether his data set is good enough two meth-
ods for linear models for significance and separate observability for proposed and
showed promising first results. In contrast it is much harder to come up with a sim-
ilar generalizable procedure for non-linear models. For both linear and non-linear
models it would be a very beneficial addition to the pipeline to have a good of
quality assessment of the used data and also the presented approaches for the linear
model should be further validated and improved upon. To develop better methods
a larger project focusing on these metrics and their influence in building up a more
detailed model with flight test would be an interesting next step.
The models developed in this thesis showed quite promising first results, especially
when taking into account that no dedicated data collection was performed. This
way the developed models enabled the verification of the core functionality of all
the components of the pipeline. For further validation and a better performance
of the different developed models more curated flight data including maneuvers
would be needed. As it has been shown that this gets increasingly difficult for
more complicated models this would be a good motivation extend on the developed
models by combining them with a model free approach to account for the residual
dynamics.
55
Bibliography
[1] Horn Joseph F. Mark B. Tischler, Robert K. Remple. Aircraft and rotorcraft
system identification: Engineering methods with flight test examples, second
edition [bookshelf]. IEEE Control Systems Magazine, 36(2), 2016. doi: 10.
1109/MCS.2015.2512078.
[3] Anusha Nagabandi, Gregory Kahn, Ronald S. Fearing, and Sergey Levine.
Neural network dynamics for model-based deep reinforcement learning with
model-free fine-tuning, 2017.
[5] Shixiang Gu, Timothy Lillicrap, Ilya Sutskever, and Sergey Levine. Continuous
deep q-learning with model-based acceleration, 2016.
[6] Thomas Stastny. Robot Dyanmics lecture notes: fixed-wing Lecture. 2019.
[7] Antonio Franchi Matthias Faessler and Davide Scaramuzza. Differential Flat-
ness of Quadrotor Dynamics Subject to Rotor Drag for Accurate Tracking of
High-Speed Trajectories. 2018. ISSN 620-626.
[8] Raunak Raj Basman Elhadidi Erdal Kayacan Yunus Govdeli, Sheikh Moheed
Bin Muzaffar. Unsteady aerodynamic modeling and control of pusher and
tilt-rotor quadplane configurations. 2019.
[9] Thomas Stastny Roland Siegwart Carl Olsson, Sebastian Verling. Full Envelope
System Identification of a VTOL Tailsitter UAV. 2019.
[10] Sebastian Verling David Rohr, Thomas Stastny and Roland Siegwart. Attitude-
and Cruise Control of a VTOL Tiltwing UAV. 2019.
[11] Thomas Stastny and Roland Siegwart. Nonlinear Model Predictive Guidance
for Fixed-wing UAVs Using Identified Control Augmented Dynamics. 2018.
[12] Lorenz Meier, Dominik Honegger, and Marc Pollefeys. Px4: A node-based
multithreaded open source robotics framework for deeply embedded platforms.
In 2015 IEEE International Conference on Robotics and Automation (ICRA),
pages 6235–6240, 2015. doi: 10.1109/ICRA.2015.7140074.
56
57 Bibliography
59
Appendix A
A lot of vehicle information about the aero mini tiltwing model was provided by
David Rohr [21]. It helped constructing the model and its parameter
60
61
aEro MINI
1X MN3110 470KV with Graupner E-Prop 10x5"
cT,0~=0.078 (0.033, 0, -0.052)
n ~= -1895u 2 + 10882u + 213
T T
+
(-0.573, 0, 0.04)
d = -3.781u 3 + 17.176u 2 - 36.426u + 7.659 [deg]
e e e e
(0.02, 0, -0.02)
m = 6.1 kg
Ixx ~= 0.66 kgm2
Iyy ~= 0.33 kgm2
Izz ~= 1.00 kgm2
Ixz = ?
4X MN5008n 400kV with T-Motor 16x5.4"
cT,0~=0.071
n ~= -3058u 2 + 9945u + 226
T T
Appendix B
Figure B.1: Resulting Coefficient for the train log of the tiltwing model
62