# SRV\_BO\_SMALL

## `SRV_BO_SMALL` (FB)

FUNCTION\_BLOCK SRV\_BO\_SMALL

Influence on the current state of the property 'PresentValue' (output)

Priority Condition Function Notes

Highest property 'OutOfService' = TRUE 'PresentValue' can be written directly Forced override of the output 'PresentValue'

Middle state of at least one priority The state of the highest priority (1 = highest, prioritization of requests for the state of PresentValue: of the array <> NULL 16 = lowest) of the array <> NULL determines the value of 'PresentValue'

Lowest states of all priorities 1 - 16 of the array On transition into this priority the value of the determination of the state of 'PresentValue', if there are no valid entries in the array := NULL the property 'RelinquishDefault' is written once to the output 'PresentValue'.

Notes:

The state of a priority of the array can take the following states: NULL (= inactive), FALSE (OFF), TRUE (ON) The most recent access defines the state of PresentValue. ('Last wins') Each new state of 'PresentValue' is transmitted only once when the state changes, there is no continuous transmission (= pulse function).

Priority 6

The state of priority 6 must not be used (= written), as it is used for pulse generation on state change of the property 'PresentValue'. Each rising edge on 'PresentValue' generates a pulse (state: TRUE) of length 'MinimumOnTime' ('MinimumOnTime' > 0 s) of priority 6. Each falling edge on 'PresentValue' generates a pulse (state: FALSE) of length 'MinimumOffTime' ('MinimumOffTime' > 0 s) of priority 6.

Notification Class

Conditions:

1. The property 'RecipientList' must be provided with the attribute 'WRITEABLE'.
2. The instance number must be identical to the Notification Class
3. The priorities (0 - 2) should contain values greater than 0 (e.g. all = 1)

Persistence

Conditions:

1. The desired property (e.g. 'Description') must be provided with the attribute 'PERSIST'.
2. Persistence remains until the value of the property changes (xEnValueChange = TRUE) and/or a rising edge is detected at the input 'xInit'.

Unsolicited COV (= unsolicited transmission of state changes to all BACnet participants (broadcast))

Conditions:

1. The property 'SupportUnsolicitedCOV' must be set to 'TRUE' in the BACnet\_Server (central for all BACnet objects)

InOut:

| Scope       | Name                                  | Type                                                  | Initial                                                                    | Comment                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ----------- | ------------------------------------- | ----------------------------------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Input       | `itfMasterConnector`                  | IMasterForServerObjectsPOU                            |                                                                            | Input for the interface of the FB ‘MasterForServerObjectsPOU’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Input       | `xInit`                               | `BOOL`                                                | FALSE                                                                      | Reassignment of all properties (write values/states and update outputs) (on every rising edge)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Input       | `xPresentValue_IN`                    | `BOOL`                                                | FALSE                                                                      | Set the state of the output ‘xPresentValue’ with the priority ‘diPriority\_IN’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Input       | `udiObjectInstance`                   | `UDINT`                                               | 1                                                                          | Object instance of the server object to be created                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Input       | `sObjectNamePrefix`                   | `STRING(254)`                                         | ‘’                                                                         | Optional prefix for forming the object name — CONCAT(sObjectNamePrefix,sObjectNameText)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Input       | `sDescriptionPrefix`                  | `STRING(254)`                                         | ‘’                                                                         | Optional prefix for forming the description — CONCAT(sDescriptionPrefix,sDescriptionText)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Output      | `eObjectTypeFb`                       | `BACnet.CmpBACnet.IEC_BACNET_OBJECT_TYPE`             |                                                                            | Type of the object — feedback                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Output      | `udiObjectInstanceFb`                 | `UDINT`                                               |                                                                            | Object instance of the server object to be created — feedback                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Output      | `xPresentValue`                       | `BOOL`                                                |                                                                            | Value of ‘Present-Value’ (Relinquish-default: S / Priority array: S+C / Out-Of-Service: S)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Output      | `xPresentValueOverride`               | `BOOL`                                                |                                                                            | Status of the override of the output ‘xPresentValue’ (TRUE = override active)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Output      | `stProperties`                        | SRV\_BO\_SMALL\_PROPERTY\_OUTPUTS                     |                                                                            | Structure with the current states of selected properties                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Output      | `xRegistered`                         | `BOOL`                                                | FALSE                                                                      | Indicates successful registration of the server object                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Input Const | `eSelectPopertiesToCheckChanges`      | ServerObjects\_Select\_Properties\_To\_Check\_Changes | ServerObjects\_Select\_Properties\_To\_Check\_Changes.PresentValue\_only   | <p>Selection of properties to be continuously checked for changes on the input (index ‘\_IN’) and, if necessary, changed in the server<br><br>1. ServerObjects\_Select\_Properties\_To\_Check\_Changes.No\_property:<br>No property is checked<br>2. ServerObjects\_Select\_Properties\_To\_Check\_Changes.PresentValue\_only:<br>Only the properties ‘PresentValue’ (input ‘xPresentValue\_IN’) and ‘Reliability’ (input ‘eReliability\_IN’) are checked<br>3. ServerObjects\_Select\_Properties\_To\_Check\_Changes.All\_properties<br>All properties (inputs with the index ‘\_IN’) are checked</p> |
| Input Const | `eTriggeringUpdateActual`             | ServerObjects\_TriggeringUpdateActual                 | ServerObjects\_TriggeringUpdateActual.CENTRAL\_TRIGGERING                  | <p>Definition of the trigger for cyclical updating of the outputs<br>NO\_TRIGGERING: no cyclical update<br>LOCAL\_TRIGGERING: cyclical update (time duration: tTimeUpdateActual)<br>CENTRAL\_TRIGGERING: cyclical update (time duration dependent on the number of server objects)</p>                                                                                                                                                                                                                                                                                                                 |
| Input Const | `tTimeUpdateActual`                   | `TIME`                                                | TIME#3s0ms                                                                 | Update interval for updating the outputs                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Input Const | `eAccessRightEventDetectionEnable_IN` | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`                  | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | Definition of the access right for the property 'Event Detection Enable' by a client                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Input Const | `eAccessRightEventEnable_IN`          | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`                  | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | Definition of the access right for the property 'Event Enable' by a client                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Input Const | `eAccessRightNotificationType_IN`     | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`                  | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | Definition of the access right for the Notification Type by a client                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Input Const | `eAccessRightTimeDelay_IN`            | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`                  | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | Definition of the access right for the time delay by a client                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Input Const | `eAccessRightNotificationClass_IN`    | `BACnet.CmpBACnet.IEC_BACNET_ACCESS`                  | BACnet.CmpBACnet.IEC\_BACNET\_ACCESS.BACNET\_ACCESS\_HIDDEN                | Definition of the access right for the Notification Class by a client                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Input Const | `xRelinquishDefault_IN`               | `BOOL`                                                | FALSE                                                                      | Definition of the state of the output ‘xPresentValue’ if the priority array is not populated                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Input Const | `diPriority_IN`                       | `DINT`                                                | 16                                                                         | Priority for the state at the input ‘xPresentValue\_IN’ (0 - 16, 0 = none, 1 = highest, 16 = lowest)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Input Const | `ePolarity_IN`                        | `BACnet.CmpBACnet.IEC_BACNET_POLARITY`                | BACnet.CmpBACnet.IEC\_BACNET\_POLARITY.POLARITY\_NORMAL                    | <p>Definition of the signal polarity at the output in relation to the input ‘xPresentValue\_IN’<br>NORMAL: 0 = Inactive, 1 = Active<br>REVERSE: 0 = Active, 1 = Inactive</p>                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Input Const | `eReliability_IN`                     | `BACnet.CmpBACnet.IEC_BACNET_RELIABILITY`             | BACnet.CmpBACnet.IEC\_BACNET\_RELIABILITY.RELIABILITY\_NO\_FAULT\_DETECTED | Definition of the current state of the property ‘Reliability’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Input Const | `xFeedbackValue_IN`                   | `BOOL`                                                | FALSE                                                                      | State of the feedback of ‘xPresentValue’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Input Const | `sActiveText_IN`                      | `STRING`                                              | ‘On’                                                                       | State text for the state ‘TRUE’ on the output ‘xPresentValue’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Input Const | `sInactiveText_IN`                    | `STRING`                                              | ‘Off’                                                                      | State text for the state ‘FALSE’ on the output ‘xPresentValue’                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Input Const | `xOutOfService_IN`                    | `BOOL`                                                | FALSE                                                                      | Forced override for the output ‘xPresentValue’ with the highest priority (‘xOutOfService’ = TRUE) (only for value objects)                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Input Const | `udiMinOffTime_IN`                    | `UDINT`                                               | 0                                                                          | Duration of the pulse in seconds (state: FALSE) (‘udiMinOffTime’ > 0 s) of priority 6, once at the state change from TRUE to FALSE                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Input Const | `udiMinOnTime_IN`                     | `UDINT`                                               | 0                                                                          | Duration of the pulse in seconds (state: TRUE) (‘udiMinOnTime’ > 0 s) of priority 6, once at the state change from FALSE to TRUE                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Input Const | `xEventDetectionEnable_IN`            | `BOOL`                                                | FALSE                                                                      | General enable/disable of event detection (TRUE = enable)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Input Const | `xEventNormalEnable_IN`               | `BOOL`                                                | FALSE                                                                      | Enable/disable detection of transitions to the state 'Normal' (TRUE = enable)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Input Const | `xEventFaultEnable_IN`                | `BOOL`                                                | FALSE                                                                      | Enable/disable detection of transitions to the state 'Fault' (TRUE = enable)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Input Const | `xEventOffNormalEnable_IN`            | `BOOL`                                                | FALSE                                                                      | Enable/disable detection of transitions to the state 'Off-Normal' (TRUE = enable)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Input Const | `eNotificationType_IN`                | `BACnet.CmpBACnet.IEC_BACNET_NOTIFY_TYPE`             | BACnet.CmpBACnet.IEC\_BACNET\_NOTIFY\_TYPE.NOTIFY\_TYPE\_ALARM             | Definition of the type of the associated Notification Class                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| Input Const | `udiTimeDelay_IN`                     | `UDINT`                                               | 0                                                                          | Definition of the value of the property ‘udiTimeDelay’ in seconds                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Input Const | `udiNotificationClass_IN`             | `UDINT`                                               | 40                                                                         | Definition of the number of the associated Notification Class                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Input Const | `sDescriptionText`                    | `STRING(254)`                                         | ‘’                                                                         | Text part of the description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Input Const | `sObjectNameText`                     | `STRING(254)`                                         | ‘’                                                                         | Text part of the object name of the server object to be created                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Input Const | `xEn`                                 | `BOOL`                                                | TRUE                                                                       | Enable / disable communication ( TRUE = enabled )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
