How premkumarrs/motor-bearing-predictive-maintenance works
This repository is a motor-bearing predictive-maintenance system combining benchmark analysis, physical-rig sensing, ML diagnostics, and a Streamlit dashboard. The documented workflow runs from vibration and telemetry acquisition through windowed feature extraction and task-specific anomaly, fault, and RUL models to diagnostic results and visualization. Major branches include CWRU benchmark detection/classification, NASA C-MAPSS prognostics, and physical-rig analysis. Some links reflect README-described architecture; source excerpts are partial, so unshown implementation details are not inferred.
Main entry points: processed Evaluation Results · features.py Rig Features · anomaly_detection.py Rig Anomaly Detection · cwru_xgboost.py CWRU Fault Classifier
Components 18
Sensing and Data
- ESP32 Motor Rig
src/main.cpp - Rig Recordings
data/raw - CWRU Dataset
data/external/CWRU-dataset - NASA FD001 Data
data/external/nasa_cmapps - Serial Reader
dashboard.py
Signal Processing
- Rig Features
ml/fault_classification/features.py - CWRU Features
ml/fault_classification/cwru_xgboost.py
ML Diagnostics
- Rig Anomaly Detection
ml/fault_classification/anomaly_detection.py - CWRU Anomaly Detection
ml/fault_classification/cwru_anomaly_detection.py - CWRU Fault Classifier
ml/fault_classification/cwru_xgboost.py - Grouped Validation
ml/fault_classification/cwru_cross_validation.py - Health Scoring
ml/fault_classification/health_score.py - Rig Classifier
scripts/train_physical_rig_model.py - NASA RUL Model
ml/rul_prediction/nasa_fd001_xgboost.py - Proxy RUL Model
ml/rul_prediction/proxy_rul_lstm.py - Evaluation Results
data/processed
Dashboard
- Diagnostics Dashboard
dashboard.py
Other components
- Operator
Connections 22
- ESP32 Motor Rig → Serial Reader: streams telemetry
README.md - Serial Reader → Diagnostics Dashboard: feeds live view
README.md - ESP32 Motor Rig → Rig Recordings: records samples
- Rig Recordings → Rig Features: segments windows
ml/fault_classification/features.py - Rig Features → Rig Anomaly Detection: supplies features
ml/fault_classification/anomaly_detection.py - Rig Anomaly Detection → Health Scoring: provides anomaly results
ml/fault_classification/health_score.py - Rig Features → Health Scoring: supplies features
ml/fault_classification/health_score.py - Health Scoring → Proxy RUL Model: provides health data
ml/rul_prediction/proxy_rul_lstm.py - Rig Features → Rig Classifier: supports classification
- CWRU Dataset → CWRU Features: provides signals
ml/fault_classification/cwru_xgboost.py - CWRU Features → CWRU Fault Classifier: fits classifier
ml/fault_classification/cwru_xgboost.py - CWRU Dataset → CWRU Anomaly Detection: provides signals
ml/fault_classification/cwru_anomaly_detection.py - CWRU Fault Classifier → Grouped Validation: shares model setup
ml/fault_classification/cwru_cross_validation.py - NASA FD001 Data → NASA RUL Model: provides run data
ml/rul_prediction/nasa_fd001_xgboost.py - Rig Anomaly Detection → Evaluation Results: writes evaluations
ml/fault_classification/anomaly_detection.py - CWRU Anomaly Detection → Evaluation Results: writes evaluations
ml/fault_classification/cwru_anomaly_detection.py - CWRU Fault Classifier → Evaluation Results: writes predictions
ml/fault_classification/cwru_xgboost.py - Grouped Validation → Evaluation Results: writes validation
ml/fault_classification/cwru_cross_validation.py - NASA RUL Model → Evaluation Results: writes predictions
ml/rul_prediction/nasa_fd001_xgboost.py - Proxy RUL Model → Evaluation Results: writes results
ml/rul_prediction/proxy_rul_lstm.py - Evaluation Results → Diagnostics Dashboard: visualizes evaluations
README.md - Operator → Diagnostics Dashboard: views diagnostics
README.md