# 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                                                                      | <p>Neufestlegung aller Eigenschaften ( Werte / Zustände<br>schreiben und Ausgänge aktualisieren ) ( bei jeder<br>ansteigenden Flanke )</p>                                                                                                                                                                                |
| Input       | `udiObjectInstance`                   | `UDINT`                                   | 40                                                                         | Objekt - Instanz des zu erzeugenden Server - Objekts                                                                                                                                                                                                                                                                      |
| Input       | `sObjectNamePrefix`                   | `STRING(254)`                             | ‘’                                                                         | <p>Optionales Prefix zur Bildung des Objekt - Namens —<br>CONCAT(sObjectNamePrefix,sObjectNameText)</p>                                                                                                                                                                                                                   |
| Input       | `sDescriptionPrefix`                  | `STRING(254)`                             | ‘’                                                                         | <p>Optionales Prefix zur Bildung der Beschreibung —<br>CONCAT(sDescriptionPrefix,sDescriptionText)</p>                                                                                                                                                                                                                    |
| Output      | `eObjectTypeFb`                       | `BACnet.CmpBACnet.IEC_BACNET_OBJECT_TYPE` |                                                                            | Typ des Objekts — Rückmeldung                                                                                                                                                                                                                                                                                             |
| Output      | `udiObjectInstanceFb`                 | `UDINT`                                   |                                                                            | <p>Objekt - Instanz des zu erzeugenden Server - Objekts —<br>Rückmeldung</p>                                                                                                                                                                                                                                              |
| Output      | `stProperties`                        | SRV\_NC\_SMALL\_PROPERTY\_OUTPUTS         |                                                                            | <p>Struktur mit den aktuellen Zuständen von ausgewählten<br>Eigenschaften</p>                                                                                                                                                                                                                                             |
| 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                | <p>Festlegung der Zugriffs-Berechtigung für die Quittierung von<br>Übergängen durch einen Clienten</p>                                                                                                                                                                                                                    |
| Input Const | `eAccessRightRecipientList_IN`        | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`      | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_READ\_ONLY            | <p>Festlegung der Zugriffs-Berechtigung für die Liste der<br>Empfänger durch einen Client</p>                                                                                                                                                                                                                             |
| Input Const | `eAccessRightEventDetectionEnable_IN` | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`      | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | <p>Festlegung der Zugriffs-Berechtigung für die Eigenschaft<br>‘Event Detection Enable’ durch einen Clienten</p>                                                                                                                                                                                                          |
| Input Const | `eAccessRightEventEnable_IN`          | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`      | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | <p>Festlegung der Zugriffs-Berechtigung für die Eigenschaft<br>‘Event Enable’ durch einen Clienten</p>                                                                                                                                                                                                                    |
| Input Const | `eAccessRightNotifyType_IN`           | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`      | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | <p>Festlegung der Zugriffs-Berechtigung für den Notification-<br>Typ durch einen Clienten</p>                                                                                                                                                                                                                             |
| Input Const | `eAccessRightNotificationClass_IN`    | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`      | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | <p>Festlegung der Zugriffs-Berechtigung für die Notification-<br>Class durch einen Clienten</p>                                                                                                                                                                                                                           |
| Input Const | `xAckReqNormalEnable_IN`              | `BOOL`                                    | FALSE                                                                      | <p>Freigabe / Sperrung der Quittierung von Übergängen zum<br>Zustand ‘Normal’ ( TRUE = Freigabe )</p>                                                                                                                                                                                                                     |
| Input Const | `xAckReqFaultEnable_IN`               | `BOOL`                                    | FALSE                                                                      | <p>Freigabe / Sperrung der Quittierung von Übergängen zum<br>Zustand ‘Fault’ ( TRUE = Freigabe )</p>                                                                                                                                                                                                                      |
| Input Const | `xAckReqOffNormalEnable_IN`           | `BOOL`                                    | FALSE                                                                      | <p>Freigabe / Sperrung der Quittierung von Übergängen zum<br>Zustand ‘Off-Normal’ ( TRUE = Freigabe )</p>                                                                                                                                                                                                                 |
| Input Const | `eTriggeringUpdateActual`             | ServerObjects\_TriggeringUpdateActual     | ServerObjects\_TriggeringUpdateActual.CENTRAL\_TRIGGERING                  | <p>Festlegung der Auslösung für die zyklische Aktualisierung der Ausgänge<br>NO\_TRIGGERING: keine zyklische Aktualisierung<br>LOCAL\_TRIGGERING: zyklische Aktualisierung ( Zeitdauer: tTimeUpdateActual )<br>CENTRAL\_TRIGGERING: zyklische Aktualisierung ( Zeitdauer abhängig von der Anzahl der Server-Objekte )</p> |
| 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 | <p>Festlegung des aktuellen Zustands der Eigenschaft<br>‘Reliability’</p>                                                                                                                                                                                                                                                 |
| Input Const | `udiPriorityNormal_IN`                | `UDINT`                                   | 90                                                                         | <p>Festlegung der Priorität des Sprungs zum Status ‘Normal’ ( S<br>) ( 0 - 255, 0 = höchste )</p>                                                                                                                                                                                                                         |
| Input Const | `udiPriorityFault_IN`                 | `UDINT`                                   | 90                                                                         | <p>Festlegung der Priorität des Sprungs zum Status ‘Fault’ ( S<br>) ( 0 - 255, 0 = höchste )</p>                                                                                                                                                                                                                          |
| Input Const | `udiPriorityOffNormal_IN`             | `UDINT`                                   | 90                                                                         | <p>Festlegung der Priorität des Sprungs zum Status ‘OffNormal’<br>( 0 - 255, 0 = höchste ) ( S )</p>                                                                                                                                                                                                                      |
| Input Const | `xEventDetectionEnable_IN`            | `BOOL`                                    | FALSE                                                                      | <p>Generelle Freigabe / Sperrung der Erkennung von Events (<br>TRUE = Freigabe )</p>                                                                                                                                                                                                                                      |
| Input Const | `xEventNormalEnable_IN`               | `BOOL`                                    | FALSE                                                                      | <p>Freigabe / Sperrung der Erkennung von Übergängen zum Zustand<br>‘Normal’ ( TRUE = Freigabe )</p>                                                                                                                                                                                                                       |
| Input Const | `xEventFaultEnable_IN`                | `BOOL`                                    | FALSE                                                                      | <p>Freigabe / Sperrung der Erkennung von Übergängen zum Zustand<br>‘Fault’ ( TRUE = Freigabe )</p>                                                                                                                                                                                                                        |
| Input Const | `xEventOffNormalEnable_IN`            | `BOOL`                                    | FALSE                                                                      | <p>Freigabe / Sperrung der Erkennung von Übergängen zum Zustand<br>‘Off-Normal’ ( TRUE = Freigabe )</p>                                                                                                                                                                                                                   |
| 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)`                             | ‘’                                                                         | <p>Textanteil des Objekt - Namens des zu erzeugenden Server -<br>Objekts</p>                                                                                                                                                                                                                                              |
| Input Const | `udiNotificationClass_IN`             | `UDINT`                                   | 0                                                                          | <p>Nummer der Notification-Class, an die diese Notification-<br>Class Meldungen übergeben kann</p>                                                                                                                                                                                                                        |
| Input Const | `xEn`                                 | `BOOL`                                    | TRUE                                                                       | Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )                                                                                                                                                                                                                                                                 |
