Your SlideShare is downloading. ×
0
×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Magic broker 2 #iot2010 presentation

1,591

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,591
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. MAGIC Broker 2 An Open and Extensible Platform for the Internet of Things Mike Blackstock, Nima Kaviani, Rodger Lea University of British Columbia Adrian Friday Lancaster University Wednesday, 1 December 2010
  • 2. OurVision of IoT • What is a thing? • embedded sensors and actuators in artefacts, appliances, the environment, on people • We want to build applications from compositions of things Wednesday, 1 December 2010
  • 3. OurVision of IoT • What is a thing? • embedded sensors and actuators in artefacts, appliances, the environment, on people • We want to build applications from compositions of things • assume spontaneous & periodic interaction when in range • a minimal set of abstractions & simple, flexible API Wednesday, 1 December 2010
  • 4. MB2 Timeline 2006 2007 2008 2009 2010 Screen Widgets OSGi/MAGIC Broker 2REST/MAGIC Broker 1 Ubicomp Integration Framework Lancaster eCampus Interactive Community Displays My Everyday Earth Screen Mashups MAGIC Board Public Screens Personal Interaction Sense Tecnic Wednesday, 1 December 2010
  • 5. MB2 • Lightweight IoT application platform MAGIC Broker 2 Wednesday, 1 December 2010
  • 6. MB2 • Lightweight IoT application platform • Applications: collections of channels representing people, places, things. MAGIC Broker 2 home screen person sensor phone IoT Application Wednesday, 1 December 2010
  • 7. MB2 • Lightweight IoT application platform • Applications: collections of channels representing people, places, things. • Channel interface: • publish-subscribe events • content and state storage • service brokerage MAGIC Broker 2 events services state content home events services state content screen events services state content person events services state content events services state content sensor phone IoT Application Wednesday, 1 December 2010
  • 8. Using MB2 abstractions Application Server/Coordinator Wednesday, 1 December 2010
  • 9. Using MB2 abstractions Application Server/Coordinator MB2 Wednesday, 1 December 2010
  • 10. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 11. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 12. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 13. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 14. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 15. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 16. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 17. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 18. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 19. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 20. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 21. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 22. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 23. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 24. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 25. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 26. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 27. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 28. Using MB2 abstractions Application Server/Coordinator MB2Post_office events services state content user events services state content events services state content Screen Wednesday, 1 December 2010
  • 29. MB2 Deployment • MB2 instances serve as “super-nodes” for rendevous and interaction for a set of applications and things. • Gateways used to convert low level sensor data and protocols • Smart devices communicate directly to MB2 using supported protocols • Applications listen for events, change state • Processors transform and process events for more than one application light temp move Sensor Gateway Cell Phones Processor Display Browsers Application Protocol Gateway ApplicationApplication Processor MB2 sensorsensor zigbee bluetooth senosr sensor Wednesday, 1 December 2010
  • 30. Case Study: MAGIC Board • Spontaneous Interaction • One channel per screen • Events from SMS, voice gateways, phone browser • State used to store votes • Content to store flash applications, HTML content Wednesday, 1 December 2010
  • 31. Case Study: Sense Tecnic • Real World Sensing • Channels: virtual and physical sensors • Events: current sensor values • State: historical sensor values • Processor pipes process data and publish back to channels • Easy integration with OPC and other standards using gateways • Used in MEE sustainability application • transportation • energy use Wednesday, 1 December 2010
  • 32. Sensing and Sustainability: My Everyday Earth • Integrating External Services: Social Networks • Challenge based approach for sustainable behaviour change linked to social networks • Award points for accomplishments • Direct user input using mobile phones or web • Sensor input • GPS location • Power meters Wednesday, 1 December 2010
  • 33. Evaluation • Performance • event publish-subscribe performance • retrieving events • profiled implementation • Developer feedback and lessons learned • Informal developer conversations, survey and code reviews (n=7) Wednesday, 1 December 2010
  • 34. Lessons Learned: Abstractions • Channel and event abstractions were always used • Simple publish-subscribe broker • State used to store meta-information about things (e.g. sensor type, gateway ID, display location) • simple name/value pairs were limiting • work around using encoding, naming conventions • Closer affinity between state and events • need to store event history in the channel (votes, sensor values) Wednesday, 1 December 2010
  • 35. Lessons Learned: Abstractions • Channel and event abstractions were always used • Simple publish-subscribe broker • State used to store meta-information about things (e.g. sensor type, gateway ID, display location) • simple name/value pairs were limiting • work around using encoding, naming conventions • Closer affinity between state and events • need to store event history in the channel (votes, sensor values) “Once I learned how everything worked (what needed to be sent and what I should receive back) it was very easy.” “It made it easier to communicate between screens and devices, and provided an easy way to store stuff that needed to be saved.” Wednesday, 1 December 2010
  • 36. Lessons Learned: Design and Implementation • RESTful Interface • leverages built in HTTP libraries in every language • HTTP supported by more and more devices • Smart device client-less interaction using browsers • Platform extensions • event caching of popular channels for performance • explicit support for channel and event meta data • private vs. public channels • integrated patch panel and processing • Additional representations: JSON, CSV Wednesday, 1 December 2010
  • 37. Conclusions • MB2 addresses IoT application requirements for flexibility and simplicity • Simple • uniform and easy to understand API • events, state, services and content in named channels • Flexible • Ongoing validation through series of applications in different domains • Interactive displays, sensor networks, sustainability Wednesday, 1 December 2010
  • 38. Thank you • Thank you! • More info at www.magic.ubc.ca • Academic version available for download • Commercial version from Sense Tecnic • info@sensetecnic.com • Contact • mblackstock@sensetecnic.com and adrian@comp.lancs.ac.uk Wednesday, 1 December 2010

×