The Averaging object is described by the BACnet standard as a recording medium of visible value characteristics over a specific time interval.These specific sampled values may take the following forms in the object:
- Boolean
- Integer
- Unsigned
- Enumerated
- Real
The following table will present the actual properties and associated datatypes of the Averaging object from the BACnet standard:
| Property | Datatype |
| Object_Identifier | BACnet Object Identifier |
| Object_Name | Character String |
| Object_Type | BACnet Object Type |
| Minimum_Value | Real |
| Minimum_Value_Timestamp | BACnet Date Time |
| Average_Value | Real |
| Variance_Value | Real |
| Maximum_Value | Real |
| Maximum_Value_Timestamp | BACnet Date Time |
| Description | Character String |
| Attempted_Samples | Unsigned |
| Valid_Samples | Unsigned |
| Object_Property_Reference | BACnet Device Object Property Reference |
| Window_Interval | Unsigned |
| Window_Samples | Unsigned |
| Profile_Name | Character String |
The developer should pay particular attention to the following properties of this object:
- Window_Interval property
- Window_Samples property
- Object_Property_Reference property
The Window_Interval property indicates the period of time, usually in seconds which the minimum, maximum, and average values are calculated.
The Window_Samples property represents the number of samples to be taken during the timeperiod within the Window_Interval property. In addition, the Window_Samples must be greater than zero and all implementations should support at least 15 samples. The sample may represent an instant or continuously calculated sample, which will be considered a matter for the developer.
The Object_Property_Reference property identifies the object and property whose value will be sample during the Window_Interval. The referenced object may reside in the device that contains the Averaging object or within other supported devices.
The Averaging object uses a specialized technique referred by the standard as a “sliding window” that maintains a buffer of samples distributed over the specified time interval. At every time interval a new sample is replaces the oldest sample from the buffer.
The buffer maintains an indication for each sample that permits the average calculation and minimum/maximum algorithm to determine the number of valid samples in the buffer.
The following example from the BACnet standard will present the Averaging object structure from an actual automation application. Specifically, this example focuses on the average and maximum electrical usage in kilowatts (KW) on a specific floor of a building:
Property: Object_Identifier = (Averaging, Instance 1)
Property: Object_Name = “FLR 12 DEMAND”
Property: Object_Type = AVERAGING
Property: Minimum_Value = 2.4
Property: Minimum_Value_Timestamp = (16-DEC-1999,13:15:07.32)
Property: Average_Value = 12.7
Property: Maximum_Value = 18.8
Property: Maximum_Value_Timestamp = (16-DEC-1999,13:06:12.19)
Property: Description = “Floor 12 Electrical Demand”
Property: Attempted_Samples = 15
Property: Valid_Samples = 14
Property: Object_Property_Reference = (Analog Input, Instance 12)
Property: Window_Interval = 900
Property: Window_Samples = 15
Written by: Scott Cosby
© Chipkin Automation Systems 2007
Subscribe To The RSS Feed!
To catch many more articles like this in the future, make it easy on yourself and subscribe to me via RSS. You will not regret it!
Do you have a question?
We will do our best to try and solve any building automation, protocol, integration problem you may have
0 Responses to “BACnet: Averaging Object”