Auswahl des passenden Controllers für Ihre Bildverarbeitungsanwendung

Überblick

Industrielle Bildverarbeitung wird immer häufiger in Mess- und Automatisierungssystemen genutzt. Ein Grund dafür ist, dass mithilfe einer Kamera mehr Informationen gewonnen werden können als mit einem einzelnen, zweckgebundenen Sensor. Kameras können eingesetzt werden, um Angaben zu Temperatur zu erhalten, Abmessungen zu ermitteln, Objekte auf An- oder Abwesenheit zu prüfen, und um eine Vielzahl weiterer nützlicher Informationen zu gewinnen. Daher sind Kameras eine beliebte Wahl für Anwendungen zur Qualitätsprüfung, Maschinen- und Robotersteuerung. Alle diese Anwendungen stellen eigene Anforderungen und bringen Herausforderungen mit sich, die bei der Auswahl der jeweiligen Hard- und Software für die Steuerung und Regelung berücksichtigt werden müssen. Dieses Whitepaper liefert einen Überblick über einige relevante Aspekte, um Sie bei der Auswahl eines passenden Controllers für Ihre industriellen Bildverarbeitungsanwendungen zu unterstützen.

Inhalt

Was ist ein Bildverarbeitungssystem?

Ein Bildverarbeitungssystem besteht aus einer oder mehreren Kameras für die Bilderfassung sowie einem Controller, der mit Datenerfassungs- und Analysesoftware ausgestattet ist. Die Systeme können verschiedene Formen annehmen. Zu den gängigen Systemen zählen solche mit Smart Cameras, bei denen die Kamera und der Controller in einer Einheit verbaut sind oder solche, bei denen Kameras an einen Desktop- oder Industrie-PC mithilfe eines Framegrabbers oder über Schnittstellenports wie Ethernet oder USB angeschlossen sind. Ebenfalls gängig sind Systeme, bei denen Kameras mit industriellen Steuerungen und Regelungen wie z. B. speicherprogrammierbaren Steuerungen (SPSen) verbunden sind, wobei ein Controller die Bilddatenerfassung übernimmt sowie die Slice-I/O und Messgeräte steuert.

Diese Systeme sind insoweit vergleichbar, dass damit ähnliche Anwendungen erstellt werden können, jedoch besitzen alle von ihnen individuelle Eigenschaften, weshalb sie je nach Anwendungsfall mehr oder weniger geeignet sind. Damit Sie den besten Controller für Ihre Anwendung finden, ist es wichtig, dass Sie alle Anforderungen Ihrer Anwendung berücksichtigen und diese mit den Eigenschaften der Controller abgleichen. Zwar steht dabei in erster Linie die Verarbeitungsleistung eines Controllers im Vordergrund, doch gibt es noch andere Aspekte, die genauso berücksichtigt werden sollten, z. B. kompatible Kameramodelle, I/O-Funktionalität und die Integrierbarkeit in eine bestehende Infrastruktur.

Verarbeitungsleistung

Die Verarbeitungsleistung kann direkten Einfluss darauf haben, welche Algorithmen ausgeführt werden und wie schnell das Bildverarbeitungssystem Entscheidungen treffen kann. Ein Barcode-Kontrollsystem erfordert deutlich weniger Verarbeitungsleistung als ein Stereobildverarbeitungssystem mit mehreren Kameras. Außerdem benötigt ein industrielles Bildverarbeitungssystem mit I/O oder Motorsteuerung im geschlossenen Regelkreis mehr Verarbeitungsleistung, damit sichergestellt ist, dass die Bildverarbeitungskomponente sowie die Komponente zur I/O und Motorsteuerung deterministisch ausgeführt werden. Um möglichst schnell mit der Bildverarbeitung beginnen zu können, greifen einige Anbieter mehr und mehr auf heterogene Verarbeitungsmethoden zur Ausführung von Bildverarbeitungsalgorithmen zurück. Bei der heterogenen Verarbeitung wird eine Kombination von CPUs und GPUs, FPGAs bzw. DSPs eingesetzt, um Bilder schneller zu verarbeiten, als dies mit nur einer dieser Komponenten möglich wäre. Die heterogene Verarbeitung verringert daher den Zeitaufwand für die Bildverarbeitung und ermöglicht sogar die Verwendung von Bildern als Eingangssignal für einen Regelalgorithmus. Bevor Sie einen Controller für das Bildverarbeitungssystem auswählen, ist es wichtig, dass Sie die Algorithmen, die Sie einsetzen möchten, sowie deren Ausführungsdauer im System gut kennen.

Unterstützte Kameras

Bei der Controller-Auswahl müssen Sie auch die Anzahl der Kameras sowie die Art des Kommunikationsbusses berücksichtigen, die zur Bilderfassung eingesetzt werden sollen. Sobald Sie die Kameras für Ihre Anwendung ausgewählt haben, achten Sie darauf, dass der Controller den Kommunikationsbus unterstützt, mit dem die Kameras arbeiten. Zu den häufig genutzten Industriestandard-Bussystemen für die Bildverarbeitung zählen USB3 Vision und GigE Vision. Diese Standards ermöglichen Controllern die Kopplung mit Kameras über gängige USB-3.0- oder Ethernet-Ports, mit denen Verbraucher- und Industrie-PCs gewöhnlich ausgestattet sind. Beide Standards ermöglichen den Anschluss mehrerer Kameras an einen Port über einen Hub oder Switch. Es ist absolut gängig, dem System auf diese Weise Kameras hinzuzufügen. Jede an den Hub angeschlossene Kamera teilt allerdings ihre Bandbreite mit den anderen Kameras, die an denselben Hub angeschlossen sind. Außerdem werden bestimmte Funktionen wie Power over Ethernet (PoE) von den meisten Standard-Switches nicht unterstützt. Wenn Sie vorhaben, diese Funktionen zu nutzen oder Ihr System nicht genügend Bandbreite für mehrere Kameras bietet, sollten Sie einen Controller mit mehreren Ports wählen, die sich voneinander unabhängig steuern lassen. Dann hat nämlich jede Kamera die volle Bandbreite.

I/O-Funktionalität

Die meisten industriellen Bildverarbeitungssysteme erfordern einfache digitale I/O, um z. B. Kameras zu triggern oder von Encodern zu lesen. Ein klassisches Beispiel ist ein Bildverarbeitungssystem, bei dem eine Kamera über einem Fließband installiert ist und alle Komponenten prüft, die nacheinander über das Band laufen. Es kann schwierig sein, genau in dem Moment ein Bild aufzunehmen, in dem sich ein Werkstück direkt unter der Kamera befindet, denn dafür muss das System die Fließbandposition verfolgen können. Eine häufige Lösung besteht darin, einen Encoder zu verwenden, um die Position des Fließbands auszulesen und die Kamera in regelmäßigen Intervallen auszulösen, und zwar entsprechend der Anordnung der Bauteile auf dem Fließband. Sind die Teile ungleichmäßig auf dem Fließband verteilt, kann ein Näherungssensor eingesetzt werden, der stattdessen die Kamera auslöst.

Einige industrielle Bildverarbeitungssysteme erfordern unter Umständen eine fortschrittlichere, umfassendere I/O-Funktionalität. In einigen Anwendungen für die Materialanalyse ist es häufig erforderlich, dass Bilder mit Messdaten synchronisiert werden, damit die Ereignisse auf den Bildern mit Messungen korreliert werden können. Stellen wir uns beispielsweise eine Anwendung vor, bei der Kameras und Dehnungsmessstreifen eingesetzt werden, um bei einem Verbundwerkstoff den Weg zu messen, den dieser unter Krafteinwirkung zurücklegt, sowie die Größe der Last. Die synchronisierten Daten können verwendet werden, um zu verstehen, wie sich ein Werkstoff unter Last verhält bzw. um den Punkt zu ermitteln, an dem der Werkstoff versagt. Eine solche Synchronisation erfordert die enge Integration von Bilderfassung und I/O, sodass Messungen einen präzisen Zeitstempel erhalten oder auch ein einzelner Takt durch die Kameras und das Messgerät gemeinsam verwendet kann. Seien Sie sich also über Ihre I/O sowie die Synchronisationsanforderungen im Klaren, bevor Sie einen Controller auswählen. Für einfache Anforderungen an die I/O, z. B. Triggern oder nicht synchronisierte Messungen, ist ein Controller ausreichend, der integrierte oder Netzwerk-I/O bietet. Wählen Sie hingegen für komplexere I/O-Anforderungen einen Controller, der integrierte I/O besitzt oder mithilfe eines deterministischen Kommunikationsprotokolls wie EtherCAT an I/O-Geräte angeschlossen werden kann.

Systemintegration

Es wäre ideal, wenn die Hard- und Software von unterschiedlichen Anbietern stets auf Anhieb zusammenarbeiten und Daten fehlerfrei austauschen könnten, doch leider ist das nur selten der Fall. Häufig werden nämlich industrielle Bildverarbeitungssysteme zu einer bestehenden Infrastruktur hinzugefügt, die Systeme von unterschiedlichen Anbietern umfasst, welche jeweils proprietäre Schnittstellen nutzen. Hier ist die Systemintegration unter Umständen schwierig, doch existieren Standardkommunikationsprotokolle wie Ethernet/IP und Modbus, die eigens zur Vereinfachung des Vorgangs entwickelt wurden. Machen Sie sich mit der bestehenden Infrastruktur vertraut und wählen Sie einen Bildverarbeitungscontroller, der integriert werden kann. Wählen Sie für die bestmögliche Integration einen Controller, der viele verschiedene Kommunikationsprotokolle unterstützt.

Produktvergleich

Zu den Produkten, die NI für Bildverarbeitungssysteme anbietet, zählen u. a. Compact Vision Systems, CompactRIO und die NI-Industrie-Controller. Wie bereits erwähnt wird die Gesamtleistung eines industriellen Bildverarbeitungssystems unmittelbar durch die Verarbeitungsleistung und die Zahl eingesetzter Kameras beeinflusst. Um die Unterschiede zwischen den Produkten zu verstehen, können Sie einen Leistungsvergleich durchführen, indem Sie die Produkte als Controller für eine Bestückungsmaschine einsetzen, bei der eine oder mehrere Kameras verwendet werden, um die Teile zu ermitteln, die aufgenommen werden sollen. Die Gesamtleistung der Maschine bemisst sich daran, wie viele Teile pro Sekunde erkannt werden können.

Die Tabelle unten gibt die Systemleistung an, die bei einer solchen Maschine theoretisch erreicht wird. Die Tabelle zeigt auch einen Desktop-Prozessor, um zu verdeutlichen, welche Systemleistung mit einem aktiv gekühlten System im Vergleich zu einem passiv gekühlten System realisiert werden kann.

Wie Sie sehen können, bietet der NI-Industrie-Controller als passiv gekühlte, kompakte Einheit eine Leistung, die nahe an das heranreicht, was mit einem Desktop-Prozessor erreichbar ist. Aufgrund seiner großen Anzahl von Kameraports und des leistungsfähigen Prozessors handelt es sich bei dem Industrie-Controller um die leistungsstärkste Hardware in der Tabelle. Andere Produkteigenschaften sollten jedoch auch berücksichtigt werden.

Werfen wir bei den Produkten in der Tabelle einen Blick auf diese anderen Eigenschaften, darunter integrierte I/O, Speicherplatz und bildverarbeitungsspezifische Ausstattungsmerkmale wie PoE.

1Die leistungsoptimierten CompactRIO-Controller unterstützen auch USB3-Vision-Kameras, die abwärtskompatibel zu USB 2.0 sind.

2Compact Vision Systems und Industrie-Controller verfügen zwar über keine integrierten Steckplätze für I/O-Module der C-Serie, können jedoch mit einem Ethernet- oder EtherCAT-Erweiterungschassis eingesetzt werden.

3Compact Vision Systems bieten nur begrenzte Unterstützung für die FPGA-gestützte Bildverarbeitung, jedoch sind aufgrund der geringen Größe des FPGAs und der eingeschränkten Verarbeitungsbandbreite die Leistungsgewinne ohnehin gering.

Anhand der individuellen Anforderungen an eine Anwendung lässt sich der passende Controller auswählen. Im Folgenden erhalten Sie einen Überblick über jedes Produkt.

Compact Vision Systems

Bei einem Compact Vision System handelt es sich um einen bildverarbeitungsoptimierten Industriecomputer, der über zwei voneinander unabhängig steuerbare GigE- oder USB-3.0-Ports für die Anbindung von Kameras verfügt. Compact Vision Systems besitzen einen leistungsstarken Quad-Core-Prozessor, der die für anspruchsvolle Anwendungen erforderliche Leistung liefert, und einen integrierten VGA-Port für eine Mensch-Maschine-Schnittstelle (HMI) sowie USB-2.0-Ports für den Anschluss einer Maus oder Tastatur. Daneben verfügen Compact Vision Systems über eine FPGA-fähige digitale I/O zum Lesen von Encodern und Implementieren benutzerdefinierter Trigger. Wenngleich Compact Vision Systems keine integrierten Steckplätze für I/O der C-Serie aufweisen, kann ein Ethernet- oder EtherCAT-Erweiterungschassis angeschlossen werden, damit das System um I/O der C-Serie ergänzt werden kann.

Darüber hinaus kann das System Befehle und Daten an andere Geräte senden, etwa an speicherprogrammierbare Steuerungen (SPSen) und Bedienoberflächen. Dies geschieht mithilfe industrieller Protokolle wie z. B. Ethernet/IP, RS232/RS485, serieller Modbus oder Modbus/TCP. Daneben umfassen Compact Vision Systems einen dedizierten Gigabit-Ethernet-Port für den Netzwerkanschluss sowie zwei Hochgeschwindigkeits-USB-Ports für die externe Datenspeicherung. Über eine unternehmensweite Vernetzung können so Prüfergebnisse überwacht, erfasste Bilder angezeigt oder Daten für die statistische Prozesssteuerung in Datenbanken gespeichert werden.

CompactRIO

CompactRIO eignet sich ideal für Bildverarbeitungsanwendungen, bei denen leistungsstarke Verarbeitung in Kombination mit modularer I/O erforderlich ist, sodass Automatisierungs-, Mess-, Steuer- und Regelaufgaben bewältigt werden können. Die neuesten leistungsoptimierten CompactRIO-Modelle weisen den gleichen Intel® Atom™ Quadcore-Prozessor wie die Compact Vision Systems auf und ermöglichen den Anschluss von GigE-Vision-Kameras und USB3-Vision-Kameras, die abwärtskompatibel zu USB 2.0 sind.

 

Zusätzlich umfasst CompactRIO bis zu acht Steckplätze für den Einsatz mit über hundert I/O-Modulen der C-Serie, sodass verschiedene Sensoren über jedes Bussystem angeschlossen werden können. CompactRIO bietet zudem den Vorteil einer beschleunigten Bildverarbeitung durch die Nutzung eines integrierten anwenderprogrammierbaren FPGAs. CPU und FPGA können daher bei der Bildverarbeitung zusammenarbeiten, sodass Verarbeitungszeiten reduziert werden. CompactRIO ermöglicht die mühelose Integration von SPSen und Bedienoberflächen mithilfe der vorhandenen RS232/RS485-Ports oder der Industrie-Kommunikationsmodule der C-Serie. Daneben besitzt CompactRIO einen dedizierten Gigabit-Ethernet-Port für den Netzwerkanschluss sowie zwei USB-2.0-Ports für die externe Datenspeicherung. Über eine unternehmensweite Vernetzung können so Prüfergebnisse überwacht, erfasste Bilder angezeigt oder Daten für die statistische Prozesssteuerung in Datenbanken gespeichert werden.

Industrie-Controller

Ganz ähnlich wie beim Compact Vision System handelt es sich bei Industrie-Controllern um bildverarbeitungsoptimierte Industriecomputer. Sie verfügen über vier unabhängig steuerbare GigE-Ports, zwei USB-3.0-Ports, einen Intel® i7 Prozessor und einen Kintex-7-FPGA von Xilinx. Somit handelt es sich um die leistungsstärksten Embedded-Controller von NI für Bildverarbeitungsanwendungen. Die NI-Industrie-Controller weisen zwar keine integrierten Steckplätze für I/O der C-Serie auf, doch kann ein Ethernet- oder EtherCAT-Erweiterungschassis angeschlossen werden, um das System mit weiterer I/O auszustatten. Der mächtige FPGA des Industrie-Controllers kann zusammen mit dem leistungsstarken Prozessor verwendet werden, um Bilder schneller zu verarbeiten und die Latenz zu verringern.

Darüber hinaus kann das System Befehle und Daten an andere Geräte senden, etwa an SPSen und Bedienoberflächen. Dies geschieht mithilfe industrieller Protokolle wie z. B. Ethernet/IP, RS232/RS485, serieller Modbus oder Modbus/TCP. Industrie-Controller besitzen ebenfalls einen dedizierten Gigabit-Ethernet-Port für den Netzwerkanschluss sowie vier USB-2.0-Ports für die externe Datenspeicherung. Über eine unternehmensweite Vernetzung können so Prüfergebnisse überwacht, erfasste Bilder angezeigt oder Daten für die statistische Prozesssteuerung in Datenbanken gespeichert werden. Die NI-Industrie-Controller sind am ehesten für anspruchsvolle Anwendungen mit mehreren Kameras geeignet, bei denen die Verarbeitungsgeschwindigkeit eine besondere Rolle spielt.