03 Stillstandsauswertung
Stillstandsauswertung in Grafana mit der ENLYZE API.
Zuletzt aktualisiert
Stillstandsauswertung in Grafana mit der ENLYZE API.
In diesem Tutorial erstellst du ein Dashboard zur Analyse von Maschinenstillständen mit Kreisdiagramm, Zeitstrahl und Detailtabelle:

Den downtimes-API-Endpoint abfragen
Stillstandsdauer mit Transformationen berechnen
Stillstände mit Kreisdiagramm, Bar Gauge und State Timeline visualisieren
Value Mappings für Stillstandskategorien einrichten
ENLYZE API abfragen und Variablen abgeschlossen
Verständnis von Infinity-Queries und Transformationen
Type
JSON
Parser
Backend
Method
GET
URL
downtimes?machine=${machine}&start=${__from:date:iso}&end=${__to:date:iso}
Root selector
siehe JSONata
Die API liefert Stillstände mit verschachtelter Grund-Information. Verwende JSONata, um die Felder zu extrahieren und fehlende Endzeiten aufzufüllen:
Wenn end den Wert null hat, ist der Stillstand noch aktiv. $now() ersetzt fehlende Endzeiten durch den aktuellen Zeitpunkt.

Die Dauer lässt sich mit Transformationen aus Start- und Endzeit berechnen:
Convert field type: start und end → Time
Add field from calculation: Mode Binary, end - start → duration_ms
Add field from calculation: duration_ms / 1000 → duration
Setze die Unit des duration-Felds auf Duration (d hh:mm:ss) (dtdhms).

Visualisiere die Verteilung der Stillstandskategorien:
Verwende die Basis-Query mit den Transformationen zur Dauerberechnung
Füge eine Group by-Transformation hinzu: Group by category, Aggregate duration → Sum
Wähle die Visualisierung Pie Chart
Richte Value Mappings ein, um die API-Werte lesbar zu machen:
PLANNED
Geplanter Stillstand
Blau
UNPLANNED
Ungeplant (manuell)
Orange
NOT_SCHEDULED
Nicht eingeplant
Grau
UNKNOWN
Kein Grund
Gelb

Zeige die Dauer pro Kategorie als horizontale Balken:
Visualization
Bar Gauge
Orientation
Horizontal
Display mode
Basic
Unit
Duration (d hh:mm:ss)
Verwende die gleiche Query und Transformationen wie beim Kreisdiagramm.

Zeige, wann Stillstände im Zeitverlauf aufgetreten sind:
Visualization
State timeline
Merge values
On
Verwende dieselben Value Mappings wie beim Kreisdiagramm, damit die Kategorien farblich konsistent sind.

Zeige einzelne Stillstandsereignisse mit allen Details:
start
Timestamp
dateTimeAsIso
end
Timestamp
dateTimeAsIso
duration
Number
Unit: dtdhms
category
String
Value Mappings
reason
String
-

Stillstandskategorien: PLANNED (geplante Wartung, Rüsten), UNPLANNED (manuell gemeldet), NOT_SCHEDULED (keine Produktion eingeplant). Verwende konsistente Farben in allen Panels.
Laufende Stillstände: Ersetze null-Endzeiten mit $now() in JSONata, damit die Dauerberechnung funktioniert.
Leere Daten: Prüfe den Zeitbereich. Stillstände sind nur für Zeiträume verfügbar, in denen die Maschine aktiv war.
Pareto-Analyse: Filtere auf UNPLANNED, gruppiere nach reason und sortiere absteigend nach duration, um die häufigsten Stillstandsgründe zu identifizieren.
Shopfloor-Monitoring - Dashboards für große Bildschirme und Mobilgeräte erstellen
Zuletzt aktualisiert
$.data.{
"start": start,
"end": end ? end : $now(),
"category": reason.category ? reason.category : "UNKNOWN",
"reason": reason.name
}