SRV_AO_SMALL
SRV_AO_SMALL (FB)
SRV_AO_SMALL (FB)FUNCTION_BLOCK SRV_AO_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 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 When switching to this priority, the value of setting the state of 'PresentValue', if there are no valid entries in the array := NULL property 'RelinquishDefault' is written once to the output 'PresentValue'.
Notes:
The state of a priority in the array can assume the following states: NULL (= inactive), FALSE (OFF), TRUE (ON) The most recent access defines the state of PresentValue. ('Last one wins') Each new state of 'PresentValue' is transmitted only once on state change, there is no continuous transmission (= pulse function).
Priority 6 (only for binary values)
The state of priority 6 must not be used (= written), as it is used for pulse generation on state changes of the property 'PresentValue'. Each rising edge on 'PresentValue' generates a pulse (state: TRUE) of length 'MinimumOnTime' ('MinimumOnTime' > 0 s) for priority 6. Each falling edge on 'PresentValue' generates a pulse (state: FALSE) of length 'MinimumOffTime' ('MinimumOffTime' > 0 s) for priority 6.
Notification Class
Conditions:
The property 'RecipientList' must be provided with the attribute 'WRITEABLE'.
The instance number must be identical to the Notification-Class
The priorities (0 - 2) should contain values greater than 0 (for example all = 1)
Persistence
Conditions:
The desired property (e.g. 'Description') must be provided with the attribute 'PERSIST'.
Persistence remains until the value of the property changes (xEnValueChange = TRUE) and/or a rising edge is detected on the input 'xInit'.
Unsolicited COV (= unsolicited transmission of state changes to all BACnet participants (broadcast))
Conditions:
The property 'SupportUnsolicitedCOV' must be set to 'TRUE' in the BACnet_Server (central for all BACnet objects)
Status bit 'Fault'
Conditions for the state 'TRUE'
The current value of 'rPresentValue' falls below the lower limit 'rFaultLowLimit_IN' and/or (stOutputs.Reliability = 'UnderRange') (Event status from 'NORMAL' to 'FAULT')
The current value of 'rPresentValue' exceeds the upper limit 'rFaultHighLimit_IN'. (stOutputs.Reliability = 'OverRange') (Event status from 'NORMAL' to 'FAULT')
Conditions for the state 'FALSE'
In all other cases. (Event status from 'FAULT' to 'NORMAL')
Absolute limits of 'rPresentValue'
The output 'rResentValue' accepts only values between the two absolute limits (each inclusive), independent of the input at 'rPresentValue_IN'.
Absolute lower limit for 'rPresentValue': parameter 'rMinPresValue_IN'
Absolute upper limit for 'rPresentValue': parameter 'rMaxPresValue_IN'
Status bit 'InAlarm'
Conditions for the state 'TRUE'
The current value of 'rPresentValue' falls below the lower limit 'rMinPresValue_IN' and/or (stOutputs.Reliability = 'NoFaultDetected') (Event status from 'NORMAL' to 'INALARM')
The current value of 'rPresentValue' exceeds the upper limit 'rMaxPresValue_IN'. (stOutputs.Reliability = 'NoFaultDetected') (Event status from 'NORMAL' to 'INALARM')
Additionally, the parameter 'rDeadband_IN' must be considered as follows:
Example: 'rMaxPresValue_IN' = 98.0, 'rDeadband_IN' = 1.0 The alarm state is active when 'rPresentValue' > 'rMaxPresValue_IN'. The alarm state is no longer active when 'rPresentValue' < ('rMaxPresValue_IN' - 'rDeadband_IN').
Example: 'rMinPresValue_IN' = 2.0, 'rDeadband_IN' = 1.0 The alarm state is active when 'rPresentValue' < 'rMinPresValue_IN'. The alarm state is no longer active when 'rPresentValue' > ('rMinPresValue_IN' + 'rDeadband_IN').
Conditions for the state 'FALSE'
In all other cases. (stOutputs.Reliability = 'NoFaultDetected') (Event status from 'INALARM' to 'NORMAL')
Monitoring of the lower or upper limit can be enabled/disabled by an options switch each ('xLowLimitEnable_IN', 'xHighLimitEnable_IN').
For transmitting an alarm/event to a Notification Class (NC), the option switches 'xEventDetectionEnable_IN', 'xEventEnableOffNormal_IM' and 'xEventEnableNormal_IM' must be activated.
InOut:
Input
itfMasterConnector
IMasterForServerObjectsPOU
Input for the interface of the FB 'MasterForServerObjectsPOU'
Input
xInit
BOOL
FALSE
Reinitialization of all properties (write values/states and update outputs) (on every rising edge)
Input
rPresentValue_IN
REAL
0.0
Setting the value of the output 'rPresentValue' 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
rPresentValue
REAL
Value of 'PresentValue' (Relinquish-default: S / Priority array: S+C / Out-Of-Service: S+C)
Output
xPresentValueOverride
BOOL
Status of the override of the output 'rPresentValue' (TRUE = override active)
Output
stProperties
SRV_AO_SMALL_PROPERTY_OUTPUTS
Structure with the current states of selected properties
Output
xRegistered
BOOL
FALSE
Indication of successful registration of the server object
Input Const
eSelectPopertiesToCheckChanges
ServerObjects_Select_Properties_To_Check_Changes
ServerObjects_Select_Properties_To_Check_Changes.PresentValue_only
Selection of properties that are continuously checked for changes on the inputs (index '_IN') and, if necessary, changed in the server 1. ServerObjects_Select_Properties_To_Check_Changes.No_property: No property is checked 2. ServerObjects_Select_Properties_To_Check_Changes.PresentValue_only: Only the properties 'PresentValue' (input 'rPresentValue_IN') and 'Reliability' (input 'eReliability_IN') are checked 3. ServerObjects_Select_Properties_To_Check_Changes.All_properties All properties (inputs with the index '_IN') are checked
Input Const
eTriggeringUpdateActual
ServerObjects_TriggeringUpdateActual
ServerObjects_TriggeringUpdateActual.CENTRAL_TRIGGERING
Definition of the trigger for cyclic updating of the outputs NO_TRIGGERING: no cyclic update LOCAL_TRIGGERING: cyclic update (time duration: tTimeUpdateActual) CENTRAL_TRIGGERING: cyclic update (time duration depends on the number of server objects)
Input Const
tTimeUpdateActual
TIME
TIME#3s0ms
Update interval for updating the outputs
Input Const
rRelinquishDefault_IN
REAL
0.0
Setting the value of the output 'rPresentValue' in the lowest priority if the priority array is not populated
Input Const
diPriority_IN
DINT
16
Priority for the input 'rPresentValue_IN' (0 - 16, 0 = none, 1 = highest, 16 = lowest)
Input Const
eAccessRightEventDetectionEnable_IN
BACnet.CmpBACnet.IEC_BACNET_ACCESS
BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_HIDDEN
Definition of the access permission 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 permission for the property 'Event Enable' by a client
Input Const
eAccessRightNotifyType_IN
BACnet.CmpBACnet.IEC_BACNET_ACCESS
BACnet.CmpBACnet.IEC_BACNET_ACCESS.BACNET_ACCESS_HIDDEN
Definition of the access permission 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 permission 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 permission for the Notification Class by a client
Input Const
xHighLimitEnable_IN
BOOL
FALSE
Enable/disable of the limit 'rHighLimit_IN' (TRUE = enable)
Input Const
xLowLimitEnable_IN
BOOL
FALSE
Enable/disable of the limit 'rLowLimit_IN' (TRUE = enable)
Input Const
rDeadband_IN
REAL
1.0
Setting the value of the property 'rDeadband'
Input Const
rHighLimit_IN
REAL
99.0
Setting the value of the property 'rHighLimit'
Input Const
rLowLimit_IN
REAL
1.0
Setting the value of the property 'rLowLimit'
Input Const
eReliability_IN
BACnet.CmpBACnet.IEC_BACNET_RELIABILITY
BACnet.CmpBACnet.IEC_BACNET_RELIABILITY.RELIABILITY_NO_FAULT_DETECTED
Setting the current state of the property 'Reliability'
Input Const
rPresentValueDeviation
REAL
0.5
Setting the deviation (symmetric, plus/minus) of the value at the input 'rPresentValue_IN' to the previous value,
Input Const
xOutOfService_IN
BOOL
FALSE
Forced override for the output 'rPresentValue' with the highest priority ('xOutOfService' = TRUE) (Only for value objects)
Input Const
eUnits_IN
BACnet.CmpBACnet.IEC_BACNET_ENGINEERING_UNITS
BACnet.CmpBACnet.IEC_BACNET_ENGINEERING_UNITS.UNIT_DEGREES_C
Setting the value of the property 'eUnits'
Input Const
rCOVIncrement_IN
REAL
1.0
Setting the value of the property 'rCOVIncrement'
Input Const
rResolution_IN
REAL
0.1
Setting the value of the property 'rResolution'
Input Const
rMaxPresValue_IN
REAL
100.0
Setting the value of the property 'rMaxPresValue'
Input Const
rMinPresValue_IN
REAL
0.0
Setting the value of the property 'rMinPresValue'
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
eNotifyType_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
Setting the value of the property 'udiTimeDelay' in seconds
Input Const
udiNotificationClass_IN
UDINT
40
Setting the number of the associated Notification Class
Input Const
sDescriptionText
STRING(254)
‘’
Text portion of the description
Input Const
sObjectNameText
STRING(254)
‘’
Text portion of the object name of the server object to be created
Input Const
xEn
BOOL
TRUE
Enable / disable of communication ( TRUE = enabled )
Last updated

