Low Voltage Erkennung

Hallo,

wir haben einen TonUINO mit Wemos D1 Mini Battery Shield und dem seisfeld TonUINO Clone als Software. Die Batterie liefert ja max. 4.2V, das Battery Shield wandelt dies in 5V und die Low Voltage Erkennung liest mittels Vcc Library die Volt (im Arduino?).

Die Konstante shutdownWarnVoltage = 4.8 dient als Schwellwert, unter dem die LED schnell zu blinken anfängt.

Nun ist es so, dass die LED schnell blinkt, wenn die Batterie auch nur ein wenig genutzt wurde.

Meine Frage ist also, wie die intern gemessenen Volt mit der tatsächlichen Spannung der Batterie (also quasi vor der Transformation durch den Battery Shield) zusammenhängt und wie ich die Software am besten modifiziere, um eine möglichst lange Laufzeit zu haben, bevor zum Laden aufgefordert wird.

Tausend Dank,
Harry Hase

Gar nicht. Die Spannungsmessung funktioniert nur mit richtigen Batterien. Eine Powerbank, Battery Shield oder ähnliches funktioniert da nicht, weil die immer 5V ausgeben - egal wie hoch die Akkuspannung ist.

So richtig zum warnen ist das auch nie geeignet gewesen. Eher als Schutz vor Tiefentladung bei normalen Akkus…

Oh. :frowning_face:

Hast Du einen Tipp, wie ich die Spannung dann am sinnvollsten überwache, um per LED zum Laden aufzufordern?

Man kann beim Battery Shield die Spannung direkt von der Batterie auf einem Pin ausleiten und zum Arduino als Input geben. Aber ich habe gelesen, dass der Arduino es nicht mag, wenn er ausgeschaltet ist und dauerhaft Spannung an einem Pin anliegt…

Das lese ich hier jetzt nicht zum ersten Mal. Aber warum sollte es dafür keine Lösung geben? Auch wenn der Arduino über die 5V von einem Step-Up versorgt wird, müsste ich doch auch die direkt am Akku anliegende Spannung messen können!

Was genau spricht dagegen?

Hi

Wenn eine Spannung ab ca. 2,5 V an einem Pin anliegt , schaltet sich der Arduino ein und entwickelt ein Eigenleben , auch wenn die Versorgungsspannung abgeschaltet ist . Um das zu nutzen muss man den Pin z.Bsp. über einen Mosfet schalten , der von der Versorgungsspannung abhängig eingeschaltet wird . Das ist leider so .

OK, aber dafür haben wir doch den pololu!

Akku --> Pololu --> Analog Pin + StepUp

Ist die Spannung zu niedrig, kann der Arduino den Polulu abschalten und auch die Spannungsmessung ist aus. Oder hab ich einen Denkfehler?

Die Aussage bezieht sich auf die in meiner Firmware verwendeten Library zur Messung der internen Spannung - ohne extra Hardware. Diese fällt halt bei Batterien ab und kann daher erkannt werden. Steckst du eine Powerbank an hast du immer 5V. Das man das auch anders machen kann steht ausser Frage. Aber nicht mit der Lösung in meiner Firmware.

1 „Gefällt mir“

da hilft auch der Polulu nicht , ohne zusätzliche Hardware ist das nicht zu machen . Google mal und du wirst sehen , dass dieses Problem oft diskutiert wird .
Außerdem hat Stephan natürlich recht , sein Sketch muss dann geändert werden .

Hallo und erstmal danke für die vielen Antworten.

Also, einen Polulu haben wir nicht verbaut. Wir haben einen on/off Kippschalter zwischen Shield und Arduino, der die 5V unterbricht.

Da ich sowieso noch die Leitung zw. Batterie und Arduino Pin legen müsste, könnte ich durchaus auch noch Hardware verbasteln.

Leider verstehe ich nicht viel von Elektronik. Könntet ihr vielleicht etwas genauer sgen, wie ihr das bauen würdet? Ich nehme mal an, dass man mit dem Mosfet eine Verbindung schafft, die die Batterie-Überwachungs-Leitung schaltet, sobald der on/off Schalter aufgeht, oder? Aber so wirklich klar ist mir das nicht. Oder geht das auch mit irgendwelchen Dioden oder was anderem?

Vielen Dank,
Harry Hase