TwinCat Machine Learning für intelligente Bolzenanker-Produktionslinie

Bild: Beckhoff Automation GmbH & Co. KG

Ein mechanischer Bolzenanker besteht im Wesentlichen aus dem Bolzen, einer U-Scheibe, einer Sechskantmutter sowie einer metallischen Hülse. Für ausreichende Haftung im Einsatz sorgen die Reibkräfte zwischen der Hülse und der Wandung des Bohrlochs. Um die für die Haltekraft notwendigen Normalkräfte auf das Bohrloch aufzubringen, wird die Hülse über einen konusförmigen Kopf des Metallbolzens mit der Bohrung verspreizt.

Das Projektteam (v.l.n.r.): Christian Egger, wissenschaftlicher Mitarbeiter am Institut für Computational Engineering (ICE) der Ostschweizer Fachhochschule (OST), Prof. Dr. Christoph Würsch, Dozent am ICE, sowie R&D-Ingenieur Robin Vetsch.
Das Projektteam (v.l.n.r.): Christian Egger, wissenschaftlicher Mitarbeiter am Institut für Computational Engineering (ICE) der Ostschweizer Fachhochschule (OST), Prof. Dr. Christoph Würsch, Dozent am ICE, sowie R&D-Ingenieur Robin Vetsch.Bild: Beckhoff Automation GmbH & Co. KG

Ziele des Projekts

Das von R&D-Ingenieur Robin Vetsch im Rahmen des OST-Studiengangs Bachelor of Science Systemtechnik federführend bearbeitete Projekt fokussierte sich auf den Umschließungsprozess, wobei die vorgeformte, gestanzte Hülse den konischen Hals des Bolzenankers umschließt. Die vorgeformten Metallhülsen, werden mit einem neu entwickelten Fertigungskonzept über zwei Servozylinder um den Bolzenhals geschlossen. Präzise angesteuert werden die beiden Servozylinder von einem Beckhoff-Servoverstärker AX5206.

Aufgabe der Bachelorarbeit war, eine automatisierte Qualitätsprüfung mithilfe von Methoden des maschinellen Lernens zu entwickeln. Für die Qualitätskontrolle sollten lediglich die bereits vorhandenen Maschinendaten verwendet, also keine zusätzlichen Sensoren verbaut werden. Bislang wurde die Umschließungsqualität der Hülse um den Bolzen mehrheitlich noch manuell mit einer Prüflehre durchgeführt. Nun wurde gezeigt, dass jede Umschließung in drei verschiedene Klassen (zu wenig umschlossen, in Ordnung, zu fest umschlossen) innerhalb der Qualitätsvorgaben eingeteilt werden kann. Weiterhin sollen die geometrischen Eckdaten der umschlossenen Hülse (Hülsenbreite, -höhe und -öffnung) mit einer Regression vorhergesagt werden. Durch die 100 %-Kontrolle des Umschließungsvorgangs sollen Trends oder Abweichungen frühzeitig erkannt werden.

Als Qualitätsmaßstab wurde eine zylinderförmige Prüfhülse verwendet. Der Bolzen mit der umschlossenen Hülse musste genau in diese Prüflehre passen, das heißt die Hülse durfte nicht zu fest oder zu wenig umschlossen werden. Auf der Grundlage verschiedener FEM-Simulationen des Umschließungsprozesses wurde definiert, welche Parameter einen relevanten Einfluss auf das Umschließungsergebnis haben. Abgestimmt auf diese Informationen folgten zahlreiche Umschließungsversuche, während denen mit dem Software-Oszilloskop TwinCat Scope alle wichtigen Echtzeitdaten der beiden Servozylinder aufgenommen wurden. Hierzu zählen beispielsweise die Stromaufnahme, das Drehmoment sowie der Schleppfehler der Servomotoren.

ML-Integration in die Maschinensteuerung

Innerhalb eines klassischen ML-Frameworks – in diesem Fall Scikit Learn – wurde basierend auf den aufgezeichneten Versuchsdaten ein sehr robustes Machine-Learning-Regressionsmodell entwickelt und trainiert. Eine solche Arbeit mit dem ML-Framework beinhaltet die Datenaufbereitung und -selektion, die Modellierung und das Training eines geeigneten ML-Algorithmus sowie dessen Evaluation. Das Ergebnis dieses Engineering-Schritts ist ein trainiertes ML-Modell, welches den Zusammenhang zwischen Eingangs- und Zieldaten repräsentiert. Ebenso offen wie die Schnittstelle zu den Daten ist die Schnittstelle für das Deployment des trainierten ML-Modells in TwinCAT 3 gewählt. Hier wird das Open Neural Network Exchange (ONNX)-Dateiformat als etablierter Standard unterstützt.

Der nächste Projektschritt bestand darin, das trainierte ML-Modell echtzeitfähig in die Maschinensteuerung zu integrieren. Hierzu wurde die TwinCAT 3 Neural Network Inference Engine (TF3810) eingesetzt, sodass sich das in das ONNX-Format umgewandelte Modell laut Robin Vetsch auf sehr einfache Weise und mit nur wenigen Zeilen Programmcode in der TwinCAT-Echtzeitumgebung implementieren ließ. Für ein solches Deployment des ML-Modells in TwinCAT 3 wird das exportierte ML-Modell in ein Binärformat (.bml) konvertiert und anschließend auf dem Zielsystem (Embedded-PC oder Schaltschrank-PC) abgelegt. Durch das Laden der .bml-Datei konfiguriert sich das Runtime-Modul derart, dass genau die Rechenoperationen zur Inferenz des ML-Modells effizient auf der CPU des Industrie-PC ausgeführt werden. Entsprechend handelt es sich bei diesem Modul um eine echtzeitfähige Inference Engine, die sich nahtlos in TwinCAT 3 integriert und alle etablierten Wege des Programmierens in TwinCAT 3 unterstützt: Aufruf des Moduls aus der PLC, aus C/C++ oder direkt über eine zyklische Task.

Ergebnisse des Projekts

Durch die Ausführung des für die Bolzenankerprüfung trainierten ML-Modells ließen sich die Höhe und die Breite der umschlossenen Hülse auf +/-0,15mm genau abschätzen, was einem relativen Fehler von knapp 2 % entspricht. Die Hülsenöffnung konnte mit einem relativen Fehler von 10 % abgeschätzt werden. Als vereinfachte Approximation konnte festgelegt werden, dass die Höhe und Breite der umschlossenen Hülse die verwendete Prüfhülse ausreichend spezifiziert. Als Modell wurde hierfür ein neuronales Netz vom Typ MLP (Multi Layer Perceptron) verwendet. Die Ausgangsgrößen des Modells sind die geschätzten Werte der Breite, Höhe und Öffnung der Hülse. Durch einfache, in der SPS definierte Grenzwerte konnte neben der Regression auch eine einfache Klassifizierung realisiert werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert