A digital twin that hears the bearing failing.
Rotating machinery fails at its bearings, and it warns you first — in vibration nobody can read by eye. This program is the digital-twin diagnostic loop: a drivetrain model that mirrors a running asset, a synthetic accelerometer feed, and the full condition-monitoring chain — envelope analysis, a kurtogram, a neural-network classifier, and a remaining-useful-life estimate — that turns a noisy signal into a part number and a deadline.

The fault is there — you just can't see it.
A localized bearing defect strikes once per revolution of the rolling elements over it, at a frequency fixed by the bearing geometry — the ball-pass frequencies (BPFO/BPFI/BSF) and the cage rate. Each strike is a faint impact that rings the bearing housing's resonance. In the raw vibration spectrum that signature is drowned: the shaft harmonics tower over it and the impact energy smears into a broad resonance hump. Look at the raw FFT and the failing bearing is invisible.

Envelope analysis lifts the tone out of the carrier.
The fault rings the resonance, so the resonance is the carrier and the fault is the modulation. Bandpass around the resonance, take the Hilbert envelope to demodulate it, and FFT that envelope — and the fault frequency snaps into focus with a clean harmonic series. This program recovers the outer-race fault at 108 Hz against a theoretical 107.5 Hz, within a single FFT bin, and shows the inner-race case flanked by the shaft-rate sidebands its amplitude modulation predicts. A kurtogram finds the best demodulation band automatically, for when you don't know the resonance in advance.


From a signal to a part and a deadline.
Detection is the start. The program closes the loop a maintenance team actually needs: which fault, how bad, how long.
Physical twin
A motor → rotor → bearing → load drivetrain on the acausal rotational domain, spun up to the 30 Hz operating shaft rate that sets the fault frequencies — the model the diagnostics mirror.
Neural classifier
A small Lux network over physics-informed features (RMS, kurtosis, crest factor, envelope peaks at each fault frequency) sorts healthy / outer / inner / ball at 100% test accuracy — a clean confusion matrix.
Remaining useful life
An exponential fit to the health indicator projects time-to-threshold — a median of ~19 cycles with a bootstrap confidence band, within 6.9% of ground truth.
Twin calibration
System identification fits the model's bearing resonance and damping to the measured spectrum, so the twin tracks the specific machine, not a generic one.


Every claim is a number you can re-run.
The sign-off notebook re-derives each requirement from the same synthetic signals the program diagnoses — measured live in the worker.
| Result | Target | |
|---|---|---|
| Fault-frequency error | < 1 bin | 108 vs 107.5 Hz |
| Classifier test accuracy | 100% | 4 classes |
| False-alarm rate (healthy) | 0% | ≤ 5% |
| RUL error | 6.9% | within budget |
| Requirements verified | 7 / 7 | PASS |
Synthetic signals, real techniques.
The vibration is synthesized from a bearing-fault model with known ground truth, not recorded from a real accelerometer — which is precisely what makes every number reproducible and the technique teachable. The bearing is a single lumped resonance rather than a measured modal model, the degradation law is a simple exponential, and the kurtogram band is a neighbourhood estimate. The methods themselves — envelope demodulation, spectral kurtosis, feature-based classification, exponential RUL, spectral system-ID — are exactly the production condition-monitoring toolkit. Point it at your own accelerometer CSV and the same chain runs.
Put a twin on your rotating assets.
Book a walkthrough and we'll set up your machine's bearing geometry and operating speed, and run the envelope, classifier and RUL chain on your signals.
