Servono davvero tutti quei dati grezzi provenienti dai sensori? No. C'è un modo migliore
Se sviluppate applicazioni che utilizzano flussi di dati provenienti da sensori, è molto probabile che, come me, siate maniaci dei dati. Dà soddisfazione vedere i sensori che scaricano dati nelle applicazioni e poi è facile aggiungere ulteriori flussi di dati, considerando l'enorme quantità di sensori già disponibili.
I sistemi di sensori sono in grado di catturare macro eventi, che vengono destrutturati in una sequenza estesa di misurazioni con un livello di dettaglio sorprendente. Anche il più fanatico dei dati però ammetterebbe che enormi quantità di dati grezzi da soli non permettono di raggiungere gli obiettivi dell'applicazione. Il risultato dipende di più dagli eventi che non dalle misurazioni di ogni evento ridotte ai minimi termini. Per fortuna, l'avvento dei sensori intelligenti può aiutare a riportare l'attenzione sugli eventi importanti per le applicazioni e gli utenti.
Grazie a una maggior facilità nel generare più dati dai sensori, i flussi di dati si trasformano in valanghe di misurazioni grezze e possono sommergere l'hardware e il software embedded che hanno lo scopo di tirar fuori qualcosa di utile da tutti questi dati. Non dipende solo dal fatto che i dati risultano superiori alle capacità di elaborazione e comunicazione disponibili. Le misurazioni così dettagliate infatti possono essere una distrazione per gli sviluppatori e gli utenti delle applicazioni, che si potrebbero concentrare su dettagli di poca importanza piuttosto che guardare alle astrazioni di alto livello, che di solito sono quelle che servono per prendere le decisioni.
Usare le astrazioni
Per definizione, un'astrazione comporta una perdita di dettagli. Per le applicazioni basate sui dati, il fatto di lavorare con dati derivati che vengono astratti da più misurazioni grezze può preoccupare gli ingegneri, che comprensibilmente hanno paura di perdere dettagli che potrebbero dimostrarsi importanti. È sicuramente una preoccupazione legittima per applicazioni come i registratori di dati per il trasporto o la sicurezza che devono identificare nuovi eventi o trovare le cause di determinate situazioni.
Per molti consumatori e applicazioni industriali, però, le caratteristiche specifiche di un evento di interesse sono note. L'improvvisa caduta di una persona o di un oggetto genera artefatti del movimento specifici, come un guasto di un motore industriale presenta tipologie di vibrazione prevedibili. I dettagli di queste caratteristiche in genere non sono importanti per molte applicazioni di alto livello. L'applicazione deve solo essere informata quando si verifica la caduta o l'evento di guasto. Naturalmente i meccanismi utilizzati per rilevare la condizione di avviso richiedono misurazioni dettagliate dei sensori.
Ho dovuto affrontare questo problema per un progetto che aveva generato un'enorme quantità di dati per un'applicazione relativa a eventi di alto livello. I dati dettagliati erano necessari per generare le informazioni degli eventi di alto livello, ma lo spazio di archiviazione non sarebbe bastato se avessimo tentato di archiviare ogni dato delle misurazioni al di là di brevi finestre di attività. Un metodo di astrazione basato sull'apprendimento automatico e altri metodi analitici ci permisero di ottenere il risultato desiderato.
Dopo moltissimi test, abbiamo avuto la certezza di poter generare l'astrazione in tempo reale e sovrascrivere i dati delle misurazioni precedenti.
Concentrarsi sugli eventi
Sensori all'avanguardia, come la linea di unità di misurazione inerziale (IMU) iNEMO di STMicroelectronics, offrono questo tipo di capacità per le applicazioni sempre in funzione. Le IMU a basso consumo includono LSM6DSOX per applicazioni consumer alimentate a batteria, LSM6DSRX per applicazioni ad alta precisione e ISM330DHCX per applicazioni industriali. Queste IMU integrano una macchina a stati finita programmabile (FSM) con un core di apprendimento automatico addestrabile mediante set di dati personalizzati (consultate "Utilizzare il core integrato di apprendimento automatico di un sensore intelligente per ottimizzare il tracciamento del movimento 'sempre in funzione'").
Quando uno di questi dispositivi rileva comportamenti associati a un evento di interesse, può generare un interrupt per un processore host che, a sua volta, può eseguire la logica applicativa appropriata. Poi, se si desidera avere solo i dati grezzi del movimento oppure i dati in combinazione con gli interrupt dell'evento, si possono leggere i dati di misurazione grezzi, come con qualsiasi altro sensore di movimento (Figura 1).
Figura 1: Le IMU iNEMO di STMicroelectronics integrano una catena digitale completa che genera dati condizionati per FSM e MLC integrati e per l'accesso all'host tramite il buffer FIFO dell'IMU. (Immagine per gentile concessione di STMicroelectronics)
La capacità del sensore di monitorare le proprie misurazioni e identificare più eventi astratti riduce il carico sul processore stesso e il canale di comunicazione, e apre la strada a una nuova generazione di sensori intelligenti. Inoltre, ancora più importante, i sensori che sono in grado di analizzare i dati grezzi internamente e produrre informazioni utili preparano il terreno per progetti ML più efficienti, in grado di fornire più dati derivati rispetto alle misurazioni grezze.
Conclusione
Per basare una soluzione applicativa su dati derivati anziché misurazioni grezze non serve un sensore con capacità ML. Per set di dati relativamente semplici, il processore host del sistema dei sensori può avere sufficienti cicli disponibili per eseguire un albero decisionale per l'identificazione degli eventi. Per distribuzioni di dimensioni maggiori, invece, è possibile utilizzare una risorsa di edge computing tra il sensore e l'host a monte, per eseguire la trasformazione dell'astrazione. Indipendentemente dal metodo adottato, la riduzione dei dati in astrazioni utili è utile per quelle aree applicative dove, come si dice, "meno è meglio".
Riferimenti:
Utilizzare il core integrato di apprendimento automatico di un sensore intelligente per ottimizzare il tracciamento del movimento "sempre in funzione"
Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.
Visit TechForum




