Interoperability at the management level of building automation systems: An OPC UA information model for BACnet
In modern building automation systems a plethora of different networking technologies exists. Therefore, interoperability between devices using various technologies is a key requirement. The use of Web Services as a platform- and technological-independent method of communication is a promising approach to address this challenge. Since IP extensions to available technologies are more and more established in building automation systems the network infrastructure and necessary protocols for Web Services communication are already present. However, providing appropriate concepts to model information that can be accessed in a generic way are still missing. OPC Unified Architecture (OPC UA) is a powerful and promising standard that aims at solving this challenge. This work is dedicated to the development of an approach to map the interworking model of BACnet to OPC UA. This includes both the data representation of BACnet and the services used to access and modify this data. This way, an OPC UA information model emerges. Using this information model, BACnet applications can be represented in OPC UA and, thus, be accessed by OPC UA clients in a standard and well-defined way.
At the beginning, an introduction into the BACnet standard is given.
After an overview of the protocol architecture, the BACnet application model is described. This is followed by a section about the object oriented way of representing process data. BACnet services necessary to access these data and for configuration purposes are illustrated in the last section of this chapter.
The next part of this work is dealing with a state-of-the-art standard in automation systems, namely OPC Unified Architecture. A brief review of the historical development process of this standard is given. The next section describes the overall architecture and the different parts of the OPC UA specification. The capabilities of information models and how they are derived from built-in elements of OPC UA is shown further on. In order to enable clients to access these information models, a set of services is defined in OPC UA. An excerpt thereof is presented in the following. % An introduction into the security concepts of the OPC UA tops this chapter off.
The main contribution of this work is to show how OPC UA is integrated in a BACnet network. The mapping of BACnet datapoints to an OPC UA information model constitutes the main part of this chapter. This includes also the way these datapoints are addressed in OPC UA. Finally, the mapping of BACnet services to OPC UA services is presented.
In order to prove the feasibility of the ideas developed in this work, an OPC UA server interfacing a BACnet network has been implemented and put into operation in the context of a test lab setup. For this purpose, an open source BACnet stack implementation was integrated in a server built on top of a closed source OPC UA server SDK. An OPC UA client available as freeware was taken to access process data of a BACnet network via the OPC UA server. In the Appendix of this work an introduction to the security mechanisms of OPC UA is given. Since these mechanisms rely on software certificates, a strategy must be defined how to manage these certificates, i.e. an organised way of distribution, validation and revocation needs to be found. In general, there exist different concepts of how to achieve this goal. The Appendix gives an overview of these concepts and frameworks and discusses their positive and negative aspects depending on the structure of different environments in which OPC UA applications shall be embedded.