Implementazione di moduli sensore

Di Redattori europei

Contributo di Editori europei di DigiKey

L'Internet delle cose (IoT) promette di dar vita a molte nuove applicazioni e servizi sia per i consumatori che per le aziende. Mentre noi in qualità di consumatori cominciamo lentamente a vedere che l'IoT sta entrando nelle nostre case, gli esperti ritengono che i settori che ne beneficeranno di più sono quelli manifatturieri, dove il neologismo Internet delle cose industriale (IIoT) gode già di grande popolarità. Come per qualsiasi applicazione basata su IoT, spetterà a un esercito di sensori e attuatori spesso remoti dare vita a IIoT. L'IIoT porterà la visibilità dei dati delle operazioni di processo e di produzione su una scala mai raggiunta prima. Oltre a ciò, mostrerà l'efficienza e le prestazioni dell'apparecchiatura usata per la produzione, sulla quale l'implementazione di un regime di manutenzione preventiva è sicuramente una carta vincente. Mentre i sensori usati per queste applicazioni possono essere componenti semplici, piccoli, passivi e/o semiconduttori, l'ambiente industriale in cui devono funzionare è soggetto a livelli estremi di temperatura, vibrazioni e umidità. La necessità di implementare rapidamente sensori e dispositivi di nodi periferici che possano operare in queste condizioni spinge molti sviluppatori di IoT ad adottare un approccio basato su moduli per l'integrazione dei sensori nei loro progetti.

Vi sono molti motivi per l'adozione di moduli tenendo conto delle sfide associate all'uso di componenti discreti. Ad esempio, la misurazione della temperatura può essere effettuata con un termistore a coefficiente di temperatura negativo (NTC) collegato in serie a un resistore per una tensione di giunzione che varia con il variare della temperatura ambiente. La tensione di giunzione risultante potrebbe poi essere letta da un convertitore analogico/digitale (ADC) del microcontroller host e una formula potrebbe calcolare la temperatura. Tuttavia, le caratteristiche di temperatura/resistenza dei termistori NTC non sono lineari e richiedono una linearizzazione ottimale sull'intervallo della temperatura di funzionamento. Esiste inoltre il problema della compensazione della temperatura e delle caratteristiche di deriva termica che occorre tenere in considerazione. Questa elaborazione ulteriore eseguita dal microcontroller host richiede più risorse dell'MCU e ogni sensore terminale deve essere calibrato durante la fase di produzione. Un altro tema importante da considerare è quello del contenitore usato per incapsulare il resistore NTC per garantire che i componenti siano protetti da fattori ambientali.

Immagine del sensore di umidità e temperatura SHT35 di Sensirion

Figura 1: Sensore di umidità e temperatura SHT35.

A questi dispositivi si contrappongono i moduli di temperatura, ad esempio il sensore digitale di umidità e temperatura SHT35 di Sensirion (Figura 1). Questo dispositivo a montaggio superficiale e basso consumo misura solamente 2,5 x 2,5 x 0,9 mm, funziona con una tensione di alimentazione tra 2,4 e 5,5 Vc.c., assorbe solo 800 µA in fase di misurazione e appena 0,2 µA quando è in sospensione. In questo contenitore miniaturizzato, trovano posto un sensore capacitivo per la misurazione dell'umidità e un sensore bandgap per la temperatura. Il sensore può misurare da -40 a +125 °C e da 0 a +100% di umidità relativa. Con un'uscita digitale totalmente tarata, gli elementi sensore sono collegati ai circuiti di elaborazione dei segnali e a un ADC a 14 bit che ha una precisione di temperatura di ±0,3 °C e ±2% per l'umidità relativa.

Schema delle comunicazioni tra SHT35 di Sensirion e microcontroller host

Figura 2: Schema delle comunicazioni tra SHT35 e microcontroller host.

Le comunicazioni verso un microcontroller host sono illustrate in Figura 2. Ciò si ottiene tramite un'interfaccia seriale I2C con un'aggiunta minima di resistori supplementari pull-up e di un condensatore di disaccoppiamento. La misurazione della temperatura e dell'umidità avviene usando i comandi indicati in Figura 3. Una volta che i dati del sensore sono stati letti, vengono trasmessi come due byte più un singolo byte di checksum CRC (blocchi grigi).

Immagine dei comandi di misurazione in modalità impulsiva di SHT3x di Sensirion

Figura 3: Comandi di misurazione in modalità impulsiva di SHT3x.

Per aiutare la prototipazione di un progetto con il sensore della serie SHT3x, è disponibile una scheda di valutazione tipo breakout. Realizzata da Adafruit, questa scheda consente di collegare facilmente e rapidamente il sensore a una piattaforma Arduino o compatibile. Qui potrete trovare una guida su come interfacciare SHT3x ed esempi di codice Arduino Sketch.

Un altro esempio di sensore di umidità e temperatura è il dispositivo BME280 di Bosch. Si tratta di un dispositivo completamente incapsulato in un contenitore LGA con un terminale metallico che contiene anche un sensore della pressione barometrica. Grazie al suo consumo energetico basso e alle dimensioni estremamente compatte, BME280 risulta idoneo per una vasta gamma di applicazioni portatili alimentate a batteria, dai controlli di automazione industriale ai dispositivi di monitoraggio della salute personale. Figura 4: Diagramma a blocchi funzionali di BME280.

Diagramma a blocchi funzionali del sensore Bosch BME280

Figura 4: Diagramma a blocchi funzionali del sensore combinato di umidità, pressione e temperatura BME280r di Bosch.

I blocchi digitali e analogici del sensore possono essere alimentati in c.c. tra 1,7 e 3,6 V e da un'interfaccia digitale separata da 1,2 a 3,6 V in base ai requisiti dell'applicazione. Sono supportate entrambe le interfacce SPI e I2C e il sensore può operare in tre diverse modalità energetiche. L'MCU host può attivare le misurazioni o il sensore può fornirle automaticamente ad una determinata frequenza. Il consumo energetico è di soli 0,1 µA in sospensione, 0,2 µA in standby e al massimo di 714 µA in fase di misurazione. Le tre modalità operative del sensore sono sospensione, forzato e normale. Durante l'avvio predefinito della modalità sospensione, l'ADC non funziona e tutti i registri sono accessibili.

Schema della transizione di modalità del sensore BME280 di Bosch

Figura 5: Schema della transizione di modalità del sensore BME280.

La modalità forzata viene richiamata con una richiesta SPI o I2C da parte del microcontroller host e determina il rilevamento di una misurazione. I risultati vengono memorizzati e il sensore ritorna in modalità sospensione. In modalità normale, subentra un ciclo continuo di misurazioni i cui risultati vengono memorizzati, dopodiché il sensore ritorna in modalità sospensione.

La scheda dati di BME280 offre una spiegazione dettagliata delle modalità operative, delle comunicazioni seriali e di come accedere ai registri dei risultati delle misurazioni. Questo documento fornisce inoltre alcuni profili di impostazione raccomandati per i sensori per applicazioni diverse, dal monitoraggio meteorologico ai giochi. Offrono un ottimo equilibrio tra risparmio energetico, frequenza di campionamento, filtraggi del rumore e velocità di invio dati per svariati tipi di applicazioni.

Ai tecnici che vogliono prototipare un progetto basato su BME280 viene consigliato di provare la scheda di breakout BME280 di Adafruit, mostrata in Figura 6.

Immagine della scheda di breakout per sensore BME280 di Adafruit

Figura 6: Scheda di breakout per sensore BME280 di Adafruit.

Adafruit mette a disposizione una guida dettagliata per lavorare con il sensore, scaricabile qui. La guida include l'interfacciamento a una scheda Arduino UNO o compatibile oltre a fornire collegamenti a una libreria Arduino BME280 disponibile nel repository GitHub di Adafruit. La Figura 7 illustra un frammento di codice dallo sketch di test BME280 fornito nella libreria. Qui si mette in evidenza l'assegnazione delle connessioni dei pin SPI ad Arduino in alto sull'immagine e la semplicità con cui, grazie alla libreria, si possono leggere i valori, nella parte bassa dell'immagine.

Frammento di codice dallo sketch di test BME280 di Adafruit

Figura 7: Frammento di codice dallo sketch di test BME280 di Adafruit.

I sensori della pressione differenziale sono piuttosto diffusi in molte applicazioni industriali come i boiler, le celle a combustibile e i sistemi HVAC. Un esempio è dato dalla famiglia Sensirion SDP8xx, progettata per misurare la pressione dell'aria o di gas non corrosivi in applicazioni in grande serie. SDP810 è un sensore di pressione differenziale digitale che può misurare un intervallo di pressione di ±500 Pa con una precisione di 0,1 Pa. Comunicazioni con MCU host tramite interfaccia I2C. Nella Figura 8 viene illustrato un diagramma a blocchi funzionali e l'immagine del sensore.

Diagramma a blocchi e immagine di SDP810 di Sensirion

Figura 8: Diagramma a blocchi e immagine di SDP810 di Sensirion.

I sensori di pressione differenziale possono essere usati per misurare la velocità di flusso dei gas, come illustrato in Figura 9. In questo esempio, il flusso di passaggio viene usato per calcolare la portata attraverso la porta o il tubo principale. La misurazione può essere indicata come portata volumetrica (l/min) o portata massica (SCCM, centimetri cubi standard per minuto). Questo secondo caso viene tipicamente usato in applicazioni di riscaldamento in cui il punto di riferimento è a una data pressione e temperatura.

Schema della misurazione del flusso di Sensirion con un sensore di pressione differenziale

Figura 9: Misurazione del flusso con un sensore di pressione differenziale.

Come il sensore BME280, SDP810 può funzionare sia se attivato da segnale che in modo continuo. Viene usato un semplice protocollo per strutturare le sequenze di comando attraverso il bus I2C. È disponibile anche una versione del sensore SDP810, SDP816 che fornisce uscita analogica. L'uscita analogica può essere configurata per avere un rapporto lineare con la pressione differenziale o come conversione quadratica.

Conclusione

Questo articolo si è occupato solo di una piccola selezione di moduli sensore progettati per un'ampia varietà di applicazioni industriali. Anziché dover affrontare le sfide poste da un approccio con componenti discreti, la progettazione in un modulo sensore digitale può far risparmiare tempo di sviluppo, sforzi e risorse.

 
DigiKey logo

Esonero della responsabilità: le opinioni, le convinzioni e i punti di vista espressi dai vari autori e/o dai partecipanti al forum su questo sito Web non riflettono necessariamente le opinioni, le convinzioni e i punti di vista di DigiKey o le sue politiche.

Informazioni su questo autore

Redattori europei

Informazioni su questo editore

Editori europei di DigiKey