Technische Artikel

Predictive Maintenance mit einem digitalen Zwilling

Von Steve Miller, MathWorks


Wenn Industrieanlagen ausfallen, sind das wirkliche Problem häufig nicht die Kosten für die Ersetzung des defekten Teils, sondern die erzwungene Ausfallzeit. Ein Stillstand einer Produktionsanlage kann Verluste von Tausenden Euro pro Minute bedeuten. Mit regelmäßigen Wartungsarbeiten können ungeplante Ausfallzeiten verringert werden; sie garantieren aber nicht, dass Anlagen niemals ausfallen.

Wie wäre es, wenn ein Gerät melden könnte, dass eines seiner Bauteile kurz vor einem Ausfall steht? Wie wäre es, wenn das Gerät Ihnen sogar mitteilen könnte, welches Bauteil ersetzt werden muss? Ungeplante Ausfallzeiten würden erheblich reduziert. Geplante Wartungsarbeiten würden nur bei Bedarf und nicht in festen Abständen durchgeführt. Das ist das Ziel von Predictive Maintenance: Ausfallzeiten zu vermeiden, indem anhand von Sensordaten vorhergesagt wird, wann eine Wartung erforderlich ist.

Im Zentrum der Entwicklung jedes Predictive-Maintenance-Algorithmus stehen Sensordaten, mit denen ein Klassifikationsalgorithmus zur Fehlererkennung trainiert werden kann. Aus diesen Daten werden in einem Vorverarbeitungsschritt aussagekräftige Merkmale extrahiert und zum Training eines Machine-Learning-Algorithmus für Predictive Maintenance verwendet. Dieser Algorithmus wird zur Verifikation in eine Simulationssoftware wie Simulink® exportiert und dann in Form von Code auf der Steuereinheit des Geräts bereitgestellt.

Es ist nicht immer möglich, Daten von physischen Anlagen im Einsatz unter typischen Fehlerbedingungen zu erfassen. Das Zulassen von Fehlern im Einsatz kann zu fatalen Ausfällen und zur Zerstörung von Anlagen führen. Das absichtliche Erzeugen von Fehlern unter stärker kontrollierten Bedingungen kann zeitaufwendig, kostspielig oder sogar nicht durchführbar sein.

Eine Lösung für diese Herausforderung besteht darin, einen digitalen Zwilling der Anlage zu erstellen und Sensordaten für verschiedene Fehlerbedingungen durch Simulation zu erzeugen. Mit diesem Ansatz können Ingenieure alle Sensordaten erzeugen, die für einen Predictive-Maintenance-Workflow benötigt werden, einschließlich Tests mit allen möglichen Fehlerkombinationen und Fehlern unterschiedlichen Schweregrads.

In diesem Artikel wird der Entwurf eines Predictive-Maintenance-Algorithmus für eine Triplexpumpe mit MATLAB®, Simulink und Simscape™ beschrieben (Abbildung 1). Ein digitaler Zwilling der Pumpe wird in Simscape erstellt und mit gemessenen Daten abgestimmt und der Predictive-Maintenance-Algorithmus wird mithilfe von Machine Learning erstellt. Der Algorithmus benötigt nur den Auslassdruck der Pumpe, um zu erkennen, welche Komponenten oder Kombinationen von Komponenten kurz vor dem Ausfall stehen.

Abbildung 1: Predictive-Maintenance-Workflow.

Abbildung 1: Predictive-Maintenance-Workflow.

Erstellen des digitalen Zwillings

Eine Triplexpumpe hat drei Kolben, die von einer Kurbelwelle angetrieben werden (Abbildung 2). Die Kolben sind so angeordnet, dass stets Flüssigkeit aus einer Kammer austritt. Dies macht den Durchfluss gleichmäßiger, verringert Druckschwankungen und reduziert damit die Materialbelastung im Vergleich zu einer Einzelkolbenpumpe. Typische Ausfallbedingungen einer solchen Pumpe sind abgenutzte Kurbelwellenlager, undichte Kolbendichtungen und blockierte Einlasse.

Figure 2. Triplex pump schematic and plot showing volumetric flow rate.

Abbildung 2: Schematische Darstellung der Triplexpumpe und Diagramm des Durchflussvolumens.

CAD-Modelle für Pumpen, die oft vom Hersteller erhältlich sind, können in Simulink importiert und für die Erstellung eines mechanischen Modells der Pumpe für die 3D-Mehrkörpersimulation verwendet werden. Um das dynamische Verhalten des Systems zu modellieren, muss die Pumpe nun um die hydraulischen und elektrischen Elemente ergänzt werden.

Einige der für die Erstellung eines digitalen Zwillings erforderlichen Parameter, wie Bohrung, Hub und Wellendurchmesser, finden Sie im Datenblatt des Herstellers, andere fehlen jedoch möglicherweise oder sind nur als Bereiche angegeben. In diesem Beispiel benötigen wir den oberen und unteren Druck, bei dem die drei Rückschlagventile, die den Auslass speisen, öffnen und schließen. Wir haben keine genauen Werte für diese Drücke, da sie von der Temperatur der beförderten Flüssigkeit abhängen.

Das Diagramm in Abbildung 3 zeigt, dass die Simulation der Pumpe mit groben Schätzungen (blaue Linie) nicht ausreichend mit den Daten aus dem Einsatz (schwarze Linie) übereinstimmt. Die blaue Linie ähnelt der Messkurve in gewissem Maße, aber die Unterschiede sind offensichtlich groß.

Abbildung 3: Parameterschätzung anhand gemessener Daten.

Abbildung 3: Parameterschätzung anhand gemessener Daten.

Wir verwenden Simulink Design Optimization™, um die Parameterwerte automatisch so zu optimieren, dass das Modell Ergebnisse erzeugt, die mit den gemessenen Daten übereinstimmen. Die zur Optimierung ausgewählten Parameter befinden sich im Check Valve Outlet-Block in Simscape (Abbildung 4). Simulink Design Optimization wählt Parameterwerte aus, führt eine Simulation durch und berechnet die Differenz zwischen der simulierten und der gemessenen Kurve. Anhand dieses Ergebnisses werden neue Parameterwerte ausgewählt und eine neue Simulation wird durchgeführt. Die Gradienten der Parameterwerte werden berechnet, um die Richtung zu bestimmen, in die der Parameter angepasst werden soll. In diesem Beispiel wird schnell Konvergenz erreicht, da nur zwei Parameter optimiert werden. Für komplexere Szenarien mit mehr Parametern ist es wichtig, Funktionen zu nutzen, die den Optimierungsprozess beschleunigen.

Abbildung 4: Optimieren von Parameterwerten in Simscape.

Abbildung 4: Optimieren von Parameterwerten in Simscape.

Erstellung des prädiktiven Modells

Nachdem somit ein digitaler Zwilling der Pumpe erstellt wurde, besteht der nächste Schritt darin, das Verhalten ausgefallener Komponenten in das Modell aufzunehmen.

Es gibt verschiedene Möglichkeiten, Fehlerverhalten hinzuzufügen. Viele Simulink-Blöcke besitzen Dropdown-Menüs für typische Fehler wie Kurzschlüsse oder unterbrochene Stromkreise. Durch einfache Änderung von Parameterwerten können Effekte wie Reibung oder Fading modelliert werden. In diesem Beispiel werden drei Fehlertypen betrachtet: erhöhte Reibung durch ein abgenutztes Lager, ein verkleinerter Durchflussbereich durch einen blockierten Einlass und undichte Kolbendichtungen. Für die ersten beiden Fehler müssen Blockparameter angepasst werden. Um Undichtigkeit zu modellieren, müssen wir einen Pfad zum Hydrauliksystem hinzufügen.

Wie in Abbildung 5 dargestellt, können die ausgewählten Fehlerbedingungen entweder über eine Benutzeroberfläche oder über die Befehlszeile in MATLAB aktiviert und deaktiviert werden. Im hier vorgestellten Modell werden alle Fehlerbedingungen über MATLAB-Befehle aktiviert und deaktiviert. So kann der gesamte Prozess mithilfe von Skripts automatisiert werden.

Abbildung 5: Modellieren einer Undichtigkeit in der Triplexpumpe. Parameter können über das Dialogfeld für den Pump-Block (oben) oder die Befehlszeile (unten) geändert werden.

Abbildung 5: Modellieren einer Undichtigkeit in der Triplexpumpe. Parameter können über das Dialogfeld für den Pump-Block (oben) oder die Befehlszeile (unten) geändert werden. 

Bei der Simulation der in Abbildung 6 oben dargestellten Pumpe wurden zwei Fehler aktiviert: ein blockierter Einlass und eine undichte Dichtung an Kolben 3. Diese Fehler sind durch die roten Kreise markiert. Das Diagramm in Abbildung 6 zeigt die Simulationsergebnisse für den Auslassdruck als kontinuierliche Linie (blau) sowie als Abtastwerte mit Rauschen (gelb). Die durch die Simulation erzeugten Daten müssen Quantisierungsrauschen einschließen, da wir unseren Fehlererkennungsalgorithmus mit möglichst realistischen Daten trainieren müssen.

Abbildung 6: Oben: Schematische Darstellung der Pumpe, die den blockierten Einlass und die undichte Dichtung zeigt. Unten: Diagramm der Auslassdruck-Simulation (blaue Linie), auch als Abtastwerte mit Rauschen (gelbe Linie).

Abbildung 6: Oben: Schematische Darstellung der Pumpe, die den blockierten Einlass und die undichte Dichtung zeigt. Unten: Diagramm der Auslassdruck-Simulation (blaue Linie), auch als Abtastwerte mit Rauschen (gelbe Linie).

Der grüne Kasten in Abbildung 6 zeigt den normalen Wertebereich für den Auslassdruck an. Es gibt Spitzen, die deutlich außerhalb des Normalbereichs liegen, was auf einen Fehler hinweist. Allein dieses Diagramm würde einem Ingenieur oder Pumpenbediener sagen, dass etwas nicht stimmt, aber es ist noch nicht möglich, genau zu beurteilen, was der Fehler ist.

Wir verwenden diese Simulation, um Druckdaten für die Pumpe unter allen möglichen Kombinationen von Fehlerbedingungen zu erzeugen. Für den digitalen Zwilling wurden ca. 200 Szenarien erstellt. Jedes Szenario muss mehrmals simuliert werden, um Quantisierungseffekte im Sensor zu berücksichtigen. Da dieser Ansatz mehrere tausend Simulationen erfordert, suchen wir nach Möglichkeiten, die Datenerzeugung zu beschleunigen.

Ein typischer Ansatz ist die Verteilung von Simulationen auf die verfügbaren Threads auf Mehrkernrechnern oder auf mehrere Rechner oder Computercluster. Je nach Komplexität des Problems, Zeitvorgaben und Ressourcen wird dieser Ansatz durch die Parallel Computing Toolbox™ und den MATLAB Parallel Server™ unterstützt.

Ein weiterer Ansatz ist die Verwendung der Funktion „Fast Restart“ in Simulink, die den Umstand nutzt, dass viele Systeme eine bestimmte Einschwingzeit benötigen, bis ein stationärer Zustand erreicht ist. Mit „Fast Restart“ muss dieser Teil des Tests nur einmal simuliert werden. Alle folgenden Simulationen beginnen an dem Punkt, an dem das System den stationären Zustand erreicht hat. Im vorliegenden Beispiel würde die Einschwingzeit etwa 70 % der Simulationszeit ausmachen, die für einen einzelnen Test benötigt wird (Abbildung 7). Somit können mit „Fast Restart“ etwa zwei Drittel der Simulationszeit eingespart werden. Da die Funktion „Fast Restart“ sowohl über die MATLAB-Befehlszeile als auch über Skripts konfiguriert werden kann, eignet sie sich hervorragend zur Automatisierung des Trainingsprozesses.

Abbildung 7: Verwendung der Funktion „Fast Restart“ in Simulink zur Reduzierung der Simulationszeit.

Abbildung 7: Verwendung der Funktion „Fast Restart“ in Simulink zur Reduzierung der Simulationszeit.

Im nächsten Schritt werden die Simulationsergebnisse verwendet, um Trainingsdaten für den Machine-Learning-Algorithmus zu extrahieren. Die Predictive Maintenance Toolbox™ bietet verschiedene Möglichkeiten zur Merkmalserstellung aus Trainingsdaten. Da das hier betrachtete Signal periodisch ist, erscheint eine FFT am vielversprechendsten. Wie in Abbildung 8 dargestellt, ergibt sich eine kleine Anzahl klar getrennter Spitzen unterschiedlicher Größenordnung sowohl für einzelne Fehler als auch für Fehlerkombinationen. Dies ist die Art von Daten, die ein Machine-Learning-Algorithmus sehr gut verarbeiten kann. 

Abbildung 8: Verwendung einer Fast-Fourier-Transformation zum Extrahieren von Trainingsdaten.

Abbildung 8: Verwendung einer Fast-Fourier-Transformation zum Extrahieren von Trainingsdaten.

Die FFT-Ergebnisse für jedes Fehlerszenario werden in eine Tabelle extrahiert, die die eingefügten Fehler sowie die beobachteten Signalfrequenzen und -größenordnungen enthält. Daher müssen nur relativ wenige Parameter berücksichtigt werden.

Nun sind alle für das Training eines Fehlererkennungsalgorithmus erforderlichen Daten verfügbar und können in die Statistics and Machine Learning Toolbox™ importiert werden. Wir verwenden eine Teilmenge der erzeugten Daten, um den trainierten Algorithmus zu verifizieren.

Wir visualisieren die Ergebnisse des Trainingsprozesses in der Statistics and Machine Learning Toolbox. Anhand dieser Visualisierungen können wir die Stärken und Schwächen verschiedener Algorithmen vergleichen und ermitteln, ob zusätzliche Trainingsdaten benötigt werden. Wir wählen den trainierten Algorithmus aus, der die höchste Genauigkeit bei der Bestimmung des Pumpenfehlers auf Basis der Messdaten erzielt hat, und importieren ihn zur Verifikation anhand von sieben zu diesem Zweck gespeicherten Testfällen in den digitalen Zwilling (Abbildung 9). Wie die Endergebnisse zeigen, ist der Klassifikationsalgorithmus in der Lage, alle sieben Szenarien sicher zu erkennen. Er kann nun auf der Steuereinheit bereitgestellt werden.

Abbildung 9: Exportieren des genauesten Modells zur Verifikation.

Abbildung 9: Exportieren des genauesten Modells zur Verifikation.

Eine reale Anwendung dieses Workflows sind Industrieanlagen, die weltweit unter sehr unterschiedlichen Umgebungsbedingungen eingesetzt werden. Diese Anlagen können geändert werden: Es kann ein neuer Dichtungs- oder Ventilanbieter ausgewählt werden, die Pumpe kann mit verschiedenen Arten von Flüssigkeiten und in neuen Umgebungen mit unterschiedlichen Tagestemperaturspannen betrieben werden. All diese Faktoren beeinflussen den vom Sensor gemessenen Druck, was den Fehlererkennungsalgorithmus möglicherweise unzuverlässig oder sogar nutzlos macht. Die Fähigkeit, den Algorithmus schnell an neue Bedingungen anzupassen, ist entscheidend für den Einsatz dieser Anlagen in neuen Märkten.

Der hier beschriebene Workflow kann mit Skripts in MATLAB automatisiert werden und der Großteil der Arbeitsergebnisse kann wiederverwendet werden. Der einzige Schritt, der wiederholt werden muss, ist die Datenerfassung unter vergleichbaren Bedingungen wie bei der Pumpe im Einsatz.

Mit den neuesten Fortschritten der intelligenten Vernetzung wird es für Maschinenbauer sogar möglich sein, Kunden Anlagen mit vorläufigen Einstellungen zu liefern, Daten unter realen Bedingungen vor Ort aus der Ferne zu sammeln, den Fehlererkennungsalgorithmus zu trainieren und ihn dann aus der Ferne erneut auf dem Gerät bereitzustellen. Dies wird neue Möglichkeiten für die Unterstützung von Kunden eröffnen, einschließlich des erneuten Trainierens der Fehlererkennung auf Anlagen, die seit einiger Zeit im Einsatz sind, unter standortspezifischen Bedingungen. Die anhand zahlreicher Geräte gewonnenen Erkenntnisse werden sowohl Kunden als auch Herstellern zugutekommen.

Zusammenfassung

Mit Predictive Maintenance können Ingenieure genau bestimmen, wann Anlagen gewartet werden müssen. Dies reduziert Ausfallzeiten und verhindert Anlagenausfälle, da die Wartung nicht nach einem vorgegebenen Zeitplan, sondern nach dem tatsächlichen Bedarf geplant werden kann. Oft wäre es zu teuer oder gar unmöglich, die notwendigen Fehlerbedingungen zu schaffen, um einen Predictive-Maintenance-Algorithmus am realen Gerät zu trainieren. Eine Lösung für diese Herausforderung besteht darin, Daten aus dem Einsatz des voll funktionsfähigen Geräts zu verwenden, um ein physikalisches 3D-Modell zu optimieren und einen digitalen Zwilling zu erstellen. Der digitale Zwilling kann dann verwendet werden, um einen Erkennungsalgorithmus für Predictive Maintenance zu entwerfen, der auf der Steuereinheit der Anlage bereitgestellt wird. Der Prozess kann automatisiert werden. Dies ermöglicht eine schnelle Anpassung an unterschiedliche Bedingungen, zu verarbeitende Materialien und Anlagenkonfigurationen.

Veröffentlicht 2019