mortar.io – open bas platform · mortar.io – open bas platform electrical and computer...
TRANSCRIPT
Mortar.io – Open BAS Platform
Electrical and Computer Engineering Department1 Carnegie Mellon University
Civil and Environmental Engineering Department2 Carnegie Mellon University
Anthony Rowe1, Mario Bérges2, Christopher Martin3
Max Buevich1, Jingkun Gao2, Suman Giri2, Emre Kara2, Patrick Lazik1, Chris Palmer1, Niranjini Rajagopal1, Oliver Shih1
Bosch Research and Technology Center3
Sensor Andrew
What’s in a name?
3
Andrew Carnegie Andrew Mellon
+ Andrew File System Wireless Andrew Sensor Andrew
Why not Sensor Andrew v1.0 for BAS?
• Registration was extremely general • Too resource intensive and cloud-centric • Difficult to run and manage
Controllers"
Sensors"
Legacy Data"
Analytics"
Visualization"
Mortar.io Architecture
5
XMPP
Respawn Web Portal Meta Data
Adapter Plug-and-Play Authoring
…
Respawn
Transducer
Controller Services
Agents / Analytics
Distributed Storage
Mio Schema
Automapping
Agent
Mortar.io Architecture
6
XMPP
Respawn Web Portal Meta Data
Adapter Plug-and-Play Authoring
…
Respawn
Transducer
Controller Services
Agents / Analytics
Distributed Storage
Mio Schema
Automapping
Agent
Mobile App
Embedded Controller Embedded
Gateway
PnP Device Stub
WiFi / Ethernet
Transducer / End Point
WiFi
TCP/IP Network Fieldbus Network
Thermostat Lighting
CMEL Env. Sensors
Web Portal
Mortar.io Highlights
• Networking – Publish-Subscribe Architecture – Device-Level Access Control – Automatic Discovery / Plug-and-Play
• Storage – Multi-Resolution Time Series Database – Cloud-to-Edge Data Storage
• High-resolution data stored at routers • Aggregates intelligently pushed to server side
• Extensible Device Interfaces – FireFly Wireless Sensing Platform, BACnet,
Android@Home, NEST thermostat, Web Services, ModBus, PUP, Zigbee, Zwave
Mortar.io Architecture
9
XMPP
Respawn Web Portal Meta Data
Adapter Plug-and-Play Authoring
…
Respawn
Transducer
Controller Services
Agents / Analytics
Distributed Storage
Mio Schema
Scheduler
Agent
Why XMPP?
• Decentralized • Open standards
– Not just messages, but data formats XEPs
• History – Open protocol since1999 – Many open servers in a variety of languages
• Security • Rich Features
– IM, groupchat, network management, content syndication, file sharing, geolocation, VoIP
10
Adapter libMIO
Gateway Sensor
Adapter libMIO
Gateway Actuator
Mortar.io Architecture
Adapter libMIO
Gateway
XMPP Event Nodes
Sensor Publish
Adapter libMIO
Gateway Actuator
Subscribe/ Publish
Mortar.io Architecture
Adapter libMIO
Gateway
XMPP Event Nodes
Sensor Publish
Adapter libMIO
Gateway Actuator
Subscribe/ Publish
Mortar.io Architecture [email protected] Access Control List -------------------------------- Publish: Bill, Ted Subscribe: Anyone Owner: Me
Adapter libMIO
Gateway
XMPP Event Nodes Agent 2
Agent 3
Sensor
Meta-Sensor
Publish
Subscribe
Adapter libMIO
Gateway Actuator
Subscribe/ Publish
Mortar.io Architecture
Adapter libMIO
Gateway
XMPP Event Nodes
Database
Controller
Agent 2 Agent 3
Sensor
Meta-Sensor
Publish
Subscribe
Adapter libMIO
Gateway Actuator
Subscribe/ Publish
Mortar.io Architecture
Adapter libMIO
Gateway
XMPP Event Nodes
Database
PnP
Web Services
Controller
Agent 5 Agent 4
Agent 2 Agent 3
Sensor
Meta-Sensor
Publish
Historical Data
Subscribe
Adapter libMIO
Gateway Actuator
Subscribe/ Publish
Historical Data
PnP Agent
Mortar.io Architecture
Collection Node
Transducer Node
Actuator Node
Publish Subscribe Architecture
meta
storage
data
map
schedule
Mobile Device
Gateway
Gateway
Agent
Agent
Agent
Web Services
Domain Data
Handler
Notification
Agent Data Viewing
Map Server
Registration
Agent
Sensors
Sensors
XMPP Federation
Mortar.io Architecture
19
XMPP
Respawn Web Portal Meta Data
Adapter Plug-and-Play Authoring
…
Respawn
Transducer
Controller Services
Agents / Analytics
Distributed Storage
Mio Schema
Scheduler
Agent
Plug-and-Play
Local Server Device
Device
Mobile Device UUID Public Key Meta URL
mDNS + DNS-SD
Attacker
Mortar.io Architecture
21
XMPP
Respawn Web Portal Meta Data
Adapter Plug-and-Play Authoring
…
Respawn
Transducer
Controller Services
Agents / Analytics
Distributed Storage
Mio Schema
Scheduler
Agent
Auto-Mapping • How can we locate and validate correct placement of sensors?
– Classify sensor type – Classify sensor stimulus – Use context to discover relationships – Map relationships into the physical space
A1#.%B1#.%A2#.%B2#.%C1#.%
Current%
Pressure%
Current%
Pressure%
Flow%
Identifying#Sensor#Types%
A1#.%
A2#.%
A3#.%
Characterizing#Stimulus%
B1#.%A1#.%C1#.% B1#.%
A1#.% C1#.%+%
Automatically#Mapping#Sensor#Locations%
Future#work%This#proposal%
Outputs%
Inputs%
Estimation#of#DR#potential%
Discovery#of#Efficiency#
Opportunities%
Efficiency#Recommendation#
Engine%
Reasoning#Mechanisms%
S"mulus'
Context'
Inference'
A1#.%
A2#.%A3#.%
Discovering#Relationships%
B1#.%
B2#.%
C1#.%
Thank You!
Questions?