Prozentanzeige für Li-Ion

OP #5674940
Lesenswert?

Ich habe hier eine Formel gefunden die die Spannung an einem Li-Ion Akku 
in Prozent umrechnen will.

Sie stammt aus dem Odroid Go, ein ESP32 basierter Gameboy-Klon.

Ist sowas einigermaßen universell, oder funktioniert das jetzt so nur 
mit genau diesem Akku? Der Akku ist so eine typische "Plastiktasche".

Die Formel ist hier:
https://github.com/hardkernel/ODROID-GO/blob/master/src/utility/battery.cpp

Herauskopiert:
1
#define BATTERY_VMAX 420
2
#define BATTERY_VMIN 330
3

4
int Battery::getPercentage() {
5
  int res = 101 - (101 / pow(1 + pow(1.33 * ((int)(getVoltage() * 100) - BATTERY_VMIN)/(BATTERY_VMAX - BATTERY_VMIN), 4.5), 3));
6

7
  if(res >= 100)
8
    res = 100;
9

10
  return res;
11
}

Ich habe die Formal mal in gnuplot geworfen:
1
  gnuplot> set xrange [3300:4200]
2
  gnuplot> plot 101 - (101 / ((1 + ((1.33 * (x - 3300) / (4200 - 3300)) ** 4.5)) ** 3))
Screenshot ist angehängt.
Angehängte Dateien:
Gast #5674975
Lesenswert?

Es ist etwas besser als linear zwischen Lade- und Entladeschlussspannung 
zu interpolieren.

Da du dir beides in gewissem Rahmen aussuchen kannst und je nach 
Anwendung auch einen Spannungsbfall durch den Innenwiderstand 
berücksichtigen musst, ist es trotzdem nur ein Schätzwert.

Es geht drum dem Benutzer einen sich einigermaßen gleichmäßig 
verändernden Prozentwert zu präsentieren, nicht darum einen präzisen 
Energiegehalt zu berechnen.
#5675012
Lesenswert?

Hallo Günther,

Günther L. schrieb:

> Ist sowas einigermaßen universell, oder funktioniert das jetzt so nur
> mit genau diesem Akku? Der Akku ist so eine typische "Plastiktasche".

die Formel funktioniert nur annähernd bei einem bestimmten Akku und 
einem bestimmten Ladestrom.

Würde der Entladestrom mit in die Formel eingehen, sähe es viel besser 
aus.

Hier kann man schön sehen, wie bei einem Akku der Spannungsverlauf in 
Abhängigkeit des Entladestroms variiert:

http://lygte-info.dk/review/batteries2012/Sony%20US18650VTC6%203000mAh%20%28Green%29%20UK.html

Wenn Du in Deiner Anwendung den Akku früh trennst (bei mir etwa 3,5V 
unter Last) könntest Du den Verlauf für Deinen Entladestrom auch 
linearisieren.
Gast #5675030
Lesenswert?

Stefanus F. schrieb:
> Hängt die Spannung nicht auch deutlich von der Richtung und Höhe
> des
> Stromflusses ab?

Jap, wenn man strikt nach der Kennlinie anzeigt, wird die 
Ladezustandsanzeige beim anstöpseln und entfernen des Ladegeräts und bei 
Lastwechsel springen.

Kann, aber muss einen nicht stören
Gast #5675237
Lesenswert?

Min 3,3V ist schon sehr sicherheitsorientiert!
Ich tippe daher darauf, dass die Formel auf die Anwendung und einen LiPo 
mit sehr geringem Entladestrom angepasst ist.
Highdrain-LiIon mit hohem Strom kann man bedebkenlos bis 2,8 oder 2,5V 
entladen. Bei min 3,3V sind die mitunter noch nicht mal halb leer...
Mit nur geringem Entladestrom kommt unter 3,3V nicht mehr viel. 10% 
vielleicht noch.
OP #5676723
Lesenswert?

Jo, ich hatte jetzt etwas Gelegenheit damit mal herumzuspielen.

Es zeigt halt "was an". Zum abschätzen ob man das Ding jetzt besser mal 
zum Aufladen einstöpseln sollte reicht es. Beim Aufladen springt dann 
halt die Akkuspannung ein Stück nach oben. Muß ich so mit leben.

Den Odroid Go habe ich so fertig gekauft, die Schaltung ist jetzt halt 
so.
Der ADC vom ESP32 ist sowieso eher ein Schätzeisen.

Ansonsten ist das Ding eine schöne Basis wenn man "mal was mit dem ESP32 
machen will".

Der Akku wird übrigens von einem fertigen Ladechip aufgeladen 
(XC6802A42XMR). Der macht das hoffentlich richtig... Die Anzeige über 
den ADC des Prozessors ist eher für schick.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren