A Modular Open Source Platform for Web Scale IoT Interoperability


Published on

IoT is a macro instance of the M-V-C pattern. Open source software components built from IoT Toolkit, Node-RED, and Dojo Toolkit create an open source stack for the Internet of Things

Published in: Technology, Education

A Modular Open Source Platform for Web Scale IoT Interoperability

  1. 1. A  Modular  Open  Source  Pla1orm     for  Web  Scale  IoT  Interoperability   Michael  J  Koster   Open  Source  Internet  Of  Things   IoT  Toolkit  
  2. 2. IoT  Web  Pla1orm  Features   •  Interoperability  –  Any  ApplicaCon  to  Any   Connected  Thing  using  Any  M2M  Protocol   •  Data  Models  drive  discovery  and  linking   •  Event  driven,  modular  applicaCon  soJware   •  Web  Programming  Model   •  Internet  and  Web  Standards   •  Web  and  Mobile  UI  hosCng  
  3. 3. IoT  2.0  –  Interoperability   •  Any  app  to  any  thing   via  any  M2M,  use-­‐ case  decides  M2M     •  Easy  to  deploy  new   things  and   applicaCons  using   data  models   •  Write  once,  run   anywhere  soJware   •  Network  effect   enabled   ApplicaCons   Discovery   Smart  Object  API   IoT  Toolkit   M2M   CoAP   •  Web  Objects   •  REST  +  Event  Model   •  M2M  Abstrac9ons   •  Model  Driven   M2M   M2M   HTTP   M2M   MQTT   SOA   Models     Connected  Things,  Sensors,  Actuators,  Data  Sources  
  4. 4. IoT  Interoperability   •  •  •  •  •  •  •  Ability  to  reuse  and  repurpose  resources   Choice  of  suitable  M2M  protocols   Reusable  soJware  components   Ease  of  integraCng  data  from  diverse  sources   Common  pla1orm  across  use  cases   Diverse  UI  pla1orms   Data  models  enable  machine  understanding   independent  of  M2M  protocols  
  5. 5. SemanCc  and  Protocol  Interoperability   •  Separate  Control  Plane   and  Data  Plane   –  Common  Data  Models   Enable  Diverse  M2M   Protocols  Between   Smart  Objects   ApplicaCon   Smart  Object  API   RDF   Any  M2M   Protocol   Anywhere   ApplicaCon   Smart  Object  API   Common   Data   RDF   Models   •  Any  Original  Catalog  or   SemanCc  Format   –  Smart  Object  stores   RDFModel  Format,   translates  others  using   a  SemanCc  Proxy   SemanCc  Proxy   •  ApplicaCons  see  one  API   –  With  suitable  metadata   representaCon   TSB   IPSO   SSN   Catalogs,  Diverse  Metadata  
  6. 6. Open  Source  IoT  Components   •  Open  Source  Components  Becoming  Available   –  IoT  Toolkit  –  REST  API  +  Data  Models  +  Events   –  Node-­‐RED  –  Graphical  ApplicaCon  Tool   –  Dojo  UI  Toolkit  –  UI  tools   –  MosquiYo  MQTT  Broker  and  Client   –  RDFlib  with  SPARQL  –  Graph  storage     –  Neo4J  Graph  Database   –  CoAP  Clients  and  Servers   •  Sufficient  to  build  a  complete  Pla1orm  Stack   •  Components  allow  ApplicaCon  soJware  to  run  in   Local  Server,  Gateway,  and  Cloud  Service  
  7. 7. Model-­‐View-­‐Controller  Macro  PaYern   IoT  Feedback  Control  Loops   •  Autonomic  and   cyberneCc   feedback  loops   •  People’s   intenCons  take   part  in  the   cyberneCc   feedback  loop     CyberneCc   Feedback   Loop   Model   Informs   Informs   View   Updates   Autonomic   Feedback   Loop   Actuates   Controller  
  8. 8. Model-­‐View-­‐Controller  Macro  PaYern   Mapping  to  Open  Source  SoJware  Components   Catalogs  and   Repositories   IPSO   TSB   SSN   Sensors,  Things,   MQTT,  CoAP,  HTTP   REST  API  +  Events   IoT  Toolkit   •  Model   –  Object  Models,  Data  Models   –  Storage,  Discovery,  Formats,   Protocols,  Binding  to  Objects   •  Controller   Node  Builder   •  Resource  Discovery   and  Linkage   •  Builds  Smart  Object   Nodes   •  Manages,  stores  Flow   Graph   Node-­‐RED   Dojo  Dashboard   HTML5,   Mobile  Web   –  Complex  Flow  Graphs  of   Event-­‐driven  modular  SW   –  Python  and  node.js     •  View   –  UI  Toolkit  For  ApplicaCons   –  Binding  of  UI  Components  to   Smart  Object  ProperCes  
  9. 9. ApplicaCon  Development  Workflow   Node  Builder   Node-­‐RED   •  Discovers  Resources   •  Builds  Applica9on   •  Makes  Object  Instances   Flow  Graphs   Dashboard   •  UI  Construc9on   Data  Models   and  Catalogs   IPSO   TSB   SSN   Model   Controller   View  
  10. 10. Run  Time  Deployment  Example   Personal   Service   Data  Models   and  Catalogs   SSN   HTTP/LD   IPSO   TSB   CoAP/RD   Local   Control   Gateway   HTTP  +  MQTT   Node-­‐RED   IoT  Toolkit   CoAP     Node-­‐RED   IoT  Toolkit   CoAP     CoAP     IoT  Provider   HTTP   HTTP   HTTP   UI  Devices   IoT  Toolkit   Gateway as  a   Service   CoAP    
  11. 11. IoT  Toolkit  Interoperability  Demo   ec2-­‐54-­‐200-­‐106-­‐25.us-­‐ west-­‐2.compute.amazonaws.com   HTTP   MQTT   Node-­‐RED   smartobjectservice.com   ED   Node-­‐R CoAP   MQTT  
  12. 12. Thank  You!   This  PresentaCon:   hYp://www.slideshare.net/michaeljohnkoster/open-­‐ source-­‐stack-­‐for-­‐io-­‐t     michaeljohnkoster@gmail.com   hYp://www.linkedin.com/pub/michael-­‐koster/ 2/36b/317/     hYp://iot-­‐datamodels.blogspot.com/