Kleine Projekte: Akku-Tester für LiPo-Einzelzellen


Menübild

Letzte Bearbeitung: 02.01.2015

SymbolDownloads und Links
Schaltplan für den Akku-Tester
Stückliste für den Akku-Tester mit Empfehlungen zur Bauteilbestellung
Software für den Akku-Tester mit komplettem Quelltext in C vom 01.11.2014akkutester-attiny13a-v100.zip
SymbolInhaltsverzeichnis
BeschreibungAllgemeine Informationen über den Akku-Tester
SchaltungDie Schaltung des Akku-Testers
HardwareBilder und Hinweise zum Aufbau des Akku-Testers
SoftwareBeschreibung der Software des Akku-Testers
InbetriebnahmeInbetriebnahme des Akku-Testers
SymbolBeschreibung

Auf dem Modellflugplatz ist es immer mal erforderlich, Akkus auf ihren Ladezustand zu überprüfen. Für große Modelle, die mit 2 oder mehr in Reihe geschalteten LiPo-Zellen (2S-8S) betrieben werden, gibt es solche Akkutester für wenig Geld fertig zu kaufen. Viele Kleinmodelle, wie z.B. der Blade mSR X oder Blade Nano CP X fliegen mit einer einzigen LiPo-Zelle und für diese gibt es leider keine einfache Prüfmöglichkeit. Dieses kleine Modul wurde speziell zum Testen von LiPo-Einzelzellen entwickelt und zeigt durch Leuchten oder Blinken von 2 LEDs insgesamt 3 Ladezustände an. Das ist auf dem Flugplatz vollkommen ausreichend, um einen vollen von einem leeren Akku zu unterscheiden. Die folgende Tabelle zeigt die möglichen Zustände an:

Akkuspannung über 4,0Vgrüne LED leuchtet
Akkuspannung im Bereich 3,8V - 4,0Vrote LED leuchtet
Akkuspannung unter 3,8Vrote LED blinkt
SymbolSchaltung

Schaltung

Diese Schaltung ist sehr übersichtlich und besteht im Kern aus dem Mikrocontroller ATtiny13A. Über die Anschlüsse + Akku und - Akku (K1) wird dieser mit Strom versorgt, gleichzeitig verringert der aus R1 und R2 bestehende Spannungsteiler die Akku-Spannung auf einen für den Mikrocontroller erfassbaren Wert unter 1,1V. Dieser Wert wird am Anschluss PB3 alle 200ms gemessen und das Ergebnis über die beiden Anschlüsse PB0 und PB1 ausgegeben. Hier sind die LEDs D1 (grün) und D2 (rot) angeschlossen und da immer nur eine LED aktiv ist, genügt hier R3 als gemeinsamer Vorwiderstand. Bei den LEDs wurden ultrahelle Exemplare verwendet, damit man das Ergebnis auch im Freien gut erkennen kann. Das letzte Bauteil C1 ist der obligatorische Stützkondensator, der kurzzeitige Spannungseinbrüche verhindert und deshalb möglichst nah an IC1 platziert werden sollte.

Bei dieser Schaltung wurde der ISP-Anschluss nur angedeutet. Im fertigen Tester habe ich ihn weggelassen, da er das ansonsten handliche Gerät unnötig vergrößern würde. Außerdem ist nicht zu erwarten, dass es für den Tester ein Update geben wird :-)
Um die Software in den Mikrocontroller zu schreiben und die Fuse-Bits zu setzen gibt es hier 2 Möglichkeiten:

  1. ISP-Steckverbinder zur Inbetriebnahme provisorisch anlöten, Controller programmieren und wieder ablöten
  2. Mikrocontroller in einem Programmiergerät oder in einer anderen Schaltung programmieren

Alle für den Tester notwendigen Bauteile sind in dieser Stückliste zu finden.

SymbolHardware

Akku-Tester Bild 1 Dieses Bild zeigt den fertig aufgebauten Akku-Tester. Alle Teile finden auf einer winzigen Lochraster-Platine mit einer Größe von 17,5mm x 10mm Platz. Auf der Oberseite der Platine ist der Mikrocontroller IC1, welcher ohne Fassung direkt eingelötet wurde, der Kondensator C1 und die beiden LEDs D1 (unten) und D2 (oben) zu sehen. Über den Steckverbinder auf der linken Seite wird der zu testende Akku angeschlossen. Leider sind die Steckverbinder für den Akku recht schwer einzeln zu bekommen. Hier empfiehlt es sich, bei einem Modellbauhändler ein passendes Akku-Ladekabel zu kaufen und den Akku-Stecker davon zu verwenden.

Akku-Tester Bild 2 Auf der Unterseite der Platine befinden sich nicht nur alle Verbindungen, sondern auch die 3 Widerstände in SMD-Bauform (R1 links, R2 oben und R3 rechts). Das macht die Verdrahtung nicht unbedingt einfacher, aber so wird der Platz optimal ausgenutzt.

Beim Aufbau des Testers sollten zunächst die Bauteile IC1, C1, D1, D2 sowie K1 aufgelötet werden. Anschließend werden die 3 Widerstände direkt auf jeweils 2 Lötaugen wie im Bild gelötet und danach alle Verbindungen hergestellt. Nebeneinander liegende Lötaugen können direkt mit reichlich Zinn verbunden werden, für die längeren Verbindungen eignet sich Kupferlackdraht (0,35mm).

Akku-Tester Bild 3 Nach der Programmierung des Controllers und einem ausgiebigen Funktionstest empfiehlt es sich, die LEDs und den Steckverbinder mit Zweikomponentenkleber zu sichern. Nach dem Aushärten des Klebers sorgt ein passendes Stück Schrumpfschlauch für den Schutz der elektronischen Komponenten.

Das nebenstehende Bild zeigt den fertigen Tester im Einsatz - alles im grünen Bereich.

SymbolSoftware

Die Software des Akku-Testers wurde in C geschrieben und ist ebenso wie die Schaltung sehr übersichtlich. Zunächst werden einige Variablen deklariert, z.B. die Schwellwerte für die Auswertung der Akku-Spannung, außerdem ein Faktor für den Spannungsteiler R1/R2. Diese Werte lassen sich ändern, so dass man den Tester auch für andere Spannungsbereiche nutzen kann, sofern die maximale Betriebsspannung des Mikrocontrollers von 5,5V nicht überschritten wird. Die untere Spannungsgrenze liegt übrigens bei 1,8V - hier greift die Brown-out-Erkennung des Mikrocontrollers und bringt diesen in den Reset-Zustand.

Der Hauptprogrammteil beginnt mit der Initialisierung der I/O-Ports und des Analog-Digital-Konverters (ADC). Letzterer wird so konfiguriert, dass er ständig die Spannung am Eingang PB3 misst und dabei die interne Referenzspannung von 1,1V verwendet. In der folgenden Programmschleife wird zunächst 200ms gewartet, dann das High-Byte des ADC gelesen und daraus der Wert der anliegenden Spannung ermittelt. Anschließend werden beide LEDs ausgeschaltet (High-Pegel an PB0 und PB1), der Spannungswert mit den Schwellwerten verglichen und abhängig davon der Ausgang PB0 oder PB1 auf Low-Pegel gesetzt, um die entsprechende LED einzuschalten. Falls die Spannung niedriger ist als der untere Schwellwert, dann erfolgt eine Invertierung des zuvor gesicherten letzten Status der roten LED. Das führt bei einer Schleifen-Zykluszeit von 200ms zu einem Blinken mit 2,5Hz.

SymbolInbetriebnahme

Die aktuelle Software v1.00 vom 01.11.2014 für den ATtiny13A des Akku-Testers enthält den kommentierten Quelltext in C, das fertige Hex-File, das Make-File und einige andere Dateien. Bei der Programmierung sind unbedingt die Fuse-Bits zu beachten. Diese müssen folgendermaßen gesetzt werden:

Fuse-Bits So sieht die Einstellung im Atmel Studio 6 für den ATtiny13A des Akku-Testers aus. Bei Verwendung anderer Programmiertools sind die folgenden Daten einzugeben:

HIGH = 0xFD
LOW = 0x71

Nach der Programmierung des Flash-Speichers mit der aktuellen Software und dem Setzen der Fuse-Bits sind keine weiteren Einstellungen notwendig. Mit einem voll geladenen und einem leeren Akku kann ein kurzer Funktionstest durchgeführt werden. Die interne Referenzspannungsquelle ist allerdings nicht sehr genau und das kann zu Verschiebungen der Spannungsschwellen um ±0,05V führen. Wer es genau machen möchte, kann die Schwellwerte mit einer regelbaren Spannungsquelle nachprüfen und die Abweichung durch Ändern der folgenden Zeile in der Software korrigieren:
volt = ADCH * 1.1 * vfactor / 256;

Hier kann man den Faktor 1.1 in kleinen Schritten nach oben oder unten korrigieren (z.B. 1.11 oder 1.09) und sich so dem optimalen Wert nähern. Ich habe allerdings mehrere dieser Akku-Tester aufgebaut und grundsätzlich auf eine Korrektur verzichtet. Die Abweichung ist so gering, dass sie in der Praxis vernachlässigt werden kann.