Grobe Schätzung des Batteriestands (9 V Alkaline) mit analoger Ablesung

Ich baue eine tragbare Desktop-Wetterstation mit einem Arduino Nano-Mikrocontroller. Das System wird von einer 9-V-Alkali-Verbraucherbatterie mit Strom versorgt, wobei die Spannung durch den integrierten Regler des Nano geregelt wird.

Ich möchte einen ungefähren Batteriestand auf dem LCD-Bildschirm angezeigt bekommen.

Der anfängliche Ansatz, den ich gewählt habe, besteht darin, einen Spannungsteiler zu verwenden, der den Eingang von 9 V auf 3,3 V skaliert. Dieses Signal wird dann in den Analogue IN (A6)des Nano eingegeben ( AREFist aufgrund anderer Anforderungen an analoge Eingabegeräte auf 3,3 V eingestellt).

Daraus ging ich davon aus, dass die Bereiche der Spannungsmesswerte den Batterieanzeigen VOLL, HALB und NIEDRIG entsprechen könnten.

Ich verstehe, dass sich die Batterieklemmenspannung mit der Stromaufnahme ändert. Ich erwarte eine Spitzenstromaufnahme von 350 mA bei einer typischen Aufnahme von etwa 100-150 mA.

Was ist ein gutes Schema/Algorithmus/Grenzwerte, die ich verwenden sollte, um den Batteriestand ungefähr zu messen?

BEARBEITEN: -Meine geschätzte Leistungsaufnahme war völlig ungenau. Nach dem Messen der Stromaufnahme des Endgeräts betrug der Verbrauch ungefähr 30-40 mA kontinuierlich, mit seltenen Spitzen von 50 mA.

- Am Ende habe ich mit AnalogRead() einen einfachen Batterieprozentsatz verwendet. Ich habe eine neue Batterie kalibriert, um ~ 90% anzuzeigen, indem ich einen Fudge-Faktor hinzugefügt habe. Als grobe Schätzung war es ziemlich erfolgreich.

Sie haben größere Probleme - erstens ist das gesamte Schema der Verwendung eines Linearreglers in einem batteriebetriebenen Gerät verschwenderisch. Aber auch ohne eine mehrstufige Aktivierungsschaltung entlädt der Spannungsteiler, den Sie zum Lesen des Batteriestands benötigen, selbst die Batterie, selbst wenn Ihre MCU bei einem Mikroampere-Strom schläft.
Ein 9-V-Alkali-Akku besteht in Wirklichkeit aus 6 in Reihe geschalteten 1,5-V-Alkalizellen. Sie können sich beispielsweise auf 1 V pro Zelle entladen. Aber Sie möchten keine 350 mA aus einer 9-V-Alkaline-Zelle ziehen. Nicht einmal 100 mA. Diese Batterien können nicht sehr lange so viel Strom liefern.
Wenn Sie einen Linearregler verwenden, um die 9 V bei 50 mA auf 3,3 V zu bringen, muss er fast 285 mW als Wärme abführen, während Ihre Schaltung 165 mW zieht.
Bei 20 mA hält diese Batterie keine Woche.
9V werden auch super laut, wenn es kalt wird.

Antworten (1)

Erwarten Sie 9 V als frische Batterie und etwa 6-7 V als leere Batterie (ich denke, Sie brauchen 5 V in Ihrem Gerät, oder?)

Im Falle eines guten Akkus werden Sie bei Dauerlast keine wirklich unterschiedlichen Messwerte erhalten. Natürlich kann die Batteriespannung um sagen wir 0,1 V abfallen, aber das ist wirklich etwas, das Sie ignorieren können.

Möglicherweise möchten Sie die Entladekurve Ihrer Batterie berücksichtigen, um die Genauigkeit der Leistungsschätzung zu verbessern: http://www.powerstream.com/9V-Alkaline-tests.htm Dies könnte durch ein einfaches Array erfolgen, das die gemessene Spannung in umwandelt erwarteter % der verbleibenden Leistung.

Ich schlage vor, dass Sie etwas Histerese codieren, da Sie sonst sehen, dass Ihr Status zwischen "voll" und "halb" hin und her springt, wenn die Batterie fast zur Hälfte entladen ist.

Ich stimme den anderen Kommentaren zu, dass eine 9-V-Batterie nur einen Vorteil hat: Bequemlichkeit. Es ist wirklich nicht die beste Stromquelle für Ihre Schaltung, Sie können Ihre Sachen mit 3xD-Zellen (4,5 V, die direkt an die 5-V-Schiene angeschlossen sind und den LDO umgehen) etwa 40-50-mal länger betreiben als mit einer 9-V-Batterie.