FB_BACnet_AnalogInput_RAW
Anwendung
Mit Hilfe des Funktionsbausteins FB_BACnet_AnalogInput_RAW kann lesend und schreibend auf ein BACnet-Objekt vom Typ AnalogInput zugegriffen werden.
Im Unterschied zur Standard- bzw. _EX-Variante des Bausteins, wird der Rohwert und der Zustand der Property Reliablitity durch Funktionsbaustein-Eingänge bereitgestellt und nicht durch die IO-Hardware direkt. So kann z.B. der Zustand eines Analogwerts aus einem Sub-Bussystems in SPS-Code auf ein BACnet-Objekt abgebildet werden (Signalumsetzung von Sub-Bussystemen oder virtuellen Datenpunkten nach BACnet, siehe Beispiel).
VAR_INPUT
nRawIn : INT;
bNoSensor : BOOL;
bOverRange : BOOL;
bUnderRange : BOOL;
bOpenLoop : BOOL;
bShortedLoop : BOOL;
bCommFailure : BOOL;
bOtherFault : BOOL;
nRawIn: Rohwerteingang des Objekts im Wertebereich -32768...32767. Der Eingang wird mit dem Prozessdatum "RawIoAnalogSignedValue" des BACnet-Objekts verknüpft. Der Wert aus nRawIn wird mit der Property Resolution zum dem Wert der Property Present_Value verrechnet (vorausgesetzt der Objektzustand ist nicht out_of_service).
bNoSensor, bOverRange, bUnderRange, bOpenLoop, bShortedLoop, bCommFailure, bOtherFault: TRUE am Eingang setzt den entsprechenden Zustand der Property Reliability. Die Priorität fällt mit der Reihenfolge der Eingänge (bNoSensor höchste und bOtherFault niedrigste Priorität). Siehe BACnet-Spezifikation DIN EN ISO 16484-5 zum BACnet-Objekt AnalogInput und Property Reliability.
VAR_OUPUT
bReady : BOOL;
fPresentValue : REAL;
bOverridden : BOOL;
bOutOfService : BOOL;
bFault : BOOL;
bInAlarm : BOOL;
bAckedTrans_ToOffNormal : BOOL;
bAckedTrans_ToFault : BOOL;
bAckedTrans_ToNormal : BOOL;
bError : BOOL;
nErrorId : UINT;
bReady: Meldung der allgemeinen Bereitschaft. Ist dieser Ausgang gesetzt, so sind die übrigen Status-Ausgänge gültig (PresentValue, Overridden ...). Ist der Ausgang FALSE, dann meldet der zugehörige Funktionsbaustein FB_BACnet_Device nicht "Operational" oder die Baustein-Instanz wurde im TwinCAT System Manager nicht richtig verknüpft.
fPresentValue: Aktueller Wert des BACnet-Objekts (siehe auch BACnet-Spezifikation DIN EN ISO 16484-5 zum BACnet-Objekt AnalogInput und Property Present_Value).
bOverride, bOutOfService, bFault, bInAlarm: Siehe BACnet-Spezifikation DIN EN ISO 16484-5 zum BACnet-Objekt AnalogInput und Property Status_Flags.
bOverRange, bUnderRange, bNoSensor, bOpenLoop, bShortedLoop, bOtherFault: Siehe BACnet-Spezifikation DIN EN ISO 16484-5 zum BACnet-Objekt AnalogInput und Property Reliability.
eEventState: Siehe BACnet-Spezifikation DIN EN ISO 16484-5 zum BACnet-Objekt AnalogInput und Property Event_State.
bAckedTrans_ToOffNormal, bAckedTrans_ToFault, bAckedTrans_ToNormal: Flags der Property Acked_Transitions (siehe auch BACnet-Spezifikation DIN EN ISO 16484-5 zum BACnet-Objekt AnalogInput und Property Acked_Transitions).
bError: Ein Fehler steht an.
nErrorId: siehe globale Konstanten BACnet_Globals.
VAR_IN_OUT
Device : FB_BACnet_Device;
Device: Angabe der Instanz des lokalen, zugehörigen BACnet-Server Bausteins. Pro BACnet-Adapter ist ein BACnet-Server möglich. Siehe FB_BACnet_Adapter und FB_BACnet_Device für weitere Informationen.
Beispiel
Im folgenden Beispiel wird die Umsetzung eines ganzzahligen Werts aus EIB in die Property Present_Value eines AnalogInput-Objekts gezeigt:
Dieses Beispiel setzt die Bibliothek "TcEIB.lib" voraus. Siehe Dokumentation zur Klemme KL6301 für weitere Informationen zu EIB.