BACnet

From Wikipedia, the free encyclopedia

Jump to: navigation, search

BACnet is a Data Communications Protocol for Building Automation and Control Networks. It is an ASHRAE, ANSI, and ISO standard protocol.

Contents

[edit] Definition

BACnet, an ASHRAE building automation and control networking protocol, was designed specifically to meet the communication needs of building automation and control systems for applications such as heating, ventilating, and air-conditioning control, lighting control, access control, and fire detection systems and their associated equipment. The BACnet protocol provides mechanisms by which computerized building automation devices can exchange information, regardless of the particular building service they perform. As a result, the BACnet protocol may be used by head-end workstation, general-purpose direct digital controllers, and application specific or unitary controllers with equal effect.

[edit] History

The development of the BACnet protocol began in June, 1987, in Nashville, Tennessee[1], at the inaugural meeting of the Standard Project Committee (SPC). H. Michael Newman, the first chairman of the committee, presided over the meeting. The first meeting produced a list of desirable attributes of a good protocol, and what the BACnet protocol eventually became: Interoperability, Efficiency, Low Overhead, Highest Common Multiplier, Compatibility with other applications and networks, Layered OSI model Network, Flexibility, Extensibility, Cost Effective, Transmission Reliability, Apply to real-time processes, Maximum Simplicity, Allow priority schemes, Medium access fairness, and Stability under realistic loads.

The committee worked at reaching consensus using working groups to divide up the task of creating a standard. The working groups focused on specific areas and provided information and recommendations to the main committee. The first three working groups were the Data Type and Attribute Working Group, Primitive Data Format Working Group, and the Application Services Working Group.

BACnet became ASHRAE/ANSI Standard 135 in 1995, and ISO 16484-5 in 2003. The Method of Test for Conformance to BACnet was published in 2003 as BSR/ASHRAE Standard 135.1. BACnet is under continuous maintenance by the ASHRAE Standing Standard Project Committee 135.

BACnet had an almost immediate impact on the HVAC controls industry, which by 1996 was dominated by Siemens Building Technologies. Although several manufacturers had developed BACnet devices, in 1996 a smaller company, Alerton, announced a complete BACnet product line for HVAC controls, from the operator's workstation down to small VAV controllers. Automated Logic Corporation and Delta Controls soon followed suit. Other current examples of suppliers offering full lines of BACnet building automation products are Siemens Building Technologies, Johnson Controls, Inc., Teletrol Systems, TAC, KMC Controls, Contemporary Controls Ltd, Reliable Controls and PRIVA. Carrier has plans to transition completely over to BACnet in the next few product cycles.

H. Michael (Mike) Newman, Manager of the Computer Section of the Utilities and Energy Management Department at Cornell University, served as the BACnet committee chairman until June, 2000, when he was succeeded by his vice-chair of 13 years, Steven (Steve) Bushby from NIST. During Steve Bushby's four-year term as committee chair the BACnet standard was republished twice, in 2001 and 2004, each time with new capabilities added to the standard. The 2001 version featured, among other things, extensions to support fire / life-safety systems. In June, 2004, 17 years after the first BACnet meeting and back in Nashville, William (Bill) Swan (a.k.a. "BACnet Bill") from Alerton began his four-year stint as committee chair. During his term the number of committee working groups grew to 11, pursuing areas such as support for lighting, access control, energy utility/building integration and wireless communications. In June of 2008, in Salt Lake City, Dave Robin from Automated Logic Corporation took over the reigns as the new committee chair after serving 4 years as vice chair.

In January 2006 the BACnet Manufacturers Association and the BACnet Interest Group of North America combined their operation in a new organization called BACnet International. BACnet International is a broad-based member organization that encourages the successful use of BACnet in building automation and control systems through interoperability testing, educational programs and promotional activities. BACnet International members include organizations involved or interested in the design, manufacturing, specification, installation, commissioning and maintenance of building automation equipment that utilizes BACnet.

[edit] Protocol Overview

The BACnet protocol defines a number of services that are used to communicate between building devices. The protocol services include Who-Is, I-Am, Who-Has, I-Have, which are used for Device and Object discovery. Services such as Read-Property and Write-Property are used for data sharing.

The BACnet protocol defines a number of Objects that are acted upon by the services. The objects include Analog Input, Analog Output, Analog Value, Binary Input, Binary Output, Binary Value, Multi-State Input, Multi-State Output, Calendar, Event-Enrollment, File, Notification-Class, Group, Loop, Program, Schedule, Command, and Device.

The BACnet protocol defines a number of data link / physical layers, including ARCNET, Ethernet, BACnet/IP, Point-To-Point over RS-232, Master-Slave/Token-Passing over RS-485, and LonTalk.

[edit] What Is BACnet?

BACnet is the term commonly used to refer to the ANSI/ASHRAE Standard 135- 1995, adopted and supported by the American National Standards Institute (ANSI) and the American Society of Heating Refrigeration and Air-Conditioning Engineers (ASHRAE). BACnet stands for Building Automation and Control network. BACnet is a true, non-proprietary open protocol communication standard conceived by a consortium of building management, system users and manufacturers.

The 500-page protocol specification is a detailed description of how a BACnet system is to function. It identifies all the rules for system components to share data with each other, how this is to be done, the communications media that can be used, which functions can be available, and how this information is to be interpreted. In short, it sets the ground rules for various systems to openly communicate with each other regardless of the manufacturer.

BACnet is an entirely non-proprietary system. This means that there are no proprietary chip sets or protocols used. Information regarding the comparison of BACnet and LonWorks (a protocol technology often compared to BACnet) is contained in an online white paper from BACnet International (1996) and an online white paper from Strata Resource Inc.(2006).

There is often considerable confusion and misunderstanding regarding BACnet, other systems and their compatibility with BACnet. The industry is in the process of learning this technology, so it is important to understand the various levels and options available when interfacing a system with BACnet.

[edit] The Development of BACnet

For many years, as building automation systems became popular, more and more users were demanding alternatives to proprietary systems, which prevented competitive bidding or serviceability. They objected to being "locked in" to one particular manufacturer. A consensus and industry attitude has been developing to respond to this need.

Most solutions to providing interoperability are proprietary gateways or converters. For instance, one particular manufacturer may have found a way to read the code of another manufacturer and produce a device that lets the two systems communicate. Sometimes the development is a cooperative effort; other times it is not. The end result, however, is that one manufacturer could provide either a new or different operator's terminal or global controller for a different manufacturer's existing system.

This type of approach has specific restrictions. First, gateways and converters are expensive and difficult to develop, even with the cooperative effort of another manufacturer and more so when there is no cooperation. Second, these devices tend to have a very short life. Systems change generations quickly, and the gateway often has to be redeveloped and upgraded for each generation in order to remain effective. Third, these gateways can often be limited compared to what a single manufacturer's system can provide. The seamless integration of full system features is often not a reality. Support and documentation can be nearly impossible to keep up with under the best of circumstances. Lastly, until BACnet, there was no industry standard by which manufacturers could design a system to describe how it communicates, including the message structures, communications mediums and processes that enable systems to interoperate.

There were other control-network protocols in existence before -- and coinciding with -- the development of BACnet but they didn’t meet all of the desired criteria at the time: primarily, that the standard had to be technically sound, be able to handle buildings data, be truly non-proprietary, and be easy to implement.

Modbus: One such existing protocol -- the Modbus protocol, created by the ModiCon Corporation -- filled some of the needs of the building-automation community prior to BACnet but was not (at the time) designed for the needs of buildings data. It came from the industrial world. Also, it was and is (as of 2008) proprietary; albeit, with an open API.

LONWORKS: One such protocol that was in development during the development of BACnet was the LonTalk protocol (known generally as LonWorks technology, or simply LON for Local Operating Network). LON was based on an integrated circuit (the “Neuron Chip”) with three, 8-bit processors onboard -- one for handling the physical-network connections, one for the application, and one for hand-shaking between the other two. Since standardization (ANSI/CEA-709.1), LON has been implemented on many different processors by nearly a dozen vendors. BACnet can use LON as a carrier for BACnet messages; but at the upper layers (of the ISO 7-Layer protocol definition), the two protocols are not compatible for data exchange without an application-layer protocol-to-protocol gateway.

However, LON was still proprietary until 1999[2] and not fully developed until 1992; thus, prior to that, the buildings industry felt the need to create a standard. Therefore, in 1987, the BACnet Committee was formed within ASHRAE and began to develop a standard that the industry could adopt. It was not an easy goal to achieve a standard that was technically sound, was able to handle buildings data, was truly non-proprietary, and was easy to implement; however, in June 1995, after years of industry input and reviews, ASHRAE adopted BACnet as a new standard for the industry.

[edit] What does BACnet do?

BACnet ends the frustration of proprietary systems, increases competitiveness and increases consumer choices. The vision throughout the BACnet development process has been to generate a system that permits complete "interoperability" between different manufacturer's building automation control products. In reaching this goal, the BACnet Committee produced definition standards for BACnet data, control and communication functions. In part, this was accomplished by defining a number of Local Area Networks (LANs) through which BACnet messages can be transmitted.

This variety of LANs defines a range of options for any given project. Briefly, they are as follows:

[edit] PTP (point-to-point)

PTP is unique to BACnet and provides for internetworked communications over modems and voice grade phone lines. PTP accommodates modern modem protocols (V.32bis and V.42) and also supports direct cable connections using the EIA-232 signaling standard. Speed is limited to from 9.6 kbit/s to 56.0 kbit/s.

[edit] MS/TP (master slave/token passing)

MS/TP is also unique to BACnet and is implemented using the EIA-485 signaling standard. This is a shielded twisted-pair (STP) LAN operating at speeds from 9.6 kbit/s to 76.8 kbit/s. This LAN type is low cost and particularly suitable for unitary controller communications.

[edit] ARCNET

(ANSI/ATA 878.1) ARCNET is a token bus standard, and devices typically support it using single-source chips that handle network communications. ARCNET can run on a variety of media at different speeds-from 150 kbit/s on EIA-485 (STP) up to 7.5 Mbit/s over coaxial cable, STP, or fiber optics. Typically, ARCNET runs at 2.5 Mbit/s over twisted pair.

[edit] Ethernet (ISO 8802-3)

Ethernet is a popular international LAN standard widely deployed in commercial applications. Ethernet is fast, running from 10 Mbit/s to 10Gbit/s, and runs on a variety of media-STP, coaxial cable, or fiber optics. Like ARCNET, Ethernet requires a special chip to handle network communications.

[edit] LonTalk

LonTalk is a control networking protocol developed by Echelon Corporation, introduced in 1989. The protocol has been ratified as a standard by numerous national standards setting bodies and is therefore more commonly known today by its respective standards designations. These designations include ANSI 709.1; EN 14908; GB/Z 20177.1-2006; IEEE 1473-L; and SEMI E54. The protocol is typically implemented in an 8 bit processor commonly known as a Neuron Chip available from Toshiba and Cypress Semiconductor, or from Echelon (in the form of smart transceivers). 32 bit chip designs utilizing the protocol are available from companies such as Loytec GmgH or Altera Corporation (Cyclone II/III FPGA on a NIOS II soft core).

[edit] BACnet's Method of Exchanging Messages

In defining the format for BACnet communications, the Standards Committee chose a flexible, object-oriented approach. All data in a BACnet system is represented in terms of "objects," "properties" and "services." This standard method of representing data and actions is what enables BACnet devices from different manufacturers to interoperate. Understanding this object-oriented approach and its terms is essential to understanding BACnet.

[edit] Objects

All information in a BACnet system is represented in terms of objects. An object might represent information about a physical input or output, or it may represent a logical grouping of points that perform some function, such as a setpoint. Every object has an identifier (such as AI-1) that allows the BACnet system to identify it. In this regard, an object is much like what is now commonly known as a "data point" in the HVAC community. Where an object differs from a data point is that a data point would typically have a single value associated with it, whereas an object consists of a number of prescribed properties, only one of which is the present value. It is only through its properties that an object is monitored and controlled.

To help clarify this difference, compare the room temperature as a data point to an analog input (AI) object that reports room temperature in a BACnet system. Both are associated with the space temperature read from a physical input. When you reference the data point, however, typically the only thing that it indicated was the room temperature, perhaps 72. The AI object also reports the room temperature as 72. The key difference is that 72 is the Present-value property of the AI-1 object. Other properties of the object convey more information: the Units property tells the system that the value is in °F, the Device-type property that the hardware is a 10kΩ thermistor, and the Description property that it is a space temperature. As you can see, the AI object is much more robust than the data point. All objects have some required properties and some that are optional.

[edit] Properties

As indicated in the discussion of objects above, objects are monitored and controlled only through their properties. BACnet specifies 123 properties of objects[citation needed]. Three properties; Object-identifier, Object-name, and Object-type must be present in every object. BACnet also may require that certain objects support specific additional properties. The type of object and the type of device in which that object resides determine which properties are present. Some properties can accept writes, and others can only be read.

[edit] Services

When a property is read or written to, that act is known as a service. Services are how one BACnet device gets information from another device, commands a device to perform certain actions (through its objects and properties, of course), or lets other devices know that something has happened. The only service that is required to be supported by all devices is the Read-property service. There are a total of 32 standard services.

As a system developer or user, you don't need to be concerned with the execution or processing of service requests, which will be transparent and automatic. As a specifier or engineer, however, you will need to know what objects and services are supported by which devices. This information is found in the device's protocol implementation conformance statement (PICS).

[edit] Prioritization

Write commands are sent with an optional priority parameter. This provides a mechanism to resolve contending commands. Objects which support BACnet prioritization (commandability) use the prioity value to determine which priority slot to place the new value. The object then uses the value in the highest "slot" to determine it's value. Not all objects support prioritization. Objects which do not support prioritization will ignore the priority parameter if it's included in the write property command.[3]

[edit] Conformance Classes and the Device PICS

(ATTENTION: Conformance Classes are obsolete!)

Because not all devices need to have the same level of functionality, BACnet defines conformance classes that categorize the capabilities and functionality of devices. All devices of a certain conformance class will have a minimum set of required features (in the form of objects and services). Some other features can be optional. BACnet insists that this information is made public in a protocol implementation conformance statement (PICS)-basically a list of features that the device supports. The PICS lists what objects are present in the device and whether the device initiates a service request (asks or commands) or executes the request (responds or acts). The PICS also provides you with the conformance class of the device. By comparing a device's PICS with project requirements or with another vendor's PICS, you can determine how well a BACnet product "fits" a given application.

[edit] References

  1. ^ BACnet protocol June, 1987, in Nashville, Tennessee
  2. ^ ANSI approved standard EIA/CEA-709.1-A-1999
  3. ^ Write command and priority Arrays

[edit] External references

[edit] BACnet Working Groups

[edit] Open Source BACnet Software

Personal tools