quadrotor flight dataset - university of...

5
Quadrotor Flight Dataset Nima Mohajerin Copyright (c) WAVELAB, University of Waterloo September 2, 2017 1 Hardware The AscTec 1 Pelican 2 is a light weight quadrotor. It is equipped with a real-time autopilot board coupled with an onboard computer using Intel Core i7 and 4GB of RAM. 3 The onboard computer runs Ubuntu 4 14.04 OS and communicates with the autopilot board via a UART connection. The ROS 5 Indigo 6 software running a suitable ROS node 7 is used to collect the motor speeds and Inertial Measurement Unit (IMU) measurements. The vehicle is operated in an indoor environment by an expert pilot using a Futaba T7C remote control. The vehicle position and inertial orientation are measured at 100 Hz using a Vicon motion capture system 8 , equipped with 16 Vantage cameras 9 . The position and orientation of the vehicle are instan- taneously read by the Vantage cameras, looking at the IR reflective markers mounted on the vehicle, and sent to the Vicon server through a LAN communication (Figure 1). To avoid any wireless latency and/or packet drops, the measurements are logged on the Vicon server computer using the Vicon Tracker software version 3.3 which runs in the Microsoft Windows 10 10 OS. The Vicon system is calibrated before each data collection session to account for changes in environmental variables, such as room temperature, camera body temperature, etc.. The data collection diagram is depicted in Figure 2. 2 Measurements The logged measurements are listed in Table 1. The indices, I and B refer to the frame of measurement, I is inertial (Vicon system) and B is the quadrotor body. The index g highlights the fact that the measurement is done by the gyroscopic sensors. All of the listed quantities are measured at 100Hz rate. After cutting the landing parts, the dataset total flight time is approximately 3 hours and 50 minutes. The total number of samples per each element of each quantity is 1388410. The indoor environment in which the quadrotor flight was captured is approximately a cube with 5 meters sides. The flights were executed in several days and with several batteries (of the same type). However, the batteries age was different. This may influence the amount of current that can be drawn when a full throttle command is issued to the quadrotor. The ROS node provides two types of motor speed, one is the commanded, and the other is the actual. They correspond to the desired speed, given to the motor controller, and the actual speed, that the motor spins at. The actual motor speed is estimated by the AscTec autopilot board based on the amount of 1 Ascending Technologies, is a part of Intel. 2 http://www.asctec.de/en/uav-uas-drones-rpas-roav/asctec-pelican/ 3 The onboard computer is AscTec Mastermind Ascending Technologies 4 http://www.ubuntu.com 5 http://www.ros.org 6 http://wiki.ros.org/indigo 7 http://wiki.ros.org/asctec_mav_framework 8 https://www.vicon.com/products/camera-systems 9 https://www.vicon.com/products/camera-systems/vantage 10 https://www.microsoft.com/en-ca/windows/ 1

Upload: others

Post on 27-Jan-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

  • Quadrotor Flight Dataset

    Nima MohajerinCopyright (c) WAVELAB, University of Waterloo

    September 2, 2017

    1 Hardware

    The AscTec1 Pelican2 is a light weight quadrotor. It is equipped with a real-time autopilot board coupledwith an onboard computer using Intel Core i7 and 4GB of RAM.3 The onboard computer runs Ubuntu4

    14.04 OS and communicates with the autopilot board via a UART connection. The ROS5 Indigo6 softwarerunning a suitable ROS node7 is used to collect the motor speeds and Inertial Measurement Unit (IMU)measurements. The vehicle is operated in an indoor environment by an expert pilot using a Futaba T7Cremote control.

    The vehicle position and inertial orientation are measured at 100 Hz using a Vicon motion capturesystem8, equipped with 16 Vantage cameras9. The position and orientation of the vehicle are instan-taneously read by the Vantage cameras, looking at the IR reflective markers mounted on the vehicle,and sent to the Vicon server through a LAN communication (Figure 1). To avoid any wireless latencyand/or packet drops, the measurements are logged on the Vicon server computer using the Vicon Trackersoftware version 3.3 which runs in the Microsoft Windows 1010 OS. The Vicon system is calibrated beforeeach data collection session to account for changes in environmental variables, such as room temperature,camera body temperature, etc.. The data collection diagram is depicted in Figure 2.

    2 Measurements

    The logged measurements are listed in Table 1. The indices, I and B refer to the frame of measurement,I is inertial (Vicon system) and B is the quadrotor body. The index g highlights the fact that themeasurement is done by the gyroscopic sensors. All of the listed quantities are measured at 100Hz rate.After cutting the landing parts, the dataset total flight time is approximately 3 hours and 50 minutes.The total number of samples per each element of each quantity is 1388410.

    The indoor environment in which the quadrotor flight was captured is approximately a cube with 5meters sides. The flights were executed in several days and with several batteries (of the same type).However, the batteries age was different. This may influence the amount of current that can be drawnwhen a full throttle command is issued to the quadrotor.

    The ROS node provides two types of motor speed, one is the commanded, and the other is the actual.They correspond to the desired speed, given to the motor controller, and the actual speed, that the motorspins at. The actual motor speed is estimated by the AscTec autopilot board based on the amount of

    1Ascending Technologies, is a part of Intel.2http://www.asctec.de/en/uav-uas-drones-rpas-roav/asctec-pelican/3The onboard computer is AscTec Mastermind Ascending Technologies4http://www.ubuntu.com5http://www.ros.org6http://wiki.ros.org/indigo7http://wiki.ros.org/asctec_mav_framework8https://www.vicon.com/products/camera-systems9https://www.vicon.com/products/camera-systems/vantage

    10https://www.microsoft.com/en-ca/windows/

    1

    http://www.asctec.dehttp://www.intel.comhttp://www.asctec.de/en/uav-uas-drones-rpas-roav/asctec-pelican/http://www.asctec.de/en/asctec-mastermind/http://www.ubuntu.comhttp://www.ros.orghttp://wiki.ros.org/indigohttp://wiki.ros.org/asctec_mav_frameworkhttps://www.vicon.com/products/camera-systemshttps://www.vicon.com/products/camera-systems/vantagehttps://www.microsoft.com/en-ca/windows/

  • Figure 1: Vicon measrements of the quadrotor position and orientation.

    Figure 2: Communication block digram for the quadrotor dataset collection

    .

    Quantity Unit Source Logged in

    Motor speedsω(k) = [ω1(k), ω2(k), ω3(k), ω4(k)]

    Integer values in [0,218]

    AscTec autopilotboard

    Mastermind

    Inertial position pI(k) = [xI(k), yI(k), zI(k)]mm, ±5mm

    accuracyVicon system Vicon server

    Inertial orientation, Euler anglesηI(k) = [φ(k), θ(k), ψ(k)]

    deg., ±0.1deg.accuracy

    Vicon system Vicon server

    Body rates η̇B,g(k) = [pg(k), qg(k), rg(k)]deg., unknown

    accuracyPelican IMU Mastermind

    Table 1: Pelican measurements.

    2

  • current the motors draw. Both the commanded and actual speeds are available as integer values. It ispossible to experimentally devise a mapping to RPM, however, using NNs it is not necessary.

    A smoothing filter is applied to all of the measurements with a window size of 5. The filter is alocal-regression which approximates the signal at each sample point by a 2nd degree polynomial. Forthe motor speeds, a robust version of this filter is applied that assigns lower weight to outliers in theregression to reduce the effect of current spikes in the motor control units.11

    Because the position and heading can grow unbounded, it is preferred to learn velocities and bodyrates. The velocity vector, ṗI(k) = [ẋI(k), ẏI(k), żI(k)] is obtained by taking the numerical derivativeof the position vector, pI(k). To obtain body rates, η̇B(k) = [p(k), q(k), r(k)], first the Euler rates,η̇I(k) = [φ̇(k), θ̇(k), ψ̇(k)] are obtained by taking the numerical derivative of the Euler readings, ηI(k).Then the Euler rates are transferred to the body frame using the following equations,

    η̇B(k) = M(φ(k), θ(k), ψ(k))η̇I(k) (1)

    where the matrix-valued function M(.) is given by:

    M(φ, θ, ψ) =

    1 sin(φ) tan(θ) cos(φ) tan(θ)0 cos(φ) − sin(φ)0 sin(φ) sec(θ) cos(φ) sec(θ)

    . (2)Although IMU readings for the body rate is usually used in control applications, they are quite noisy.

    Additionally, the IMU yaw readings are known to have drifts over time. Therefore, it is preferred to usethe converted Euler readings instead. However, they are employed as a medium to adjust the time delaysas described next.

    3 Time synchronization

    Although the Vicon system is one of the best commercially available Indoor Positioning Systems, thereare some limitations. For instance, the Vicon server operating system is Windows 10 which is not a realtime OS. In the current configuration, there are three sources of delay; the onboard computer OS, theVicon server OS and the ROS software. Perfectly synchronizing time stamps between various sources ofmeasurement requires levels of sophisticated hardware and software solutions. However, in the currentconfiguration it is possible to approximately adjust the time delays.

    The IMU measurements and motor speeds are received by the ROS node at the same time. Thus,they share time stamp. Aligning the IMU body rates with the Vicon converted body rates should fairlycompensate for any time delays. The alignment is simply done by a cross-correlation between the twosignals. Note that both IMU and Vicon system provide measurements at the same frequency (100 Hz).

    In conclusion, the quantities included in the quadrotor dataset are

    • actual motor speed, ω(k) = [ω1(k), ω2(k), ω3(k), ω4(k)],

    • velocity vector in inertial frame, ν(k) = [ẋI(k), ẏI(k), żI(k)],

    • body rates, η̇B(k) = [p(k), q(k), r(k)].

    4 Distributions

    The dataset consists of various flight regimes; hover, close to ground, light, moderate and aggressivemanoeuvres in all directions, etc. Figures 3, 4 and 5 illustrate the distribution of the signals, whichnoticeably are fairly symmetric.

    11Refer to the MATLAB (The MathWorks Inc.) documentation for the smooth function.

    3

    www.mathworks.comhttps://www.mathworks.com/help/curvefit/smooth.html

  • AscTec motor speed unit40 50 60 70 80 90 100 110 120

    # o

    f sam

    ple

    s

    0

    5000

    10000

    15000ω1(k) histogram

    (AscTec motor speed unit)/seconds-800 -600 -400 -200 0 200 400 600 800

    # o

    f sam

    ple

    s

    0

    5000

    10000

    15000ω̇1(k) histogram

    AscTec motor speed unit40 50 60 70 80 90 100 110 120

    # o

    f sam

    ple

    s

    0

    5000

    10000

    15000ω2(k) histogram

    (AscTec motor speed unit)/seconds-800 -600 -400 -200 0 200 400 600 800

    # o

    f sam

    ple

    s

    ×104

    0

    1

    2ω̇2(k) histogram

    AscTec motor speed unit40 50 60 70 80 90 100 110 120

    # o

    f sam

    ple

    s

    0

    5000

    10000ω3(k) histogram

    (AscTec motor speed unit)/seconds-800 -600 -400 -200 0 200 400 600 800

    # o

    f sam

    ple

    s

    0

    5000

    10000

    15000ω̇3(k) histogram

    AscTec motor speed unit40 50 60 70 80 90 100 110 120

    # o

    f sam

    ple

    s

    0

    5000

    10000

    15000ω4(k) histogram

    (AscTec motor speed unit)/seconds-800 -600 -400 -200 0 200 400 600 800

    # o

    f sam

    ple

    s0

    5000

    10000

    15000ω̇4(k) histogram

    Figure 3: Distribution of the quadrotor motor speeds and their rate of change.

    Meters-4 -2 0 2 4 6

    # o

    f sam

    ple

    s

    0

    2000

    4000

    6000

    8000xI(k) histogram

    m/s-2 -1 0 1 2

    # o

    f sam

    ple

    s

    ×104

    0

    0.5

    1

    1.5

    2ẋI(k) histogram

    m/s 2-40 -20 0 20 40

    # o

    f sam

    ple

    s

    ×104

    0

    2

    4

    6

    8ẍI(k) histogram

    Meters-4 -2 0 2 4

    # o

    f sam

    ple

    s

    0

    2000

    4000

    6000yI(k) histogram

    m/s-2 -1 0 1 2

    # o

    f sam

    ple

    s

    0

    5000

    10000

    15000ẏI(k) histogram

    m/s 2-40 -20 0 20 40

    # o

    f sam

    ple

    s

    ×104

    0

    2

    4

    6

    8

    10ÿI(k) histogram

    Meters-2 0 2 4 6

    # o

    f sam

    ple

    s

    0

    1000

    2000

    3000

    4000

    5000zI(k) histogram

    m/s-2 -1 0 1 2

    # o

    f sam

    ple

    s

    ×104

    0

    0.5

    1

    1.5

    2żI(k) histogram

    m/s 2-40 -20 0 20 40

    # o

    f sam

    ple

    s

    ×104

    0

    1

    2

    3

    4

    5z̈I(k) histogram

    Figure 4: Distribution of the quadrotor position, velocity and acceleration.

    4

  • radian-1 -0.5 0 0.5 1

    # o

    f sam

    ple

    s

    ×104

    0

    0.5

    1

    1.5

    2

    2.5φ(k) histogram

    rad/s-0.5 0 0.5

    # o

    f sam

    ple

    s

    0

    5000

    10000

    15000p(k) histogram

    rad/s 2-10 -5 0 5 10

    # o

    f sam

    ple

    s

    ×104

    0

    1

    2

    3ṗ(k) histogram

    radian-1 -0.5 0 0.5 1

    # o

    f sam

    ple

    s

    ×104

    0

    0.5

    1

    1.5

    2

    2.5θ(k) histogram

    rad/s-0.5 0 0.5

    # o

    f sam

    ple

    s

    0

    2000

    4000

    6000

    8000q(k) histogram

    rad/s 2-10 -5 0 5 10

    # o

    f sam

    ple

    s

    ×104

    0

    1

    2

    3

    4q̇(k) histogram

    radian-40 -20 0 20 40

    # o

    f sam

    ple

    s

    ×104

    0

    2

    4

    6

    8ψ(k) histogram

    rad/s-0.5 0 0.5

    # o

    f sam

    ple

    s

    0

    2000

    4000

    6000

    8000r(k) histogram

    rad/s 2-10 -5 0 5 10

    # o

    f sam

    ple

    s

    ×104

    0

    1

    2

    3

    4ṙ(k) histogram

    Figure 5: Distribution of the quadrotor orientation, in the inertial frame, body rates and body rotationalaccelerations, in the body frame.

    5

    HardwareMeasurementsTime synchronizationDistributions