Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Building IoT Mashups for Industry 4.0 with Eclipse Kura and Kura Wires

2,388 views

Published on

The presentation contains a real Industry 4.0 use cases that will take advantage of sensors connected through Modbus and mapped in Kura Wires with corresponding Assets. A complete dataflow model will also be presented

Published in: Engineering

Building IoT Mashups for Industry 4.0 with Eclipse Kura and Kura Wires

  1. 1. Building IoT Mashups for Industry 4.0 with Eclipse Kura and Kura Wires Amit Kumar Mondal (Technical University of Munich, Germany) Matteo Maiero (Eurotech S.p.A, Italy) Virtual IoT Meetup 12 January 2017
  2. 2. Agenda • Industry 4.0 and IoT Challenges – Brownfield Engineering – Problems • Eclipse Kura – Introduction – Encapsulating Complexity – Architecture • Kura Wires – Dataflow Programming – Terminologies – Kura Asset Model • Demo • Recap – Current Status – Next Steps
  3. 3. Industry 4.0
  4. 4. IoT Challenges Fragmentation Complexity Lock-in
  5. 5. Fragmentation Protocols to Cloud – MQTT – LWM2M – CoAP – AllSeen Sensor Protocols – CANBus – MODBus – OPC-UA – Bluetooth – BLE – DECT – ZigBee – Z-Wave Hardware – ARM – Intel Standards – oneM2M – Thread – AllSeen – Industrial Internet Consortium – IEEE
  6. 6. Complexity Reliability – Store and forward – Best Effort – Guaranteed Maintenance and Lifecycle Management – Deployment/Install – Upgrade – Provisioning/Configuration Security – Sensors – Data – Network Network Management – LAN – WAN – Cell Integration – Heterogeneous environments
  7. 7. Lock-in Hardware Sensor(s) Vertical Market Protocol(s)
  8. 8. Internet / TCP/IP Sometimes M2M Solutions look simple … Business Application Sensors, Actuators, Displays, … Service Gateway Single or no special application on gateway A single application to communicate with Only one type of Gateway HW & SW Only one type of device / sensor No connectivity options required Embracing IoT Complexity
  9. 9. Internet / TCP/IP Ethernet WiFi 3G / LTE Satellite WiMAX Other ... but for some of them it gets complex Business Application Sensors, Actuators, Displays, … • Multiple services on the gateway / edge node • Different connectivity options • Customer specific business logic 2G / 2.5G xDSL Cable
  10. 10. ... Geographically Dispersed … Business Applications Sensors, Actuators, Displays, … Multi- Service Gateway ?
  11. 11. Embracing IoT Complexity How to accelerate overall solution engineering process? How to include phased, incremental changes? Business Applications Sensors, Actuators, Displays, … ? @ 11
  12. 12. IoT Challenges Addressing the Challenges Fragmentation Complexity Lock-in ✔ ✔ ✔
  13. 13. Upwards Abstraction towards Business Tiers Complexity tamed bottom up. Business Applications@ IoT Integration Platform Operational Technologies Cloud-side @ Enterprise Information Technologies Data & Analytics Platform Sensors, Actuators, HMI, SCADA, PLC Multi-Service Gateway 13
  14. 14. Linux OS Embedded App KURA is the open source Java and OSGi- based Application Framework for M2M Service Gateways in the Eclipse IoT Working Group. Purpose Simplify the design, deployment and remote management of embedded applications. It provides • Cohesive and integrated app environment • Modular software components • HW abstraction layer • Field protocol libraries • Cloud connectivity • Remote app and device management • Local app and device management • Development tools Java/OSGi M2M gatewaysSmart Sensors Industrial HW Open HW • Raspberry PI • BeagleBone Black
  15. 15. Encapsulating complexity Increase productivity and decrease cultural barriers OSGi on Linux Hardware Java VM Code Code Code Kura helps customer focusing on their core business
  16. 16. Kura’s Benefits Kura helps Customers focusing on their core competences (Customer‘s differentiators), by supplying highly integrated modular, common building blocks. This approach provides partners with a competitive advantage by ensuring: • Reduced development time → Shorter time to market • Less required resources → Reduced development costs • Hardware virtualization → Better investment protection • More deterministic project execution → In time market introduction • Focus on the application → Differentiate your offering and products • Portable, robust code → Higher quality software • Standard based → Future-proofed, Investments protection • Remote app management → Extended product lifecycle
  17. 17. Java SE 7 / 8 (OpenJDK) OSGi Application Container (Eclipse Equinox, Concierge) Device Abstraction javax.comm Basic Gateway Services DB Service Clock Service Device Profile Watchdog Network ConfigurationNetwork Configuration Field ProtocolsConnectivity and Delivery Data Services MQTT Paho AdministrationGUI Applications Your Application RemoteManagement Configuration Management javax.usb w/ udev access Cloud Services Your Application Firewall, Port Forwarding Link Monitors Cellular, Wi-Fi, Ethernet GPS Position GPIO / SPI / PWM / I2C jdk.dio Modbus CANBus Custom Protocols Updates Management RemoteAccess Java HID APIs javax.bluetooth / BLE ... Eclipse Open IoT Stack for Java Add your app Add your app
  18. 18. Agenda • Kura Wires – Dataflow Programming – Terminologies – Kura Asset Model • Demo • Recap – Current Status – Next Steps 18
  19. 19. Industrial IoT Gateways From Prototype to Production Efficient Development & Investment Protection Software portability across HW Platforms Open Hardware Open Software
  20. 20. Eclipse Kura seems powerful for my PoC How can I build my PoC very easily using Eclipse Kura? Oh no! I have to learn Java and OSGi! Different People Different Needs
  21. 21. Solution Approach... Dataflow Programming … • have inputs and/or outputs • produce outputs • consume inputs • abstract underlying logics • highly reusable and portable Application Logic is expressed as a directed graph Nodes -
  22. 22. Our Solution • without sacrificing much flexibility • raises the abstraction level • application logic is simplified to node connections • extensible • Eclipse Marketplace Integration Eases developers task -
  23. 23. Kura + Wires • Enhanced Functional Architecture Drivers CANbus ModbusOPC UA S7 Asset Management Asset Java SE 7 / 8 (OpenJDK) OSGi Application Container (Eclipse Equinox, Concierge) Device Abstraction javax.comm Basic Gateway Services DB Service Clock Service Device Profile Watchdog Network ConfigurationNetwork Configuration Connectivity and Delivery Data Services MQTT Paho AdministrationGUI Applications Your Application RemoteManagement Configuration Management javax.usb w/ udev access Cloud Services Firewall, Port Forwarding Link Monitors Cellular, Wi-Fi, Ethernet GPS Position GPIO / SPI / PWM / I2C jdk.dio Custom Protocols Updates Management RemoteAccess Java HID APIs javax.bluetooth / BLE Your Application Kura Wires ...
  24. 24. Terminologies - Wire Graph Kura Wires Dataflow Graph known as Wire Graph
  25. 25. Terminologies - Wire Component Each node in the Wire Graph is a Wire Component
  26. 26. Terminologies - Wire Component Wire Component can be a producer of data and/or a consumer of data Wire Component 0..n 0..n 0..n Inputs to a Wire Component 0..n Outputs from a Wire Component Wire Components don’t need to have context specific knowledge about each other
  27. 27. Terminologies - Asset • Enhanced Functional Architecture
  28. 28. Terminologies - Asset Assets are special types of Wire Components that interact with transducers For example, Modbus PLC, S7 PLC or OPC-UA PLC etc. Device Driver Kura Asset Model Driver Asset Kura Wires
  29. 29. Terminologies - Wire Logical connections between the Wire Components are known as Wires
  30. 30. Terminologies - Wire Envelope Abstract data format decoupling Wire Components to have context specific knowledge
  31. 31. Preliminary Wire Components and Drivers Publisher Subscribe r DB Store DB Filter Asset Logger Timer
  32. 32. Demo
  33. 33. An IIoT Use Case A newly installed part of a plant based on Modicon PLC running Modbus RTU, connected to an Industrial Service Gateway and pushing data to Cloud instance Control operator intends to monitor the Modbus Device connected sensors’ data and change the statuses of the connected actuators using a dashboard
  34. 34. Current Status • Contributed Kura Wires to the Kura repository – Available in the develop branch – Early access and testing • https://hudson.eclipse.org/kura/job/kura- develop/lastSuccessfulBuild/artifact/kura/distrib/target/ • Master Thesis – Kura Wires: Design and Development of a Component for managing Devices and Drivers in Eclipse Kura 2.0 by Amit Kumar Mondal https://osf.io/s3agq/ • Blog Posts – https://dzone.com/articles/kura-wires – https://dzone.com/articles/kura-wires-a-sneak-peek – https://dzone.com/articles/kura-wires-a-different-perspective-to-develop-iiot – https://dzone.com/articles/different-dataflow-programming-approaches-and- comp
  35. 35. Next Steps – Milestone release by the end of January 2017 – Drivers publishing to Eclipse Marketplace • OPC-UA • Modbus – More drivers – Improved documentation
  36. 36. Amit Kumar Mondal Matteo Maiero admin@amitinside.com matteo.maiero@eurotech.com https://github.com/eclipse/kura Twitter: @eclipsekura Thank You!

×