Arduino Nano: misurazione di piccole tensioni con un ingresso analogico


9

Devo misurare 0v a 40mV nel modo più preciso possibile con l'ADC a 10 bit su un Arduino Nano . Ho solo bisogno di circa un campione al secondo.

Ho in programma di tenere il pin AREF a 40mV dal suolo, schermare correttamente tutto, utilizzare filtri passa-basso in hardware e software e utilizzare un alimentatore correttamente levigato.

  • Che tipo di precisione posso ottenere?

  • Cos'altro potrei fare per migliorare la precisione?


Controllare la scheda tecnica del controller per le tensioni di riferimento disponibili per il gap di banda. Quindi progettare un amplificatore che amplifichi il segnale massimo a poco sotto quella tensione di riferimento.
jippie,

Risposte:


9

Ci sono esperti migliori dell'ADC del Nano di me, ma sono sicuro che avrà dei problemi, quindi suggerirei sicuramente un amplificatore. Consiglierei un amplificatore operazionale da 5V (o qualunque sia il nano) e 0V. L'amplificatore operazionale avrà bisogno delle capacità rail-to-rail su input e output e sarà configurato in modalità non invertente con guadagno che converte 40mV in scala reale sul nano.

inserisci qui la descrizione dell'immagine

Se il fondo scala è (diciamo) 3V, avrai bisogno di un guadagno di 3 / 0,04 = 75. Ciò significa R2 / R1 = 74 (75 meno 1).

R1 sarà felice di essere 100 ohm e quindi R2 sarà 7400 ohm (7k5 in parallelo con 560k dà 7k401 che si spera sia abbastanza vicino. L'op-amp deve funzionare solo a bassa velocità dopo aver letto la tua domanda e ce ne sono diversi dispositivi adatti. Mantieni il fuoco mentre invio la risposta e dai un'occhiata ...

L' AD8538 sembra adatto, così come l'AD8628, ma probabilmente ce ne sono molti altri che si adattano facilmente al conto


1
Il fondo scala è Vcc, ma fornire una tensione di riferimento sul pin AREF consente un riferimento a fondo scala inferiore, se necessario. Tuttavia, l'amplificazione è ancora desiderabile, poiché AREF sotto 1,0 Volt non funziona con AFAIC (nessuna prova documentale, solo alcuni problemi che ho affrontato).
Anindo Ghosh,

Perché non resistori E12 più comuni? Il rapporto esatto non è troppo importante, purché tu sappia compensarlo. Per esempio. 12k ÷ 150 = 80 o 33k ÷ 470 ≈ 70. Naturalmente questo è il caso della tensione di uscita a 3 V, che probabilmente non è ottimale.
jippie,

@jippie Sono totalmente d'accordo, ma la mia risposta "suggerisce" come mettere in parallelo i resistori e non ero sicuro che l'OP lo sapesse. Ha avuto una risposta extra gratis !!
Andy aka

+1 per il suggerimento dell'amplificatore operazionale, l'AD8538 è un favorito personale, specialmente nel pacchetto SOT23 - nessun pin privo di significato, eccellente comportamento termico.
Anindo Ghosh,

1
@AnindoGhosh - 20 mesi dopo. La scheda tecnica ATMega328 non sembra dire da nessuna parte nelle sue 650 pagine quale intervallo di valori è valido per la tensione Aref applicata ESTERAMENTE MA TUTTI i molti grafici in cui è menzionato hanno un limite inferiore di 1,8 V :-(. Vcc può essere> = 1,8 V e AVcc possono essere Vcc-0,3 V, per cui è legale un minimo di 1,5 V. L'uso del riferimento di banda interna da 1,1 V fornisce una tensione ADC massima inferiore. V_ARef esterno inferiore può essere legale ma non è certo
Russell McMahon

1

Inizialmente non avevo intenzione di aggiungerlo come risposta, ma sembra importante lasciarlo annegare da qualche parte nei commenti.

È estremamente importante ricorrere al foglio dati del microcontrollore. E se ho ragione su Arduino Nano con ATmega 168, ecco il foglio dati . Le caratteristiche elettriche sono una sezione che devi conoscere e controllare prima le cose lì.

Il punto è: la tensione di riferimento minima è 1,0 V: è possibile vederla a pagina 311. Dovrai amplificare il segnale almeno di un fattore 25 per ottenere una precisione ragionevole, scalando fino al riferimento di tensione minimo.

Ora la migliore scelta di elementi che conosco (anche se conosco a malapena l'argomento) richiederebbe un amplificatore operazionale a basso rumore, in grado di funzionare come rail-to-rail come sottolineato da @Andyaka, preferibilmente funzionando alla tensione di alimentazione. Quindi penso che la scelta migliore del riferimento di tensione sia quella interna. Anche se possono variare tra i dispositivi, penso che la stabilità dovrebbe essere molto ragionevole. Inoltre, la scelta dei resistori dovrebbe risiedere in resistenze più basse anziché più alte, poiché sono più resistenti al rumore. Non dimenticare la loro stabilità nel tempo e le variazioni di temperatura!

La migliore configurazione degli amplificatori potrebbe variare: l'amplificatore non invertito potrebbe essere buono all'inizio, ma la sua elevata impedenza di ingresso potrebbe non funzionare bene con il segnale (anche se dovrebbe essere OK).


1
Perché un'impedenza di ingresso elevata non funziona bene con il segnale? I GPIO Arduino in modalità di input sono tutti ad alta impedenza di input, tra l'altro, come anche la maggior parte degli ADC.
Anindo Ghosh,

1
@AnindoGhosh Se la sorgente del segnale deve essere caricata per misurare e non è stata eseguita correttamente. Non posso dire nulla sulla natura del segnale di OP. Penso che il suggerimento nel mio post sia stato troppo duro sull'amplificatore - probabilmente non dovrebbe accadere, ma un'alta impedenza di ingresso è una cosa di cui penso sia meglio essere consapevoli.
TNW,

Credo che caricare una sorgente di segnale se necessario sia una scienza ben nota e, allo stesso modo, i progettisti in genere si battono per un'alta impedenza di ingresso e una bassa impedenza di uscita. Da qui il mio voto negativo su quella dichiarazione non qualificata.
Anindo Ghosh,

1
@AnindoGhosh Penso che potrebbe essere meglio supporre che la persona ne sappia meno di più (soprattutto che il riferimento a 40mV mi ha reso sospettoso). Volevo sottolineare che la scelta tra amplificatore invertente e non invertente non dipende solo dalla possibilità di consentire il cambio di polarità.
TNW,

-4

È necessario utilizzare un amplificatore per la massima precisione.


Grazie - ma perché? Le fasi extra non aumenterebbero il rumore e le imprecisioni? Quale tipo di circuito amplificatore darebbe i migliori risultati?
CL22,

1
Suppongo che l'amplificatore operazionale a basso rumore in configurazione non inversa potrebbe fare, purché si utilizzino resistori stabili per mantenere il guadagno di tensione.
TNW,

3
Per qualcuno che rimprovera ad altri utenti di non fornire informazioni, questa è sicuramente una risposta nuda. Potresti forse aggiungere alcuni schemi o ulteriori dettagli?
Chris Laplante,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.