O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Using open source for IoT

7.859 visualizações

Publicada em

Presentation given at IoT Evolution - January 2015

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Using open source for IoT

  1. 1. Open Source IoT @ Eclipse Ian Skerrett Eclipse Foundation Ian.Skerrett@eclipse.org @IanSkerrett
  2. 2. IoT is Big!
  3. 3. Open Wins 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 3
  4. 4. 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 4
  5. 5. Open Wins 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 5
  6. 6. MQTT – Open Wins 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 6
  7. 7. IoT Today 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 7
  8. 8. Lots of IoT Partner Programs IoT Partner Program … IoT Partner Program … IoT Partner Program … IoT Partner Program … IoT Partner Program IoT Partner Program IoT Partner Program IoT Partner Program
  9. 9. 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 9
  10. 10. IoT Developer Enablement
  11. 11. 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 11
  12. 12. 1/29/15 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 12 Developers Build Cool Stuff
  13. 13. IoT Developer Enablement 0.05 0.260.010.03 0.64 0.02 Have you ever used any open hardware environments like Raspberry 1 2 3 4 5 6 Eclipse Community Survey 2014
  14. 14. http://www.flickr.com/photos/90514086@N00/952121271/ http://www.flickr.com/photos/cyberslayer/952 complexity
  15. 15. IoT Architectures New and Existing Devices IoT Gateways Network/Wireless Services Backend Systems
  16. 16. Connecting
  17. 17. Greenfield and Legacy
  18. 18. Open Solutions New and Existing Devices IoT Gateways Network/Wireless Services Backend Systems Open Standards and Open Source to Connect and Manage
  19. 19. Open IoT Stack Connectivity - MQTT - CoAP - LWM2M IoT Gateway Services - Remote management - Application management IoT Applications IoT Solution Frameworks - Home Automation - SCADA - OM2M Reporting Developer Tools (IDE, etc.) Open & Commercial Hardware
  20. 20. Connect and Manage with Open Standards New and Existing Devices CoAP LWM2M Many Open Standards
  21. 21. MQTT - Simple Publish/Subscribe protocol - Small footprint - Minimal on-the-wire formal and payload - MQTT Client (Java, JS, C, C++, Python, etc.) MQTT Client MQTT Broker Mosquitto MQTT Broker (C Code)
  22. 22. Constrained Application Protocol (CoAP) • RESTful protocol designed from scratch • Transparent mapping to HTTP • Works over UDP • DTLS Security Californium - CoAP Core - DTLS - CoAP Tools - Java implementations REST Interface
  23. 23. Lightweight M2M - Standard for device management - Based on CoAP Wakaama LWM2M Client (C/C++) Leshan LWM2M Server (Java)
  24. 24. IoT Gateway Services IoT Gateways Java and OSGi
  25. 25. IoT Gateways • Gateway management • How to manage remote gateways and keep them up to date • How to manage connectivity • • Manage deployed applications • Gateways become an application container • Remote configuration • Remote update
  26. 26. Java VM OSGi Application Container Device Abstraction Gateway Basic Services Network Configuration Network Management Field Protocols Connectivity and Delivery AdministrationGUI Operation&Management Linux Hardware App 1 App 2 App n . . . . Applications
  27. 27. Open IoT Stack: IoT Solution Frameworks Connectivity - MQTT - CoAP - LWM2M IoT Gateway Services - Remote management - Application management IoT Applications IoT Solution Frameworks - Home Automation - SCADA - OM2M Open & Commercial Hardware
  28. 28. IoT Solutions – Home Automation
  29. 29. Intranet of Things for Home Automation
  30. 30. Event BusEvent Bus Persistence ServicesPersistence ServicesAutomation LogicAutomation Logic User InterfacesUser Interfaces Item RegistryItem Registry Hue Binding Hue Binding Samsun g Binding Samsun g Binding Bluetoot h Binding Bluetoot h Binding Sonos Binding Sonos Binding HueHue BluetoothBluetooth SamsungSamsung SonosSonos ......
  31. 31. Eclipse SCADA • Eclipse SCADA is a open source SCADA platform implemented in Java • Provides a comprehensive, state of the art SCADA system, built on modern technologies and open to interface with as many other systems as possible • Allow easy integration between hardware (field devices) and business applications (e.g. ERP)
  32. 32. Eclipse SCADA – Key Features •Data Acquisition •Alarms & Events •Historical Data •Configuration •GUI/HMI
  33. 33. Eclipse SCADA – Supported Protocols • Modbus • Siemens S7 • “exec” (shell script execution) • JDBC • REST • MQTT • A custom Arduino UDP protocol • • Supported through openSCADA • OPC DA 2.0 (Utgard; can't be included with Eclipse SCADA because of licensing issues) • IEC 60870-5-104 (will be reintegrated with Eclipse SCADA in release 0.3) • SNMP (will be integrated with Eclipse SCADA in release 0.3) •
  34. 34. Visual Interface
  35. 35. Smart M2M standard (ETSI M2M) n Provide a horizontal M2M service platform with a generic set of service capabilities to enable M2M interoperability in terms of communication and data. n n Define a Service Capability Layer (SCL) on top of connectivity layers: q SCL deployed in network server, gateways and devices. q SCL enables discovery, registration, authentication, data-transfer using containers, publish/subscribe, groups, access rights, security, etc. q n Interface with existing technologies: q Multiple communication protocol binding. q Re-use existing remote device management. q Interwork with vendor-specific and legacy devices. . Source: ETSI M2M 35
  36. 36. M2M Server End user devices 36 M2M gateway Data Analytic SCADA Interface HTTP/CoAP HTTP/CoAP HTTP/CoAP HTTP/CoAP MQTT PHIDGETS ZIGBEE 6LoW PAN KNX Network domain Device and Gateway domain OM2M architecture
  37. 37. OM2M building blocks Device Management LightWeigthM2 M OMA-DM Interworking Proxy MQTT ZIGBEE Communication Protocol Binding COAP HTTP Additional Services DataCentric Routing Autonomic Computing Security TLS-PSK Java Runtime Environment OSGi EQUINOX framework Operating System Generic ProcessingCORE Hardware Yourplugin! KNX 6LowPAN TLS
  38. 38. Eclipse Open IoT Stack Connectivity - MQTT - CoAP - LWM2M IoT Gateway Services - Remote management - Application management IoT Applications IoT Solution Frameworks - Home Automation - SCADA - OM2M Reporting Developer Tools (IDE, etc.) Open & Commercial Hardware
  39. 39. Open Stack for IoT New and Existing Devices IoT Gateways Network/Wireless Services Backend Systems Open IoT Stack
  40. 40. Commercial Ecosystem Open IoT Stack for Java
  41. 41. More Info: iot.eclipse.org
  42. 42. Join Eclipse IoT 1. Join the community 2. Download project and try it out 3. Use the sandbox servers 4. Contribute feedback to a project 5. Propose your own project 6. Join the Eclipse IoT Working Group Copyright (c) 2014 Eclipse Foundation, licensed under the EPL- 1.0 42
  43. 43. Questions @ianskerrett Ian.Skerrett@eclipse.org
  44. 44. Backup

×