SlideShare a Scribd company logo
1 of 24
Il protocollo MQTT e il
paradigma publish-subscribe.
Applicazioni
nell’Internet of Things.
Introduzione protocollo
MQTT
Agenda
Esempio di
applicazione
pratica
Il paradigma
publish-subscribe
Broker
Registra le
sottoscrizioni
Gestisce le
pubblicazioni
Il protocollo
MQTT
• Facile implementazione
• Diversi livelli di QoS
• Overhead minimo
• Data-agnostico
• Stateful
1999
MQ Telemetry Transport
Andy Stanford-Clark (IBM)
Arlen Nipper (Arcom)
MQTT v3.1
rilasciato sotto licenza
royalty-free
2010
MQTT v3.1.1
entra a far parte degli
standard OASIS
2014
2010 2016
Applicazioni nel
Internet of Things
Perché
Internet of
Things?
Kevin Ashton (1999)
ESP8266
• Progettazione sistema per
la termoregolazione
• Interruttore
programmabile
riscaldamento/nome_stanza/temperatura_percepita
Sensore
riscaldamento/nome_stanza/temperatura_percepita
Sensore
riscaldamento/nome_stanza/temperatura_percepita
Sensore
19°
riscaldamento/nome_stanza/temperatura_percepita
riscaldamento/nome_stanza/temperatura_scelta
Attuatore
riscaldamento/nome_stanza/temperatura_percepita
riscaldamento/nome_stanza/temperatura_scelta
Attuatore
riscaldamento/nome_stanza/temperatura_percepita
riscaldamento/nome_stanza/temperatura_scelta
Attuatore
riscaldamento/nome_stanza/temperatura_percepita
riscaldamento/nome_stanza/temperatura_scelta
Attuatore
19°
21°
CloudMQTT
Grazie per l’attenzione

More Related Content

What's hot

The Algorand Blockchain Decentralized and for Developers
The Algorand Blockchain  Decentralized and for DevelopersThe Algorand Blockchain  Decentralized and for Developers
The Algorand Blockchain Decentralized and for DevelopersRuss Fustino
 
Mqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of thingsMqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of thingsRahul Gupta
 
CCNA RS_NB - Chapter 7
CCNA RS_NB - Chapter 7CCNA RS_NB - Chapter 7
CCNA RS_NB - Chapter 7Irsandi Hasan
 
CCNA 1 Routing and Switching v5.0 Chapter 10
CCNA 1 Routing and Switching v5.0 Chapter 10CCNA 1 Routing and Switching v5.0 Chapter 10
CCNA 1 Routing and Switching v5.0 Chapter 10Nil Menon
 
Routing fundamentals with mikrotik
Routing fundamentals with mikrotikRouting fundamentals with mikrotik
Routing fundamentals with mikrotikAchmad Mardiansyah
 
MQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of ThingsMQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of ThingsUniversity of Pretoria
 
CCNP Switching Chapter 1
CCNP Switching Chapter 1CCNP Switching Chapter 1
CCNP Switching Chapter 1Chaing Ravuth
 
Bitcoin Final Year Seminar Report
Bitcoin Final Year Seminar ReportBitcoin Final Year Seminar Report
Bitcoin Final Year Seminar ReportShantanu Singh
 
Blockchain and banking industry
Blockchain and banking industryBlockchain and banking industry
Blockchain and banking industryThomas Richard
 
Packet light short1
Packet light short1Packet light short1
Packet light short1Kurt Rahrig
 
CCNA 1 Routing and Switching v5.0 Chapter 4
CCNA 1 Routing and Switching v5.0 Chapter 4CCNA 1 Routing and Switching v5.0 Chapter 4
CCNA 1 Routing and Switching v5.0 Chapter 4Nil Menon
 
CCNA 1 Routing and Switching v5.0 Chapter 9
CCNA 1 Routing and Switching v5.0 Chapter 9CCNA 1 Routing and Switching v5.0 Chapter 9
CCNA 1 Routing and Switching v5.0 Chapter 9Nil Menon
 
MQTT IOT Protocol Introduction
MQTT IOT Protocol IntroductionMQTT IOT Protocol Introduction
MQTT IOT Protocol IntroductionPrem Sanil
 
Introducing MQTT
Introducing MQTTIntroducing MQTT
Introducing MQTTAndy Piper
 
Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016
Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016
Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016I Putu Hariyadi
 
CCNA 1 Routing and Switching v5.0 Chapter 11
CCNA 1 Routing and Switching v5.0 Chapter 11CCNA 1 Routing and Switching v5.0 Chapter 11
CCNA 1 Routing and Switching v5.0 Chapter 11Nil Menon
 

What's hot (20)

The Algorand Blockchain Decentralized and for Developers
The Algorand Blockchain  Decentralized and for DevelopersThe Algorand Blockchain  Decentralized and for Developers
The Algorand Blockchain Decentralized and for Developers
 
Mqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of thingsMqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of things
 
CCNA RS_NB - Chapter 7
CCNA RS_NB - Chapter 7CCNA RS_NB - Chapter 7
CCNA RS_NB - Chapter 7
 
CCNA 1 Routing and Switching v5.0 Chapter 10
CCNA 1 Routing and Switching v5.0 Chapter 10CCNA 1 Routing and Switching v5.0 Chapter 10
CCNA 1 Routing and Switching v5.0 Chapter 10
 
How MQTT work ?
How MQTT work ?How MQTT work ?
How MQTT work ?
 
Routing fundamentals with mikrotik
Routing fundamentals with mikrotikRouting fundamentals with mikrotik
Routing fundamentals with mikrotik
 
VOIP dan PBX
VOIP dan PBXVOIP dan PBX
VOIP dan PBX
 
MQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of ThingsMQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of Things
 
CCNP Switching Chapter 1
CCNP Switching Chapter 1CCNP Switching Chapter 1
CCNP Switching Chapter 1
 
Bitcoin Final Year Seminar Report
Bitcoin Final Year Seminar ReportBitcoin Final Year Seminar Report
Bitcoin Final Year Seminar Report
 
Blockchain and banking industry
Blockchain and banking industryBlockchain and banking industry
Blockchain and banking industry
 
Packet light short1
Packet light short1Packet light short1
Packet light short1
 
CCNA 1 Routing and Switching v5.0 Chapter 4
CCNA 1 Routing and Switching v5.0 Chapter 4CCNA 1 Routing and Switching v5.0 Chapter 4
CCNA 1 Routing and Switching v5.0 Chapter 4
 
Mikrotik API
Mikrotik APIMikrotik API
Mikrotik API
 
CCNA 1 Routing and Switching v5.0 Chapter 9
CCNA 1 Routing and Switching v5.0 Chapter 9CCNA 1 Routing and Switching v5.0 Chapter 9
CCNA 1 Routing and Switching v5.0 Chapter 9
 
MQTT IOT Protocol Introduction
MQTT IOT Protocol IntroductionMQTT IOT Protocol Introduction
MQTT IOT Protocol Introduction
 
ReIM Functional Overview
ReIM Functional OverviewReIM Functional Overview
ReIM Functional Overview
 
Introducing MQTT
Introducing MQTTIntroducing MQTT
Introducing MQTT
 
Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016
Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016
Pembahasan Cisco Packet Tracer Challenge LKS SMK Provinsi NTB 2016
 
CCNA 1 Routing and Switching v5.0 Chapter 11
CCNA 1 Routing and Switching v5.0 Chapter 11CCNA 1 Routing and Switching v5.0 Chapter 11
CCNA 1 Routing and Switching v5.0 Chapter 11
 

Viewers also liked

Internet of things
Internet of thingsInternet of things
Internet of thingsSara Scotti
 
Internet of Things: mercato, tecnologie, applicazioni e competenze
Internet of Things: mercato, tecnologie, applicazioni e competenzeInternet of Things: mercato, tecnologie, applicazioni e competenze
Internet of Things: mercato, tecnologie, applicazioni e competenzeArmando Martin
 
Inside Google's Numbers in 2017
Inside Google's Numbers in 2017Inside Google's Numbers in 2017
Inside Google's Numbers in 2017Rand Fishkin
 
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...Edureka!
 
Top 5 Deep Learning and AI Stories - October 6, 2017
Top 5 Deep Learning and AI Stories - October 6, 2017Top 5 Deep Learning and AI Stories - October 6, 2017
Top 5 Deep Learning and AI Stories - October 6, 2017NVIDIA
 
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017Carol Smith
 

Viewers also liked (7)

Internet of things
Internet of thingsInternet of things
Internet of things
 
Internet of Things: mercato, tecnologie, applicazioni e competenze
Internet of Things: mercato, tecnologie, applicazioni e competenzeInternet of Things: mercato, tecnologie, applicazioni e competenze
Internet of Things: mercato, tecnologie, applicazioni e competenze
 
Inside Google's Numbers in 2017
Inside Google's Numbers in 2017Inside Google's Numbers in 2017
Inside Google's Numbers in 2017
 
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
 
Top 5 Deep Learning and AI Stories - October 6, 2017
Top 5 Deep Learning and AI Stories - October 6, 2017Top 5 Deep Learning and AI Stories - October 6, 2017
Top 5 Deep Learning and AI Stories - October 6, 2017
 
The AI Rush
The AI RushThe AI Rush
The AI Rush
 
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
 

Similar to Il protocollo MQTT e il paradigma publish-subscribe. Applicazioni nell'Internet of Things.

Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana Crouzet
 
Crouzet Automation - em4 Guida alla scelta
Crouzet Automation - em4 Guida alla sceltaCrouzet Automation - em4 Guida alla scelta
Crouzet Automation - em4 Guida alla sceltaCrouzet
 
IoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architettureIoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architettureStefano Valle
 
Analysis and Characterization of Devices and Protocol Stacks for the Internet...
Analysis and Characterization of Devices and Protocol Stacks for the Internet...Analysis and Characterization of Devices and Protocol Stacks for the Internet...
Analysis and Characterization of Devices and Protocol Stacks for the Internet...Mauro Losciale
 
An IoT prototype: from ideation to promotion
An IoT prototype: from ideation to promotionAn IoT prototype: from ideation to promotion
An IoT prototype: from ideation to promotionJennifer De Filicaia
 
Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1
Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1
Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1Massimo Bonanni
 
Servizi a Rete TOUR 2023 - 28 settembre | GORI + ACMO
Servizi a Rete TOUR 2023 - 28 settembre | GORI + ACMOServizi a Rete TOUR 2023 - 28 settembre | GORI + ACMO
Servizi a Rete TOUR 2023 - 28 settembre | GORI + ACMOServizi a rete
 
Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2pma77
 
SENECA Connectivity Day alla fiera SAVE 2015
SENECA Connectivity Day alla fiera SAVE 2015SENECA Connectivity Day alla fiera SAVE 2015
SENECA Connectivity Day alla fiera SAVE 2015SENECA
 
Internet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessiInternet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessiWhymca
 
Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0Gabriele Di Bernardo
 
Vpn Virtual Private Network
Vpn Virtual Private NetworkVpn Virtual Private Network
Vpn Virtual Private Networkcarmine ricca
 
5 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte15 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte1Majong DevJfu
 
Brand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation ItBrand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation ItGianluca Musetti
 
Presentazione csp-ambient intelligence
Presentazione csp-ambient intelligencePresentazione csp-ambient intelligence
Presentazione csp-ambient intelligenceCSP Scarl
 
IOT: protocolli long range
IOT: protocolli long rangeIOT: protocolli long range
IOT: protocolli long rangeFabio Gatti
 
Monitoraggio in continuo delle perdite della rete acquedottistica di Trento
Monitoraggio in continuo delle perdite della rete acquedottistica di TrentoMonitoraggio in continuo delle perdite della rete acquedottistica di Trento
Monitoraggio in continuo delle perdite della rete acquedottistica di TrentoServizi a rete
 

Similar to Il protocollo MQTT e il paradigma publish-subscribe. Applicazioni nell'Internet of Things. (20)

8 Www2009 Parte1
8 Www2009 Parte18 Www2009 Parte1
8 Www2009 Parte1
 
Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana
 
Crouzet Automation - em4 Guida alla scelta
Crouzet Automation - em4 Guida alla sceltaCrouzet Automation - em4 Guida alla scelta
Crouzet Automation - em4 Guida alla scelta
 
IoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architettureIoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architetture
 
Analysis and Characterization of Devices and Protocol Stacks for the Internet...
Analysis and Characterization of Devices and Protocol Stacks for the Internet...Analysis and Characterization of Devices and Protocol Stacks for the Internet...
Analysis and Characterization of Devices and Protocol Stacks for the Internet...
 
An IoT prototype: from ideation to promotion
An IoT prototype: from ideation to promotionAn IoT prototype: from ideation to promotion
An IoT prototype: from ideation to promotion
 
Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1
Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1
Bluetooth low energy & Lumia Sensor Core per Windows Phone 8.1
 
TCP IP
TCP IPTCP IP
TCP IP
 
Servizi a Rete TOUR 2023 - 28 settembre | GORI + ACMO
Servizi a Rete TOUR 2023 - 28 settembre | GORI + ACMOServizi a Rete TOUR 2023 - 28 settembre | GORI + ACMO
Servizi a Rete TOUR 2023 - 28 settembre | GORI + ACMO
 
Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2
 
SENECA Connectivity Day alla fiera SAVE 2015
SENECA Connectivity Day alla fiera SAVE 2015SENECA Connectivity Day alla fiera SAVE 2015
SENECA Connectivity Day alla fiera SAVE 2015
 
Internet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessiInternet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessi
 
Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0
 
Vpn Virtual Private Network
Vpn Virtual Private NetworkVpn Virtual Private Network
Vpn Virtual Private Network
 
5 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte15 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte1
 
Brand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation ItBrand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation It
 
Presentazione csp-ambient intelligence
Presentazione csp-ambient intelligencePresentazione csp-ambient intelligence
Presentazione csp-ambient intelligence
 
Global Cloud Data Center
Global Cloud Data CenterGlobal Cloud Data Center
Global Cloud Data Center
 
IOT: protocolli long range
IOT: protocolli long rangeIOT: protocolli long range
IOT: protocolli long range
 
Monitoraggio in continuo delle perdite della rete acquedottistica di Trento
Monitoraggio in continuo delle perdite della rete acquedottistica di TrentoMonitoraggio in continuo delle perdite della rete acquedottistica di Trento
Monitoraggio in continuo delle perdite della rete acquedottistica di Trento
 

Il protocollo MQTT e il paradigma publish-subscribe. Applicazioni nell'Internet of Things.

Editor's Notes

  1. Presento la mia Tesi di Laurea che ha come titolo «Il protocollo MQTT e il paradigma publiish-subscribe. Applicazioni nell’Internet of Things».
  2. Il paradigma publish-subscribe è un design pattern per la messaggistica, per lo scambio di contenuti ed informazioni in una rete. I nodi della rete possono essere publisher, quando creano e inviano i contenuti, e/o subscriber, quando si iscrivono ad un certo tipo di contenuti. Il paradigma prevede che quando un publisher pubblica un messaggio tutti i subscriber iscritti a quel tipo di messaggio lo ricevano.
  3. Un esempio ad alto livello del paradigma publish-subscribe è il social network Twitter. Un utente diventa subscriber quando segue un altro utente e publisher quando pubblica un tweet. È compito di Twitter ogni volta che viene pubblicato un tweet inoltrarlo e farlo apparire nelle timeline di tutti gli utenti che seguono l’autore del tweet.
  4. Il paradigma ha quindi bisogno di un tramite per permettere la trasmissione in multicast dal publisher ai subscriber. L’intermediario viene chiamato broker (o dispatcher) e ha il ruolo di registrare le sottoscrizioni dei vari client e di inoltrare ogni messaggio pubblicato da ogni client verso tutti i client iscritti a quel tipo di messaggi.
  5. Il protocollo MQTT è un protocollo del livello Applicativo dello standard ISO/OSI. Solitamente usato in cima allo stack TCP/IP ma implementabile su qualsiasi protocollo di rete e trasporto che forniscano una connessione bi-direzionale, ordinata e senza perdite di dati.
  6. Gli autori del protocollo hanno definito le caratteristiche in un manifesto ufficioso. Il protocollo deve essere implementabile anche in dispositivi con scarse risorse computazionali e che utilizzino canali di comunicazione instabili. QoS: garanzia di effettivo invio/ricezione dei messaggi. Data-agnostico: il payload può essere strutturato in qualsiasi modo a seconda dell’use case (file binari, testo, JSON, XML). Stateful: se il client lo richiede il broker salva il suo stato tra le varie sessioni (sottoscrizioni, messaggi con richiesta di garanzia di ricezione).
  7. Il protocollo è stato creato da Andy Stanford-Clark e Arlen Nipper per IBM nel 1999. La sua prima applicazione è stata il controllo di oleodotti e gasdotti tramite una rete di sensori connessi via satellite.
  8. Nel 2010 la versione 3.1 delle specifiche del protocollo è stata rilasciata sotto licenza royalty-free, rendendo quindi liberamente implementabile il protocollo.
  9. Dal rilascio con licenza royalty-free, nel 2010, la popolarità del protocollo è in continua crescita (come si può vedere dal grafico fornito da Google Trends per la chiave di ricerca «MQTT») anche grazie ai progetti Open Source dell’Eclipse Foundation PAHO e mosquitto. Paho è un insieme di librerie per l’implementazione di client MQTT in vari linguaggi di programmazione come C, Java, Python, C++, Go, .NET ed altri. Mosquitto è un broker open-source scritto in C disponibile per i maggiori sistemi operativi ma anche per dispositivi come il Raspberry Pi.
  10. Vediamo adesso come il protocollo può essere utilizzato nell’ambito dell’internet of Things per la realizzazione di progetti per l’automazione e la domotica utilizzando componenti a basso costo e librerie software open-source.
  11. Il termine Internet of Things è stato coniato da Kevin Ashton lo stesso anno in cui è nato MQTT, nel 1999. Molti analisti definiscono questi anni come l’era dell’Internet of Things (smartphone, macchine, frigoriferi, e applicazioni come le smart city, l’e-health, ecc…). I dispositivi connessi ad internet hanno superato in numero la popolazione mondiale ed è previsto che nel 2020 ci saranno più di 20 miliardi di dispositivi connessi alla rete globale.
  12. Per i miei progetti nell’«Internet delle cose» la cosa che ho scelto per la connettività è questo SoC (system-on-a-chip), l’ESP8266. È dotato di un processore che lavora a 80Mhz e di una manciata di kilobyte di memoria di sistema e da 1 a 16MB di memoria flash per la memorizzazione e l’esecuzione di semplici programmi. Inoltre implementa un modulo per la connessione alle reti Wi-Fi e alcuni pin GPIO (general purpose input/output) che permette di collegargli diversi sensori e attuatori.
  13. Nella tesi ho parlato di due progetti IoT che utilizzano l’ESP8266, un sistema per la termoregolazione nelle case e un’interruttore programmabile e comandabile da remoto.
  14. Il sistema di termoregolazione permette tramite una rete di sensori di temperatura e di attuatori che agiscono sulle valvole dei caloriferi (una coppia per ogni stanza) di gestire il riscaldamento di una abitazione.
  15. Il sensore di temperatura (in questo caso il TMP36, acquistabile per un paio di euro) comunica alla rete ad intervalli regolari la temperatura percepita in una stanza sul topic temperatura/nome_stanza/temperatura_percepita tramite MQTT. Queste sono due righe del codice del programma che viene eseguito dall’ESP8266.
  16. L’attuatore consiste in delle valvole che vengono applicate sui caloriferi e che si aprono quando vengono alimentate a 220V e si chiudono quando l’alimentazione viene interrotta. Tramite un relè è possibile programmarne il comportamento con un segnale a basso voltaggio come quello fornito dai pin GPIO dell’ESP8266.
  17. L’ESP8266 si iscrive ai topic per conoscere la temperatura attuale dell’ambiente e quella scelta dall’utente e se quest’ultima è maggiore della temperatura percepita apre la valvola attivando il relè.
  18. I sensori e gli attuatori si connettono al broker (rappresentato da un’istanza di mosquitto eseguita in locale, ad esempio su un Raspberry Pi) utilizzando un porting open source della libreria PAHO per il linguaggio C modificata per essere eseguita sull’ESP8266. Tramite la funzione di bridging offerta da mosquitto è possibile collegare il broker locale ad un broker remoto per permettere l’interazione con i dispositivi dentro casa anche senza essere connessi alla rete locale. Mentre in locale è possibile utilizzare MQTT su TCP senza criptazione della comunicazione, è possibile impostare per il bridge una connessione sicura, criptata end-to-end, utilizzando il protocollo TLS/SSL.
  19. Le foto mostrano altre esempi di implementazione del protocollo MQTT per usi nell’IoT per connettere alla rete un sensore di pioggia, un accellerometro e un interruttore.