- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 19

Thema: Schaltung für Tankgeber basteln. Hilfe gesucht...

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von Crazy Harry
    Registriert seit
    15.01.2006
    Ort
    Raum Augsburg - Ulm
    Beiträge
    1.310
    Motorrad gerade hinstellen, Tank leer machen und ein Voltmeter an den Geber. Dann immer 0.5L in den Tank und Spannungswerte aufschreiben. Wenn du das hast kann man sich über die nachfolgende Schaltung den Kopf zerbrechen.
    Aus Erfahrung kann ich dir sagen: mindestend 10-20 Messwerte (1×/sek) mitteln (Ringspeicher und den ältesten Wert immer ersetzen).
    Ich programmiere mit AVRCo

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2004
    Ort
    Kreis Starnberg
    Alter
    60
    Beiträge
    1.825
    Nochmal ein Versuch einer Skizze:

    Meßpunkt (Bordnetzspannung oder Geberspannung)
    |
    22 kOhm
    |
    0---47 kOhm--o Analogeingang
    |
    10 kOhm
    |
    0 V (Masse)

    Das Ganze zweimal identisch aufgebaut ergibt eine Messung für das Bordnetz und eine Messung für den Tankinhalt.
    Ein Rechenbeispiel für eine Meßspannung von 12 V: Über den Zweig mit 22kOhm und 10kOhm fließt ein Strom von 12V/33kOhm=0,36mA (bei 5V etwa 1,5mA). Dieser Spannungsteiler dient zur Anpassung der zu messenden Spannung auf den Meßbereich des AD-Wandlers (ich vermute 0..5V, falls das falsch ist, müssten wir die Widerstandswerte nochmal entsprechend anpassen). Bei einer Spannung von 12V am Meßpunkt hat man am Spannungsteiler etwa 3,64 V.
    Über den 47kOhm fließt im Normalfall praktisch kein Strom weil die AD-Eingänge sehr hochohmig sind deshalb ist nach dem 47kOhm Widerstand auch 3,64 V.
    Der Zweck des 47 kOhm ist ein reiner Schutzwiderstand für den AD-Wandler weil in Bordnetzen durchaus mal Spannungsspitzen auftreten können. Bei einer Eingangsspannung von 100 V hätte man am Spannungsteiler 30,3 V, direkt würde das den Mikrocontroller sofort töten. Der Strom wird aber durch die Widerstandskombination auf etwa 0,46mA in den Analogeingang begrenzt. Der Analogeingang leitet Spannungen über der Betriebsspannung über eine Schutzdiode in die positive Betriebsspannung des Mikrocontrollers ab, ist dann also nicht mehr hochohmig. Die Schutzdiode am Analogeingang hält wohl so etwa 2-3 mA aus (ich meine das mal so aus dem Datenblatt gelesen zu haben, will es jetzt aber nicht raussuchen).
    Warum keine Z-Diode?
    Könnte man auch machen, ich halte die Widerstandskombination für ausreichend und auch insgesamt sicherer (die Z-Diode stirbt schlagartig aber unbemerkt, falls das Instrument mal versehentlich überbrückt wird). Falls Du eine Lösung "mit Hosenträger und Gürtel" bevorzugst kannst Du die Z-Diode einbauen, es macht aber nur direkt am Geber Sinn, weil die Leckströme der Diode die Genauigkeit des Spannungsteilers kaputtmachen.
    Ein Kondensator wäre auch denkbar, dann aber direkt am Analogeingang gegen Masse. Ich würde etwa 100nF vorschlagen aber besser einen Folienkondensator (keramische Vielschicht haben häufig Mikrofonie bei Vibration).

  3. #3
    Unregistriert
    Gast
    Danke für die nochmalige Erklärung. Ja der Arduino verträgt zwischen 0 und 5 V. Somit passt das mit den Widerständen. Ich werd auch noch den Kondensator verwenden. Das mit den Spannungsteilern ist auch klar. Die Frage is nur: an dem Messpunkt der Geberspannung (zwischen Instrument und Geber) teilt sich ja der Strom auf. Der fließt zum einen über den Geberwiderstand und zum anderen über den Zweig des Spannungsteilers (22 kOhm und 10 kOhm). Der Stromfluss über den Spannungsteiler muss vernachlässigbar gering sein. Das trifft bei den 1,5 mA aber eh zu.

    Ich will nicht nerven, aber nochmal zur Sicherheit ob ich das jetz alles verstanden habe:

    mit Spannungsteiler 1 Spannungsabfall U_tankgeber messen: U_tankgeber = U_analog1*(22+10)/10
    Das alleine ist nicht Aussagekräftig, da U_tankgeber von U_versorgung abhängt: U_versorgung = R_instrument*I + U_tankgeber
    Deshalb mit zweitem Spannungsteiler U_versorgung messen: U_versorgung = U_analog2*(22+10)/10
    Mit der Vereinfachung, dass der Strom über den Spannungsteiler 1 vernachlässigbar klein ist gilt auch: U_tankgeber/U_versorgung = R_tankgeber/(R_instrument+R_tankgeber)
    Umformen nach R_tankgeber ergibt den gesuchten Geberwiderstand, für den die Look-up Table erstellt wird.

    Dann werd ich das am Steckbrettchen mal nachbauen...

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2004
    Ort
    Kreis Starnberg
    Alter
    60
    Beiträge
    1.825
    an dem Messpunkt der Geberspannung (zwischen Instrument und Geber) teilt sich ja der Strom auf. Der fließt zum einen über den Geberwiderstand und zum anderen über den Zweig des Spannungsteilers (22 kOhm und 10 kOhm). Der Stromfluss über den Spannungsteiler muss vernachlässigbar gering sein. Das trifft bei den 1,5 mA aber eh zu.
    Da hatte ich mich vertan, der Strom über 33kOhm bei 5V ist nicht 1,5 mA sondern 0,15 mA. Wie auch immer, er ist sicher hinreichend niedrig um die Anzeige des Kreuzspulinstruments nicht zu verfälschen.

    mit Spannungsteiler 1 Spannungsabfall U_tankgeber messen: U_tankgeber = U_analog1*(22+10)/10
    Das alleine ist nicht Aussagekräftig, da U_tankgeber von U_versorgung abhängt: U_versorgung = R_instrument*I + U_tankgeber
    Deshalb mit zweitem Spannungsteiler U_versorgung messen: U_versorgung = U_analog2*(22+10)/10
    Mit der Vereinfachung, dass der Strom über den Spannungsteiler 1 vernachlässigbar klein ist gilt auch: U_tankgeber/U_versorgung = R_tankgeber/(R_instrument+R_tankgeber)
    Umformen nach R_tankgeber ergibt den gesuchten Geberwiderstand, für den die Look-up Table erstellt wird.
    Ja, das ist alles korrekt. Den Geberwiderstand muss man im Algoritmus nicht explizit ausrechnen (er repräsentiert ja nur in irgendeiner nichtlinearer Weise den gesuchten Tankinhalt). Es genügt eigentlich den Quotienten aus Analog_1 und Analog_2 zu rechnen (oder dessen Kehrwert, falls das sinnvoller erscheint) und nach diesem Wert die look-up Tabelle zu schreiben.
    Ein erster Aufbau am Steckbrett ist sicher sinnvoll, man kann dann gleich mal verifizieren ob verschiedene Bordnetzspannungen bei konstantem Geberwiderstand auch eine konstante Füllmenge ergeben.

  5. #5
    Unregistriert
    Gast
    Hallo!

    Habs mal nachgebaut und ausprobiert. Das Instrument hab ich durch einen konstanten Widerstand von 150 Ohm ersetzt (dürfte real bei ca. 130 Ohm Innenwiderstand sein) und den Tankgeber bei konsantem Füllstand mit einem 82 Ohm Widerstand simuliert. Die Korrektur der Versorgungsspannung hat einwandfrei funktioniert. Die Spannungsteiler lieferten anfangs abweichende Werte. Der Faktor sollte 3,2 sein, lag tatsächlich beim ersten bei 3,4 und beim zweiten bei 3,3. Wie sich herrausstelle sind das einfach die Bauteiltoleranzen - 5% machen bei 22000 Ohm schon was aus. Da ich die Faktoren aber jetzt kenne, funktioniert alles so wie es soll

    Vielen Dank noch mal!!!

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2004
    Ort
    Kreis Starnberg
    Alter
    60
    Beiträge
    1.825
    Prima dass es so klappt und danke für die Rückmeldung!

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests