# SRV\_AO\_SMALL

## `SRV_AO_SMALL` (FB)

FUNCTION\_BLOCK SRV\_AO\_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 ( nur für binäre Werte )

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 )

Statusbit ‘Fault’

Bedingungen für den Zustand ‘TRUE’

1. Der aktuelle Wert von ‘rPresentValue’ unterschreitet die Untergrenze ‘rFaultLowLimit\_IN’ und / oder ( stOutputs.Reliability = ‘UnderRange’ ) ( Event-Status von ‘NORMAL nach ‘FAULT’ )
2. Der aktuelle Wert von ‘rPresentValue’ überschreitet die Obergrenze ‘rFaultHighLimit\_IN’. ( stOutputs.Reliability = ‘OverRange’ ) ( Event-Status von ‘NORMAL nach ‘FAULT’ )

Bedingungen für den Zustand ‘FALSE’

In allen übrigen Fällen. ( Event-Status von ‘FAULT nach ‘NORMAL’ )

Absolute Grenzen von ‘rPresentValue’

Der Ausgang ‘rResentValue’ nimmt unabhängig von der Eingabe an ‘rPresentValue\_IN’ nur Werte zwischen den beiden absolute Grenzen ( je einschliesslich ) an.

1. Absolute Untergrenze für ‘rPresentValue’: Parameter ‘rMinPresValue\_IN’
2. Absolute Obergrenze für ‘rPresentValue’: Parameter ‘rMaxPresValue\_IN’

Statusbit ‘InAlarm’

Bedingungen für den Zustand ‘TRUE’

1. Der aktuelle Wert von ‘rPresentValue’ unterschreitet die Untergrenze ‘rMinPresValue\_IN’ und / oder ( stOutputs.Reliability = ‘NoFaultDetected’ ) ( Event-Status von ‘NORMAL nach ‘INALARM’ )
2. Der aktuelle Wert von ‘rPresentValue’ überschreitet die Obergrenze ‘rMaxPresValue\_IN’. ( stOutputs.Reliability = ‘NoFaultDetected’ ) ( Event-Status von ‘NORMAL nach ‘INALARM’ )

Zusätzlich ist der Parameter ‘rDeadband\_IN’ wie folgt zu berücksichtigen:

Beispiel: ‘rMaxPresValue\_IN’ = 98.0, ‘rDeadband\_IN’ = 1.0 Der Alarmzustand ist aktiv bei ‘rPresentValue’ > ‘rMaxPresValue\_IN’. Der Alarmzustand ist nicht mehr aktiv bei ‘rPresentValue’ < (‘rMaxPresValue\_IN’ - ‘rDeadband\_IN’).

Beispiel: ‘rMinPresValue\_IN’ = 2.0, ‘rDeadband\_IN’ = 1.0 Der Alarmzustand ist aktiv bei ‘rPresentValue’ < ‘rMinPresValue\_IN’. Der Alarmzustand ist nicht mehr aktiv bei ‘rPresentValue’ > (‘rMinPresValue\_IN’ + ‘rDeadband\_IN’).

Bedingungen für den Zustand ‘FALSE’

In allen übrigen Fällen. ( stOutputs.Reliability = ‘NoFaultDetected’ ) ( Event-Status von ‘INALARM nach ‘NORMAL’ )

Die Überwachung der Unter- bzw. Obergrenze kann durch jeweils einen Options-Schalter freigegeben / gesperrt werden ( ‘xLowLimitEnable\_IN’, ‘xHighLimitEnable\_IN’ ).

Für die Übertragung eines Alarms / Events in eine Notification-Class ( NC ) müssen die Options-Schalter ‘xEventDetectionEnable\_IN’, ‘xEventEnableOffNormal\_IM’ und ‘xEventEnableNormal\_IM’ aktiviert werden.

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       | `rPresentValue_IN`                    | `REAL`                                                | 0.0                                                                        | <p>Festlegung des Werts des Ausgangs ‘rPresentValue’ mit der<br>Priorität ‘diPriority\_IN’</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Input       | `udiObjectInstance`                   | `UDINT`                                               | 1                                                                          | 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      | `rPresentValue`                       | `REAL`                                                |                                                                            | <p>Wert von ‘PresentValue’ ( Relinquish-default: S /<br>Prioritäts-Array: S+C / Out-Of-Service: S+C )</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Output      | `xPresentValueOverride`               | `BOOL`                                                |                                                                            | <p>Status der Übersteuerung des Ausgangs ‘rPresentValue’ ( TRUE<br>= Übersteuerung aktiv )</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Output      | `stProperties`                        | SRV\_AO\_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 | `eSelectPopertiesToCheckChanges`      | ServerObjects\_Select\_Properties\_To\_Check\_Changes | ServerObjects\_Select\_Properties\_To\_Check\_Changes.PresentValue\_only   | <p>Auswahl der Eigenschaften, die forlaufend auf Veränderungen am Eingang ( Index ‘\_IN’ ) hin geprüft und bei Bedarf im Server geändert werden<br><br>1. ServerObjects\_Select\_Properties\_To\_Check\_Changes.No\_property:<br>Es wird keine Eigenschaft geprüft<br>2. ServerObjects\_Select\_Properties\_To\_Check\_Changes.PresentValue\_only:<br>Es werden nur die Eigenschaften ‘PresentValue’ ( Eingang ‘rPresentValue\_IN’ ) und ‘Reliability’ ( Eingang ‘eReliability\_IN’ ) geprüft<br>3. ServerObjects\_Select\_Properties\_To\_Check\_Changes.All\_properties<br>Es werden alle Eigenschaften ( Eingänge mit dem Index ‘\_IN’ ) geprüft</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 | `rRelinquishDefault_IN`               | `REAL`                                                | 0.0                                                                        | <p>Festlegung des Werts des Ausgangs ‘rPresentValue’ in der<br>niedrigsten Priorität, falls das Prioritätsarray nicht<br>belegt ist</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Input Const | `diPriority_IN`                       | `DINT`                                                | 16                                                                         | <p>Priorität für den Eingang ‘rPresentValue\_IN’ ( 0 - 16, 0 =<br>keine, 1 = höchste, 16 = niedrigste )</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 | `eAccessRightTimeDelay_IN`            | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`                  | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | <p>Festlegung der Zugriffs-Berechtigung für die Zeitverzögerung<br>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 | `xHighLimitEnable_IN`                 | `BOOL`                                                | FALSE                                                                      | <p>Freigabe / Sperrung des Grenzwerts ‘rHighLimit\_IN’ ( TRUE =<br>Freigabe )</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Input Const | `xLowLimitEnable_IN`                  | `BOOL`                                                | FALSE                                                                      | <p>Freigabe / Sperrung des Grenzwerts ‘rLowLimit\_IN’ ( TRUE =<br>Freigabe )</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Input Const | `rDeadband_IN`                        | `REAL`                                                | 1.0                                                                        | Festlegung des Werts der Eigenschaft ‘rDeadband’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Input Const | `rHighLimit_IN`                       | `REAL`                                                | 99.0                                                                       | Festlegung des Werts der Eigenschaft ‘rHighLimit’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Input Const | `rLowLimit_IN`                        | `REAL`                                                | 1.0                                                                        | Festlegung des Werts der Eigenschaft ‘rLowLimit’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| 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 | `rPresentValueDeviation`              | `REAL`                                                | 0.5                                                                        | <p>Festlegung der Abweichung ( symmetrisch, plus/minus ) des<br>Werts am Eingang ‘rPresentValue\_IN’ zum vorhergehenden Wert,</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Input Const | `xOutOfService_IN`                    | `BOOL`                                                | FALSE                                                                      | <p>Zwangübersteuerung für den Ausgang ‘rPresentValue’ mit der<br>höchsten Priorität ( ‘xOutOfService’ = TRUE ) ( Nur für<br>Value-Objects )</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Input Const | `eUnits_IN`                           | `BACnet.CmpBACnet.IEC_BACNET_ENGINEERING_UNITS`       | BACnet.CmpBACnet.IEC\_BACNET\_ENGINEERING\_UNITS.UNIT\_DEGREES\_C          | Festlegung des Werts der Eigenschaft ‘eUnits’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Input Const | `rCOVIncrement_IN`                    | `REAL`                                                | 1.0                                                                        | Festlegung des Werts der Eigenschaft ‘rCOVIncrement’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Input Const | `rResolution_IN`                      | `REAL`                                                | 0.1                                                                        | Festlegung des Werts der Eigenschaft ‘rResolution’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Input Const | `rMaxPresValue_IN`                    | `REAL`                                                | 100.0                                                                      | Festlegung des Werts der Eigenschaft ‘rMaxPresValue’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Input Const | `rMinPresValue_IN`                    | `REAL`                                                | 0.0                                                                        | Festlegung des Werts der Eigenschaft ‘rMinPresValue’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| 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 der zugeordneten Notification-Class                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Input Const | `udiTimeDelay_IN`                     | `UDINT`                                               | 0                                                                          | <p>Festlegung des Werts der Eigenschaft ‘udiTimeDelay’ in<br>Sekunden</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Input Const | `udiNotificationClass_IN`             | `UDINT`                                               | 40                                                                         | Festlegung der Nummer der zugeordneten Notification-Class                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| 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 | `xEn`                                 | `BOOL`                                                | TRUE                                                                       | Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
