Skip to content

SvetLuna-Lab/AI-Assisted-Health-Monitoring-for-a-Liquid-Propellant-Rocket-Engine-Synthetic-Telemetry-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI-Assisted Health Monitoring for a Liquid-Propellant Rocket Engine

This project is a small ML prototype for health monitoring of a liquid-propellant rocket engine using synthetic telemetry data.

The goal is to:

  • simulate realistic telemetry of a rocket engine (chamber pressure, turbopump speed, injector temperature, vibrations);
  • model several fault scenarios (pressure decay, turbopump overspeed, temperature rise, vibration increase);
  • train a classifier to distinguish normal and faulty regimes;
  • visualize telemetry and model results (time series, correlations, feature importance).

Project structure

data/                      # CSV files with synthetic runs (generated)
src/
  __init__.py
  generate_telemetry.py    # generation of synthetic telemetry runs
  preprocessing.py         # feature engineering & dataset preparation
  train_classifier.py      # model training & evaluation
  visualization.py         # plotting helpers (time series, correlations, feature importance)
figures/                   # plots generated by visualization code
requirements.txt
README.md
.gitignore

Note: folders data/ and figures/ are created/filled automatically by the scripts.


Installation

python -m venv .venv
source .venv/bin/activate      # Windows: .venv\Scripts\activate
pip install -r requirements.txt


Usage
1. Generate synthetic telemetry

python src/generate_telemetry.py

This script creates several CSV files in the data/ directory for:

normal runs;

pressure_decay;

turbopump_overspeed;

temp_rise;

vibration_increase.


2. Prepare features and train the classifier

python src/train_classifier.py


The script:

loads all CSV files from data/,

computes rolling statistics (mean/std) for each channel,

trains a RandomForestClassifier,

prints a classification report on the validation set,

optionally uses visualization.py to save plots into figures/:

time series by regime;

correlation matrix of telemetry channels;

feature importance.


Visualization

src/visualization.py contains helpers to generate plots:

Time series by label
plot_time_series_with_labels(df, channel="Pc")
→ saves figures/time_series_Pc.png

Correlation matrix
plot_correlation_matrix(df)
→ saves figures/correlation_matrix.png

Feature importance (RandomForest)
plot_feature_importance(model, feature_names)
→ saves figures/feature_importance.png

These plots demonstrate how the engine parameters evolve in time, how channels correlate and which features are most important for the classifier.


Tech stack

Python 3.10+

numpy, pandas

scikit-learn

matplotlib

The project is intentionally small and readable to be used as a portfolio / interview example for ML/AI in aerospace telemetry monitoring.

About

This project demonstrates how AI/ML can be applied to monitor the health of a liquid-propellant rocket engine using **synthetic telemetry data**.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages