(noch in Arbeit)
|
Einleitung
Die Zahl der im Haushalt mit Batterien oder Akkus betriebenen
Geräte
wächst ständig. Neben den Akkus (meist AA- oder AAA-Typ)
besitzt
man dann noch eine Billigladegerät. Eine exakte Ladung oder
Akkupflege
ist damit genausowenig möglich, wie die Analyse der wirklich in
einem
gealterten Akku noch verfügbaren Kapazität.
Richtige Ladegeräte, die das alles können kosten ein
Vermögen.
Also hat man schon wieder einen Grund, den Lötkolben in die Hand
zu
nehmen.
Anforderungen
Ein Akkuladegerät sollte in der Lage sein,
Ziel ist es nicht, nun alle Akkus einzeln mit diesem Gerät zu laden, sondern einzelnen Zellen zu pflegen und auszumessen.
Schaltung
Das Herz der Schaltung ist ein PIC16F876, der an PortB mit einem
LCD-Display
(2x16) und einer Tastatur versehen ist. PortA dient der
Spannungsmessung
und PortC der Steuerung der Ladeelektronik. Mit dem PWM-Ausgang RC2
soll
später
die Stärke des Lade/Entladestroms eingestellt werden.
Ein Netzteil liefert +5V / 300 mA (Vdd - Vss) für den PIC und
die
Ladeelektronik. Der dort eingesetzte 7805 erzeugt je nach
Eingangsspannung
erhebliche Hitze, die mit einem Kühlkörper abgeführt
werden
muss. Eine präzise Stabilisierung von Vdd auf +5V ist nötig,
da diese Spannung auch als Referenz für den ADC des PIC benutzt
wird.
Der PIC steuert eine Konstantstromquelle, die den Akku mit
ca. 250
mA lädt, und eine Entladeschaltung, die den Akku mit 750 mA
entlädt.
Die Akku-Zellenspannung wird mit dem ADC des PIC überwacht.
Die Lade-Konstantstromquelle ist mit einem LM317 aufgebaut. Er regelt den Strom so, dass über dem Reihenwiderstand an seinem Ausgang (5 Ohm) eine Spannung von genau 1,25 V abfällt. Damit ergibt sich ein Konstantstrom von 250 mA. (R1 besteht aus 2 parallelgeschalteten 10 Ohm-Widerständen von jeweils 1/4 W). Die Entladeschaltung ist ein 1 Ohm Widerstand, der mit einem Transistor parallel zum Akku geschaltet wird. Der Entladestrom durch diesen Widerstand führt zu einem Spannungsabfall, der T3 öffnet, wodurch die Gatespannung von T2 verringert wird. Das stabilisiert den Entladestrom so, dass über R3 0,75 V abfallen (bei 20°C). Dies ist bei 750 mA der Fall. (R3 besteht aus zwei parallelgeschalteten 2 Ohm-Widerständen von jeweils 1/2 W). Da der Arbeitspunkt von T3 temperaturabhängig ist, gilt selbiges auch für den Entladestrom. (-50°C: 1,2A ; +150°C: 450mA). Für Indoor-Anwendungen ist die Stabilisierung aber ausreichend. |
Erwärmung:
Der LM317 und R1 setzen maximal je 0,5 W in Hitze um, R3 und T2 maximal
1W.Aufgrund der langen Betriebsdauer sollten der LM317 und T2 je einen
Mini-Kühlkörper bekommen.
Der 7805 erzeugt je nach Eingangsspannung mindestens 1 W (bei 8V),
bei 12V Eingangsspannung sogar über 2 W Wärme, die mit einem
Kühlkörper abgeführt werden muss. Als
Kühlkörper
sollte ein Typ mit einem TK von höchstens 15 K/W eingesetzt
werden.
Aufbau:
Beide Dioden müssen aufgrund der geringen Betriebsspannung von
nur 5V Shottky-Dioden sein.
R4 und der Emitter von T3 sind auf kürzestem Wege direkt mit den
beiden Enden von R3 zu verbinden.
Theorie der Akkupflege
NiCd- und NiMH-Akkus zeigen beim Laden einen typischen
Spannungsverlauf.
Die Zellenspannung steigt während des Ladens stetig an. Gegen Ende
der Ladung steigt sie steiler, um dann (wenn der Akku voll ist) wieder
abzufallen. Dieser Spannungsberg kann zum Erkennen des Ladeendes
benutzt
werden.
Nebenstehende Grafik wurde aus den Spannungswerten erstellt,
die der
Akkulader beim Laden einer 700mAh-NiCd-Zelle an RA1 gemessen hat
(Spannungs-'Lupe').
Dabei wurden 1566 Ladezyklen durchgeführt. Der ADC-Ausgangswert schwankt dabei zwischen 230 (=1,207V) und 521 (=1,507V). Interessant ist am Spannungs-Diagramm weniger die absolute Spannung (grün in V), sondern deren Änderung (pink ohne Einheit). Die kann nämlich zur Erkennung des Ladeendes benutzt werden. Da die Spannungsänderung über einen sehr langen Zeitraum stattfindet, ist der Abfall der Spannung am Ladeende nicht leicht zu erkennen. In meinem Ladeprogramm sorgt ein in Software realisiertes digitales Filter für die Erkennung des Ladeschlusspunktes. Ein 16-stufiges FIR-Filter ist in der Praxis für eine sichere Abschaltung bei NC-Zellen schon ausreichend. Ich benutze ein 64-stufiges FIR-Filter. |
Beide Diagramme zeigen (in pink) die Ausgangsfunktion des
64-stufigen
Summe-Differenz-FIR-Filters (pink), bei dem der Ladeendpunkt sehr gut
zu
erkennen ist. Die Zelle ist voll, wenn das FIR-Ausgangssignal 0
erreicht.
NiMH-Zellen (nebenstehende Grafik mit Ladestrom C/2) weisen beim Laden keinen deutlichen Spannungs-Peak auf. Die Zellenspannung steigt linear bis zur Ladeschlussspannung, und bleibt dann etwa konstant. Dementsprechend ist der FIR-Ausgang während des Ladens nahezu konstant, und fällt dann auf Null, wenn die Zelle voll ist. Dadurch wird auch hier das Ladeende vom FIR-Filter erkannt. Merkwürdig ist der kleine 'Höcker' im NiMH-FIR-Diagramm nach ca. 2,1 Stunden Ladezeit. Den konnte ich bei jeder NMH-Ladung erkennen, es ist also kein 'Schweinereieffekt'. Die Frage ist nur, ob man das Laden schon vor diesem Höcker einstellen sollte? |
Summen-Differenz-FIR-Filter
Wie schon erwähnt kann nur der Spannungsverlauf (grüne Linie
in den Diagrammen) direkt vom PIC gemessen werden. Die pinkfarbene
'Spannungsänderungs'-Linie
errechnet der PIC.
Dazu werden immer die letzten 64 Messwerte (also aus den letzten
7,2 Minuten) ausgewertet. Die 32 neuesten Messwerte werden
zusammenaddiert,
und von ihnen die 32 älteren Messwerte subtrahiert. Ist das
Ergebnis
der Berechnungen negativ, dann wird das Laden abgebrochen.
Naturgemäß ist das Prozessing immer 3,6 Minuten der
Realität
hinterher. Eine um 3 Minuten verzögerte Abschaltung ist aber
vertretbar.
Ein 64stufiges FIR-Filter lässt sich mit einem 16F876 problemlos
mit 16-Bit Routinen realisieren. Dazu benötigt man allerdings 128
Register zum Speichern der letzten 64 Messwerte. Ich benutze dafür
die meisten Register der Bänke 1 und 3.
Programme des Akkuladegeräts
Folgende Hauptprogramme stehen nach dem Einschalten zur Wahl:
Entladeprogramm:
Um dem viel diskutierten Memmoryeffekt aus dem Wege zu gehen, sollten
insbesondere NiCd-Akkus vor dem Laden entladen werden. Dazu werden sie
mit einem Strom belastet, der ihrer Nennkapazität C entspricht
(also
ein 750 mAh-Akku mit 750 mA). Die Entladung wird beendet, wenn die
Zellenspannung
1,0 V erreicht hat. Während der Spannungsmessung, wird die
Entladung
kurzfristig unterbrochen.
Anzeige der Zellenspannung
Da als Referenzspannung für den ADC 2,56V und Vss benutzt werden,
beträgt die Auflösung des ADC 2,56V/1024 V = 2,5 mV. Um den
Messwert
in eine Spannung in Millivolt umzurechnen, muss er nur mit 2,5
multipliziert
werden. Um den Aufwand zu vermindern gehe ich anders vor
U[mV] = Uadc + Uadc + Uadc/2
Diese Berechnung lässt sich einfach auf Bitverschiebebefehle, zwei 16-Bit-Additionen zurückführen. Auf richtige Multiplikationen und Divisionen lässt sich verzichten.
Berechnung der geladenen/entladenen Energie
Der Energiezähler ist ein 24 Bit-Softwarezähler dessen obere
16 Bit der Energie in mAh entsprechen. Das LSB hat also eine Wertigkeit
von 1/256 mAh = 0,0004 mAh.
Das Ladeprogramm arbeitet in einem 6,75 Sekunden-Rhythmus. Bei 33,3
mA-Ladestrom
(100 mAh-Akku) wird dem Akku in 6,75 s genau 0,0625 mAh (also 1/16 mAh)
zugeführt.
Ein 24-Bit-Zahler wird nach jedem Ladezyklus um einem Wert erhöht,
der dem Ladestrom in 100/48 mA entspricht (für 200 mA also um 96,
für 1 A folglich um 480). Die oberen 16 Bit des Zählers
enthalten
dann die geladene Energie in mAh. Werte bis 60 Ah sind auf diese Weise
zählbar. Das ist für 7000 mAh-Akkus ausreichend :-)
Das Entladeprogramm arbeitet in einem 2,25 Sekunden-Rhythmus. Bei
100
mA-Entladestrom wird dem Akku in 2,25 s genau 0,0625 mAh (also 1/16
mAh)
zugeführt.
Ein 24-Bit-Zahler wird nach jedem Entladezyklus um einem Wert
erhöht,
der dem Entladestrom in 300/48 mA entspricht (für 600 mA also um
96,
für 3 A folglich um 480). Die oberen 16 Bit des Zählers
enthalten
dann die geladene Energie in mAh. Werte bis 60 Ah sind auf diese Weise
zählbar. Das ist für 7000 mAh-Akkus ausreichend.
Die Energieberechnung erfordert das Einstellen der Ladeströme in 2,0833 mA-Stufen (Entladestrom ist immer 3 mal so groß). Der Akkutyp kann also in Stufen von 6,25 mAh ausgewählt werden. Die Software erlaubt nur ein Einstellen in der sinnvollen Stufen von 50 mAh. (wird von der Hardware aber noch nicht unterstützt)
Mögliche Verbesserungen
Anstelle der Tastatur sollte ein Rotary-Encoder
verwendet werden.
Die Schaltung besitzt noch keinen Verpolschutz. Ein falsch herum eingesetzter Akku kann den Eingang RA0 des PIC und den OPV beschädigen. Das Problem lässt sich durch den Einsatz von 2 Schutzdioden beheben.
Die Spannungsmessung könnte einfacher (ohne OPV) und genauer (0,4mV Auflösung bei 10 Bit im Bereich von 1,2 bis 1,6 V) erfolgen, wenn man anstelle eines 16F876 einen 16F628 verwendet, und mit dem Komparator einen 10-Bit-Delta-Sigma-ADC aufbaut. Der kleinere RAM des 16F628 würde aber eine Verkleinerung des FIR-Filters auf 48-Stufen nötig machen. Das sollte aber reichen. Außerdem kostet der 16F628 nur die Hälfte des Preises des 16F876.
Bei Erhöhung der Speisespannung für den LM317 könnten
auch mehrzellige Akkus geladen werden. Allerdings ist dann mit einer
Erhöhung
des Entladestroms bis auf maximal 900 mA zu rechnen, da die
Entladestromstabilisierung
einfach aufgebaut ist. Dadurch würde die entladene Energiemenge um
20% zu klein angegeben werden.
Die geringe Temperaturstabilität der Entladeschaltung verlangt
nach dem Einsatz den Geräts bei Temperaturen von
15°C..30°C.
Ansonsten wird die Anzeige der entnommenen Energie ungenau.
Der Ersatz von Lade- und Entladeschaltung durch einstellbare Stromquellen (50 mA..2,3 A) bzw. Stromsenken (150 mA ..7 A), ermöglicht es Akkus von 150 mAh bis zu 7000 mAh zu laden. und zu pflegen. Dazu ist ein stärkeres Netzteil und eine erweiterte Software nötig. Die Einstellung des Lade/Entladestroms kann über Pin RC2 des PIC mit einem PWM-Signal vorgenommen werden. Das Tastverhältnis des PWM-Signals ist proportional der Zellenkapazität. 100% entsprechen 7000 mAh.