rapidly developing iot (internet of things) applications - part 2: arduino, beacons, oculus rift,...

146
#TOSMAC Toronto SMAC Meetup – Welcome! Rapidly Developing Internet of Things (IoT) Applications - Part 2

Upload: raul-chong

Post on 28-Jan-2015

319 views

Category:

Technology


3 download

DESCRIPTION

These are the slides used in the Toronto-SMAC meetup: "Rapidly developing IoT (Internet of Things) applications - Part 2" http://www.meetup.com/Toronto-SMAC-Social-Mobile-Analytics-Cloud-Meetup/events/195132732/ Topics covered: - Arduino and sensors: Bus simulation project - Freakduino and solar panels: Vibrometer project - Raspberry-Pi: Home security system (part 2) - Oculus Rift: Developing an Educational game (part 2) - Beacons: Tracking customer patterns at a retail store - Introduction to Node-Red

TRANSCRIPT

Page 1: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Toronto SMAC Meetup – Welcome!Rapidly Developing Internet of Things (IoT) Applications - Part 2

Page 2: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

IoT using Node-REDRapidly Developing Internet of Things (IoT) Applications - Part 2

| © 2014 IBM Corporation *

Túlio Pascoal - [email protected] Leão - [email protected]

Page 3: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Winter in Toronto...

Page 4: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Let’s go to Mexico!

Page 5: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Meanwhile ...

Page 6: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Meanwhile ...What happened?

Page 7: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

But how can we help preventing

this?

Page 8: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Page 9: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Let’s explore it better...

Page 10: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

IoT using Node-REDRapidly Developing Internet of Things (IoT) Applications - Part 2

| © 2014 IBM Corporation *

Page 11: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Page 12: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Page 13: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Page 14: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Page 15: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

What about TI Sensor Tag CC2541?

Page 16: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

What about BeagleBone Black?

Page 17: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

IBM Internet of Things Cloud Beta

Page 18: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Fire Alarm App

Page 19: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Sequence

TI Sensor Tag

BeagleBone Black

Internet of Things

Page 20: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Sequence

TI Sensor Tag

BeagleBone Black

Internet of Things

Page 21: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Sequence

TI Sensor Tag

BeagleBone Black

Internet of Things

Page 22: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Steps

1. Connect the USB Hub (with Wireless adapter + Bluetooth adapter) to the BeagleBone Black.

1. Connect the BeagleBone Black to the computer.

1. Make sure to have a WiFi connection (my cellphone is hotspotting).

1. Set up the BeagleBone Black.

Page 23: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App DevicesBeagleBone Black

USB Hub

TI Sensor Tag

Cellphone

Computer

USB adapterWireless adapter

Page 24: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Steps

1. Connect the USB Hub (with Wireless adapter + Bluetooth adapter) to the BeagleBone Black.

1. Connect the BeagleBone Black to the computer.

1. Make sure to have a WiFi connection (my cellphone is hotspotting).

1. Set up the BeagleBone Black.

Page 25: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Devices

USB adapterWireless adapter

BeagleBone Black

USB Hub

TI Sensor Tag

Cellphone

Computer

Page 26: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Steps

1. Connect the USB Hub (with Wireless adapter + Bluetooth adapter) to the BeagleBone Black.

1. Connect the BeagleBone Black to the computer.

1. Make sure to have a WiFi connection (my cellphone is hotspotting).

1. Set up the BeagleBone Black.

Page 27: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Devices

USB adapterWireless adapter

BeagleBone Black

USB Hub

TI Sensor Tag

Cellphone

Computer

Page 28: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Steps

1. Connect the USB Hub (with Wireless adapter + Bluetooth adapter) to the BeagleBone Black.

1. Connect the BeagleBone Black to the computer.

1. Make sure to have a WiFi connection (my cellphone is hotspotting).

1. Set up the BeagleBone Black.

Page 29: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Setting up the BeagleBone Black

Page 30: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Devices

USB adapterWireless adapter

BeagleBone Black

USB Hub

TI Sensor Tag

Cellphone

Computer

Page 31: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Sequence

TI Sensor Tag

BeagleBone Black

Internet of Things

Page 32: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Sequence

TI Sensor Tag

BeagleBone Black

Internet of Things

Page 33: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Use Case - Fire Alarm App Node-RED flow

Page 34: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Cloudant Node - Under development

Page 35: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Definitely relax...

Page 36: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Vibration Recorderand Analyzer

| © 2014 IBM Corporation 35

Vinícius Guzman – [email protected] Domingues – [email protected] Lima – [email protected]

Page 37: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

The problemOverhead transmission lines are often vibrating due to the action of winds.As a consequence:

• Cables experience alternate stresses due to wind-induced vibration• Alternate stresses may lead them to fatigue failure

April 21, 2014| © 2014 IBM Corporation

Cable vibrating Cable/clamp assembly Cable failure due to fatigue

Page 38: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Vibration recorders and the project ideaDevices which measure cables vibration and predicting its remaininglife based on these measurements. This manner this project will try tosolve this problems using:

April 21, 2014| © 2014 IBM Corporation

• Solar panel• Cloud computing

Prototype design Vibration recorder

Page 39: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

System Architecture

April 21, 2014| © 2014 IBM Corporation

Vibration Recorders

BlueMix Cloud

Page 40: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Arduino

Open-source platform

Single-board microcontroller

Page 41: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Freakduino

Based on Arduino Long range wireless

• Few km

Low power• 0.2 W (average)• 2.5 W (max)

Page 42: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Ethernet Shield

Wired internet connection for the Freakduino

Sends collected data using HTTP requests

Page 43: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Accelerometer

3 axis acceleration information

Use cases: • Object falling• Cable movement

Page 44: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

The prototype

TowersFreakduino + Accelerometer

Last DeviceFreakduino + Ethernet Shield

Page 45: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Web Application

| © 2014 IBM Corporation 44

BlueMixRuby on Rails

Page 46: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Manipulating the data sent by devices

| © 2014 IBM Corporation 45

DATA

Collect Store Analyze Show

HTTP SQL DatabaseService

RUBY Google CHARTS

Page 47: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Demo

Page 48: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Arduino and sensors: Bus simulation and Parking lot Simulator

Rapidly Developing Internet of Things (IoT) Applications - Part 2

| © 2014 IBM Corporation *

Wilton Cesar Leite PelicariBrayan Crispiano KsenhuckThiago de Aguiar Leal DominguesCesar Henrique Bernabe

Page 49: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation 48

Client-sideServer-side

Technologies used

Bluemix

Page 50: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Projects

| © 2014 IBM Corporation *

Page 51: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

ArduinoRapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation 50

Page 52: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Arduino (Setup)Rapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation 51

Page 53: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Arduino (Setup)Rapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation 52

Page 54: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Arduino + BlueMixRapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation 53

Bluemix

Page 55: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation *

Page 56: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Arduino + BlueMixRapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation 55

Page 57: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation 56

Back-end Settings

Socket.IO Used to receive data from Arduino Update the client browser in real time

Cradle Used to connect with Cloudant Store passenger history for future evaluation

Node.js modules

Page 58: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation 57

Socket.IO – APP.jsNode.js modules

var socket = require('socket.io');

var server = app.listen(3000);var io = socket(server);

io.on('connection', function(socket){console.log('A user is connected');

});

app.post('/refresh', function(req, res){var buses = String2Array(req.body.data);saveCloudant(buses);io.emit('refresh', {data: buses});res.send('Data Received');});

Page 59: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation 58

Socket.IO – js/controller.jsNode.js modules

var socket = io();var ids = [];

socket.emit('connection', {});socket.on('refresh', function(buses){buses.forEach(function(bus){

update(bus[0], bus[1], bus[2]);});});

function update(id, passengers, lotation){$('#' + id + " span").html(passengers + " of " + lotation + " passengers");changeColor(id, passengers, lotation);}

Page 60: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation 59

Cradle – APP.jsNode.js modules

Page 61: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation 60

Cradle – APP.jsNode.js modules

var cradle = require('cradle');var env = JSON.parse(process.env.VCAP_SERVICES);var credentials = env["cloudantNoSQLDB"][0].credentials;var cloudant = new(cradle.Connection)(credentials.url, credentials.port, {cache: true,secure: true,raw: false,auth: {

username: credentials.username,password: credentials.password

}});

var passengers = cloudant.database('passengers');

Page 62: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation 61

Cradle – APP.jsNode.js modules

var saveCloudant = function(buses){buses.forEach(function(bus){

passengers.save(bus[0], {date: new Date().getTime(),passengers: bus[1],lotation: bus[2]

}, function(err, res){err ? console.log('err: ', err) : console.log('res: ', res);

});});}

Page 63: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation *

Front-end Settings

Open Data Collection● Retrieving information from Toronto Transit Comission's Open Data Service

using Ajax

Node.js modules

Page 64: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation

Page 65: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation

Page 66: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation

URL ParametersRoutes:

"http://webservices.nextbus.com/service/publicXMLFeed?command=routeList&a=" + agencyTag

Stops:"http://webservices.nextbus.com/service/publicXMLFeed?command=routeC

onfig&a=" + agencyTag + "&r=" + routeTag + "&terse"

Predictions:http://webservices.nextbus.com/service/publicXMLFeed?command=predicti

ons&a=" + agencyTag + "&r=" + routeTag + "&s=" + stopTag

Page 67: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

| © 2014 IBM Corporation

Live Demos

http://parkingproject.mybluemix.net/

http://busproject.mybluemix.net/

Parking Lot

Bus Project

Page 68: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Final Considerations

| © 2014 IBM Corporation 67

Page 69: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Virtual Reality based learningRapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation *

Page 70: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Virtual Reality Geography GameInfo & Demonstration

| © 2014 IBM Corporation *

Page 71: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Integrating VR game with BluemixThe Architecture behind it

| © 2014 IBM Corporation *

Web applicationGame ApplicationRunning locally

Internet

HTTP

Page 72: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Professor scenario

Environment

Historical facts

Population and economy

Page 73: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Cloudant to game

Facts and curiositiesWeb application

Page 74: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Combining first and second phase

Page 75: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Future enhancements

● Log in● Create classroom● Rank

Page 76: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Thank you!

Questions?

| © 2014 IBM Corporation *

Page 77: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Beacons: Tracking customer patterns at a retail store with indoor mapping

Rapidly Developing Internet of Things (IoT) Applications – Part 2

| © 2014 IBM Corporation76

Danilo Augusto SilvaYuka Kyushima Solano

Pargles Wenz Dall'Oglio

Page 78: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Agenda

| © 2014 IBM Corporation

1. What is an iBeacon?2. Indoor Mapping Motivation3. Solution Using Beacons4. Demonstration5. Android Application6. Web Application7. Analytics with R8. Questions

2

Page 79: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

What is an iBeacon

| © 2014 IBM Corporation

- Apple trademark for location and proximity detection technology.

3

Page 80: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

What is an iBeacon

| © 2014 IBM Corporation

- Apple trademark for location and proximity detection technology.

How it works?

4

Page 81: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

What is an iBeacon

| © 2014 IBM Corporation

- Unique ID (UUID).- proximityUUID- major- minor

- RSSI (Received Signal Strength Indicator).

Page 82: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

What is an iBeacon

| © 2014 IBM Corporation

Page 83: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Contextual Applications

| © 2014 IBM Corporation5

Page 84: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Contextual Applications

| © 2014 IBM Corporation6

Page 85: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping Motivation

| © 2014 IBM Corporation7

Page 86: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping Motivation

| © 2014 IBM Corporation8

Page 87: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping - Current Scenario

| © 2014 IBM Corporation9

- Global Positioning System (GPS).- Wi-Fi SLAM (Simultaneous Localization and Mapping).- Problems:

- Applicability.• - Precision.

Page 88: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – The idea

| © 2014 IBM Corporation10

Page 89: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – Theory

| © 2014 IBM Corporation9

Page 90: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – Theory

| © 2014 IBM Corporation9

Page 91: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – Our approach

| © 2014 IBM Corporation9

Page 92: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – Our approach

| © 2014 IBM Corporation9

Page 93: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – Our approach

| © 2014 IBM Corporation9

Page 94: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – Our approach

| © 2014 IBM Corporation9

Page 95: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Indoor Mapping – Final equation

| © 2014 IBM Corporation9

Page 96: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Demonstration

| © 2014 IBM Corporation12

Page 97: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Android Application – What you need to know

| © 2014 IBM Corporation9

- Estimote Android SDK (https://github.com/Estimote/Android-SDK)- Bluemix Account (http://www.bluemix.net)

Page 98: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Android Application – Estimote SDK for Android

| © 2014 IBM Corporation9

Page 99: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Android Application – Estimote SDK for Android

| © 2014 IBM Corporation9

Page 100: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Web Application System

Web ApplicationMobile Data Analytics Warehouse

Page 101: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Mobile Data

Page 102: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Web Application System

Web ApplicationMobile Data Analytics Warehouse

Name, d1, d2, d3

Page 103: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Web Application

Page 104: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Web Application System

Web ApplicationMobile Data Analytics Warehouse

Name, d1, d2, d3

x = f(d1,d2,d3)y = f(d1,d2,d3)

Page 105: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Analytics Warehouse

Page 106: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Web Application System

Web ApplicationMobile Data Analytics Warehouse

Name, d1, d2, d3 Name, x, y, date

x = f(d1,d2,d3)y = f(d1,d2,d3)

Page 107: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Create a Mobile App on Bluemix

Page 108: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Create a Mobile App on Bluemix

Page 109: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Create a Mobile App on Bluemix

Page 110: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Create a Mobile App on Bluemix

Page 111: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Get data via Node.js

Initializationapp.js file

Page 112: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Get data via Node.js

Server Side

Client Side

Page 113: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Website

Page 114: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Add Analytics Warehouse Service

Page 115: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Add Analytics Warehouse Service

Page 116: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Add Analytics Warehouse Service

Page 117: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Add Analytics Warehouse Service

Page 118: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Send data via Node.js

Server Side

Page 119: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Send data via Node.js

Client Side

Page 120: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Launch Analytics Warehouse

Page 121: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Launch Analytics Warehouse

Page 122: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Launch Analytics Warehouse

Page 123: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Work with tables

Page 124: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Work with tables

Page 125: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Work with tables

Page 126: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Analyze data with R

Page 127: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Analyze data with R

Page 128: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Analyze data with R

Page 129: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Analyze data with R

Page 130: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Analyze data with R

Page 131: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Analyze data with R

Page 132: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Questions?

| © 2014 IBM Corporation

Page 133: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance SystemRapidly Developing Internet of Things (IoT) Applications - Part 2

| © 2014 IBM Corporation *

Page 134: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance System - Scenario

| © 2014 IBM Corporation *

Page 135: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance System - Scenario

| © 2014 IBM Corporation *

Page 136: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance SystemRapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation *

Page 137: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance System - What we had?

| © 2014 IBM Corporation *

Page 138: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance SystemRapidly Developing Internet of Things (IoT) Applications

| © 2014 IBM Corporation *

Page 139: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance System - What’s New?

| © 2014 IBM Corporation *

Page 140: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance System - Architecture

| © 2014 IBM Corporation *

Page 141: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance System - Raspberry Pi

| © 2014 IBM Corporation *

Page 142: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance System - Bluemix

| © 2014 IBM Corporation *

Page 143: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Live Demo

http://homeguard.mybluemix.net

| © 2014 IBM Corporation *

Page 144: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

DIY Home Surveillance SystemFuture developments

| © 2014 IBM Corporation *

● Motion detection;● Video recording and upload to cloudant;● Android interface;

Page 145: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Questions?

| © 2014 IBM Corporation *

Page 146: Rapidly developing IoT (Internet of Things) applications - Part 2: Arduino, Beacons, Oculus Rift, Raspberry Pi, Beaglebone, Sensors

#TOSMAC

Thank you!Let’s network!

| © 2014 IBM Corporation *