ClientReadProperty_ManyOutputs

ClientReadProperty_ManyOutputs (FB)

FUNCTION_BLOCK ClientReadProperty_ManyOutputs

Kurzbeschreibung

Aktualisierung von Eigenschaften von BACNET-Objekten ( lesender Zugriff ) Typische Anwendung: Abfrage eines Temperaturistwerts via BACNET

Darstellung

Schnittstellen

Eingänge

Name
Datentyp
Wertebereich
Initialwert
Funktion

xEn

BOOL

TRUE

Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )

itfServer

BACnet.IBACnetServer

Interface-Variable für die Referenzierung des Servers

xUpdateActual

BOOL

FALSE

Aktualisierung der Istwerte ( bei jeder ansteigenden Flanke )

xResError

BOOL

FALSE

Rücksetzung des Fehlerausgänge ‘eErrorCodeCom’ und ‘eRepyErrorCode.XXX’ ( bei jeder ansteigenden Flanke )

Ausgänge

Name
Datentyp
Wertebereich
Initialwert
Funktion

dwDeviceID_Fb

DWORD

0

Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 ) - Rückmeldung

eObjectType_Fb

BACnet.CmpBACnet.IEC_BACnet_Object_Type

Typ des Objekts - Rückmeldung

dwObjectInstance_Fb

DWORD

0

Nummer des Objekts ( Bereich: 0 - 4194303 ) - Rückmeldung

ePropertyType_Fb

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID

Typ der Eigenschaft - Rückmeldung

eActPropertyDataType

BACnet.CmpBACnet.IEC_BACNET_DATA_TYPE

BACNET - Datentyp der Eigenschaft

sValueOutput

STRING

‘’

Anzeige des Ausgangs für den Istwert der Eigenschaft

xValidValue

BOOL

FALSE

Status der Gültigkeit des Istwerts einer Eigenschaft ( TRUE = Istwert gültig )

rValue

REAL

Istwert der Eigenschaft im Format REAL ( Gleitkommazahl gemaess IEEE754 - 32 Bit )

xValue

REAL

Istwert der Eigenschaft im Format BOOL

sValue

STRING

Istwert der Eigenschaft im Format STRING ( Zeichenkette )

diValue

DINT

Istwert der Eigenschaft im Format DINT ( Ganzzahl mit Vorzeichen )

udiValue

UDINT

Istwert der Eigenschaft im Format UDINT ( Ganzzahl ohne Vorzeichen )

byValue

BYTE

Istwert der Eigenschaft im Format BYTE ( Ganzzahl 0 - 255 )

lrValue

LREAL

Istwert der Eigenschaft im Format LREAL ( Gleitkommazahl gemaess IEEE754 - 64 Bit )

stValue

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_CONTENTS

Istwert der Eigenschaft im Format IEC_BACNET_PROPERTY_CONTENTS ( Direktzugriff auf die Schnittstelle )

xRegToServer

BOOL

FALSE

Status der Registrierung am BACnet-Server ( TRUE = erfolgreiche Registrierung )

xConfigObject

BOOL

FALSE

Status der Konfiguration des Objekts ( TRUE = erfolgreiche Konfiguration )

eState

BACnet.CmpBACnet.IEC_BACNET_STATUS

Status der Kommunikation

eErrorCodeCom

BACnet.CmpBACnet.IEC_BACNET_STATUS

Aktuellster Kommunikationsfehler

eErrorCodeDevice

BACnet.CmpBACnet.IEC_BACNET_ERROR_CODE

Aktuellster vom BACnet - Zielgerät ( BACnet-Server ) übertragener Gerätefehler

eReplyErrorCode

TYPE_OF_REPLY_ERROR_CODE

Aktuellster Kommunikationsfehler in der Antwort auf eine eigene Anfrage

xAlarm

BOOL

FALSE

Sammelstörung ( TRUE = Störung )

xAlarmCom

BOOL

FALSE

Sammelstörung - Kommunikation ( TRUE = Störung )

xBusy

BOOL

Kommunikationsanzeige ( TRUE = Kommunikation )

Sollwerte / Parameter

Name
Datentyp
Wertebereich
Initialwert
Funktion

tTimeUpdateActual

TIME

T#3s

Updateintervall für die Vorgänge, die durch den Eingang ‘xUpdateActual’ beeinflusst werden ( 0 = kein automatisches Update, > 0 zyklisches Update )

dwDeviceID

DWORD

Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 )

eObjectType

BACnet.CmpBACnet.IEC_BACnet_Object_Type

BACnet.CmpBACnet.IEC_BACnet_Object_Type.OBJ_ANALOG_INPUT

Typ des Objekts

dwObjectInstance

DWORD

Nummer des Objekts ( Bereich: 0 - 4194303 )

ePropertyType

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID.PROP_PRESENT_VALUE

Typ der Eigenschaft

udiTimeoutFB

UDINT

5*1000*1000

Zeitdauer des Timeout für die Instanz des FB BACnet.BACnetClientReadProperty ( in Mikrosekunden, 0 = kein Timeout, CBML ETrigATo )

Funktionsbeschreibung

Allgemeines

Dieser Funktionsbaustein überträgt Istwerte von Eigenschaften per BACNET-Kummunikation ( lesender Zugriff ). Die Auswahl der zu lesenden Eigenschaft erfolgt über die Parameter dwDeviceID, eObjectType, dwObjectInstance und ePropertyType. Die Gültigkeit des Istwerts nach einer Übertragung wird am Ausgang ‘xValidValue’ signalisiert. Der Ausgang mit dem Istwert wird nach einer erfolgreichen Übertragung am Ausgang ‘sValueOutput’ dargestellt.

Freigabe / Sperrung der Kommunikation

Die Freigabe / Sperrung der Kommunikation erfolgt über den Eingang ‘xEn’ ( Default = TRUE = Freigabe ). Bei jeder ansteigenden Flanke am Eingang ‘xEn’ wird eine Übertragung des Istwerts mit den aktuellen Einstellungen ausgelöst. Im gesperrten Zustand nehmen die Ausgänge vordefinierte Zustände ein, gleichzeitig erfolgt eine Abmeldung vom Server.

Auslösung einer Übertragung

Die Übertragung des Istwerts der Eigenschaft kann wie folgt ausgelöst ( Voraussetzung: xRegToServer = TRUE )\

  • jede ansteigende Flanke am Eingang ‘xEn’

  • jede ansteigende Flanke am Eingang ‘xUpdateActual’

  • zyklisch im Intervall ‘tTimeUpdateAvtual’ ( Default: T#3s )

  • einmalig nach jedem Download

  • einmalig nach jeder Änderung der Konfiguration

Konfiguration des BACNET-Objekts

Das BACNET-Objekt wird durch die folgenden Parameter eindeutig festgelegt:\

  • Geräteadresse ‘dwDeviceID’

  • Objektadresse ‘dwObjectInstance’

  • Objekttyp ‘eObjectType’

  • Eigenschaftstyp ‘ePropertyType’

Rückmeldung der aktuellen Parameter

An den Ausgängen mi dem Index ‘_Fb’ stehen die aktuellen Einstellwerte der BACNET-Parameter zu Anzeigezwecken zur Verfügung.

Ausgang ‘ePropertyDataType’

An diesem Ausgang steht nach einer erfolgreichen Übertragung der BACNET-Datentyp der ausgewählten Eigenschaft zur Verfügung. Er legt gleichzeitig den Ausgang für die Darstellung des Istwerts fest.

Ausgang ‘sValueOutput’

An diesem Ausgang steht nach einer erfolgreichen Übertragung der Name der Ausgangsvariablen zur Verfügung, die den gültigen Istwert enthält.

Ausgang ‘xValidValue’

An diesem Ausgang steht nach einer erfolgreichen Übertragung die Gültigkeit der übertragenen Eigenschaft zur Verfügung.

Ausgänge für den aktuellen Istwert der Eigenschaft

In Abhängigkeit von der Gültigkeit des Istwerts ( xValidValue = TRUE ) und dem Namen der Ausgangsvariablen ( sValueOutput ) steht am entsprechenden Ausgang der Istwert zur Verfügung.

Ausgang ‘xRegToServer’

An diesem Ausgang steht permanent der Status der internen Verbindung zum BACNET-Server zur Verfügung. Der erfolgreiche Verbindungsaufbau zum Server ist dabei Voraussetzung zur Übertragung des Sollwerts.

Ausgang ‘xConfigObject’

An diesem Ausgang steht permanent der Status der erfolgreichen Konfiguration des BACNET-Objekts zur Verfügung.

Anzeige von Störungen

Die Anzeige von Störungen erfolgt am Sammelausgang ‘xAlarm’ ( = TRUE ). Er beinhaltet die aktuellen Zustände der Kommunikationsfehler ( xAlarmCom ) und die Gerätefehler ( xAlarmDevice ). Die Kommunikationsstörungen werden ( Zeitverzögerung: gc_Parameters.gc_tOnDelayxAlarmCom, Default = 60s ) am Ausgang xAlarmCom dargestellt. Die Gerätestörungen werden unverzögert am Ausgang xAlarmDevice dargestellt. Am Ausgang ‘eErrorCodeCom’ steht im Falle eines Kommunikationsfehlers ein erklärender Text für die Ursache zur Verfügung. Es wird dort stets die Ursache des letzten Kommunikationsfehlers angezeigt. Am Ausgang ‘eErrorCodeDevice’ steht im Falle eines Gerätefehlers ein erklärender Text für die Ursache zur Verfügung. Es wird dort stets die Ursache des letzten Kommunikationsfehlers angezeigt und aktuelisiert. Am Ausgang ‘eReplyErrorCode’ steht im Falle eines Fehlers im Antworttelegramm ein erklärender Text für die Ursache zur Verfügung.

Ausgang ‘xBusy’

Dieser Ausgang signalisiert die aktive Übertragung des Istwerts ( = TRUE ).

CODESYS

InOut:

Scope
Name
Type
Initial
Comment

Input

xEn

BOOL

TRUE

Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )

Input

itfServer

BACnet.IBACnetServer

Interface-Variable für die Referenzierung des Servers

Input

xUpdateActual

BOOL

FALSE

Aktualisierung der Istwerte ( bei jeder ansteigenden Flanke )

Input

xResError

BOOL

FALSE

Rücksetzung des Ausgang ‘eError’ ( bei jeder ansteigenden Flanke )

Output

dwDeviceID_Fb

DWORD

Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 ) - Rückmeldung

Output

eObjectType_Fb

BACnet.CmpBACnet.IEC_BACnet_Object_Type

Typ des Objekts - Rückmeldung

Output

dwObjectInstance_Fb

DWORD

Nummer des Objekts ( Bereich: 0 - 4194303 ) - Rückmeldung

Output

ePropertyType_Fb

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID

Typ der Eigenschaft - Rückmeldung

Output

ePropertyDataType

BACnet.CmpBACnet.IEC_BACNET_DATA_TYPE

BACnet - Datentyp des Antworttelegramms

Output

sValueOutput

STRING

‘’

Anzeige des Ausgangs für den Istwert der Eigenschaft

Output

xValidValue

BOOL

FALSE

Status der Gültigkeit des Istwerts einer Eigenschaft ( TRUE = Istwert gültig )

Output

rValue

REAL

Istwert der Eigenschaft im Format REAL ( Gleitkommazahl gemaess IEEE754 - 32 Bit )

Output

xValue

BOOL

Istwert der Eigenschaft im Format BOOL

Output

sValue

STRING(255)

Istwert der Eigenschaft im Format STRING ( Zeichenkette )

Output

diValue

DINT

Istwert der Eigenschaft im Format DINT ( Ganzzahl mit Vorzeichen )

Output

udiValue

UDINT

Istwert der Eigenschaft im Format UDINT ( Ganzzahl ohne Vorzeichen )

Output

byValue

BYTE

Istwert der Eigenschaft im Format BYTE ( Ganzzahl 0 - 255 )

Output

lrValue

LREAL

Istwert der Eigenschaft im Format LREAL ( Gleitkommazahl gemaess IEEE754 - 64 Bit )

Output

stValue

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_CONTENTS

Istwert der Eigenschaft im Format IEC_BACNET_PROPERTY_CONTENTS ( Direktzugriff auf die Schnittstelle )

Output

xRegToServer

BOOL

Status der Registrierung am BACnet-Server ( TRUE = erfolgreiche Registrierung )

Output

xConfigObject

BOOL

Status der Konfiguration des Objekts ( TRUE = erfolgreiche Konfiguration )

Output

eCBMState

BACnet.CmpBACnet.IEC_BACNET_STATUS

CBM - Status der Kommunikation ( Aktualisierung: Zustände DONE, ERROR und ABORT )

Output

eComState

ClientReadProperty_ComStates

Status der Kommunikation ( Aktualisierung: Zustände No_Execution, Target_Device_Searching, Request_Sending, Reply_Waiting, Finishing )

Output

eErrorCodeCom

BACnet.CmpBACnet.IEC_BACNET_STATUS

Aktuellster Kommunikationsfehler

Output

eErrorCodeDevice

BACnet.CmpBACnet.IEC_BACNET_ERROR_CODE

Aktuellster vom BACnet - Zielgerät ( BACnet-Server ) übertragener Gerätefehler

Output

eReplyErrorCode

TYPE_OF_REPLY_ERROR_CODE

Aktuellster Kommunikationsfehler in der Antwort auf eine eigene Anfrage

Output

xAlarm

BOOL

Sammelstörung ( TRUE = Störung )

Output

xAlarmCom

BOOL

Sammelstörung - Kommunikation ( TRUE = Störung )

Output

xBusy

BOOL

Kommunikationsanzeige ( TRUE = Kommunikation )

Input Const

udiTimeout

UDINT

((5 * 1000) * 1000)

Zeitdauer des Timeout für die Instanz des FB BACnet.BACnetClientReadProperty ( in Mikrosekunden, 0 = kein Timeout, CBML ETrigATo )

Input Const

ePropertyType

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID

BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID.PROP_PRESENT_VALUE

Typ der Eigenschaft

Input Const

dwObjectInstance

DWORD

Nummer des Objekts ( Bereich: 0 - 4194303 )

Input Const

eObjectType

BACnet.CmpBACnet.IEC_BACnet_Object_Type

BACnet.CmpBACnet.IEC_BACnet_Object_Type.OBJ_ANALOG_INPUT

Typ des Objekts

Input Const

dwDeviceID

DWORD

Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 )

Input Const

tTimeUpdateActual

TIME

TIME#3s0ms

Updateintervall für die Vorgänge, die durch den Eingang ‘xUpdateActual’ beeinflusst werden

Methods:

CLEAR_RESULT_OUTPUTS

CLEAR_STVALUE

FB_Exit

Structure:

  • CLEAR_RESULT_OUTPUTS (Method)

  • CLEAR_STVALUE (Method)

  • FB_Exit (Method)

Zuletzt aktualisiert