data modeling #1 anet’s new data modeling initiatives … · anet’s new data modeling...
TRANSCRIPT
BACnet’s New Data Modeling Initiatives and their Relationship to
Project Haystack
Bob JohnsonSiemens Building Technologies
Data Modeling #1
Tuesday, May 19, 2015
2
Content
•Introduction, Background
•Current BACnet
•The Extended Data Model (=> BACnet XD)
•BACnet WS Extensions
•Support for Classic BACnet
•Conclusion
3
BACnet and Project Haystack
BACnet
Project Haystack
BACnet and Haystack are on parallel paths regarding the definition of descriptive tagging models for BAS information and ‘IT-friendly’ network services designed to take advantage of this information.
4
Our Perspective
• Siemens strongly supports sharing and cooperation between Project Haystack and BACnet, in order to drive expansion and acceptance of descriptive data models and services in the BACS industry
• We believe that descriptive data models and services provide clear benefits to operation and monitoring applications and workflows
5
A Main Objective
Haystack Clients
Other Client
Control System
Analytics ClientOperation and Monitoring Client
BACnet
Haystack Services
Control System
BACnet
Siemens’ goal is to support ‘Classic BACnet’, BACnet Web Services, and Haystack with a minimal amount of redundant configuration.
To achieve this goal, Siemens and other vendors desire a level of similarity between tagging models.
6
BACnet Steps
Over the years, BACnet has taken several steps toward an extensible data model with descriptive tagging…
1995 – Present: Classic BACnet
2006 – Present: The Structured View Object
2006 – Present: BACnet/WS (SOAP Web Services)
2010 – Present: CSML (Control System Modeling Language)
BACnet Extended Data Model (BACnet XD)
BACnet/WS Extensions and Support for Classic BACnet
7
Content
•Introduction, Background
•Current BACnet
•The Extended Data Model (=> BACnet XD)
•BACnet WS Extensions
•Support for Classic BACnet
•Conclusion
8
Classic BACnet – 1995 to Present
Device 7: AI 77
Room.260:Space.Temppoint, sensor
unit: °F, fault: false:
Some descriptive tagging information can be derived from the object model and naming conventions.
AI, AV, AOBI, BV, BO
MI, MV, MODevice
ScheduleTrend Log
:
Objects
ReadProperty, RPMWriteProperty, WPM
SubscribeCOVCOVNotification
EventNotification:
Services
MSTP (485)ARCnetLonTalk
PTPEthernet
IP
Networks
9
The Structured View Object – 2006 to Present
Node_Type:SYSTEM, NETWORK, DEVICE, ORGANIZATIONAL, AREA,EQUIPMENT, POINT, COLLECTION, PROPERTY, FUNCTIONAL, OTHER
Node_Subtype is intended to provide additional information describing the element represented by the SVO
Subordinate_Annotations are intended to provide additional information describing the child objects
SVONodeTypeNodeSubtype
AnnotationAnnotationAnnotation
:
ReferenceReferenceReference
:
Object
Object
SVOObject
Object
10
Structured View Object Example
The SVO adds descriptive information, but standardization is limited.
SVOs are useful for:• Constructing user views and
traversing the object model• Application modeling and
application library management
SVOEQUIPMENTVAV
RoomTempRoomCO2
AirFlowOpMode
::
SVOEQUIPMENTLighting
LightBtnLightCmdDelayOff
::
AI:SpaceTemp
AI:CO2
AI:AirFlow
MV:Mode
BI:LightBtn
MV:LightCmd
AV:Delay
SVODEVICERoomControl
HVACLighting
11
BACnet/WS Web Services – 2006 to Present
•BACnet/WS specifies the use of Simple Object Access Protocol (SOAP) over HTTP, and encodes data for transport using XML.
•BACnet/WS supports traversal and data access via node paths such as:
/Geographic/EastWing/AHU_5/DischargeTemp [:Description]
•Services include getValue, getValues, setValue, setValues, and getHistoryPeriodic. The general form of a service is
Service(options, path(s), [value(s)])
12
BACnet/WS Web Services (cont.)
•BACnet/WS defines "normalized points.“ Common attributes of points available in the majority of BAS models are exposed using a common set of names.
•BACnet/WS node attributes include NodeType, NodeSubtype, DisplayName, Description, Units, HasHistory, Children, Minimum, Maximum, and many others.
13
XML Data Formats (CSML) – 2010 to Present
The Control System Modeling Language (CSML) defines XML formats for data to be exchanged between BAS systems. This data may be transferred through files or by other means.
CSML is designed to provide a common syntax and data model that can be used to represent both standard and proprietary object, property, and data type definitions, along with descriptive information.
CSML may also be used to transfer instance data (database content).
14
XML Data Formats (CSML)
Example:
<BitString type="0-BACnetEventTransitionBits" value="to-offnormal;to-fault;to-normal" />
All BACnet data elements represented in CSML share a common set of optional attributes, such as name, type, displayName, writable, value, units, etc.
Each data element may also define a specific set of required or optional attributes of its own.
15
Content
•Introduction, Background
•Current BACnet
•The Extended Data Model (=> BACnet XD)
•BACnet WS Extensions
•Support for Classic BACnet
•Conclusion
16
The Extended Data Model (=> BACnet XD)
•Past: MODBUS Registers
•Today: BACnet Objects & Properties
This slide covers content from a public review addendum that is not yet part of the standard
•Future: BACnet XD Allows Arbitrary Data & Data Structures + Semantics
Extended Data Model (BACnet XD)
BACnet Objects and Properties
RESTful BACnet Interface
Classic BACnet Services
17
Extended Data Model Content
Characteristics: Writability, volatility, range, length, type, choices, etc.
Semantics: Semantic and value tags from multiple sources
Relationships: Hierarchies and associations between data items
Multimedia: Support for media types beyond control system data: PDFs, Graphics, CSV, foreign XML, etc.
This slide covers content from a public review addendum that is not yet part of the standard
The Extended Data Model is an abstract model for defining, transmitting, and storing BMS and other application data. The model consists of ‘data’ (values) and ‘metadata’ (attributes). Metadata includes:
18
Hierarchies and Virtual Objects
Extended Data Model metadata can express hierarchies without requiring Structured View objects in controllers.
The model can also include ‘virtual objects’, allowing SVOs and other objects to be represented, even if these objects do not exist as BACnet objects in the controller.
EQUIPMENTVAV
RoomTempRoomCO2
AirFlowOpMode
:
EQUIPMENTLighting
LightBtnLightCmdDelayOff
:
AI:SpaceTemp
DEVICERoomControl
HVACLighting
attributesattributesattributes
attributesattributesattributes
attributesattributesattributes
attributesattributesattributes
AI:CO2attributesattributesattributes
AI:AirFlowattributesattributesattributes
MV:Modeattributesattributesattributes
BI:LightBtnattributesattributesattributes
MV:LightCmdattributesattributesattributes
AV:Delayattributesattributesattributes
19
Tagging in the Extended Data Model
The Data Model supports semantic and value tags from multiple sources. ASHRAE-defined tags require no prefix. Tags from other sources are prefixed with either a reversed DNS name or an ASHRAE-assigned vendor ID.
<Real name="flow" value="1030.0“ tags="sensor;com.siemens.flow;555-air">
<ValueTags>
<String name=“com.siemens.sensorType” value=“xyz”/>
</ValueTags>
</Real>
This slide covers content from a public review addendum that is not yet part of the standard
20
Content
•Introduction, Background
•Current BACnet
•The Extended Data Model (=> BACnet XD)
•BACnet WS Extensions
•Support for Classic BACnet
•Conclusion
21
Changes from BACnet/WS
Public Review Addendum am includes the following new BACnet/WS extensions:• Migration from SOAP to a simple RESTful API (node path ->
REST URI)• The ability to send Extended Data Model content encoded
using XML, JSON, or plain text• The ability to configure Extended Data Model content on the
server• Support for COV, Trending, and Event subscriptions
This slide covers content from an public review addendum that is not yet part of the standard
22
Changes from BACnet/WS
One important benefit of semantic tagging is to find data based on its tags. Therefore, it is required that all servers support filtering with the 'filter' query parameter to find items with particular tag values.
For example, the following query returns a list of objects with the semantic tag "meter”:
GET /.sysdata/objects?filter=$target/$tags/contains(meter)
This slide covers content from an public review addendum that is not yet part of the standard
23
Content
•Introduction, Background
•Current BACnet
•BACnet Web Services & XML Data Formats (CSML)
•BACnet WS Extensions
•Support for Classic BACnet
•Conclusion
24
Support for “Classic BACnet”
Methods for adding descriptive tagging and Extended Data Model definitions to BACnet devices are planned, providing access to tagging and extended data via classic BACnet services.
• semantic tags on objects and properties
• discoverable arrangements of objects and properties
• descriptions of objects, properties, and data types
• property metadata like writability, range, volatility, etc.
This slide covers content from a public review addendum that is not yet part of the standard
25
Support for “Classic BACnet”
xdd files provide XML-encoded Extended Data Model information, allowing clients to read and use this information without requiring use of the RESTful API.
This slide covers content from a public review addendum that is not yet part of the standard
Extended Data Model (BACnet XD)
BACnet Objects and Properties
xdd File Objects
Object Tagging Properties
RESTful BACnet Web Services
xdd File Location Properties
Classic BACnet Services
26
Extended Data Access via “Classic BACnet”
This slide covers content from a public review addendum that is not yet part of the standard
Extended Data Model (BACnet XD)
BACnet Objects and Properties
xdd File Objects
Object Tagging Properties
xdd File Location Properties
xdd File Objects
xdd File Location Properties
Classic BACnet Device
BACnet Object
Object_ID
Object_Name
Description
Present_Value
Profile_Location
...
...
...
...
: ...
Profile_Name ...
BACnet File Object
object reference
URL
<CSML xmlns=”http://bacnet.org/csml/1.1> <Definitions> <Object name="555-myActuator" extends="0-BaseObject" > <Real name="command-position" writable="true" commandable="true" units="percent" minimum="0.0" maximum="100.0" displayName="Command Position" description="The commanded position for the actuator - see feedback for actual position" propertyIdentifier="1001" tags="control;safety"/> <Real name="feedback-position" units="percent" displayName="Actual Position" description="The actual position of the actuator based on confirmation measurement" propertyIdentifier="1002" tags="feedback;safety"/> <Boolean name="horn-enable" writable="true" tags="safety;indicator" propertyIdentifier="1007" </Object> <Definitions></CSML>
xdd File
xdd
27
Object Tagging Properties
Interoperability will be greatly enhanced by adding standardized descriptive tagging information to BACnet objects.
This slide covers content from a public review addendum that is not yet part of the standard
Extended Data Model (BACnet XD)
BACnet Objects and Properties
xdd File Objects
Object Tagging Properties
xdd File Location Properties
Object Tagging Properties
AI:77
Object_Name SpaceTempDescription Room 260 Space TemperaturePresent_Value 70.0Units °F: :
Tags point;sensor;temp;com.siemens.room
Value_Tags com.siemens.sensorType “xyz”
: :
28
Content
•Introduction, Background
•Current BACnet
•BACnet Web Services & XML Data Formats (CSML)
•The Extended Data Model (=> BACnet XD) and Support for Classic BACnet
•BACnet WS Extensions
•Conclusion
29
Conclusion
• Read/Modify descriptive data, hierarchies and associations
• Multi-language, context-aware user views, beneficial for single or multi-vendor systems (normalization across subsystems on a job, across jobs, between vendors, etc.)
• Paths to extend “Classic BACnet” systems
• New services allowing descriptive data to be used in queries and other operations
30
References
This presentation only touched on a subset of BACnet data modeling topics.
For more information, public review and final versions of BACnet addenda are available at no cost from ASHRAE (www.ashrae.org) and the BACnet website (www.bacnet.org).
31
References
•Addendum 135-2012am
The common extended data model for BACnet (BACnet XD), plus RESTful Web Services for accessing the model.
•Addendum 135-2012ba
Support for ‘Classic BACnet’ devices
•Addendum 135-2012ap
An approach for defining application interfaces through the use of semantic tags