Forum: Mikrocontroller und Digitale Elektronik AVR-Projekt zum Laden von Li-Ion-Akkus


von harry (Gast)


Lesenswert?

Kennt jemand ein schönes AVR-Projekt zum Laden von Li-Ion-Akkus mit 
3,7V?

Auf meinem Atmega 32 ist noch eine Menge Platz und da kam mir die Idee, 
dass er die Ladung seines eigenen Akkus eigentlich auch gleich selber 
überwachen könnte.

Ausserdem würde mich mal interessieren, wie das im einzelnen 
funktioniert.

von Stefan F. (Gast)


Lesenswert?

Wo hast du denn bisher nach "Ladeverfahren für Lithium" Batterien 
gesucht?

von Harald W. (wilhelms)


Lesenswert?

harry schrieb:

> Kennt jemand ein schönes AVR-Projekt zum Laden von Li-Ion-Akkus mit
> 3,7V?

Einen AVR als Regler zu nehmen, halte ich für keine gute Idee.
Zur Überwachung kann man den natürlich nehmen. Die eigentliche
Ladung mit typisch 4,2V sollte man am besten einem Spezial-IC
überlassen, wie es sie massenhaft von verschiedenen Herstellern
gibt.

von Norbert S. (norberts)


Lesenswert?

Harald W. schrieb:
> Einen AVR als Regler zu nehmen, halte ich für keine gute Idee.

Hi,

Aha, und warum sollte das keine gute Idee sein?
Das ist doch banal, nur die Ladeschlussspannung sollte man genau 
einhalten (möglichst besser 0,5%).
Pfeift man auf die letzten paar % Kapazität, macht man bei 4,1V Schluss 
und alles wird ganz entspannt.
Die Spannung stellt man per PWM -> RC-Glied -> Transistor im 
Linearbetrieb ein, misst Spannung und Strom und fertig.

Ladevorgang für z.B. eine Zelle mit 500mAh, Ladestrom soll 500mA sein:
Strom messen über 100mOhm Shunt.
Spannung der Zelle messen, Spannung am Shunt berücksichtigen.
PWM wird langsam so geregelt, daß sich erstmal die 200mA einstellen.
Bei erreichen der Ladeschlussspannung abregeln, der Strom sinkt.
Bei 1/10 des ursprünglichen Ladestroms ist Ende - Akku voll.

Gruß,
Norbert

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

Da ich genau das für einen Atmega 128 auch schon mal im Sinn hatte 
möchte ich mich Harrys Frage gern anschließen?
An Harald die Frage wo liegt deiner Meinung nach dabei das Problem?
Und an Norbert: Hast damit schon Erfahrungen?
Namaste

: Bearbeitet durch User
von Norbert S. (norberts)


Lesenswert?

Winfried J. schrieb:
> Und an Norbert: Hast damit schon Erfahrungen?

Hi,

Ja, habe ich. Ich hab mir einen Lader für 10s gebaut weil die Luft da 
dünn wird.
Was willste denn wissen?

Gruß,
Norbert

von Harald W. (wilhelms)


Lesenswert?

Norbert S. schrieb:

>> Einen AVR als Regler zu nehmen, halte ich für keine gute Idee.

> Aha, und warum sollte das keine gute Idee sein?
> Das ist doch banal, nur die Ladeschlussspannung sollte man genau
> einhalten (möglichst besser 0,5%).

Und wenn sich der µC "aufhängt" wird der Li-Akku gnadenlos überladen?

> Pfeift man auf die letzten paar % Kapazität, macht man bei 4,1V Schluss
> und alles wird ganz entspannt.

Naja, bei 4,1V statt 4,2V hat man schon mal typisch 15% weniger
Kapazität.

> Die Spannung stellt man per PWM -> RC-Glied -> Transistor im
> Linearbetrieb ein, misst Spannung und Strom und fertig.

Ich bin mirnicht sicher, das alle Li-Akkus hohe Stromimpulse
so mögen.

von Norbert S. (norberts)


Lesenswert?

Harald W. schrieb:
> Norbert S. schrieb:
>
>>> Einen AVR als Regler zu nehmen, halte ich für keine gute Idee.
>
>> Aha, und warum sollte das keine gute Idee sein?
>> Das ist doch banal, nur die Ladeschlussspannung sollte man genau
>> einhalten (möglichst besser 0,5%).
>
> Und wenn sich der µC "aufhängt" wird der Li-Akku gnadenlos überladen?
>
>> Pfeift man auf die letzten paar % Kapazität, macht man bei 4,1V Schluss
>> und alles wird ganz entspannt.
>
> Naja, bei 4,1V statt 4,2V hat man schon mal typisch 15% weniger
> Kapazität.
>
>> Die Spannung stellt man per PWM -> RC-Glied -> Transistor im
>> Linearbetrieb ein, misst Spannung und Strom und fertig.
>
> Ich bin mirnicht sicher, das alle Li-Akkus hohe Stromimpulse
> so mögen.

Hi,

Man sollte das schon so machen, daß der µC sich nicht aufhängt. Ist ja 
kein Windowsrechner. Oder programmierst Du so, daß Du ohne Watchdog 
niemals klarkommen würdest?

15%? Wo hast Du das her? Was ich gesehen habe ist es weniger aber man 
kann ja auch abgleichen und z.B. auf 4,15V gehen, dann ist das unter 5%. 
Das kriegt man als Bastler auf jeden Fall stabil hin.

Transistor im Linearbetrieb schrieb ich. Also mit PWM auf ein RC-Glied 
und dann mit ausreichend großem Vorwiderstand auf den Transistor und so 
den Strom regeln.

Gruß,
Norbert

von Sudo (Gast)


Lesenswert?

Warum den Aufwand für eine Zelle gibt's z. B. den TP4056 für ein paar 
Cent.
Der macht alles  was man brauch.

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

Hallo Norbert,
das wesentliche konnte ich deinen Beiträgen entnehmen. es deckt sich mit 
meinen Ideen welche ich aber noch nicht getestet hatte und was ein wenig 
aus dem Blickfeld geriet. wichtig war mir zu wissen ob das nur blanke 
tehorie sei oder verifizierte Erfahrung. Der Rest ist für mich "learning 
by doing" das kann mir niemand abnehmen. Ein Demo wäre interssant aber 
nicht nötig.

@ Harald
watchdog wäre eine Möglichkeit. Ein Retriggerbares monoflop eine andere 
um eine safe fail Function zu garantieren. Außerdem haben AVR HW PWM on 
chip und eine Ladespannungsbegrenzug lässt sich auch programmunabhängig 
in HW  aufbauen. Aber der Ladezustand ist leider nur aus dem 
Stromzeitintegral zwischen den Zyklengrenzen zu ermitteln.

@Sudo
Ja mag sein aber villeicht nicht wirklich sinnvoll, wenn man mehr will 
als der Chip bietet.

Safe wäre demnach diskrete Begrenzung der Ladespannung auf  4.15V hinter 
dem Ladefet. Stromermittlung aus Kennlinie des Ladefet und 
Differenzspannung über diesen. diskreter Tiefentladeschutz mit entladung 
über entladefet nach gleichem Prinzip überwacht. So kann der AVR alles 
überwachen und rechtzeitig schreien bevor er sich schlafenlegt um den 
Akku vor Tiefentladung zu schonen.  Auch Mehrzellenladung über 
Vollbrückenmultiplex oder Ballancer wäre realisierbar.

Ich glaub ich mach da mal wieder etwas.  Aber vorher brauche ich ein 
update meine CVAVR Lizens.

von Norbert S. (norberts)


Lesenswert?

Hi,

Würde ich für eine Zelle auch nicht machen, gibt genug Käferchen die das 
ganz simpel erledigen.
Problem 1: Gibt es oft nicht an jeder Ecke für Bastler zu kaufen.
Wobei: 
https://www.pollin.de/shop/dt/Mjc1ODQ2OTk-/Bausaetze_Module/Module/Lademodul_fuer_Lithium_Akkus_DAYPOWER_M_LL_TP4056.html
Problem 2: Hat man nicht zur Hand, mit µC kann man das aus der 
Bastelkiste realisieren.
Problem 3: Oftmals bastlerunfreundliche Gehäuse. Ich hab sowas im Haus, 
MSPirgendwas. SOT23-6 ist mit Lochraster etwas unhandlich und die 
Platinenherstellung ist für Bastler schon grenzwertig.
Den hatte ich übrigens auch auf einem Board mit µC, welcher sich 
schrecklich gelangweilt hat. War aber eben deutlich einfacher als das 
ganze Hühnerfutter und die Software für eine Lösung mit µC.

Und noch eine obligatorische Warnung: Wenn so eine Lademimik mit µC eine 
Herausforderung darstellt, würde ich davon dringend abraten. So ein LiPo 
ist nicht wirklich fehlertolerant und verabschiedet sich mitunter sehr 
spektakulär. Absolut ungeeignet, um beim Basteln aus Fehlern zu lernen.

Edit:
Hoppla, das hat sich überschnitten.
KEIN Ladefet, den kann man nicht vernünftig linear betreiben.
Was bei einer eigenen Lösung auch nicht banal ist, sind Restströme wenn 
der µC wegen LVD abschaltet.

Gruß,
Norbert

: Bearbeitet durch User
von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

Na, na.

Da habe ich schon komplizierteres gebaut, aber ich bin in der Sache 
Lithiumionselbstlader nie über erste Entwürfe hinausgekommen.  Klar für 
eine Bastelei ist ein R-Shunt leichter zu ralisieren als ein FET. Aber 
ich denke das lässt sich beherrschen.

Im Moment interessant ist für mich ein altes Thinkpadakku aus der 
NiCa-Ära aufzumotzen.

Namaste

von neuer PIC Freund (Gast)


Lesenswert?

Die Crux bei LiPoly besteht darin, 4.2 V zu messen. Weydanz/Jossen 
empfehlen, so weit ich mich erinner, eine maximale Toleranz von 25mV.
Wäre mal eine schöne Nebenfrage: Welcher uC hat eigentlich die beste 
Spannungsreferenz? Und wenn die uC-eigene Referenz nur temperaturstabil 
ist, womit kalibrier ich das Ganze?

Aber du hast ja die 3.6 V Zellen. Generell wäre das mein erster Ansatz: 
Lithium-Technik niemals überladen!

von harry (Gast)


Lesenswert?

Danke für die vielen Antworten!

Sudo schrieb:
> Warum den Aufwand für eine Zelle gibt's z. B. den TP4056 für ein paar
> Cent.
> Der macht alles  was man brauch.

Interessant! Vielleicht können wir ja überhaupt hier mal eine kleine 
Liste mit Laderegler-ICs für 3,7V-LiIon-Akkus zusammenstellen.


Ich habe auch schon ein paar Versuche unternommen.
z.B. mit einem Mosfet und eines Spule an 5V.
Der Mosfet wurde über PWM gesteuert.
Das Laden hatte auch prima geklappt, aber die Endpunktbestimmung hatte 
trotz Spannungsreferenz nicht funktioniert, weil durch die Störungen der 
Spule häufig zu früh abgeschaltet wurde (zumindest vermute ich das).
Der ADC dachte dann wohl, es seien bereits 4,2V überschritten.
Sämtliche Entstörmaßnahmen hatten nichts gebracht.
Möglicherweise war das aber auch der falsche Weg, an die Sache 
ranzugehen.
Das mit der Spule und dem Mosfet hatte ich bei einem Laderegler-IC 
abgeschaut.

von W.S. (Gast)


Lesenswert?

Norbert S. schrieb:
> Harald W. schrieb:
>> Einen AVR als Regler zu nehmen, halte ich für keine gute Idee.
>
> Hi,
>
> Aha, und warum sollte das keine gute Idee sein?
> Das ist doch banal, nur die Ladeschlussspannung sollte man genau
> einhalten (möglichst besser 0,5%).

Wenn man es genau nimmt, ist es tatsächlich keine gute Idee.

Warum?
Nun, erstens gibt es dafür fertige Chips, die beim Hersteller 
abgeglichen sind und das Ganze einfach per Hardware erledigen und die 
nicht wirklich teuer sind.
Zweitens muß so ein AVR die Akkuspannung ja messen. Also muß entweder 
der AVR mit höherer Spannung betrieben werden, damit der eingebaute ADC 
die Spannung überhaupt messen kann - oder die Akkuspannung muß 
heruntergeteilt werden zwecks Messung, was Strom kostet - auch im 
abgeschalteten Zustand.
Drittens muß diese Laderei per AVR ja auch erstmal hardwareseitig und 
softwareseitig und abgleichmäßig realisiert werden, kommt also nicht von 
selbst.
Wozu also eine problematischere Lösung anvisieren, wenn es doch eine 
genau passende Lösung gibt?

W.S.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.