Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Protezione ingressi ADC Atmega328

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utentecarloc, Foto Utenteg.schgor, Foto UtenteBrunoValente, Foto UtenteIsidoroKZ

0
voti

[11] Re: Protezione ingressi ADC Atmega328

Messaggioda Foto Utentelucaking » 26 nov 2025, 14:15

Per quanto riguarda la soluzione del sensore ad effetto hall, avevo seguito la discussione di Foto Utentestefanopc e sicuramente per la misurazione della corrente totale assorbita dal carico è la soluzione che adotteri, ma come dicevo, le mia era solo una prova approntata alla veloce con il mio arduino tuttofare per controllare separatamente la corrente sui due rami del mio carico.
E le domande sono sorte piu che altro perché l' argomento può tornare utile anche in altre situazioni.
L' idea per un futuro era proprio quella di realizzare una versione un po piu evoluta del mio mini carico, ma le idee sono tante e il tempo e le capacità poche, quindi chissa.
Comunque imparare qualcosa in piu schifo non mi fa mai.
Avatar utente
Foto Utentelucaking
1.651 4 5 8
Expert
Expert
 
Messaggi: 1445
Iscritto il: 29 mag 2015, 14:28

0
voti

[12] Re: Protezione ingressi ADC Atmega328

Messaggioda Foto Utentelucaking » 26 nov 2025, 15:32

PietroBaima ha scritto:Dovrei fare una lunga dissertazione (che ti risparmio) su quanto sia difficile ottenere tutta la risoluzione dell'ADC.

Il micro che usi tu ha una risoluzione di 12 bit, che su una scala di 5V significa che la risoluzione di 1LSB= 5V/2^12 cioè 1.2mV circa :!:

Questo significa che per sfruttare bene tutti i 12bit disponibili, il rumore e l'errore di ingresso all'ADC deve essere trascurabile rispetto a 1.2mV. Quanto trascurabile? Questo dipende.

Se hai bisogno davvero di tutti i 12bit allora dovrai stare circa 40dB sotto in tensione, altrimenti se ti basta una risoluzione inferiore calcoli la risoluzione che ti serve, tiri fuori il numero di bit necessari e scarti gli ultimi LSB che non ti servono (se ti servissero, per esempio, solo 8 bit campionando a 12bit scarteresti i 4bit meno significativi).

1.2mV-40dB significa che l'errore che fai deve essere non superiore a 12 uV.
Ottenere una precisione del genere non è banale.

Il primo fattore che devi considerare è che se inserisci una Z di ingresso in serie all'ADC questa finirà per realizzare un partitore di tensione con la Z di ingresso del microcontrollore.
Se la Z di ingresso del micro fosse stabile potresti considerarla e correggerla dopo, ma il problema è che, leggendo il data sheet, troverai dei valori compresi fra un minimo ed un massimo, che ti daranno una incertezza non compensabile.
Per questo è necessario inserire in serie all'ingresso una impedenza che, anche nel caso peggiore, generi un contributo trascurabile.
Per questo in genere si inserisce un OPAMP con una bassa Z di uscita oppure, in molti casi, un condensatore in parallelo all'ingresso che, nella banda di utilizzo, abbassi la Z complessiva.

A questo punto però, come capita sempre, inserendo qualcosa si inseriscono anche altri problemi.
Uno di questi è la non idealità dell'OPAMP.
E' vero che gli ingressi di un OPAMP non assorbono corrente? No.
Assorbono una corrente piccola, ma non nulla.
Se voglio usare tutti i 12 bit (cioè, ricordo, l'errore deve stare dalle parti di 12uV) non posso più trascurare questa corrente, detta "corrente di bias".

Ti risparmio i calcoli, ma ti riporto i risultati. Per minimizzare l'effetto della corrente di bias sull'uscita di un OPAMP le Z ai suoi ingressi devono essere più basse possibili e più uguali possibili fra di loro.

Sul morsetto invertente dobbiamo inserire una resistenza per realizzare il clipper, e quella non la possiamo proprio evitare, per cui, per minimizzare l'effetto sull'uscita, siamo costretti a metterne una uguale anche dall'altra parte.

Gli ingressi a FET di cui parlavo servono poi per rendere le correnti di bias piccole, che male non fa di certo.

Già con 12 bit queste considerazioni diventano importanti.
Poi ci sono considerazioni sul PCB, sulla EMC e molto altro.
Dove lavoro ci sono dei progettisti analogici che si occupano solo di elettronica front-end.

:shock: Wow che spiegazione, ti ringrazio per avermi risparmiato i calcoli, ma per il resto non potevo chiedere di meglio.

L' ADC dell' Arduino dovrebbe essere 10 bit, quindi a 5V la risoluzione dovrebbe essere di circa 4,9 mV e forse è il motivo per cui negli schemi che ho visto l' inseguitore era "classico" senza resistore sull' anello di retroazione.
Comunque ad esempio nel mio caso, usando il riferimento interno da 1,1V un bit dovrebbe valere: 1.1V/(2^10) = 0.27 mV e quindi il ragionamento sulla non trascurabilità degli effetti dello squilibrio delle correnti di bias torna a farsi importante.
A sto punto il valore dei resistori, si calcola in base alla corrente massima che accetto di far scorrere nel diodo giusto?
Il che è un approccio percorribile nel caso in cui si conoscono le tensioni massime in gioco, ma nel caso si volesse dimensionare una protezione valida tanto per l' alimentatore da 24 V che per la batteria da 12V o ancor piu, per una sorgente da 48 V, come si potrebbe procedere?
Sarebbe sempre valida questa strada?
Avatar utente
Foto Utentelucaking
1.651 4 5 8
Expert
Expert
 
Messaggi: 1445
Iscritto il: 29 mag 2015, 14:28

Precedente

Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Google [Bot] e 68 ospiti