Anbieter zum Thema
FPGA im gleichen Gerät integriert wie der Prozessor
I/O und Bildverarbeitung lassen sich eng verbinden, wenn ein FPGA in dasselbe Gerät integriert ist wie der Prozessor. Beim „NI CVS-1457RT“ beispielsweise wird neben der FPGA- und Prozessorarchitektur die Funktion „Vision RIO“ eingesetzt, um das Bildverarbeitungssystem mit dem Auswerfer und der zugehörigen I/O zu synchronisieren. Über die Programmierschnittstelle kann der Anwender eine Queue auf dem FPGA programmieren, die digitale Ausgangsimpulse enthält. Während sich die Teile über das Fließband bewegen und überprüft werden, wird die Queue auf Basis der Ergebnisse der Bildanalyse um Impulse ergänzt.
Wenn dann dieselben Teile beim Auswerfer angelangt sind, werden die Impulse sequenziell aus der Queue entfernt. Auf das Beispiel mit Encoder bezogen würde die Programmierschnittstelle „Vision RIO“ dafür sorgen, dass der FPGA den Encoder-Zählerwert feststellt, wenn die Kamera ausgelöst wird. Fällt ein Teil durch, fügt das Bildverarbeitungssystem einen Offset hinzu, welcher der Entfernung zwischen Kameratrigger und Trigger des Auswerfers Rechnung trägt. Als nächstes setzt der FPGA eine Queue ein, um den zu treibenden Digitalausgang, die Triggerbedingung und die Impulsdauer zu verfolgen. Jeder Impuls in der Queue wird beim konfigurierten Encoder-Zählerwert ausgelöst, wodurch fehlerhafte Teile ausgeworfen werden.
Mehrere Auswerfer sind möglich
Bei diesem Szenario wird die Queue nur dann um einen Impuls erweitert, wenn ein fehlerhaftes Teil entdeckt wird. Da der Auswerfer durch einen Encoder-Zählerwert ausgelöst wird, bewegen sich die korrekten Teile weiter, während der Auswerfer auf einen Zählerwert wartet, der mit dem nächsten fehlerhaften Teil übereinstimmt. In manchen Fällen kann der Abstand zwischen überprüften Teilen, die sich auf einer bestimmten Strecke bewegen, nicht garantiert werden, da sie auf dem Fließband verrutschen können, während sie die Strecke zurücklegen. Tritt dieser Fall ein, wird die Auswerferstation bei einem bestimmten Encoder-Zählerwert nicht ausgelöst. Stattdessen löst ein Näherungssensor nahe des Auswerfers die Queue aus, damit sie den nächsten Impuls steuert.
Im Gegensatz zum zuvor dargestellten Encoder-Beispiel wird die Queue auch dann ausgelöst, wenn ein korrektes Teil vorhanden ist. Damit korrekte Teile auf dem Band verbleiben, wird für jedes korrekte Teil ein Impuls von 0 ms zur Queue hinzugefügt. Dadurch ist es möglich, die Queue auszulösen, ohne den Auswerfer zu aktivieren.
Diese einfache Lösung ist ein Ergebnis der Synchronisations- und Timingvorgänge, die auf dem FPGA erfolgen. Anwender müssen daher lediglich die Queue einmal zu Beginn konfigurieren und dann Impulse auf Grundlage der Prüfung hinzufügen. Durch diese zwei einfachen Schritte ist es möglich, das Entwickeln einer vollständigen Softwarearchitektur, die von Prozessorlatenz und -jitter abhängig ist, zu umgehen. Die Programmierschnittstelle lässt sich sogar für Anwendungen mit mehreren Auswerfern erweitern (Bild 2). Dabei werden die Auswerfer simultan aufgrund mehrerer Eingaben wie Zeitstempel, Encoder-Eingänge und Näherungssensoren gesteuert.
Weniger Kabel dank technischen Fortschritts
Technische Fortschritte bei der Synchronisation wirken sich auf eine komplexe Verkabelung aus. GigE Vision gehört zu den am häufigsten eingesetzten Kameraschnittstellen für Anwendungen zur automatisierten Inspektion. Da ein Standard-Ethernet-Kabel für diesen Kamerabus verwendet wird, sind größere Kabelreichweiten zu geringeren Kosten möglich. Die Netzwerklatenz bei Ethernet ist allerdings ein Grund dafür, dass Systementwickler dedizierte Triggerleitung zu jeder Kamera verlegen. Eine aktuelle Funktion des GigE-Vision-Standards („Action Command“) kann zu einer Lösung beitragen. Sie ermöglicht das deterministische Triggern von Kameras über den Ethernet-Bus. „Action Command“-Pakete reduzieren Jitter und Latenz auf wenige Mikrosekunden, ohne dafür ein dediziertes, deterministisches Netzwerk zu benötigen.
Power over Ethernet (PoE) ermöglicht es, dass weniger Kabel notwendig sind. Dedizierte Kameranetzteile sind nicht mehr erforderlich. Stromversorgung, Bildübertragung und deterministische Triggerung der Kamera werden über ein einziges Ethernet-Kabel verbunden. Eine FPGA-basierte I/O und weniger Kabel durch Funktionen wie dem „Action Command“ sowie PoE zeigen, wie sich integrierte Bildverarbeitungssysteme als leistungsstarke und kosteneffiziente Lösungen erweisen können.
* Carlton Heard arbeitet bei der National Instruments Corporation in Austin/Texas, USA.
(ID:44173815)