FB_BACnet_GetDiagInfo

Funktionsbaustein für den Zugriff auf die BACnet Diagnose über ADS. Der ADS Zugriff erfolgt, im Gegensatz zu Read-/Write-Property, auf den BACnet Adapter. Der BACnet Adapter wird durch die globalen Variablen der PLC Library instanziiert und ist mit den BACnet Adapter Prozessdaten im TwinCAT System Manager verknüpft. Diagnose Daten eines entfernten BACnet Server (remote) können über dessen remote AMS NetID abgefragt werden.

FB_BACnet_GetDiagInfo 1:

Anwendung

Die Bausteininstanz wird im SPS Programm angelegt und zyklisch aufgerufen. Der Eingang sNetId muss mit der entsprechenden AMS NetID des BACnet Adapters belegt werden. Die AMS NetID kann über die globale BACnet Adapter Instanz abgefragt werden.

FB_BACnet_GetDiagInfo 2:

Die AMS NetID entspricht nicht der lokalen AMS NetID und muss immer angegeben werden - keine Verwendung von Leerstrings möglich!

Die aktuelle AMS NetID wird vom zugehörigen FB_BACnet_Adapter ausgegeben:

FB_BACnet_GetDiagInfo 3:
Bild-1: FB_BACnet_AdaptersAmsNetId gibt die lokale AMS NetId des BACnet Adapters aus

Zudem kann die AMS NetId im TwinCAT System Manager angezeigt werden (siehe Bild-2). Der AMS Port des BACnet Adapters ist 0xFFFF (65535).

FB_BACnet_GetDiagInfo 4:
Bild-2: AMS NetId des BACnet Adapter

VAR_INPUT

sNetId    : T_AmsNetId;
bExecute  : BOOL;
tTimeout  : TIME:=BACnet_ADSTimeOut;

 

sNetId: AMS NetId des BACnet Adapter.

bExecute: Steigende Flanke am Eingang startet den Lesevorgang.

tTimeout: Optionaler Eingang, Überwachungszeit für den ADS Zugriff (Default: siehe BACnet_ADSTimeOut).

 

VAR_OUPUT

bBusy     : BOOL;
bError    : BOOL;
nErrID    : UDINT;
stInfo    : ST_BACnet_Diagnosis;

 

bBusy: Der Baustein ist beschäftigt.

bError: Fehler während der Abarbeitung.

nErrID: ADS Fehlercode.

stInfo: Struktur mit Diagnose-Informationen zu BACnet.

 

Beispiel

FB_BACnet_GetDiagInfo 5:
Bild-3: Beispiel für das zyklische Lesen der Diagnose-Informationen.
FB_BACnet_GetDiagInfo 6:

Die Instanz fbBACnet_Adapter ist eine globale Variable der PLC Library vom Typ FB_BACnet_Adapter und sollte nicht mehrfach instanziiert werden.