Grafik des Schrauben-Demonstrators

Success Story: Condition Monitoring einfach erklärt

Anwendungsszenarien wie Condition Monitoring oder Predictive Maintenance sind bekannte Beispiele für Industrie 4.0. Wie können diese Use Cases in die Realität umgesetzt werden und welchen Beitrag bieten dabei Methoden des maschinellen Lernens? Diese Success Story zeigt anhand eines einfachen Beispiels, wie maschinelles Lernen mit zeitreihenbasierten Daten funktioniert.

Dabei wird vorgestellt, wie die sehr allgemeine Methodik des Machine Learnings in Kombination mit einfach zu erfassenden Daten zu einer spezifischen, leistungsfähigen Lösung führt. Diese Erkenntnisse lassen sich auch auf komplexe Zusammenhänge und Prozessketten, wie sie in Produktionsunternehmen zu finden sind, übertragen.

Als Demonstrator wird ein Modell bezeichnet, das die Machbarkeit einer Lösung demonstriert, also die prototypische, meist vereinfachte Umsetzung vor der Realisierung. Mit einem selbstgebauten Demonstrator wird anhand der einfachen Fragestellung, wie viele Schrauben in ein Schwungrad montiert sind, die Anwendung von maschinellem Lernen im Produktionsumfeld anschaulich dargestellt. An diesem Beispiel wird deutlich, wie es funktioniert, dass Daten, die von einer Maschine erhoben werden, in Echtzeit Auskunft über deren Zustand bzw. sogar weiterführend über den Zustand von angebrachten Teilen geben.

Somit werden nachfolgend die Grundlagen für die Zustandsüberwachung einer Maschine sowie die Erarbeitung von hardwareunabhängigen Lösungen, wie sie für vorausschauende Wartung notwendig sind, erklärt.

Individuelle Anforderungen bedingen hardware-unabhängige Lösungen

 

Die steigende Volatilität stellt Unternehmen vor große Herausforderungen. Gerade in der Industrie wird durch steigenden Markt- und Wettbewerbsdruck hohe Prozessgeschwindigkeit und -sicherheit gefordert. Gleichzeitig braucht es flexible und anpassbare Strukturen, um verkürzte Produktlebenszyklen, steigende Produktkomplexitäten und größere Varianten bzw. kundenindividuelle Produkte liefern zu können.

Deshalb ist es notwendig Lösungen zu schaffen, die in Echtzeit auf sich ändernde Bedingungen reagieren und unabhängig von eingesetzten Maschinen und Anlagenteilen sind. Zudem ist wichtig, dass rein durch die Modifikation von Software ein leicht an die Gegebenheiten anpassbarer Prozess entsteht – natürlich ohne die Funktionsfähigkeit zu beeinträchtigen.

Zur Umsetzung solcher Lösungen bietet maschinelles Lernen ein starkes Werkzeug. Denn anstatt auf Basis starrer, vorgegebener Lösungswege werden dabei Modelle anhand eines flexiblen Rahmens sowie einer Vielzahl an Parametern erstellt. Diese Vielseitigkeit ermöglicht, dass eine Anpassung an sich ändernde Rahmenbedingungen einerseits in der Methodik selbst berücksichtigt ist und andererseits auch in den entstehenden Lösungen einfach umgesetzt werden kann.

Einfaches Modell zur Demonstration


Um die Anwendung von maschinellem Lernen einfach und anschaulich zu erklären, haben wir einen Demonstrator mit einem kleinen Machine Learning-Projekt aufgesetzt. Dabei galt es die Aufgabe zu lösen, ein Modell zu entwickeln, welches die Anzahl an montierten Schrauben wiedergibt.

Unser Demonstrator besteht aus einem Antrieb, der eine auf der Rotationsachse befestigte Scheibe frei drehen kann. Die Scheibe ist an ihrer Außenseite mit drei Gewindebohrungen versehen, in die Schrauben eingedreht werden können. Um eine Nähe und Vergleichbarkeit zu echten Produktionsmaschinen herzustellen, wird der Antrieb durch eine Beckhoff-SPS gesteuert und kann mit verschiedenen Rotationsgeschwindigkeiten betrieben werden.

Daten bilden die Grundlage eines jeden Machine Learning-Projektes. Unser Demonstrator liefert Daten aus zwei Quellen: Im Millisekundentakt werden Daten wie Position, Geschwindigkeit und Drehmoment, welche über OPC UA übertragen werden, mithilfe unseres Data Collectors erfasst und gespeichert. Zusätzlich werden Daten erfasst, die nicht direkt von der Maschine bereitgestellt werden können, die jedoch für die Erfassung des Ist-Zustandes der Maschine von hoher Relevanz sind. Dafür ist auf dem Antrieb ein Beschleunigungssensor angebracht, um Schwingungen erkennen zu können. Diese vom Beschleunigungssensor erfassten Schwingungsdaten werden ebenfalls übertragen und gespeichert.


Datenbasierte Entwicklungsarbeit


Der erste Schritt ist die Schaffung einer geeigneten Datengrundlage. Für die Datenerhebung wurde jeweils eine bestimmte Anzahl an Schrauben in die Schwungscheibe eingedreht und Daten über kurze Zeitintervalle bei unterschiedlichen Geschwindigkeiten erhoben. Die Datenspeicherung erfolgte in InfluxDB, einer für Zeitreihen optimierten Datenbank.

Im nächsten Schritt folgte die Auswertung und Analyse der Daten. Von besonderem Interesse war hierbei der Vergleich der Beschleunigungsdaten über verschiedene Zeiträume zu verschiedenen Geschwindigkeiten mit unterschiedlicher Schraubenanzahl. Untersucht wurden die Daten vor allem auch hinsichtlich Lücken, fehlerhaften Werten sowie anderen Auffälligkeiten. Die Daten der Steuerung wurden zudem mit den Beschleunigungsdaten zusammengeführt, um Informationen zu Geschwindigkeit und Schraubenanzahl zu erhalten. Auf diese Weise konnten Beschleunigungsdaten verschiedener Zeiträume mit verschiedenen Geschwindigkeiten und unterschiedlicher Schraubenanzahl verglichen werden. So stand eine Datengrundlage zur Verfügung, mit der Modelle trainiert und evaluiert werden konnten.

Weiterführend folgte die Auswahl der richtigen Machine Learning-Modelle sowie deren Training und Bewertung. Dabei stand die Frequenzanalyse der Beschleunigungsdaten durch ein neuronales Netz im Fokus der Entwicklungsarbeit. Aufgrund seines vergleichsweise einfachen Aufbaus bei gleichzeitig hoher Flexibilität wurde dabei ein Feedforward-Netz verwendet, welches mit geeigneten Frameworks und Deep-Learning-Bibliotheken trainiert wurde.

Schaubild zeigt Frequenz bei unterschiedlicher Schraubenanzahl
Gemessene Frequenz der Achse bei unterschiedlicher Schraubenanzahl (0 bis 3 Schrauben)
Schließlich wurde in mehreren Iterationen durch die Anwendung auf Beispieldaten die Architektur des Feedforward-Netzes festgelegt sowie optimale Einstellungen für dessen Training eruiert. Denn nur bei geeigneter Wahl der Hyperparameter ist zu erwarten, dass das neuronale Netz eine zufriedenstellende Leistung zeigt. Mit einer hervorragenden Genauigkeit von mehr als 98% auf bekannte Geschwindigkeiten zeigten wir uns mit dem trainierten Modell zufrieden und stellten dieses auf dem Demonstrator zur Ausführung bereit.


1, 2, oder 3 – Ergebnis des Schraubenzählens

Die Anwendung dieses Modells und der Vergleich der ausgegebenen Prognosen des Modells mit den tatsächlichen Werten zeigte, dass unser neuronales Netz sowohl in den Frequenzdaten des Antriebs Muster erkennen und damit auch mit einer sehr hohen Sicherheit die richtige Anzahl der montierten Schrauben feststellen konnte. Im Betrieb bei der Anwendung auf eine beliebige Geschwindigkeit hatten wir dabei eine Genauigkeit von mindestens 80%. Somit ist die gestellte Aufgabe gelöst: Im laufenden Betrieb kann die aktuelle Anzahl an Schrauben ausgegeben werden – gespeichert in einer Datenbank stehen die Daten für eine Visualisierung oder Weiterverwendung zur Verfügung.

Dashboard mit Modellprognosen
Visualisierung der Modellvorhersagen mit der Software Grafana

Trotzdem bestehen in der Verwendung des Modells Unsicherheiten und es bleibt die Frage, ob sich der Einsatz von Machine Learning lohnt. In diesem Beispiel hätte es auch andere und zuverlässigere Möglichkeiten gegeben, um die Anzahl der Schrauben zu erfassen, z.B. über spezialisierte Sensoren oder Kamerasysteme.

Hätte eine „von Hand“ entwickelte Software ein vergleichbares Ergebnis liefern können? Die Betrachtung des Zusammenhangs zwischen Frequenzdaten und Anzahl der eingedrehten Schrauben zeigte uns auf, dass es sehr aufwändig ist, manuell Kriterien für eine solche Klassifikation zu finden. Doch selbst wenn eine von Menschen entworfene Lösung entwickelt wird, ist diese nicht so flexibel und einfach anpassbar wie jene, die durch die neuronalen Netze gefunden wurde. Beispielsweise hätten wir bei den festgelegten Anfangsgeschwindigkeiten eventuell ein Muster finden können, aber die Generalisierung auf andere Geschwindigkeiten hätte dann nur mit geringer Wahrscheinlichkeit funktioniert.

Die von uns entwickelte Lösung funktioniert auch bei geänderten Gegebenheiten. Wird in einem nächsten Versuch beispielsweise ein anderer Antrieb verwendet, kann die erarbeitete Lösung mit wenig Anpassung auf dieselbe Genauigkeit in der Bestimmung der Anzahl der Schrauben gebracht werden.


Bedeutung für die Praxis


An diesem Beispiel des Schraubenzählens mit dem Demonstrator konnten wir erklären, wie die Anzeige des Zustands von Maschinenteilen sowie zusätzlich angebrachter Teile – in unserem Fall die Anzahl der Schrauben – in Echtzeit umgesetzt werden kann. Durch die Analyse der Frequenzdaten können wir die Anzahl an montierten Schrauben ausgeben und in einem Dashboard visualisieren. Dadurch können die für eine Maschine wichtigsten Daten auf einen Blick übersichtlich dargestellt werden.

Zusätzlich konnten wir aufzeigen, dass mit der allgemeinen Methodik des maschinellen Lernens und einfach zu erfassenden Daten eine Lösung entwickelt werden kann, die eine Anpassung ermöglicht, ohne manuelle Eingriffe in die verwendete Hardware vorzunehmen. Die Vorteile werden so offensichtlich: Die Anwendung von Machine Learning bietet eine hohe Adaptierbarkeit.

Für die Praxis bedeutet dies: Bei sich verändernden Rahmenbedingungen ist allein die Modifikation der Software ausreichend, um Änderungen im Prozess abzufangen. Somit ist eine maximale Flexibilität und Nachhaltigkeit garantiert, da vorhandene Maschinen nicht komplett ausgetauscht werden müssen oder große Änderungen in der Hardware notwendig sind. Dies ist vor allem für Anwendungsfälle wie z.B. Predicitive Maintenance interessant, da auch bei Austausch einzelner Maschinen- oder Anlagenteile der dahinterliegende Algorithmus nicht gänzlich neu und von Hand angepasst werden muss, sondern das System selbst in die Lage versetzt werden kann, sich an die Veränderung anzupassen, womit der Funktionsbetrieb aufrecht erhalten wird.

Auch für unsere interne Entwicklung war das Projekt sehr wertvoll und unsere Neugier auf Fragestellungen rund um den Demonstrator und das Schraubenzählen ist noch nicht gänzlich gestillt. Für uns sind noch einige Aspekte unbeleuchtet und es gilt weiterführende Fragestellungen zu betrachten, z.B. warum und in welchen Fällen die Klassifikation misslingt. Darüber hinaus ist auch die Untersuchung des Verhaltens des Demonstrators auf Anomalien ein spannender Aspekt, der weitere Grundlagen für den Anwendungsfall der vorausschauenden Wartung (Predictive Maintenance) veranschaulichen kann.