Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Internet of Things
La connettività di Internet va oltre i dispositivi
tradizionali come computer, portatili, smartphone e
tablet coinvolgendo gli oggetti comuni ("
everyday
things
") che utilizzano la tecnologia elettronica ed
informatica per interagire e comunicare con
l'ambiente esterno e con le persone.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Uno scenario IoT
Caratteristiche tipiche di IoT
Miniaturizzazione: microcomputer di piccole
dimensioni integrati dentro agli oggetti, anche in
mobilità.
Ingressi/uscite: gestione di sensori ed
attuatori per interagire con l'ambiente e con le
persone.
Connessione: locale: Bluetooth, NFC, RFID;
remota: WiFi, 3G.
Servizio web: archiviazione di dati,
presentazione e analisi di informazioni.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Intel Edison
Microcomputer su singola scheda.
Dimensioni di una scheda SD.
CPU a 32 bit.
1 GB di memoria RAM.
4 GB di memora FLASH.
WiFi.
Bluetooth.
Ingressi ed uscite digitali.
Sistema operativo Linux.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Intel Edison + kit for Arduino
Interfaccia di
sviluppo
compatibile
con lo
standard
Arduino Uno.
Alimentazione
e porte USB.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Intel Edison + kit for Arduino + Grove
Sistema
modulare
protipizzazione
con
connessioni
standardizzate
per sensori ed
attuatori.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Intel Edison + kit for Arduino + Grove
Moduli di
sensori ed
attuatori.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Intel Edison + kit for Arduino + Grove
Collegamento
standardizzato
tra base di
protipizzazione
e moduli
sensori ed
attuatori
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Ambiente di sviluppo
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
STEP 0
Lo sketch contiene le due funzioni:
setup(): viene eseguita, solo una volta,
quando lo sketch si avvia
all'accensione o al reset del
dispositivo;
serve inizializzare variabili e dispositivi
periferici.
loop(): viene eseguita ripetutamente
alla massima velocità possibile per il
processore consentendo al
programma di controllare gli ingressi e
le uscite e di effettuare le elaborazioni.
INIZIO
setup()
loop()
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
STEP 1
INIZIO
Inizializza canale seriale
Legge il valore dell'ingresso analogico
Invia il valore al canale seriale
Pausa di 250 mSec
Acquisizione di un ingresso analogico ed
invio sul monitor per diagnostica
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
STEP 2
INIZIO
Inizializza canale seriale
Configura l'uscita
Legge il valore dell'ingresso analogico
Mette in scala l'uscita analogica
Emette l'uscita analogica
Invia il valore al canale seriale
Pausa di 250 mSec
Emissione di una uscita analogica
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
STEP 3
INIZIO
Inizializza canale seriale
Configura le uscite
Controllo di una soglia
Soglia superata?
Legge il valore dell'ingresso analogico
Mette in scala l'uscita analogica
Emette l'uscita analogica
Emette allarme ON Emette allarme OFF
Invia valore e stato soglia al canale seriale
Pausa di 250 mSec
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
STEP 4
INIZIO
Inizializza canale seriale
Configura le uscite
Inizializza display(sfondo bianco)
Segnalazione sul display
Soglia superata?
Legge il valore dell'ingresso analogico
Mette in scala l'uscita analogica
Emette l'uscita analogica
Emette il valore sul display
Emette allarme ON
Sfondo display rosso
Emette allarme OFF
Sfondo display verde
Invia valore e stato soglia al canale seriale
Pausa di 250 mSec
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
STEP 5
INIZIO
Inizializza canale seriale
Configura le uscite
Inizializza display(sfondo bianco)
Sostituzione del potenziometro con un sensore di temperatura
Soglia superata?
Legge il valore del sensore di temperatura
Mette in scala l'uscita analogica
Emette l'uscita analogica
Converte il valore letto in °C
Emette il valore sul display
Emette allarme ON
Sfondo display rosso
Emette allarme OFF
Sfondo display verde
Invia valore e stato soglia al canale seriale
Pausa di 250 mSec
Legge di Steinhart-Hart
Web dashboard
Freeboard.io è una dashboard (cruscotto)
per IoT.
Consente di visualizzare ed elaborare dati
provenienti da nodi remoti.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
URL:
Username:
Password:
http://freeboard.io
**********
******
Freeboard.io: tutorial
Tutorial
Anche lo smartphone è un oggetto IoT
Il tutorial costruisce un oggetto collegato allo smartphone
tramite un QR code e fornisce allo smartphone un URL per
inviare alcuni dati
Si possono visualizzare la posizione dello smarphone e le sue
rotazioni creando:
Una mappa di Google con i dati
datasources["nome_oggetto"]["your_latitude"]
datasources["nome_oggetto"]["your_longitude"]
Tre Gauge (misuratori) con i dati
datasources["nome_oggetto"]["tilt_x"]
datasources["nome_oggetto"]["tilt_y"]
datasources["nome_oggetto"]["tilt_z"]
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Freeboard.io: creare un oggetto IoT
Create new: inserire il nome del dispositivo
Edison (hostname)
Aggiungere un "datasource":
Type: dweet.io
Name: nome del dispositivo
Thing name: nome del dispositivo
Salvare l'oggetto: risulta mai connesso (never)
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Freeboard.io: test della connessione
Simulare una connessione del dispositivo Edison con
un browser
Nella casella indirizzo:
dove:
nome è il nome oggetto del dispositivo
### è il valore della temperatura (da 0.00 a 100.00)
# è lo stato dell'allarme (0 = off, 1 = on)
Risultato: oggetto connesso (ora utima connessione)
e risposta nel browser in formato JSON.
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
http://dweet.io/dweet/for/nome?temperatura=###&allarme=#
{"this":"succeeded","by":"dweeting","the":"dweet","with":
{"thing":"thomas","created":"2016-10-
10T08:30:51.530Z","content":
{"temperatura":24.5,"allarme":1},"transaction":"317d40ca-
bd36-403d-9b86-8eb873c3e1a0"}}
Freeboard.io:dashboard per il dispositivo
Si possono visualizzare la temperatura, la serie dei valori, e lo
stato dell'allarme creando:
Un Gauge con il dato di temperatura
datasources["nome_oggetto"]["temperatura"]
con unità di misura °C e range 0/100
Uno Sparkline con il dato di temperatura
datasources["nome_oggetto"]["temperatura"]
Un Light Indicator con il dato di allarme
datasources["nome_oggetto"]["allarme"]
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Freeboard.io: personalizzazione del Light Indicator
E' possibile personalizzare il Light indicator cambiando ad
esempio i due colori in modo che con allarme sia rosso e senza
allarme sia verde.
Nel componente Light indicator si modifica il contenuto di "ON
TEXT" ed "OFF TEXT" inserendo nei rispettivi pannelli .JS EDITOR:
ON TEXT
freeboard.addStyle('.indicator-light.on', "
background-color:#FF0000; box-shadow: 0px 0px 15px
#FF9900; border-color:#FDF1DF;");
return "ON"
OFF TEXT
freeboard.addStyle('.indicator-light', " background-
color:#00FF00; box-shadow: 0px 0px 15px #FF9900;
border-color:#FDF1DF;");
return "OFF"
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
STEP 6
INIZIO
Inizializza canale seriale
Configura le uscite
Inizializza display(sfondo bianco)
Connette alla rete WiFi
Connessione al servizio web
Soglia superata?
Legge il valore del sensore di temperatura
Mette in scala l'uscita analogica
Emette l'uscita analogica
Converte il valore letto in °C
Emette il valore sul display
Emette allarme ON
Sfondo display rosso
Emette allarme OFF
Sfondo display verde
Invia valore e stato soglia al canale seriale
Invia i dati al server
Pausa di 2 secondi
All togher now
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
Internet of Things Duilio Peroni – Alessandro SaracinoMaker Faire Rome, 15-16 ott. 2016
http://www.schoolmakerday.it/iot
duilio.peroni (at) gmail.com