1 / 20

Internet-of-Things : un mondo di device interconnessi

Tiny CLR . it – Innovactive –. Internet-of-Things : un mondo di device interconnessi. Lorenzo Maiorfi & Gianluca Ruta. IoT : cos’è…. Il termine nasce nel 1999 per indicare una tecnologia di identificazione univoca di oggetti all’interno di una “rete”

aderes
Download Presentation

Internet-of-Things : un mondo di device interconnessi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TinyCLR.it – Innovactive– Internet-of-Things : un mondo di device interconnessi Lorenzo Maiorfi & Gianluca Ruta

  2. IoT : cos’è… • Il termine nasce nel 1999 per indicare una tecnologia di identificazione univoca di oggetti all’interno di una “rete” • Con il tempo, il termine assume significati sempre più ampi, che mano a mano si “confondono” con le applicazioni della tecnologia: • Wireless Sensor Networks • Machine to Machine (M2M) • Physical computing • Connected Environments • Physical Internet • …e molti altri!

  3. …e cosa non è! • Oggi il “focus” di IoT è più definito, dal momento che si è comunemente convenuto che IoT NON è (o meglio, non solo, o non necessariamente): • ubiquitous/pervasive computing • Internet Protocol • communication technologies • embedded devices • the applications • The Internet of Things is a global network of computers, sensors and actuators connected through Internet protocols. • The Web of Things consists of RESTful Web services that measure or manipulate physical properties.

  4. Roadmap di IoT Physical-World-Web Teleoperation and telepresence: ability to monitor and control distant objects Livello tecnologico Ubiquitous Positioning Locating people and everyday objects Vertical-Market Applications Surveillance, security, healthcare, transport, food safety, document management Supply-chain Helpers RFID tags for facilitating routing, inventorying and loss prevention 2020 2010 2000

  5. .NET Micro Framework & IoT • Gli stack di rete “embedded” implementano ogni layer del modello ISO/OSI, dall’applicativo al fisico (non c’è un sistema operativo, non c’è un device driver, e mano a mano che si scende nello stack le cose si fanno meno portabili !) • Lo stack open-source più diffuso è lwIP, .NETMF lo ha integrato nel proprio PAL, ma ogni porting richiede lo sviluppo di componenti software specifici (ad es. driver per controller MAC e PHY, oppure per controller autonomi, come ENC28 o WizNet5100) • .NETMF definisce uno strato di astrazione dello stack di rete basato su due “modelli”: • Network Interface • Socket • Gli strati più alti (HTTP, FTP, ecc.) sono “managed”

  6. DEMO Socket programming con .NETMF

  7. HTTP server, client o entrambi! • A seconda degli scenari, una soluzione “Web-of-things” tipica richiede che il dispositivo sia un client REST, un server REST, o entrambi allo stesso tempo • Le funzionalità HTTP client sono implementate dalla classe HttpWebRequest • Le funzionalità HTTP server sono implementate dalla classe HttpListener • Esistono molti contributi della community per l’interazione con servizi che espongono API REST (twitter, facebook, google, flickr, ecc.) • Nei casi in cui sia applicabile, ci sono WCF e DPWS

  8. DEMO HTTP programming con .NETMF

  9. PTTH? Come sarebbe a dire? • In molti casi l’esposizione di un endpoint HTTP server non è possibile o conveniente (IP statico, NAT-ting, DNS dinamico, firewall, ecc.)… • …ma le sole funzionalità HTTP client non bastano (ad es. per servizi on-demand)…quindi? • Si può utilizzare un servizio che gestisca il PTTH, come Yaler (http://yaler.net) • La libreria open Gsiot.Server di Cuno Pfister (autore di “Getting Started with IoT”) permette di implementare un server HTTP o PTTH configurabile a run-time!

  10. DEMO HTTP/PTTH programming con Gsiot.Server

  11. Piattaforme publiche per IoT • ThingSpeak • Pro: • Molto veloce da configurare • API semplice e funzionale • Update delle dashboard veloce (5-10 secondi) • Libreria client per .NETMF disponibile come parte della strepitosa “μP” di Paolo Patierno (http://uplibrary.codeplex.com) • Contro • Modello dei trigger poco flessibile e complicato • Numero dei field di un datastream limitato a 10 • Sito web di amministrazione migliorabile • Poche applicazioni disponibili per la piattaforma

  12. DEMO ThingSpeak programming con «μP» di Paolo Patierno

  13. Piattaforme publiche per IoT • COSM (Pachube) • Pro: • Piattaforma attiva da diversi anni senza discontinuità di servizio • API flessibile e potente (CSV, XML, JSON) • Modello di trigger molto ricco • Engine per il rendering dei grafici utilizzabile in applicazioni esterne • Grande flessibilità nella definizione dei datastream • Supporto a Websocket e TCP Socket (in realtà usano una API TCP/JSON per definire richieste HTTP/JSON!) • Contro • Interfaccia web poco adatta al monitoraggio continuo • Il supporto ai trigger è possibile solo in formato JSON (no XML, no CSV) • Piani commerciali non più chiari come quando si chiamava Pachube

  14. DEMO Cosm programming e trigger Cosm/ThingSpeak con Yaler

  15. Ultima frontiera: IoT real-time • COSM e ThingSpeak sono piattaforme che favoriscono un modello di comunicazione simplex rispetto al full-duplex • In COSM e ThingSpeak le variazioni dello stato del device sono campionate ogni 5-10 secondi, quindi c’è poca «banda» e poca «responsività» • Serve una piattaforma per il monitoraggio ed il controllo remoto che possa agire entro 0.1 secondi, full-duplex e che permetta un modello di interazione arbitrario • In Innovactive stiamo mettendo a punto un framework per lo sviluppo di applicazioni Iot real-time: TiberJS

  16. IoT real-time con Tiber.js Digital INPUTs TCP/IP HTTP Digital OUTPUTs Server WEB Analog INPUTs .NET MF Device Browser (Plain HTML/JS) Analog OUTPUTs

  17. DEMO IoT real-time con

  18. Demo «LIVE» • Collegatevi all’Access Point WiFi il cui SSID èTP-LINK_LORENZO_GRANDE • Aprite l’indirizzohttp://192.168.0.51/demoiot

  19. IoT: quali evoluzioni a breve? • Integrazione con il cloud-computing (ad es. StreamInsight) • Sviluppo delle tecnologie per la creazione di reti periferiche wireless mesh (Bluetooth low-energy, ZigBee, ANT) • Sviluppo e diffusione di dispositivi IoT indossabili (bracciali, orologi, collane, cinture, giacche, scarpe sono stati in gran parte già sviluppati come prototipi!) • Maggiore diffusione nel campo della domotica • Integrazione più spinta nel settore professionale della automazione industriale

  20. Ringraziamo gli sponsor!

More Related