BACnet Alarming

Two methods of BACnet alarming are available: intrinsic and event enrollment (algorithmic change reporting).

Intrinsic Alarming

Intrinsic alarming is relatively simple. The object is defined as alarmable and configured with a few basic user-supplied alarm criteria. See the following table to see which BACnet objects support intrinsic alarming.

BACnet Objects Supported by BACnet Object Editor

Object

Intrinsic
Alarming

 

Object

Intrinsic Alarming

Accumulator

Yes

 

Integer Value

Yes

Alert Enrollment

Yes

 

Large Analog

Yes

Analog Input

Yes

 

Life Safety Point

Yes

Analog Output

Yes

 

Life Safety Zone

Yes

Analog Value

Yes

 

Load Control

Yes

Binary Input

Yes

 

Loop

Yes

Binary Output

Yes

 

Multistate Input

Yes

Binary Lighting

Yes

 

Multistate Output

Yes

Binary Value

Yes

 

Multistate Value

Yes

Bit String Value

Yes

 

Network Security

No

Calendar

No

 

Notification Class

No

Character String

Yes

 

Notification Forwarder

No

Command

No

 

Octet String Value

No

Date Pattern Value

No

 

Positive Integer

Yes

Date Time Pattern

No

 

Program

No

Date Value

No

 

Pulse Converter

Yes

Device

No

 

Schedule

No

Event Enrollment

No

 

Structured View

No

Event Log

Yes

 

Time Value

No

File

No

 

TrendLog

Yes

Global Group

Yes

 

TrendLog Multiple

Yes

Group

No

 

 

Event Enrollment (Algorithmic Change Reporting)

Event enrollment is an enhanced alarming feature more flexible and powerful than intrinsic alarming. It employs an event enrollment object (stored separately from the BACnet object being monitored) which can be combined with a notification class object to provide multiple messages to multiple locations (devices).

BACnet objects can have one or more event enrollment objects associated with them. However, an event enrollment object can only be associated with one BACnet object.

Algorithmic change reporting uses an event enrollment object, which references another source object, to generate alarm or event notifications. A property of the referenced object is applied to a standard algorithm (event type) to determine if there should be a change report. Occurrences of change are then reported to destinations based on a notification class object. For example, changes to the value of a referenced object can trigger event notifications to be sent to multiple management stations.

The following event-type algorithms are specified in the BACnet standard:

BACnet Event Type Algorithms

Event Type

Parameters

Description

CHANGE_OF_BITSTRING

  • Time Delay
  • Bitmask
  • Bitstring Values

Occurs when the value of the referenced property becomes equal to one of the values contained in the List_Of_Bitstring_Values. This event type generates a TO-OFFNORMAL transition and is cleared when the value of the referenced property is no longer equal to one of the value contained in the List_Of_Bitstring_Values.

CHANGE_OF_STATE

  • Time Delay
  • Property State Type
  • Values

Occurs when the value of the referenced property becomes equal to one of the values contained in the List_Of_Value, and this value remains equal for Time_Delay seconds. The type of event may only be applied to properties that have discrete or enumerated value, including Boolean. This event type generates a TO-OFFNORMAL transition.

CHANGE_OF_VALUE

  • Time Delay
  • Property Increment
  • Bitstring Values

Occurs when the absolute value of a referenced property changes by an amount equal to or greater than the Referenced_Property_Increment, and this condition remains for Time_Delay seconds. This event type generates TO-NORMAL transitions.

COMMAND_FAILURE

  • Time Delay
  • Feedback Property Reference

Occurs if the values of the referenced property and the Feedback_Property_Reference disagree for a time period greater than the Time_Delay parameter. It may be used to verify that a process change has occurred after writing to a property. The type of event only applies to properties that take on discrete value. This event type generates a TO-OFFNORMAL transition.

FLOATING_LIMIT

  • Time Delay
  • Low Diff Limit
  • High Diff Limit
  • Deadband
  • Setpoint Reference

Occurs if the referenced property leaves a range of values determined by the current value of the Set_Reference, High_Diff_Limit, Low_Diff_Limit, and Deadband. This type of event generates a TO-NORMAL transition.

OUT_OF_RANGE

  • Time Delay
  • Low Limit
  • High Limit
  • Deadband

Occurs if the referenced property leaves a range of values defined by the High_Limit and Low_Limit parameters and remains there for Time_Delay seconds. If the transition is to a value above the High_Limit or below the Low_Limit, the object generates a TO-OFFNORMAL transition.

BUFFER_READY

  • Notification Threshold

Occurs when a number of records specified by the Notification_Threshold have been entered into the log since the start of operation or the previous notification, whichever is most recent. This type of event generates a TO-NORMAL transition.

UNSIGNED_RANGE

  • Time Delay
  • Low Limit
  • High Limit

Occurs if the referenced property leaves the range of values from Low_Limit through High_Limit parameters and remains there for Time_Delay seconds. This type of event generates a TO-NORMAL transition.

CHANGE_OF_LIFE_SAFETY

  • Time Delay
  • Mode Property Reference
  • Life Safety Alarm Values
  • Alarm Values

Occurs when the value of the referenced property becomes equal to any of the values in the List_Of_Life_Safety_Alarm_Values and remains within the set of values in the list for Time_Delay seconds. This type of event generates a TO_OFFNORMAL transition.

DOUBLE_OUT_OF_RANGE

  • Current State
  • Monitored Value
  • Status Flags
  • Low Limit
  • High Limit
  • Deadband
  • Limit Enable
  • Time Delay
  • Time Delay Normal

Detects whether the monitored value exceeds a range defined by a high limit and a low limit. Each of these limits may be enabled or disabled. If disabled, the normal range has no lower limit or no higher limit respectively. In order to reduce jitter of the resulting event state, a deadband is applied when the value is in the process of returning to the normal range.

CHANGE_OF_CHARACTERSTRING

  • Current State
  • Monitored Value
  • Status Flags
  • Alarm Values
  • Time Delay
  • Time Delay Normal

Detects whether the monitored value matches a character string that is listed as an alarm value. Alarm values are of type BACnetOptionalCharacterString, and may also be NULL or an empty character string. A "match" of the monitored value with an alarm value is defined as follows:
(a) If the alarm value string is NULL, then it is not considered a match.
(b) If the alarm value string is empty (of zero length), then it is considered a match if and only if the monitored value is also an empty string.
(c) If the alarm value string is not empty, then it is considered a match if the alarm value string appears in any position within the monitored value string. For character-matching purposes, character case shall be significant and a match must be an exact match character by character.

For more information about BACnet algorithmic change reporting, see Section 13.3 of the ANSI/ASHRAE Standard 135-2008 (or later) and the documentation provided by the manufacturer of the BACnet device (field panel) providing the algorithmic change reporting.

Copying Alarms to Other Objects

The Copy All feature allows you to copy the intrinsic alarm and the associated event enrollment objects of a selected object to one or more target objects. This process creates new event enrollment objects for each target object, and overwrites the intrinsic alarm properties of the target objects with the intrinsic alarm properties of the selected object.

You can begin a copy procedure and then work with any other management station features, since the Copy All feature runs in the background. This includes starting a second alarm copy operation.