Pages: 1 2 [3]   Go Down
Author Topic: misurare la carica della batteria del robot?  (Read 2519 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Full Member
***
Karma: 3
Posts: 115
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

scusa ma se usi un minuscolo operazionale e due resistenze ? il valore lo ottieni anche più preciso , non hai problemi di correnti e per rilevare il valore usi l'adc .
Logged

Camisano Vicentino (VI), Italy
Offline Offline
God Member
*****
Karma: 5
Posts: 956
ƎR like no other.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

a me basta fare col partitore e nel modo che mi assorba meno corrente possibile...
Quanto è la resistenza di ingresso dell'adc sull'ATmega328?
Logged

Riccardo Ertolupi of the Vicenza Thunders Team: http://www.VicenzaThunders.com

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 328
Posts: 22755
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

a me basta fare col partitore e nel modo che mi assorba meno corrente possibile...
Quanto è la resistenza di ingresso dell'adc sull'ATmega328?
Come detto, l'ADC è dimensionato per impedenze di una decina di Kohm.
Puoi però usare R maggiori, ad esempio anche 100K, basta che invece di eseguire 1 sola lettura, ne campioni tipo una decina e poi o prendi la media oppure tieni conto solo dell'ultima. In questo modo dai tempo al circuito S&H di caricarsi efficacemente.

Esempio:
int lettura;
for (byte i=0; i<10; i++) {
  lettura=analogRead(sensore);
}
//qui lettura contiene l'ultimo valore letto, quello più attendibile.
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 129
Posts: 9455
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quanto è la resistenza di ingresso dell'adc sull'ATmega328?

Quello che conta è l'impedenza d'uscita della sorgente, il data sheet dice che deve essere >= 10 kohm se vuoi utilizzare l'ADC al massimo delle sue prestazioni.
Con un partitore per ottenere una impedenza vista dal ADC di massimo 10 k basta che applichi Thevenin per ottenere la resistenza equivalente in serie al generatore di tensione, la batteria nel nostro caso, ovvero la R serie, e impedenza d'uscita, è data dal parallelo delle due resistenze.
Se usi una resistenza da 10k tra GND e il pin d'ingresso del ADC sei matematicamente certo che l'impedenza d'uscita del generatore di tensione sarà sempre inferiore a 10k, aggiungendo una resistenza da 22k ottieni un partitore a circa 1/3 che permette di leggere tensioni fino a 15V, in pratica non devi fare altro che applicare una tensione nota in ingresso al partitore, misuri in modo preciso la tensione in uscita e ti ricavi il reale divisore al netto delle tolleranze che utilizzerai nel tuo software per ottenere la reale tensione partendo dai count del ADC.
Logged

Camisano Vicentino (VI), Italy
Offline Offline
God Member
*****
Karma: 5
Posts: 956
ƎR like no other.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ma il S&H a scuola me lo insegnano con un buffer in ingresso, quindi la R di ingresso dovrebbe essere nell'ordine dei megaohm, o sbaglio?
Logged

Riccardo Ertolupi of the Vicenza Thunders Team: http://www.VicenzaThunders.com

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 129
Posts: 9455
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ma il S&H a scuola me lo insegnano con un buffer in ingresso, quindi la R di ingresso dovrebbe essere nell'ordine dei megaohm, o sbaglio?

Il S&H ha una resistenza quasi infinita quando è aperto, circa 100 Mohm come per tutti gli input del micro, relativamente bassa quando è chiuso per consentire la carica del condensatore, il circuito equivalente è un condensatore da 47 pf con in serie una resistenza di qualche kohm in condizione di sample.
Come ti ho già spiegato il solo parametro che ti interessa per utilizzare in modo corretto l'ADC è l'impedenza d'uscita della sorgente che deve essere >= 10 khom.
Dato che Arduino inizializza l'ADC per una velocità di circa 10 ksps con 10 bit di risoluzione (il massimo è circa 15 ksps a 10 bit) è importante mantenere l'impedenza della sorgente entro i limiti ammessi.

Logged

Camisano Vicentino (VI), Italy
Offline Offline
God Member
*****
Karma: 5
Posts: 956
ƎR like no other.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

e in termini pratici quali sono questi limiti?
Logged

Riccardo Ertolupi of the Vicenza Thunders Team: http://www.VicenzaThunders.com

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 129
Posts: 9455
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e in termini pratici quali sono questi limiti?

Basta che leggi quello che ho scritto quattro post più sopra.
Logged

Pages: 1 2 [3]   Go Up
Jump to: