60 likes | 182 Views
Embedded Building Application Stack. Stephen Dawson-Haggerty. Overview. Current state of world: building data exists in application stovepipes SCADA/building management systems Sensors accessed over RS485/Modbus
E N D
Embedded Building Application Stack Stephen Dawson-Haggerty
Overview • Current state of world: building data exists in application stovepipes • SCADA/building management systems • Sensors accessed over RS485/Modbus • Goal: break open the data silos and make the data available to consumers, developers • Start with the sensor: make it smarter • Not too smart, though: keep things small
System Designor, REST in 36kB • Build on blip, embedded IPv6 stack • Use HTTP for control channel • Standards in IETF, IEEE moving along nicely, but don’t get held up by them! Application Interface HTTP Engine TCP TinyOS/BLIP HYDRO Routing 6lowpan HC 802.15.4 Link
Meter Interface: HTTP + JSON • Use HTTP as app-level control protocol • JSON is concise object transport • Also defined a compressed application/x-binaryjsoncontent type • Distinguish metering from sensing • Integrate raw data with metadata • Calibration • Engineering units • Reporting support allows pushing of sensor data
Meter Interface /meter # meters of quantities of flow provide this service [GET] /channelID # a particular channel [GET] /reading # meter reading [GET] /format # calibration and units [GET/POST] /parameter # sampling parameter [GET/POST] /profile # history of readings [GET] /report # create and query periodic reports [GET/POST] POST requests supply JSON objects as arguments: POST: http://meter1.cs.berkeley.edu/report { "ReportResource" : "/meter/*/reading", "ReportDeliveryLocation" : "http://webs.cs.berkeley.edu/receivereports.php", "Period" : 60, "Minimum" : 50, "Maximum" : 100 }
More information • Schema + API Documentation • http://webs.cs.berkeley.edu/blap/ • BLIP http://smote.cs.berkeley.edu:8000/tracenv/wiki/blip