Lesen/Schreiben eines Registers
Alle Kamera-Parameter die über den Konfigurationsassistanten im Config Mode gelesen bzw. geschrieben werden können, können auch aus der SPS über die Funktionsbausteine FB_VN_ReadRegister_UDINT und FB_VN_ReadRegister_REAL gelesen bzw. über FB_VN_WriteRegister_UDINT und FB_VN_WriteRegister_REAL geschrieben werden. Welcher Baustein benötigt wird, hängt vom Datentyp des Parameters ab und kann in der Property-Auflistung am Register Type abgelesen werden. In diesem Beispiel wird die Belichtungszeit geschrieben und gelesen, wobei es sich um eine Ganzzahl handelt.
fbReadValue : FB_VN_ReadRegister_UDINT;
fbWriteValue : FB_VN_WriteRegister_UDINT;
Beide Bausteine benötigen die Adresse des Parameters und eine Angabe zur Byte-Reihenfolge (Endianness). Der Write-Baustein benötigt zusätzlich noch den Parameterwert, der an die Kamera geschrieben werden soll. Da der unter Value angezeigte oder eingegebene Wert nicht direkt mit dem übereinstimmen muss wie ihn die Kamera intern verarbeitet, z. B. bei Enums oder anderen Byte-Reihenfolgen, kann dieser unter dem Register Value ausgelesen werden.
Diese Informationen können aus dem Konfigurationsassistenten ausgelesen werden:
Hinweis | |
Kameraspezifische Parameter Die hier abgebildeten Parameternamen, Properties und Werte sind Hersteller- bzw. Kamera- und Firmware-spezifisch und können daher abweichen. |
Variablen
bTriggerReadValue : BOOL;
nReadValue : UDINT;
fbReadValue : FB_VN_ReadRegister_UDINT;
nReturnCodeRead : UDINT;
bTriggerWriteValue : BOOL;
nWriteValue : UDINT := 5000;
fbWriteValue : FB_VN_WriteRegister_UDINT;
nReturnCodeWrite : UDINT;
Code
fbReadValue(
nAddress := 16#20004BFC, // Check the Address of the Camera Parameter
nEndian := 1, // 0 = Big, 1 = Little
bRead := bTriggerReadValue,
nTimeout := T#5S,
nValue => nReadValue);
fbWriteValue(
nAddress := 16#20004BFC, // Check the Address of the Camera Parameter
nValue := nWriteValue, // Check the right Input Format
nEndian := 1, // 0 = Big, 1 = Little
bWrite := bTriggerWriteValue,
nTimeout := T#5S);
Bedingungen zum Lesen und Schreiben von Parametern Parameter können generell nur bei geöffneter Kameraverbindung ( |
Beide Bausteine müssen mit dem Image Provider der Kamera initialisiert werden: