Ich habe ein Gerät gebaut, das mit einer 18650er Zelle betrieben wird. Im Gerät arbeitet ein Arduino Nano.
Jetzt würde ich gerne mit dem Arduino die Spannung des Versorgungsakkus messen und die wiederum an einem LCD Display ausgeben. Die Spannungsmessung samt Ausgabe habe ich bereits realisiet. Das Problem daran: solange das Gerät eingeschaltet ist, ist alles gut. Wenn ich das Gerät ausschalte, dann bleibt der Arduino über die Messleitung (A7) direkt mit der Batterie verbunden und bleibt eingeschaltet.
Gibt es einen Weg, die Messleitung einzuschalten wenn der Arduio Strom hat und diese wieder zu kappen, wenn der Arudino stromlos ist?
Ein mechanischer Schalter soll es nicht sein...ich dachte dabei an einen Transistor....würde das funktionieren?
Im Prinzip sollte das auch mit 1-2 Transistoren gehen. Am einfachsten jedenfalls mit einem Relais, das mit der Versorgungsspannung des Arduino eingeschaltet wird. Ein Transistor-Schaltplan fällt mir gerade nicht ein.
ich gehe davon aus, daß Du mit dem AnalogPin direkt an Deine 18650-Zelle zum messen gehst, sonst würde die Versorgung über die Schutzdioden des 328P nicht funktionieren. Das ist übrigens sehr ungesund für diesen!
Ich persönlich würde über einen sehr hochohmigen Spannungsteiler messen, und die 1.1V Referenz benutzen, dann fließt nur sehr wenig Strom. Als Beispiel: 330kOhm - 100kOhm, 100nF über den 100kOhm Widerstand und Du misst 1 V bei 4.3V Akkuspannung.
Es fließen also immer weniger als 10µA ... (~88mA / Jahr). Es kommt also auf den Zweck Deiner Schaltung an.
Oder eine Schaltung mit MOSFET die diesen im stromlosen Zustand sperrt, um den Messeingang oder Spannungsteiler wegzuschalten.
Bipolare Transistoren haben eine Vce, die verfälscht das Ergebnis.
Das Problem daran: solange das Gerät eingeschaltet ist, ist alles gut. Wenn ich das Gerät ausschalte, dann bleibt der Arduino über die Messleitung (A7) direkt mit der Batterie verbunden und bleibt eingeschaltet.
Wieso mißt Du die Spannung nicht nach dem Schalter?
Ansonsten ein Relais.
Grüße Uwe
wenn du Dein Gerät mit einem Schalter einschaltest und den mit einer Seite direkt an dem Aku angeschlossen ist, kannst Du den Anaogeingang doch auch hinter dem Schalter anschliessen.
uwefed:
Ein so hochohmiger Spannungsteiler bringt Probleme mit der Spannungsmessung.
Grüße Uwe
Die ich persönlich so aber nicht bestätigen kann. Ich messe eine 18650er Zelle genau so in einer Schaltung seit 3 Monaten.
Den Kondensator sollte man allerdings nicht vergessen!
Ohne Not messe ich Spannungen sonst über einem 10kOhm Widerstand, also mit 100µA Querstrom.
Zur Erklärung noch: das Gerät wird mit einem Powerboost 1000c von Adafruit betrieben....und der wird wiederum entweder von einem Netzteil oder eben von der 18650er Zelle gespeist.
Das heißt folgende Situation: Akku - Powerboost - Arduino.
Der Ein/Ausschalter schaltet den Powerboost und macht diesen und damit den Rest stromlos oder eben nicht. Ich hab mit dem Powerboost alle möglichen Lötkombis versucht, aber es gelang mir nicht ein vernünftiges Ergebnis zu erreichen.
Denn hängt man die Messleitung auf den Ein/Ausschalter vom Powerboost, dann ist im ausgeschalteten Zustand zwar alles aus, schaltet man aber ein, dann misst man eine gewandelte Spannung vom Powerboost, aber nicht den Akku.
Die Messleitung von A7 hängt direkt am Akku.
Ich habe herumprobiert und mal versucht eine Sperrdiode in die Messleitung zu hängen. Damit erreichte ich zumidest, dass der Arduino nicht mit Strom versorgt wird, sobald man den Powerboost abdreht...
Gibt es Minirelais? Ich suche mal.
Perfekt wäre eine Minilösung mit einem eletronischen Bauteil, das eben eine Spannungsmessung zulässt sobalt der Arduino Strom vom Powerboost erhält und sobald man den Powerboost ausschaltet muss alles finster sein.
Eventuell ein High-Side-Switch. Ist nichts anderes als ein N-FET und ein P-FET in einem Gehäuse und eventuell ein paar andere Teile. Die Teile die niedrige Ströme schalten sind aber eigentlich alle SMD Teile. Erst die Dinger für höhere Ströme kommen im "Through Hole" Gehäuse, also zum Durchstecken und Einlöten. Such mal mit einer Suchmaschine Deiner Wahl nach High-Side-Switch.
Die Smart Teile brauchst Du wohl nicht. Da ist mehr drin.
Wenn der Steuereingang auf Masse liegt ist der Ausgang offen. Aber nicht den Steuereingang einfach auf die Betriebsspannung des Arduino legen. Es könnte sonst vorkommen das er nicht abgeschaltet wird, da der Arduino dann durch den High-Side-Switch und die Schutzdioden im Arduino versorgt wird. Außer Du klemmst noch einen hochohmigen Spannungteiler davor, dann wäre auch das Problem weg oder Du steuerst den High-Side-Switch über einen Ausgang des Arduinos.
Beim Analog-Switch muss aber die Betriebsspannung vorhanden sein bevor am Eingang Spannung anliegt, sonst entweicht der magische Rauch oder wenn er Schutzdioden hat versorgt er sich darüber selbst.
Ich kenne keinen der ohne Betriebsspannung sein darf mit Signal am Eingang. Überall wird definiert das das Eingangssignal kleiner sein muß als die Versorgungsspannung.
Oder Mini-Relais z.B. G6K-2P und davon dann die 5V Version.
wenn es nicht auf die 10µA / 88 mA per anno ankommt würde ich die oben von mir schon vorgeschlagene Lösung mit dem 330k - 100k Widerstand plus Kondensator nehmen.
Falls doch, dann funktioniert die Schaltung wie hier oben rechts: https://dl6gl.de/schalten-mit-transistoren
Nur daß die Last entfällt und statt dessen an den AnalogPin geht, und Ue nicht über einen Pin geschaltet werden muss, sondern an die 5V des Arduino gelegt wird.
Wird der Arduino nicht mehr mit 5V versorgt, wird der N-MOS nichtleitend, und damit wird das Gate des P-MOS über den Widerstand von der Ub+ Seite, hier also dem Akku auf Source-Potential gezogen und schließt ebenfalls.
Bei den MOSFETS darauf achten, daß diese auch mit diesen Spannungen arbeiten, also kleiner Vgsth, und es müssen keine Brocken im TO-220 Gehäuse sein.
Danke - ich kenne mich mit einem high side switch zwar überhaupt nicht aus, aber anschauen werde ich mir das!
Ich werde es vorher doch nochmal über den Schalter der Powerboost probieren...mir ist da noch was eingefallen....man muss jedenfalls berücksichtigen, dass einerseits die Akkuschutzschaltung, andererseits irgndwas im Powerboost einen Spannungsabfall von ca 0,05V verursacht....aber der ist nicht riesig und ich denke, dass man bei allem (außer Relais) einen Spannungsabfall irgendwo herbekommt....
Mit MOSFETs bekommt man fast keinen Spannungsabfall, Innenwiderstände von wenigen Milliohm sind da durchaus üblich. Schaltet man noch einen Spannungsteiler vor den Analogeingang, liegen dessen Widerstände um Größenordnungen höher.
ich hab jetzt nochmal die für mich einfachste Lösung versucht:
am Powerboost gibt es einen enable pin....schaltet man den auf GND, dann ist alles aus, schaltet man den enable pin auf Vs, dann läuft der Powerboost und damit auch der Arduino. Beim Arduino ist das + Kabel vom Powerboost auf Vin angeschlossen.
Ich habe jetzt meine Messleitung (A7), einfach auf den enable pin des Powerboost gelötet.
Ergebnis: Läuft mein Gerät auf Akku, dann funktioniert meine Messung über den enable pin nicht bzw. er misst da irgenend einen Blödsinn, schließe ich aber zum Akku (der ja den Powerboost versorgt) eine 5V Quelle direkt am Arduino (usb) dazu an, dann funktioniert meine Messung.