SRV_NC_SMALL

SRV_NC_SMALL (FB)

FUNCTION_BLOCK SRV_NC_SMALL

Einflussnahme auf den aktuellen Zustand der Eigenschaft ‘PresentValue’ ( Ausgang )

Priorität Bedingung Funktion Anmerkungen

Höchste Eigenschaft ‘OutOfService’ = TRUE ‘PresentValue’ kann direkt beschrieben werden Zwangsübersteuerung des Ausgangs ‘PresentValue’

Mittlere Zustand von mindestens einer Priorität Zustand der höchsten Priorität ( 1 = höchste, Priorisierung der Anforderungen an den Zustand von PresentValue : des Arrays <> NULL 16 = niedrigste ) des Arrays <> NULL bestimmt den : Wert von ‘PresentValue’

Niedrigste Zustände aller Prioritäten 1 - 16 des Arrays Beim Übergang in diese Priorität wird der Wert der Festlegung des Zustands von ‘PresentValue’, falls keine gültigen Einträge im Array vorliegen : = NULL Eigenschaft ‘RelinquishDefault’ einmalig auf den : Ausgang ‘PresentValue’ geschrieben.

Hinweise:

Der Zustand einer Priorität des Arrays kann folgende Zustände annehmen: NULL ( = inaktiv ), FALSE ( AUS ), TRUE ( EIN ) Der jeweils neueste Zugriff definiert den Zustand von PresentValue. ( ‘Der Letzte gewinnt’ ) Jeder neue Zustand von ‘PresentValue’ wird beim Zustandswechsel nur einmalig übertragen, es findet keine Dauerübertragung statt ( = Impulsfunktion ).

Priorität 6

Der Zustand der Priorität 6 darf nicht verwandt ( = beschrieben ) werden, da er für die Impulserzeugung beim Zustandwechsel der Eigenschaft ‘PresentValue’ verwandt wird. Jeder ansteigende Flanke an ‘PresentValue’ erzeugt einen Impuls ( Zustand: TRUE ) der Länge ‘MinimumOnTime’ ( ‘MinimumOnTime’ > 0 s ) der Priorität 6. Jeder abfallende Flanke an ‘PresentValue’ erzeugt einen Impuls ( Zustand: FALSE ) der Länge ‘MinimumOffTime’ ( ‘MinimumOffTime’ > 0 s ) der Priorität 6.

Notification Class

Bedingungen:

  1. Die Eigenschaft ‘RecipientList’ muss mit dem Attribut ‘WRITEABLE’ versehen sein.

  2. Die Instanz-Nummer muss mit der Notifiation-Class identisch sein

  3. Die Prioritäten ( 0 - 2 ) sollen Werte grösser 0 ( also z.B. alle = 1 ) enthalten

Persistenz

Bedingungen:

  1. Die gewünschte Eigenschaft ( z.B. ‘Description’ ) muss mit dem Attribut ‘PERSIST’ versehen sein.

  2. Die Persistenz bleibt erhalten, bis sich der Wert der Eigenschaft ändert ( xEnValueChange = TRUE ) und / oder am Eingang ‘xInit’ eine ansteigende Flanke erkannt wurde.

Unsolicited COV ( = Unaufgeforderte Übertragung von Zustandswechseln an alle BACnet-Teilnehmer ( Broadcast ))

Bedingungen:

  1. Die Eigenschaft ‘SupportUnsolicitedCOV’ muss im BACnet_Server mit dem Wert ‘TRUE’ versehen sein ( zentral für alle BACnet-Objekte )

InOut:

Scope
Name
Type
Initial
Comment

Input

itfMasterConnector

IMasterForServerObjectsPOU

Eingang für das Interface des FB ‘MasterForServerObjectsPOU’

Input

xInit

BOOL

FALSE

Neufestlegung aller Eigenschaften ( Werte / Zustände schreiben und Ausgänge aktualisieren ) ( bei jeder ansteigenden Flanke )

Input

udiObjectInstance

UDINT

40

Objekt - Instanz des zu erzeugenden Server - Objekts

Input

sObjectNamePrefix

STRING(254)

‘’

Optionales Prefix zur Bildung des Objekt - Namens — CONCAT(sObjectNamePrefix,sObjectNameText)

Input

sDescriptionPrefix

STRING(254)

‘’

Optionales Prefix zur Bildung der Beschreibung — CONCAT(sDescriptionPrefix,sDescriptionText)

Output

eObjectTypeFb

BACnet.CmpBACnet.IEC_BACNET_OBJECT_TYPE

Typ des Objekts — Rückmeldung

Output

udiObjectInstanceFb

UDINT

Objekt - Instanz des zu erzeugenden Server - Objekts — Rückmeldung

Output

stProperties

SRV_NC_SMALL_PROPERTY_OUTPUTS

Struktur mit den aktuellen Zuständen von ausgewählten Eigenschaften

Output

xRegistered

BOOL

FALSE

Anzeige der erfolgreichen Registrierung des Server - Objekts

Input Const

eAccessRightAckReqEnable_IN

BACnet.CmpBACnet.IEC_BACNET_ACCESS

BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_HIDDEN

Festlegung der Zugriffs-Berechtigung für die Quittierung von Übergängen durch einen Clienten

Input Const

eAccessRightRecipientList_IN

BACnet.CmpBACnet.IEC_BACNET_ACCESS

BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_READ_ONLY

Festlegung der Zugriffs-Berechtigung für die Liste der Empfänger durch einen Client

Input Const

eAccessRightEventDetectionEnable_IN

BACnet.CmpBACnet.IEC_BACNET_ACCESS

BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_HIDDEN

Festlegung der Zugriffs-Berechtigung für die Eigenschaft ‘Event Detection Enable’ durch einen Clienten

Input Const

eAccessRightEventEnable_IN

BACnet.CmpBACnet.IEC_BACNET_ACCESS

BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_HIDDEN

Festlegung der Zugriffs-Berechtigung für die Eigenschaft ‘Event Enable’ durch einen Clienten

Input Const

eAccessRightNotifyType_IN

BACnet.CmpBACnet.IEC_BACNET_ACCESS

BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_HIDDEN

Festlegung der Zugriffs-Berechtigung für den Notification- Typ durch einen Clienten

Input Const

eAccessRightNotificationClass_IN

BACnet.CmpBACnet.IEC_BACNET_ACCESS

BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_HIDDEN

Festlegung der Zugriffs-Berechtigung für die Notification- Class durch einen Clienten

Input Const

xAckReqNormalEnable_IN

BOOL

FALSE

Freigabe / Sperrung der Quittierung von Übergängen zum Zustand ‘Normal’ ( TRUE = Freigabe )

Input Const

xAckReqFaultEnable_IN

BOOL

FALSE

Freigabe / Sperrung der Quittierung von Übergängen zum Zustand ‘Fault’ ( TRUE = Freigabe )

Input Const

xAckReqOffNormalEnable_IN

BOOL

FALSE

Freigabe / Sperrung der Quittierung von Übergängen zum Zustand ‘Off-Normal’ ( TRUE = Freigabe )

Input Const

eTriggeringUpdateActual

ServerObjects_TriggeringUpdateActual

ServerObjects_TriggeringUpdateActual.CENTRAL_TRIGGERING

Festlegung der Auslösung für die zyklische Aktualisierung der Ausgänge NO_TRIGGERING: keine zyklische Aktualisierung LOCAL_TRIGGERING: zyklische Aktualisierung ( Zeitdauer: tTimeUpdateActual ) CENTRAL_TRIGGERING: zyklische Aktualisierung ( Zeitdauer abhängig von der Anzahl der Server-Objekte )

Input Const

tTimeUpdateActual

TIME

TIME#3s0ms

Updateintervall für die Aktualisierung der Ausgänge

Input Const

eReliability_IN

BACnet.CmpBACnet.IEC_BACNET_RELIABILITY

BACnet.CmpBACnet.IEC_BACNET_RELIABILITY.RELIABILITY_NO_FAULT_DETECTED

Festlegung des aktuellen Zustands der Eigenschaft ‘Reliability’

Input Const

udiPriorityNormal_IN

UDINT

90

Festlegung der Priorität des Sprungs zum Status ‘Normal’ ( S ) ( 0 - 255, 0 = höchste )

Input Const

udiPriorityFault_IN

UDINT

90

Festlegung der Priorität des Sprungs zum Status ‘Fault’ ( S ) ( 0 - 255, 0 = höchste )

Input Const

udiPriorityOffNormal_IN

UDINT

90

Festlegung der Priorität des Sprungs zum Status ‘OffNormal’ ( 0 - 255, 0 = höchste ) ( S )

Input Const

xEventDetectionEnable_IN

BOOL

FALSE

Generelle Freigabe / Sperrung der Erkennung von Events ( TRUE = Freigabe )

Input Const

xEventNormalEnable_IN

BOOL

FALSE

Freigabe / Sperrung der Erkennung von Übergängen zum Zustand ‘Normal’ ( TRUE = Freigabe )

Input Const

xEventFaultEnable_IN

BOOL

FALSE

Freigabe / Sperrung der Erkennung von Übergängen zum Zustand ‘Fault’ ( TRUE = Freigabe )

Input Const

xEventOffNormalEnable_IN

BOOL

FALSE

Freigabe / Sperrung der Erkennung von Übergängen zum Zustand ‘Off-Normal’ ( TRUE = Freigabe )

Input Const

eNotifyType_IN

BACnet.CmpBACnet.IEC_BACNET_NOTIFY_TYPE

BACnet.CmpBACnet.IEC_BACNET_NOTIFY_TYPE.NOTIFY_TYPE_ALARM

Festlegung des Typs des Notification - Objekts

Input Const

sDescriptionText

STRING(254)

‘’

Textanteil der Beschreibung

Input Const

sObjectNameText

STRING(254)

‘’

Textanteil des Objekt - Namens des zu erzeugenden Server - Objekts

Input Const

udiNotificationClass_IN

UDINT

0

Nummer der Notification-Class, an die diese Notification- Class Meldungen übergeben kann

Input Const

xEn

BOOL

TRUE

Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )

Zuletzt aktualisiert