ADC Logger con RasPI

Introduzione

Per acquisire e successivamente elaborare dati analogici da sensori è necessario utilizzare un convertitore Analogico – Digitale : una scheda ADC. Le soluzioni possibili sono molteplici. Ad esempio è possibile utilizzare un chip PSoC che mette a disposizione componenti ADC, acquisire i dati e successivamente trasmettere i dati ad un Raspberry Pi per la successiva elaborazione, come abbiamo descritto nel progetto Raspberry Pi Logger (ITA). in alternativa è possibile utilizzare l’ottimo modulo Theremino ADC24. In questo post vogliamo descrivere una soluzione diversa basato solo sull’utilizzo del Raspberry.

Non esiste alcuna funzione AD/DA sull’interfaccia GPIO del Raspberry Pi, e questo potrebbe essere un impedimento nello sviluppo di applicazioni. C’è tuttavia la possibilità di utilizzare schede di espansione, una di queste è la scheda waveshare. Questa è una scheda AD/DA che consente di aggiungere funzioni AD/DA ad alta precisione al Raspberry Pi.

Caratteristiche

  • Standard Raspberry Pi 40 PIN GPIO connettore di estensione, supporta le schede serie Raspberry Pi
  • Onboard ADS1256, 8 ch 24 bit ADC ad alta precisione (4 ch input differenziali), 30 ksps campionamento
  • Onboard DAC8532, 2 ch 16 bit DAC ad alta precisione
  • Onboard interfaccia input via pin headers, per connessione segnali analogici
  • Onboard interfaccia input/output via terminali a vite, per connessione segnali analogici
  • Circuiti AD/DA per dimostrazione

L’immagine seguente mostra la scheda con i principali componenti / funzioni :RPi expansion board on board resource

  1. Interfaccia Raspberry Pi GPIO : per la connessione con Pi
  2. AD/DA input/output : terminali a vite
  3. AD input : pin headers
  4. 7.68M crystal
  5. LM285-2.5 : fornisce tensione di riferimento a 2.5V per il chip ADC
  6. Photo resistor
  7. Indicatore LED output
  8. 10K potenziometro
  9. DAC8532 : 16 bit high-precision DAC, 2 ch
  10. Power indicator
  11. ADS1256 : 24 bit high-precision ADC, 8 ch (4 ch differential input)
  12. ADC testing jumper
  13. DAC testing jumper
  14. Power selection jumper
  15. Configurazione riferimento ADC :  AINCOM è terminale di riferimento, può essere connesso a GND oppure ad una tensione di riferimento esterna

Codice Python

Il codice python si può trovare al seguente link : AccelerPI. Va tenuto presente che l’operazione di lettura da un canale analogico ha una durata temporale di circa 7 msec. Quindi la frequenza di campionamento non può essere più maggiore di 100 Hz. In caso di lettura di più di un canale, la frequenza di campionamento deve essere conseguentemente più lenta.

Codice C

Il codice C si può trovare al seguente link : wiringpi. Il codice C è molto più veloce del codice Python : l’operazione di lettura del valore da un canale richiede circa 1 msec, quindi la frequenza di campionamento può essere molto più veloce.

Acquisizione Segnali da un Accelerometro

Come esempio di applicazione della scheda AD presentiamo la lettura dei segnali analogici prodotti da un accelerometro a stato solido.

Il sensore LIS344ALH è un accelerometro lineare ultra compatto a tre assi a bassa potenza che include un elemento di rilevamento e un’interfaccia IC in grado di prendere le informazioni dal rilevamento e fornire un segnale analogico al mondo esterno.

Il sensore LIS344ALH ha un fondo scala dinamico selezionabile di ±2g / ±6g ed è in grado di misurare le accelerazioni su di una larghezza di banda massima di 1,8 kHz per tutti gli assi. la larghezza di banda del dispositivo può essere ridotta utilizzando condensatori esterni.

Le immagini sotto mostrano il componente montato su di una breakout board equipaggiata con i condensatori di livellamento.

Il segnale di uscita del sensore viene bufferato mediante operazionale, come indicato nello schema mostrato sotto. Il segnale inoltre viene traslato su di un livello intermedio di 1.65V in modo da sfruttare tutto il range di 3.3V messo a disposizione dal convertitore ADC.

L’immagine sotto mostra il sensore e la scheda con l’elettronica di front end per la pre-elaborazione del segnale prodotto dall’accelerometro. I componenti gialli sono i condensatori al poliestere per la filtrazione della componente continua. L’immagine successiva mostra il box con le tre uscite SMA corrispondenti ai tre canali X, Y e Z dell’accelerometro.

I segnali acquisiti dalla scheda ADC e successivamente elaborati da un software python possono essere visualizzati in una classica traccia sismica come quelle riportate sotto. Si tratta delle registrazioni dei segnali ottenuti dai tre canali X, Y e Z. Alla fine della traccia vi è una oscillazione causata artificialmente.

Per la registrazione di eventi sismici va tenuto presente che questi accelerometri non sono sensibilissimi, questo significa che possono fornire principalmente la registrazione di eventi sismici intensi e possono essere utili soprattutto nei casi in cui il forte segnale satura i normali sismometri.

Se ti è piaciuto questo articolo puoi condividerlo sui “social” Facebook, Twitter o LinkedIn con i pulsanti presenti sotto. In questo modo ci puoi aiutare ! Grazie !

Donazioni

Se vuoi contribuire allo sviluppo di questo sito ed allo sviluppo di nuove attività sperimentali puoi fare una donazione, Grazie !

Check Also

Quenching della fluorescenza ed equazione di Stern-Volmer

Abstract: in questo articolo descriviamo alcune misure di quenching della fluorescenza in alcune sostanze. Il fenomeno del quenching (smorzamento) si verifica quando alcune molecole assorbono l'energia dei fluorofori. Questo interessante fenomeno può essere utilizzato in misure quantitative per la determinazione della concentrazione del quencher ed anche, tramite il modello di Stern-Volmer, per lo studio del decadimento temporale della fluorescenza.