Table of Contents

Pressure Sensing Dataset and Hardware

For the paper: Heinrich, G. A., Vogt, S., Lawrance, N. R., Stastny, T. J., & Siegwart, R. Y. (2022). In-Wing Pressure Measurements for Airspeed and Airflow Angle Estimation and High Angle-of-Attack Flight. Journal of Guidance, Control, and Dynamics,

Introduction

This page provides the hardware designs (PCB and 3D print) and a dataset for in-wing differential pressure sensors for sensing pressure around the wings of an uncrewed aerial vehicle (UAV). The dataset consists of aerodynamic data recorded in both wind tunnel and flight tests on a small UAV (EasyGlider 4) performed at ETH Zurich. The dataset includes data from in-wing differential pressure sensors and aircraft navigation data (originally recorded using a Pixhawk autopilot with PX4 firmware saved into the ulog format). The intended purpose of the data is to provide a source for understanding the properties of the pressure sensors, for predicting other aerodynamic data (such as airspeed and angles of attack and sideslip), and for understanding the flight mechanics of deep stall and high angle-of-attack manouevres. The designs are also made available to others wishing to replicate or extend on this work.

Hardware designs

Designs for the differential pressure sensing modules are provided. The PCB designs as well as CAD files are available in the download links below.

Data

There are two main data sets each in a separate directory: calibrated (Cal_Data_Set) and raw (Raw_Data_Set). Inside each of these, there are wind tunnel and flight data sets, each with a corresponding h5 file.

The following processing has been performed for each data set:

Field descriptions

Important fields in the dataset. Each hdf5 file contains data from multiple logs, with the top level group referring to the original ulog file that generated that data (HH_MM_SS.ulg). Then most fields have human-readable names. The are also additional aircraft data standard to the PX4 ulog format.

Field name Unit Description
Time [s]
airflow_aoa_0.aoa_rad [rad] Angle of attack value
airflow_aoa_0.valid [0/1] Angle of attack valid
airflow_slip_0.slip_rad [rad] Angle of sideslip value
airflow_slip_0.valid [0/1] Angle of sideslip valid
airspeed_0.true_airspeed_m_s [m/s] Airspeed
airspeed_1.true_airspeed_m_s [m/s] Airspeed (sensor 1)
sdp31module_0.dPX_Y [Pa] Differential pressure module X, sensor Y
vehicle_attitude_0.q_X [] Attitude quaternion (X in {0,1,2,3})
Python script

To help with a basic data processing example, we have included a simple python script that reads an hdf5 file and plots a sample of data. To use the python script:

Extract the data and navigate to data folder:

  cd /PATH/TO/ZIP_LOCATION
  7z x Data_Deep_Stall.7z
  cd Data_Deep_Stall

Install required packages and run:

  pip install -r requirements.txt
  python example_script.py

Basic help on the script can be found with:

  python example_script.py -h

If you unzip to a different location, use:

  python example_script.py -d /PATH/TO/Data_Deep_Stall

The -a flag will also create an attributes.txt file in the current directory which recursively lists all attributes in the h5 file.

  python example_script.py -a

Data_Deep_Stall.7z – 3.0 GB – Wind tunnel and flight data set

dp_module_step_files.zip – 6.6 MB – Step files for differential pressure modules

KiCad.zip – 2.0 MB – PCB layouts as KiCAD project files