L’obiettivo dell’articolo di oggi è quello di fornire dei concetti di base sulle reti Meshes basate sullo standard Bluetooth utili per la progettazione di sistemi di Internet of Things.

L’internet of things (o internet delle cose) è un neologismo riferito all’estensione di Internet al mondo degli oggetti e dei luoghi concreti.

In pratica si tratta di un’evoluzione delle reti in cui gli oggetti si rendono riconoscibili e acquisiscono intelligenza grazie al fatto di poter comunicare dati tra di loro ed accedere ad informazioni presenti sulla rete internet.

All’interno del nostro whitepaper “Internet of things: i consigli tecnici per entrare nel mondo dell’IoT” abbiamo dato una visione più estesa degli aspetti tecnici da considerare per la progettazione di una soluzione IoT toccando diversi temi come connettività, dispositivi, Data Collection & Analysis, scalabilità e sicurezza.

Spesso, quando si parla di IoT, ci si concentra principalmente sull’interazione tra oggetti e Internet lasciando in secondo piano un aspetto molto importante come la capacità di far dialogare in modo efficiente gli oggetti.
Infatti spesso si dà per scontato che gli oggetti verranno inseriti in reti tradizionali. Nella realtà però ci sono molti casi in cui si ricercano altre soluzioni per permettere di creare nuove architetture di rete in grado di favorire l’inserimento veloce di nuovi oggetti, riducendo gli oneri di configurazione senza però intaccare le dinamiche degli oggetti esistenti ed aspetti di sicurezza.

Un esempio è l’uso dello standard Bluetooth per la creazione di reti Mesh.

Concetti base

Per comprendere meglio come usare il protocollo Bluetooth per creare delle reti di oggetti è necessario fare un passo indietro e rinfrescare come funziona il protocollo.

In estrema sintesi una delle componenti principali dello stack Bluetooth è il Generic Access Profile (GAP).

Il GAP governa come i dispositivi Bluetooth scansionano la rete a cui sono connessi, come si pubblicizzano e si connettono ad altri device Bluetooth. In più il GAP ha il compito di definire i ruoli specifici che i dispositivi dovranno eseguire nel corso della loro esistenza.

In pratica una singola connessione è caratterizzata da un oggetto “Centrale” e da una “Periferica”. Il compito del dispositivo “Centrale” è quello di scansionare la rete ed identificare le “Periferiche” compatibili ed instaurare un canale di comunicazione puntuale mentre, il ruolo della “Periferica” è quella di pubblicizzare la propria presenza all’interno della rete ed accettare la connessione degli oggetti richiedenti.

Questo approccio ovviamente richiede all’oggetto “Centrale” di disporre delle giuste risorse (computazionali, di memoria ed energia) rispetto agli altri visto l’impegnativo lavoro di scansionare la rete, identificare gli oggetti ed instaurare la giusta connessione con loro.

funzionamento bluetooth mesh
In realtà, il protocollo GAP definisce anche altri ruoli supplementari detti “emittente” (broadcaster) e “osservatore” (observer).
Questi ruoli aggiuntivi vengono utilizzati quando non è desiderata nessuna connessione punto punto tra i device. Il reale motivo del perché si utilizzano sempre connessioni puntuali tra le periferiche Bluetooth è dovuto a motivi di sicurezza e privacy che hanno spinto all’uso dei soli ruoli di oggetto “Centrale” e “Periferica”.

La prima versione di Bluetooth Low Energy (noto anche come BLE, o Bluetooth 4.0) ha imposto la restrizione che un singolo dispositivo potesse svolgere solo un ruolo GAP in un dato momento. Un dispositivo può agire sia come “Centrale” che “Periferica”, ma non entrambe. Nonostante questa limitazione però sono ancora possibili connessioni multiple perché un dispositivo “Centrale” può connettersi a un massimo di 7 periferiche in una sola volta.

Con questo approccio, un dispositivo che funge da sistema “Centrale” è autorizzato a gestire un massimo di 7 “Periferiche” permettendo così di creare una piccola rete di dispositivi connessi tra di loro, in grado di scambiarsi dati ma rimanendo isolati dal resto dei sistemi.
Naturalmente questa scelta progettuale dello standard BLE può rappresentare una limitazione in quanto non permette di utilizzare lo Standard Bluetooth per la realizzazione di reti complesse ed in progetti IoT strutturati.

Che cos’è una rete Wireless Mesh Bluetooth?

Una rete Wireless Mesh (in italiano nota come una rete a maglie) è una rete di telecomunicazione senza fili cooperativa costituita da un gran numero di nodi che fungono da ricevitori, trasmettitori e ripetitori. L’obiettivo di questo articolo è dare una visione di che come anche mediante lo standard Bluetooth è possibile costruire una Mesh.
Con il Bluetooth 4.1 è stata data la possibilità ad un dispositivo di acquisire la capacità di agire contemporaneamente sia come “Centrale” e “Periferica”.
Questo permesso apre a nuovi scenari tra i più importanti e vantaggiosi quello di permettere ad un dispositivo di fare da intermediario per la comunicazione tra altri due device.
Per comprendere questo vantaggio ipotizzate di avere un dispositivo che svolge il ruolo di “Centrale” e crea la connessione ad un diffusore senza fili.
Allo stesso tempo il dispositivo svolge anche il ruolo di “Periferica” e accettare una connessione in ingresso da un cellulare. Così facendo il diffusore e lo smartphones potrebbero dialogare tra di loro attraverso il dispositivo intermediario.

La possibilità di collegare direttamente o indirettamente, un numero qualsiasi di dispositivi Bluetooth consente la costruzione di reti molto più elaborati, come le reti mesh. Una rete mesh è costituita da due o più dispositivi Bluetooth collegati in maniera tale che esiste un percorso di collegamento tra due dispositivi nella rete. Lo specifico dispositivo nella rete può o non può avere una connessione diretta ad un altro dispositivo di rete, ma è in grado di inviare correttamente i dati con gli altri membri della rete.

I vantaggi nel poter creare reti Mesh Bluetooth sono molteplici tra le principali la possibilità di estendere significativamente l’intervallo fisico su cui i dispositivi possono comunicare tra loro non limitandosi più alla distanza teorica dei 70m ma coprendo distanze ben più grandi (teoricamente infinite).

In più, un ulteriore vantaggio di usare reti Mesh Bluetooth è la capacità di condividere i dati tra un gruppo (definito cluster) molto più ampio di dispositivi. Non essendo più limitati alla configurazione di un singolo cluster di sette periferiche ma, ogni dispositivo nel gruppo è in grado di creare un proprio ulteriore cluster con altri dispositivi, portandoli nella Mesh. In questo modo si può raggiungere un numero potenzialmente infinito di dispositivi Bluetooth collegati tramite la topologia della mesh con la possibilità di monitorare l’intera infrastruttura da un unico dispositivo centrale come ad esempio uno smartphone.

Ma come creare una Mesh?

Uno dei modi più semplici per generare una Mesh è quello di configurare gli oggetti in maniera tale che svolgano il duplice ruolo di “Centrale” e “Periferica”. Una configurazione di questo tipo prende il nome di Mesh Uniformi (Conforming Mesh) questa strategia risulta molto interessante perché ogni dispositivo è intercambiabile.

rete bluetooth mesh

Nella progettazione di reti Bluetooth esistono anche varie altre strategie ma, questo approccio, risulta essere molto semplice e quindi tra i più diffusi.
Questa architettura è consigliata soprattutto creare una configurazione iniziale con oggetti simili tra di loro in termini di risorse (potenza di elaborazione, memoria, …) al fine di permettere di svolgere la duplice funzione senza rallentamenti per i dati.
La tecnologia ci consente anche altre configurazioni, ma al momento le Mesh uniformi sono le più interessanti in termini di flessibilità, dinamicità e costi.

Contesti come retail, sistemi di sicurezza, soluzioni digitali per la gestione di emergenze o nell’impiego di soluzioni di gestione intelligente di sistemi produttivi e/o di logistica sono il terreno fertile per la realizzazione di progetti di Internet of Things mediante l’impiego di oggetti Bluetooth organizzati in reti Mesh.

E tu come hai organizzato la comunicazione tra gli oggetti delle tue soluzioni IoT?
Se hai progetto di Internet of Things e vuoi parlarne non esitare a contattarci saremo felici di confrontarci con te!

Leave a Comment