Machine Learning, sowie künstliche Intelligenz im Allgemeinen, kann sehr komplex werden. Das Thema wird hierbei so verständlich wie möglich erklärt, dass auch Anfänger ohne Kenntnisse einen schnellen Einstieg in das Thema bekommen und zeitnah selbst eigene Versuche starten können.
Hier wird nicht nur die Theorie vermittelt! Das wäre auf Dauer auch ziemlich langweilig. Es werden zahlreiche Codebeispiele und passende Datensätze bereitgestellt, sodass sofort eigene Versuche durchgeführt werden können.
Die Theorie wurde verstanden und mit den Codebeispielen bereits erfolgreich eigene Versuche gestartet? Super! Dann kann das gelernte nun in der Praxis angewendet werden.
Um die Theorie des Studiums mit der Praxis des Arbeitsalltags zu verknüpfen, soll dieses Projekt dazu dienen, Einblicke und neue Erkenntnisse der digitalen Welt, insbesondere dem Bereich der Industrie 4.0 zu erlangen. Durch die Arbeitsumgebung des Digital Laboratory werden Grundlagen und Hilfsmittel zur Durchführung des Projekts bereitgestellt. Die vorhandene 5-Achs-Fräsmaschine der Firma DMG MORI liefert dafür den Use-Case und die dazu benötigte Grundlage für das Projekt.
Das Ziel des Projektes soll sein, mit Machine Learning eine Identifizierung der Einflussfaktoren während der Produktion zu erhalten, soll heißen welche Parameter einen starken, aktiven Einfluss auf den Fräsprozess haben und somit das Fräsergebnis beeinflussen. Diese Informationen können genutzt werden um später Machine Learning Modelle in Echtzeit für Fräsprozesse einsetzen zu können.
Zu den Grundlagen gehören neben Technologien wie TensorFlow und Python auch die zum Machine Learning gehörigen Lernmethoden Supervised-/Unsupervised-/Reinforcement-Learning und deren Algorithmen.
Sind die Grundlagen vermittelt worden, wird die Datengrundage geschaffen. Hier sollen mit der 5-Achs-Fräsmaschine und mehrere hundert Passungen nacheinander aus einem Stahlblock gefräst werden. Dazu soll die Toleranz jeder Passung mit dem Messmittel der Maschine ermittelt werden, um festzustellen, ab welchem Zeitpunkt bzw. welche Umstände dazu führen, dass die gefrästen Löcher außerhalb des Toleranzbereichs liegen. Die Beurteilung erfolgt später über die Kennzeichnung (Labeling) der Löcher in die Kategorien IO/NIO.
Die gewonnen Daten werden in einer Datenbank gespeichert und durch ETL-Prozesse so bearbeitet, dass diese anschließend von Machine Learning Algorithmen genutzt werden können.
Folgende Grafik dient dazu Projektinhalt, Vorgehensweise und Ziel noch einmal anschaulich zu erklären.
Im 1. Schritt werden durch unsere Maschine Daten produziert. Dies erfolgt durch das Bohren und Reiben von Löchern in eine Stahlplatte. Mehr dazu im Versuchsaufbau.
Nachdem die Datengrundlage geschaffen wurde, werden die Daten im 2. Schritt durch ETL-Prozesse von der Datenbank zum DataLake transferiert, um mit den nun strukturierten Daten arbeiten zu können. Die Struktur der Datenpipeline ist unter Architektur zu finden.
Im letzten Schritt durchlaufen die Daten die implementierten Machine Learning Algorithmen, um eine Vorhersage über den Zustand der Bohrungen zu tätigen.
Bei der verwendeten Maschine handelt es sich um eine DMG MORI DMU 75 monoBLOCK gesponsert von DMG MORI. Diese produziert die für unseren Use-Case benötigten Daten. Durchschnittlich werden dabei 20-30 Datensätze pro Sekunde produziert.
Um die Daten von der Maschine bis zum Machine Learning Algorithmus zu bekommen, braucht man eine stabile Datenpipeline. Unsere verwendete Architektur ist im nachfolgenden Bild erkennbar. Mehr Infos zu den einzelnen Komponenten erhält man durch einen Klick auf die jeweiligen Abschnitte.
Erkennbar ist hierbei, dass die Daten eine lange Reise vor sich haben und dabei einige Systeme durchlaufen, bis sie schließlich von Machine Learning Algorithmen verwendet werden können.
Für mehr Informationen auf die Komponenten klicken!
Extract, Transform, Load (ETL) ist ein Prozess, bei dem Daten aus mehreren gegebenenfalls unterschiedlich strukturierten Datenquellen in einer Zieldatenbank vereinigt werden.
Die gewonnen Daten werden in einer Datenbank gespeichert. Hierbei werden ETL-Prozesse herangezogen um die Daten von der Datenbank zum DataLake transferieren zu können. Auf einem Server sollen die Daten dann extrahiert und in ein DataWarehouse gespeichert werden, um diese später auswerten zu können. Nachdem der ETL-Prozess abgeschlossen ist, können die Daten verwendet werden, um Vorhersagen mit Machine Learning Algorithmen zu treffen. Um die Rohdaten passend aufzubereiten, gilt es zuerst geeignete Parameter zu finden. Nachdem die Parameter identifiziert wurden und die zugehörigen Daten verarbeitet sind können diese den verschiedenen Machine Learning Algorithmen zur Verfügung gestellt werden.
Für mehr Informationen auf die Buttons klicken!
Extraktion der relevanten Daten aus den Datenquellen. Hier erfolgt die Auswahl der Daten der Quellsysteme und die Vorbereitung für die Transformationsphase. Die Extraktion findet regelmäßig statt, um das Data Warehouse kontinuierlich mit aktualisierten Daten zu versorgen. In der Regel wird bei der Extraktion nur ein Ausschnitt aus den Quelldaten selektiert.
Transformation der Datenstruktur und Dateninhalte in das Format und Schema der Zieldatenbank. Hier werden die Ausgangsdaten an das gewünschte/geforderte Schema der Zieldatenbank angepasst. Traditionell erfolgt der Transformationsvorgang in den vier Schritten Filterung, Harmonisierung, Aggregation und Anreicherung. In den ersten beiden Schritten werden die Daten bereinigt und aufbereitet. Die letzten beiden Schritte fassen die Daten themenspezifisch zusammen. Die Transformation ist der entscheidende Schritt, bei dem in den Daten ein Mehrwert geschaffen wird, um aussagekräftig zu sein.
Laden der transformierten Daten in die Zieldatenbank oder das Data Warehouse. Hierbei werden die aufbereiteten Daten in das Data Warehouse integriert. Dafür müssen sie physisch in die Datenbank des DW verschoben werden. Hierbei ist die Integrität der Daten sicherzustellen. Über eine existierende Protokollierung ist es möglich, bei Bedarf alte Datenstände wieder herzustellen.
Für mehr Informationen auf die Zahlen klicken!
Sind die Maschinendaten durch den ETL-Prozess so angepasst worden, dass diese verwendet werden können, gelangen die Daten zum nächsten Schritt, dem Machine Learning. Machine Learning ist ein Teilbereich der Künstlichen Intelligenz, der es einem System ermöglicht, mit Hilfe von lernenden Algorithmen zusammenhänge in Daten zu erkennen. Diese Zusammenhänge bezeichnet man als Muster, diese haben einen gleichförmige Struktur. Um Muster in Daten erkennen zu können, benötigt man bestimmte Gesetzmäßigkeiten, um aus diesen entsprechende Schlüsse ziehen zu können.
Mithilfe eines Kafka Producers werden in Echtzeit Daten direkt an die Datenbank gesendet. Aus dieser Datenbank kann für eine weitere Auswertung die Machine Learning Algorithmen angewendet werden. Die Datenaufbereitung wird durch unumgängliche händische Prozesse (z.B. Prüfen der Oberflächengüte der Reibung) begleitet. Das Projekt hat allerdings erfolgreich gezeigt, dass mit der aktuellen Struktur ein echtzeitfähiges System möglich ist. Die verwendeten Machine Learing Algorithmen liefern gute (Support Vector Machine – ca. 80%) bis hin zu sehr guten (logistische Regression u. Entscheidungsbäume bis zu 100%) Ergebnissen. Die aufbereiteten Daten sind korrekt, allerdings sind die messtechnischen Mittel beschränkt. Die Maschine selbst ist auf kleinsten Skalen extrem genau. Wir haben uns mit den verwendeten Messmitteln an der Grenze der Maschinenfähigkeit bewegt. Jedoch stand uns kein Spezial Messwerkzeug zur Verfügung um eine 100%ige Messgenauigkeit zu erreichen.
Das Bohren ist ein spanabhebendes Fertigungsverfahren. Hierbei wird mit einem Werkzeug, mit geometrisch bestimmter Schneide, eine Bohrung in ein Bauteil eingebracht. Für den Versuch wurden im Prozessschritt „Bohren“, Bohrungen mit einem Durchmesser von 11,8 Millimetern gebohrt bis das Vormaß erreicht ist.
Das Reiben ist ebenfalls ein spanabhebendes Fertigungsverfahren. Hierbei wir mit einer Reibahle, mit geometrisch bestimmter Schneide, eine im Bauteil vorhandene Bohrung auf ein definiertes Maß aufgebohrt. Für den Versuch wurden die vorhandenen Bohrungen in diesem Prozessschritt auf ein Passungsmaß von 12H7 aufgerieben.
Das Messen definiert für bestimmte Bauteilmerkmale Absolutwerte. Für den Versuch werden nach dem Reiben alle Passungen geprüft und gemessen. Dies wird einerseits automatisiert durch die Fräsmaschine mit einem Messtaster, andererseits manuell mit einer speziellen Dreipunkt-Innenmessschraube durchgeführt.
Für das Projekt werden diese Techniken vereint. Nach dem Einspannen des Stahlblocks in die Fräsmaschine wird das NC Programm geladen. Das NC Programm besteht aus mehreren Teilprozessen. Zuerst bohren wir in einem Raster von 9x9 Bohrungen auf deren Vormaß. Nachdem in einer Ebene alle Bohrungen gebohrt wurden, werden die Kanten der Bohrlöcher angefast, um der Reibahle eine bessere Führung zu geben. Nach dem Anfasen werden die Bohrungen auf das fertige Maß gerieben. Die Passungen werden händisch gemessen und in ein Prüfprotokoll eingetragen. Nachdem die Daten erfasst wurden, wird die Oberfläche geschruppt und geschlichtet. Die nächste Ebene kann nun gebohrt, gerieben und gemessen werden.