BACnet Protocol Stack tutorial Part 1

by Svetlana Lyons August 20, 2019

BACnet Protocol Stack tutorial Part 1

Let’s start with a basic. 

What is BACnet? 

BACnet is an ISO, ANSI, and ASHRAE standard network protocol for building automation. BACnet was developed by the American Society of Heating, Refrigerating, and Air-Conditioning Engineers (ASHRAE), and it was originally approved as an ASHRAE standard in 1995. The BACnet standard is maintained by ASHRAE committee SSPC 135.


BACnet is one of the most popular automation and control protocols used in products of leading industry vendors such as Honeywell, Johnson Controls, Siemens, Schneider, Trane, Azbil, and more. A new market research study indicates BACnet’s global market share has continued to rise over the last five years and now exceeds 60%.  


BACnet was designed to allow communication of building automation and control systems for applications such as heating, ventilating, and air-conditioning control (HVAC), lighting control, access control, and fire detection systems and their associated equipment. The BACnet protocol provides mechanisms for computerized building automation devices to exchange information regardless of the particular building service they perform. It can be used by computers, general-purpose direct digital controllers, and application-specific or unitary controllers with equal effect. One of the major advantages of this protocol is that it was developed from the beginning as an independent open standard automation protocol. More history you can find here.  


BACnet was originally developed to improve interoperability between building automation equipment, but its data definitions and flexible architecture makes it usable in a wide range of distributed control applications. 


BACnet is an object-oriented protocol. BACnet Objects are used to represent network-accessible control equipment. BACnet defines several standard object types, including: Accumulator, Analog Input/Output/Value, Averaging, Binary Input/Output/Value, Calendar, Command, Device, File, Life Safety Point, Life Safety Zone, Loop, Multi-state Input/Output/Value, Notification Class, Event Notification, Program, Pulse Converter, Schedule and Trend-Log. Each object contains a list of properties whose values indicate the current state of the control equipment. The BACnet standard specifies mandatory and optional properties for the standard object types, as well as mandatory behavior associated with some properties. 


A BACnet Server maintains a collection of Objects, including one Device Object, which describes the BACnet capabilities of the Server, and, starting with BACnet revision 17, one or more Network Port Objects, which describe the configuration and properties of network ports of the device. A Server will respond to BACnet service requests to read and manipulate its Objects. A BACnet Client generates service requests to monitor and control BACnet Servers. Some service requests that Servers will commonly respond to are Who-Is, Read-Property, and Write-Property. Servers can also generate service requests, such as I-Am and the service requests used to report events and alarms. Many BACnet controllers and workstations have both Client and Server functionality. Starting with BACnet revision 17, all BACnet devices have to provide the minimal server functionality as it is defined in the corresponding BACnet profile.


For transmission of packets, BACnet makes use of three popular LAN technologies: Ethernet™, ARCNET™, and LONtalk™. BACnet devices may also be directly connected to IP networks. BACnet includes an RS-485 master/slave data link layer and a point-to-point data link layer that were specially developed for BACnet. A BACnet internetwork can be formed from several BACnet LANs employing similar or different LAN technologies using BACnet-compliant routers.


The main references for BACnet are: 

  • ANSI/ASHRAE Standard 135-2016 “BACnet” (ISSN 1041-2336). The standard is available in book form or as an electronic document from ASHRAE
  • Direct Digital Control of Building Systems, by H. Michael Newman (ISBN 0-471-51696-1). This book, which was published in 1994, contains one chapter on data communications and one chapter describing BACnet prior to its approval as a standard. 1 Chapter 1. Introduction 
  • BACnet Gebäude-Automation 1.4, by Hans R. Kranz (ISBN 3-922420-02-8). This German-language book was published in 2005. 
  • Various articles about BACnet have been published in the ASHRAE Journal and elsewhere. The BACnet bibliography contains references for many of these articles. 

What is BACnet Protocol Stack?

BACnet is based on a four-layer collapsed architecture that corresponds to the physical, data link, network, and application layers of the OSI model as shown in the figure below. 

BACnet Architecture

What is the OSI model?

As Shengwei Wang specified in his book Intelligent Buildings and Building Automation there is an international standard that defines a model for developing multi-vendor computer communication protocol standards called The Open System Interconnection (OSI). The OSI model addresses the general problem of computer-to-computer communication and breaks this very complex problem into seven smaller, more manageable sub-problems, each of which concerns itself with a specific communication function. Each of these sub-problems forms a "layer" in the protocol architecture. 

BACnet layers

Why does it use only four layers? As the BACnet standard explains, this configuration was chosen after careful consideration of the particular features and requirements of BAC networks, including a constraint that protocol overhead needed to be as small as possible. 

BACnet Physical Layer

The physical layer provides a means of connecting the devices and transmitting the electronic signals that convey the data. The protocol defines rules for electrical signaling, addressing, error checking, network access, flow control, presentation, and message format. BACnet supports several data links:

  • Ethernet LAN
  • Arcnet LAN
  • MS/TP Token passing LAN
  • PTP Point-To-Point
  • LonTalk LAN
  • Data Link Layer

BACnet Data Link Layer

The data link layer organizes the data into frames or packets, regulates access to the medium, provides addressing, and handles some error recovery and flow control. 

Cimetrics BACstac protocol stack supports several standard BACnet data links. Some of these data links require lower-level operating system components to be installed. The BACnet/Ethernet data link uses the WinPCap interface. The BACnet/IP data link uses the TCP/IP protocol stack through the Windows Sockets API. The BACnet/PTP data link layer uses an unoccupied serial port. If your PTP DL is modem-configured, it will be capable of dialing and receiving calls. You can have any number of BACnet/Ethernet, BACnet/IP, Virtual, and BACnet/PTP ports.

BACnet Network Layer

Functions provided by the network layer include translation of global addresses to local addresses, routing messages through one or more networks, accommodating differences in network types and in the maximum message size permitted by those networks, sequencing, flow control, error control, and multiplexing. 

BACnet Application Layer

This layer handles the actual interface with the user’s application program. It also takes care of reliability and segmentation/sequencing mechanisms usually associated with transport and session layers. 




Svetlana Lyons
Svetlana Lyons

Author



Leave a comment

Comments will be approved before showing up.


Also in Cimetrics News

Bi-Weekly CyberSecurity Recap End of August 2019
Bi-Weekly CyberSecurity Recap End of August 2019

by Svetlana Lyons August 26, 2019

Cybersecurity development platform for IoT devices launched, Lessons Learned From Federal Agency Cybersecurity Projects, How to Make Smart Cities Safer and More Secure, We must treat cybersecurity as a public good. Here's why...

Read More

Bi-Weekly CyberSecurity Recap August 2019
Bi-Weekly CyberSecurity Recap August 2019

by Svetlana Lyons August 12, 2019

New Building systems cybersecurity program, How physical systems integrators can monetize cybersecurity, CABA research program “Intelligent Buildings and Cybersecurity”, How Local Governments Can Address Cybersecurity Challenges.

Read More

Bi-Weekly CyberSecurity Recap End of July 2019
Bi-Weekly CyberSecurity Recap End of July 2019

by Svetlana Lyons July 29, 2019

IoT Cybersecurity Improvement Act calls for deployment standards, Artificial Intelligence for Security, Public Cloud Security, NSA Launches Cybersecurity Directorate and more..

Read More

cimetrics.com Legal Terms and Conditions

June 29, 2016

cimetrics.com (the "Site") is owned by Cimetrics Inc. ("Cimetrics").

PLEASE READ THESE TERMS AND CONDITIONS CAREFULLY BEFORE USING THIS SITE.  YOU MAY NOT USE THIS SITE IF YOU DO NOT ACCEPT THE TERMS AND CONDITIONS.

Terms of Use

The information herein provided is for general informative purposes only, and no warranties or representations are made with respect thereto. The information may contain inaccuracies or typographical errors.  The information provided is subject to change at any time, and without notice. Changed information may include, but is not limited to, technical specifications and pricing. Binding declarations are only given after detailed enquiries.

BECAUSE THE INFORMATION IS NOT WARRANTED, ALL LIABILITY FOR THE ACCURACY OF THE INFORMATION IS EXPRESSLY EXCLUDED.

IN NO EVENT SHALL CIMETRICS, ITS OFFICERS, DIRECTORS, EMPLOYEES, PARENTS, AFFILIATES, SUCCESSORS OR ASSIGNS, BE LIABLE FOR ANY DIRECT, INDIRECT, PUNITIVE, INCIDENTAL, SPECIAL, CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF USE, DATA OR PROFITS, ARISING OUT OF OR IN ANY WAY CONNECTED WITH THE USE OR PERFORMANCE OF THE CIMETRICS SITE, WITH THE DELAY OR INABILITY TO USE THE CIMETRICS SITE OR RELATED SERVICES, THE PROVISION OF OR FAILURE TO PROVIDE SERVICES, OR FOR ANY INFORMATION, SOFTWARE, PRODUCTS, SERVICES AND RELATED GRAPHICS OBTAINED THROUGH THE CIMETRICS SITE, OR OTHERWISE ARISING OUT OF THE USE OF THE CIMETRICS SITE, WHETHER BASED ON CONTRACT, TORT, NEGLIGENCE, STRICT LIABILITY OR OTHERWISE, EVEN IF CIMETRICS HAS BEEN ADVISED OF THE POSSIBILITY OF DAMAGES. BECAUSE SOME STATES/JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, THE ABOVE LIMITATION MAY NOT APPLY TO YOU. IF YOU ARE DISSATISFIED WITH ANY PORTION OF THE CIMETRICS SITE, OR WITH ANY OF THESE TERMS OF USE, YOUR SOLE AND EXCLUSIVE REMEDY IS TO DISCONTINUE USING THE CIMETRICS SITE.

Passwords

If you have been given a Password in order to gain access to certain information on this Site, or any other affiliates’ website, then you agree, as a condition of receiving said Password, that you shall keep the Password confidential. You shall only disclose the Password to your employees or agents who have a need to know. You are solely responsible for all activities that occur using your Password.

If you become aware of any unauthorized use of your Password, you agree to notify Cimetrics immediately.  Cimetrics reserves the right to revoke your Password access at any time for any reason whatsoever.

Copyrights and Trademarks

All information provided on the web pages of Cimetrics.com is protected by copyright. It is prohibited to copy, process, modify or commercially distribute this information without the express written permission of Cimetrics.

Analytika, Infometrics, Metermetrics, BACstac, BACstac/DN, Secured by Cimetrics™ and BAS-o-matic are trademarks or registered trademarks of Cimetrics.  The Analytika, Cimetrics, Infometrics and Metermetrics logos are trademarks or registered trademarks of Cimetrics.  All other trademarks are owned by their respective companies.

Links to Other Websites

This Site may from time to time contain links to other websites ("Linked Site") or other Internet information sources ("Third Party Source"). These links are provided solely as a convenience to users of this Site and do not constitute an endorsement, sponsorship or recommendation by Cimetrics.  Each Third Party Source or Linked Site may have its own terms of use and privacy policy. Cimetrics is not responsible for the content, availability, or policies of any Linked Site or Third Party Source, or any additional links contained therein.

Privacy

Please read the privacy policy for this Site, which is incorporated into these Terms and Conditions by reference.