FB_BACnet_ObjectListProperty

FB_BACnet_ObjectListProperty 1:

Anwendung

Mit Hilfe des Bausteins kann die Property Object_List eines beliebigen BACnet Device Objekts (lokal oder remote) ausgelesen werden. Unter Beispiel wird eine mögliche Beschaltung gezeigt.

Mit Hilfe eines Objekt-Typ Filters kann die Ausgabe stObjIDList eingeschränkt werden.

Die Bausteininstanz wird im SPS Programm angelegt und zyklisch aufgerufen. Der Ein-/Ausgang stAdsConn muss mit dem Ausgang stAdsConn des entsprechenden Device-Bausteins (FB_BACnet_Device bzw. FB_BACnet_RemoteDevice) verbunden werden.

FB_BACnet_ObjectListProperty 2:

Für die Pufferung der ADS Daten wird der ADS Puffer aus den globalen Variablen verwendet (siehe ST_BACnet_GlobalAdsBuffer).

FB_BACnet_ObjectListProperty 3:
Bild-1: Online Ansicht der Property Object_List

VAR_INPUT

bAutoGet     : BOOL:=TRUE;
bGet         : BOOL;
bTypeFilter  : BOOL;
eObjType     : E_BACnetObjectType;

 

tObjectID: Legt das Objekt fest (Object_Identifier: Objekt Type und Objekt Instanz) auf das zugegriffen werden soll.

bAutoGet: TRUE = Lese die Property automatisch aus, wenn die ADS Verbindung oder der Object_Identifier sich geändert haben. Eine ADS Verbindungsänderung liegt vor, wenn die Verbindung nach einem Unterbruch wiederhergestellt oder die AMS NetID bzw. Port geändert wurde. Ein automatisches Auslesen geschieht nicht zyklisch und auch nicht bei Änderung der Property selbst!

bTypeFilter: TRUE = Ausgabe stObjIDList wird auf einen BACnet Objekt Type beschränkt; FALSE = Ausgabe sämtlicher BACnet Objekte des BACnet Servers (oder Client).

eObjType: Filter des auszugebenden BACnet Objekt Typs. Wenn bTypeFitler = FALSE, wird der Eingang ignoriert.

VAR_OUPUT

bDone        : BOOL;
bBusy        : BOOL;
bError       : BOOL;
nErrorId     : UINT;
stObjIDList  : ST_BACnet_ObjectIdentifierList;

 

bDone: Lesen der Daten erfolgreich beendet. bDone bleibt so lange gesetzt bis bGet und bAutoGet zurückgesetzt sind oder ein erneutes Auslesen beginnt. Wurde bGet und bAutoGet zurück gesetzt bevor bDone aktiv ist, dann wird bDone für einen Zyklus gesetzt.

bBusy: Der Baustein ist beschäftigt.

bError: Fehler während der Abarbeitung.

nErrorId: Fehlercode, siehe BACnet_Globals für eine Übersicht.

stObjIDList: Struktur mit der Anzahl und Liste der gelesenen BACnet Objekt IDs (Objekt Type und Objekt Instanz).

 

VAR_IN_OUT

stAdsConn    : ST_BACnet_AdsConnection;

 

stAdsConn: Verknüpfung mit dem Ausgang stAdsConn des entsprechenden Device-Bausteins.

 

Beispiel

FB_BACnet_ObjectListProperty 4:
Bild-2: Beispiel für die Verwendung. Zyklisches Lesen der Property Object_List eines BACnet Servers (aus dem BACnet Device Objekt).