A Modular Open Source Platform for IoT


Published on

Published in: Internet, Technology, Education

A Modular Open Source Platform for IoT

  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   M2M   CoAP   M2M   MQTT   M2M   SOA   M2M   HTTP   Smart  Object  API   IoT  Toolkit   Discovery   ApplicaCons   •  Web  Objects   •  REST  +  Event  Model   •  M2M  Abstrac9ons   •  Model  Driven   Connected  Things,  Sensors,  Actuators,  Data  Sources   Models     •  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  
  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. RDF   SemanCc  and  Protocol  Interoperability   •  Separate  Control  Plane   and  Data  Plane   –  Common  Data  Models   Enable  Diverse  M2M   Protocols  Between   Smart  Objects   •  Any  Original  Catalog  or   SemanCc  Format   –  Smart  Object  stores   RDFModel  Format,   translates  others  using   a  SemanCc  Proxy   •  ApplicaCons  see  one  API   –  With  suitable  metadata   representaCon   SSN  TSB   IPSO   SemanCc  Proxy   RDF   Any  M2M   Protocol   Anywhere   Common   Data   Models   Catalogs,  Diverse  Metadata   Smart  Object  API   ApplicaCon   Smart  Object  API   ApplicaCon  
  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     Model   View   Controller   Informs   Updates   Informs   Actuates   Autonomic   Feedback   Loop   CyberneCc   Feedback   Loop  
  8. 8. Model-­‐View-­‐Controller  Macro  PaYern   Mapping  to  Open  Source  SoJware  Components   •  Model   –  Object  Models,  Data  Models   –  Storage,  Discovery,  Formats,   Protocols,  Binding  to  Objects   •  Controller   –  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   IoT  Toolkit   Node-­‐RED   Dojo  Dashboard   Node  Builder   IPSO   TSB   SSN   Catalogs  and   Repositories   Sensors,  Things,   MQTT,  CoAP,  HTTP   REST  API  +  Events   HTML5,   Mobile  Web   •  Resource  Discovery   and  Linkage   •  Builds  Smart  Object   Nodes   •  Manages,  stores  Flow   Graph  
  9. 9. ApplicaCon  Development  Workflow   IPSO   TSB   SSN   Data  Models   and  Catalogs   Node  Builder   Node-­‐RED   Dashboard   Model   Controller   View   •  Discovers  Resources   •  Makes  Object  Instances   •  Builds  Applica9on   Flow  Graphs   •  UI  Construc9on  
  10. 10. Run  Time  Deployment  Example   TSB   SSN   IPSO   Data  Models   and  Catalogs   HTTP/LD   Node-­‐RED   Node-­‐RED  CoAP/RD   HTTP   HTTP  +  MQTT   CoAP     HTTP   CoAP     HTTP   Local   Control   Gateway   Personal   Service   IoT  Provider   UI  Devices   Gateway as  a   Service   IoT  Toolkit   IoT  Toolkit   IoT  Toolkit   CoAP     CoAP    
  11. 11. IoT  Toolkit  Interoperability  Demo   CoAP   MQTT   MQTT   HTTP   smartobjectservice.com   ec2-­‐54-­‐200-­‐106-­‐25.us-­‐ west-­‐2.compute.amazonaws.com   Node-­‐RED   Node-­‐RED  
  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/