Grazie alle evoluzioni tecnologiche degli ultimi anni in tema di connettività per macchine ed apparati non nativamente digitali, sta prendendo sempre più piede il paradigma dell’Internet of Things (IoT), che fa riferimento a dispositivi fisici (quali nodi di monitoraggio, veicoli, elettrodomestici e altri oggetti dotati di sensori e attuatori) finalizzati alla creazione di reti di monitoraggio ed attuazione con l’obiettivo di raccogliere, elaborare e condividere dati relativi a fenomeni/attività di interesse [1].
Il paradigma dell’Internet of Things (IoT)
In particolare, i nodi IoT, comunemente definiti “oggetti intelligenti”, possono essere sia dispositivi ambientali (per esempio, termostati intelligenti installati all’interno di abitazioni private ed ambienti di lavoro), sia dispositivi indossabili (per esempio, smartwatch per il monitoraggio delle prestazioni atletiche e sportive), sia sistemi automatizzati industriali complessi per il monitoraggio del funzionamento di linee produttive.
Le città parte dell’ecosistema IoT intelligente
Applicando il principio dei dispositivi IoT su larga scala, intere città possono essere considerate parte di questo ecosistema IoT “intelligente”, in particolar modo grazie a tecnologie e protocolli che consentono a numerosi dispositivi intelligenti di comunicare tra loro e con altri apparati abilitati alla fruizione di contenuti multimediali su Internet [2]. Questa estensione di dominio operativo apre quindi a molteplici possibilità di cooperazione tra contesti eterogenei, a patto però di gestire richieste di orchestrazione del traffico tra dispositivi intelligenti.
L’IoT in sanità, agricoltura e logistica
Allo stesso modo, l’IoT è una componente centrale ed essenziale in altri scenari quali, ad esempio, sanità, agricoltura e logistica. Considerando la crescita esponenziale del numero di dispositivi connessi a Internet e la conseguente eterogeneità degli stessi, l’IoT svolgerà un ruolo sempre più importante nel plasmare il nostro mondo, trasformando il modo in cui viviamo, lavoriamo ed interagiamo [3].
Componenti e tecnologie cruciali nelle applicazioni IoT
A titolo esemplificativo, prima di caratterizzare nel dettaglio l’importanza della comunicazione tra dispositivi IoT eterogenei e l’utilità del poter disporre di apparati IoT che consentano il trasferimento di flussi informativi tra ambienti differenti, è utile richiamare brevemente componenti e tecnologie cruciali nelle applicazioni IoT.
- Sensori ed attuatori: rappresentano il cuore del paradigma IoT, in quanto coinvolgono elementi sensoriali e di attuazione all’interno dell’ambiente in cui sono stati posizionati (per esempio, sensori di temperatura, umidità e pressione; attuatori di apertura, chiusura, accensione e spegnimento di elementi attivi o in movimento), svolgendo un ruolo chiave nell’interazione con l’ambiente fisico (possibilmente) senza la necessità di un intervento umano [4].
- Tecnologie eterogenee di comunicazione di rete: necessarie per consentire ai dispositivi IoT di interagire tra loro e/o essere connessi a Internet. Il particolare protocollo dipende dai requisiti dell’applicazione specifica. Alcuni di questi protocolli sono di uso generale ed ampiamente conosciuti e diffusi (per esempio, WiFi, Bluetooth Low Energy, BLE, e cellulare), mentre altri sono più specifici per applicazioni IoT (per esempio, Zigbee e Long Range Wide Area Network, LoRaWAN) [5].
- Cloud Computing e Big Data: data l’elevata pervasività e numerosità dei dispositivi IoT, un’altrettanta enorme quantità di dati deve essere gestita con attenzione. Questo è molto sfidante ma, al tempo stesso, apre la strada a molteplici analisi rese possibili da tale mole di dati. Per questo motivo, approcci basati sull’utilizzo di architetture orientate ai paradigmi del cloud computing e dei big data possono essere visti come ulteriormente abilitanti per l’IoT. A questo si aggiungono meccanismi per l’estrazione di conoscenza basati sull’utilizzo di algoritmi di intelligenza artificiale (per esempio Machine Learning, ML, e Deep Learning, DL) o modelli di visualizzazione dei dati, fondamentali per comprendere e sfruttare i dati generati dall’IoT [6].
- Sicurezza e privacy: vista l’elevata diffusione di dispositivi IoT, è necessario considerare approfonditamente e con particolare cura tutti quegli aspetti legati alla sicurezza delle comunicazioni e all’elaborazione delle informazioni, anche con riferimento agli scenari applicativi all’interno dei quali siano installati i dispositivi IoT. In particolare, aumentare la sicurezza può richiedere l’utilizzo di algoritmi di crittografia, il controllo degli accessi e meccanismi di autenticazione a doppio fattore, utilizzati per proteggere applicazioni e dati dalle minacce informatiche [7].
Gateway multi-interfaccia come elementi abilitanti
Focalizzandosi quindi sulla necessità di abilitare lo scambio di dati tra reti di dispositivi eterogenee (in quanto utilizzanti protocolli di comunicazione diversi tra di loro), ovvero su uno degli aspetti principali del paradigma dell’IoT, l’elemento di rete che meglio assolve a questo compito è rappresentato da un GateWay (GW) multi-interfaccia, in grado di abilitare l’instradamento di flussi informativi tra due (o più) reti di comunicazione eterogenee, rendendo di fatto “fluida” la gestione del traffico da un punto di vista di alto livello della rete. Un esempio è dato da un GW in grado di connettere una rete WiFi ed una rete di tipo orientata all’utilizzo del protocollo LoRaWAN.
Limiti dei GW commerciali
Guardando al mercato odierno, esistono diversi GW IoT commerciali, progettati per essere in grado di gestire molteplici carichi di lavoro ed attività. La maggior parte di essi è dotata di interfacce di comunicazione multiple per la raccolta dati ed alcuni hanno anche la possibilità di utilizzare la comunicazione seriale per implementare altri protocolli di comunicazione. Come conseguenza, una volta raccolti i dati tramite una delle interfacce, il GW può utilizzare un’altra interfaccia di comunicazione (per esempio, a banda larga, come WiFi o cellulare) per inoltrare tali informazioni a sistemi di elaborazione all’interno di infrastrutture di cloud computing. Inoltre, un GW commerciale ha tipicamente una discreta capacità.
Nonostante ciò, i GW commerciali soffrono di alcuni svantaggi. Innanzitutto, le interfacce di rete implementate all’interno dei GW commerciali sono generalmente fisse e non possono essere estese in seguito all’acquisto. Questo vincolo limita l’applicabilità di questi dispositivi, rendendo di fatto problematico l’utilizzo di tali GW in scenari differenti da quello previsto inizialmente, poiché i requisiti operativi di un nuovo scenario di interesse potrebbero mutare ed il GW selezionato potrebbe semplicemente non avere tutte le interfacce necessarie. Un’altra limitazione è rappresentata dal fatto che, nella maggioranza dei casi, i GW commerciali rappresentano soluzioni “chiuse” e non forniscono un elevato grado di personalizzazione: per esempio, la maggior parte dei GW commerciali raccolgono semplicemente il contenuto informativo e si limitano ad inviarlo a sistemi di elaborazione nel cloud. Infatti, in taluni casi, la possibilità di eseguire alcune attività di calcolo in locale oppure l’instradamento dei dati tra reti differenti, senza la necessità di far transitare il traffico di interesse attraverso un’infrastruttura in cloud ad alto livello, potrebbe rivelarsi essenziale per lo scenario specifico. Infine, un ultimo svantaggio dei GW commerciali può essere legato al costo (elevato). In generale, si può concludere che l’utilizzo di GW commerciali possa non sempre rivelarsi la soluzione migliore nel caso in cui l’intento sia quello di includere, all’interno del proprio “sistema di sistemi”, un elemento abilitante generale che possa essere facilmente adattato a molteplici applicazioni.
Necessità di GW multi-interfaccia general-purpose
Per superare le limitazioni elencate nella precedente sezione, un possibile approccio porta allo sviluppo di un GW multi-interfaccia general-purpose e personalizzato, in modo tale che il sistema sia facilmente scalabile con la semplice aggiunta di ulteriori interfacce di comunicazione commerciali (per esempio, come estensori cablati tramite un’interfaccia USB) e tramite lo sviluppo di pochi statement di codice in un linguaggio di programmazione di alto livello.
In dettaglio, lo scopo principale di un gateway multi-interfaccia personalizzabile potrebbe essere non solamente quello di inviare dati ad infrastrutture di elaborazione in cloud, ma anche quello di disporre di un protocollo di instradamento interno completamente personalizzabile, che consenta di inoltrare i dati da un’interfaccia di comunicazione ad un’altra, secondo regole personalizzabili e, se necessario, anche di elaborare i dati ricevuti. Infine, per rendere scalabile una soluzione di questo tipo, un GW dovrebbe anche disporre di un’interfaccia Web (dashboard) che consenta agli utenti di gestire senza problemi le regole di elaborazione e di instradamento, nonché l’intero GW.
Pertanto, a titolo esemplificativo, un GW multi-interfaccia general-purpose potrebbe basarsi sull’utilizzo di un mini-PC dotato di un sistema operativo Linux e con alcune interfacce di rete standard, quali, ad esempio, WiFi, BLE, ed Ethernet: questo consentirebbe di disporre nativamente di tre tipologie di connettività ampiamente utilizzate in molti contesti applicativi. Vista (però) l’impossibilità di predisporre alcuni meccanismi di raccolta dati con queste sole tre interfacce, il GW in questione potrebbe essere fornito di ulteriori connettività.
Un esempio possibile di estensione delle funzionalità del GW
Un esempio possibile di estensione delle funzionalità del GW si potrebbe ottenere tramite l’adozione di (i) un adattatore USB BLE esterno, (ii) un adattatore USB WiFi esterno, (iii) un modulo LoRaWAN GW esterno (es. connesso tramite un adattatore USB), e (iv) un modulo end-node LoRaWAN esterno (connesso tramite I2C o SPI). In questo modo, la disponibilità di due interfacce BLE consentirebbe al GW multi-interfaccia l’utilizzo di una delle due in modalità “client BLE”, mentre la rimanente BLE abiliterebbe una modalità “server/advertiser BLE”. Analogamente, la disponibilità di connettività doppia di tipo WiFi consentirebbe l’utilizzo di un’interfaccia in modalità “client WiFi”, mentre la seconda potrebbe fornire funzionalità di tipo “Access Point WiFi”. Infine, per quanto riguarda la connettività LoRaWAN, l’interfaccia “LoRaWAN GW” abiliterebbe il GW multi-interfaccia general-purpose al supporto di una rete privata LoRaWAN gestita da un Network Server LoRaWAN interno, mentre la seconda interfaccia di tipo end-node LoRaWAN consentirebbe al GW di eseguire il routing del traffico verso una rete LoRaWAN esterna a cui il GW in questione dovrebbe preventivamente connettersi.
Scenari applicativi di un GW multi-interfaccia general-purpose
Nel complesso, quindi, un GW multi-interfaccia flessibile potrebbe abilitare reti IoT esistenti alla raccolta ed invio di dati tramite protocolli di comunicazione eterogenei (anche in termini di prestazione), facilitando la condivisione di informazioni tra domini applicativi differenti. Un esempio di GW di questo tipo è in fase di sviluppo da parte di things2i s.r.l. [8], spin-off dell’Università di Parma attivo nel campo dell’IoT e dei sistemi intelligenti per la definizione di soluzioni innovative in scenari di smart home, smart agriculture, smart industry, e smart city. Tale GW potrebbe essere utilizzato per la raccolta di informazioni da sensori WiFi distribuiti in un ambiente relativamente limitato (per esempio, un ufficio).
Le informazioni raccolte potrebbero essere elaborate a bordo del GW per ottenere una stima (concisa) dello stato dell’ambiente. Tale “stato ambientale” potrebbe poi essere trasmesso a lunga distanza (verso il cloud) attraverso un’interfaccia LoRaWAN. Altri esempi applicativi di un GW multi-interfaccia general-purpose sono allo studio all’interno del progetto Europeo OPEVA [9] per scenari di mobilità intelligente, e nell’ambito del progetto PNRR TAP-IN [10] per la raccolta dati da macchinari industriali nel settore tessile-manufatturiero.
Conclusioni
In conclusione, prevedere l’introduzione di sistemi di instradamento dei flussi informativi simili al GW multi-interfaccia general-purpose descritto in precedenza, all’interno di una rete IoT composta da nodi sensoriali e di attuazione, consentirebbe di aumentare la capacità di adattamento della rete stessa ai cambiamenti (per esempio, in termini di inserimento di nuovi sensori) e la capacità di gestione di informazioni eterogenee di interesse per sistemi di elaborazione di alto livello, in modo tale da favorire anche la cross-connessione tra scenari e contesti differenti. In altri termini, un GW multi-interfaccia general-purpose sarà un elemento chiave per la diffusione del paradigma di sistema di sistemi.
Bibliografia
[1] R. Hassan et al., “Internet of Things and Its Applications: A Comprehensive Survey”, Symmetry, vol. 12, no. 10, 2020, doi:10.3390/sym12101674.
[2] L. Belli et al., “IoT-Enabled Smart Sustainable Cities: Challenges and Approaches”, Smart Cities, vol. 3, no. 3, pp. 1039-1071, 2020, doi:10.3390/smartcities3030052.
[3] M. Noaman et al., “Challenges in Integration of Heterogeneous Internet of Things”, Scientific Programming, vol. 8626882, pp. 14, 2022, doi:10.1155/2022/8626882.
[4] A. Rayes and S. Salam, “The Things in IoT: Sensors and Actuators”, Internet of Things from Hype to Reality, 2022, Springer, Cham, doi:10.1007/978-3-030-90158-5_3.
[5] S. M. Dimitrov and D. M. Tokmakov, “Integrating data from heterogeneous wireless sensor networks based on LoraWan and ZigBee sensor nodes”, 2020 XXIX International Scientific Conference Electronics (ET), Sozopol, Bulgaria, 2020, pp. 1-4, doi:10.1109/ET50336.2020.9238256.
[6] H. Cai et al., “IoT-Based Big Data Storage Systems in Cloud Computing: Perspectives and Challenges”, IEEE Internet of Things Journal, vol. 4, no. 1, pp. 75-87, 2017, doi:10.1109/JIOT.2016.2619369.
[7] S. Sicari et al., “Security, privacy and trust in Internet of Things: The road ahead”, Computer Networks, vol. 76, 2015, pp. 146-164, doi:10.1016/j.comnet.2014.11.008.
[8] things2i s.r.l. URL: https://www.things2i.com/
[9] HE project no. 101097267, “OPtimization of Electric Vehicle Autonomy” (OPEVA). URL: https://opeva.eu/
[10] Fondazione RESTART, project Industrial Networks (IN). URL: https://www.fondazione-restart.it/projects/s9-in/