A Data Communication Protocol for Building Automation and Control Networks
Developed under the auspices of the American Society of Heating, Refrigerating and Air-Conditioning Engineers (ASHRAE), BACnet is an American national standard, a European standard, a national standard in more than 30 countries, and an ISO global standard. The protocol is supported and maintained by ASHRAE Standing Standard Project Committee 135.
What is BACnet?
It is an acronym for "building automation and controls network". BACnet provides a sophisticated model for describing automation systems of all types. This model is based on the idea that for systems to be truly interoperable, there must be some agreement about various aspects of the overall operation and the individual systems themselves. BACnet organizes its model into these component parts:
- Objects to represent system information and databases, along with a uniform method for accessing both standardized and proprietary information
- Services which allow BACnet devices to ask each other to perform various functions in standardized ways
- LANs which provide transport mechanisms for exchanging messages across various types of networks and communications media
- Internetworking rules which permit the construction of large networks composed of different LAN types
- Conformance rules which define standardized ways of describing systems in BACnet terms, and standardized forms for describing which optional features of BACnet a given system provide.
Evaluating the qualities of a BACnet device
Not all BACnet devices are created equal. Most offer only a subset of the full BACnet implementation. The capabilities of each device are determined by its Conformance Class, available Function Groups, and its Protocol Implementation Conformance Statement (PICS).
BACnet defines six Conformance Classes that describe the general capabilities of a device. The higher the class number of a device, the more features it is required to provide. Essentially, the Conformance Class is a measure of the device's ability to communicate.
However, class is not sufficient by itself to specify a BACnet device. For example, a class 2 BACnet device must provide both the ReadProperty and WriteProperty services, but only one standard object (the Device object) is required. In practice, you would want to specify also those BACnet standard object types that you were looking for, so class by itself doesn't do the job.
The BACnet standard also describes a set of Functional Groups which are collections of BACnet features, like Services and Objects, necessary to carry out certain building automation functions like Alarm Reporting, File Transfer, and Virtual Terminals.
To facilitate the description of a BACnet implementation BACnet defines the Protocol Implementation Conformance Statement or PICS. The PICS defines the information that must be provided to identify all of the key features of a BACnet device. The PICS identifies the manufacturer, make and model, the conformance class, which functional groups are supported, which standard objects are present, which optional properties of those objects are implemented, the acceptable range of values for writable properties, what type of LANs are supported with what types of media, etc.
To learn more about the BACnet standard check out the following articles: