Beckhoff bietet eine in TwinCAT 3 nahtlos integrierte Lösung für Maschinelles Lernen (ML). Dabei sind die von PC-based Control gewohnten Vorteile der Systemoffenheit durch die Nutzung etablierter Standards auch für ML-Anwendungen gegeben. Zudem wird das Machine Learning in Echtzeit realisiert, sodass sich die TwinCAT-Lösung z. B. auch für den anspruchsvollen Motion-Bereich eignet. Auf diese Weise erhält der Maschinenbauer die optimale Grundlage zur Steigerung der Maschinenperformance, z. B. durch Prescriptive Maintenance, Selbstoptimierung von Prozessabläufen oder eigenständige Erkennung von Prozessanomalien.
Grundidee des Maschinellen Lernens ist, Lösungen für bestimmte Aufgaben nicht mehr durch klassisches Engineering zu erarbeiten und in einen Algorithmus zu überführen. Vielmehr soll der gewünschte Algorithmus anhand von beispielhaften Prozessdaten erlernt werden. Auf diese Weise lassen sich leistungsfähige Modelle trainieren und damit bessere bzw. performantere Lösungen erzielen. Für die Automatisierungstechnik erschließt dies neue Möglichkeiten und Optimierungspotenziale beispielsweise in den Bereichen prädiktive Wartung und Prozesssteuerung, Anomaliedetektion, kollaborative Roboter, automatisierte Qualitätskontrolle und Maschinenoptimierung.
Das jeweilige Modell wird innerhalb eines der gängigen ML-Frameworks, wie z. B. MATLAB® oder TensorFlow, trainiert und anschließend über das standardisierte Austauschformat ONNX (Open Neural Network Exchange) zur Beschreibung von trainierten Modellen in die TwinCAT-Runtime importiert. Diese bietet dafür folgende neue Functions:
- TwinCAT 3 Machine Learning Inference Engine: für klassische ML-Algorithmen wie Support Vector Machine und Principal Component Analysis
- TwinCAT 3 Neural Network Inference Engine: für Deep Learning und Neuronale Netze wie Multilayer Perceptrons und Convolutional Neural Networks
Modellergebnisse direkt in der Echtzeitumgebung nutzbar
Die Inferenz, d. h. die Ausführung eines trainierten ML-Modells, ist als TwinCAT-TcCOM-Objekt direkt in Echtzeit möglich, und zwar bei kleinen Netzen mit einer Reaktionszeit des Systems von unter 100 µs (TwinCAT-Zykluszeit 50 µs). Aufrufbar sind die Modelle sowohl über die PLC, C/C++-TcCOM-Interfaces als auch über eine zyklische Task.
Durch die nahtlose Integration in die Steuerungstechnik steht die Multicore-Unterstützung von TwinCAT auch für das Maschinelle Lernen offen. So kann aus unterschiedlichen Task-Kontexten auf die jeweilige TwinCAT 3 Inference Engine zugegriffen werden, ohne dass sich dies gegenseitig begrenzend auswirkt. Weiterhin ist der volle Zugriff auf alle Feldbusschnittstellen und Daten in TwinCAT gegeben. Damit lässt sich für die ML-Lösung einerseits eine immense Datenfülle z. B. für komplexe Sensordatenfusion (Datenverknüpfung) nutzen. Andererseits stehen echtzeitfähige Schnittstellen zu Aktoren u. a. für Optimal Control zur Verfügung.
Herr Walter Eichner
Beckhoff Automation GmbH
SATURN Tower
Leonard-Bernstein-Straße 10
1220 Wien
Österreich