Docs · patent pending
Condition monitoring: method & results
AT-1’s diagnostic add-on reads the residual a lossless compressor already produces and turns it into a bearing-fault diagnostic — detecting and localizing a developing defect and trending its severity, with no separately trained model, no labels, and no training corpus. This page documents the mechanism, the verified results, the alert format a CMMS consumes, how it’s billed, and the boundary where the method stops.
What the diagnostic does
To compress a vibration time-series losslessly, AT-1 fits a generating model (in the preferred embodiment an autoregressive / linear-predictive model) and stores the model parameters plus an entropy-coded residual— the exact difference between the data and the model’s quantized prediction. For a healthy machine that residual is essentially structureless. A developing defect — a spall on a race, a pit on a ball — produces a periodic impulse every time a rolling element strikes it, and those impulses survive into the residual.
AT-1 computes an envelope spectrumof the residual (a Hilbert envelope, then an FFT) and scores the magnitude at each of the bearing’s characteristic fault frequencies — relative to a local median. A healthy residual scores near baseline; a developing fault scores tens-to-hundreds at its own frequency. Because each fault frequency maps to a physical component, the fault is localized, not merely detected.
Characteristic fault frequencies
Computed from bearing geometry and shaft speed. For a rolling-element bearing these are the ball-pass inner-race (BPFI), ball-pass outer-race (BPFO), ball-spin (BSF), and cage (FTF) frequencies. The defaults below are the CWRU SKF 6205-2RS multipliers (× shaft speed in Hz); override per your bearing.
BPFI = 5.4152 · fr # inner race -> "bearing inner race" BPFO = 3.5848 · fr # outer race -> "bearing outer race" BSF = 2.3570 · fr # ball / roller -> "rolling element" FTF = 0.3983 · fr # cage -> "cage / train" ( fr = rpm / 60 )
Verified results (real CWRU bearing data)
Reduced to practice on 40 real Case Western Reserve drive-end recordings — healthy baselines plus seeded inner-race, ball and outer-race faults at 0.007 / 0.014 / 0.021″ across four loads. Each recording was compressed and its residual scored, label-free.
| Metric | Result |
|---|---|
| Detection (faults flagged) | 28 / 36 (78%) |
| False alarm on healthy baselines | 0 / 36 (0%) |
| Localization — inner race | 11 / 12 (92%) |
| Localization — outer race | 8 / 12 (67%) |
| Localization — ball (hardest mode) | 2 / 12 (17%) |
Inner- and outer-race faults — the dominant industrial failure modes — are detected and localized strongly. Ball faults are universally the hardest mode and the method is weak there; we report it openly rather than hiding it.
The alert / work order
A flagged asset emits a CMMS-ready work order — field names mirror the common Maximo WORKORDER / SAP PM notification shape, so it drops onto a connector with no mapping:
{
"asset_id": "PUMP-101.DE",
"location": "Plant A / Line 2",
"problem_code": "BPFO",
"description": "Developing bearing outer race defect detected at 107.4 Hz
(structure score 31.2, elevated, worsening). Label-free
residual diagnostic; inspect before the RMS/temp alarm.",
"priority": 2,
"severity": "elevated",
"trend": "worsening",
"detected_freq_hz": 107.4,
"source": "AT-1 diagnostic-residual",
"note": "Detection + localization + severity trend. NOT a remaining-useful-life estimate."
}A severity trend (worsening / stable / first-seen) is computed across successive snapshots so maintenance can prioritize the worst machine first.
Billing
The diagnostic rides the same metering rail as the AT-1 encoder. Each monitored asset is registered as an inventory line (archive_id="diag:<asset>") and the analyzed signal volume is reported on the I/O axis. It’s sold as a per-monitored-asset add-on on top of a storage deal — the reliability-engineering budget, not the storage admin’s. Offline / unlicensed use is a no-op and never blocks.
Condition monitoring is a licensed engine. Enable it from your dashboard at /engines (requires a card on file), accept the EULA, and download the wheel — then at1 condition-monitor report sensors.csv works once the at1-engines wheel is installed.
The honest boundary
This is detection + localization + a severity trend, earlier than a conventional RMS-amplitude or temperature alarm while the machine still runs. It is not a remaining-useful-life or time-to-failure prediction — that is not reliably inferable from this signal, and we tested for it explicitly (a multi-bearing run-to-failure study gave only 2/4 robust early warnings, so we dropped the RUL claim). The value is catching the developing defect, and naming the part, with zero extra sensors, ML, or labels.
See the condition-monitoring overview, the underlying generative compression tier the residual comes from, and request a pilot.