diagnose_vibration
Analyze vibration signals to detect bearing faults, spectral anomalies, and ISO severity. Generates an actionable diagnostic report for predictive maintenance.
Instructions
Full integrated diagnosis: FFT + PSD + STFT + bearing faults + ISO severity.
Comprehensive vibration diagnostic pipeline. Loads signal from repository,
runs all analyses, and synthesizes results into an actionable report.
The ISO severity block uses ISO 20816-3 machine group/support type
(zone boundaries from ISO 10816-3:2009, provenance noted in output).
The diagnosis DEGRADES instead of failing when the ISO verdict cannot
be produced honestly: if the stored signal has no declared unit (or
the sampling rate cannot cover the ISO evaluation band), the
iso_severity block is a structured refusal (status='refused' with
reason and remedy) while the spectral, bearing, and anomaly blocks
still run. Units are never guessed from amplitude — declare them via
load_signal(signal_unit=...) or the companion _metadata.json.
Args:
signal_id: ID of the stored signal.
rpm: Machine operating speed in RPM.
bearing_id: Bearing designation for fault detection (optional).
machine_group: 1 (large, >300 kW) or 2 (medium, 15-300 kW).
Default 2.
support_type: 'rigid' or 'flexible'. Default 'rigid'.
Raises:
ValueError: If the stored signal has no sampling rate.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rpm | Yes | ||
| signal_id | Yes | ||
| bearing_id | No | ||
| support_type | No | rigid | |
| machine_group | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rpm | Yes | Machine speed (RPM) | |
| signal_id | Yes | Signal identifier used | |
| bearing_id | No | Bearing used (if any) | |
| fft_summary | Yes | FFT key findings | |
| psd_summary | Yes | PSD key findings | |
| iso_severity | Yes | ISO severity assessment, or a structured refusal (status='refused' with reason + remedy) when the verdict cannot be produced honestly — e.g. undeclared signal unit or Nyquist below the ISO evaluation band. The other diagnosis blocks (spectral, bearing, anomaly) still run. | |
| stft_summary | Yes | STFT key findings | |
| support_type | Yes | Support type used for severity: 'rigid' or 'flexible' | |
| machine_group | Yes | ISO 20816-3 machine group used for severity: 1 (large) or 2 (medium) | |
| bearing_faults | No | Bearing fault results | |
| recommendations | Yes | Recommended actions | |
| anomaly_detection | No | Anomaly detection results (health, ratio, score) | |
| evidence_strength | Yes | Strength of corroborating fault evidence: 'none', 'weak', 'moderate', or 'strong'. Derived from the number and quality of independent findings (bearing fault frequency matches, shaft signatures, anomaly detection, ISO severity) — NOT from severity alone and NOT a probability. 'none' means no fault evidence was found (machine appears healthy). | |
| overall_diagnosis | Yes | Combined diagnostic text |