
Die Softwarearchitektur einer typischen Bildverarbeitungslösung besteht im einfachsten Fall aus den Modulen Bildverarbeitung und Steuerung. Diese können in Form eines Halcon-Skripts in HDevelop entwickelt und mit der Laufzeitumgebung Hrun direkt auf dem Zielsystem ausgeführt werden. Für die Kommunikation mit der Anlagensteuerung stellt Halcon Schnittstellen wie OPC UA oder TCP/IP bereit. Dadurch lassen sich viele Anwendungen vollständig innerhalb der Halcon-Welt realisieren, ohne dass dafür zwingend eine Hochsprache erforderlich ist.
Sobald jedoch als drittes Modul eine grafische Bedienoberfläche benötigt wird, ändert sich die Situation. Halcon konzentriert sich bewusst auf die Bildverarbeitung und bietet für die UI- oder Applikations-Entwicklung Schnittstellen zu C++, .NET oder Python. Die Entwicklung moderner Benutzeroberflächen erfolgt deshalb üblicherweise in einer separaten Entwicklungsumgebung. Für umfangreiche Softwareprodukte oder komplexe Maschinensteuerungen ist diese Aufgabenteilung sinnvoll und entspricht einer klaren Softwarearchitektur. Viele kundenspezifische Bildverarbeitungsprojekte stellen jedoch andere Anforderungen: Hier liegt der Schwerpunkt eindeutig auf der Entwicklung und Optimierung der Bildverarbeitung. Der zusätzliche Wechsel zwischen HDevel-op und einer zweiten Entwicklungsumgebung erhöht in diesen Fällen die Komplexität des Projekts und den Entwicklungsaufwand. Ein durchgängiger Entwicklungsprozess innerhalb von HDevelop kann daher einen deutlichen Effizienzgewinn bieten. Deshalb hat Machine Vision Mak-ers die Erweiterung HDevGUI entwickelt.
GUI-Operatoren direkt in HDevelop
Die Halcon-Bibliothek bietet die Möglichkeit eigene Operatoren zu implementieren und damit den Funktionsumfang zu erweitern. Das HDevGUI basiert auf einem derartigen Extension Package, welches zur Nutzung einfach zu einer bestehenden Halcon-Installation hinzugefügt wird. Die Kommunikation zwischen Halcon und der Bedienoberfläche erfolgt über einen integrierten Webserver. Während HDevelop das Bildverarbeitungsprogramm ausführt, wird die HTML-Oberfläche parallel im Browser dargestellt. Bilder, Messwerte und Statusinformationen werden direkt an die Oberfläche übertragen, während Benutzereingaben automatisch als Variablen oder Ereignisse in HDevelop zur Verfügung stehen. Ein wesentlicher Vorteil besteht darin, dass der gewohnte Entwicklungsablauf vollständig erhalten bleibt. HDevelop-Skripte lassen sich weiterhin schrittweise ausführen und debuggen, während die Auswirkungen jeder Programmzeile unmittelbar in der Bedienoberfläche sichtbar werden. Dadurch können Bildverarbeitung und Benutzeroberfläche parallel entwickelt und getestet werden. OptoMedias ultrakompaktes Mini SFF bringt zuverlässige, schnelle Glasfaserverbindungen in Industriekameras der nächsten Generation. ‣ weiterlesen
Fiber Mini SFF für GigE Vision
Frontends mit HTML
HTML eignet sich hervorragend für die Entwicklung von Bedienoberflächen in der industriellen Bildverarbeitung. Ein besonderer Vorteil ist, dass Halcon genau so wie die Webtechnologie unterschiedliche Betriebssysteme unterstützt. In Verbindung mit Hrun entsteht eine lauffähige Anwendung, ohne dass eine zusätzliche Applikation in einer Hochsprache entwickelt und auf dem Vision-PC installiert werden muss. Die Bedienoberfläche kann lokal oder über das Netzwerk in einem
Browser genutzt werden. Alternativ lässt sie sich mithilfe von Frameworks wie Electron als Desktop-Anwendung bereitstellen oder in bestehende HTML-basierte HMIs oder Steuerungssysteme, beispielsweise von Siemens oder Beckhoff, integrieren. Für einfache Bedienoberflächen genügen grundlegende HTML-Kenntnisse. Mitgelieferte Beispiele und Widgets erleichtern den Einstieg. Bei Bedarf kann das Frontend mit CSS an das Corporate Design angepasst und durch JavaScript um interaktive Funktionen erweitert werden. Gleichzeitig profitieren Entwickler von einer großen HTML-Community und einer Vielzahl verfügbarer Bibliotheken.
Anwendungen
In vielen kundenspezifischen Bildverarbeitungsprojekten sind die Anforderungen an die Bedienoberfläche überschaubar und konzentrieren sich auf typische Interaktionsmuster: Zum Einstellen einer Kamera oder zur Durchführung einer Kalibrierung kann das Kamerabild auf dem Smartphone oder Tablet betrachtet werden, wenn der Vision-PC nicht zugänglich ist. Parameter lassen sich über strukturierte Eingabemasken anpassen. Dashboards, Statusanzeigen oder Event-Logs stellen den Anlagenzustand übersichtlich dar. Mit der Nutzung von HDevGUI können Bedienoberflächen direkt in HDevelop entwickelt und gemeinsam mit der Bildverarbeitung getestet werden. Der Entwickler bleibt während des gesamten Projekts in seiner gewohnten Entwicklungsumgebung und kann die Anwendung bis zur Inbetriebnahme effizient weiterentwickeln.
















