Industrial IoT comes with great expectations for operational efficiency, promising improved asset utilization and productivity gains. IIoT challenges include reliability, security, low maintenance, long lifecycle, and integration into heterogeneous and fragmented systems. This session proposes some architectural patterns that can be leveraged to overcome these challenges. It introduces, at the center of the solution, Java-powered IoT gateways and modular IoT application frameworks such as the open source Eclipse Kura. Incorporating a live demonstration, the presentation highlights some of the latest Eclipse Kura features such as a pluggable device model for fieldbus protocols, visual data flow, and connectivity across various IoT cloud service providers.
JavaOne 2016 - Presentation by Dave Woodard and Walt Bowers
Industrial IoT Mayhem? Java IoT Gateways to the Rescue
1. Industrial IoT Mayhem?
Java IoT Gateways to the Rescue
Dave Woodard: Sr. Software Engineer
Walt Bowers: IoT Solutions Architect
Sept 20, 2016
2. Outline – Where we are headed
• Eurotech Overview
• Industrial IoT Gateway Complexity
• Making IIoT Gateway’s Simple
• Demo – Kura Wires and IIoT
2
3. Eurotech Overview
• One of the world top players in the global Embedded Computers market
• Behind the products & services of more than 20 Global 500 companies
• 20+ Years of experience in “M2M” and distributed systems
– 20+ Years experience in OT / embedded / gateway hardware & software
– 16 Years ago co-developed MQTT with IBM
– 10+ Years experience with Java in embedded
– 6+ Years history in M2M/IoT cloud platforms
• Strong vertical market competencies:
– Industrial & Logistics
– Transportation
– Defense & Security
– Healthcare & Medical
3
4. Eurotech Overview
• Active in Eclipse IoT
– One of founding member companies
– http://iot.eclipse.org/
• Contributors to Kura and Kapua
– Contributed the original code from ESF
– https://www.eclipse.org/kura/
• OSGi Alliance
– IoT Expert Group
– http://osgi.org
Some of Our IoT Activity
6. The Internet of Things
IoT Solutions …
DATA
IOT
Sensors
SERVICES
platform
M2M
monitoring
management
REMOTE
Preventive Maintenance
many-to-one
machines
DEVICES
actuators
HMI
nearreal-time
MQTT
PROTOCOLS
field
bus
HARDWARE
gateway
MULTI SERVICE
REST unattended
OT IT/OT INTEGRATION
iPaaS
IaaS
BIG
DATA
ANALYTICS
business intelligence
IT
CEP
CLOUD
on-premise
database
ESB
SaaS
MOBILE
APPLICATION
INTERNET
virtualization
IaaS
IP
open source
CONTEXT
DECISION
BusinessModels
ASSET
cellular
wireless
satellite
BUSINESS
INTEGRATION services
servitization
COST
CUSTOMER
PARTNER
OEMs
ORGANIZATIONS
PRODUCT
VALUE
support
INFRASTRUCTURE
outsourcing
new
business models
everything as a service
DaaS
iPaaS
TCO
FLEXIBILITY
Carrier
Certifications
… require seamless integration between the things in the
field and the enterprise applications without creating
dependencies
7. The Internet of Things
• Performance constrains
• Few standards
• Human resource constraints (C++)
• Expensive, limited communication
• Monolithic approach
• Single-purpose devices
• Hardware-defined systems
• Store-and-Forward communication
• Operations-centric approach
Evolution: M2M 2.0 = IoT
• Powerful embedded systems
• Open and industry standards
• No HR constrains (Java)
• Inexpensive, available communication
• System & platform approach
• Multi-service systems
• Software-defined systems
• Real-time data and communication
• IT-centric approach
“Old M2M” M2M 2.0 = IoT
11. 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
12. Embracing IoT Complexity
How to accelerate overall solution engineering process?
How to include phased, incremental changes?
Business
Applications
Sensors,
Actuators,
Displays, …
?
@
12
14. 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
14
15. Sensors,
Actuators,
etc.
Modularity and Scalability
Adapting to Existing Field Implementations.
Device Cloud
Infrastructure
Distributed Device Logic
& Infrastructure
Business /
Application Logic
& Infrastructure
Applications /
Enterprise IT
M2M Gateways,
Smart Edge Nodes,
Connected Sensors
M2M Gateway
Cloud
Client
HW
Cloud
Client
Integrated Solution
Cloud
Client
Connected
Sensor
Sensor,
Machine
M2M
Integration
Platform
M2M
Protocols
MQTT
15
16. The Internet of Things
• IT centric, open and standards based IIoT / IoT
connectivity platforms as building blocks for extending the
enterprise IT
• Implementation of “Enterprise Service Bus for Machines”
like architectures to allow an easy integration of different
device data systems and applications
• Software-defined Gateway approach to integrate and
consolidate data streams and future proof investments
• IT centric application development and management to
implement business logic in smart edge devices / service
gateways
• Off the shelf general purpose and purpose built devices
(and CPU Boards) designed to meet vertical market value
propositions
Distributed Systems Fundamental Building Blocks
IoT
Integration
Platform
Multi-
Service
Gateway
Approach
17. IoT Integration Platform
Typical Features
M2M / IoT Integration Platform
Devices Devices Devices
Multi-Service
Gateways
Generic
Device
Adapter
Specific
Device
Adapter
Modbus
PLC
Application Platform
• Service Abstraction
• Data Normalization
• Translation
• Message Routing
• Pub/Sub
• Low Latency
• Data Aggregation
• Compression
• Security
• Buffering
• WAN Optimization
• Device Lifecycle
Management
• Device Abstraction
• Business Logic in Java
• Device Lifecycle
Management
• Field Technology
Integration
17
18. The MultiService Gateway IoT Approach
Overview
System
Infrastructure
Application
Integration
Layer
Application
Layer
Communication
Infrastructure
Field Infrastructure
MQTT
M2M / IoT
Integration
Platform
Device HW
Gateway, OS, Security
Gateway Application Framework
Certifications, Device Connections
Aggregators & On-
Premise Platforms
M2M Integration / IoT Application Enablement /
Device and Data Management Platform
SIM Management &
Communication Infrastructure
Optimum
M2M / IoT
Protocols
Public
Cloud
Private
Cloud
Sensors, HMIs, Actuators, etc.
aPaaS SaaS
Enterprise Applications
Big Data
Databases
Analytics
Enterprise IT
Mining
CEP
ERP CRM ….
20. Certified
Modems
M2M / IoT
Gateways & Devices
Open Hardware
Linux
Java / OSGi
OT Hardware Integration / Device Abstraction
Open Source IoT M2M Stack
Complete Set of Integrated OS HW & SW Building Blocks
IoT Device
Middleware
TCP/IP
IoT
Integration
Platform
Client
Device HW
MQTT
Connectivity
& Delivery
Network
Configuration
Field
Protocols
Basic
Services
Embedded
Applications
Security Administration
Connectivity
Management
Real-Time
Data
Security Administration
Historical
Data
Device
Management
Embedded App
Management
BRMS IT Application Integration Kapua
21. Why a Java OSGi IoT Gateway Stack?
Increase productivity
OSGi
on
Linux
Hardware
Java SE Embedded
Code
Code
Code
• Platform Independent
• Modular
• Services – Reusable
and discoverable
• Easier integration into
complex systems
• Isolation from
Fragments
22. Why Open Source IoT Gateway Stack?
IoT Gateway Challenges:
• Pressure to add value in
shrinking timeframes
• Velocity of technology changes
outstrips staffing
• Interoperability trumps
exclusive differentiation
• Quest for quality w/o lock-in
Open Source is the Answer!
Founded in 2012 by
• Now …
– 23+ Members
– 25+ new projects
– 1M+ lines of source code
– The fastest growing Eclipse
workgrouphttp://www.slideshare.net/blackducksoftware/io-t-and-open-source
Open source is the fast prototyping enabler
24. Eclipse Kura
Open Java OSGi Framework for IoT Gateways
https://www.eclipse.org/kura/
https://iot.eclipse.org/java/
25. Kura Under the Hood
Java SE 7 (Oracle Java SE Embedded, 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 / udev
Cloud Services
Your Application
Firewall,
Port
Forwarding
Link Monitors
Cellular, Wi-Fi,
Ethernet
GPS Position GPIO / SPI / PWM / I2C
Modbus
CANBus
Custom Protocols
Updates
Management
26. Developer’s Experience
Emulate on PC Deploy on Target Cloud Managed
Start developing your IoT
/M2M application in the
comfort of your PC.
• Full Eclipse Integration
• Target Platform Definition
• Emulated Services
• Run/Debug from Eclipse
• Support Mac/Linux Hosts
When you are ready, deploy
your application on the
gateway.
• One-click Deployment
• Eclipse Plugin
• Remote Debugging
Provision and manage your
applications in field devices
from the Cloud.
• Remote OSGi
Management via MQTT
• Web-based Console
28. Kura Wires - Terminology
• Composer UI - It is the canvas area for Kura Wires in which the
dataflow graph will be created.
• Logical Block - A Logical Block is a visual element in the
Composer UI which is represented as a node in the Kura Wires
dataflow graph.
29. Kura Wires – Logical Blocks
• Computational Block - A Computational Block is a Logical Block,
capable of receiving, processing and emitting data to the connected
downstream logical blocks. It can be, for example, data store, data
filter, data publisher instances that will be used to manage data.
• Wire - A Wire is a logical connection between the Logical Blocks which
allows to define a concrete dataflow in Kura Wires.
• Asset - An Asset is a Logical Block that is capable of communicating
with specific sensors and/or actuators of Industrial Device using
specific protocol.
• Wire Graph - A Wire Graph is a dataflow graph comprising several
aforementioned Logical Blocks which represents an Industrial IoT
application scenario.