Che cos’è il protocollo MQTT? Come si è sviluppato e come funziona? Come si può implementare questo protocollo nei sistemi d’automazione industriale con PLC?
Benvenuto, in questo articolo conosceremo da vicino un tecnologia di comunicazione che ha letteralmente stravolto l’utilizzo di molte apparecchiature, sia in ambito industriale che domestico. Oggi scopriremo cos’è MQTT, acronimo di Message Queuing Telemetry.
Ecco gli argomenti di oggi:
I protocolli di comunicazione industriali e di rete.
Descrizione del protocollo MQTT.
I brokers MQTT.
Quali sono alcuni broker conosciuti oggi?
MQTT, IiOT e IoT.
MQTT e Automazione industriale: Siemens Logo! e Simatic S7-1200.
I protocolli di comunicazione industriali e di rete.
Dove ci sono apparecchiature, oggi ci sono protocolli di comunicazione. Di questi ne esistono tantissimi, e negli ultimi anni, grazie anche all’impulso generato dall’industria 4.0, anche i protocolli stanno via via cambiando faccia.
Oggi la necessità è di avere i dati a disposizione in ogni momento e in ogni luogo, per cui ci si affida al cloud; proprio in questo contesto il protocollo MQTT ricopre ormai una posizione di rilievo.
Nei prossimi paragrafi vedremo di cosa si tratta più nel dettaglio.
Descrizione del protocollo MQTT.
MQTT è un protocollo di messaggistica leggero, ideato per trasferire dati da dispositivi con limitata capacità di calcolo e di memoria, come i sensori IoT, ai server di raccolta dati.
MQTT utilizza un modello di pubblicazione e sottoscrizione, in cui i dispositivi pubblicano messaggi su un argomento specifico verso i server, e i client sottoscrivono a quell'argomento per ricevere i messaggi.
I messaggi vengono inviati in modo asincrono e sono di solito di piccole dimensioni.
MQTT è altamente scalabile e affidabile, e può essere utilizzato in vari contesti, come il controllo del traffico, la sorveglianza ambientale, la domotica e il monitoraggio della salute.
I brokers MQTT.
Un broker MQTT è un server che funge da intermediario nella comunicazione tra i dispositivi IoT che utilizzano il protocollo MQTT.
Il broker riceve i messaggi dai dispositivi che pubblicano su determinati argomenti (topic) e li inoltra ai dispositivi che si sono sottoscritti a tali argomenti.
In pratica il broker MQTT gestisce l'instradamento dei messaggi tra i dispositivi IoT, consentendo una comunicazione efficiente e affidabile.
Il servizio MQTT può essere eseguito su un server fisico o in un ambiente cloud, e deve essere configurato correttamente per garantire la sicurezza e l'affidabilità della comunicazione.
Quali sono alcuni broker conosciuti oggi?
Elenchiamo quì sotto alcuni brokers MQTT molto conosciuti.
Mosquitto, un'implementazione open source di un broker MQTT sviluppata dalla Eclipse Foundation.
HiveMQ, un broker commerciale che offre funzionalità avanzate come la scalabilità orizzontale, la sicurezza avanzata e l'integrazione con il cloud.
EMQ X, broker MQTT open source e scalabile, in grado di gestire milioni di connessioni contemporaneamente.
RabbitMQ è un message broker open source che supporta anche il protocollo MQTT, oltre ad altri protocolli di messaggistica.
IBM Watson IoT Platform, offre un servizio cloud per l'IoT, il quale include un broker MQTT gestito.
MQTT, IiOT e IoT.
Come abbiamo visto questo protocollo è stato progettato per consentire una comunicazione affidabile e efficiente tra dispositivi con risorse limitate, come sensori, attuatori e altri dispositivi IoT.
Grazie alla sua bassa latenza e al basso consumo di energia, MQTT è diventato uno standard de facto per la comunicazione in ambienti anche industriali; per cui lo ritroviamo sia nelle applicazioni domestiche (IoT) che nelle fabbriche (IioT).
MQTT e Automazione industriale.
Oggi anche i dati di processo degli impianti automatizzati hanno spesso necessità di essere accessibili e di viaggiare in tutto il mondo. MQTT viene implementato anche nei moderni controllori logici programmabili (PLC), e non solo in quelli di fascia maggiore.
A titolo d’esempio, possiamo citare che anche il piccolo modulo logico Siemens Logo! può lavorare con il cloud, in questo caso con il servizio offerto da Amazon.
Il plc compatto S7-1200 con firmware a partire dalla versione 4.3 supporta MQTT, e per utilizzare questo protocollo è sufficiente importare l’apposita libreria e configurare l’istruzione messa a disposizione da Siemens; inserendola nel programma ladder.
Questa funzione di gestione comunicazione MQTT viene configurata con tutti i dati del broker, e con i topici su cui pubblicare o ai quali sottoscriversi.
Con alcuni comandi nel software si può avviare la pubblicazione e la sottoscrizione, e i dati da trasmettere e ricevere vengono raccolti in un apposita area, solitamente un vettore di byte all'interno di un blocco dati DB.