Home
Accesso / Registrazione
 di 

ARDUINO + ADS7816

3 risposte [Ultimo post]
ritratto di gcam67
Offline
Titolo: User+
Utente+
Ultima visita:
1 anno 31 settimane fa
Utente dal: 10/03/2012
Messaggi: 20

Salve.
Ho pensato di collegare all'arduino un ADC esterno. La mia scelta è caduta sull'ADS7816 un 12 a 200KSps collegabile all'ARDUINO mediante interfaccia SPI.
Perchè l'ADS7816 ? Il salto di qualità (risoluzione) è irrisorio. Però:

1.l'ADC consente di ottenere un campione ogni 5 microSecondi.
2.l'ADC consente di settare una VREF da 100 mV a 5 V.

Siccome la frequenza che devo utilizzare è massimo di 1 KSps, e i valori che devo acquisire sono molto bassi.
Ho pensato di applicare la tecnica dell'oversampling per aumentare la risoluzione di 3 bit, cioè ottenere un valore ogni 64 acquisizioni (5 * 64 = 320 microSecondi) e dividere per 8 per eliminare i bit meno significativi (?), quindi se non sbaglio ottengo un 15 bit.

Se poi setto la VREF = 100 mV, la precisione risultante finale è di 3 microVolt.

Le considerazioni fatte sono corrette oppure e solo illusione ?

grazie.

ritratto di divivoma
Offline
Titolo: PowerUser
Utente Power
Ultima visita:
1 giorno 14 ore fa
Utente dal: 02/03/2011
Messaggi: 212
Mmmmm la tecnica

Mmmmm la tecnica dell'oversampling è un "tantino" più complicata da realizzare... include uno spostamento ad alte frequenze del rumore di fondo per poi effettuare il cosiddetto noise shaping...come accade per i sigma-delta...

Fattò sta che comunque fare più medie ti permette sicuramente di ripulire il segnale...

ritratto di Raffaele65
Offline
Titolo: User+
Utente+
Ultima visita:
19 settimane 4 giorni fa
Utente dal: 12/06/2011
Messaggi: 37
Utente PREMIUM
Letto per curiosità

Non conosco nello specifico il preoblema.
Leggendo ho cercato il termine "oversampling" che non avevo idea di cosa significasse.
Mi sono fatto questa idea:
la tecnicca dell'oversampling credo vada bene quando l'integrato lo progetti tu. In questo caso la risoluzione del convertitore è fissa. Il meccanismo di leggere un valore ad interalli di tempo diversi dai standard, che è quello che avviene se leggi un valore ogni 64, ti ruduce la dinamicità del dato a pari risoluzione.
Il metoro dell'oversampling è utile in fase di progettazione di un integrato o un dispositivo creato interamente per ridurre la quantità di bit utili a parità di risoluzione desiderata. Non è detto che il costruttore non lo abbia gia fatto all'interno dell'integrato.
In oltre la tensione minima della risoluzione dell'integrato è dovuta alla sua caratteristica di ingresso. Manipolando i bit non ottieni una riduzione di scala ma semplicemente un risultato non esatto.
Credo che il motivo per cui l'ingresso del convertitore non sia con una sensibilità maggiore di 100millivolt sia dovuto al rumore. Intendo dire che per segniali di ingresso troppo piccoli è difficile discriminare il segniale utile dal rumore. Bisogna usare degli amplificatori in catena, ogniuno dei quali filtrati per le propie capacità operative. Altrimenti si legge rumore.
Credo che sia oppertuno prendere in considerazione altri meccanismi o un altro integrato più vicino alle tue esigenze.

ritratto di gcam67
Offline
Titolo: User+
Utente+
Ultima visita:
1 anno 31 settimane fa
Utente dal: 10/03/2012
Messaggi: 20
innanzitutto grazie. Capisco

innanzitutto grazie.

Capisco che l'oversampling viene applicato in fase di progettazione, portando un adc da 1 2 bit a 24. Però quello che volevo fare io è applicare questa semplice tecnica qui riportata:

http://www.atmel.com/dyn/resources/prod_documents/doc8003.pdf

e quadagnare qualche bit.

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ultimi Commenti