Startseite » Allgemein »

Flexibel konfigurierbar

GigE Vision mit mehreren Kameras
Flexibel konfigurierbar

Der neue Interface-Standard GigE-Vision erzeugt derzeit sehr großes Interesse für unterschiedlichste Anwendungen in der industriellen und wissenschaftlichen Bildverarbeitung. GigE-Vision basiert auf Gigabit-Ethernet und bietet eine maximale Transferleistung von ca. 125 MB/s. Die Ethernet-Technologie bietet weitere Vorteile wie Kabelstrecken bis 100 Meter ohne den Einsatz von Repeatern / Hubs, die Verwendung äußerst kostengünstiger Standard-Infrastruktur (z.B. CAT5e / CAT6-Netzwerkleitungen) und zahlreiche Möglichkeiten der Infrastruktur-Topologie.

Raoul Kimmelmann, Rauscher, Olching

GigE Vision ist eine sehr reizvolle Alternative zu klassischen Framegrabber Lösungen, da es sich um eine normierte und gleichzeitig sehr flexible Kameraschnittstelle handelt, die von allen namhaften Hardware und Software Herstellern getragen wird.
Datenübertragung optimieren Host-CPU Last minimieren
Die Bilddaten werden basierend auf dem UDP-Transportprotokoll über einzelne Ethernet-Pakete von der Kamera zum Host-PC übertragen. Es ist u.a. die Aufgabe des GigE-Vision Treibers, die Bilddaten aus den einzelnen Ethernet-Paketen zu extrahieren und im Bildspeicher zur Verfügung zu stellen. Dieses Entpacken der Bilddaten ist mit CPU-Last verbunden, da jedes einzelne Paket vom Treiber verarbeitet werden muss.
Hier liegt heute noch ein Vorteil von anderen Interfaces wie z.B. Camera Link, die ohne jede CPU Last die Bilddaten zum Host-PC transportieren. Neben dem Einsatz von sog. High-Performance Treibern, die jedoch nur auf bestimmte Netzwerk-Chipsätze optimiert sind, werden vielfach GigE-Vision Filter Treiber eingesetzt. Diese sind universell mit beliebigen Netzwerkkarten verwendbar und bieten eine sehr gute Balance aus anfallender CPU-Last und flexibler Verwendung auf unterschiedlicher Hardware. Mit den erweiterten Einstellungen des Netzwerkadapters lässt sich die anfallende CPU-Last bei Verwendung eines GigE FilterTreibers sehr gering halten. Die Standardgröße eines Ethernet-Pakets ist ca. 1500 Byte. Mit Jumbo Frames lassen sich mehr Nutzdaten pro Paket übertragen und sich so der Protokoll Overhead erheblich verringern. Die Recieve Descriptoren sind Datensegmente, die verwendet werden, um empfangene Pakte in den PC Speicher zu schreiben. Mit einer größeren Anzahl kann der Treiber effizienter und weniger CPU-intensiv arbeiten. Die Einstellung Interrupt Moderation regelt das Verhältnis aus empfangenen Daten und den dafür vom Netzwerkadapter ausgelösten Interrupts. Je weniger Interrupts ausgelöst werden, desto geringer ist die Prozessor Last. Zwar steigt gleichzeitig die Latenz beim Empfang der Daten, in der Praxis kann dieser Wert jedoch maximal eingestellt werden (d.h. eine geringere Anzahl an Interrupts wird generiert) ohne die Bildverarbeitungsanwendung zu beeinträchtigen. Mit diesen Einstellungen auf der Netzwerkkarte ergeben sich in der Praxis auf einem durchschnittlichen Standardsystem mit Pentium 4 2.8 GHz System folgende CPU Lasten in Abhängigkeit vom Übertragungsvolumen (Bild 1 – Diagramm).
Mehrkamerasysteme mit Switches
GigE Vision eignet sich wegen zahlreicher Möglichkeiten der Netzwerk-Infrastruktur-Topologie und vielfältigen Ethernet-Transportmedien auch besonders für Mehrkamera-Lösungen, da sich diese mit einem Minimum an Hardwareaufwand realisieren lassen (Bild 2 – GigE-Multi-Kamera). Auch wenn man mehrere Kameras an einem Gigabit-Ethernet Port über einen Switch betreibt, werden die Bilddaten stabil und sicher erfasst. Natürlich darf in der heutigen Ausbaustufe von GigE-Vision die Bandbreite pro Ethernetport 125 MB/s nicht übersteigen und der Switch selbst muss in der Lage sein, die Jumbo Frames von allen aktiven Kameras parallel zum Ziel zu routen.
Synchronisation und Latenz
Die gleichzeitige Aufnahme von mehreren Kameras kann über einen gemeinsamen externen Trigger synchronisiert werden. Optional ließe sich der Trigger auch nur an eine Kamera geben und von dort direkt an weitere Kameras durchschleifen (daisy-chain). Die Prosilica Kameras haben eine feste Latenz: exakt 2,4 µs nach Erhalt des gemeinsamen Triggers beginnen sie zeitgleich mit der Belichtung des Bildes und geben das Exposure-Signal über eine programmierbare I/O Leitung aus (Bild 3 – Trigger und Exposure).
Bereits mit Beginn des Sensor-Readouts werden die Bilddaten über den Switch zum Host-PC gestreamt. Das Transportverhalten ist sehr deterministisch, innerhalb von 170 µs liegen die Bilder von allen drei Kameras vollständig im PC vor und können dort verarbeitet werden (Bild 4 – Trigger und Daten im PC). Die Reihenfolge des Bildempfangs über die Netzwerkstruktur kann nicht immer vorhergesagt werden, der Zeitunterschied für das Eintreffen der Bilddaten liegt jedoch bei wenigen µs (Bild 5 – Daten im PC Zoom). Dieses Verhalten sollte für Vision-Applikationen mehr als ausreichend sein.
Parallele Datenübertragung
Wenn mehrere Kameras gleichzeitig ins Netzwerk senden, muss die Bandbreite von 125 MB/s pro GigE Port zwischen den einzelnen Kameras aufgeteilt werden. Prosilica bietet den Parameter StreamBytesPerSecond, der für jede einzelne Kamera im Netzwerk genau festlegt, wie viele Daten gesendet werden. So kann das Transfervolumen optimal auf die Anwendung angepasst werden. Es sind auch nicht gleichmäßige Aufteilungen möglich, wenn z.B. eine Megapixel-Kamera parallel zu einer VGA-Kamera betrieben wird.
Serielle Datenübertragung
Ist nur der Aufnahmezeitpunkt entscheidend, nicht aber unbedingt der Zeitpunkt, wann die Daten im PC zur Verfügung stehen, lässt sich die Datenübertragung mittels StreamHold serialisieren. Die Kameras belichten ein oder mehrere Bilder und speichern sie im internen onboard Memory, das bis zu 32 MB groß ist. Wird StreamHold per Software für eine einzelne Kamera wieder deaktiviert beginnt die Datenübertragung der gespeicherten Bilder. Über diesen Mechanismus lassen sich beliebig viele Kameras betreiben, da ja exakt per Software festgelegt werden kann, wann eine Kamera effektiv das Netzwerk belastet – unabhängig vom Zeitpunkt der Bildaufnahme. Bild 6 – externer Trigger und StreamHold – zeigt ein solches Setup: drei Kameras stehen auf StreamHold und werden über den externen Trigger gleichzeitig ausgelöst. Das aufgenommene Bild wird nicht sofort über die GigE Schnittstelle ausgegeben, sondern intern gespeichert. Per Software wird es nun explizit angefordert (StreamHold wird deaktiviert) und steht ca. 8 ms später im Host-PC zur Verfügung.
Jenseits der Bottlenecks
Um für schnelle Anwendungen – mit vielen gleichzeitig sendenden Kameras – den Flaschenhals der begrenzten Bandbreite zu umgehen, existieren Multi-Port Karten. Sie verfügen über bis zu vier unabhängige Gigabit-Ethernet Ports. Damit lässt sich ein Netzwerk mit 500 MB/s aufbauen, auch wenn eine einzelne Kamera nie über 125 MB/s hinaus senden darf. Die hierfür zumeist eingesetzte PCIe Technologie erlaubt außerdem eine Transfergeschwindigkeit von 1 GB/s vom Board zum PC – wie es bei CameraLink Framegrabbern heute bereits üblich ist.
Spezialisierte Hardware für GigE Vision – wie das Matrox Solios GigE – addieren zu der Funktionalität einer reinen 4fach Port Netzwerkkarte weitere Features besonders für Bildverarbeitungsaufgaben: das Board beinhaltet eine Protocol Offload Engine für alle 4 Kanäle, um 0% CPU Last zu erreichen. Auch die Bild-Rekonstruktion wird komplett auf der Hardware durchgeführt, so dass die Host CPU wirklich vollständig für die eigentliche Bildverarbeitung zur Verfügung steht. Zusätzliche, programmierbare Trigger Ein- und Ausgänge sowie ein optionales FPGA für Datenvorverarbeitung runden Matrox Solios GigE ab. Durch die hohe Flexibilität eines GigE Vision Systems in Hard- und Software lässt sich so immer eine Konfiguration erstellen, die der jeweiligen Aufgabe sowohl in Performance als auch Kosten gerecht wird.
RAUSCHER, Olching
QE 518
Newsletter

Jetzt unseren Newsletter abonnieren

Quality Engineering
Titelbild QUALITY ENGINEERING 1
Ausgabe
1.2024
LESEN
ABO
Webinare & Webcasts

Technisches Wissen aus erster Hand

Whitepaper

Whitepaper zum Thema QS


Industrie.de Infoservice
Vielen Dank für Ihre Bestellung!
Sie erhalten in Kürze eine Bestätigung per E-Mail.
Von Ihnen ausgesucht:
Weitere Informationen gewünscht?
Einfach neue Dokumente auswählen
und zuletzt Adresse eingeben.
Wie funktioniert der Industrie.de Infoservice?
Zur Hilfeseite »
Ihre Adresse:














Die Konradin Verlag Robert Kohlhammer GmbH erhebt, verarbeitet und nutzt die Daten, die der Nutzer bei der Registrierung zum Industrie.de Infoservice freiwillig zur Verfügung stellt, zum Zwecke der Erfüllung dieses Nutzungsverhältnisses. Der Nutzer erhält damit Zugang zu den Dokumenten des Industrie.de Infoservice.
AGB
datenschutz-online@konradin.de