Anzeige

Telefon: 0049/5246963-0

www.beckhoff.com


Vision Integration

TITELSTORY: Erweiterte Funktionalität und Usability für TwinCAT Vision

Mit TwinCAT Vision ist die Bildverarbeitung komplett in die Automatisierungstechnik integriert, sowohl hinsichtlich Konfiguration und Programmierung als auch in die Echtzeit. Die nahtlose Einbindung in PC-based Control von Beckhoff zeichnet sich zudem durch eine kontinuierliche Weiterentwicklung aus. So werden stetig die Funktionalität und Usability erhöht sowie zusätzliche Produkte bzw. Features aus der TwinCAT-Welt noch enger verknüpft.

Bild: Beckhoff Automation GmbH & Co. KGBild: Beckhoff Automation GmbH & Co. KG
Bild 1 | TwinCAT Vision bietet durch Echtzeitausführung und Multicore-Fähigkeit maximale Performance im Zusammenspiel mit der Steuerungstechnik. Damit lassen sich Funktionen wie z.B. Kontur- und Farberkennung sowie Objekterkennung und Messaufgaben ganz im

TwinCAT Vision verbindet die klassische Automatisierungstechnik auf einfache Weise mit der Bildverarbeitung. Die Konfiguration von Kameras und die geometrische Kamerakalibrierung werden direkt im TwinCAT-Engineering durchgeführt. Die Programmierung der Bildverarbeitung erfolgt wie gewohnt in IEC61131-3, sodass keine spezielle Programmiersprache gelernt werden muss. Außerdem kann direkt auf die Ergebnisse der Bildverarbeitung in der SPS reagiert werden - quasi gleich in der nächsten Zeile Steuerungscode.

Bild: Beckhoff Automation GmbH & Co. KGBild: Beckhoff Automation GmbH & Co. KG
Bild 2 | Der grafische Init Command Editor unterstützt bei der Konfiguration von TwinCAT Vision.

Höchste Synchronität

Die Ausführung der Bildverarbeitungsalgorithmen in der TwinCAT-Echtzeit hat den Vorteil, dass Vision-Algorithmen sowie SPS, Motion Control und Messtechnik im gleichen Takt - d.h. synchron - abgearbeitet werden. Eine Kommunikation von einer Nicht-Echtzeit-Applikation in die SPS/Motion/Messtechnik-Echtzeit-Applikation ist somit nicht mehr erforderlich. Dadurch entfallen bisher aufgrund von Kommunikation und Jitter übliche Verzögerungen. Die Integration der Bildverarbeitung in die SPS hat den weiteren Vorteil, dass der SPS-Programmierer das Ergebnis eines Bildverarbeitungsalgorithmus direkt - wie einen analogen Sensor - verarbeiten kann. Als Beispielanweisung: "Wenn das im Bild erkannte Objekt rund ist, schalte diesen digitalen Ausgang auf TRUE." Zudem stehen dem Programmierer alle von der SPS bekannten Debugging-Funktionen zur Verfügung. Zu jeder Zeit kann daher im Ablauf ein Bild angezeigt werden - wie beim klassischen Monitoring einer Variablen. Erfolgt eine Bildverarbeitung in mehreren Stufen, kann in jeder davon das resultierende Bild direkt in Visual Studio angezeigt werden. Auf diese Weise lassen sich Algorithmen und Einstellwerte sehr schnell und komfortabel testen. Parameter können online geändert und die Auswirkungen - wie z.B. die Änderung einer ROI oder von Schwellwerten - direkt beobachtet werden. Durch den für SPS-Programmierer typischen Gebrauch des Online-Change sind selbst komplette Funktionen bzw. Prüfprogramme bei laufender SPS austauschbar. Damit kann die Bildverarbeitung schnell in Betrieb genommen und optimiert werden. Zudem besteht die Möglichkeit, Bilder per Funktionsbaustein aus der SPS oder per Kamera-Assistent abzuspeichern, um offline damit zu arbeiten, die Analyse zu entwickeln bzw. zu optimieren und anschließend wieder in die Maschine einzuspielen. Mit EtherCAT und den Distributed Clocks lassen sich auch externe Geräte einer Vision-Applikation hochgenau synchronisieren. Die meisten Kameras verfügen über einen digitalen Trigger-Eingang. Wird dieser durch einen digitalen Ausgang einer EtherCAT-Klemme - z.B. über die LED-Ansteuerungsklemme EL2596 - angesteuert, lässt sich die Bildaufnahme beispielsweise hochgenau auf eine Förderbandposition triggern. Mit der EL2596 ist gleichzeitig auch die Beleuchtung zeitlich und stromgeregelt exakt ansteuerbar.

Grafischer Editor

Wichtiges Basisfeature von TwinCAT Vision sind die Init Commands. Diese dienen der Hinterlegung der Kameraeinstellwerte, ähnlich der gewohnten Startup-Liste bei EtherCAT-Modulen, und stellen eine von Kamera-User-Sets unabhängige Lösung dar. Somit lässt sich sicherstellen, dass die jeweilige Kamera immer gleich parametriert wird. Neu sind hierbei die Darstellung und Editierbarkeit über einen grafischen Init Command Editor, der die Usability beim Arbeiten mit Init Commands deutlich erhöht. Der neue Init Command Editor visualisiert die Kamera-Initialisierungsparameter und bietet zahlreiche Editiermöglichkeiten wie z.B. An- und Abwählen, Ändern der Reihenfolge, alternative Auswahl von User Sets sowie Force-IP-Einstellungen. Zudem werden Wertänderungen bzw. -unterschiede der Register angezeigt.

Bild: Beckhoff Automation GmbH & Co. KGBild: Beckhoff Automation GmbH & Co. KG
Bild 3 | Mit den Vision-spezifischen Controls von TwinCAT HMI lassen sich Visualisierungen effizient erstellen.

Funktionen, Treiber und Anbindungen ergänzt

Die Funktionalität von TwinCAT Vision wird mit dem neuen Release ebenfalls deutlich erweitert. Hierzu zählen folgende Beispiele:

? CLAHE (Contrast Limited Adaptive Histogram Equalization): Diese Funktion erhöht adaptiv den Kontrast eines Bilds, nun allerdings mithilfe einer parametrierbaren Unterteilung in kleinere Bildregionen. Dies ergibt bessere Resultate insbesondere bei Bildern mit sehr hellen und sehr dunklen Bereichen, da nur die jeweils kleineren lokalen Bildbereiche betrachtet werden.

? Matching: Hier steht eine neue Funktion zur Filterung der Keypoint-Ergebnisse und für die direkte Berechnung der Homografie-Matrix zur Verfügung. Ihre Nutzung erhöht die Präzision bei der Detektion und Visualisierung von rotierten Objekten.

? Connected Components: Diese Funktion dient zum Auffinden von zusammenhängenden Regionen in Binärbildern. Sie liefert weiterhin direkt den Schwerpunkt, die Pixelanzahl sowie ein umschließendes Rechteck und stellt damit eine auf einem anderen Berechnungsalgorithmus basierende Alternative zur Blob-Funktion dar.

? GeneralizedHoughBallard: Diese alternative Matching-Funktion basiert auf der Hough-Transformation, einem robusten Verfahren zur Erkennung von Geraden und Kreisen in einem binären Gradientenbild.

? Blend Images: Diese ermöglichen es, zwei Bilder einstellbar übereinander zu blenden, um auf diese Weise ein Anzeigenbild mit überlagerten Grafiken zu erstellen.

Der erweiterte Funktionsumfang umfasst außerdem neue Container-Typen mit vielfältigen zusätzlichen Berechnungsmöglichkeiten. Für TwinCAT Vision steht mit dem nächsten TwinCAT-Release ein neuer Treiber zur Nutzung der u.a. von den Embedded-PCs CX20x2 unterstützten 10-GigE-Ethernet-Funktionalität zur Verfügung. Mit den neuen Releases von TwinCAT Scope und TwinCAT Analytics können Bilddaten mit dem Scope Server und dem Analytics Logger aufgezeichnet, gespeichert und versendet werden. TwinCAT Analytics Logger ermöglicht es, die Bilddaten per MQTT auch an eine Cloud-Plattform zu übertragen. Weiterhin wird zur optimierten Bilddarstellung in TwinCAT Scope View ein neuer Image-Chart-Typ bereitgestellt.

Visualisierung mit Visionspezifischen Controls

Die Visualisierungslösung TwinCAT HMI bietet mit dem neuen Vision-HMI-Control-Release die Möglichkeit, auch Bildverarbeitung in die hochmoderne HTML-basierte Bedienoberfläche zu integrieren. Hierzu zählt ein erweitertes Image Control zur Bilddarstellung mit folgenden Features:

? direkte Verknüpfung von mehreren Bildvariablen und einfache Umschaltung der Bildanzeige

? ´Einfrieren´ des Bilds, d.h. Stoppen der Bildaktualisierung für eine detailliertere Analyse der letzten Aufnahme

? Skalieren und Verschieben des Bilds innerhalb des Vision Controls (über Touch-Gesten, Maus oder Werteeingabe) für das genauere Betrachten von Bilddetails

? Anzeige einer Toolbar mit direkt nutzbaren Bedienelementen (z.B. Bildauswahl, Skalierung, Shape-Erstellung, Stoppen der Bildaktualisierung, Download des angezeigten Bilds)

? Anzeige einer Infobar mit aktuellen Informationen und Werten wie z.B. Bildgröße, Pixelkoordinate, Farbwert und Shape-Daten

? Zeichnen verschiedener, in Position und Größe auch im Nachhinein veränderbarer Shapes (Punkt, Linie, Rechteck, Ellipse, Polygon) zur Bestimmung von Größe, Fläche sowie Koordinaten u.a. für die Verwendung als ROI

? Einblenden von Grafiken (Kreuz, Rechtecke, Kreise) oder Bildern als Overlay für das Einrichten und Positionieren von Kameras oder Werkstücken

Ohne dieses Control müsste sich der Anwender die erweiterten Funktionalitäten selbst mithilfe von zusätzlichen Elementen zeitaufwändig erstellen und programmieren. Das neue Image Control, in dem viele Einzel-Controls und umfangreiche JavaScript-Programmierung gekapselt sind, stellt dies hingegen in vollem Umfang und einfach konfigurierbar zur Verfügung. Weiterhin bietet das Vision HMI Package mit dem Color Control folgende Features:

? Anzeige oder Eingabe eines Farbwerts über drei verschiedene Möglichkeiten (Textfeld, Slider, Color-Input-Element des Browsers)

? flexible Konfigurierbarkeit sowie Editierbarkeit bzgl. Kanalanzahl, Wertebereich und Controls

? Wahl zwischen horizontaler und vertikaler Ausrichtung

? Umrechnung zwischen verschiedenen Farbformaten wie Grauwerte, RGB und HSV

Beim Color Control sind ebenfalls Einzel-Controls und JavaScript-Programmierung gekapselt. Zudem besteht die Möglichkeit, ein Vierfach-Array zu verknüpfen, um so einen Farbfilter aus der PLC direkt editieren zu können. Auch hierdurch spart der Anwender Zeit- und Engineeringaufwand bei der Integration der Bildverarbeitung in seine Steuerungsapplikation.

Ausblick

Beckhoff wird die Weiterentwicklung von TwinCAT Vision kontinuierlich weiterführen. Die Vision-Bibliothek wird für die Programmierung in C++ angepasst und optimiert bereitgestellt, sodass Anwender bei Bedarf auch komplett in einem C++-Modul programmieren können und keine PLC mehr benötigen. Zudem lassen sich damit eigene Algorithmen einfacher in C++ programmieren und mit den Funktionen von TwinCAT Vision ergänzen. Weiterhin ist vorgesehen, den Einsatz von Machine Learning in der Bildverarbeitung voranzutreiben und die Vision-Funktionalität auch für das neue Multicore-fähige, Unix-kompatible Betriebssystem TwinCAT/BSD bereitzustellen.

Beckhoff Automation GmbH & Co. KG

Dieser Artikel erschien in inVISION 1 (März) 2021 - 17.03.21.
Für weitere Artikel besuchen Sie www.invision-news.de

Firmenportrait