Beispiel FB_BACnetRM_ReadProperty

Dieses Beispiel zeigt, wie der Funktionsbaustein FB_BACnetRM_ReadProperty verwendet wird, um den Wert der Eigenschaft high_limit vom Analog-Input-Objekt, Instanznummer 1 in der Peer-Geräteinstanznummer 42 zu lesen. Bitte beachten Sie, dass das von iObject referenzierte Objekt zyklisch aufgerufen werden muss.

VAR
    fbClient : FB_BACnet_Client := (nDeviceInstance := 2,tReadCycleTime:=T#10S,nMaxParallelRequests:=255);
    fbDevice : FB_BACnetRM_Device := (Client:=fbClient);
    fbAI : FB_BACnetRM_AI := (Client:=fbClient,nObjectInstance:=1);

    fbRead : FB_BACnetRM_ReadProperty := (Client := fbClient);
    bReadHighLimit : BOOL;
    fHighLimit : REAL;
END_VAR
------------------------------------------------------------------
fbClient();
fbDevice();
fbAI();

// Read HighLimit using FB_BACnetRM_ReadProperty
fbRead.bExecute := bReadHighLimit;
IF fbRead.bExecute THEN
    bReadHighLimit := FALSE;
    fbRead.pData:= ADR( fHighLimit );
    fbRead.nData:= SIZEOF( fHighLimit );
    fbRead.ePropID:= E_BACnet_PropertyIdentifier.PropHighLimit;
    fbRead.iObject := fbAI;
END_IF
fbRead();