Spannungsmessung und automatische Abschaltung bei leerem Akku

Die Werte der Widerstände sind unkritisch. Der 100 kOhm am PFet zwischen Gate und Source dient dem zuverlässigen sperren des Mosfet, wenn er nicht angesteuert wird. Der 47 kOhm kann unbedenklich werte zwischen 10 kOhm und 100 kOhm haben. Er dient lediglich als Schutz, falls der NFet mal kaputt gehen sollte indem er z.B. einen Kurzschluss zwischen Gate und Source macht, der dann den Akku kurzschließen würde. Der andere 100 kOhm der in der Leitung zum Analogpin des Arduino liegt ist ebenfalls unkritisch. Er schließt lediglich den Stromkreis vom Akku über den PFet nach Ground. Je kleiner der aber ist, um so mehr unnützer Strom wird dem Akku entnommen. Du kannst hier auch unbedenklich Werte ab 10 kOhm nehmen.

1 „Gefällt mir“

Vielen Dank! Dann werde ich Widerstände übernehmen.

Mal ne Frage, wie lötest du bzw ihr die SMD FETs auf eine Lochrasterplatine?

Das musst du ausprobieren, wie er am besten passt. So auf die Platine legen, dass jedes Beinchen einen Lötpunkt berührt.Mit einer Pinzette oder Zahnstocher geht auch andrücken und vorsichtig löten. Ist ein bisschen fummelig, aber es geht.

Wie sieht es denn auf der Software Seite aus? Gibt es da schon Code den man übernehmen kann?

Noch nicht. Aber mit analogread () und dann vergleich mit Vorgabewerten sollte das kein Problem sein. Sind dann z.B. nur noch die Sounddateien für die Warnungen zu erzeugen und wie der Shutdown dann erfolgen soll. Shutdown an sich z.B. beim Standbytimer ist im Code ja schon vorhanden.

Ich habe in der Kategorie Software einen Beitrag mit dem Code erstellt. Der sollte eigentlich hier mit rein.

1 „Gefällt mir“

Hallo @papa
In meinem letzten Post ist ein Link zu dem Code. Falls du noch Interesse hast kannst du den gerne übernehmen. Eventuell musst du noch ein paar kleine Anpassungen machen. Pin und Akkutyp. Die Zusätzlichen SoundFiles musst du noch generieren. Wenn du mir deine e-mailadresse schickst, kann ich sie dir auch schicken. Sind mit google TTS erzeugt.

1 „Gefällt mir“

Hallo Thomas,

ich hab versucht, Deine Schaltung in meine Platine zu übernehmen. Ich schalte den Arduino über einen Pololu switch und verwende ein Wemos 18650 Battery shield.
Ich hab den unteren Mosfet gegen ein BSS123 getauscht. (Ich hab was in SMD gesucht, was bei Reichelt verfügbar war.)

Wenn ich alles anschließe, ist der Arduino und Pololu Switch-Ausgang spannungslos. Beim Einschalten mit dem Pololu funktioniert auch alles, Spannung des Akku liegt an A5 an. Beim Abschalten des Pololu liegen aber dann weiterhin 2,9V am 5V-Eingang des Arduino an und die Akkuspannung am A5.

Hab ich den falschen Mosfet verwendet? Kannst du mir hier weiterhelfen?

Danke!

Hallo @sirko
Versuche mal noch einen Widerstand an Q2 zwischen Gate und Source (1 und 2) zu schalten. Den Wert musst du ausprobieren. Fange mal mit 100 kOhm an. wenn das nicht ausreicht den wert langsam verringern bis minimal 22kOhm. Vielleicht kannst du da erst mal einen kleinen einstellregler nehmen und damit den besten Wert ermitteln. Gib dann mal feedback ob das was geholfen hat.
Eine weitere Möglichkeit wäre noch, in die Leitung zum Pin A5 einen zusätzlichen widerstand zu schalten. Der wert sollte hier zwischen 22 und 47 kOhm sein.
Ich vermute, dass beim Ausschaltennoch eine Restspannung am Gate von Q2 anliegt, die wiederum zum verzögerten abschalten der Akkuspannung von A5 sorgt. Diese Spannung kann dafür sorgen, dass über die internen Schutzdioden des A5 im Nano der Nano nicht komplett abschaltet und zu unvorhergesehenen Effekten führt. Der Widerstand in der Leitung verringert diesen Einfluss.
Gruß Thomas

Verstehe den o.a. Post so, dass beim Pololu gar keine zusätzliche Schaltung notwendig ist?!
Der Pololu hat doch zwei VOUT Pins. Der eine ginge dann doch an den StepUp und von da an den Arduino und der zweite VOUT eben an den A5. Und wenn der Pololu aus ist, sind dann nicht beide VOUT ohne Spannung?

Hallo Thomas,

danke für die schnelle Hilfe.
Mit einem Widerstand von 56K zwischen Gate und Source am Q2 funktioniert die Abschaltung, ab 57K trat das Problem weiterhin auf. Hab den Widerstand per Copy&Paste in meinen Schaltplan als R Neu gezeichnet.
Variante 2 probier ich noch aus, da ich das deutlich einfacher mit der Platine realisieren kann.

VG

Ich würde zur Sicherheit den widerstand noch etwas weiter verringern. 51 kOhm oder sogar 47 kOhm.

Ich hab mal den gesamten Schaltplan angehängt. Ich hab ein Wemos Battery Shield V3, dass 5V an meine Platine liefert. Ich greife mit J6 (Battery Plus) direkt den +Pol des LiIon-Akku ab.

@thomas: ich hab 47K genommen, da ich nichts anderes da hab und nicht stückeln wollte.

Ja wenn der Pololuswitch vor dem stepupwandler liegt, sollte das funktionieren.

Hi Thomas,

auch die zweite Variante funktioniert: Mit 22K direkt am A5 ist das Problem weg. Also der Effekt kommt anscheinend wirklich vom Pin A5.
Ist dann die zweite Variante die elektronisch sinnvollere?

Die erste ist eigentlich die bessere. Bei Variante 2 wird durch den Widerstand nur der Strom begrenzt, der den Nano zum Unsinn machen bringt. Es gibt noch eine dritte Möglichkeit. Eine Diode (möglichst shottky) in die +5V Leitung (Betriebsspannung) direkt am Nano. Das verhindert ebenfalls einen Rückstrom von Pin A5 her. Verringert allerdings die Betriebsspannung für den Nano etwas.

Ok, vergiss meine Wortmeldung! :innocent:
Für Deinen Fall dann definitiv nicht relevant.

Hallo Thomas,
so meinst Du vermutlich nicht?


Das hatte ich vor meiner Frage hier mal (mit 1N4001 und vermutlich BAT42) erfolglos ausprobiert.

Ich hab bei der Platine die Versorgung über Vin und 5V am Arduino vorgesehen. Die Diode direkt an den 5V Pin vom Arduino würde dann bei Verwendung von Vin die 5V nicht mehr zum DFPlayer lassen. Bleibt dann bei dem 47K wie eingezeichnet.

Vielen Dank für Deine Hilfe, 3 Weihnachtsgeschenke sind gesichert.

Nein, so war das nicht gemeint. Die Diode soll in die Leitung vom Ausgang Stepupmodul zum 5V Anschluss Nano direkt am Nano eingefügt werden.
Die Leitung zum Q2 Gate muss dann vor der Diode direkt am Ausgang des Stepupmoduls abgenommen werden. Die Beste Lösung ist aber der Zusätzliche Widerstand so wie du das schon gemacht hast.
Aber noch eine andere Frage. Wieso willst du den Nano über Vin speisen. Hier musst du eine Spannung größer 5V einspeisen, weil dann der interne Spannungsregler auf der NanoPlatine genutzt wird. Der braucht dann aber eine Spannung ab ca 7V, weil er sonst nicht richtig arbeitet. Wenn du sowieso mit 5V speist musst du zur Speisung direkt an den 5V Anschluss des Nano gehen, so wie in der Grundschaltung des Tonuino auch vorgegeben.

Hallo Thomas,
die Diode an 5V funktioniert auch. Allerdings tritt dann wieder ein anderes Problem auf:

Wenn der Akku leer ist und über das Wemos Battery shield geladen wird, reicht die Spannung und/oder Strom nicht aus und der Arduino schaltet sich nach kurzer Zeit ab und an, sodass nur noch ein Knattern zu hören ist.
Das Problem hatte ich auch, als ich beim Laden mit leerem Akku am Prototypen die 5V vom Battery shield an Vin des Arduinos angeschlossen hatte. Liegt wohl an der Spannungsversorgung, Kondensatoren haben das Problem nicht behoben.

Also setz ich jetzt den 47K Widerstand an Q2 ein.

Um noch auf Deine Frage zu antworten: Ich hab die Platine mit Jumpern möglichst variabel halten wollen (ich stell sie hier auch noch ins Forum). Man kann 5V oder Vin nutzen, Einschalten geht über Playbutton oder dedizierten Taster, der wiederum kann Ein-/Ausschalten oder nur Einschalten. Ausschalt-Timer zum Pololu ist auch angebunden.

1 „Gefällt mir“