DOI: 10.5061/dryad.34tmpg4mh
title: Data from: a physics-based digital twin for model predictive control of autonomous unmanned aerial vehicle landing

description: This paper proposes a two-level, data-driven, digital twin concept for the
 autonomous landing of aircraft, under some assumptions. It features a
 digital twin instance for model predictive control; and an innovative,
 real-time, digital twin prototype for fluid-structure interaction and
 flight dynamics to inform it. The latter digital twin is based on the
 linearization about a pre-designed glideslope trajectory of a
 high-fidelity, viscous, nonlinear computational model for flight dynamics;
 and its projection onto a low-dimensional approximation subspace to
 achieve real-time performance, while maintaining accuracy. Its main
 purpose is to predict in real-time, during flight, the state of an
 aircraft and the aerodynamic forces and moments acting on it. Unlike
 static lookup tables or regression-based surrogate models based on
 steady-state wind tunnel data, the aforementioned real-time digital twin
 prototype allows the digital twin instance for model predictive control to
 be informed by a truly dynamic flight model, rather than a less accurate
 set of steady-state aerodynamic force and moment data points. The paper
 describes in detail the construction of the proposed two-level digital
 twin concept and its verification by numerical simulation. It also reports
 on its preliminary flight validation in autonomous mode for an
 off-the-shelf unmanned aerial vehicle instrumented at Stanford University.
description: The dataset was collected via numerical experiments performed
 primarily with the code AERO-F (https://bitbucket.org/frg/aero-f), which
 was also used for processing the data (e.g. reporting interated forces and
 moments, etc.), with the addition of AERO-S
 (https://bitbucket.org/frg/aero-s), rompc
 (https://github.com/StanfordASL/rompc), asl_fixedwing
 (https://github.com/StanfordASL/asl_fixedwing), and the asl-v3.2.0 branch
 of qpOASES (https://github.com/jlorenze/qpOASES; forked from
 https://github.com/coin-or/qpOASES), which were used for the simulation of
 the controller. Data was also processed, and some numerical experiments
 performed, with code found at pyaeroutils
 (https://github.com/amcclell/pyaeroutils), and using CVX
 (http://cvxr.com/cvx). Additional processing scripts are included with the
 dataset, and the top-level directory contains a README.txt describing
 additional dependencies.
description: The data within consists largely of processed data, due to the
 immense size of raw output of the fluid solution, though the simulation
 contained in DTI_for_MPC_Verification also contains some raw data that
 represents the dynamic state of the aircraft. The data consists
 of: the reduced order model (both
 unstabilized and stabilized) the trim computation
 along the glideslope data from the linearized
 high-dimensional solution of the forced motion problem described in the
 paper. the controller matrices
 integrate aerodynamic forces from the control simulation, as
 well as the aircraft dynamic state and state of the reduced order
 models Additionally, scripts for
 performing the ROM stabilization
 simulating the ROM in the forced motion problem, plotting the
 results and computing the relative errors building
 the controller generating the plots of the controlled
 simulation performing necessary preprocessing steps
 if rerunning the controller simulation as
 well as the code for the controller and its interface to AERO-S, and the
 input files for running the controller simulation are included. The
 README.txt in the top-level directory describes the dependencies and basic
 file sructure; the README.txt in the simulation directory describes the
 contents of its subdirectories, and each subdirectory contains a
 README.txt describing how to run the scripts contained within.
 All files (with minor exceptions) are plain text files that may
 be read in a generic text editor. The exception are the .mat files, which
 are Matlab (https://www.mathworks.com/products/matlab.html) data files, and may be loaded within Matlab by using the 'load' command.