Daten, die durch kundenspezifische Programmierung entstehenden, werden dank der Vision-App »Smart GenICam« Standard-konform nutzbar.
Möchten Anwender selbst erstellte Funktionen auf intelligenten Kameras auzuführen, stoßen sie auf zwei Hindernisse: Einerseits stehen ihnen oft nur proprietäre Schnittstellen zur Verfügung, wodurch die Verarbeitung der Daten in Drittanwendungen erschwert wird. Andererseits bieten nur wenige Modelle ein High-Speed Dateninterface wie GigE Vision. IDS Imaging Development Systems verbindet deshalb Standard-Vision-Industriekameras mit dem Vision-App-basierten IDS-NXT-Konzept. Dank der Vision App »Smart GenICam« lassen sich Daten, die durch kundenspezifische Programmierung entstehenden, genauso nutzen, als würden sie zum herstellerübergreifend definierten Standard-Funktionsumfang der Industriekamera gehören.
GenICam als Kamerainterface ermöglicht standardisierte Kamerafunktionen, andererseits können Kamerahersteller durch die Feature Node-Map – gewissermaßen die Kamera-API – Sonderfunktionen integrieren. Aktuell entwickelt IDS eine »Smart GenICam«-Vision-App, mit der Kunden ihre selbst erstellte Kamerafeatures Vision-konform integrieren und nutzen können. Die Funktion steht ab dem zweiten Quartal 2019 zur Verfügung.
Anwender laden ihre Kamerafunktion als Vision App verpackt auf die IDS-NXT-Kamera. Die Kamerafirmware integriert anschließend den Anwendungscode in den Funktionsumfang. Über die XML-Beschreibungsdatei der Kamera lassen sich Konfiguration, Steuerung und Ergebnisse der Vision App in jeder GenICam-konformen Drittanwendung, wie z. B. Halcon, problemlos weiterverarbeiten – bei gleichzeitiger Nutzung der vollen GigE Bandbreite.
Die Nutzung Vision-konformer Anwendungen auf der IDS NXT Plattform bietet noch einen weiteren Vorteil: Die Anwendungsprozesse können zwischen Kamera und Host-PC skaliert werden. Als leistungsfähige Embedded-Systeme bieten Modelle wie IDS NXT rio und rome die Möglichkeit, Entscheidungsprozesse vom Host PC teilweise oder vollständig in die Kamera – »on the edge« – zu verlagern. Vorteile sind beispielsweise eine geringere Netzwerklast, Hardware-beschleunigte Verarbeitung, weniger Energieverbrauch und geringere Systemkosten.