BACnet: Event Enrollment Object

The Event Enrollment object is defined by the standard as information related to the management of events for BACnet systems. Events are essentially changes in the value of any property concerning any object that meets specific criteria.

The central purpose for the Event Enrollment object is to define an event, and offer the developer a connection between the event occurrence and the transmission of notification messages.

The Event Enrollment object contains the following information for effective operation:

  • Event Type Description
  • Event Occurrence Notification
  • Device Notification

The following table will present the actual properties and associated datatypes of the Event Enrollment object from the BACnet standard:

Property Datatype
Object_Identifier BACnet Object Identifier
Object_Name Character String
Object_Type BACnet Object Type
Description Character String
Event_Type BACnet Event Type
Notify_Type BACnet Notify Type
Event_Parameters BACnet Event Parameter
Object_Property_Reference BACnet Device Object Property Reference
Event_State BACnet Event State
Event_Enable BACnet Event Transition Bits
Acked_Transitions BACnet Event Transition Bits
Notification_Class Unsigned
Event_Time_Stamps BACnet Array (3) of BACnet Time Stamp
Profile_Name Character String

The BACnet standard states that there’s a specific relationship among three properties:

  • Event_Type
  • Event_State
  • Event_Parameters

The Event_Type represents the algorithm used to determine the Event_State. The Event_Parameters property provides certain parameters required by the algorithm. The developer should pay special attention to the relationship of these three properties.

The following table from the standard will examine the three properties and their associated values:

Event_Type Event_State Event_Parameters
Change_of_ Bitstring Normal
OffNormal
Time_Delay
Bitmask
List_of_Bitstring_Values
Change_of_State Normal
OffNormal
Time_Delay
List_of_Values
Change_of_Value Normal
OffNormal
Time_Delay
Bitmask
Referenced_Property_Increment
Command_Failure Normal
OffNormal
Time_Delay
Feedback_Property_Reference
Floating_Limit Normal
High_Limit
Low_Limit
Time_Delay
Setpoint_Reference
Low_Diff_Limit
High_Diff_Limit
Deadband
Out_of_Range Normal
High_Limit
Low_Limit
Time_Delay
Low_ Limit
High_ Limit
Deadband
Buffer_Ready Normal Notification_Theshold
Change_of_Life_Safety Normal
OffNormal
Life_Safety_Alarm
Time_Delay
List_of_Alarm_Values
List_of_Life_Safety_Alarm_Values
Mode_Property_Reference

The next two examples from the standard will reveal the Event Enrollment object structure from an actual automation application. Specifically, the two examples will involve temperature control in a certain room of a building:

Property: Object_Identifier = (Analog Input, Instance 2)
Property: Object_Name = "Zone1_Temp"
Property: Object_Type = ANALOG_INPUT
Property: Present_Value = 86.0
Property: Description = "Receptionist Lobby Temp"
Property: Device_Type = "PT 3K RTD"
Property: Status_Flags = {FALSE, FALSE, FALSE, FALSE}
Property: Event_State = NORMAL
Property: Reliability = NO_FAULT_DETECTED
Property: Out_Of_Service = FALSE
Property: Update_Interval = 5
Property: Units = DEGREES_FAHRENHEIT
Property: Min_Pres_Value = 55.0
Property: Max_Pres_Value = 95.0
Property: Resolution = 0.1

The Analog_Input object above is assumed for the following Change_of_Value Event example, and the object is located in Device 12.

Property: Object_Identifier = (Event Enrollment, Instance 2)
Property: Object_Name = "Zone1TempCOV"
Property: Object_Type = EVENT_ENROLLMENT
Property: Description = "Zone 1 Temperature COV"
Property: Event_Type = CHANGE_OF_VALUE
Property: Notify_Type = EVENT
Property: Event_Parameters = (5, 0.25)
Property: Object_Property_Reference = ((Device, Instance 12),(Analog Input, Instance 2), Present_Value)
Property: Event_State = NORMAL
Property: Event_Enable = (TRUE, FALSE, FALSE)
Property: Acked_Transitions = (TRUE, TRUE, TRUE)
Property: Event_Time_Stamps = ((23-MAR-95,18:50:21.2),(*-*-*,*:*:*.*),(23-MAR-95,19:01:34.0))

Written by: Scott Cosby

© Chipkin Automation Systems 2007