Grazie a Rilheva IIoT Platform
puoi realizzare il tuo progetto MQTT
in pochi minuti con 3 semplici passaggi

Cos’è MQTT e perché adottarlo

MQTT (Message Queuing Telemetry Transport) è un protocollo di comunicazione snello e performante nato con l’obiettivo di gestire in modo efficiente la comunicazione tra le macchine. E’ largamente adottato in ambito industriale ed è diventato uno standard de facto per quanto riguarda l’Industrial IoT.

Il protocollo MQTT ha tra le sue caratteristiche principali la leggerezza, l’essenzialità e la versatilità. Queste caratteristiche lo rendono adatto ad essere impiegato in quegli ambiti dove le risorse (memoria e potenza di calcolo) dei dispositivi e la larghezza di banda della rete sono limitate. E’ inoltre in grado di gestire la comunicazione su reti non perfette in termini di stabilità della connessione e soggette a frequenti interruzioni.

La comunicazione tramite MQTT è bidirezionale ed è quindi possibile sia leggere i dati dal campo che inviare comandi verso i dispositivi.

Il protocollo MQTT in sintesi

  • Semplice

    Solo 3 funzioni: connect + publish + subscribe 

  • Affidabile

    QoS per supportare reti degradate

  • Leggero

    overhead minimo ed estrema efficienza

  • Aperto

    standard definito e aperto (royalty-free)

MQTT come funziona

Il protocollo MQTT adotta un paradigma di comunicazione asincrono basato su pubblicazione e sottoscrizione (publish/subscribe).
Quando il nodo A vuole comunicare con il nodo B, non lo fa in modo sincrono, ovvero come se fosse una telefonata in cui gli scambi sono immediati.
Al contrario, nel protocollo MQTT, il messaggio viene pubblicato dal nodo A (publish) e viene ricevuto, anche a distanza di tempo, dal nodo B che ne ha sottoscritto la ricezione (subscribe).
Con il protocollo MQTT si disaccoppiano la produzione e la ricezione del messaggio anche da un punto di vista temporale.
Si tratta perciò di un funzionamento molto diverso da altri protocolli come ad esempio il protocollo HTTP, utilizzato per il web, che è di tipo request-response.

Lo scambio dei messaggi nel protocollo MQTT avviene tramite un broker, ovvero un server che si occupa di ricevere i messaggi dai publisher e di consegnarli ai subscriber. Il broker si occupa di consegnare soltanto i messaggi che fanno capo ai topic sottoscritti dal ricevente.
I topic sono delle categorie in cui i messaggi sono raggruppati logicamente. Un topic potrebbe ad esempio raggruppare tutti i dati climatici di un determinato ambiente oppure i parametri di funzionamento di una particolare macchina.

Un esempio di publisher può essere un sensore di temperatura che pubblica le proprie letture verso un broker e su un certo topic.
Il subscriber, ad esempio un servizio di raccolta dati, si connette al broker ed effettua la sottoscrizione ai topic di interesse, tra cui anche quello relativo alle letture della sonda di temperatura.
Una volta che il broker riceve una pubblicazione su un topic procederà all’invio del relativo messaggio a tutti i subscriber.
In questo esempio il broker invierà al servizio di raccolta dati le letture che riceve dal sensore di temperatura.

I dati vengono inviati dal publisher nel corpo del messaggio (payload) utilizzando un formato precedentemente concordato tra publisher e subscriber e che solitamente dipende dal tipo di applicazione
Molto spesso viene utilizzata una struttura JSON come nell’esempio seguente.

Un altro aspetto tecnicamente significativo è che per ciascuna connessione client-broker può essere specificato un diverso livello di qualità del servizio (QoS).

0 (at most once): il messaggio viene inviato una sola volta senza garanzia di consegna.

1 (at least once): il messaggio viene inviato più volte finché non si ottiene una conferma di ricezione.

2 (exactly once): il messaggio viene inviato una e una sola volta con garanzia di consegna.

1
2
3
1

Il PUBLISHER invia (publish) un messaggio su un TOPIC (subject)

2

Il SUBSCRIBER è un consumer che si mette in ascolto (subscribe) sui messaggi pubblicati su un TOPIC specifico

3

Il BROKER (server di smistamento messaggi) si occupa di effettuare il matching tra SUBSCRIBER e PUBLISHER con il conseguente dispatching del messaggio.

Quindi per ricapitolare, se vuoi mettere in pista una soluzione IoT basata su MQTT devi:

  1. Disporre di un broker che sia in grado di accettare le tue connessioni (server accessibile in internet)
  2. Avere un gateway IoT dotato di client MQTT
  3. Collegare il gateway IoT al broker con le opportune credenziali e in sicurezza
  4. Pubblicare le informazioni del Gateway IoT su uno specifico topic inviando un payload che sia interpretabile da chi lo deve ricevere
  5. Ricevere eventualmente comandi sottoscrivendo un differente topic specifico
  6. Disporre di una piattaforma IoT dove salvare, elaborare e pubblicare i dati ricevuti dal gateway

Ti sembra troppo complicato?
In effetti non è proprio banale ….

Per tua fortuna sei nel posto giusto.

La vision di Rilheva è da sempre quella di rendere semplice e accessibile a tutti l’adozione della tecnologia IoT, anche quella più complessa.

Abbiamo lavorato intensamente per semplificare tutto il processo di comunicazione e configurazione, fornendoti degli strumenti guidati che ti permettono di arrivare all’obiettivo in minuti, non in mesi.

Ti spiego come in 3 semplici passaggi puoi iniziare a generare valore dai tuoi dati d’impianto:

  • 1. Configura

    il tuo Gateway IoT con le credenziali che trovi nella sezione MQTT Broker di Rilheva

  • 2. Imposta

    i topic (subscribe e publish)

  • 3. Definisci

    i parametri del payload

Hai finito!

Ora i dati del tuo sensore/gateway IoT fluiranno dal campo al cloud e dal cloud al tuo smartphone in meno di 1 secondo. E hai a disposizione tutta la potenza di Rilheva IIoT Platform, l’Agile WEB Scada che dal 2004 aiuta le aziende e le persone nella trasformazione digitale dei loro processi e del loro modelli di business.

Vuoi realizzare un progetto IoT basato su MQTT ma non sai da dove partire? Ti sembra tutto complicato e irrealizzabile?

e prova il nostro servizio Rilheva MQTT.
Ti stupirai di quanto sia semplice portare a termine il tuo progetto MQTT con la Piattaforma Rilheva!