Fehlerbehebung

Diese Seite nennt zuerst die allgemeinen Prüfungen, die bei jedem Problem helfen. Beginnen Sie mit ihnen. Suchen Sie dann Ihr Symptom in den folgenden Kategorien: Zu jedem Problem finden Sie die Symptome, mögliche Ursachen, eine Diagnose und die Lösung. Der letzte Abschnitt nennt, was Sie an den Support senden.

Allgemeine Prüfungen

Konfiguration

Der Cam Driver verwendet eine zweistufige Konfiguration:

  • Die App-Konfiguration (lumiscan-cam-driver.json) legt fest, welche Kameramodule geladen werden.

  • Jede Kamerakonfiguration (zum Beispiel camera_example.json) steht für eine Kamera.

Fehlt eine Kamerakonfiguration, ist sie ungültig oder nicht korrekt referenziert, wird die Kamera nicht geladen und erscheint nicht im Data Layer.

Die Konfigurationen finden Sie unter:

Plattform Ort

ctrlX OS

Manage App Data > active > lumiscan-cam-driver

PC (Windows)

%APP_RESOURCE_DIR%\etc\lumiscan-cam-driver, oder ohne APP_RESOURCE_DIR C:\ProgramData\HD Vision Systems GmbH\LumiScan Vision Suite\lumiscan-cam-driver\etc\lumiscan-cam-driver

Auf beiden Plattformen zeigt /hdvisionsystems/lumiscan-cam-driver/system/settings die Dateien so, wie der Cam Driver sie beim Start gelesen hat. Eine Moduldatei, die nicht gelesen werden konnte, erscheint dort mit einem "$error", das den Grund nennt. Der Cam Driver liest seine Dateien nur beim Start: Starten Sie die Anwendung neu, nachdem Sie eine Datei geändert haben. Siehe Einstellungen auf dem Data Layer.

Status eines Kameramoduls

Jedes Kameramodul meldet den Ausgang seiner letzten Operation auf hdvisionsystems/lumiscan-cam-driver/<camera name>/control/status/code (als Zahl) und .../control/status/text (als Name). Die Bedeutung jedes Werts steht in Werte des Statuscodes.

  • Ein fehlgeschlagenes capture über den Handshake endet bei Status 3 (waitingForClient), nicht bei seinem eigenen Fehlercode. control/capture/execute behält den eigenen Code des Capture. Siehe Wann eine Funktionalität läuft.

  • Ein fehlgeschlagenes capture, reset, save oder load wird gespeichert: Sein Status bleibt, bis ein reset erfolgreich ist. Jeder andere Fehler bleibt nur etwa 100 ms auf control/status/code stehen.

  • Prüfen Sie mit <camera name>/device-info/is-connected, ob eine Kamera verbunden ist, nicht mit dem Status.

Protokolle

Besteht ein Problem weiterhin, prüfen Sie das Protokoll auf zusätzliche Fehlerinformationen:

  • ctrlX OS: das Systemprotokoll von ctrlX OS. Lesen Sie es im Logbuch der ctrlX-Weboberfläche oder mit journalctl. Siehe ctrlX Data Layer auf ctrlX OS.

  • PC: die Ausgabe des Cam Driver in seiner Konsole.

logLevel im Abschnitt system von lumiscan-cam-driver.json legt die Protokollstufe fest: TRACE, DEBUG, INFO, WARN, ERROR, FATAL oder OFF. Siehe Beispielinhalt der Anwendungs-Einstellungsdatei.

Ein Programm, das eine execute-Methode immer wieder aufruft, während sie abgelehnt wird, zum Beispiel capture/execute, während die Kamera belegt ist, würde eine Protokollzeile pro Aufruf schreiben. Für jede Methode und jedes Ergebnis protokolliert die Anwendung die erste Ablehnung und danach höchstens eine Zeile alle zehn Sekunden, die angibt, wie viele Ablehnungen nicht einzeln protokolliert wurden, zum Beispiel "(+250 like it since the last one logged)". Das execute-Ergebnis selbst wird weiterhin bei jedem Aufruf zurückgegeben.

Data Layer

Bei Problemen, die den Data Layer selbst betreffen - den Broker von LumiScan Keryx, Knoten, die nicht gefunden werden, Methodenergebnisse - siehe Fehlerbehebung von LumiScan Keryx.

Konfiguration und Start

Problem: Eine konfigurierte Kamera erscheint nicht im Data Layer

Symptome

Für eine Kamera, die Sie konfiguriert haben, gibt es keinen Knoten /hdvisionsystems/lumiscan-cam-driver/<module>.

Mögliche Ursachen
  • Die Kamerakonfiguration fehlt, ist ungültig oder in lumiscan-cam-driver.json nicht korrekt referenziert. Das Kameramodul wird dann nicht geladen.

  • Die id des Moduls enthält andere Zeichen als Kleinbuchstaben, Ziffern, - und _.

  • Die Datei wurde geändert, aber die Anwendung wurde nicht neu gestartet. Der Cam Driver liest seine Dateien nur beim Start.

  • Die gesamte Anwendung fehlt im Data Layer, zum Beispiel weil die Lizenz fehlt (ctrlX OS) oder die Anwendung einen anderen Broker verwendet (PC).

Diagnose
  1. Lesen Sie /hdvisionsystems/lumiscan-cam-driver/system/settings - erwartet: der Inhalt des Moduls in der Liste modules. Eine Moduldatei, die nicht gelesen werden konnte, erscheint als {"$file": ..., "$error": ...}; "$error" nennt den Grund.

  2. Prüfen Sie, ob die Kamerakonfigurationsdatei in der Liste der Kamerakonfigurationsdateien in lumiscan-cam-driver.json eingetragen ist - erwartet: Ihr Dateiname ist aufgeführt.

  3. Prüfen Sie die id in der Kamerakonfigurationsdatei - erwartet: nur Kleinbuchstaben, Ziffern, - und _, und eindeutig über alle Kameraeinstellungen hinweg.

  4. Lesen Sie das Protokoll (siehe Protokolle) - erwartet: kein Fehler für das Modul. Bei einer ungültigen id nennt das Protokoll die ID, die stattdessen zu schreiben ist.

  5. Gibt es überhaupt keinen Knoten /hdvisionsystems/lumiscan-cam-driver, läuft die Anwendung selbst nicht.

Lösung
  • Wenn die Kamerakonfiguration fehlt, ungültig oder nicht referenziert ist: Korrigieren Sie die App-Konfiguration und die Kamerakonfiguration so, dass sie korrekt aufeinander verweisen.

    1. Korrigieren Sie die Dateien, oder ändern Sie sie auf dem Data Layer über system/settings.

    2. Starten Sie die Anwendung neu, zum Beispiel mit hdvisionsystems/lumiscan-cam-driver/system/control/restart/execute.

    3. Prüfen Sie, ob /hdvisionsystems/lumiscan-cam-driver/<module> vorhanden ist.

  • Wenn die id ungültige Zeichen enthält: Schreiben Sie die ID, die das Protokoll nennt (zum Beispiel Camera1 → camera1), und starten Sie dann die Anwendung neu. Siehe Beispielinhalt einer Kameradatei.

  • Wenn die Anwendung im Data Layer fehlt: Auf ctrlX OS siehe Problem: "No valid license found, please purchase one. If you do have one, please try to restart ctrlX". Für einen PC und für andere Ursachen im Data Layer siehe Eine App oder ein Modul fehlt im Baum.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit dem Inhalt von system/settings und den Protokollzeilen vom Start der Anwendung.

Problem: Module beantworten keinen Request, und der Status ist -5 "restartRequired"

Symptome
  • control/status/code ist auf jedem Modul -5 (restartRequired).

  • hdvisionsystems/lumiscan-cam-driver/system/restart-required ist true.

  • Jede execute-Methode eines Moduls antwortet mit DL_RESOURCE_UNAVAILABLE (ResourceUnavailable bei LumiScan Keryx), und die ready-Signale sind false.

  • Ein laufender Bild-Stream stoppt.

Mögliche Ursachen
  • Die Einstellungen wurden auf dem Data Layer geändert (system/settings, activate-module, deactivate-module). Bis zum nächsten Start läuft die Anwendung mit Einstellungen, die nicht mehr die ihrer Dateien sind.

  • Eine geänderte Datei konnte nicht gespeichert werden: Der Schreibvorgang antwortete mit DL_CREATION_FAILED. Zuvor geänderte Dateien bleiben geändert, die Anwendung erfordert also trotzdem einen Neustart.

Diagnose
  1. Lesen Sie hdvisionsystems/lumiscan-cam-driver/system/restart-required - erwartet: true.

  2. Lesen Sie hdvisionsystems/lumiscan-cam-driver/system/status-text - er nennt die geänderten Dateien.

  3. Lesen Sie das Protokoll - die Meldung steht auf Fehlerstufe.

Lösung
  • Wenn die Einstellungen auf dem Data Layer geändert wurden:

    1. Rufen Sie hdvisionsystems/lumiscan-cam-driver/system/control/restart/execute auf. Ein reset hilft nicht.

    2. Warten Sie, bis system/restart-required wieder gelesen werden kann. Auf ctrlX OS endet die Anwendung, und ctrlX OS startet sie nach etwa fünf Sekunden erneut.

  • Wenn ein Schreibvorgang mit DL_CREATION_FAILED antwortete: Korrigieren Sie die Dateien, und starten Sie die Anwendung dann wie oben neu.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit dem Inhalt von system/status-text und system/settings.

Problem: "No valid license found, please purchase one. If you do have one, please try to restart ctrlX"

Symptome
  • control/status/code ist -4 (missingLicense) mit dem Text No valid license found, please purchase one. If you do have one, please try to restart ctrlX.

  • Auf ctrlX OS beendet sich die Anwendung kurz nach dem Start.

  • Ab v2.2.0 protokolliert die Anwendung eine Warnung und beendet sich, wenn eine Lizenz verloren geht.

Mögliche Ursachen
  • Es ist keine gültige Lizenz installiert, oder nicht genug für die konfigurierten Kameras: Sie benötigen eine Lizenz pro angeschlossener Kamera.

  • Ein Schlüssel der Version 1 ist installiert. Ab v2.0.0 benötigt der Cam Driver die Lizenz SWL-W-XCx-CAMDRIVERxHDVSx-V2NN.

  • Bis einschließlich v2.1.0: Die Lizenzen wurden getrennt installiert. Nur der erste Eintrag Cam Driver V2 wird gelesen.

Diagnose
  1. Lesen Sie das Systemprotokoll von ctrlX OS (siehe Protokolle) - es nennt den Grund, die fehlende Lizenz.

  2. Öffnen Sie die Seite Licenses von ctrlX OS - erwartet: Lizenzen Cam Driver V2 für alle angeschlossenen Kameras. Bis einschließlich v2.1.0: ein Eintrag Cam Driver V2, der alle Kameras abdeckt.

  3. Vergleichen Sie die Zahl der Lizenzen mit der Zahl der angeschlossenen Kameras - erwartet: eine Lizenz pro Kamera.

Lösung
  • Wenn keine oder nicht genug Lizenzen installiert sind: Installieren Sie eine Lizenz SWL-W-XCx-CAMDRIVERxHDVSx-V2NN pro angeschlossener Kamera. Siehe Voraussetzungen.

  • Wenn ein Schlüssel der Version 1 installiert ist: Ersetzen Sie ihn durch eine V2-Lizenz. Schlüssel der Version 1 funktionieren ab v2.0.0 nicht.

  • Wenn die Lizenzen getrennt installiert wurden (v2.1.0 und älter): Installieren Sie alle Lizenzen gemeinsam, sodass die Seite Licenses einen Eintrag Cam Driver V2 zeigt, der alle Kameras abdeckt, oder aktualisieren Sie auf v2.2.0, das auch getrennt installierte Lizenzen unterstützt.

  • Zu anderen Bezugswegen und Lizenzproblemen siehe die FAQ zur Lizenzierung und die Fehlerbehebung Lizenzierung.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit den Protokollzeilen, die die fehlende Lizenz nennen. Für Lizenzen wenden Sie sich an licenses@hdvisionsystems.com.

Kameraverbindung

Problem: Eine physisch angeschlossene Kamera wird nicht erkannt

Symptome

Die Kamera fehlt in den Listen unter /hdvisionsystems/lumiscan-cam-driver/system: found-camera-ip-addresses, found-camera-mac-addresses, found-camera-modules und found-camera-serials.

Mögliche Ursachen
  • Die Kamera ist nicht mit der ctrlX CORE oder dem PC verbunden, oder (ctrlX OS) nicht mit einem unterstützten ctrlX-Port.

  • Die Kamera wird nicht mit Strom versorgt, weder extern noch über PoE.

  • Die IP-Adressen der ctrlX CORE bzw. des PCs und der Kamera sind nicht korrekt konfiguriert: Die Kamera-IP muss im selben lokalen Netzwerk liegen.

  • Es gibt doppelte IP-Adressen im Netzwerk.

Diagnose
  1. Lesen Sie found-camera-serials, found-camera-ip-addresses, found-camera-mac-addresses und found-camera-modules unter /hdvisionsystems/lumiscan-cam-driver/system - erwartet: Die Kamera wird erkannt, ihre IP-Adresse ist korrekt, und die Seriennummer passt zum erwarteten Gerät.

  2. Prüfen Sie das Kabel - erwartet: Die Kamera ist mit der ctrlX CORE oder dem PC verbunden; auf ctrlX OS mit einem unterstützten ctrlX-Port.

  3. Prüfen Sie die Stromversorgung - erwartet: Die Kamera wird versorgt, extern oder über PoE.

  4. Vergleichen Sie IP-Adresse und Subnetz der Kamera mit denen der ctrlX CORE bzw. des PCs - erwartet: Die Kamera liegt im selben lokalen Netzwerk.

  5. Prüfen Sie das Netzwerk auf doppelte IP-Adressen - erwartet: Jedes Gerät hat eine eindeutige IP-Adresse.

Lösung
  • Wenn die Kamera nicht verbunden oder nicht versorgt ist: Verbinden Sie sie mit der ctrlX CORE oder dem PC (auf ctrlX OS mit einem unterstützten ctrlX-Port), und versorgen Sie sie mit Strom. Für eine ctrlX CORE X3 siehe Hardware-Aufbau für ctrlX X3.

  • Wenn die IP-Adresse falsch ist: Setzen Sie sie mit der Funktion force-ip unter hdvisionsystems/lumiscan-cam-driver/system/force-ip/. Sie funktioniert auch, wenn das Subnetz der Kamera nicht zu dem der ctrlX CORE oder des PCs passt, solange die Kamera über dieselbe Netzwerkverbindung erreichbar ist. Siehe Kamera-IP-Adresse einrichten.

    1. Lesen Sie die MAC-Adresse der Kamera aus system/found-camera-mac-addresses (gleiche Position in der Liste wie ihre Seriennummer in system/found-camera-serials).

    2. Setzen Sie gateway, ip, subnet und die MAC-Adresse der Kamera.

    3. Warten Sie, bis ready true ist, setzen Sie request auf true und dann wieder auf false.

    4. Wenn ready wieder true ist, prüfen Sie, ob system/found-camera-ip-addresses die neue Adresse zeigt. Falls nicht, setzen Sie die IP mit dem Programm des Kameraherstellers.

  • Wenn es doppelte IP-Adressen gibt: Geben Sie jedem Gerät eine eindeutige IP-Adresse. Auf einer ctrlX CORE X3 verwendet XF10 192.168.1.1: Weisen Sie diese Adresse weder der Kamera noch dem Computer zu.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit dem Inhalt der vier Listen found-camera-…​ und der Netzwerktopologie (Switch oder direkte Verbindung).

Problem: Die Kamera verbindet sich nicht (Status -10000 "failedToConnectToCamera")

Symptome
  • Nach dem Handshake connect-camera bleibt /hdvisionsystems/lumiscan-cam-driver/<module>/device-info/is-connected false.

  • control/status/code zeigt -10000 (failedToConnectToCamera) nur etwa 100 ms lang, dann wieder 0, während die Kamera weiterhin nicht verbunden ist.

Mögliche Ursachen
  • Die Kamera wird nicht erkannt, siehe Problem: Eine physisch angeschlossene Kamera wird nicht erkannt.

  • Die Kamera wurde abgezogen und wieder angeschlossen.

  • Die Ethernet-Konfiguration, etwa Puffergrößen und Jumbo Frames, passt nicht zu den Kameraspezifikationen.

  • Ein PC am selben Switch greift gleichzeitig auf die Kamera zu. Paralleler Zugriff kann die Kamerakommunikation stören.

  • Mehr als ein Prozess schreibt connect-camera/request, sodass die Anwendung den Request verpasst.

Diagnose
  1. Lesen Sie <module>/device-info/is-connected - erwartet: true nach connect-camera. Beurteilen Sie die Verbindung nicht anhand von control/status/code.

  2. Prüfen Sie, ob die Kamera unter /hdvisionsystems/lumiscan-cam-driver/system erscheint - erwartet: Ihre Seriennummer steht in found-camera-serials.

  3. Lesen Sie vor dem Request <module>/control/connect-camera/ready - erwartet: true. Ist es false, ist die Vorbedingung nicht erfüllt oder es wird keine Kamera gefunden: Prüfen Sie, ob die Kamera-IP im selben lokalen Netzwerk wie die ctrlX CORE oder der PC liegt.

  4. Lesen Sie, nachdem Sie connect-camera/request auf true gesetzt haben, connect-camera/ready - erwartet: false (die Anwendung hat den Request erkannt).

  5. Prüfen Sie, ob ein PC am selben Switch auf die Kamera zugreift - erwartet: Er tut es nicht.

Lösung
  • Wenn die Kamera nicht erkannt wird: Folgen Sie Problem: Eine physisch angeschlossene Kamera wird nicht erkannt.

  • Wenn die Kamera abgezogen und wieder angeschlossen wurde (ab v2.1.0): Führen Sie den Handshake reset aus, der failedToConnectToCamera meldet, bis er erfolgreich ist, und dann connect-camera. connect-camera hat keine execute-Methode: Verwenden Sie den Handshake auf /hdvisionsystems/lumiscan-cam-driver/<module>/control/connect-camera/request. Siehe Verbindungsschritte.

  • Wenn die Verbindung weiterhin fehlschlägt:

    1. Trennen Sie die Kamera für etwa 30 Sekunden von der Stromversorgung und schließen Sie sie wieder an.

    2. Prüfen Sie, ob die Kamera im Data Layer erscheint.

    3. Prüfen Sie die Ethernet-Konfiguration, etwa Puffergrößen und Jumbo Frames, gemäß den Kameraspezifikationen.

  • Wenn ein PC gleichzeitig auf die Kamera zugreift: Beenden Sie diesen Zugriff.

  • Wenn die Anwendung den Request nicht erkennt: Stellen Sie sicher, dass immer nur ein Prozess auf connect-camera/request zugreift und dass Sie dieselbe Data-Layer-Version wie die Kameraanwendung verwenden.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit der Seriennummer der Kamera, dem Wert von device-info/is-connected und den Protokollzeilen des Verbindungsversuchs.

Bildaufnahme und Speichern

Problem: Die Bildaufnahme schlägt fehl oder ist unzuverlässig (Status -10004 "couldNotCaptureImage")

Symptome
  • capture/execute hinterlässt control/status/code bei -10004 (couldNotCaptureImage).

  • Über den Handshake endet ein fehlgeschlagenes Capture bei Status 3, und capture/ready bleibt false, bis ein reset erfolgreich ist.

  • Bilder lassen sich nicht zuverlässig auslösen.

Mögliche Ursachen
  • Die Kamera ist getrennt.

  • Die Kommunikation schlägt wegen schlechter Verbindungsqualität fehl.

  • Die MTU-Größe des Ethernet-Ports (ctrlX OS) oder des Netzwerkadapters (PC) ist zu klein.

  • Eine Netzwerkkomponente unterstützt den erforderlichen Datendurchsatz nicht.

Diagnose
  1. Lesen Sie <module>/device-info/is-connected - erwartet: true.

  2. Prüfen Sie das Kabel - erwartet: ein "Foil Shielded Twisted Pair"-Kabel.

  3. Prüfen Sie die MTU-Größe - erwartet: 8000 oder 9000.

    • ctrlX OS: Settings > Network Interfaces > der verwendete Port > Advanced Settings.

    • PC: die MTU-Größe (Jumbo Frames) des Netzwerkadapters, an dem die Kamera angeschlossen ist.

  4. Verkleinern Sie als schnellen Test die ROI - wird die Bildaufnahme dadurch stabiler, hängt das Problem wahrscheinlich mit der Netzwerkbandbreite zusammen.

Lösung
  • Wenn die Kamera getrennt ist: Verbinden Sie sie erneut. Ein fehlgeschlagenes Capture wird gespeichert: Führen Sie reset und dann connect-camera mit dem Handshake aus.

  • Wenn die Verbindungsqualität schlecht ist: Verwenden Sie ein "Foil Shielded Twisted Pair"-Kabel.

  • Wenn die MTU-Größe zu klein ist: Setzen Sie sie auf 8000 oder 9000. Kann der Port auf ctrlX OS die MTU-Größe nicht ändern, verwenden Sie einen Ethernet-Port, der große MTU-Größen unterstützt. Siehe MTU-Größe ändern.

  • Wenn die Netzwerkbandbreite nicht ausreicht: Stellen Sie sicher, dass alle Netzwerkkomponenten den erforderlichen Datendurchsatz unterstützen. Testen Sie auf einer ctrlX CORE X3 verschiedene Werte für das Packet Delay, bis die Bildaufnahme stabil ist, siehe Kameraeinrichtung abschließen. Kameraparameter können mit der Software des Herstellers, über die Feature-Knoten der Kamera unter /hdvisionsystems/lumiscan-cam-driver/<module>/features oder in einer Feature-Datei angepasst werden, die in cameras[].featureFiles des Moduls aufgeführt ist. Siehe GenICam-Features.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit dem Inhalt von control/status/code und control/status/text, der MTU-Größe und der Netzwerktopologie.

Problem: Ein Schreibvorgang auf execute antwortet mit "DL_TOO_MANY_OPERATIONS" oder "TooManyOperations"

Symptome

Ein Schreibvorgang auf <camera name>/control/<operation>/execute antwortet mit DL_TOO_MANY_OPERATIONS (ctrlX Data Layer) oder TooManyOperations (LumiScan Keryx).

Mögliche Ursachen
  • Die Kamera ist gerade mit einer anderen Operation belegt.

  • Der Bild-Stream startet oder stoppt gerade. Nach dem Stoppen des Streams wird die Kamera erneut verbunden; bis dahin antwortet capture/execute mit DL_TOO_MANY_OPERATIONS.

Diagnose
  1. Lesen Sie control/status/code - 2 (running): Eine andere Operation läuft.

  2. Lesen Sie control/publish/output/stream/active und control/capture/ready - nach dem Stoppen des Streams wird capture/ready true, sobald die Kamera wieder verbunden ist.

Lösung
  • Wenn die Kamera belegt ist: Wiederholen Sie den Aufruf. Ein abgelehnter Schreibvorgang wird nie in eine Warteschlange gestellt; derselbe Schreibvorgang gelingt, sobald die laufende Operation abgeschlossen ist.

  • Wenn der Stream startet oder stoppt: Warten Sie, bis capture/ready true ist. Das dauert bei der von uns getesteten Kamera etwa zwei Sekunden.

DL_RESOURCE_UNAVAILABLE (ResourceUnavailable) ist ein anderes Ergebnis: Die Anwendung wird beendet - Wiederholen hilft nicht -, oder ein Neustart ist erforderlich, siehe Problem: Module beantworten keinen Request, und der Status ist -5 "restartRequired". Siehe execute aufrufen.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit der aufgerufenen Operation und dem Ergebnis, mit dem sie antwortet.

Problem: Ein Schreibvorgang auf execute antwortet mit "DL_INVALID_OPERATION_MODE", oder capture wird immer wieder abgelehnt

Symptome
  • Ein Schreibvorgang auf <camera name>/control/<operation>/execute antwortet mit DL_INVALID_OPERATION_MODE (ctrlX Data Layer) oder InvalidOperationMode (LumiScan Keryx). Das gilt für v2.2.0 und neuer; frühere Versionen meldeten diesen Fall als DL_TOO_MANY_OPERATIONS.

  • capture/execute wird immer wieder abgelehnt, auch nachdem die Kamera einmal aufgenommen hat.

Mögliche Ursachen

Das Signal ready der Operation ist false, die Kamera ist also nicht in einem Zustand, in dem die Operation laufen kann:

  • capture: Die Kamera ist nicht verbunden, ein Capture-Fehler ist gespeichert (nach einem fehlgeschlagenen Capture), oder der Bild-Stream läuft.

  • save: Es ist noch kein Bild verfügbar.

  • load, remove: <camera name>/output/image-files ist leer.

  • trigger: Die Kamera ist nicht verbunden.

Diagnose
  1. Lesen Sie <operation>/ready - false nennt die fehlende Vorbedingung.

  2. Lesen Sie control/status/code und control/status/text - der Statustext enthält noch die Meldung des Fehlers, der sie verursacht hat.

  3. Lesen Sie <camera name>/device-info/is-connected - erwartet: true.

  4. Lesen Sie control/publish/output/stream/active - true: Der Bild-Stream läuft.

  5. Lesen Sie für load und remove <camera name>/output/image-files - erwartet: nicht leer.

Lösung

Wiederholen Sie nicht blind; stellen Sie zuerst die Vorbedingung her:

  • Wenn die Kamera nicht verbunden ist oder ein Capture-Fehler gespeichert ist: Führen Sie reset und dann connect-camera mit dem Handshake aus (reset gibt eine getrennte Kamera zurück). Beide haben keine execute-Methode; ein Programm, das nur execute verwendet, muss sich daher über den Handshake verbinden und einen gespeicherten Fehler darüber beheben.

  • Wenn der Bild-Stream läuft: Stoppen Sie ihn und warten Sie, bis capture/ready true ist, siehe Problem: Capture wird abgelehnt, während der Bild-Stream läuft.

  • Wenn für save kein Bild verfügbar ist: Nehmen Sie zuerst ein Bild auf oder laden Sie eines.

  • Wenn output/image-files leer ist: Führen Sie zuerst list-images aus oder speichern Sie ein Bild.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit den Werten von <operation>/ready, control/status/code und control/status/text.

Problem: Bilder werden nicht gespeichert (Status -10006 "saveImageFailed" oder -10005 "noImageTaken")

Symptome
  • control/status/code ist -10006 (saveImageFailed) oder -10005 (noImageTaken).

  • Save tut nichts, oder im Speicherordner liegt kein Bild.

Mögliche Ursachen
  • noImageTaken: Es wurde noch kein Bild aufgenommen.

  • saveImageFailed: Der Speicher kann nicht beschrieben werden - ip, username oder password in den Speichereinstellungen sind falsch, die IP ist von der ctrlX CORE oder dem PC aus nicht erreichbar, oder der freigegebene Ordner hat nicht genügend freien Speicherplatz.

  • Der Speicher ist nicht oder falsch konfiguriert: Ohne einen Block storage im Abschnitt system von lumiscan-cam-driver.json tut Save nichts.

  • (ctrlX OS) Das USB-Speichergerät oder die SD-Karte ist nicht eingebunden oder verwendet weder FAT32 noch EXT4.

Diagnose
  1. Lesen Sie output/package-identifier - ist er null, wurde kein Bild aufgenommen, und save/ready ist false.

  2. Prüfen Sie den Block storage im Abschnitt system von lumiscan-cam-driver.json - erwartet: ein type (Internal oder Samba) und seine Parameter. Siehe Speichereinstellungen.

  3. Bei Samba: Prüfen Sie, ob ip, username und password korrekt sind, ob die IP von der ctrlX CORE oder dem PC aus erreichbar ist und ob Sie mit dem konfigurierten Benutzerkonto auf den Ordner zugreifen können - erwartet: Der Zugriff funktioniert, und der Ordner hat freien Speicherplatz.

  4. Bei einem USB-Speichergerät oder einer SD-Karte (ctrlX OS): Prüfen Sie unter Settings > Storage Devices, ob es eingebunden ist - erwartet: Sein Pfad (zum Beispiel /media/sdb1) ist der Anfang von rootPath.

  5. Lesen Sie das Protokoll - es zeigt Hinweise zu fehlerhaften Einstellungen.

Lösung
  • Wenn kein Bild aufgenommen wurde (noImageTaken): Nehmen Sie vor dem Speichern ein Bild auf.

  • Wenn der Speicher nicht beschrieben werden kann (saveImageFailed): Korrigieren Sie ip, username und password, machen Sie die IP erreichbar, oder schaffen Sie freien Speicherplatz im freigegebenen Ordner.

  • Wenn der Speicher nicht oder falsch konfiguriert ist:

    1. Fügen Sie den Block storage hinzu oder korrigieren Sie ihn, siehe Bilddateien speichern.

    2. Starten Sie die Anwendung neu.

    3. Rufen Sie Connect Camera, Capture und Save auf, und prüfen Sie, ob ein Bild im Speicherordner liegt.

  • Wenn das USB-Speichergerät oder die SD-Karte nicht eingebunden ist (ctrlX OS): Binden Sie es unter Settings > Storage Devices mit For data exchange ein, und beginnen Sie rootPath mit dem dort angezeigten Pfad.

Ein fehlgeschlagenes save bleibt gespeichert, bis ein reset erfolgreich ist; ein save, bevor etwas aufgenommen wurde (-10005), nicht.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit dem Block storage (das Passwort wird auf system/settings als "*" angezeigt) und den Protokollzeilen des fehlgeschlagenen Speicherns.

Problem: Bilder entsprechen nicht den Erwartungen

Symptome

Die aufgenommenen Bilder sehen nicht so aus, wie Sie es nach den Kameraeinstellungen erwarten.

Mögliche Ursachen
  • Die Kameraeinstellungen werden nicht korrekt gespeichert oder angewendet.

  • Ein Wert wurde auf einen Feature-Knoten unter features geschrieben. Ein solcher Wert geht verloren, wenn die Kamera erneut verbunden wird.

  • Die Belichtungszeit auf input/exposure-time und das Inter-Packet-Delay werden nicht angewendet, solange der Bild-Stream läuft.

Diagnose
  1. Speichern Sie ein Bild mit /hdvisionsystems/lumiscan-cam-driver/<module>/control/save/execute oder dem Handshake save (control/save/request), und sehen Sie es sich an - erwartet: Es passt zu den Einstellungen.

  2. Prüfen Sie, wo die Kamera-Features gesetzt werden - erwartet: in einer Feature-Datei, die in cameras[].featureFiles des Moduls aufgeführt ist und bei jedem Verbinden der Kamera angewendet wird.

  3. Lesen Sie control/publish/output/stream/active - true: Der Stream läuft, und die Belichtungszeit wird nicht angewendet.

Lösung
  • Wenn die Einstellungen nicht gespeichert oder angewendet werden: Wenn die Kamera es unterstützt, exportieren Sie die Kamerakonfiguration, zum Beispiel im GenICam-Format, und importieren Sie sie in LumiScan, um die Einstellungen konsistent zu halten.

  • Wenn ein auf einen Feature-Knoten geschriebener Wert verloren ging: Tragen Sie das Feature in eine Feature-Datei ein, die in cameras[].featureFiles des Moduls aufgeführt ist. Siehe GenICam-Features.

  • Wenn der Bild-Stream läuft: Stoppen Sie den Stream, ändern Sie die Kamera-Features, und starten Sie den Stream dann erneut.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit einem gespeicherten Bild, der Kamerakonfiguration und den Feature-Dateien.

Bild-Stream (experimentell)

Problem: Capture wird abgelehnt, während der Bild-Stream läuft

Symptome
  • control/capture/execute antwortet mit DL_INVALID_OPERATION_MODE, solange der Stream läuft, und mit DL_TOO_MANY_OPERATIONS, während der Stream startet oder stoppt.

  • Ein Capture-Request über den Handshake endet mit Status -3 (invalidInput) und dem Text capture refused: the image stream (experimental) is active.

  • control/capture/ready ist false.

Mögliche Ursachen
  • Der experimentelle Bild-Stream läuft. Der Stream und capture nutzen die Kamera auf unterschiedliche Weise und laufen daher nie gleichzeitig.

  • Der Stream wurde gerade gestoppt, und die Kamera wird erneut verbunden.

Diagnose
  1. Lesen Sie control/publish/output/stream/active - true: Der Stream läuft.

  2. Lesen Sie nach dem Stoppen des Streams control/capture/ready - erwartet: true nach etwa zwei Sekunden.

Lösung
  • Wenn Sie ein Capture benötigen: Stoppen Sie den Stream. Ein reset ist nicht nötig: Die Ablehnung speichert keinen Fehler.

    1. Schreiben Sie false auf control/publish/input/enable.

    2. Rufen Sie control/publish/execute auf.

    3. Warten Sie, bis control/capture/ready wieder true ist. Das dauert bei der von uns getesteten Kamera etwa zwei Sekunden, weil die Kamera nach dem Stream erneut verbunden wird.

  • Wenn Sie während des Streamings einzelne Bilder benötigen: Nehmen Sie sie aus control/publish/output/stream/frame, statt den Stream zu stoppen, oder wenden Sie keep-latest-output an und lesen Sie output/image, wenn sich output/package-identifier ändert.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit den Werten von control/publish/output/stream/active und control/capture/ready.

Problem: Der Bild-Stream liefert keine Bilder oder weniger als erwartet

Symptome

Ihr Programm erhält auf control/publish/output/stream/frame keine Bilder oder weniger als erwartet. Ein verworfenes Bild erscheint als Lücke in den Frame-Nummern (sequence).

Mögliche Ursachen
  • Der Stream läuft nicht: Die Eingaben wurden geschrieben, aber control/publish/execute wurde nicht aufgerufen; der Stream konnte nicht starten; oder der Cam Driver wurde neu gestartet - nach einem Start ist der Stream aus.

  • frames bleibt bei 0: Der Cam Driver triggert die Kamera nicht von selbst.

  • frames wächst langsamer als die Zahl der gesendeten Trigger: Die Kamera ignoriert Trigger, die schneller kommen, als sie Bilder aufnehmen kann.

  • lost-frames oder incomplete-frames wachsen: Bilder gingen im Netzwerk verloren.

  • published-frames entspricht frames, aber Ihr Programm erhält weniger: Ihr Abonnent fällt weit zurück, und der Data Layer verwirft Bilder.

Diagnose
  1. Lesen Sie control/publish/output/stream/active - erwartet: true.

  2. Vergleichen Sie die Zähler unter /hdvisionsystems/lumiscan-cam-driver/<module>/control/publish/output/stream/statistics: frames, lost-frames, incomplete-frames und published-frames - erwartet: frames wächst mit jedem Trigger, lost-frames und incomplete-frames bleiben bei 0, und published-frames entspricht frames.

  3. Vergleichen Sie die sequence-Nummern, die Ihr Programm erhält - erwartet: keine Lücken.

Lösung
  • Wenn der Stream nicht läuft: Verbinden Sie die Kamera, setzen Sie control/publish/input/enable auf true und rufen Sie control/publish/execute auf. Tun Sie das nach jedem Start des Cam Driver. Bleibt control/publish/output/stream/active false, steht der Grund im Protokoll; der Start wird erst wieder versucht, wenn control/publish/execute erneut aufgerufen wird. Siehe Einen Stream betreiben.

  • Wenn frames bei 0 bleibt: Triggern Sie die Kamera per Hardware oder mit control/trigger/execute, oder schalten Sie ihren Trigger-Modus aus. Siehe Die Kamera triggern.

  • Wenn frames langsamer wächst als die Trigger: Triggern Sie seltener, verkürzen Sie die Belichtung, oder setzen Sie TriggerOverlap der Kamera in einer Feature-Datei auf einen Overlap, den sie unterstützt, etwa PreviousFrame. Siehe Für die höchste Bildrate: TriggerOverlap.

  • Wenn lost-frames oder incomplete-frames wachsen: Prüfen Sie das Netzwerk wie in Problem: Die Bildaufnahme schlägt fehl oder ist unzuverlässig (Status -10004 "couldNotCaptureImage") beschrieben.

  • Wenn Ihr Programm weniger Bilder erhält als published-frames: Stellen Sie sicher, dass Ihr Abonnent jedes Bild schnell verarbeitet.

Wenn das Problem weiterhin besteht

Senden Sie die unter Informationen für den Support genannten Informationen an den Support, zusammen mit den Werten der Zähler unter control/publish/output/stream/statistics und der Angabe, wie die Kamera getriggert wird.

Informationen für den Support

Besteht ein Problem weiterhin, senden Sie Folgendes an den Customer Success von HD Vision Systems unter customer.success@hdvisionsystems.com oder +49 6221 6721905. Für Lizenzen wenden Sie sich an licenses@hdvisionsystems.com.

  • Die Version des LumiScan Cam Driver.

  • Die Plattform: ctrlX OS und seine Version auf einer ctrlX CORE oder einem ctrlX IPC, oder einen PC mit Windows 11 oder Ubuntu 24.04 und LumiScan Keryx.

  • Das Protokoll: auf ctrlX OS das Systemprotokoll von ctrlX OS (Logbuch der ctrlX-Weboberfläche oder journalctl), auf einem PC die Konsolenausgabe des Cam Driver.

  • Datum und Uhrzeit, zu denen der Fehler aufgetreten ist.

  • Den Data-Layer-Status des betroffenen Moduls: control/status/code, control/status/text, device-info/is-connected und das Ergebnis, mit dem ein execute-Aufruf antwortete.

  • Die Kamera: Hersteller, Modell und Seriennummer (system/found-camera-serials).

  • Die Konfiguration: lumiscan-cam-driver.json, die Kamerakonfigurationsdateien und Feature-Dateien, oder den Inhalt von hdvisionsystems/lumiscan-cam-driver/system/settings, der jedes Passwort als "*" zeigt.