iot demoday nov_2014

Post on 02-Jul-2015

221 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Intro to MQTT & Node-RED and how I assembled the Hardware and Software to make my Halloween prank.

TRANSCRIPT

Mitt oppsett – med RasPi, Arduino, servoer, MQTT, Node-RED og Minecraft Simen Sommerfeldt, Oslo Internet of things meetup 18.11

Rådgiver og CTO, Bouvet Oslo Dataforeningen, HIOA, Lær Kidsa Koding! Oslo IoT meetup

@sisomm

•  Skandinavisk konsulentselskap

•  Leverer tjenester innenfor IT, digital kommunikasjon og rådgivning

•  1000 ansatte •  14 kontorer i Norge

og Sverige •  Notert på Oslo

Børs

Marit behersker programmeringsspråk som

Java og .net

Men først og fremst behersker hun kav

trøndersk

Intro Demo 1: Skallen snur seg og ler når du passerer en sonar http://www.youtube.com/watch?v=2eRPg_KQunU

Demo 2: Skallen følger deg med blikket i minecraft, og du kan skru av lysene http://www.youtube.com/watch?v=yu6P1Bz6P0c

Skremme barn på Halloween

http://nspt4kids.com/wp-content/uploads/2011/10/scared-boy-on-halloween.jpg

how to do reliable messaging over

unreliable networks?

- Dr. Andy Stanford-Clark

Background

“MQTT was actually first designed for Real Time, Mission Critical,

Command & Control, SCADA systems”

- Arlen Nipper, Cirrus Link Solutions

Pub/Sub with topic paths

http://m.eet.com/media/1171446/0912embmqtt01.png

/container/address/devicetype/unique/status <payload> /minecraft/world/skull/250,72,211/status IS_ALONE Wildcards: # entire subtree, + a single level

Multiple brokers

http://usuaris.tinet.cat/sag/mq_pubsub.htm

Standard siden Oktober 2014

“Tricks” for tingenes internett

•  Last will & testament •  Binary payload •  3 QoS levels •  Retained messages •  2 byte overhead •  Small footprint •  Low bandwidth

Mobilkommunikajson: MQTT vs HTTPS

http://mobilebit.wordpress.com/2013/05/03/rest-is-for-sleeping-mqtt-is-for-mobile/ ”

Du har antagelig MQTT i lomma

“MQTT is used both inside as inter- process communication and in the cloud

for diagnosis”

- Stefano Costa, Bluewind

http://highscalability.com/blog/2014/1/13/nytimes-architecture-no-head-no-master-no-single-point-of-fa.html

http://www.slideshare.net/kellogh/mqtt-kafka-33100776

MQTT er så enkelt at ungene mine kunne følge

meldingene og foreslå endringer

Kan kombineres med REST for å gi beskjed om endringer

Node.red Et verktøy for rask prototyping av tingenes internett

20-Nov-14 28

DEMO ( )

“Kode”

http://www.infoq.com/resource/news/2014/05/ibm-node-red-qconlondon/en/resources/Node-RED-WS-Tweet-Demo-QCon-London-2014.png

“Wiring together hardware devices, APIs and online services in new and interesting ways [...] focus on the task at hand and not worry about the plumbing”

- Nick O’Leary, IBM

"Just as a spreadsheet lets you to play around with numbers, Node-RED is a tool that's good

for playing around with events”

- Dave Convay-Jones, IBM

Inputs

Functions & Social

Storage, Analysis, “Advanced”

Make your own

Users manual

In your browser:

1.  Add or select a node

2.  Configure it

3.  Combine it with others to form a flow

4.  Deploy

5.  Test

Kan bruke node.js pakker & bygges inn i andre systemer

Copy and paste med JSON

Bruksområder •  Rask mockup av REST Services •  Rask uttesting av integrasjonsscenarier •  Internet of things protyping

http://www.kongsbjergskolen.kolding.dk/Infoweb/Forsideavis/visnyhed.asp?AvisID=5&ID=12

Skal ikke brukes i produksjon - eller gjør på egen risk!

Min Python Broker: ~20 timer

Node Red:

1 time

My wants: Mutex and aggregator pattern

My wants: Mutex

& Aggregator pattern

http://huisdierencentrumhaarlem.nl/wp-content/uploads/2013/01/animals-cat-kitten-cute-begging-kitten-wallpaper.jpg

Hardware og oppsett

20-Nov-14 45

Avstandsmåler

Fuktmåler

Reléer Vibrasjons-måler

Servoer

Lysmåler

Termometer

Støymåler

Video-kamera

Arduino sketch

Arduino sketch Python script Node.Red Mosquitto MQTT server

Minecraft client Bukkit Server Scriptcraft med MQTT plugin Javascript

Servo Shield Arduberry Raspberry Pi

Keith Richards

Kjeve-Servo

Pan/Tilt Servo

Servo Shield

Arduberry

Raspberry Pi

Servo Shield ArduBerry, Raspi

Motstander for diodene i skallen

Breadboard power supply

Ardiuino 2 koblet til en sonar

“Devices”

Hodeskalle som merker om sjeler er i nærheten

Sonar som varsler avstand til spilleren

Brytere som slås av og på

Varsel om når blokker blir ødelagt

Facetracker som angir vektoren til til spilleren

/arduino/1/incoming

/arduino/2/sonar

/raspberry/1/soundplayer

/minecraft/world/lever/<pos> /minecraft/world/block/<pos> /minecraft/world/skull/<posi> /minecraft/world/facetracker<pos>

20-Nov-14

! /arduino/2/sonar/Ping: 29 ! /minecraft/world/sonar/250,72,211 Ping: 9 ! /minecraft/world/skull/250,72,211/status HAS_COMPANY " /arduino/1/incoming LEDS_ON ! /minecraft/world/facetracker/250,72,211/status 0.038844700742, -0.100218465107 " /arduino/1/incoming SERVOS_MOVE,54,69 ! /minecraft/world/lever/-251,71,210/status 0 " /arduino/1/incoming LED,1,0 ! /minecraft/world/lever/-249,71,210/status 1 " /arduino/1/incoming LED,1,1 ! /minecraft/world/skull/250,72,211/status IS_ALONE " /arduino/1/incoming LEDS_OFF ! /minecraft/world/sonar/250,72,211 Ping: 20 ! /minecraft/world/block/-251,70,183/status BROKEN

“Gjør leksene, gutt!”

http://blogg.bouvet.no/2014/03/10/an-internet-of-things-demo-using-raspberry-pi-arduino-minecraft-and-mqtt/

http://blogg.bouvet.no/2014/08/04/node-red-how-it-simplifed-my-iot-project-and-how-you-can-rapidly-prototype-for-the-internet-of-things/

github.com/sisomm/iot-concepts

20-Nov-14 60

Other nice combos

•  Tessel: Javascript “arduino” with sensors •  OpenHAB: Rule-driven IoT “motor” that combines

several standarder og devicer •  Resources om IoT+node.red+mqtt++:

http://iot-datamodels.blogspot.no.

Takk til...

•  Andy Piper @ Twitter (Former IBM) •  Michael Laing @ NY Times •  Ian Skerret @ Eclipse Foundation •  Benjamin Cabé @ Eclipse working group •  Stefano Costa @ Bluewind •  Nils Perret @ Bouvet

Spørsmål?

Fortsett dialogen!

@bouvet

64

Facebook.com/bouvet Utbrudd.bouvet.no

Takk!

Noen linker

Andy S-C on IoT @TED: http://www.youtube.com/watch?v=s9nrm8q5eGg

http://mobilebit.wordpress.com/2013/05/03/rest-is-for-sleeping-mqtt-is-for-mobile

http://www.slideshare.net/nivertech/zvi-mqtts-foreuc2013

http://jpmens.net/2013/02/25/lots-of-messages-mqtt-pub-sub-and-the-mosquitto-broker/

http://embeddedtek.blogspot.no/2013/02/internet-of-things-sous-vide-cooker.html

http://nrkbeta.no/2013/09/18/uendelige-muligheter-med-internett-i-alt/

http://mqtt.org/wiki/doku.php/history

http://public.dhe.ibm.com/software/dw/webservices/ws-mqtt/mqtt-v3r1.html#appendix-

https://www.eclipsecon.org/na2014/session/securing-internet-things-and-mqtt

http://server.dzone.com/articles/controlling-house-50-miles

MQTT servere

•  IBM MQ Series •  Mosquitto •  Eclipse Paho •  Eurotech Everywhere

Device Cloud •  Xively •  eMQTT •  m2m.io

•  RabbitMQ •  Apache ActiveMQ •  Apache Apollo •  Moquette •  HiveMQ •  Mosca •  Litmus Automation

Loop

•  Mule •  Fuse ESB •  WSO2 •  IBM Websphere ESB •  Talend

ESB’er

MQTT sikkerhet

•  Username/Password •  SSL connections •  ACL for topics •  Client authentication (Certificates) •  Encrypt messages

top related