L’architettura dei sistemi IoT

IoT Reference Model Title

Si parla continuamente e da tanto tempo dell’IoT (Internet of Things) grazie alla sua immensa capacità di espandersi nei più svariati contesti: dall’uso quotidiano nella propria casa intelligente (smart home e domotica) fino ai contesti industriali più esigenti (Industrial IoT), passando per l’automotive con le auto sempre più connesse ed il settore della salute per la diagnostica e del fitness con i dispositivi indossabili (wearable). Questo articolo affronta una panoramica dettagliata del modello per l’architettura dei sistemi IoT proposto durante l’evento IoT World Forum. Basato su 7 livelli che inglobano dai dispositivi fino all'interazione con l'utente, questo modello risulta di fondamentale importanza in quanto si è affermato come punto di riferimento per tutto l’ecosistema IoT e per qualsiasi sviluppo di architetture. All’interno dell’articolo, oltre a descrivere i sette livelli inclusi nel modello, si affronterà anche la tematica della standardizzazione e lo stato dell’arte da parte dei top player di settore.

Introduzione

La filosofia dell’Internet of Things (IoT) ha rivoluzionato il mondo dell’elettronica e dell’informazione trasformando qualsiasi dispositivo già esistente in una nuova tipologia di prodotto detto “smart”, ossia intelligente ed in grado di poter scambiare non solo informazioni ma anche interagire con l’ambiente che lo circonda. Agli albori dell’era della rivoluzione digitale dell’IoT, una delle principali sfide è stata la definizione di un’architettura che potesse rispondere non solo alle esigenze attuali, ma che fosse flessibile ed adattabile anche alle esigenze del futuro, indipendentemente dal contesto in cui il sistema viene calato. Si è discusso, dunque, della necessità di concepire, progettare e poi realizzare un’architettura “evergreen” senza perdere di vista gli aspetti di complessità e costo della stessa.

La premessa da fare prima di introdurre il modello di riferimento è che tutto il mondo IoT si basa sull’elemento fondamentale: i dispositivi interconnessi. Questi non devono essere visti come una semplice componentistica hardware, ma devono essere considerati anche secondo le funzionalità di base che sono chiamati a svolgere:

  • l’acquisizione dei dati: attraverso il monitoring con sensori, trasduttori o semplicemente altri elementi quali interfacce di comunicazione verso apparati e/o sistemi più complessi e non connessi alla rete;
  • il condizionamento dei segnali elettrici e l’elaborazione dei dati acquisiti;
  • il trasferimento dei risultati dell’elaborazione all’interno di una rete.
Attività fondamentali di un IoT device

Figura 1: Attività fondamentali di un generico dispositivo per l'IoT

Pertanto, ogni dispositivo IoT deve essere in grado di acquisire dei dati ed avere le risorse hardware per poter implementare l’elaborazione necessaria.

Il modello di riferimento per l'Architettura dei sistemi IoT

La delicata tematica di dover definire un modello di architettura per costruire i sistemi IoT del futuro è stata uno dei passaggi fondamentali della rivoluzione dell'IoT. Tra tutti i modelli concepiti, è divenuto universalmente accettato come riferimento il modello proposto durante l’evento IoT World Forum. Questo modello è basato su 7 differenti livelli, ognuno dei quali presenta delle peculiarità.

I livelli sono:

  1. Physical Devices and Controllers
  2. Connectivity
  3. Edge Computing
  4. Data Accumulation
  5. Data Abstraction
  6. Application Layer
  7. Collaboration and Processes

Figura 2: I livelli del modello di riferimento dell'IoT World Forum

Un qualsiasi sistema IoT, come vedremo anche quando parleremo di standardizzazione, è basato su questo modello ma potrà presentare un numero ridotto di livelli in funzione della complessità del sistema stesso. Prima di affrontare la tematica della standardizzazione, andiamo ad osservare nel dettaglio gli aspetti di ogni singolo livello del modello di riferimento.

Livello 1. Physical Devices and Controllers

Figura 3: Dispositivi fisici e nodi al Livello 1

Il primo livello riportato all’interno del modello di riferimento dell’IoT World Forum (Figura 3) è dedicato ai dispositivi end-point. Questo livello viene anche definito come “things” (tradotto “cose”) ossia i dispositivi che materializzano di fatto l’IoT. Infatti, il livello “Physical Devices and Controllers” raggruppa tutti i sensori e tutti i dispositivi che vengono gestiti direttamente dal sistema IoT nella sua architettura. Questo livello include dunque un’elevata eterogeneità di dispositivi che possono essere strettamente dei sensori o anche dei nodi smart della rete, che non integrano alcuna sensoristica ma che sono utili alla realizzazione del sistema nel suo complesso. Tra tutti, questo è il livello più complesso e delicato, dunque richiede molta accortezza soprattutto nella fase progettuale. Aspetto fondamentale che si applica ai dispositivi di questo livello è la tematica dell’Edge Intelligence, ossia la realizzazione di algoritmi per l’analisi dei dati e l’elaborazione di azioni direttamente nel dispositivo in cui sono stati acquisiti. Solo grazie ad una corretta implementazione delle tecniche di Edge Intelligence è possibile garantire una bassa latenza, in quanto sono proprio i dispositivi finali gli elementi sul percorso più critico. Con i giusti algoritmi è possibile garantire anche la giusta autonomia dei livelli successivi per la post elaborazione (che può anche essere distribuita). Oltretutto, l’Edge Computing è una tecnica affermata non solo per ridurre la latenza ma anche per ridurre i costi ed i rischi per la sicurezza, in quanto le informazioni non devono viaggiare tra i vari livelli, ma vengono “consumate” direttamente all’interno del dispositivo IoT che applica l’algoritmo desiderato ed attua le azioni richieste.

Livello 2. Connectivity

Figura 4: Connettività al Livello 2

Il livello successivo (riportato nella piramide in Figura 4) è dedicato alla Connettività, nel suo concetto più esteso in quanto fa da tramite tra il livello sottostante dei dispositivi intelligenti e il livello superiore del Cloud, o meglio dell’Edge Computing. Questo si traduce in una definizione molto generica del livello e può trovare infinite sfumature nelle applicazioni pratiche date da aspetti quali: la mappatura dei dati sul campo soprattutto quando il sistema IoT è diffuso, la scelta della giusta tecnologia di comunicazione fisica, l’applicazione di differenti protocolli di comunicazione in funzione delle esigenze e delle tipologie di device, l’interfacciamento verso lo storage locale oppure i servizi cloud, eccetera. Per chi desidera approfondire le diverse soluzioni di connettività disponibili per il mondo IoT, riporto i seguenti articoli già disponibili:

  1. Protocolli IoT [1/2]: wireless a lungo raggio
  2. Protocolli IoT [2/2]: wireless a corto raggio

Livello 3. Edge Computing

Figura 5: Edge Computing al Livello 3

Se da un lato il livello Connectivity si interfaccia con i dispositivi fisici, dall’altro troviamo il livello di Edge Computing per il calcolo distribuito (Edge Computing in Figura 5). In questo livello sono inclusi servizi quali il Cloud Edge o il Cloud Gateway ed è un livello fondamentale per quanto riguarda il processo di trasferimento dei dati. Ad esempio, in questo livello possiamo definire anche percorsi multipli in funzione della latenza richiesta per il processo decisionale, oltre ovviamente alla conversione di protocollo per l’interfacciamento tra la rete di connettività ed i servizi di elaborazione (software proprietari, servizi accessori, piattaforme di cloud, etc.).

Livello 4. Data Accumulation

Figura 6: Storage & Data Accumulation al Livello 4

In ogni sistema di acquisizione dati, a maggior ragione se distribuito, è fondamentale la fase di immagazzinamento dei dati raccolti o elaborati (Figura 6). Con l’esponenziale crescita dei nodi e dei dati, l’archiviazione dei big data per le successive attività di elaborazione è divenuta alquanto critica, tanto che all’interno del modello di riferimento per l’IoT World Forum è stato riservato un livello ad hoc per questa fase. Il termine coniato per questi sistemi di data accumulation è “data lake” ossia il lago dei dati da cui poi è possibile raccogliere ciò che serve per l’elaborazione. In realtà, il livello è molto più complesso poiché deve servire sia per i dati in ingresso che per i dati in uscita in modo tale da alimentare al contempo tutti i livelli che necessitano di informazioni. Esistono diverse soluzioni tecniche per rispondere alle esigenze del sistema IoT come: SQL, Hadoop & Hadoop File System, Mongo, Cassandra, Spark, etc.

[...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2159 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend