Rapid Prototyping für intelligente Kameras

Skripting hoch zwei

Sick AppSpace ist das erste Entwicklungssystem, das zusammen mit Halcon Rapid-Prototyping für intelligente Kameras bietet. Skriptsprachen und vielseitige Entwicklungstools ermöglichen mit geringem Aufwand die Implementierung kundenspezifischer Anwendungen. Darüber hinaus lässt sich die Software-Lösung – je nach Anforderung – auf unterschiedlichen Embedded-Systemen von Sick skalieren.

Die Entwicklungsumgebung HDevelop mit vielf?ltigen Tools und Debug-M?glichkeiten. (Bild: Visioning)

Bild 1: Die Entwicklungsumgebung HDevelop mit vielfältigen Tools und Debug-Möglichkeiten. (Bild: Visioning)

Anzeige

Traditionell gibt es für Entwickler von kundenspezifischen Softwarelösungen für intelligente Kameras zwei Wege: Erstens eine low-level Programmierung mit dem Verzicht hinsichtlich Komfort und Schnelligkeit moderner Entwicklungstools (insbesondere was die Erstellung von Schnittstellen, Bedienoberflächen und Applikationslogik angeht) oder zweitens, die Entscheidung für ein konfigurierbares System, mit dem zwar schnell eine Anwendung zu erstellen ist, welches aber auf Grund des begrenzten Funktionsumfangs oder der vordefinierten Konfigurationsmöglichkeiten die Entwicklung einer optimalen und individuellen Kundenlösung nicht erlaubt. Im Folgenden soll anhand einer konkreten Anwendung dargestellt werden, wie die Plattform Sick AppSpace von Sick in Kombination mit der Bildverarbeitungsbibliothek Halcon von MVTec versierten Bildverarbeitungsentwicklern völlig neue Möglichkeiten bietet.

Die Entwicklungsumgebung AppStudio mit Skript-Editor und UI-Builder. (Bild: Visioning)

Bild 2: Die Entwicklungsumgebung AppStudio mit Skript-Editor und UI-Builder. (Bild: Visioning)

Rapid-Prototyping und Skriptprogrammierung

Entwickler, die aus der Halcon Welt kommen, sind das freie Programmieren mit einer Skriptsprache gewöhnt und freuen sich über deren Vorteile in einer integrierten Entwicklungsumgebung, wie z.B. live Syntax-Check, keine Compile-Zeiten und weitreichende Debug-Möglichkeiten. In der AppSpace Welt bildet Lua als Skriptsprache die Basis zur Entwicklung der Applikation. Die Hürde für Neueinsteiger ist dabei gering. Der Entwickler nutzt die beiden Entwicklungsumgebungen HDevelop und Sick AppStudio parallel, jedes mit eigenem Fokus und speziellen Tools. Der Entwicklungsprozess beginnt typischerweise damit, dass mit einer einfachen App auf der intelligenten Kamera InspectorP, eine programmierbare 2D-Kamera, Bilder von einem Versuchsaufbau aufgenommen und auf den Entwicklungsrechner gespeichert werden. Danach startet das Programmieren in HDevelop mit den bekannten Stärken: Schnelles Entwickeln eines Prototypens z.B. auf Basis von Applikationsbeispielen und mit Hilfe von Tools, sowie die Freiheiten einer high-level Skriptsprache zur Programmierung individueller Lösungswege und die Möglichkeiten zum Feintuning mit Hilfe von Testprogrammen (Bild 1). Lua ist eine Skriptsprache, die sich aus dem Bereich der Computer-Grafik entwickelt hat und sich durch Plattformunabhängigkeit sowie Performanz auszeichnet. Mit der in Lua itegriertenn AppSpace-API stehen alle notwendigen Module für die Entwicklung einer Bildverarbeitungsanwendung auf einem Gerät bereit: Steuerung der Bildaufnahme, digitale I/Os, Peripheriesteuerung sowie Kommunikationsschnittstellen wie Seriell, FTP, TCP/IP und CAN und eine Sick eigene Bildverarbeitungsbibliothek. Zudem gibt es ein Modul mit der Halcon Prozeduren integriert werden. Ist nach der Design Phase die Schnittstelle Lua zu Halcon definiert, reicht eine Aktualisierung der Halcon Prozeduren aus, um einen modifizierten Algorithmus sofort auszuführen.

Laboraufbau der Kundenapplikation: Die App l?uft live auf einem InspectorP63x mit gespeicherten er. Die Bedienung erfolgt ?ber einen WLAN-Router von einem Tablet. (Bild: Visioning)

Bild 3: Laboraufbau der Kundenapplikation: Die App läuft live auf einem InspectorP63x mit gespeicherten er. Die Bedienung erfolgt über einen WLAN-Router von einem Tablet. (Bild: Visioning)

Arbeiten mit AppStudio

Zentral in AppStudio ist einmal der Lua-Editor mit Unterstützung durch z.B. Syntax High-Lighting und Auto-Completion (Bild 2). Typische Werkzeuge wie Debugger mit Variableninspektion stehen ebenfalls zur Verfügung. Der zweite Hauptarbeitsbereich ist der UI-Builder zur Entwicklung des Web-Frontends. Mit Layout-Elementen wird dabei das Design gestaltet. Typische Controls für die Ein- und Ausgabe stehen zur Verfügung und werden ebenfalls per Drag&Drop platziert. Schließlich ist noch die Verbindung von UI-Elementen zur Applikationslogik zu implementieren. Für diesen Arbeitsschritt wünscht sich der Entwickler in der Zukunft mehr Unterstützung bei der Implementierung von Oberflächen sowie mehr Designmöglichkeiten. Für ein besonderes, über die Standardkomponenten hinausgehendes Design oder eine erweiterte User-Experience muss der Entwickler die Welt der Webprogrammierung betreten. Auf der einen Seite ist dies sicherlich eine Hürde. Andererseits stehen dem Entwickler aber vielfältige Möglichkeiten zur Verfügung. Er profitiert von den aktuellen Entwicklungen im Bereich der Webtechnologien, und mit JavaScript, HTML5 und CSS sind zudem sehr spezielle oder komplexe Benutzerführungen möglich. Sobald eine Verbindung zu einem angeschlossenen Gerät vorhanden ist, reicht zum Testen das Drücken von F5, damit AppStudio die Anwendung auf das Gerät lädt und startet. Ein wichtiges Werkzeug in AppStudio ist der Emulator. Mit diesem ist die offline Entwicklung von Programmen für alle AppSpace fähigen Geräte möglich. Ergänzt wird dieser durch den Recorder, mit dem Datenströme aufgezeichnet und wieder abgespielt werden können.

Skripting hoch zwei
Bild: Visioning


Das könnte Sie auch interessieren

Wie können komplette 3D-Daten erfasst, interne Defekte in Gussteilen erkannt und sogar deren 3D-Koordinaten bestimmt werden? Das Unternehmen Carl Zeiss Industrielle Messtechnik GmbH hat ein informatives Video veröffentlicht, in dem die Inline-Prozessinspektion mit dem Zeiss VoluMax in der Leichtmetallgießerei am BMW-Produktionsstandort Landshut veranschaulicht wird.

Anzeige

Klassische Wärmebildkameras benötigen einen mechanischen Shutter, mithilfe dessen ca. alle 2 bis 3 Minuten Referenzdaten zur Kalibrierung der Wärmebilddarstellung und der Temperaturmessung aufgenommen werden. Jedoch erzeugt das Schließen des Shutters ein Geräusch und die Videoaufzeichnung ist während dieser Zeit unterbrochen. Daher hat Tamron nun ein Shutter-loses Wärmebildkameramodul auf Basis eines amorphen Silikonwärmebildsensors entwickelt. Dieser Sensor verfügt über eine exzellente Temperaturwiedergabe selbst wenn sich seine eigene Temperatur verändert.

www.tamron.eu

Der Industriescanner VTCIS ist in der Lage, im Druckbild fehlende Nozzles bei einer Auflösung von 1.200dpi automatisch zu detektieren. Da der CIS (Compact Image Sensor) nicht das komplette Bild einzieht, sondern nur bestimmte Bereiche scannt, wird die Datenverarbeitung vereinfacht und die Datenmenge deutlich reduziert. Außerdem garantiert die integrierte Flüssigkeitskühlung Farbstabilität über den gesamten Druckprozess hinweg und schließt Farbabweichungen aus. Dank einer Zeilenrate von bis zu 250kHz und einer Abtastgeschwindigkeit von bis zu 20m/s ist der Scanner für sehr schnell laufende Druckprozesse bestens geeignet.

www.tichawa.de

Die neuesten Versionen der 3D-Kameras für Lasertriangulation erreicht Triangulationsraten von bis zu 68kHz. Die Kamera basiert dabei auf einem 2/3″ Hochgeschwindigkeitssensor von Cmosis, der auch bei schwachen Lichtverhältnissen eine hervorragende Leistung erbringt. Als Schnittstelle verwendet die 3D05 das standardisierte GigEVision-Interface. Für eine einfache Integration und Synchronisierung besitzt die Kamera eine komplette, in die Kamera integrierte Drehgeberschnittstelle (RS422 und HTL). Das HTL-Interface ermöglicht dabei auch einen stabilen und effizienten Einsatz in der Schwerindustrie oder Bereichen mit starken elektrischen Störquellen.

www.photonfocus.com

Sensoren bis zu 1/1.2 und 1″ wurde die HF-XA-5M Objektivserie von Fujinon entwickelt. Die Objektive erreichen eine konstant hohe Auflösung von 5MP über das gesamte Bildfeld – bei einem Pixelabstand von 3,45µm. Dies gilt bei offener Blende ebenso wie bei verschiedenen Arbeitsabständen. Mit 29,5mm Außendurchmesser eignen sich die Objektive für platzkritische Anwendungen.

www.polytec.de

Die Messsoftware Wave ist für den hochpräzisen Wegmesssensor IDS3010. Damit können Messdaten in Echtzeit analysiert, verarbeitet und ausgewertet werden. Die Software verfügt über verschiedene Funktionen zur Visualisierung und Analyse von Daten, beispielsweise können die angezeigten Messdaten vergrößert/verkleinert werden oder die Datenvisualisierung kann gestoppt werden, um bestimmte Zeitbereiche zu analysieren. Außerdem ist eine Live Fast-Fourier-Transformation von Messwerten implementiert.

www.attocube.com

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige