Problembehandlung
Bei der grundsätzlichen Kamerakommunikation und -parametrierung sowie der Erstellung der Initialization Commands sind hauptsächlich drei Komponenten relevant:
- der Inhalt der GenApi Gerätebeschreibungsdatei
- das Kameraverhalten
- und das GevImageAcquisition-Objekt Verhalten.
GenApi Gerätebeschreibungsdatei
Die GigE Vision Spezifikation beinhaltet das GenApi Module der GenICam-Spezifikation, in der die von einer Kamera unterstützten Funktionen beschrieben sind. Diese Beschreibung erfolgt in Form einer XML-Gerätebeschreibungsdatei, die konform zur Spezifikation erstellt sein muss. Die von einer Kamera bereitstellte GenApi-Beschreibung wird nach dem Empfang geprüft. Falls nicht konforme Stellen enthalten sind, werden diese als Warnung oder Fehler gemeldet.
- Eine Warnung erfolgt z. B. wenn sich nicht definierte Register im reservierten Bootstrap-Bereich befinden. Diese Register werden nachfolgend ignoriert, was in der Regel aber nicht zu Einschränkungen im Betrieb führt. Im Einzelfall ist zu prüfen, ob die gemeldeten Register benötigt werden.
- Ein Fehler wird z. B. gemeldet, wenn die beschriebenen Zugriffsrechte nicht mit dem Kameraverhalten übereinstimmen. Also wenn die Kamera beim Auslesen von lesbar markierten oder beim Schreiben von schreibbar markierten Registern einen Fehler zurückgibt.
- Falls die GenApi Beschreibung komplett nicht konforme Stellen beinhaltet, kann es in seltenen Fällen dazu kommen, dass die Kamera gar nicht betrieben werden kann.
Kameraverhalten
Das Kameraverhalten kann einen Einfluss haben, wenn sich wie zuvor schon beschrieben, das Verhalten von der GenApi Beschreibung unterscheidet und wenn Register untereinander Abhängigkeiten enthalten oder sich gegenseitig beeinflussen.
- Register können z. B. durch andere Register gesperrt werden, so dass diese zuerst aktiviert oder deaktiviert werden müssen.
- Registerwerte können durch andere Register oder Formeln beeinflusst werden, die z. B. den Maximalwert einschränken.
- Die Kamera kann Registerwerte verändern, wenn andere Register geschrieben werden. Z. B. kann es vorkommen, dass die Kamera automatisch die ROI zurücksetzt, wenn das Pixelformat geschrieben wird.
Herstellerdokumentation beachten Gleichen Sie bei Problemen das Kameraverhalten genau mit der Herstellerdokumentation ab. Es kann z. B. vorkommen, dass ein Beschreiben von einzelnen ReadWrite Registern von der Kamera fälschlicherweise nicht akzeptiert wird. |
GevImageAcquisition-Objekt Verhalten
Das GevImageAcquisition-Objekt ist als Teil des TC3 GigE Vision Connector Produkt GigE Vision zertifiziert und verhält sich daher standardkonform. Die Verkettung von Kommandos, sofern von der Kamera unterstützt, und das Iterieren von Selektoren ist in den Einstellungen standardmäßig aktiv. Dadurch werden bei der Kommunikation mit der Kamera alle möglichen Registerkombinationen gelesen oder geschrieben. Dies kann aufgrund der Menge von Kommandos oder des Timings vereinzelt auch zu Problemen führen. Zur Abhilfe können Sie EnableConcatenatedCommands im Image Acquisition Module oder das Iterate Selectors automatically in den Einstellungen deaktivieren.
Meldungen
Die zuvor beschriebenen Komponenten und deren Verhalten haben unterschiedliche Auswirkungen auf die Erstellung der Initialization Commands bzw. auf die möglichen Meldungen.
Warnungen
Warnungen werden angezeigt, wenn sich die zurückgelesenen Werte von den zuvor geschriebenen Werten unterscheiden. Die Unterschiede können durch ein abweichendes Kameraverhalten oder Abhängigkeiten zwischen Registern entstehen. Das bedeutet aber nicht, dass die Kamera mit den Initialization Commands nicht funktioniert. Daher haben Warnungen auch keinen Einfluss auf die Erstellung mit Create anyway. Im Anschluss sollte getestet werden, ob die gemeldeten Register den richtigen Wert haben und die Kamera sich wie gewünscht verhält.
Ein Beispiel dafür, wann Warnmeldungen auftreten können, ist das Setzen einer ROI. Abhängig von den aktuellen Werten in der Kamera kommt es zu der Warnung, da die Offsets entsprechend der GenApi-Reihenfolge zuerst geschrieben werden. Wenn ein Offset größer 0 geschrieben werden soll, muss die Breite oder Höhe entsprechend kleiner dem Maximalwert sein. In diesem Fall setzt die Kamera dann alle ROI Werte zurück, wodurch der Unterschied entsteht. In diesem Fall kann als Abhilfe die Reihenfolge der ROI-Register in der Konfigurationsliste geändert werden, so dass die Breite und Höhe vor den beiden Offsets geschrieben werden. Falls in Sonderfällen erforderlich kann ein Register auch kopiert, in der Reihenfolge verschoben und so mehrfach geschrieben werden.
Fehler
Fehler werden gemeldet, wenn einzelne Registerwerte nicht geschrieben werden konnten. Dies kann, wie schon zuvor beschrieben, verschiedene Ursachen wie falsche oder zum Zeitpunkt des Schreibens geänderte Grenzwerte, Adressen, Schreibrechte oder Formelberechnungen haben. Die betroffenen Register werden bei der Erstellung mit Create anyway weggelassen und in der Konfigurationsliste abgehakt. Im Anschluss sollte getestet werden, ob die weggelassenen Register einen Einfluss auf die Kamerafunktionalität haben.
Falls es sich z. B., wie auf dem Screenshot zu sehen ist, nur um den Modelnamen handelt oder das Register nicht geändert wurde und einen passenden Default-Wert hat, kann die Kamera trotz dieser Fehlermeldung ohne Einschränkungen verwendet werden.
Fatale Fehler
Fatale Fehler treten nur auf, wenn die Kamera innerhalb einer gewissen Zeit nicht antwortet. Dann wird der Prozess abgebrochen und es erscheint eine der folgenden Meldungen. In diesen Fällen muss das entsprechende Timeout angepasst werden.
Timeout
Force IP- oder GVCP-Timeout
Im Zuge des Schreibens der Initialization Commands wird auch der Force IP-Befehl gesendet, sofern dieser konfiguriert ist. Wenn die entsprechende Kamera zum Setzen der IP-Einstellungen bei diesem Befehl sehr lange braucht, kann es zu folgendem Timeout-Fehler kommen:
Persistente IP-Adresse Wenn kein Force IP verwendet wird, ist es empfehlenswert, eine persistente IP-Adresse einzustellen. |
In dem Fall kann das Force IP in der Konfigurationsliste deaktiviert werden. Alternativ dazu oder bei einem GVCP-Timeout kann in den TcCOM-Parametern vom GVCP Module das TransmissionTimeout
und/oder die MaxTimeouts
vergrößert werden. Beachten Sie, dass der ADS Communication Timeout
im Einstellungsfenster immer mindestens dem Produkt der beiden vorhergehenden Parameter entsprechen sollte.
ADS Timeout
Bei einem ADS Timeout vergrößern Sie den Parameter ADS Communication Timeout
im Einstellungsfenster.