Il talk spieghera' come realizzare applicazioni basate sul paradigma Internet of Things (IOT). Verra' illustrata l'architettura tipica di un sistema IOT, composta da dispositivi con sensori, da un internet gateway e da applicativi software per PC o terminali mobili. Facendo riferimento a dispositivi con interfaccia wireless basata sullo standard ZigBee verranno descritte le componenti software e le interfacce da realizzare, in particolare per la gestione dei dati e il funzionamento della rete.
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Internet delle Cose: come realizzare un’ applicazione, by Marco Sgroi, Remo Pomposini, Antonio Iannopollo
1. Internet delle Cose:
come realizzare un’ Applicazione
Marco Sgroi marco.sgroi@sotel.it
Antonio Iannopollo iannopollo@gmail.com
Remo Pomposini remo.pomposini@sotel.it
So.Tel srl
www.sotel.it
2. Chi Siamo
Antonio Remo Marco
Iannopollo Pomposini Sgroi
Nome speaker
Mail speaker – company or community
3. Tecnologia: Reti Wireless di Sensori
• Nodi di piccole dimensioni,
basso consumo energetico,
risorse limitate
• Range di trasmissione tipico: Alimentazione
alcune decine di metri Sensore Attuatore
Radio/
• Bassa velocita’ di trasmissione Micro
Protocol
Controller
(es. ZigBee/802.15.4: 256 kbps)
Nome speaker
Mail speaker – company or community
4. Architettura
Nodi sensori
Internet Gateway
Nome speaker
Mail speaker – company or community
5. Standard ZigBee
• Banda: 2.4 Ghz Application
Security ZigBee
• Max data rate: 250Kbps
Network
• Low Power MAC
IEEE 802.15.4
• Topologie: Star, tree, mesh PHY
• Tipologie di nodi
• Coordinatore
• Router
• End Device
Nome speaker
Mail speaker – company or community
6. Realizzazione Applicazioni
Selezione Progettazione Installazione
(sensori, gateway,
Piattaforma applicazioni SW)
Nome speaker
Mail speaker – company or community
7. Dispositivi con Sensori
• Sviluppo SW su processori con risorse limitate
• Configurazione parametri rete ZigBee
• Ottimizzazione durata delle batterie: duty cycle
• Realizzazione interfaccia di acquisizione dati da sensori
• Protocollo trasmissione dati livello applicativo (es. profili
applicativi ZigBee)
• Data Processing
Nome speaker
Mail speaker – company or community
8. Gateway
Internet Rete di Sensori
Gateway
• Definizione livelli di astrazione e API per interazione con
applicazioni web
Nome speaker
Mail speaker – company or community
9. Applicazioni Software
• Interfaccia Utente
• Visualizzazione dati da sensori
• Inserzione comandi per attuatori
• Gestione dati
• es. storage, processing
• Gestione rete
• Visualizzazione lista nodi, qualita’ link, tabelle di routing
• Implementazione locale (es. gateway) o remota (nel cloud)
Nome speaker
Mail speaker – company or community
10. Installazione
G
Analisi delle interferenze e della qualita’ del segnale
Posizionamento ottimale dei nodi
Nome speaker
Mail speaker – company or community
11. Piattaforma So.Tel
REST ZigBee
Internet Gateway
Applicazione SW Gateway Dispositivi con Sensori
- Visualizzazione dati - Implementazione su Plug - Sensori: temperatura,
- Gestione della rete Computer Linux umidita’, luminosita’,
- Test di valutazione delle - Interfaccia REST per accelerazioni, consumi di
performance comunicazione con energia
applicazioni web - Attuatore: interruttore
- Comunicazione con - Interfaccia dispositivi
dispositivi sensori basata Modbus
su ZigBee Cluster Library
Nome speaker
Mail speaker – company or community
12. Demo
Implementazione di Applicazione “Ping-Pong” su
Open Source Platform (Arduino + Plug Computer Linux)
App Ping-Pong App Ping-Pong
App Ping-Pong
(Python) ZigBee
SW Rest/XML
Librerie
Librerie Arduino
Python
HW PC
Plug Computer Arduino
ZigBee USB Dongle Digi Xbee
UI Gateway Nodo ZigBee
Nome speaker
Mail speaker – company or community
13. Gateway APIs
• Paradigma REST (Representational Transfer State)
• Definizione e manipolazione risorse
• Metodi HTTP
• POST >> CREATE
• GET >> READ
• PUT >> UPDATE
• DELETE >> DELETE
Nome speaker
Mail speaker – company or community
15. Call to Action
• Applicazione “Ping-Pong” open source su Sourceforge:
• Project: Internet of Things with Arduino
• URL: http://sourceforge.net/p/iotarduino
• Qualche suggerimento per applicazioni IOT
• Lettura sensori (temperatura, movimento, etc.)
• Interruttore wireless
• Sistema per ottimizzazione dei consumi di energia in ambito domestico
Nome speaker
Mail speaker – company or community