salve ho un sensore di O2 che ha un
Signal Output: 8.5-13 mV
usando un arduino uno e l'input analogico
cosa mi consigliate di usare per arrivare alla massima precisione?
salve ho un sensore di O2 che ha un
Signal Output: 8.5-13 mV
usando un arduino uno e l'input analogico
cosa mi consigliate di usare per arrivare alla massima precisione?
Un bel amplificatore operazionale che porta la tensione a max 1,1V.
Ciao Uwe
>catullum: essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie.
Guglielmo
>uwefed: Ti prego, prima di rispondere, di verificare sempre se l'utente abbia effettuato la presentazione, cosa che, ovviamente, NON può essere possibile se il suo numero di post è 1. Grazie anticipatamente per la collaborazione.
Grazie UWE
e da moltissimo tempo che con l'elettronica non faccio più nulla.
So che devo usare un amplificatore operazionale. ma visto che ce ne sono una miriade in commercio cosa mi conviene usare visto le tensioni?
Perche devo arrivare a 1,1 V max?
L'entrata del Arduino non va fino a5V?
catullum:
Perche devo arrivare a 1,1 V max?
L'entrata del Arduino non va fino a5V?
Perché aumenti la precisione ...
... Arduino può essere impostato a differenti livelli massimi, ma sempre a 10 bit (1024 livelli) la conversione rimane, per cui, se usi il riferimento a 5V hai che ogni livello vale 5V / 1024 = 4.88 mV, se invece porti il riferimento (interno) a 1.1V hai 1.1V / 1024 = 1.074 mV
Guglielmo
La tensione del segnale del sensore non dipende dalla tensione di alimentazione 5V. Se prendi come tensione di riferimento la tensione di alimentazione introduci un errore visto che non é costante. Alimentando via USB trovi un po tutto tra 5,2 e 4,6V.
Se usi il riferimento interno da 1,1V (Arduini con il controller ATmega 328) o da 1,1V o 2,56V ( ATemga2560) o 2,56V (ATmega32U4) la misura é piú stabile visto che il riferimento é stabile (ma non precisissimo). Per usare il sensore O2 devi comunque taralo con i 21% dell aria).
Non so che circuito di lettura ha bisogno il Tuo sensore O2 (a livello di carico o di impedenza del circuito di amplificazione).
Se basta un amplificatore con un impedenza alta per non caricare il Sensore O2 puoi usare un amplificatore operazionale in configurazione non invertente.
Se amplifichi a 1,1V o a 2,56V non serve un Rail to Rail ma basta un LM358 che come uscita arriva a 0V. Visto che ha 2 OpAmp potresti realizzare anche un sottrattore che Ti toglie l'offset di 8,5mV
Che modello di sensore vuoi usare?
Ciao Uwe
Grazie UWE per la tua risposta velocissima precisa.
Io intendo usare un Sensore della Analytics industries ovvero il PSR-11-39-MD
Il sensore non è alimentato
per la taratura intendo usare una taratura a tre punti.
0%
21%
100%
Ho un Arduino ATmega328
Solo che dopo tutte queste notizie, mi trovo ancora Più spaesato di prima.
come decido che tensione di riferimento prendere?
per il LM358 esiste già un modulo per Arduino? ho cercato solo velocemente ma escono tutti da 4 a 12 v
mi sono letto la sheet mi sembra facile usarla.
ci provo
catullum:
come decido che tensione di riferimento prendere?
... semplicemente studiando il reference, ed in particolare la funzione analogReference().
Guglielmo
gpb01:
... semplicemente studiando il reference, ed in particolare la funzione analogReference().Guglielmo
Grazie mille adesso ho capito come risolvere il problema da parte SW.
Ho trovato questo circuito
ho comunque un problema dimensionare
le resistenze ma sopratutto il condensatore C1
Vout/Vin = 76,9237
per il resto arrivo valori improbabili.
il circuito
ciao
il circuito che hai postato è un filtro bassa basso se non erro.... e non ti serve a te... o meglio :
per il dimensionamento devi calcolarti il guadagno G= Vout_max / Vin_max
a livello circuitale G=1+(Rf/Rg), imponi Rf da 10K ohm e ti calcoli Rg di conseguenza.
ed ecco fatto che hai dimensionato le due resistenze ...
fai attenzione a dare corrette le alimentazioni all'operazionale in base al componente che scegli.
se vuoi esempi cerca su google : "OP amp non invertente", oppure posta i tuoi dubbi
spero di non aver scritto troppe castronerie
MD
MatteoDerrico:
ciaoil circuito che hai postato è un filtro bassa basso se non erro.... e non ti serve a te... o meglio :
- per farlo diventare un OP AMP Non invertente basta che togli dal circuito il condensatore e la resistenza R1
- e metti il segnale del tuo sensore nel piedino positivo...
per il dimensionamento devi calcolarti il guadagno G= Vout_max / Vin_max
a livello circuitale G=1+(Rf/Rg), imponi Rf da 10K ohm e ti calcoli Rg di conseguenza.
ed ecco fatto che hai dimensionato le due resistenze ...fai attenzione a dare corrette le alimentazioni all'operazionale in base al componente che scegli.
se vuoi esempi cerca su google : "OP amp non invertente", oppure posta i tuoi dubbi
spero di non aver scritto troppe castronerie
MD
questo leggendo qua e la mi era diventato chiaro.
allora se il segnale di entrata e al massimo 13 mV e l'output deve essere al massimo 1,1V
prendendo come riferimento RG = 10 KOhm
arrivo a Rf che e uguale a 8,361538 KOhm
percui posso prendere due Resistenze una da 4 Ohm e un Potenziometro a 25 Giri da 5KOhm per tarare
se invece prendo RG = 1 KOhm
Rf = 83,61538 KOhm che divido un due con una Resistenza fissa e un potenziometro.
il mio ragionamento funziona ?
ciao
Il il trimmier ti regolazione del guadagno lo metterei lo metterei in serie ad Rf, e farei così :
se Rf tot = Rf + Rf_trimmer = 10K ohm
allora scelgo Rf da 8K2 e il trimmer da 2 k ohm e sei a posto...
però come gia accennava uwefed tu hai anche un problema di offset da risolvere....
ovvero il tuo segnale di ingresso non va da 0 a 13mV ... ma bensì da 8,5 a 13mV...
la regola vuole che un segnale è ben condizionato (ovvero in uscita) sia ha da 0 a 1,1 V...
nel tuo caso non sarebbe così perchè essendo Vo=G*Vi, quando in ingresso hai 8,5 in uscita avrai 0.7 v e non zero....
questo problema si risolve con un altro OP sottrattore....
nel senso che si fanno un paio di step al tuo segnale:
spero di averti chiarito un po le idee...
MD
MatteoDerrico:
nel senso che si fanno un paio di step al tuo segnale:
- Vi=8.5 a 13 mV
2)sottraggo 8.5 mv --> Vs=0 a 4.5 qua si usa un sottrattore- adesso lo si amplifica con guadagno g=4.5/1.1 = 4.1 qua OP amp non ivertente
spero di averti chiarito un po le idee...
MD
Il Tuo ragionamento é giusto anche se sbagli nei conti.
Vs sottraendo 8,5mV diventa 0 a 4,5mV
il guadagno é 1100mV/4,5mV = ca 244.
Ciao Uwe
hai ragione...
nella fretta ho sbagliato ho invertito Vout con Vin
dovrà poi comunque usare un'altro OP per ricavarsi gli 8.5 mV da sottrarre ...
MD
Un LM358 ha 2 OpAmps
MatteoDerrico:
...
dovrà poi comunque usare un'altro OP per ricavarsi gli 8.5 mV da sottrarre ...
...
... e limitarsi ad usare un'operazionale con i pin di compensazione dell'offset ? ... un trimmer e via ...
Vi ringrazio tutti quanti.
Ieri non ho avuto il modo di lavorarci su.
Scusate ma adesso sono molto incerto
Mi permetto di fare un riassunto per vedere se ci sono o meno
utilizzo il primo OP per ampliare il guadagno e uso un gadagno di 244
per cui :
244 = 1 + RF/RG ==> RG= 500 OHM ==> 243 * 500 OHM = 121,5 KOhm
ho fatto un circuito perfavore guardate se va bene
1.txt (831 Bytes)