LiPo-Balancer mit Arduino

Hallo !

Ich möchte gerne einen LiPo-Balancer für 4S mithilfe eines Arduino aufbauen.

Ja ich weiß, sowas kann man für kleines Geld fertig kaufen, ich möchte es aber aus Spaß an der Sache selber machen !!

Allerdings stehe ich am Anfang meiner Überlegungen und bin dabei schon auf ein paar Probleme gestoßen:
1. Messung der einzelnen Zellenspannungen
2. Entladen der Einzelzellen ohne gemeinsamen Ground (siehe Skizze Balanceranschluss)

Für 1. habe ich mir gedacht, die Spannungsmessung so aufzubauen, das ich von der internen Referenzspannung von 1.1V ausgehe und mir entsprechende Spannungsteiler aufbaue und abgleiche. Somit würde Zelle 1 direkt gemessen (4.2V => 1V am Spannungsteiler), Zelle 2 = Zellen (1+2) - Zelle 1 (8.4V => 1V am Spannungsteiler), Zelle 3 = Zellen (1+2+3) - Zelle (1+2) (12.6V => 1V am Spannungsteiler) usw. Dabei frage ich mich, ab die Genauigkeit (wird ja mit fortlaufender Zellenzahl immer schlechter) ausreicht.

Zu 2. ging mein Gedanke in die Richtung eine (vorhanden) Relaiskarte zu verwenden, um die Lasten (Drahtwiderstand) auf die einzelnen Zellen zu schalten. Gibt's da nicht irgendwelche elektronische Bauteile, die keine gemeinsame Masse benötigen, die man verwenden kann ?

Leider weiß ich überhaupt nicht, in welcher Weise kommerzielle Produkte da arbeiten und evtl. bin ich mit meinen Gedanken total auf dem Holzweg. Möglich auch, das die Genauigkeit meines Entwurfes überhaupt nicht ausreicht für den Zweck. Da ich sowohl im Bereich Elektronik als auch Microkontroller "Anfänger" bin, würde ich mich über Eure Meinung dazu interessieren (Google liefert auch schon was dazu, aber aus Sicht eines Modellbauers sieht's dann doch vielleicht anders aus).
Der "Balancer" ist nur der 1. Ansatz dazu, später kann man ja das ausbauen.


Gruß
Stefan :cool:
 

Anhänge

  • Lipo4S.jpg
    Lipo4S.jpg
    59,1 KB · Aufrufe: 432
Hallo Stefan,


Hab sowas auch schon mal gemacht.
Ja, Spannungsteiler so wie du beschrieben hast.
Das "Zellenentladen" hab ich über einen Leistungs Widerstand und einem Mosfet an jeder Zelle gemacht.

Sicherheits Überwachung der Zellenspannung, bei überschreiten von 4,25V auf einer Zelle wird der Gesamte Ladestrom unterbrochen (Bei sehr schlechten zellen, wenn balancer Strom nicht reicht).
Ausgabe der Daten über USB und Farb LCD

Warum sollte es nicht sinnvoll sein? da die meisten zu kaufenden Balancer nur 100mA - 400mA bringen...



Ich gugg mal nach ob ich das Eagle Layout noch finde



Gruß Ralf
 
Hallo Ralf!
Prima, wenn Du da noch was hast. Vor allem die Entlade-Steuerung mit den MOSFET ist für mich interessant ( wie gesagt, bin Anfänger).
Konkret möchte ich einen "Storage-Entlader" bauen, um die Lipo-Packs auf Lagerspannung zu bringen.

Gruß
Stefan
 

Otti

User
Hallo Stefan,

ich fürchte, mit der internen Referenzspannung des Arduinos und dazu durch N geteilte Zellenspannung wird das viel zu ungenau. Bin jetzt kein Arduino-Kenner, aber Du solltest die Genauigkeit der Referenz zumindest mal im Atmel-Datenblatt abklären!
Habe selbst schon mal einen kleinen Balancer bzw. Limiter gebaut und da einen etwas anderen Weg beschritten: hier bekommt jede Zelle ihren eigenen Microcontroller und auch eine eigene Referenzspannung. Damit gibt's keine Spannungsteiler und keine GND-Probleme...
Habs auch schon mal hier vorgestellt: (http://www.rc-network.de/forum/showthread.php/498522-Limiter-für-Li-Zelle-fest-am-Akku-angelötet)
(Für das Ding hat aber offenbar keiner interessiert)

Grüße,

Otti

Edit, Update: Vergiss die interne 1.1V Referenz! Ist wohl wirklich sehr ungenau. Hab grad diese Seite dazu gefunden: http://www.skillbank.co.uk/arduino/measure.htm
 

rkopka

User
ich fürchte, mit der internen Referenzspannung des Arduinos und dazu durch N geteilte Zellenspannung wird das viel zu ungenau. Bin jetzt kein Arduino-Kenner, aber Du solltest die Genauigkeit der Referenz zumindest mal im Atmel-Datenblatt abklären!
0,25% laut der Seite bei 10bit/1024
Bei 12,6V (3s) wäre das 0,0126V kleinste Einheit. Genauigkeit 0,25% -> 0,0315V nicht berauschend aber noch ausreichend.

Mit Analogschaltern könnte man (wahrscheinlich) genauer werden. Ähnlich wie bei einem Sample&Hold schaltet man mit 2 Schaltern pro Zelle die Zellenspannung auf einen Kondensator, danach wird die Kondensatorspannung auf den ADC gegeben. Damit hätte man für jede Zelle die gleiche Auflösung von 4,2mV bei 10,5mV Genauigkeit(?) ohne die Fehler vom S&H. Mit Oversampling sollte man auch noch ein wenig herausholen können (Nichtlinearität ?).

ATTiny25 (ein kleiner Bruder der Arduino Prozessoren) z.B. hat differentielle Eingänge. d.h. man kann die Spannung zwischen zwei Eingängen messen. Damit wären zumindest 3 Zellen möglich.

Habe selbst schon mal einen kleinen Balancer bzw. Limiter gebaut und da einen etwas anderen Weg beschritten: hier bekommt jede Zelle ihren eigenen Microcontroller und auch eine eigene Referenzspannung. Damit gibt's keine Spannungsteiler und keine GND-Probleme...
Allerdings ist es hier schwerer, die Spannung auch abzulesen, bzw. einen Ladestrom bei zu hoher Zellenspannung abzuschalten. Und das ist nötig, wenn der Balancer nicht den maximalen Ladestrom ableiten kann. Nebenbei ist der Aufwand größer. Mit den Standard Arduinos tut man sich da etwas schwerer. Das ist eher was für kleine Prozessoren (wie beim genannten Projekt).

Edit, Update: Vergiss die interne 1.1V Referenz! Ist wohl wirklich sehr ungenau. Hab grad diese Seite dazu gefunden: http://www.skillbank.co.uk/arduino/measure.htm
Die Referenz ist wohl absolut nicht sehr präzise (laut der Seite). Die Frage ist, ob die Spannung (auch über die Temperatur) wenigstens konstant bleibt. Dann könnte man ja mit einmaliger Kalibrierung arbeiten. Andererseits sind hier ja weder Kosten noch Preis oder Pins kritisch, also kann man auch eine externe Referenz benutzen.

RK
 
LiPo-Balancer mit Arduino

Danke für Eure Anmerkungen und Hinweise.
Ich denke, ich werde auf alle Fälle eine externe Referenzspannung aufbauen. Die Idee, das mit eigenständigen Controllern zu machen, hatte ich auch schon (hab den Beitrag von Otti zwar auch gelesen, ihn aber irgendwie gar nicht mit meinem Problem in Verbindung gebracht...). Auch diesen Weg werde ich weiter verfolgen, erst mal ein Prototyp für 1 Zelle, dann sehen wir weiter.
Da jetzt aber das Wetter wieder besser wird, steht erst mal Fliegen im Vordergrund. Wenn ich dann mal was brauchbares habe, stelle ich das gerne hier vor !

Gruß:cool:
Stefan
 

Otti

User
Hallo Stefan,

ich bastele auch gerade an einem neuen Balancer-Modul für höhere Ströme und ohne "Verbrat"-Widerstände (wieder 1 Controller pro Modul), da verwende ich als Refeferenzspannung den ZXRE250. Der Chip ist klein (SOT23-3) und die B-Variante ist auf 0.5% genau bei kleinem Strom (lt. Datenblatt soll er schon ab 40µA arbeiten).

Gruß,

Otti
 
Ansicht hell / dunkel umschalten
Oben Unten