Java in the Air: A Case Study for Java-Based Environment Monitoring Stations 
Marco Carrer, Eurotech 
Andrew Gilbert, Orac...
Agenda 
•IoT Present and Challenges 
•Java, OSGi and Eclipse Kura: IoT Gateway Services 
•Embedded Data Streams: Edge Anal...
Gartner’s Hype Cycle
IoT Challenges 
Where IoT projects most often fail… 
M2M 
Communication 
Infrastructure 
Device Firmware / Application 
Bu...
IoT Era 
Enabling New Services and faster time to market 
Real-time Data Data Analysis & Management 
Minimize Downtime – H...
IoT Architecture 
Business Applications 
Sensors, Actuators, Displays, … 
@ 
Application Framework + Multi-Service Gateway...
IoT Gateway Stack 
Increase productivity and lower time to market 
OSGi 
on 
Linux 
Hardware 
Java SE Embedded 
Code 
Code...
Java Today 
The most popular programming language for Enterprise Applications 
9+ Million Java Developers 
Stewardship & I...
Java Tomorrow 
The most popular programming language 
for Enterprise & Embedded & IoT Applications 
JAVA DEVICES
Linux OS 
Embedded App 
•Modular software for IoT Gateway Service 
•Manage cloud connectivity 
•Network configuration and ...
Kura Services 
Java SE 7 (Oracle Java SE Embedded, OpenJDK) 
OSGi Application Container (Eclipse Equinox, Concierge) 
Devi...
Kura Developers’ Experience 
Designed from ground-up for developers 
Emulate on PC 
Deploy on Target 
Cloud Managed 
Start...
Key Elements of Connected Intelligence 
Always-on devices connected to variety of sensors and running multiple software ap...
The value of data decreases over time 
Ensuring Real-Time Accuracy, Efficiency, and Scale 
Business event 
Action Time 
Bu...
Complex Event Processing - CEP 
Method of tracking and analyzing data combined from multiple streams to infer events or p...
Complex Event Processing 
•Filtering 
–New stream filtered for specific criteria, e.g. temperature > 200 F 
•Correlation &...
CEP Engine 
Query 
Query 
Oracle Event Processing Embedded 
OEP-E: High-Level Architecture 
Input Adapters 
Output Adapter...
Continuous Query Language - CQL 
•CQL is based on standard SQL with extensions for streaming data 
–CQL queries support fi...
Efficient Handling of Streaming Data Flow Event Processing Network (EPN) Example
Use Case: Environmental Monitoring 
From this… 
… to this.
Eurotech ReliaSENS 18-12 
Air Out 
Air In 
Connectivity 
•Cellular (3g, GRPS), WiFi 
•Ethernet, GPS Positioning 
Environme...
Eurotech ReliaSENS 18-12 
•One data point every minute 
•Aggregated averages every hour, 8 hours, and daily 
•Configurable...
Java in the Air: Architecture 
CLOUD (device management and cloud analytics) 
Everyware Cloud 
MQTT 
DEVICE/GATEWAY (data ...
Linux 
Hardware 
Java SE Embedded 
OSGi 
ESF 
Bundles 
OEP-E Bundles 
Java in the Air: Gateway 
3. MQTT Output Adapter 
1....
Input Adapters PM10, ELF, TPU, CO2, GEIGER, HF, NO2, CO, O3, VOC 
Sensor Malfunctioning Detection 
Raw Data Filtering 
Sta...
Java in the Air: CQL Examples 
Stats CQL Query 
Alerts CQL Query
MQTT Topic Namespace 
Java1 
CO2 
RAW 
FILTERED 
DROPPED 
STATS 
30sec 
60sec 
ALERTS 
CHANGE 
MISSING 
HF 
RAW 
FILTERED ...
Demo
Summary 
•EPN for modelling Embedded Business Logic 
•Great Synergies with Remote Configuration and Management 
•More thin...
You are important! 
•Learn More - come visit us on the Exhibition Floor: 
–Eurotech Booth 
–Oracle Booth 
–Eclipse Booth 
...
www.eurotech.com 
Thank You! 
www.oracle.com
Upcoming SlideShare
Loading in …5
×

People Counting: Internet of Things in Motion at JavaOne 2013

4,382 views

Published on

A Case Study for Java and OSGi in Connected Systems, JavaOne 2013 in San Francisco

Published in: Technology, Business

People Counting: Internet of Things in Motion at JavaOne 2013

  1. 1. Java in the Air: A Case Study for Java-Based Environment Monitoring Stations Marco Carrer, Eurotech Andrew Gilbert, Oracle JavaONE 2014, San Francisco
  2. 2. Agenda •IoT Present and Challenges •Java, OSGi and Eclipse Kura: IoT Gateway Services •Embedded Data Streams: Edge Analytics •Use Case: Environment Monitoring Stations •Q&A
  3. 3. Gartner’s Hype Cycle
  4. 4. IoT Challenges Where IoT projects most often fail… M2M Communication Infrastructure Device Firmware / Application Business Application Sensors & Device Hardware Business Application Integration 1 2 3 4 6 •Selecting and integrating sensors, devices, sensors, human machine interfaces (HMI), Meters, legacy field busses & actuators •Ensuring long life support •Meeting certification requirements •Selecting and integrating operating system, device support / drivers •Implementing the business logic •Optimum M2M protocols •WAN cost reduction •Security •Device data management •Device life cycle management •Security 5 •Decoupling of producers and consumers of data •Write speeds •Real-time data streams •Data storage •Standard APIs •Ready to use adapters for standard applications •CEP / Complex Event Processing capabilities 1 2 3 4 6 5 7 •Application development & life cycle management •Dashboards, user interaction & interfacing •Integration (Big Data, social networks, enterprise IT) 7
  5. 5. IoT Era Enabling New Services and faster time to market Real-time Data Data Analysis & Management Minimize Downtime – High Availability Cloud based Services key to reduce cost & complexity Common Development Environment across M2M solutions Faster local decision making Devices in-market for longer duration Risk of opportunity lost or non compliance Improving operational efficiency Integration and Automation with existing systems Portability, security with scalability Extracting value from large amounts of data Support for a wide variety of devices Intermittent connectivity Security of Devices and Data Protection
  6. 6. IoT Architecture Business Applications Sensors, Actuators, Displays, … @ Application Framework + Multi-Service Gateway M2M/IoT Integration Platform on Cloud M2M Integration Platform
  7. 7. IoT Gateway Stack Increase productivity and lower time to market OSGi on Linux Hardware Java SE Embedded Code Code Code
  8. 8. Java Today The most popular programming language for Enterprise Applications 9+ Million Java Developers Stewardship & Innovation
  9. 9. Java Tomorrow The most popular programming language for Enterprise & Embedded & IoT Applications JAVA DEVICES
  10. 10. Linux OS Embedded App •Modular software for IoT Gateway Service •Manage cloud connectivity •Network configuration and administration (cellular, Wi-Fi, …) •Support for different field protocols •(Serial, USB, Modbus, CANbus, …) •Remote application management, configuration and access •Integrated development environment •Application portability •Open sourced in Eclipse IoT ESF, with Kura at its foundation, is commercially supported, remotely managed, and optimized for industrial gateways and applications. Java / OSGi Open HW Industrial HW Eclipse Kura
  11. 11. Kura Services 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 Configuration Network Configuration Field Protocols Connectivity and Delivery Data Services MQTT Paho Administration GUI Applications Your Application Remote Management 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 Remote Access (VPN)
  12. 12. Kura Developers’ Experience Designed from ground-up for developers Emulate on PC Deploy on Target Cloud Managed Start developing your 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 your application to field devices from the Cloud. Manage your application configuration and lifecycle from a Cloud infrastructure. No more field visits! •Web-based Console •REST API Integration •Smart Alerts
  13. 13. Key Elements of Connected Intelligence Always-on devices connected to variety of sensors and running multiple software applications 1 High-frequency data analysis for instant decision making and automation of information flows 2 Maximizing value from hi-velocity data in real time 3 Fast Data Real-Time Analytics Intelligent Devices
  14. 14. The value of data decreases over time Ensuring Real-Time Accuracy, Efficiency, and Scale Business event Action Time Business Value Data captured Analysis completed Action taken Source: Richard Hackethorn’s Component’s of Action Time
  15. 15. Complex Event Processing - CEP Method of tracking and analyzing data combined from multiple streams to infer events or patterns that suggest more complicated circumstances. Goal is to identify business meaning of events (such as opportunities or threats) and respond to them as quickly as possible. Source: http://en.wikipedia.org/wiki/Complex_event_processing Event Patterns Event Stream Fine-grained simple events from sensors and edge devices Complex Events Machine module non- functional, power outage, device tampering, etc.
  16. 16. Complex Event Processing •Filtering –New stream filtered for specific criteria, e.g. temperature > 200 F •Correlation & Aggregation –Scrolling, time-based window metrics, e.g. average heart pulse rate in the last 3 days •Pattern Matching –Notification of detected event patterns, e.g. machine events A, B and C occurred within 15 minute window •Geospatial, Predictive Modeling and beyond –Immediate recognition of geographical movement patterns, apply historical business intelligence models using data mining algorithms Event Patterns Event Patterns Complex Events Machine module non- functional, power outage, device tampering, etc. Event Stream Fine-grained simple events from sensors and edge devices
  17. 17. CEP Engine Query Query Oracle Event Processing Embedded OEP-E: High-Level Architecture Input Adapters Output Adapters event event event Real-time event data Context-aware filtering, correlation, aggregation and processing of data Processed business events for downstream applications event event event Sensors Backend Applications
  18. 18. Continuous Query Language - CQL •CQL is based on standard SQL with extensions for streaming data –CQL queries support filtering, partitioning, aggregation, correlation (joins across streams), and pattern matching on streaming and relational data –Extends standard SQL by adding notion of Stream, operators for mapping between relations and streams, and extensions for pattern matching –Window operator (e.g. RANGE 1 MINUTE) transforms stream into a relation •Example: –SELECT AVG(temperature) AS avgTemp, tempSensorId FROM temperatureInputStream [RANGE 1 MINUTE] GROUP BY tempSensorId
  19. 19. Efficient Handling of Streaming Data Flow Event Processing Network (EPN) Example
  20. 20. Use Case: Environmental Monitoring From this… … to this.
  21. 21. Eurotech ReliaSENS 18-12 Air Out Air In Connectivity •Cellular (3g, GRPS), WiFi •Ethernet, GPS Positioning Environment Analysis •Electromagnetic radiation •Radioactivity •Temperature, Humidity, Pressure Air Quality Measurements •CO, CO2, NO, NO2, O3 •SO2, H2S, VOC •PM10
  22. 22. Eurotech ReliaSENS 18-12 •One data point every minute •Aggregated averages every hour, 8 hours, and daily •Configurable thresholds and remote re-calibration
  23. 23. Java in the Air: Architecture CLOUD (device management and cloud analytics) Everyware Cloud MQTT DEVICE/GATEWAY (data collection and edge analytics) Linux Hardware Java SE Embedded OSGi ESF Bundles OEP-E Bundles Device Connectivity EUROTECH DEVICE CLOUD Device Management Data Cache Oracle Cloud ORACLE CLOUD Oracle 12c DB Oracle 12c OEP Oracle BI
  24. 24. Linux Hardware Java SE Embedded OSGi ESF Bundles OEP-E Bundles Java in the Air: Gateway 3. MQTT Output Adapter 1. Sensor Input Adapters 2. Event Processing Network 4. Configuration Updates
  25. 25. Input Adapters PM10, ELF, TPU, CO2, GEIGER, HF, NO2, CO, O3, VOC Sensor Malfunctioning Detection Raw Data Filtering Stats Alerts Raw Data Publisher Java in the Air: EPN
  26. 26. Java in the Air: CQL Examples Stats CQL Query Alerts CQL Query
  27. 27. MQTT Topic Namespace Java1 CO2 RAW FILTERED DROPPED STATS 30sec 60sec ALERTS CHANGE MISSING HF RAW FILTERED DROPPED STATS 30sec 60sec ALERTS CHANGE MISSING VOC RAW FILTERED DROPPED STATS 30sec 60sec ALERTS CHANGE MISSING
  28. 28. Demo
  29. 29. Summary •EPN for modelling Embedded Business Logic •Great Synergies with Remote Configuration and Management •More things to be explored: –Out-of-the-box ESF/Kura OEP-E Components
  30. 30. You are important! •Learn More - come visit us on the Exhibition Floor: –Eurotech Booth –Oracle Booth –Eclipse Booth •Contribute! www.eclipse.org/kura
  31. 31. www.eurotech.com Thank You! www.oracle.com

×