Tankuhr
![]() |
| Bild: Montageeinheit Geber im Tank |
Warum eine Tankuhr nachrüsten?
Als Tankfüllstandsanzeige wurde serienmäßig ein transparentes Schauröhrchen verbaut. Bei Lageänderung schwankt die Anzeige jedoch stark. Im Besonderen ist bei niedrigen Füllstand kein Benzinpegel mehr sichtbar obwohl noch circa 13 Liter im Tank sind. 13 Liter sind mehr als die vorgeschriebene 30 Minuten Reserve. Gerade wenn das Ziel nicht mehr weit ist und der Sprit dem Ende zu geht, ist für entspanntes Fliegen eine genaue Tankanzeige notwendig.
Aus ästhetischen Gründen wurde ein Rundinstrument mit weiter Skala gewählt. Wie vorgenannt ist der Füllstand besonders bei geringem Tankinhalt relevant. Der Tank ist kein einfacher zylindrische Körper und der gewählte Tankgeber (Schwenkarm-Widerstand) liefert damit keine genauen Werte. Dem Schwenkarm-Schwimmer muss daher je nach Position ein echter Mengenwert zugeordnet werden.
Aus Sicherheitsgründen ist vor jedem Flug die zur verfügung stehende Kraftstoffmenge doppelt zu prüfen. Wenn vorhanden mit einem Anzeigeinstrument und der Gegencheck durch Sichtprüfung/Peilstab. Ein Anzeigeinstrument ist nicht notwendig wenn der Kraftstoffpegel vom Piloten während des Fluges überprüft werden kann. Verbleibt das Schauröhrchen und wird eine Tankuhr nachgerüstet kann vor Flugbeginn die Kraftstoffkontrolle vom Cockpit aus erfolgen. Schauröhrchen und Tankuhr ergänzen sich somit, i.B. wenn der Pegel schwankt oder sehr niedrig ist.
Herausforderungen
1. Schwankungen des Pegelstands durch Lageänderungen im Flug sollten wenig
Einfluss auf die Anzeige haben.
- Lösung: Schwimmerarm so krümmen und im Tank positionieren, dass sich der
Schwimmer auf seiner Kreissegmentbahn so weit wie möglich in der Mittelachse des
Tanks bewegt.
2. Dem Pegelstand soll eine tatsächliche Menge zugeordnet werden obwohl der
Schwimmerarm eine Kreissegmentbahn beschreibt und der
Tank bauartbedingt unförmig ist.
- Lösung: Es wird ein Arduino Uno als Kleincomputer verwendet der
mittels seiner Ein- und Ausgänge die Spannung über den Schwimmerarm empfängt,
die Daten verarbeitet und das Anzeigegerät steuert. Der Tank wird ausgelitert
(definierte Teilmengen eingefüllt) und dabei der vom Schwimmerarm verursachten
Spannung den tatsächlichen Inhalt in einer Tabelle des Arduino Sketch zugeordnet.
Die Tabelle enthält 11 Positionen für Liter und die entsprechenden rawValues.
(Siehe auch 4. zur Datenermittlung) Das Programm (Sketch) errechnet daraus die
tatsächliche Menge (siehe 3. Spannunbgsprobleme). Zwischen den Tabellenwerten
wird interpoliert.
3. Bord - Spannungsprobleme: Der schwankende Bordstrom würde die Spannung über
den Schwimmerarm verfälschen was Ein- und Ausgabe verfälscht und damit unbrauchbar macht.
Für den Arduino werden 5 Volt Versorgungsspannung benötigt und die Eingangsspannung
darf 5 Volt nicht übersteigen. Das verwendete Rundinstrument mit integrierter Elektronik
kalibriert sich bei jedem Einschalten auf die aktuelle Spannung, es benötigt einen
Spannungsbereich von 8 bis 30 Volt. Beim Einschalten der Zündung und im Betrieb
(Lichtmaschine/Batterie) würde sich das Rundinstrument unkontrolliert kalibrieren.
- Lösung: Es werden stabilisierte Spannungen sowohl für den Arduino (5Volt)
als auch für das Rundinstrument (9Volt) mittels Spannungswandler zur Verfügung gestellt. Durch einen
Schwimmerarm - Vorwiderstand wird die Schwimmerarm Spannung heruntergeregelt um
im zulässigen Input-Bereich des Arduino zu bleiben.
4. Die Bordelektronik stellt bei eingeschalteter Zündung einen Spannungsteiler dar.
Die Input-Werte unterscheiden sich deutlich bei ausgeschalteter oder eingeschalteter Zündung.
- Lösung: Das Auslitern des Tanks darf nur bei eingeschalteter Zündung
erfolgen. Liter und entsprechender Input-Wert (raw-Values) werden in der Programmtabelle
festgehalten. Das Monitoring der Inputwerte erfolgt über den seriellen Monitor der Arduino
Software (Laptop oder Smartphone mit Arduino Software beim Auslitern).
5. Die eingebaute Elektronik des Rundinstruments interpretiert die von Arduino
kommenden Spannungen (PWM) selbst und stellt einen
entsprechenden Zeigerstand dar welcher aber nicht dem errechneten und tatsächlichen
Tankfüllstand entspricht.
- Lösung: Es wird bei jedem Tabelleneintrag/Position ein Korrekturfaktor
verwendet der die Anzeige des Rundinstruments korrigiert.
![]() |
| Bild: Beispiel unförmiger Tank |
Hardware
Der Tank:
Im Bild ist der unförmige Metalltank dargestellt. Die Füllstandshöhe ist nicht linear mit der Menge, i.B. im unteren Bereich ist durch die konische Form Füllhöhe und Menge im Ungleichgewicht. Nicht dargestellt ist das Füllstandsröhrchen welches weit vor dem Tank senkrecht montiert ist damit man es im Cokpit sehen kann. Gerade beim Nicken des Flugzeugs schwankt daher der Pegel im Röhrchen extrem.
Der Tankgeber:
Es wird ein einfacher Schwenkarmschwimmer aus dem Autozubehörbereich verwendet. Ein über den Schwenkarm verändertes Drahtpoti bildet den Sensor (ca. 40-180 Ohm). Am Schwenkarmschwimmer wurde die Halterung verändert und an dem bestehenden Innenflansch der Tanköffnung montiert sodass am Tank selbst keinerlei Bohrungen vorzunehmen waren. Die Position und und die Kröpfung der Schwimmerstange wurde so verändert dass soweit als möglich der untere Benzinpegel erfasst wird.
Der Kleincomputer:
Es wurde ein Arduino Uno verwendet welcher entsprechend programmiert ist. Andere Kleincomputer mit Ein- und Ausgängen wären ebenfalls möglich. Dieser wertet, bezogen auf die einprogrammierten Positionen (möglich sind P1 bis P11), die von Schwimmerstand erzeugte Eingangsspannung aus und gibt sie an das Rundinstrumment aus. Der Arduino ist durch ein handelsübliches Gehäuse geschützt, die Verkabelung ist durch Klebeband gegen herausziehen geschützt.
Das Rundinstrument:
Der Skalenbeeich sollte so groß wie möglich sein damit gerade bei niedrigem Füllstand sicheres Ablesen möglich ist. Es wurde deshalb solch ein handelsübliches 57mm Rundinstrument verwendet mit großem Skalenbereich. Die eingebaute Elektronik kann die PWM Ausgangssignale des Arduino verarbeiten. Ein Digital-Analogwandler wurde nicht verbaut. Um den in der Praxis nicht mehr sicher nutzbaren Füllstand anzuzeigen (vermutlich weil doch ein DAC dazu nötig gewesen wäre) pulsiert die Anzeigenadel. Die Möglichkeit einer Beleuchtung der Skala wäre möglich, wird aber nicht genutzt.
![]() |
| Bild: Rundanzeige 57mm mit weiter Skala |
Programmierung
Der Arduino wird programmiert (Sketch). Es sind 11 Positionen mit je einer Literangabe
und dem dazugehörigen Arduino Eingangswert vorhanden. Zwischen den Positionen wird
interpoliert. Je nach tankform könnte man die Positionen (Liter) beliebig wälen.
Es sind ausführliche Kommentare vorhanden und es wurde einfachste Programmiertechnik
angewandt. Als Entwicklungsprojekt wurde auf Funktion Wert gelegt. Programmierer
könenn den Sketch vereinfachen und z.B. Arrays nutzen und das Programm
schlanker und eleganter zu gestalten.
Zur Ermittlung der Eingangswerte (rawValue)
hat sich die Arduino IDE auf einem Smartphone bewährt, damit kann vor Ort beim
Auslitern des Tanks die dazugehörigen rawValue mittels des Seriellen Monitors
ausgelesen werden (bei Zündung ein) und der Korrekturfaktor für die Ausgabe
an des Rundinstrument ermittelt werden. Man kann die ermittelten Werte direkt
eingeben und an den Arduino für jede Position direkt zurückspielen.
Die eigentliche Programmierung erfolgte am PC.
Unter Laborbedingungen wurde eine 12Volt Batterie verwendet. Zunächst wurden
die Widerstände des Schwimmers bei ausgeschalteter Zündung den Literwerten
zugeordnet und die Abstimmung des Rundinstruments ebenfalls im Labor gemacht.
Es stellte sich aber heraus dass die schwankenden Spannungen eines im Betrieb
befindlichen Motors die Laborabstimmung zunichte macht. Ebenfalls wurde festgestellt dass
bei eingeschalteter Zündung die Bordelektronik als Spannungsteiler wirkt und damit ebenfalls
die Laborabstimmung (selbst auch jetzt mit stabilisierten Eingangsspannungen des Arduino
und des Rundinstruments) unbrauchbar wird. Die Feinabstimmung muss daher unter
realen Bedingungen bei eingeschalteter Zündung erfolgen.
elektrischer Anschluss
Das Gerät wird an die Bordelektrik (abgesicherter Instrumenten Stromkreis) angeschlossen. Für den Arduino (5Volt) und das Rundinstrument (9Volt) wurden Spannungsregler der 78er Serie verwendet. Der Schwimmerarm wurde mit einem 440 Ohm Widerstand beaufschlagt um die Eingangsspannung am Arduino unter 5 volt zu bringen. Spannungsregler und Widerstand wurden in die Verkabelung eingeschleift und mit Schrumpfschlauch gesichert. Der Strombedarf ist gering sodass von keiner nennenswerten Wärmeentwicklung ausgegangen werden kann.
TRT800 ADS-B out ⇐ | ⇒ Vergaser synchronisieren



