"consumo dell'analogRead"

se faccio un progettino che include una pila commerciale da 1,5 volt quanta corrente preleva (se pur minima) approssimativamente arduino tendo sempre collegato (acceso o spento)

ovviamente analogRead serve solo per vedere se la pila e ancora ad un voltaggio accettabile o e da sostituire

Perché non usi il comparatore analogico interno? Essendo a tutti gli effetti un op-amp, i suoi ingressi hanno un'elevata impedenza per cui il consumo è ridotto. Inoltre rispetto all'ADC è più veloce e molto più preciso.
Tempo fa ho scritto un'apposita lib, la trovi sul mio sito (anche sul forum ho messo un pò di documentazione).

Vero, ma considera che ci deve solo leggere la tensione della batteria, che non varia velocemente ... gli ingressi analogici hanno circa 100Mohm di impedenza interna, se ci colleghi direttamente una pila da 1.5V, l'ingresso ti consuma circa 15 nA (NANO) ... la scarichi di piu se la guardi male o la insulti :stuck_out_tongue: XD

ok tanks a tutti e due :wink:
allora posso stare tranquillo che una pila stilo da 1,5 volt non viene scaricata in poche settimane dall'arduino stesso

Ma l'Arduino lo alimenti con la pila? No eh!

Più che altro puoi mettere un pulsante che l premi solo quando vai fisicamente sullo scatolo da misurare, così ciucci corrente solo in quell'istante.

Beh, allora un piccolo MOSFET logic level a canale N, normalmente è aperto e non conduce. QUando vuoi leggere la batt, gli dai segnale e quello ti chiude la linea che va all'ingresso analogico.

Sempre un pulsante da qualche parte devi schiacciare...

No, perché il Mosfet puoi pilotarlo da codice, facendo una lettura ogni tot tempo.

leo72:
No, perché il Mosfet puoi pilotarlo da codice, facendo una lettura ogni tot tempo.

Quando lui non c'è e non la vede nessuno? XD

BaBBuino:
Ma l'Arduino lo alimenti con la pila? No eh!

Più che altro puoi mettere un pulsante che l premi solo quando vai fisicamente sullo scatolo da misurare, così ciucci corrente solo in quell'istante.

no è una pila stilo commerciale da 1,5 volt l'arduino viene alimentato dalla rete elettrica però il pin A0 sara sempre collegato al + della batteria anche quando l'arduino spento
il tutto serve semplicemente per sapere quando la batteria scende sotto 1,3 volt (batteria scarica o quasi)
la verifica della tensione viene fatta nel set up

il dubbio era che lasciando sempre il pin collegato poteva scaricarsi con facilita

Considera che in qualsiasi batteria c'è un materiale o liquido isolante che isola i due poli.
Siccome l'isolante perfetto NON esiste, ci sarà sempre una piccola corrente di migrazione "interna" alla batteria, che nel tempo la esaurisce (infatti una confezione NUOVA di batterie, se ha più di due anni, probabilmente conterrà batterie mezze scariche, anche se non hanno alimentato alcun utilizzatore).

Queste correnti sono dell'ordine delle centinaia di pA, quindi tra un pò è più alta questa corrente che non quella che ciucci tu con il pin analogico.

BaBBuino:
...
Queste correnti sono dell'ordine delle centinaia di pA, quindi tra un pò è più alta questa corrente che non quella che ciucci tu con il pin analogico.

Be', no, 15 nanoampere sono moooolto piu alti di un centinaio di picoampere ... :stuck_out_tongue: XD

Pero', per semplificare, potresti usare un'integrato dedicato per il controllo delle batterie, che quando la tensione scende sotto una certa soglia, attiva un'uscita di allarme, che puoi leggere con un secondo arduino, il quale pilota un braccio robotico, che preme un pulsante, facendo accendere un led, che ti segnala la sottotensione ... ovviamente, anche le batterie del secondo arduino bisogna controllarle, e allora usi un'altro integrato dedicato, che attiva l'uscita, che leggi con un'altro arduino, che pilota un secondo braccio robotico, che ...

........ aspetta, fammi riflettere ........

... no, forse e' meglio il sistema originale ...

:stuck_out_tongue: :stuck_out_tongue: :stuck_out_tongue: :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: :grin: :grin: :grin:

leo72:
Perché non usi il comparatore analogico interno? Essendo a tutti gli effetti un op-amp, i suoi ingressi hanno un'elevata impedenza per cui il consumo è ridotto. Inoltre rispetto all'ADC è più veloce e molto più preciso.
Tempo fa ho scritto un'apposita lib, la trovi sul mio sito (anche sul forum ho messo un pò di documentazione).

Mi permetto di "sporcare" il thread di @giga perchè mi sembra risolto.
Scusate, ricordo che sono un programmatore e non un elettronico, perciò ho un pò di difficoltà a capire come utilizzare questo comparatore dal punto di vista dei collegamenti.
Scusa @Leo, ho anche letto il thread sul comparatore e sul tuo sito, ma nel caso pratico che suggerisci, come colleghi l'hw?
Sono un pò confuso. AIN+ (no INTERNAL perchè solo 1,1V) collegato a un riferimento che nel caso dovrebbe essere 1,3V potrebbe essere AIN0 ovvero sulla Uno il digitale 6, mentre AIN- il positivo della pila (sulla Uno digitale 7).
Cosa collegheresti a AIN0 come riferimento ? Mi sembra @giga voglia verificare se la pila da 1,5v va sotto i 1,3V
Grazie se potete illuminarmi. :blush:

Puoi usare un semplice partitore di tensione con 2 R con tolleranza dell'1%, ad esempio (lo so, costicchiano un pò di più ma sono più precise) e portare la tensione della batteria ad un valore tale che la tensione a piena carica sia di poco superiore a 1,1V. Quando scende sotto la soglia di 1,1V, l'opamp interno solleva un interrupt intercettato dal codice che poi farà qualcosa (esempio: mettere in sleep il chip oppure chissà cos'altro).