SM-Bello/PHI-CTRL-F16-Fault-Recovery-Telemetry
PHI-CTRL F-16 Actuator Fault Recovery Dataset High-Fidelity JSBSim 6-DOF Telemetry for Physics-Hybrid Self-Healing Flight Control Official verification artifacts of the PHI-CTRL (Physics-Hybrid Integrity Control) architecture — a digital-twin-driven, self-healing flight control framework that actively compensates actuator degradation in real time. Author: Mohammed Bello Sani (SM-Bello) Affiliation: Air Force Institute of Technology (AFIT), Kaduna · Penelope Inc. / PHI Lab… See the full description on the dataset page: https://huggingface.co/datasets/SM-Bello/PHI-CTRL-F16-Fault-Recovery-Telemetry.

PHI-CTRL F-16 Actuator Fault Recovery Dataset
High-Fidelity JSBSim 6-DOF Telemetry for Physics-Hybrid Self-Healing Flight Control
   
Official verification artifacts of the PHI-CTRL (Physics-Hybrid Integrity Control) architecture — a digital-twin-driven, self-healing flight control framework that actively compensates actuator degradation in real time.
Author: Mohammed Bello Sani (SM-Bello) Affiliation: Air Force Institute of Technology (AFIT), Kaduna · Penelope Inc. / PHI Lab Source code (canonical): github.com/Sm-bello/PHI-CTRL Archived release (citable): DOI 10.5281/zenodo.22218809 Related Dataset: ZeroTwin-UAV Synthetic Physics-Informed Multi-UAV Fault Telemetry
0. Where this fits in the PHI-CTRL project
This Hugging Face repo holds telemetry only. It is one node in a small graph of repos that together make up PHI-CTRL — start here for whichever one you actually need:
If you're evaluating whether to build on top of PHI-CTRL, star/watch the GitHub repo — that's where new releases, verification scripts, and architecture changes land first, before being mirrored out to the dataset/model repos here.
1. Why this dataset exists (Project Context Map)
This dataset is the public, citable foundation of the successful classical baseline on the F-16. All future full-stack (Cases B–E) runs will be added as new configurations.
2. Dataset Summary
High-rate (120 Hz) 6-DOF flight telemetry generated with the mature JSBSim F-16A model under three controlled conditions:
Initial Condition (all runs)
- Altitude: 15 000 ft
- Airspeed target: 400 kts (soft)
- Aircraft: General Dynamics F-16A (JSBSim PRODUCTION model)
Pass Criteria Applied
- Pre-fault |Δh| < 120 ft
- Full 60 s duration (no bailout)
- Minimum airspeed ≥ 55 % of target
- Pitch within ±40°
3. File Structure & Contents
phi-ctrl-f16-fault-recovery/
├── no-fault/
│ ├── baseline_recovery_log.csv # 7200 rows × 18 channels
│ ├── baseline_recovery.png
│ └── console_log.txt
├── hold-trim/
│ ├── baseline_recovery_log.csv
│ ├── baseline_recovery.png
│ └── console_log.txt
├── 20pct-elev/
│ ├── baseline_recovery_log.csv # Primary fault case
│ ├── baseline_recovery.png
│ └── console_log.txt
└── README.md # This fileTelemetry Channels (CSV columns)
4. How the data was generated
- Simulator: JSBSim v1.3.1 (GitHub build)
- Aircraft model:
f16(PRODUCTION release by Erik Hofman) - Control law: Classical cascaded altitude → pitch + auto-throttle (PHI-CTRL Layer 1 baseline, V19)
- Fault model: Multiplicative elevator effectiveness loss \(\gamma = 0.80\) applied after settle
- Settle strategy: Path-first (altitude-rate & pitch), frozen elevator/throttle during settle, hard rate limits
- Logging rate: 120 Hz
Full generation scripts and the complete PHI-CTRL workspace — including the larger 160-episode multi-γ fault dataset this baseline gate feeds into — live in the source repo.
5. Intended Use Cases
- Benchmarking classical vs. adaptive / fault-tolerant controllers
- Training residual RL policies (PPO / SAC) on realistic actuator degradation
- Validating digital-twin health estimators and \(\gamma\) identification algorithms
- Studying energy management (TECS) under control-surface loss
- Reproducing the PHI-CTRL baseline gate before adding MRAC / observer / residual layers
- Negative-result research: understanding why the JSBSim
c172pmodel fails airborne trim
6. Negative Result – JSBSim c172p (Important Warning)
The upstream JSBSim c172p model is marked BETA. Extensive attempts (grid trim, forced IC, engine spool-up windows, gain retuning, TECS, rate limiting) produced:
- Persistent gear-ground contact on every initial condition
- Native / grid trim returning near-zero throttle or sustained descent
- Unusable airborne equilibrium before any fault injection
Conclusion: Do not use c172p as a research plant for adaptive or fault-tolerant control work that requires a reliable classical baseline. Switch to mature models (F-16, etc.).
The full negative-result dataset — all six attempts, telemetry, plots, and an open call for anyone who can actually fix c172p trim — is published separately: [c172p Grounded (negative result)](https://huggingface.co/datasets/SM-Bello/C172P-Grounded-JSBSim-Airborne-Trim-Failure-Negative-Result).
7. Quickstart
from datasets import load_dataset
import pandas as pd
# Load the 20 % elevator fault case
ds = load_dataset("SM-Bello/PHI-CTRL-F16-Fault-Recovery-Telemetry", data_files="20pct-elev/baseline_recovery_log.csv")
df = pd.DataFrame(ds["train"])
print(df[["time_s", "alt_ft", "vc_kts", "eff_gamma", "fault_active"]].describe())8. Try it, cite it, help build it
PHI-CTRL is an active, evolving project — this dataset is a snapshot of one verification layer, not a finished product. A few ways to get involved:
- Reproduce the baseline gate using the scripts and control law in the source repo, and compare against the
PASStelemetry here. - Try the archived release directly via the citable Zenodo DOI (10.5281/zenodo.22218809) if you want a frozen, versioned snapshot instead of tracking
main. - Extend the fault set — asymmetric faults, high-AoA regimes, multi-surface failures, or sensor-bias-only cases are all open. Open an issue or PR on GitHub, or use this dataset's Community tab here on Hugging Face.
- Take on the c172p negative result — if you have flight-dynamics or JSBSim expertise and want to figure out why
c172pwon't trim, that's an open, documented problem waiting for a fix or a better explanation.
New releases (and their DOIs) are announced on the GitHub Releases page first — that's the best place to watch if you want to stay current with the project.
9. Citation
@misc{bello2026phictrl-f16,
author = {Mohammed Bello Sani},
title = {PHI-CTRL F-16 Actuator Fault Recovery Dataset: High-Fidelity JSBSim 6-DOF Telemetry for Physics-Hybrid Self-Healing Flight Control},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/datasets/SM-Bello/PHI-CTRL-F16-Fault-Recovery-Telemetry}},
doi = {10.5281/zenodo.22218809},
note = {Part of the PHI-CTRL (Physics-Hybrid Integrity Control) research program. Source: https://github.com/Sm-bello/PHI-CTRL}
}10. License & Contact
- License: CC-BY-4.0
- Author: Mohammed Bello Sani (@SM-Bello) · smbello.vercel.app
- GitHub: Sm-bello/PHI-CTRL
- Enterprise: penelope-inc.vercel.app
For questions, collaboration, or to contribute additional fault cases (asymmetric, high-AoA, multi-surface), open an issue on GitHub or use this dataset's Community tab.
