IDS uEye neben Python Logo in einem Kreislauf

Rapid Prototyping von Kameraanwendungen

Interaktives Programmieren mit IDS peak und uEye+ Kameras

Python ist eine sehr gebräuchliche Programmiersprache im Internet of Things (IoT). Sie erlaubt das Schreiben und Testen kurzer Code-Schnipsel, ohne die aufwendige Einrichtung einer kompletten Entwicklungsumgebung. Die Möglichkeit, interaktiv zu programmieren, macht sie zur idealen Schnittstelle für die Test- und Erprobungsphase. Gerade in Verbindung mit Embedded Systemen kann Python punkten, da kein aufwendiges Cross-Kompilieren notwendig ist.

Mit IDS peak können Sie die Vorteile von Python auch für die Programmierung Ihrer uEye+ Kameraanwendungen einsetzen. Die zahlreichen Kamerafeatures der IDS Industriekameras lassen sich damit schnell ausprobieren, analysieren und für die spätere Nutzung in einem größeren Softwareprojekt vorbereiten. Wir möchten Ihnen deshalb mit diesem Techtipp die Programmierung von uEye+ Kameras über das IDS peak python Interface etwas näher erklären.

Die verwendeten Python Sourcecode-Beispiele verdeutlichen den grundlegenden Umgang mit den Kameras und der Schnittstelle. Sie sind als "Jupyter-Notebooks" angelegt. Dadurch können sie in der Open-Source-Webanwendung mit Ihren uEye+ Kameras live getestet und nachvollzogen werden.

Wir beschreiben die Installation und Verwendung der Jupyter Notebooks exemplarisch für einen Windows 10 PC. Da Python für mehrere Plattformen zur Verfügung steht, und Jupyter Notebooks eine plattformunabhängige Webanwendung ist, können Sie die Sourcecode-Beispiele natürlich ebenfalls unter Linux ausführen und testen.

Voraussetzungen

Python

Python ist Voraussetzung für die Installation von Jupyter Notebook und für unsere IDS peak Programmierbeispiele.
Downloaden und installieren Sie Python

Welche Python Version installieren?
In der Readme Datei zu Ihrer installierten IDS peak Installation finden Sie Hinweise auf die kompatible Python Version, die Sie installieren sollten.
Im IDS peak Handbuch Kapitel "Projekt erstellen mit PyCharm" finden Sie den Link zur passenden Readme Datei für Ihr Betriebssystem.

Python Installationsdialog - Erweiterte Optionen
Python Installationsdialog - Erweiterte Optionen

Achten Sie darauf, dass Python für "alle Benutzer" installiert wird und dass Python zur "Pfad"-Variablen hinzugefügt wird. Dann können Sie Python auch über die Eingabeaufforderung verwenden.

pip install Pillow
pip install matplotlib
pip install opencv-python
pip install torch
python -m pip install --upgrade pip
python -m pip install ids_peak_ipl
python -m pip install ids_peak

Jupyter Notebook

Die Installation der Open-Source-Webanwendung erfolgt ebenfalls sehr einfach mit pip:

pip install notebook

Falls Sie weitere Informationen zu Jupyter Notebook benötigen:

Notebook Server

Öffnen Sie ein Powershell Fenster (Benutzerrechte reichen dazu aus) und starten Sie den Jupyter Notebook Server.

Powershell im Ordner öffnen
Starten Sie den Server direkt im Installationsordner des Beispiel-Notebooks, dann stehen Ihnen die Notebooks direkt zur Verfügung.
Um ein PowerShell-Fenster direkt in einem bestimmten Ordner zu öffnen, navigieren Sie im Explorer zuerst in dieses Verzeichnis, tippen dort in der Pfad-Leiste oben "powershell" ein und bestätigen mit "Enter".

PS C:\Users\ids\ids-peak-jupyter-notebooks> jupyter notebook
[I 12:12:45.115 NotebookApp] Serving notebooks from local directory: C:\Users\ids\ids-peak-jupyter-notebooks
[I 12:12:45.115 NotebookApp] The Jupyter Notebook is running at:
[I 12:12:45.115 NotebookApp] http://localhost:8888/?token=f8baad4df16a4b1436c59723cfcba540c4b5a923b3352120
[I 12:12:45.115 NotebookApp]  or http://127.0.0.1:8888/?token=f8baad4df16a4b1436c59723cfcba540c4b5a923b3352120
[I 12:12:45.115 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

Der Notebook-Server wird beim Start in Ihrem Standard-Webbrowser geöffnet und gibt in der Shell ein paar Informationen aus, einschließlich der URL der Webanwendung (standardmäßig http://localhost:8888). Wenn der Server in Ihrem Browser geöffnet wird, sehen Sie das Notebook-Dashboard, das eine Liste der Notizbücher, Dateien und Unterverzeichnisse in dem Verzeichnis anzeigt, in dem der Notebook-Server gestartet wurde.

Jupyter Notebook Dashboard
Jupyter Notebook Dashboard

Notebook verwenden

Öffnen Sie nun einfach das Notebook "ids-peak-python-sample-jupyter.jpynb" im Server.

IDS peak Python Sourcecode Sample
IDS peak Python Sourcecode Sample
IDS Mitarbeiter Heiko Seitz
Heiko Seitz
Product Marketing Manager

Dipl.-Ing. Heiko Seitz ist seit 2001 bei IDS tätig. Nach Jahren als Entwickler im Bereich Kamerasoftware unterstützt er heute als Product Marketing Manager die technologische Kommunikation bei IDS. Mit seiner Erfahrung schlägt er die Brücke zwischen komplexer Technik und praxisnaher Wissensvermittlung – etwa in Fachbeiträgen, Webinaren oder Vorträgen.

Vision Channel
Videos und Live Sessions rund um Machine Vision.

Ihr Projekt
Wie können wir Sie in Ihrem Projekt unterstützen? Gemeinsam finden wir die passende Lösung für Sie!

Newsletter
Bleiben Sie auf dem neuesten Stand und abonnieren Sie unseren Newsletter.