BACnet Basics
Ben H. Dorsey IIIVP, Marketing & Communications
KMC Controls, Inc.
Preview
• BACnet—the standard (for the techie types)• BACnet—the community (for everyone)• BACnet—and you (hey, for you)
2
Caution
• BACnet is BIG
3
Part 1
BACnet—the standard
What is BACnet?
• An open standard• A data communications protocol• An acronym: Building Automation and Control
Networks• A means of automating buildings and
integrating building systems• A way of life!
5
So . . .
• BACnet is a data communications protocol and an agreed-upon set of rules for creating interoperable networks of building systems.
6
Encompassing . . .
• Mechanical systems• HVAC Central Plant (Chillers, Boilers, Large Air
Handlers)• Lighting• Perimeter and Object Security• Fire and Life Safety• Elevators• The integration of all of the above.
7
Who did it?
• A working group (standard project committee) of the American Society of Heating, Refrigerating and Air-Conditioning Engineers (ASHRAE).
• Began work in 1987 under tremendous opposition (some said it would NEVER be done).
• Published as a standard in 1995.• Supported and maintained by ASHRAE
Standing Standard Project Committee 135.
8
It’s Alive!!!
• By design, the standard is under continual revision.
• First published in 1995.• In recent times, most manufacturers’
products have been designed to the 2008 edition of standard.
9
Not a Reactive Process
• Addenda are issued as the committee works.
• Public review and comments are mandatory and common.
• So, for example, when 2008 was issued, it consisted of 2004 + previously issued addenda. (No surprises.)
10
What the Standard Defines
• In essence, the standard defines the messages that devices exchange and how they are delivered.
11
message transport
Further . . .
• The rules of the protocol apply to– Electrical signaling– Addressing– Network access (master/slave, peer-to-peer)– Error checking– Flow control– Message sequencing, segmentation, checkpointing – Presentation format (compression, encryption)– Message format
12
Source: Mike Newman, BACnet pioneer
Pyramid Scheme
BIBBSBIBBS
ServicesServices
DevicesDevices
ObjectsObjects
PropertiesProperties
13
• The protocol can be viewed as a matrix of layers.
Properties
BIBBSBIBBS
ServicesServices
DevicesDevices
ObjectsObjects
PropertiesProperties
14
• The nucleus to the BACnet atom—the smallest piece of BACnet information
• Properties can be read and written.
• Properties can provide command control.
• They consist of names and values.
Properties
• Example: high_limit = 78.0• The standard requires some properties; other
properties are optional; still others can be proprietary.
• Required properties must be implemented for each object type.
• Optional properties do not have to be implemented, but if they are, they must conform to the specification.
15
Property Identifiers
• Property types 0 – 511 are reserved as standard.
• 166 of these are currently defined in the BACnet specification.
• Property types above 511 are proprietary and unique to the vendor.
• The Vendor ID property is used to identify the manufacturer.
16
Objects
BIBBSBIBBS
ServicesServices
DevicesDevices
ObjectsObjects
PropertiesProperties
17
• Objects are the fundamental building blocks (atoms) of the standard.
• Objects represent data that originates in physical inputs, physical outputs, or software processes.
• Each BACnet Object possesses a number of properties.
Object Types
Binary Input Binary Output Binary Value Analog Input Analog Output
Analog Value Multi-state Input Multi-state Output
Multi-state Value
Averaging
PID Loop Trend Log Command Calendar Schedule
Life Safety Zone
Life Safety Point
Notification Class
Event Enrollment
Program
File Group Device Pulse Converter
Accumulator
18
• The standard specifies many types of objects:
Objects
• Vendors can implement proprietary object types.
• When they do so, they use standard data types to promote interoperability.
19
Object IDs
• Numerical identifier that combines object type and instance number.
• Object types 0 – 127 are reserved to identify standard BACnet objects.
• Object types 128 – 1023 are used to identify proprietary objects.
20
Object IDs
• BACnet devices will support any mixture of object types up to a limit of 4,194,303 instances.
• Object IDs are typically referred to in this manner:Analog Input, 5
21
Objects—Summary
• Objects standardize the organization of data to facilitate the exchange of data between different vendors’ products.
22
Devices
BIBBSBIBBS
ServicesServices
DevicesDevices
ObjectsObjects
PropertiesProperties
23
• There are several device types or profiles specified by the standard:– Advanced Operator Workstation
(B-AWS)– Operator Workstation (B-OWS)– Operator Displays (B-OD)– Building Controller (B-BC)– Advanced Application Controller
(B-AAC)– Application Specific Controller
(B-ASC)– Smart Actuator (B-SA)– Smart Sensor (B-SS)– Other BACnet devices (B-Oth)
Services
BIBBSBIBBS
ServicesServices
DevicesDevices
ObjectsObjects
PropertiesProperties
24
• Think of BACnet services as the messages that BACnet devices send to each other.
• Some services read and write properties of one or more objects.
• Other services send notification of alarms or special events.
• Still other services read and write files.
Services
• BACnet services follow a Client-Server model.– A BACnet client is a device that requests a service– A BACnet server is a device that performs a service
25
Categories of Services
• Alarm and Event– Routing & event notification
• File Access– Accessing & manipulating files contained in devices
• Object Access– Read and write properties – Create and delete objects– Manipulate lists of data
• Remote Device Management– Remote monitoring and control of devices
• Virtual Terminal– Used by a client user to establish a connection to an application
program server in another BACnet device.
26
Services—ReadProperty
27
We wish to read the present value for an analog input called “SPACE_TEMP”
Service= ReadProperty‘ObjectIdentifier’ = (Analog Input, Instance 5)‘PropertyIdentifier’ = Present_Value
Operator Workstation(client)
MS/TP AAC(server)
Service= ReadProperty‘ObjectIdentifier’ = (Analog Input, Instance 5)‘PropertyIdentifier’ = Present_Value‘Value’ = 72.3
Assuming the target machine can locate the object with this ID and the requested properties, the result would be:
The result indicates that the present value of “SPACE_TEMP” is 72.3
Source: ANSI/ASHRAE Standard 135-2004, page 494
BIBBS
ServicesServices
DevicesDevices
ObjectsObjects
PropertiesProperties
28
• BACnet Interoperability Building Blocks
• BIBBS are collections of services
• BIBBS define 5 areas of interoperability:– Data Sharing– Alarm and Event
Management– Scheduling– Trending– Device and Network
Management
BIBBS
BIBBs Summary Example: B-BC• Data Sharing
– Ability to provide the values of any of its BACnet objects– Ability to retrieve the values of BACnet objects from other devices– Ability to allow modification of some or all of its BACnet objects by another device– Ability to modify some BACnet objects in other devices
• Alarm & Event Management– Generation of alarm/event notifications and the ability to direct them to recipients– Maintain a list of unacknowledged alarms/events– Notifying other recipients that the acknowledgement has been received– Adjustment of alarm/event parameters
• Scheduling– Ability to schedule output actions, both in the local device and in other devices, both binary and analog,
based on date and time• Trending
– Collection and delivery of (time, value) pairs• Device & Network Management
– Ability to respond to queries about its status– Ability to respond to requests for information about any of its objects– Ability to respond to communication control messages– Ability to synchronize its internal clock upon request– Ability to perform re-initialization upon request– Ability to upload its configuration and allow it to be subsequently restored– Ability to command half-routers to establish and terminate connections
29
Transport Options
• BACnet IP• BACnet Ethernet (8802-3)• Master Slave/Token Passing (MSTP)• ARCnet• LonTalk• Point-To-Point (PTP)
30
Transport Comparison
BACnet IP
Popular, fast. No real performance difference between this and 8802-3.
Use BBMD or PAD router to get across an IP router.
Broadcast issues.
BACnet 8802-3Popular, fast. No real performance difference between this and IP.
Cannot get across IP routers.
MSTP
Very popular, especially as a low-level bus technology for AACs and ASCs. Uses EIA-485 signaling over twisted pair wiring.
Lower performance.
31
BACnet Layers vs OSI Layers
32
Standard OSI Reference Model
Application
Presentation
Session
Transport
Network
Data Link
Physical
Equivalent OSI Layer
Application
Network
Data Link
Physical
BACnet Layers
BACnet Application Layer
BACnet Network Layer
ISO8802-2 (IEE 8802.3)Type 1
Source: ANSI/ASHRAE Standard 135-2004, page 9
ISO8802-3 (IEE 802.3)
ARCNETLonTalk
MS/TP
EIA-485 EIA-232
PTP
Auxiliary Devices
• Routers– Useful when networks using different BACnet
transport options need to exchange data.*
33
Operator Workstation on BACnet IP network
Router
BACnet MSTP Controller Network
*This concept is referred to as “Internetworking.”
Auxiliary Devices
• Gateways– Useful when devices on a BACnet network
must exchange data with devices on a non-BACnet network.*
34
BACnet network
Gateway
Proprietary Network*This is also Internetworking.
So, what’s the difference?
• A router is really a pass-through device. It doesn’t change the form or content of the message but just the packaging—much like repackaging a standard USPS letter for sending via Fedex.
• A gateway has to translate and is inherently more complex. It opens the letter, translates it into a second language, and puts it back into some sort of envelope and sends it on.
35
Source: Mike Newman, BACnet pioneer
How Does BACnet Work?
36
Transport System •LANs•Internetworking
Representing Information
•Objects
Making Requestsand Interoperating
•Services
Ap
plic
atio
n L
ang
uag
e
Source: David Fisher, PolarSoft
Typical System View
37
Management Level
Integration Level
Field Controller Level
Operator Workstation
Ethernet or IP LAN
Router Gateway
MSTP LAN Proprietary LAN
ASCs & AACs
Application Level
Proprietary Controllers
BACnet-enabled Applications & other apps
Part 2
BACnet—the community
Engineers & Educators• Members of ASHRAE
– 12 standard regions with 7-16 chapters in each– Beyond America, ASHRAE reaches into Canada and
South America.– Beyond the Americas, ASHRAE reaches into
• Hong Kong Middle East Scotland• Malaysia India Wales• Philippines Africa Ireland• Singapore Europe• Taiwan Scandinavia• Thailand England
39
SSPC 135
• Consists of working groups:– Applications– Lighting Applications– Life Safety & Security– Network Security– Objects & Services– Utility Integration– XML & Web Services
40
Manufacturers, Integrators, Owners
• BACnet International– Formed in January 2000 to "encourage the
successful use of the data communication protocol, "BACnet", in building automation and control systems, through interoperability and compliance testing, educational programs, and promotional activities."
41
Corporate BI Members (partial)
42
Plugfests• Among the many initiatives undertaken by BACnet
International are interoperability workshops or “plugfests.”
• Dozens of member companies routinely take part in these 3-day events for validating product interoperability.
43
Interests Groups
• BIGs consist of users, integrators, manufacturers, contractors, and other interested parties.
44
BIG-SU BIG-FI
BTL
• BACnet Testing Laboratories– Established under direction and
continued supervision of BACnet International in Feb 2000
– “Our goal is to improve interoperability between BACnet products through a combination of BTL lab testing, multi-vendor interoperability testing, and adherence to the BTL's device implementation guidelines.” (former BTL Manager)
– Lists products by issuing mark
45
BTL
• Has freedom to make requirements above and beyond the minimum requirements specified in the standard.
• Manufacturers are given pretest guidelines.• Requires an extended engineering
commitment of manufacturers.
46
Part 3
BACnet—and you
BACnet & You
• Why go BACnet?• Engineer & owner considerations• Is it really interoperable?• What’s next?
48
BACnet Benefits• It is an accepted standard domestically
(ASHRAE/ANSI 135-2008), in Europe (CEN TC 247), and worldwide (ISO 16484-5).
• It was developed specifically for building systems.
• While HVAC is at its roots, the standard nicely incorporates other integrated functions.
49
BACnet Benefits
• It can be implemented on low-cost networks (dedicated or shared) and is extremely flexible in LAN types.
• BACnet devices are cost-competitive with long-standing proprietary devices.
• The standard specifically provides for scheduling, trending, and alarming.
50
BACnet Benefits
• It is easily scalable at all levels for any size job.• It is completely open and not dependent on
specific hardware.• It provides for automatic device discovery
(saving installation costs).
51
BACnet Challenges
• It does not specify hardware configuration. Therefore, configuration tools (required for initial device setup) vary by manufacturer.
• No standard application types are defined; therefore, it’s not yet plug-n-play.
52
Considerations
• Become familiar with PICS– Protocol Implementation Conformance
Statements– Defined format– Specify device type, BIBBS supported, Object
Types supported, and Data Link layer transport options.
– Required for each BACnet device– Available to you
53
Considerations
• Become familiar with PICS.• Look for “native” BACnet.
– Native BACnet refers to a device that inherently represents data in BACnet format and communicates utilizing BACnet messaging. Native BACnet devices were designed from the ground up as BACnet (as opposed to adding BACnet functionality to a previously designed product).
54
BACnet “Native” BACnet
Considerations
• Become familiar with PICS.• Look for “native” BACnet.• Specify BTL listed products.
– This is the BACnet community’s seal of approval.
55
Considerations
• Become familiar with PICS.• Look for “native” BACnet.• Specify BTL listed products.• Demand training.
56
Is it really Interoperable?
57
Interoperability Case Studies
• We’re populating our web site and the web site of BACnet International with numerous case studies that illustrate multi-vendor interoperability and systems integration:– http://www.kmccontrols.com/products/projectshome.aspx – http://www.bacnetinternational.net/success/stories.php
• One such KMC project was awarded “Best in Show” by BACnet International as the top interoperable project published on the BI web site in 2010:– Kuwait Oil Company Project
58
Where is BACnet Going?
• BACnet support of IP communications lays the necessary groundwork for enterprise-wide challenges.
• To meet these challenges, however, will require greater utilization of Internet protocols developed in the IT realm.
59
XML & Web Services• Not really applicable to field-level controllers but high-
level communications.• XML provides for examining high-level data while not
being dependent on the communication protocol of the BAS, such as BACnet.
• So, BACnet manufacturers need to support XML in the operator workstation, for example.
• Further, web services, such as .NET, provide for greater possibilities in information exchange.
• The SSPC 135 XML Working Group is defining how data can be exchanged consistently between building automation systems and other enterprise management systems.
60
Further Resources
• www.bacnet.org• www.bacnetinternational.org
61
So, what are you waiting for?
62