Anda di halaman 1dari 2

ct.0217.100-101.qxp 22.12.

16 14:08 Seite 100

Projekt | Entladeschutz-Schaltung

bereitzustellen, wrde man jedoch acht


Stck davon bentigen, nur um zwei bis
vier Stunden Beleuchtung zu haben. Das
ginge sehr ins Geld.

Aufladbar

Abgeschaltet
Entladeschutz-Schaltung
mit Arduino

Sollen eigene Elektronik-Projekte


mit Akku betrieben werden, muss
man diesen vor zerstrerischer
Tiefentladung schtzen. Ein
Mikrocontroller wie auf dem
Arduino erledigt das nebenbei,
wenn man wei wie.

verpackt. Nur die Stromversorgung bereitete etwas Kopfzerbrechen. Schlielich


bentigt der 5 Meter lange RGB-LEDStreifen etwa ein Ampere je Farbe. Insgesamt sind es also 3 Ampere bei 12 Volt.
Eine beachtliche Leistung, die mit Akkuoder Batterie-Power nicht so leicht zu bewerkstelligen ist.

Von Tim Gerber

Volle Power

etzten Sommer war ich mit dem Paddelklub zum traditionellen Feuerwerk
auf dem Steinhuder Meer unterwegs. Zu
diesem Anlass musste natrlich auch das
Kajak effektvoll beleuchtet werden. Was
lag nher, als wasserdicht vergossene
RGB-LED-Streifen aus der Schublade zu
holen und am Boot zu befestigen? Ein Arduino mit RGB-Shield von Velleman
(siehe ct25/14, S.172) zur Ansteuerung
war im Handumdrehen programmiert
und in einer Margarinedose wasserdicht

100

Damit die LEDs eine Stunde mit voller


Power leuchten knnen, bentigt man
folglich eine Batterie mit 3 Amperestunden. Durch die Flacker- und Blinkeffekte
sinkt die tatschliche Leistungsaufnahme
in der Praxis zwar betrchtlich, aber mit
gut der Hlfte kann man schon noch rechnen. Handelsbliche Batterien kommen
fr derartige Lasten also kaum in Betracht. Einzig klassische Monozellen
(LR20) weisen Kapazitten von bis zu 6
Ah auf, kosten aber um die 2 Euro pro
Stck. Um eine Spannung von 12 V damit

Fr die Kajak-Beleuchtung kommt deshalb wie fr viele hnliche Anwendungen


etwa zur Beleuchtung beim Camping und
dergleichen ein kleiner Blei-Akku in Betracht. Die kosten grob geschtzt etwa 5
Euro je Amperestunde und halten einige
tausend Ladezyklen. Dank Bleigel-Fllung sind sie auch nicht mehr auslaufgefhrdet wie frhere Autobatterien mit
flssiger Surefllung. Damit sie mglichst lange funktionieren, sollte man sie
nicht tiefentladen. Komplexe elektronische Gerte wie etwa Smartphones schalten sich automatisch ab, wenn ihre Akkus
an ihre Betriebsgrenzen kommen. Einfache LEDs etwa und andere Verbraucher
tun das nicht. Um den Akku am Leben zu
erhalten, ist es deshalb notwendig, seine
Ladung zu berwachen und bei Erreichen
der Kapazittsgrenze die Verbraucher abzuschalten.
Der Entladevorgang eines Akkus
lsst sich anhand seiner unter Last gelieferten Spannung recht gut berwachen.
Da sich die zu beachtende Grenzspannung, ab der eine weitere Entladung verhindert werden muss, nur wenig unterhalb der Nennspannung des Akkus bewegt, ist eine genaue Spannungsmessung
wichtig. Die beherrscht ein Mikrocontroller, wie er auf den Arduino-Boards verbaut ist, ohne Weiteres. Wie man mithilfe
des integrierten Analog/Digital-Wandlers
elektrische Gren messen kann, haben
wir in Ausgabe 22/16 auf Seite 166 nher
erlutert. Direkt an dem Analog-Port drfen maximal 5 V anliegen. Zwei Widerstnde teilen deshalb die Akku-Spannung
im Verhltnis eins zu zwei. Im Leerlauf
kann die Akkuspannung maximal 13,8 V
betragen, zum berschreiten der Messspannung mssten es mehr als 15 V sein.
Um den Strom durch die Messung
mglichst niedrig zu halten, sollte der Widerstand hoch sein, beispielsweise mit 1
respektive 2 Megaohm. Einfache Widerstnde gengen, auf die Toleranz kommt
es nicht an. Um die Messung am Arduino
trotzdem mglichst genau zu machen,
misst man die verwendeten Widerstnde
mit einem Multimeter aus und rechnet
ct 2017, Heft 2

ct.0217.100-101.qxp 22.12.16 14:08 Seite 101

Entladeschutz-Schaltung | Projekt

spter mit den gemessenen Werten an


Stelle der Nennwerte weiter. Die kleine
Messschaltung mit den beiden Widerstnden passt auf ein centgroes Stck
Lochrasterplatine und kann mit einer
kleinen Stiftleiste direkt auf den Arduino
oder das RGB-Shield aufgesteckt werden.
Mit einer LED-Kette mit 2 A Stromaufnahme drfte ein vollgeladener Akku
also nach etwa 3,5 Stunden so weit leer
sein, dass er zum Schutz vor Tiefentladung abgeschaltet werden muss. Im Programm wird die Spannung einfach durch
Aufruf von int u = analogRead(A1); ermittelt. Man erhlt dann einen Wert zwischen
0 und 1023 (10 Bit). Da keine Spannungsangabe bentigt wird, erbrigt sich die
Umrechnung in einen Messwert auf dem
Arduino. Um den Akku zu schtzen, gengt es zu wissen, welchen Digital-Wert
die Messung nicht unterschreiten darf, um
eine Tiefentladung des Akkus wirksam zu
verhindern. Setzt man den Wert zu niedrig
an, kann der Akku Schaden nehmen, was
man ja gerade verhindern will. Setzt man
ihn zu hoch an, verschenkt man ungenutzte Kapazitt.
Welchen Wert man nimmt, lsst sich
recht gut dem Datenblatt (siehe Link) entnehmen, das es zu jedem Akku-Typen
gibt. Ein Diagramm zeigt die typischen
Entladekurven fr verschiedene Lasten.
Sie fallen je nach Gre des Stromes frher oder spter ziemlich steil ab und dieser Punkt liegt hier in etwa um die 11 Volt.

Die Schaltung mit den zwei Messwiderstnden passt auf ein kleines
Stck Lochrasterplatine und kann mit
Stiftleisten direkt auf den Arduino
respektive das RGB-Shield gesteckt
werden.
ct 2017, Heft 2

Das entspricht ziemlich genau einem Digitalwert von 750. Der tatschliche Grenzwert liegt deutlich darunter, je nach Last
zwischen 6,5 und 8,5 Volt.

Nebenbeschftigung
Das Beispielprogramm ermittelt die
Akku-Spannung in der Hauptprogrammschleife (loop()), sonst hat es nicht viel zu
tun, da die LEDs einfach so lange leuchten, bis die Spannung des Akkus unter
einen festgelegten Wert sinkt. Die Messung dauert nur wenige Prozessor-Takte.
In der Praxis gengt es vllig, den Akku
im Abstand von mehreren Minuten zu
kontrollieren. Wenn das Programm in der
Hauptsache gleichzeitig Lichteffekte steuern oder andere Aufgaben erledigen soll,
wird man die berwachung ber den
Timer steuern und nicht bei jedem Durchlauf der Programmschleife. Man muss
dabei allerdings darauf achten, dass zum
Zeitpunkt der Messung eine Last anliegt,
die ungefhr dem Durchschnitt entspricht. Die Lichteffekte fr Party oder
Paddelboot sollten also fr den Messmoment zum Beispiel auf einem Farbkanal
volle Helligkeit (255) und einem zweiten
auf halbe Leistung (127) geschaltet werden, der dritte Kanal bleibt aus. Vor der
Messung muss man noch etwa 200 Millisekunden warten, damit sich die zu messende Spannung stabilisieren kann.
Wird der festgelegte Wert im Beispiel 750 fr knapp 11 Volt unterschritten, schaltet das Programm ber den Digitalpin 3 den MOSFET auf dem RGBShield und damit den kompletten LEDStreifen ab. Durch das Abschalten der
Hauptlast steigt die Spannung am Akku
nun wieder deutlich an. Das Programm
(siehe ct-Link am Ende des Artikels)
schaltet nach dem einmaligen Unterschreiten der Grenzspannung deshalb
nicht etwa wieder ein: Aus bleibt aus.
Der Arduino und das RGB-Shield
bleiben jedoch aktiv und beanspruchen
weiterhin etwa 50 Milliampere. Auch deshalb ist es wichtig, die Hauptlast etwas
frher abzuschalten, damit die Elektronik
anschlieend den Akku nicht doch noch
vllig entldt und zerstrt. Mit dem gewhlten Wert von knapp 11 V verbleibt gengend Reserve bis zur tatschlichen
Grenzspannung von zirka 8,5 V. Und
durch die um mehrere Zehnerpotenzen
reduzierte Last ndert sich die Entlade-

Material
Teil

Preis

Arduino Uno

ca. 25 e

RGB-Shield

ca. 14 e

Akku

je nach Kapazitt z.B. Bleiakku 2040 e

LED-Streifen

je nach Lnge und Art 530 e

Kleinmaterial

wenige Euro

charakteristik zudem derart, dass der Arduino noch wochenlang angeschlossen


bleiben kann, ohne den Akku zu beschdigen. Mit ein paar zustzlichen Programmzeilen lsst er sich zudem in den
Sleep-Modus versetzen, bei dem nahezu
alle Funktionen abgeschaltet sind. Der
Sleepmodus spart etwa 20 Prozent, sodass die Stromaufnahme dann nur noch
etwa 40 Milliampere betrgt.

Ausblick
Wenn man grere Lasten an Akkus betreibt, ist eine Entladeschutzschaltung uerst sinnvoll. Mit einem Arduino stellt sie
auch keine groe Herausforderung dar
und wenn der ohnehin dabei sein muss,
weil er wie im Beispiel Lasten schalten
oder Lichteffekte steuern soll, dann lohnt
sich der geringe Schaltungs- und Programmieraufwand auf alle Flle. Soll das
Ganze irgendwo fest eingebaut werden,
wird man nicht unbedingt ein komplettes
Arduino-Board einsetzen, sondern lediglich eine Schaltung mit einem Controller
wie dem ATmega 328P, der auf dem Arduino Uno sitzt. Die einfache Schaltung
mit einer LED-Kette nebst Spannungsberwachung lsst sich aber auch schon
mit einem kleineren und billigeren ATtiny-Controller nach demselben Schema
realisieren. brigens kann ein Controller
auch mehr aus der ermittelten AkkuSpannung machen, zum Beispiel den Ladezustand ber LEDs signalisieren, die
Restkapazitt ermitteln und anzeigen und
dergleichen mehr. Das erfordert aber ein
bisschen mehr Ausprobieren mit der eige(tig@ct.de) c
nen Schaltung.
Literatur
[1] Tim Gerber, Mikromesser, Elektrische Gren
mit dem Arduino erfassen, ct22/16, S.166
[2] Tim Gerber, Eine Kette Buntes, RGB-Lichterketten mit Arduino steuern, ct25/14, S.172

Schaltung und Beispielcode:ct.de/yebu

101