Prognostics Center of Excellence
Diagnostics and Prognostics Group
A testbed for the development of prognostic, health management, and decision making algorithms.
Explore the docs »
View Demo
Table of Contents
A dataset for the experiments will be released soon. In the meantime, contact us for access. The dataset contains run-to-failure flight data for over 100 UAVs, starting from a new UAV with brand new components, and includes battery changes and degradation in 9 different components. There are over 20 different mission plans that operate in an urban environment with varying wind conditions.
This is a complete UAV simulation testbed that is intended to be used with the data management framework. A Postgres database schema and an API in MATLAB / python is used in conjunction. This framework will support a wide variety of simulation-based experiments as well as real-world experiments using the same interface.
This is a Work In Progress [WIP]! Updates are being made as of July 15th, 2022. Many of these steps may remain out of date for the time being.
Currenlty we are conducting several run-to-failure experiments in effort to collect telementry and degradation data to facilitate research into deep learning approaches to problems such as remaining useful life (RUL) estimation, fault detection & isolation (FDI), decision making, and others.
TODO
- add power demand estimation based on trajectory
- add in trajectory risk / reward
- PostgreSQL 12+ (other versions are probably fine but untested)
- MATLAB r2020+ (r2020 had database issues, see notes below).
-
Clone this repo
git clone https://github.com/darrahts/uavTestbed && cd uavTestbed
-
Clone the data management framework repo and follow the installation instructions to install postgres and timescaledb. NOTE: windows ports of some scripts are in progress.
-
Execute the SQL scripts which extend the data management framework for the UAV simulation.
-
Optional Install DBeaver, a database management application and follow the guide here to set up a remote connection to your database.
-
Optional Install VS Code.
Note
- There is an active support case regarding an error with code in MATLAB's database toolbox that drops miliseconds from the telemetry data. This causes the transaction to fail due to violating the unique constraint on the dt column. The current workaround is to sample the at 1hz.
NOTE This has been tested on Windows 10 with ODBC driver and R2020a. Currently working on a Linux implementation with the native postgres driver and R2021a. Here is another active support case regarding the errors within MATLAB.
Run the file example.mlx. The original octocopter and dynamics are no longer supported (although still work), and therefore it is recommended to use the tarot uav instead (it is also alot faster due to different implementation of the dynamics).
Prerequisites
- setup a database following the above instructions and included the default setups
- have the database connection setup in MATLAB (instructions here)
Discuss the following:
- database schema (PHM 2021 paper)
- trajectory selection (aerospace journal paper)
- Degradation (2020 AIAA paper)
- RUL estimation
- parameter estimation
- train/test/validation data
To be incorporated:
- takeoff and landing
- prognostics-based waypoint selection
- power estimation based on trajectory
- 4D flight plan
- dynamic craft speed based on flight plan
- mission or maintenance scheduling
- optimize flight time vs maintenance time
- in-mission decision making
- NN-based decision making
- multi-agent mission assignment
- multi-agent resource allocation
- more...
- Gautam Biswas
- Marcos Quinones
- Jeremy Frank
- Chetan Kulkarni
- Chris Teubert
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Tim Darrah - [email protected]
Project Link: https://github.com/darrahts/uavTestbed
- To Appear: A Data Management Framework & UAV Simulation Testbed for the Study of Prognostics Technologies, PHM 2021. Nashville, TN.
- Prognostics Based Decision Making for Safe and Optimal UAV Operations (2021)
- The Effects of Component Degradation on System-Level Prognostics for the Electric Powertrain System of UAVs (2020)
- A Decision-Making Framework for Safe Operations of Unmanned Aerial Vehicles in Urban Scenarios (2020)