Internet of Things con .Net Micro Framework: un mondo di device interconnessi

560 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
560
On SlideShare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Internet of Things con .Net Micro Framework: un mondo di device interconnessi

  1. 1. Internet-of-Thingscon .NET MicroFrameworkLorenzo Maiorfi -
  2. 2. Cosa si intende per IoT?• IoT: rete globale di sensori/attuatori connessi tramite protocollicomunemente utilizzati in Internet• Web-of-Things: insieme di servizi RESTful che misurano emanipolano proprietà «fisiche»• M2M:insieme di tecnologie che consentono, attraverso canali wired owireless, la comunicazione tra dispositivi
  3. 3. Piattaforme per IoT Embedded• Arduino: non ha uno stack TCP/IP, piattaforma per makers• Linux Embedded: frammentato, hardware «pompato»• Mbed: non molto diffuso, la piattaforma è in realtà solo un insieme di libreriee un IDE on-line• Sviluppo nativo su ARM, PIC, AVR, MSP430, PSoC: complesso, nonportabile, poco orientato all’IoT• Java ME: poche piattaforme supportate, poco diffuso, porting non-open• .NET Micro Framework: ha uno stack TCP/IP nativo,professionale/industriale, MCU virtualizzato, supporta dual-core,sempre più diffuso, completamente open!
  4. 4. Hello, leds and buttons!L’immancabile “Salve, mondo!” sviluppato con.NET Micro Framework
  5. 5. Componenti di un’applicazione IoT• Supporto a TCP/Socket• Supporto a HTTP client• Supporto a HTTP server (Connettività? NAT-ting? Security?)• Supporto a Serializzazione• Supporto a PTTH (eh?)• Librerie client specializzate per piattaforme IoT pubbliche:• Xively (già COSM, già Pachube)• ThingSpeak
  6. 6. PTTH? Come sarebbe a dire?• In molti casi l’esposizione di un endpoint HTTP server non è possibileo conveniente (IP statico, NAT-ting, DNS dinamico, firewall, ecc.)…• …ma le sole funzionalità HTTP client non bastano (ad es. per servizion-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 withIoT”) permette di implementare un server HTTP o PTTH configurabile arun-time!
  7. 7. PTTH con Yaler.netUn server HTTP embedded con una chiavetta 3G,una batteria 9V e 10 righe di C#
  8. 8. Piattaforme pubbliche per IoT• ThingSpeak• Semplice• Open• Dashboard web configurabile• Xively/COSM/Pachube• API molto ricca• Modello di trigger molto potente• Permette feed privati• Scalabile su piani business
  9. 9. Xively/ThingSpeakDal “campo” al web in 5 secondi netti!
  10. 10. MQTT: finalmente uno standard per M2M• MQTT : MQ Telemetry Transport per M2M communication• Inventato nel 1999 da Andy Stanford-Clark (di IBM) e Arlen Nipper• E’ un protocollo che definisce un modello ultra-lightweight dimessaging publisher/subscriber• Molto adatto per comunicazioni M2M tra dispositivi anche di bassoprofilo e con poca banda• Da Marzo 2013 è in corso il processo di standardizzazione da partedell’OASIS
  11. 11. MQTT: broker, librerie e bridge• Molti broker open (Mosquitto e Apache Apollo tra tutti)• Librerie client per tutte le piattaforme e moltissimi linguaggi• Molti tool di pubblicazione/sottoscrizione (mqtt.io tra tutti)• Molti bridge verso altre piattaforme (mqtt/Xively, mqtt/http, mqtt/REST,ecc.)• Il nostro server MQTT (mosquitto su Linux CentOS) è aperto a tutti, elo trovate su MQTT.IT
  12. 12. Demo MQTTUn broker pubblico, un browser ed unNetduino…dimentico niente?
  13. 13. http://www.innovactive.it http://www.tinyclr.itGrazie!

×