Consiglio batteria

Buongiorno,

devo alimentare questa scheda con una batteria che mi garantisca almeno 6 mesi di autonomia in lowpower. Il sistema si sveglia ogni 10 minuti per rilevare il segnale di un sensore digitale (consumo 12mA) e per inviarlo via bluetooth, poi torna a dormire.

Ho visitato tantissimi siti ma, non conoscendo i produttori, non riesco a scegliere a chi affidarmi.

Potete consigliarmi un sito e/o il nome di un produttore?

Grazie.

Ciao, quanto tempo sta "accesa" la scheda prima di tornare in sleep? quanto assorbimento hai a scheda sveglia? 12mA solo per il sensore immagino

magari bastano 2 o 3 AA alkaline

Oltre al calcolo dei mAh necessari in sei mesi fai anche attenzione all'autoscarica della batteria stessa!
Una 12V da camion ha capacità da vendere, ma se la lasci al freddo/umido per 6 mesi non è contenta neanche se scollegata da tutto...

@doppiozero grazie....la scheda tecnica indica 70uA in modalità sleep, rimane sveglia per 500 millisecondi...12 mA è solo il sensore... Il produttore indica che devono essere alimentate con batteria al litio....

@daysleeper grazie, è uno dei problemi che sto cercando di affrontare...

Serve sapere l'assorbimento totale di tutto il sistema prima di fare i conti sulla dimensione delle batterie. Hai modo di misurarlo?

Comunque, per darti una idea, batterie come queste le ho trovate in una radiosonda (piuttosto capienti e adatte a temperature estreme)

Le Cyclone da 2V della Gates sono le celle piu robuste che conosco, a parte quelle per uso aerospaziale ... ma costano ... e poi non sono litio, sono piombo ... devi usare per forza delle litio ? ... se si, perche', hai un circuito gia predisposto ?

grazie a tutti.
La scheda che devo alimentare supporta le batterie a litio, ma non so se supporta anche altre batterie...la scheda è questa: FireBeetle Board-328P with BLE4.1 - DFR0492 | DFRobot Electronics
Non ho modo di misurare il consumo del circuito, ho solo un multimetro ma non credo che sia così preciso....ho ricontrollato la scheda tecnica: in linea di massima la scheda dorme sempre consumando 25uA, e si sveglia ogni 10 minuti per 500 millisecondi per leggere il sensore, consumando 70 uA + 12 mA del sensore. Il circuito è tutto qui.....

  • Se hai un multimetro(quale?) facilmente c'è anche l'amperometro. Alimenta la scheda con 3 batterie AA alkaline e guarda quanto è il consumo totale a scheda accesa, durante la trasmissione dei dati. Fatto questo si guarda che taglia di batterie mettere.
  • 70uA è un consumo in sleep, non esiste che la scheda accesa possa consumare così poco.
  • la scheda ha un connettore a cui puoi attaccare delle batterie lipo (mi sembra) ma non so se ha il circuito per tenerle in tampone, in ogni caso se non hai applicazioni particolari(esempio grandi assorbimenti di corrente) l'importante è che arrivi la tensione corretta alla scheda. Che sia una batteria litio, alkalina ecc a fornirla non importa

Oltre a quello che dice @doppiozero, dicci anche di che sensore si tratta, perchè un consumo di "soli" 12mA, in sei mesi diventano 50A

@Brunello davo per scontato che il sensore venisse spento, ma a sto punto ho il dubbio :stuck_out_tongue_closed_eyes:

ho un multimetro da pochi euro comprato per misure di massima (allego una foto).

Non saprei come collegare delle pile stilo alla scheda (ha solo un connettore JST e non ho adattatori per le stilo)…avete dei suggerimento anche per questo? scusate, immagino siano domande banali ma sono in difficoltà…

Le specifiche della scheda sono queste:

Support low power consumption: 25uA (POWER DOWN); 70uA (enabled interruption)
Support maximum discharge current: 600mA (LDO-3.3V OUTPUT)
Support maximum charge current: 400Ma

Il sensore è questo: Gravity: Photoelectric Arduino Water Liquid Level Sensor - DFRobot

Quando la scheda è in sleep, il sensore viene spento…

ho un multimetro da pochi euro comprato per misure di massima (allego una foto).

va benissimo, settalo su 200mA

Non saprei come collegare delle pile stilo alla scheda (ha solo un connettore JST e non ho adattatori per le stilo).

se il jst è compatibile con il connettore della scheda collegalo alle batterie stilo. Quelle puoi metterele assieme con qualche pezzo di filo e del nastro adesivo, si tratta solo di fare una prova. Se il jst non è compatibile lega direttamente un pezzo di filo a GND e VCC. Facendo attenzione a non toccare altri pin ovviamente.

Il sensore è questo: Gravity: Photoelectric Arduino Water Liquid Level Sensor - DFRobot

Quando la scheda è in sleep, il sensore viene spento....

ok, bene che il sensore venga spento. Accertati che il sensore funzioni anche a 4.5V (3 stilo). Le applicazioni low power a 5V sono una rottura, non si riescono a ottenere direttamente dalle batterie (forse con 4 NiMH ci vai vicino)

Mi correggo, meglio collegare solo batterie da 3.7V o meno al connettore, per sicurezza.

VCC I/O Voltage: 3.7V~5.5V
Lithium Battery Voltage: 3.7V

Quindi se provi con 3 stilo (4.5V) usa VCC

@doppiozero grazie, ci posso provare, però potresti indicarmi anche dove devo posizionare i puntali del multimetro? in qualche pin particolare? chiedo scusa per queste domande...

I sensori funzionano sia a 3.3V che a 5V, ma la scheda funziona solo a 3.3V ...provo con 2 stilo?

Ho trovato una scatola portastilo con due fili (nero e rosso), collego il nero a GND e il rosso a VCC ?

però potresti indicarmi anche dove devo posizionare i puntali del multimetro? in qualche pin particolare?

QUA e QUA :wink:

Io utilizzerei 3 AA, così sei nelle specifiche delle schede.

@doppiozero grazie.

Ho trovato una batteria al litio da 500 mAh, e ho collegato in serie il multimetro nel cavo 3V3 del sensore. La misura rimane fissa su 6 mA, sia con la scheda accesa che spenta....c'è chiaramente un errore ma non riesco a identificarlo

Come lo alimenti quel sensore? Dalla scheda? Come lo spegni e lo accendi? Se posti uno schema, anche su un foglio fatto a mano, ci capiamo meglio. :slight_smile:

Si, alimento il sensore dalla scheda, e lo spengo e accendo in questo modo (che a questo punto credo sia sbagliato):

void loop() {
  pinMode(5,INPUT);                // pin sensore
  var = digitalRead(5);           // leggi il sensore
  delay(100);
  Serial.write(var);            // invia la lettura del sensore via BLE
  Serial.flush();               // attendi l'invio del dato
  pinMode(5,OUTPUT);
  digitalWrite(5,LOW);
  lowpower();                  // dormi
  delay(500);
}
 pinMode(5,OUTPUT);
  digitalWrite(5,LOW);

In quel modo metti a massa il segnale del sensore, non spegni nulla. Togli quelle righe o rischi di fare danni. Spegnere il sensore vuol dire in questo caso togliere la sua alimentazione.

Posta uno schema

quelle righe le avevo inserite per sicurezza… l’idea è che il sensore si spenga quando la scheda va in sleep (avr/sleep + avr/power).

Allego lo schema ma non c’è niente oltre la scheda, la batteria e il sensore…