Echtzeitfähige Vision-Applikationen übernehmen Steuerungsaufgaben

Computer Vision in der Steuerung

Der Ruf nach intelligenten Lösungen für die Produktionstechnik wird immer größer. Bauteile sollen automatisch erkannt und individuell verarbeitet werden. Dabei spielt Computer Vision eine entscheidende Rolle, jedoch fehlt es noch an Lösungen zur steuerungsnahen Ausführung. Wegen der komplexen Rechenvorgänge ist die Ausführung intelligenter Vision-Algorithmen in einer konventionellen Steuerung meist nicht in Echtzeit möglich. Die Lösung? Eine hardwarebeschleunigte Soft-SPS.
Bild: ISW Institut für Steuerungstechnik der

Heute ist KI aus der Welt der Industrie 4.0 nicht mehr wegzudenken. Angefangen von Forschungsvorhaben wie FabOS und Service-Meister über Start-Ups bis hin zu Industrielösungen wie TwinCat Vision wird überall versucht, intelligente Methoden gewinnbringend in der Produktion einzusetzen. Ein Kernelement produktionstechnischer KI-Anwendungen ist die Computer Vision, also die maschinelle Verarbeitung und Analyse von Bildmaterial. Hierbei ergeben sich vielfältige Anwendungsmöglichkeiten. Zwei bekannte Beispiele sind die Qualitätsüberwachung von Produkten durch Bilder und die Manipulation von Gegenständen in unbekannter Position, der sogenannte Griff in die Kiste. Beide Beispiele lassen sich im statischen Fall gut in die Produktion integrieren, die Berechnung läuft hierbei auf einem ausreichend starken Server, der die Ergebnisse bereitstellt. Doch was passiert, wenn der Vision-Algorithmus direkt mit einer steuerungstechnischen Aufgabe verknüpft ist? Wie kann Computer Vision den Echtzeitanforderungen einer klassischen Steuerung gerecht werden?

Bild: ISW Institut für Steuerungstechnik der

Bildverarbeitende Algorithmik

Computer Vision beschreibt im Allgemeinen jegliche Form von bildverarbeitender Algorithmik, die computerbasiert ausgeführt wird. Ein praxisnahes Beispiel hierfür ist ein Schwarz-Weiß-Filter. Dabei wird das Bild pixelweise binär eingefärbt, also schwarz oder weiß. Ausschlaggebend für die Färbung ist ein statischer Schwellenwert, der die Farbe des Pixels mit einer festgelegten Schwelle abgleicht. Um die Segmentierung durchzuführen bedarf es demnach einer einzelnen Vergleichsoperation pro Pixel.

Im Kontrast dazu stehen Algorithmen, die Zusammenhänge zwischen Pixeln oder Segmenten nutzen, um abstrakte Muster zu erkennen und daraus Informationen über Inhalte des Bilds abzuleiten. Ein produktionstechnisches Beispiel ist die Erkennung eines Bauteils auf einem Förderband. Hierzu reicht es nicht aus, den zuvor betrachteten Segmentierungsalgorithmus zu nutzen und dann so lange eine Schablone des Bauteils über das segmentierte Bild zu legen, bis sie vollständig mit einem Segment übereinstimmt, da hierbei einige Störfaktoren unbeachtet bleiben: Je nach Position im Bild wird die Projektion des Bauteils durch die Kameralinse unterschiedlich verzerrt; dies müsste die Schablone abbilden können. Außerdem können Teile des Bauteils verdeckt sein, sodass nur Teile der Schablone mit dem Bauteil übereinstimmen. Laufen über das Förderband gleich mehrere Bauteilvarianten, müssen diese unterschieden werden können. Dabei steigt die Komplexität des erdachten Schablonenalgorithmus stark an. Diese Herausforderungen werden von einer weiteren Kategorie bildverarbeitender Algorithmen angegangen: intelligente, selbstlernende Objektdetektoren.

Diese Detektoren bestehen aus einer Aneinanderreihung komplexer Filter und Entscheidungsschwellen, die auf den Anwendungsfall speziell eingestellt werden. Das bedeutet, dass der Detektor vor dem Einsatz im Produktivsystem einem Training unterzogen wird und anhand bekannter Bilder der Bauteile lernt, das Objekt zu erkennen. Im Falle eines faltenden neuronalen Netzes (CNN, engl. für Convolutional Neural Network) werden in diesem Schritt die Kantengewichte zwischen den nichtlinearen Neuronen eingestellt.

Ist das Training abgeschlossen, kann der Detektor im Produktivsystem eingesetzt werden, um sensorische Aufgaben zu übernehmen, die mit herkömmlicher Sensorik kaum erfassbar sind. Damit der Detektor analog zu herkömmlichen Sensoren im Steuerungstakt genutzt werden kann, muss eine direkte Einbindung in die SPS erfolgen. Da der fertige Detektor im Falle eines neuronalen Netzes aus einer Aneinanderreihung mathematischer Operationen besteht, ist die Implementierung des Netzes in Sprachen der IEC61131-3 möglich. Verschiedene SPS-Hersteller bieten hierfür bereits vorgefertigte Programmbausteine. Dabei kann das neuronale Netz mittels eines Austauschformats wie ONNX in den Baustein geladen und über einen Trigger oder Funktionsaufruf ausgeführt werden.

 Objektdetektion einer polierten Kugel mit Yolo-v2
Objektdetektion einer polierten Kugel mit Yolo-v2Bild: ISW Institut für Steuerungstechnik der Werkzeugmaschinen und Fertigungseinrichtungen

Soft-SPSen für Vision-Anwendungen

Konträr zur einfachen Implementierung des Detektors besteht die Herausforderung in der Inferenzzeit, also der Ausführungsdauer des neuronalen Netzes, um aus einem gegebenen Eingang den Ausgang zu berechnen. Wird die Inferenz in der SPS durchgeführt, muss die Ausführung innerhalb der Zykluszeit der SPS möglich sein. Dies ist für die entsprechend großen faltenden neuronalen Netze der Objektdetektion auf konventioneller Steuerungshardware nicht gegeben. Einen Vorteil bieten hier Soft-SPSen: da diese als Software in ein Host-Betriebssystem integriert werden, können Hardwareressourcen auf den Anwendungsfall zugeschnitten erweitert werden. In der Forschung wird aktuell untersucht, wie GPUs als Hardwarebeschleunigung für Soft-SPSen ideal genutzt werden können, um die Inferenz zu beschleunigen. Zwar können aktuelle Soft-SPSen nicht direkt Berechnungen auf eine GPU auslagern – das entspricht nicht dem klassischen Anwendungsfall einfacher logischer Verschaltungen innerhalb der Steuerung – allerdings ermöglichen spezielle Werkzeuge die Inferenz von CNNs auf der GPU, beispielsweise TensorRT auf Nvidia Grafikkarten. Mithilfe einer Schnittstellenimplementierung können diese aus der Steuerung angesprochen und die Inferenz ausgeführt werden. Das Ergebnis wird nach der erfolgreichen Inferenz zurück an die SPS gegeben. Untersuchungen zeigen, dass die Inferenz aktueller CNNs zur Objektdetektion in dieser Konfiguration unter 10ms möglich ist, im Falle eines Host-Betriebssystems mit Echtzeitscheduling liegt der Jitter von 5.000 Inferenzen bei 203,2µs. Verwendet wurde für diese Messungen eine Nvidia GTX 980 und das Betriebssystem Ubuntu 18.04 mit dem Preempt-RT patch rt17, um die Inferenz von Yolo-v2 durchzuführen.

Vorteile von GPUs

Bei Betrachtung des eigentlichen Anwendungsfalls von Grafikkarten wird klar, warum diese einen solchen Mehrwert für die Inferenz neuronaler Netze bieten. Um ein Bild auf einem Bildschirm zu erzeugen, muss dieses aus Millionen von Pixeln zusammengesetzt werden. Deren Farbwerte werden jedoch nicht von der CPU oder einem Programm direkt vorgegeben, sondern müssen in der GPU aus Formeln berechnet werden. Hier spielen Effekte wie Shading, Lighting und verschiedene Farbkonfigurationen eine Rolle, die benachbarte Pixel beeinflussen und über einen Verlauf beschrieben werden können. Abstrahiert bedeutet dies, dass die GPU Millionen Berechnungen gleichzeitig ausführen muss, um alle Pixelwerte vor dem Bildaufbau zu bestimmen. Dies wird ermöglicht durch die Auslegung der Recheneinheiten: anstatt wenigen großen Recheneinheiten (CPU) werden viele kleine Recheneinheiten verbaut, sodass parallelisierbare Rechenaufgaben auch parallelisiert ausgeführt werden können. Diese Eigenschaft kann auch für neuronale Netze genutzt werden. Diese setzen sich aus Schichten von Neuronen zusammen, die jeweils einfache parallelisierbare Rechenoperationen beinhalten, analog zu Pixeln in einem Bild.

Seiten: 1 2Auf einer Seite lesen

ISW Institut für Steuerungstechnik der

Das könnte Sie auch Interessieren

Weitere Beiträge

Bild: Wenglor Sensoric Group
Bild: Wenglor Sensoric Group
Mühelos

Mühelos

Herausfordernde Oberflächen, von hell bis dunkel und von glänzend bis matt, bereiten Laserdistanzsensoren mit gängigen Funktionsweisen Schwierigkeiten bei der präzisen Dickenmessung. Sie müssen dafür mit einer separaten Steuerung an mehreren Eingängen angeschlossen und anschließend parametriert werden. Die aufwendige Berechnung und Programmierung in der Steuerung bedeutet einen hohen Kosten- und Zeitaufwand. Eine Lösung ohne Mehraufwand bieten die Laserdistanzsensoren Triangulation der P3-Serie der Wenglor Sensoric Group.

mehr lesen
Bild: Pepperl+Fuchs Kolleg GmbH
Bild: Pepperl+Fuchs Kolleg GmbH
Mit Schwingungssensoren alle Maschinenzustände jederzeit messen

Mit Schwingungssensoren alle Maschinenzustände jederzeit messen

Unerwünschte Zustände von Maschinen führen zu kritischen Stillstandszeiten und können sogar zur Gefahr für Leib und Leben werden. Mit Schwingungssensoren von Pepperl und Fuchs sind diese kritischen Maschinenzustände messbar. Spannend: Die Rohdaten der Schwingbeschleunigung lassen sich mittels des IO-Link-BLOB-Transfers messen und übermitteln. So wird für jede Maschine und dessen Teil-Komponenten ein individuelles Condition Monitoring möglich.

mehr lesen
Bild: TeDo Verlag GmbH
Bild: TeDo Verlag GmbH
Seilzug und kein Ende

Seilzug und kein Ende

Den Schwerpunkt der diesjährigen Drehgeber-Runde des SPS-MAGAZINs bildete das Thema Seilzuggeber. Hierzu trafen sich Experten von Baumer, Fraba, Gefran, Hohner Automation, Sick und Siko, um über Trends, Einsatzgebiete sowie Vor-/Nachteile von Seilzuggebern und alternativen Positioniersystemen zu diskutieren. Die Gesprächsrunde leitete Prof. Dr. Johann Pohany.

mehr lesen