Apprendimento automatico avanzato per i sensori MEMS: miglioramento della precisione, delle prestazioni e del consumo energetico
L'attuale generazione di sensori è in grado di raccogliere, analizzare e inviare dati importanti utilizzando tecnologie di apprendimento automatico (ML) nell'edge.
Ad esempio, la manutenzione predittiva sfrutta i modelli ML per valutare i dati dei sensori, monitorare apparecchiature come i motori e identificare i primi segni di usura o di potenziali guasti. Questo approccio proattivo aiuta a prevenire i guasti, riducendo i tempi di inattività e le spese di riparazione.
Incorporando concetti chiave in ambito ML, i sensori sono ora in grado di elaborare dati, estrarre funzioni utili e prendere decisioni indipendenti senza affidarsi a risorse di calcolo esterne. Essenzialmente, questi sensori sono in grado di analizzare i dati ed effettuare previsioni senza richiedere una programmazione esplicita.
In questo articolo spiegheremo come i progressi nel campo degli algoritmi ML hanno rivoluzionato l'elaborazione dei dati dei sensori. Inoltre, spiegheremo come la tecnologia ML ha superato i vincoli tecnici dell'elaborazione dei dati dei sensori nell'edge.
Integrazione intelligente: algoritmi ML nei sensori MEMS
L'integrazione degli algoritmi Ml nei sensori MEMS e della tecnologia IA consente di sviluppare una nuova generazione di sensori intelligenti, aperti e precisi. Questa integrazione riduce la quantità di dati trasferiti dal sistema e snellisce l'elaborazione di rete, riducendo il consumo energetico e garantendo una soluzione più sostenibile. Di conseguenza, i dati precisi rilevati dai sensori forniscono agli utenti finali informazioni utili e pertinenti.
I sensori MEMS possono incorporare varie tecnologie per l'elaborazione nel sensore, come i sensori con un nucleo di apprendimento automatico (MLC) integrato e i sensori con un'unità di elaborazione intelligente del sensore (ISPU) (vedi figura 1). Caratteristiche come l'MLC integrato consentono ai sensori di riconoscere movimenti precisi e comunicare gli eventi a un processore con un'efficienza energetica ottimale. L'integrazione dell'ISPU ottimizza ulteriormente la potenza di calcolo richiesta, massimizzando le prestazioni di sistema.

Figura 1: (a) elaborazione dati con l'MCU (fonte)
(b) sensori con un core per apprendimento automatico incorporato (fonte)
(c) sensori con un'unità di elaborazione intelligente del sensore (ISPU) (fonte)
Sensori con un core per apprendimento automatico incorporato
La capacità di elaborazione dei dati dei sensori tramite la logica dell'albero decisionale si ottiene utilizzando un albero decisionale, che è uno strumento matematico costituito da nodi configurabili definiti da una condizione "if-then-else". Queste condizioni valutano un segnale di ingresso, rappresentato da parametri statistici calcolati dai dati del sensore rispetto a una soglia.
Ad esempio, nel System-in-Package LSM6DSOX di STMicroelectronics, questa funzionalità viene implementata tramite l'apprendimento supervisionato, che comporta:
- l'identificazione delle classi da riconoscere;
- la raccolta di più registri di dati per ciascuna classe;
- l'analisi dei registri raccolti per apprendere una regola generica in grado di associare gli input (registri di dati) agli output (classi).
Le classi dell'algoritmo di riconoscimento di un'attività possono includere stazionario, camminata, jogging, ciclismo, guida, ecc. È necessario acquisire più registri di dati per ogni classe, ad esempio diverse persone che svolgono la stessa attività. L'analisi di questi registri di dati ha lo scopo di:
- definire le funzioni necessarie per classificare accuratamente le diverse attività;
- definire i filtri da applicare ai dati di input, migliorando le prestazioni con l'utilizzo delle funzioni selezionate;
- generare un albero decisionale dedicato che riconosce una delle classi associando gli input agli output.
Una volta definita una struttura decisionale, un software in dotazione può generare una configurazione del dispositivo, consentendo l'esecuzione della struttura decisionale sul dispositivo, riducendo al minimo il consumo energetico.
Le caratteristiche del nucleo ML all'interno di LSM6DSOX possono essere suddivise in tre blocchi principali (figura 2):
- dati del sensore
- blocco di calcolo
- schema decisionale

Figura 2: principali blocchi dell'apprendimento automatico (machine learning (fonte)
Dati del sensore
In questa fase, i dati provenienti dall'accelerometro integrato, dal giroscopio o da un sensore esterno aggiuntivo, vengono collegati tramite l'interfaccia master I²C (Sensor Hub).
Blocco di calcolo
In questa fase, i filtri e le funzioni vengono applicati ai dati di input definiti nel primo blocco. Le funzioni sono parametri statistici calcolati dai dati di input (o dai dati filtrati), in una finestra temporale selezionabile dall'utente. Queste funzioni calcolate agiscono quindi come input per il terzo blocco.
Schema decisionale
L'albero decisionale valuta i parametri statistici calcolati nel blocco di calcolo. Utilizza un albero binario per confrontare questi parametri con determinate soglie per generare risultati quali stazionario, camminata, jogging, ciclismo, e così via, nel contesto del riconoscimento delle attività. Un filtro opzionale "meta-classificatore" può anche affinare i risultati provenienti dall'albero decisionale. L'output finale dei principali risultati ML include i risultati dell'albero decisionale e qualsiasi filtro opzionale meta-classificatore.
Input
La velocità dei dati di input deve essere uguale o superiore alla velocità di trasferimento dei dati principali ML. Ad esempio, in un algoritmo di riconoscimento dell'attività che opera a 26 Hz, la frequenza dei dati in uscita (ODR) del core Ml deve essere impostata su 26 Hz e le ODR del sensore devono essere almeno di almeno 26 Hz.
Il core ML utilizza le seguenti convenzioni di unità:
- dati dell'accelerometro in [g]
- dati del giroscopio in [rad/sec]
- dati del sensore esterno in [gauss] per un magnetometro
Un sensore esterno come un magnetometro può essere collegato al LSM6DSOX attraverso la funzione Sensor Hub (modalità 2). In questa configurazione, i dati provenienti da un sensore esterno possono essere utilizzati anche per l'elaborazione ML, in cui i primi sei byte dell'hub del sensore (due per asse) sono considerati input per il core ML.
Filtri
L'elemento di base del filtro del core ML è un filtro IIR di secondo ordine, come illustrato nella figura 3.

Figura 3: elemento base del filtro (fonte)
La funzione di trasferimento del filtro generico di 2° ordine IIR è

Le uscite possono essere definite come nella figura 3,
y(z)=H(z).x(z)
y(z)=y(z). guadagno
Il core ML include i coefficienti predefiniti per i vari tipi di filtro (high-pass, band-pass, IIR1, IIR2) per ottimizzare l'utilizzo della memoria. Dopo aver selezionato un tipo di filtro, lo strumento core ML aiuta a configurare il filtro richiedendo i coefficienti necessari.
Caratteristiche
Le caratteristiche fanno riferimento ai parametri statistici che derivano dagli input del sensore del core di apprendimento automatico (ML). Tutte le funzioni vengono calcolate all'interno di una finestra temporale specificata, nota anche come "lunghezza della finestra", espressa come numero di campioni. È importante che l'utente determini le dimensioni della finestra, poiché svolge un ruolo cruciale nell'elaborazione ML, in quanto tutti i parametri statistici nell'albero decisionale vengono valutati all'interno di questa finestra.
Ad esempio, in un algoritmo di riconoscimento delle attività, le funzioni possono essere calcolate ogni 2 o 3 secondi. Se i sensori funzionano a 26 Hz, la lunghezza della finestra dovrebbe essere rispettivamente di circa 50 o 75 campioni.
Alcune funzioni del core ML richiedono ulteriori parametri per l'analisi, ad esempio un valore di soglia. Queste funzioni includono Mean, Variance, Energy, Peak-to-peak e Value.
Mean
La funzione "Mean" calcola la media dell'input selezionato (i) all'interno della finestra temporale definita (WL) utilizzando la formula:

Variance
La funzione "Variance" calcola la varianza dell'input selezionato (i) nella finestra temporale definita (WL) utilizzando la formula:

Energy
La funzione "Energy" calcola l'energia dell'input selezionato (I) nella finestra temporale definita (WL) utilizzando la formula:

Peak-to-peak
La funzione "Peak-to-peak" calcola il valore picco-picco massimo dell'input selezionato all'interno della finestra temporale definita.

Peak detector
La funzione "Peak detector" conta il numero di picchi (positivi e negativi) dell'input selezionato all'interno della finestra temporale definita.

Schema decisionale
Un albero decisionale è un modello predittivo creato a partire dai dati di addestramento che possono essere memorizzati in LSM6DSOX. I dati di addestramento sono costituiti da registri ottenuti per ogni classe che richiede un riconoscimento. Ad esempio, nel riconoscimento delle attività, le lezioni possono includere camminate, jogging e guida.
Gli input all'albero decisionale sono i risultati del blocco di calcolo illustrati nelle sezioni precedenti. Ogni nodo nell'albero decisionale include una condizione che imposta una soglia per la valutazione di una determinata funzione. Il nodo successivo nel percorso reale viene valutato se la condizione è soddisfatta. In caso contrario viene valutato il nodo successivo nel percorso falso (vedi figura 3). L'albero decisionale passa da un nodo all'altro fino a quando non viene trovata una soluzione.

Figura 4: nodo dell'albero decisionale (fonte)
L'albero decisionale produce un nuovo risultato con ogni finestra, che è una "lunghezza della finestra" specificata dall'utente per il calcolo delle funzioni (figura 4). La lunghezza della finestra è definita in termini di campioni e l'intervallo di tempo può essere calcolato dividendo il numero totale dei campioni per la frequenza dei dati utilizzata per il core ML (MLC, Machine Learning Core).
Finestra temporale = Lunghezza della finestra / MLC_ODR
Ad esempio, se la lunghezza della finestra è 104 campioni e la frequenza dati MLC è 104 Hz, la finestra temporale è:
Finestra temporale = 104 campioni / 104 Hz = 1 secondo
Sensori con un'unità di elaborazione intelligente del sensore (ISPU)
ST Microelectronics ha lanciato una nuova linea di dispositivi MEMS nota come ISPU (Intelligent Sensor Processing Unit). Questi dispositivi sono ideali per applicazioni di elettronica personale basate su ML e per le applicazioni IoT industriali. I dispositivi ISPU integrano funzionalità di rilevamento e condizionamento del segnale, oltre a un core programmabile a consumo ultra-ridotto e alte prestazioni sulla stessa piastrina del sensore. Questo core consente l'esecuzione di algoritmi di elaborazione del segnale e di apprendimento automatico all'interno del pacchetto del sensore.
Funzionamento dell'unità di elaborazione intelligente del sensore (ISPU)
L'ISPU è un DSP programmabile a consumo ultra-ridotto e ad alte prestazioni, progettato per elaborare gli algoritmi di intelligenza artificiale ed eseguire l'elaborazione in tempo reale direttamente all'interno del sensore. Questa tecnologia è destinata alle applicazioni esigenti nell'edge (figura 5).

Figura 5: configurazione dell'unità di elaborazione intelligente del sensore (fonte)
LSM6DSO16IS e ISM330IS sono prodotti dotati di ISPU. LSM6DSO16IS è progettato per applicazioni di consumo, mentre ISM330IS è destinato ad applicazioni industriali. Entrambi i prodotti sono muniti di un accelerometro digitale a 3 assi e un giroscopio digitale a 3 assi. Questi dispositivi inerziali sempre attivi includono funzionalità di elaborazione sulla piastrina.
ISPU è costituito da un core con architettura RISC Harvard a 32 bit, RAM di programmazione e dati e un'unità a virgola mobile (FPU) per l'aggiunta, la sottrazione e la moltiplicazione. È in grado di collegare e raccogliere informazioni da sensori esterni utilizzando la funzionalità del Sensor Hub. Il core è ottimizzato per l'esecuzione in tempo reale degli algoritmi di apprendimento automatico (ML) e degli algoritmi di deep learning per l'elaborazione dei dati inerziali o dei sensori esterni.
LSM6DSO16IS è in grado di associare l'IA e artificiale e i sensori in applicazioni di consumo come il riconoscimento dei gesti, il riconoscimento delle attività e il tracciamento dei movimenti. ISM330IS è idoneo per l'uso dell'IA nelle applicazioni industriali basate su edge come la robotica, il monitoraggio delle condizioni e il tracciamento delle risorse.
I sensori con ISPU sono altamente competitivi in termini di consumo energetico, anche durante l'esecuzione di algoritmi di elaborazione in tempo reale. Integrando un DSP ottimizzato per l'IA e un sensore inerziale a sei assi sulla stessa piastrina, questi sensori consentono di sviluppare dispositivi industriali o di consumo autonomi con un consumo energetico estremamente ridotto. L'applicazione richiede anche un MCU host, che può rimanere in modalità Sleep e consumare poca corrente fino a quando non viene attivato il sensore. Questo approccio consente di risparmiare risorse di calcolo, supporta l'elaborazione edge e prolunga la durata della batteria nelle attività di progettazione alimentate da batterie.
In qualità di distributore globale, abbiamo collaborato con i principali fornitori per offrire un'ampia gamma di sensori e accessori con funzionalità di apprendimento automatico (ML).
Fornitori | Prodotti |
---|---|
STMicroelectronics | LSM6DSOXTR |
STMicroelectronics | STEVAL-MKIT01V2 |
STMicroelectronics | STMICROELECTRONICS STEVAL-MKI229A |
STMicroelectronics | STMICROELECTRONICS STEVAL-MKI230KA |
Conclusione
LSM6DSOX di STMicroelectronics dimostra l'integrazione tramite un sistema logico ad albero decisionale che ricorre all'apprendimento supervisionato. Questo sistema elabora i segnali provenienti dai sensori, ne estrae le funzionalità e ricorre a un albero decisionale per classificare le attività con un consumo energetico minimo. Sfruttando filtri e calcoli statistici all'interno di finestre temporali definite, l'albero decisionale associa in modo efficiente gli input agli output. I progressi nella tecnologia Ml hanno consentito di superare i limiti tecnici, migliorando l'efficienza e la capacità dell'elaborazione dei dati dei sensori basata su edge. I dispositivi ISPU di STMicroelectronics sono i più adatti per le applicazioni IoT basate su ML. LSM6DSO16IS è adatto per le applicazioni di consumo, mentre ISM330IS, un System-in-Package IMU a 6 assi, è stato progettato per le applicazioni industriali. Si tratta in entrambi i casi di dispositivi inerziali con elaborazione sulla piastrina. I sensori con ISPU sono competitivi in termini di consumo energetico, risparmio di risorse di calcolo, elaborazione edge e durata prolungata della batteria.
Stay informed
Keep up to date on the latest information and exclusive offers!
Subscribe now
Thanks for subscribing
Well done! You are now part of an elite group who receive the latest info on products, technologies and applications straight to your inbox.
Related Articles
- Advanced ML for MEMS Sensors: Enhancing the Accuracy, Performance, and Power consumption
- How to design a MEMS Vibration Sensor for predictive maintenance
- Precision in Sight: How AI-powered visual inspection improves industrial quality control
- How to Capture High-Quality, Undistorted Images for Industrial Machine Vision
- Robotics and AI Integration: Transforming Industrial Automation
- The modern challenges of facial recognition
- Intelligent cameras for smart security and elevated surveillance
- Evolution of voice, speech, and sound recognition
- AI and IoT: The future of intelligent transportation systems
- Machine Vision Sensors: How Machines View the World
- Demystifying AI and ML with embedded devices
- How to implement convolutional neural network on STM32 and Arduino
- How to do image classification using ADI MAX78000
- The Benefits of Using Sensors and AI in HVAC Systems
- Deep learning and neural networks
- Latest Trends in Artificial Intelligence
- Hello world for Machine Learning
- How to implement AR in process control application