Kleine Projekte: Akku-Alarm für Modell-Helikopter


Menübild

Letzte Bearbeitung: 01.04.2008

SymbolDownloads und Links
Schaltplan Akku-Alarm für 2 Zellen
Schaltplan Akku-Alarm für 3 Zellen
Stückliste Akku-Alarm für 2 Zellen
Stückliste Akku-Alarm für 3 Zellen
Software für ATtiny13 mit Quelltext in Assembler vom 08.03.2008akkualarm-v100.zip
Platinenlayout (Sprint-Layout 4.0 und GIF) vom 20.03.2008akkualarm-layout.zip
SymbolInhaltsverzeichnis
BeschreibungAllgemeine Informationen über den Akku-Alarm
SchaltungBeschreibung der 2 Schaltungsvarianten des Akku-Alarms
HardwareBilder und Hinweise zum Aufbau des Akku-Alarms
SoftwareBeschreibung der Software des Akku-Alarms
InbetriebnahmeInbetriebnahme des Akku-Alarms
SonstigesWeitere Informationen
SymbolBeschreibung

Im Flugmodellbau erfreuen sich Lithium Polymer Akkus (kurz LiPo) großer Beliebtheit, allerdings haben sie im Gegensatz zu ihren Kollegen in Mobiltelefonen, Kameras oder tragbaren Medienplayern keine integrierte Schutzschaltung. Das bedeutet für den Anwender, dass er selbst darauf achten muss, dass der empfindliche Akku beim Laden und Entladen keinen Schaden nimmt. Beim Laden braucht man sich meist keine Sorgen zu machen, hier gibt es gute Ladegeräte speziell für den Modellbau oder dem Modell liegt gleich ein passendes Ladegerät bei. Etwas problematischer ist das Entladen - hier möchte man natürlich die Akkukapazität bestmöglich ausnutzen, andererseits darf die Akkuspannung nicht unter das zulässige Maß von 3,0V pro Zelle sinken. Einige Flugmodelle zeigen diesen kritischen Zustand mit einer LED an, allerdings ist diese nicht immer rechtzeitig zu erkennen. Aus diesem Grund habe ich die folgende Schaltung entwickelt. Diese überwacht die Spannung des Akkus im Flugmodell und zeigt durch intensives Blinken von ultrahellen LEDs rechtzeitig die bevorstehende Entladung des Akkus an. So kann noch sicher gelandet werden und der Akku wird vor Tiefenentladung geschützt.

SymbolSchaltung

Schaltung 2 Zellen

Diese Schaltung gibt es in einer Variante für 2 LiPo-Zellen (7,4V) und in einer Variante für 3 Zellen (11,1V). Im Prinzip lässt sich die Schaltung auch an 4 oder mehr LiPo-Zellen anpassen, das wurde aber nicht getestet. Die folgende Beschreibung gilt für beide Schaltungsvarianten, da die grundsätzliche Funktion identisch ist.

Damit die Spannung des Akkus optimal überwacht werden kann, muss die Schaltung mit den Anschlüssen Plus und Minus parallel zum Akku angeschlossen werden. Mittels R3, D1 und C2 wird die Akkuspannung etwas stabilisiert und dem Mikrocontroller IC1 (ATtiny13) als Betriebsspannung zur Verfügung gestellt. Die Spannung schwankt dabei je nach Akkuzustand zwischen 3,2V und 3,6V - das hat aber keinen Einfluss auf die Funktion. Zur Messung der Akkuspannung wird der A/D-Wandler des Controllers verwendet. Da dieser mit einer internen Referenzspannung von 1,1V arbeitet, muss die zu messende Spannung unter diesem Wert liegen. Aus diesem Grund wird mit dem Spannungsteiler R1 und R2 die Akkuspannung entsprechend herabgesetzt und dem Messeingang PB4 zugeführt. C1 hat die Aufgabe, Störungen am Messeingang zu reduzieren.

Die Signalisierung der Unterspannung erfolgt über den Controller-Anschluss PB3. Dieser treibt über R4 und T1 eine ultrahelle LED, wobei der Vorwiderstand R5 für eine blaue oder weiße LED dimensioniert ist. Bei Verwendung anderer Farben (Rot, Gelb oder Grün) muss der Widerstand auf 330Ω vergrößert werden. Die Treiberstufe bietet genug Reserven, so dass auch mehrere LEDs angesteuert werden können. Auch die Verwendung eines Piezo-Summers zur akustischen Signalisierung ist möglich, wobei hier ein aktiver Signalgeber mit integrierter Tonerzeugung erforderlich ist.

Die Software im Controller prüft ständig die Spannung am Eingang PB4 und solange sich diese im "grünen Bereich" befindet, blitzt die LED ca. einmal pro Sekunde kurz auf. Dies dient zum einen als Funktionskontrolle und zum anderen wirkt das Blitzen im Modell wie ein Positionslicht. Sinkt nun die Spannung unter den Schwellwert, dann flackert die LED mit ca. 8Hz. Das ist das Zeichen zum Aufsuchen eines Landeplatzes. Der Schwellwert lässt sich in 4 Stufen verändern und auch der Positionslicht-Effekt lässt sich bei Bedarf abschalten, z.B. wenn ein Piezo-Summer angeschlossen ist. Zum Einstellen des Schwellwertes und des Positionslichtes dienen die mit J1 bis J3 gekennzeichneten Lötbrücken:

FunktionJ1J2J3
Schwellwert 6,3Voffenoffen
Schwellwert 6,4Vgeschlossenoffen
Schwellwert 6,5Voffengeschlossen
Schwellwert 6,6Vgeschlossengeschlossen
Positionslicht einoffen
Positionslicht ausgeschlossen

Die Lötbrücke J4 hat eine besondere Aufgabe: Der Reset-Eingang des Controllers (PB5) wird über einen internen Pull-up Widerstand auf High-Pegel gelegt, allerdings kann dessen Wert bis zu 80kΩ betragen, so dass Störungen zu einem ungewollten Reset des Controllers führen können. J4 löst das Problem durch Anlegen eines festen High-Pegels an den Reset-Eingang.

Der mit gestrichelten Linien eingezeichnete Schaltungsteil ist der ISP-Anschluss. Dieser wird nur einmal zur Programmierung und zum Abgleich der Software benötigt, d.h. er wird bei der Inbetriebnahme des Moduls an die Platine angelötet und nach Abschluss der Programmierung wieder entfernt. Auf dem fertigen Modul ist kein ISP vorgesehen, da die Anschlüsse zur Konfiguration benötigt werden.

Diese Stückliste enthält alle Bauteile für die 2-Zellen-Variante.

Schaltung 3 Zellen

Hier ist die Variante für 3 LiPo-Zellen dargestellt. Die Widerstände R1, R3, R5 und R6 wurden an die höhere Spannung angepasst, der Rest der Schaltung ist identisch zur 2-Zellen-Variante. Bei dieser Schaltung können alle LED-Farben verwendet werden, eine Änderung der Vorwiderstände ist nicht erforderlich. Die Funktion der Lötbrücken J1-J3 entspricht der 2-Zellen-Variante, allerdings gelten hier andere Schwellwerte:

FunktionJ1J2J3
Schwellwert 9,5Voffenoffen
Schwellwert 9,65Vgeschlossenoffen
Schwellwert 9,8Voffengeschlossen
Schwellwert 9,95Vgeschlossengeschlossen
Positionslicht einoffen
Positionslicht ausgeschlossen

Selbstverständlich gibt es auch für die 3-Zellen-Variante eine Stückliste.

SymbolHardware

Für den Akku-Alarm gibt es ein Platinenlayout, welches von Dietmar Heyer entwickelt und bereitgestellt wurde. Dieses Paket enthält das Layout als Sprint-Layout-Datei, außerdem noch das fertige Layout und den Bestückungsplan als GIF-Datei. Von dieser Platine wurde eine kleine Serie gefertigt und einige Exemplare sind noch zu haben. Interessenten sollten sich direkt an Dietmar Heyer wenden, die Mail-Adresse ist ebenfalls im Paket enthalten.

Akku-Alarm Bild 1 Dieses Bild zeigt die fertige Schaltung, welche auf der oben genannten Platine mit den Maßen 27mm x 19mm aufgebaut wurde. Diese Platine ermöglicht den Anschluss von 2 LEDs, welche hier im Winkel von etwa 45° eingelötet wurden, damit das Lichtsignal möglichst in jeder Fluglage sichtbar ist. Bei diesem Projekt wurde keine IC-Fassung verwendet und der Controller direkt eingelötet.

Es gab übrigens auch Pläne für eine SMD-Platine. Diese wurden aber wieder verworfen, weil in den von uns verwendeten Helikopter-Modellen genug Platz vorhanden ist und das Projekt mit bedrahteten Bauelementen einfacher aufzubauen ist.

Akku-Alarm Bild 2 So sieht die Leiterseite der Platine aus. Die scheinbar ins Leere laufende Masseleitung neben den Controller-Anschlüssen 5-7 dient zum einfachen Einlöten der Brücken J1-J3, falls eine spezielle Konfiguration benötigt wird.

Akku-Alarm Bild 3 Auf diesem Bild sieht man einen E-Sky Lama V4, bei dem die Kabinenhaube entfernt wurde. Die Platine mit dem Akku-Alarm wurde hier mit einem Gummiring an der Elektronik-Einheit befestigt. Zum Anschluss der Schaltung habe ich zunächst die Akku-Leitung in der Nähe der Elektronik-Einheit aufgetrennt und je ein Stück Isolierschlauch auf beiden Akku-Leitungen geschoben. Danach wurde die Akku-Leitung gemeinsam mit den Leitungen des Akku-Alarms wieder an die Elektronik-Einheit angelötet und der Isolierschlauch über die Lötstelle geschoben. Hier muss man sehr sorgfältig arbeiten, denn ein Kurzschluss ist extrem ungesund für den Akku. Auch sollte man beachten, dass diese Arbeiten einen Verlust der Garantie zur Folge haben.

SymbolSoftware

Die aktuelle Software v1.00 vom 08.03.2008 für den ATtiny13 enthält den kommentierten Quelltext und das fertige Hex-File. Bei der Programmierung sind unbedingt die Fuse-Bits zu beachten. Diese müssen folgendermaßen gesetzt werden:

Fuse-Bits 1 So sieht die Einstellung im AVR-Studio 4 für den ATtiny13 des Akku-Alarms aus.

Fuse-Bits 2 So sieht die Einstellung in PonyProg für den ATtiny13 des Akku-Alarms aus.

Das Programm ist relativ einfach aufgebaut: Beim Einschalten werden zunächst die I/O-Ports eingestellt und anschließend ein Start-Signal ausgegeben. Dabei leuchten alle angeschlossenen LEDs 300ms lang auf, verlöschen für 300ms und leuchten erneut 300ms lang auf. Ist ein Summer angeschlossen, dann ist ein entsprechendes Tonsignal zu hören. Anschließend erfolgt die Initialisierung des AD-Wandlers und des Timers, wobei letzterer alle 64ms einen Interrupt auslöst. Alle weiteren Funktionen werden von der Interrupt-Routine des Timers gesteuert: das Lesen der Jumpereinstellungen J1-J3, das Lesen des Wertes vom AD-Wandler, das Auswerten dieses Wertes in Abhängigkeit von J1 und J2 sowie die Ausgabe eines entsprechenden LED- bzw. Ton-Signals.

Wie bereits beschrieben, werden im laufenden Betrieb durch die LED bzw. den Summer 2 Zustände signalisiert:

Grafik normalDie Akku-Spannung ist in Ordnung (ca. 1 LED-Blitz pro Sekunde) - Positionslicht
Grafik AlarmDie Akku-Spannung unterschreitet den Schwellwert (LED flackert ca. 8 mal pro Sekunde)

Falls die Lötbrücke J3 geschlossen ist, dann bleibt die LED aus, solange sich die Akku-Spannung im grünen Bereich befindet.
Bei der Messung der Akku-Spannung gibt es hier noch eine Besonderheit. Die Interrupt-Routine liest alle 64ms den aktuellen Spannungswert und legt ihn in einer Tabelle ab. Danach ermittelt die Routine aus den letzten 4 Messwerten einen Mittelwert und dieser wird dann mit dem Schwellwert vergleichen. Das soll verhindern, dass kurze Spannungseinbrüche zu Fehlalarmen führen.

SymbolInbetriebnahme

Zunächst ist es erforderlich, die Fuse-Bits im Controller richtig zu setzen und die Software muss pogrammiert werden, wobei das fertig assemblierte Hex-File dafür verwendet werden kann. Falls kein Programmiergerät vorhanden ist, kann die Programmierung direkt in der Schaltung erfolgen. Hierfür ist der im Schaltplan gestrichelt eingezeichnete ISP-Anschluss anzulöten. Außerdem braucht man noch eine Spannungsquelle, wobei für die 2-Zellen-Variante 5V bis 8V und für die 3-Zellen-Variante 6V bis 12V erforderlich sind. Die Spannung kann von einem Netzteil oder dem Akku des Flugmodells bereitgestellt werden.

Leider ist der Spannungswert der internen Referenzspannungsquelle bei jedem Controller-Exemplar ein wenig anders, so dass der Schwellwert abweichen kann. Auch die Widerstände R1 und R2 haben Einfluss auf den Schwellwert. Aus diesem Grund empfehle ich den Abgleich der Schaltung durch Anpassung der Software. Grundsätzlich wäre auch ein Abgleich über ein Trimm-Potentiometer denkbar. Ich habe aber davon Abstand genommen, um Platinenfläche und Gewicht zu sparen. Außerdem können in Helikoptern starke Vibrationen auftreten, so dass Festwiderstände die bessere Wahl sind.

Für den Abgleich der Schaltung sind einige Hilfsmittel erforderlich: eine einstellbare Stromversorgung, ein Messgerät und das AVR-Studio 4. Außerdem muss der im Schaltplan gestrichelt eingezeichnete ISP-Anschluss angelötet werden. Zuerst sollte die Schaltung an das Stromversorgungsgerät angeschlossen und dieses auf eine Spannung in der Nähe des Schwellwertes eingestellt werden, also 6,3V bei der 2-Zellen-Variante und 9,5V bei der 3-Zellen-Variante. Nach der erfolgreichen Programmierung und dem Ziehen des Programmierkabels kann man durch Verstellen der Spannung prüfen, ob die Schaltung bei der richtigen Spannung anspricht. Das Abziehen des Programmierkabels ist unbedingt notwendig, denn das gesteckte Kabel kann sich wie eine verbundene Lötbrücke (J1-J3) auswirken und den Schwellwert auf eine andere Einstellung umschalten.
Falls man das seltene Glück hat und die Spannungsschwelle stimmt, dann kann man an dieser Stelle die Arbeit beenden. Anderenfalls muss jetzt das AVR-Studio gestartet und ein neues Projekt mit der Datei AkkuAlarm.asm angelegt werden. Interessant ist nun die folgende Stelle im Quelltext:

; Der folgende Wert "thresh" muss solange geändert werden, bis die
; Schaltung bei der Unterschreitung der folgenden Schwellen anspricht.
; Ein höherer Wert ergibt eine höhere Spannungsschwelle.
;
; 2 LiPo-Zellen: 6,3V
; 3 LiPo-Zellen: 9,5V
;
.equ    thresh= 890     ;anpassen (im Bereich 850-930)

Der Wert thresh muss folgendermaßen geändert werden: Ist der Schwellwert zu niedrig, spricht die Schaltung also unterhalb von 6,3V bzw. 9,5V an, dann muss dieser Wert erhöht werden. Anderenfalls ist eine Verringerung dieses Wertes erforderlich. Eine Änderung des Wertes um 1 verschiebt den Schwellwert um etwa 6-7mV bei der 2-Zellen-Variante und um etwa 10mV bei der 3-Zellen-Variante. Nach der Änderung wird das Projekt neu assembliert und das erzeugte Hex-File in den Controller programmiert. Danach muss das ISP-Kabel wiederum von der Schaltung abgezogen und die neue Einstellung mit Stromversorgungsgerät und Spannungsmesser kontrolliert werden.

Stimmt die Einstellung immer noch nicht, dann muss der Wert thresh nochmals angepasst und das Projekt erneut assembliert werden. Spätestens beim 2. Versuch sollte man aber die richtige Einstellung gefunden haben und der ISP-Anschluss kann wieder abgelötet werden. Anschließend kann man zur Sicherheit noch J4 einlöten. Damit wird (wie bereits beschrieben) der interne Pull-up Widerstand vom Reset-Eingang überbrückt, so dass später beim Flug keine ungewollten Resets durch Störimpulse ausgelöst werden können.

Damit ist die Inbetriebnahme abgeschlossen. Die Prozedur mag etwas umständlich erscheinen, aber sie lässt sich nicht vermeiden, wenn man eine möglichst kompakte, leichte und zuverlässige Schaltung haben möchte. Außerdem ist diese Prozedur nur einmal erforderlich, denn die interne Referenzspannung ist sehr stabil. Es gab übrigens auch Ideen, einen oder zwei Taster für die Konfiguration und den Abgleich zu verwenden. Das hätte aber nicht nur eine wesentlich aufwändigere Software erfordert, sondern auch ein Handbuch, um die vielen Tastenkombinationen und LED-Blinkzeichen zu verstehen :-)

SymbolSonstiges

Zum Zeitpunkt der Texterstellung wurden mehrere Exemplare dieser Schaltung in folgenden Modellen verwendet:

2-Zellen-Variante3-Zellen-Variante
E-Sky Lama V3Walkera HM-22E
E-Sky Lama V4Walkera HM-36
Graupner Micro 47GE-Sky Honey Bee CP2
E-Flite Blade CX2

In allen Modellen wurde die auf den Bildern gezeigte Platine verwendet und in den meisten Fällen wird die Schaltung in der Grund-Konfiguration, also mit offenen Lötbrücken J1-J3 betrieben. In einem Fall haben die Akkus schon viele Lade-Zyklen hinter sich und hier war es erforderlich, J1 zu schließen um den Schwellwert zu erhöhen.