predictive-maintenance

German Version

Beschreibung der Funktion predict_time_to_next_defect V6

Die Funktion predict_time_to_next_defect berechnet auf Basis der historischen Mängeldaten eines Fahrzeugs die geschätzte Zeit bis zum nächsten Defekt. Die Vorhersage erfolgt durch die Analyse der zeitlichen Abstände zwischen aufeinanderfolgenden Mängeln und verwendet ein lineares Regressionsmodell, um zukünftige Defekte vorherzusagen.


Funktionalität

Zweck


Parameter

  1. defects_df (Pandas DataFrame):
    • DataFrame mit den Mängeldaten des Fahrzeugs.
    • Erforderliche Spalten:
      • timestamp: Zeitstempel des Mangels.
      • mileage: Kilometerstand, bei dem der Mangel aufgetreten ist.
      • downtime (optional): Dauer des Fahrzeugstillstands aufgrund des Mangels.

Rückgabewerte


Ablauf der Funktion

1. Datenüberprüfung

required_columns = ["timestamp", "mileage", "downtime"]
for col in required_columns:
    if col not in defects_df.columns:
        raise ValueError(f"Die Spalte '{col}' fehlt im DataFrame.")

2. Vorbereitung der Daten

defects_df['timestamp_numeric'] = pd.to_datetime(defects_df['timestamp']).astype(int) // 10**9
defects_df = defects_df.sort_values(by="timestamp_numeric")

3. Überprüfung der Datenmenge

if len(defects_df) < 2:
    return {
        "time_to_next_defect": "Nicht genug Daten, um die Zeit bis zum nächsten Defekt vorherzusagen."
    }

4. Berechnung der Zeitabstände

defects_df["time_diff"] = defects_df["timestamp_numeric"].diff().fillna(0)

5. Lineares Regressionsmodell

X = np.arange(len(defects_df) - 1).reshape(-1, 1)  # Index der Mängel
y = defects_df["time_diff"].iloc[1:].values  # Zeitdifferenzen

model = LinearRegression()
model.fit(X, y)
next_defect_time = model.predict([[len(defects_df)]])[0]

6. Rückgabe der Ergebnisse

results["time_to_next_defect"] = f"{next_defect_time:.2f} Sekunden bis zum nächsten Mangel"

Beispiel

Eingabedaten (defects_df)

timestamp mileage downtime
2024-01-01 12:00:00 12000 2.5 h
2024-02-01 15:00:00 14000 3.0 h
2024-03-01 18:00:00 16000 1.5 h

Ausgabe

{
    "time_to_next_defect": "2592000.00 Sekunden bis zum nächsten Mangel"
}

Stärken der Funktion

  1. Einfache Implementierung:
    • Nutzt die Differenzen zwischen den Zeitstempeln, um Muster zu erkennen.
  2. Flexibilität:
    • Kann auf verschiedene Fahrzeuge oder andere Defektdaten angewendet werden.
  3. Integration mit anderen Datenquellen:
    • Kann mit weiteren Variablen (z. B. Fahrzeuglast, Geschwindigkeit) erweitert werden.

Zusammenfassung

Die Funktion predict_time_to_next_defect ist ein nützliches Werkzeug, um zukünftige Mängel anhand historischer Daten vorherzusagen. Sie bietet eine solide Grundlage für die Integration in größere prädiktive Wartungssysteme und kann durch zusätzliche Daten und Modelle weiter verbessert werden.


Lizenz

Autor: Jörg Harzmann

Dieser Inhalt ist unter einer CC BY-NC Lizenz veröffentlicht. Jeglicher Quellcode ist urheberrechtlich geschützt!