-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: Spannungsteiler Wiederstände & Auswertung ?

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    10.07.2014
    Beiträge
    23

    Spannungsteiler Wiederstände & Auswertung ?

    Anzeige

    Hallo liebe Leute,

    ich bin grad dabei eine Akkukontrolle zu planen und bin an dem Punkt der Widerstandswahl angekommen.
    Ich habe nun schon einiges über Spannungsteiler gelesen und auch wie der Arduino damit verbunden wird, aber so langsam steigt etwas Verwirrung auf ^^
    Der Akku hat 12V (Blei). Ich habe nun gelesen, dass man für 12V einen 10K und einen 4,7K (ca. 3,83V am Arduino) Widerstand nehmen soll, wobei ich an anderer Stelle erfahren habe, dass ein Verhältnis 1/5 gut sein soll. Dafür habe ich 10K und 2,5K (2,4V am Arduino). Ich habe ebenso gelesen, dass ein größerer Wert genauer sein soll (kann mir im Moment nicht erklären warum ^^)

    Welche Werte sind denn nun besser bzw. vertretbarer ?
    Und wie wird nachher der tatsächliche Spannungswert im Arduino berechnet ?

    Danke für eure Mühe
    Geändert von Zyrano (15.07.2016 um 17:10 Uhr)

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.04.2015
    Beiträge
    196
    Analoge Spannungen werden über den AD im Controller gewandelt.
    Ein AD hat eine Referenz (vermutlich 5V) und eine Auflösung (hier vermutlich 10Bit, also 1024 Stufen). OV sollten dem Ausgangswert 0 und 5V dann dem Ausgangswert 1024 entsprechen. Bei 2,5V wäre dann z.B. der Ausgangswert im Idealfall 512, es wird also linear aufgelöst.

    Wenn Du den möglichen Eingangsspannungsbereich durch den Teiler auf max. 2,5V begrenzt, wird Dir der Wandler auch nie mehr als 512 ausgeben. Du verlierst also die Hälfte Deiner möglichen Auflösungsschritte. Der Wandler wird damit ungenauer.

    Es ist also anzustreben, den Teiler so zu dimensionieren, dass die Spannung am Eingang des Wandlers bis zum Referenzwert steigen kann.

    ABÄR: Dein Bleiakku hört (insbesondere während des Ladens) mitnichten bei 12V auf, da geht die Spannung hoch bis 13,4...14,8V (je nach Typ, Bleivliess, Bleigel, ...). Übersteigt die Spannung am Eingang des Wandlers die Referenzspannung, wird 1024 (oder in Ausnahmefällen ein Overflow, also 0) angezeigt.
    Mit einem Spannungsteiler 1:3 bist Du also gut bedient. Mit dem 4k7 und 10k sollte das passen (wenn Du den 4k7 gegen Masse und den 10k gegen Akkuspannung schaltest, NICHT ANDERSHERUM).

    Aber lies bitte noch mal das Datenblatt Deines Arduino durch, gegen welche Referenz der wandelt. Wenn der die interne 1,1V Referenz verwendet oder mit 3,3V arbeitet, musst Du andere Werte nehmen.

    Die Auswertung ist ein Dreisatz: Referenz/(Teilerverhältnis * Auflösung) = Wert/ADWert umgeformt in

    Wert = (Referenz * ADWert)/ (Teilerverhältnis * Auflösung)

    Bsp:
    gemessener ADWert = 800
    Auflösung = 1024 (10Bit)
    Referenz = 5V
    Teilerverhältnis: 4,7/14,7 = 0,32

    (Systemkonstanten sind fett gekennzeichnet)

    Wert = (5V * 800)/ (0,32 * 1024) = 12,21V

    Noch was: Die üblichen Widerstände haben 1% Toleranz. Der Wandler kann aber bis zu 0,1% genau. Es empfiehlt sich also, das Teilerverhältnis empirisch genauer zu ermitteln (Multimeter nehmen und Ergebnis des Wandlers mit Messung vergleichen)
    Geändert von Holomino (15.07.2016 um 17:27 Uhr)

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von BMS
    Registriert seit
    21.06.2006
    Ort
    TT,KA
    Alter
    26
    Beiträge
    1.192
    Hallo,
    Holomino hat das schon sehr genau erklärt.

    Noch ein paar Kleinigkeiten:
    Die Toleranzen der Widerstände fließen auch in das Messergebnis ein. Wenn du genau messen möchtest, sollten auch die Widerstände präzise sein, logisch. Also keine billigen 5% Kohleschichtwiderstände nehmen
    Was auch hilfreich sein kann: parallel zum "unteren" Widerstand des Spannungsteilers noch einen kleinen Kondensator einbauen (z.B. 1µF, egal). Damit werden die Messergebnisse etwas gemittelt. Ansonsten schlägt die Akkuwarnung bei jedem kurzen Spannungseinbruch an.

    Viele Grüße,
    Bernhard
    "Im Leben geht es nicht darum, gute Karten zu haben, sondern auch mit einem schlechten Blatt gut zu spielen." R.L. Stevenson

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    10.07.2014
    Beiträge
    23
    Hallo Holomino,

    vielen Dank für deine Antwort. Das hört sich jetzt alles etwas einleuchtender an ^^
    Im Datahseet vom Sainsmart Arudino MEGA 2560 habe ich nichts derartiges wie eine Rezerenzangabe in V gefunden ?

    Die Schaltung würde ich dann so bauen: +12V ---> 10K ---> AN ---> 4k7 ---> GND richtig ? Nur rein zum Verständnis

    Zitat Zitat von BMS Beitrag anzeigen
    Was auch hilfreich sein kann: parallel zum "unteren" Widerstand des Spannungsteilers noch einen kleinen Kondensator einbauen (z.B. 1µF, egal). Damit werden die Messergebnisse etwas gemittelt. Ansonsten schlägt die Akkuwarnung bei jedem kurzen Spannungseinbruch an.
    Hallo BMS,

    Geht auch ein 100mf oder 22mf Kondensator ? davon hab ich noch welche =)

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.04.2015
    Beiträge
    196
    Mit der Reihenfolge der Widerstände: Genauso habe ich es gemeint.

    Mit den Kondensatoren: mF = Millifarad, die müssten etwa so groß sein, wie nen Koffer, die würden nicht gehen. Wenn Du nF = Nanofarad meinst: Aus Sicht des RC-Gliedes liegen die beiden Widerstände parallel, macht also etwa 3,2k aus. Mit 100nF bekommst Du eine Zeitkonstante von 3,2k * 100nF = 320us. Das wird z.B. für das Filtern eines Motorschaltens nicht reichen.
    Was Du aber machen kannst, ist die softwareseitige Filterung solcher Störungen, also mehrfach messen und den Mittelwert bilden.

    Bezüglich der Referenz: Auf die schnelle gefunden: "analogRead" und "analogReference"
    Geändert von Holomino (15.07.2016 um 17:59 Uhr)

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    10.07.2014
    Beiträge
    23
    Ich meinte eigentlich Mikrofarad. Das was BMS auch meinte 👍

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.04.2015
    Beiträge
    196
    Mikrofarad sind dann blöderweise "uF" (Eigentlich griechisch mü-F, aber das will keiner tippen).
    Das sollte mit dem 22uF gehen, wenn Du nach dem Einschalten etwa 0,3s wartest, bis Du zu messen beginnst. So lange braucht der Kondensator, bis er über den Spannungsteiler geladen ist.

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    10.07.2014
    Beiträge
    23
    Oh entschuldige. Dann meinte ich natürlich uF 😄

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    59
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von Zyrano Beitrag anzeigen
    Oh entschuldige. Dann meinte ich natürlich uF ��
    Eben, 1mF = 1'000µF.
    Fall ein µ gerade nicht greifbar ist, geht auch uF (ist vor allem im angelsächsischen Sprachraum recht gebräuchlich)

    Noch zum Spannungsteiler:

    Eigentlich sollte deinem Fall der Gesamtwiderstand möglichst gross sein, der Spannungsteiler entlädt deinen Akku dauernd.

    Andererseits hat der ADC auch wiederum einen Eingangswiderstand, welcher einen Fehler im Spannungsteiler verursacht (Stichwort: belasteter Spannungsteiler).

    Man kann den Wert also auch nicht beliebig gross wählen.
    Wie immer bei eine Konstruktion, muss man auch hier einen Kompromiss wählen.

    In meinem Geräten findet sich immer folgende Formel:

    wert = ((ADC*k1)/k2)+offset;

    Alles Integer mit Vorzeichen.

    k1, k2 und Offset befinden sich in einem EEPROM. Für den Abgleich gibt es dann eine kleines Programm.
    Anfänglich setzt man k1 = k2 = 1 und offset = 0
    Mit k1/k2 kann man dann auch alle möglichen gebrochene Faktoren erstellen. Wichtig ist nur, dass ADC*k1 keinen Überlauft erzeugen kann.

    Damit kannst du praktisch alle vorkommenden Fälle abgleichen.
    Um ohne einen Abgleich auszukommen, müsstest du bei 10-Bit Widerstände verwenden, welche besser als 0.05% sind.
    Mit einem Abgleich tun es im Prinzip auch Widerstände mit 5%, diese müssen nur stabil sein, also am Besten Metallfilm-Widerstände mit kleinem Tk verwenden.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    10.07.2014
    Beiträge
    23
    Um das ganze jetzt nochmal auf zu greifen (längere Zeit inaktiv wegen längerer Prioritätsverschiebung ^^)

    Folgende Zusammensetzung:
    12V Bleiakku, 10kohm und 4,7kohm Widerstände im belastetem Spannungsteiler.
    Ein 12V Stromkreis direkt ab Akku für Motortreiber und ein Stromkreis ab Akku mit StepDownRegler auf 5V für Arduino
    Spannungsteiler parallel zum StepDownRegler.

    Ausgehend vom DataSheet Mega 2560 5V Referenz und 1024 Auflösung.
    Ich lese den AnalogPort mit
    Code:
    values = analogRead(analogInput);
    Dann mache ich die Berechnung mit
    Code:
    v = (5 * values) / (0.47 * 1024);
    Nun werfen mir die Variablen aber "values" zwischen 912 und 916 und "v" 9,46 bis 9,52.
    Gemessen direkt am Akku kommen 12,76V.
    Was stimmt mit den Werten nicht ? Kann es zu Problemen kommen, wenn ich den Arduino mit USB am Rechner habe ? Irgendwie muss ich ja die Werte auslesen =)

    Danke

    EDIT: Hier mal der ganze Sktech:

    Code:
    int analogInput = 0;
    float v = 0.0;
    int values = 0;
    
    void setup() {
      Serial.begin(9600);
      pinMode(analogInput, INPUT);
    }
    
    void loop() {
    
     values = analogRead(analogInput);
     v = (5 * values) / (0.47 * 1024);
     
     Serial.print("Wert V= ");
     Serial.println(v);
     Serial.println("Wert =");
     Serial.println(values);
    
     delay(500);
    }
    EDIT2: Wenn ich die 12V abschalte bleiben über USB noch 2,3V die er misst ?
    Geändert von Zyrano (20.11.2016 um 20:08 Uhr)

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Asuro - Wiederstände und Sortierschablone
    Von Wergenter im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 11.09.2011, 15:49
  2. Wiederstände zu heiss?
    Von Goblin im Forum Elektronik
    Antworten: 29
    Letzter Beitrag: 06.02.2007, 01:51
  3. Wiederstände
    Von palermo im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 31.01.2007, 13:43
  4. Pullup Wiederstände für paraellen Port?
    Von x8r im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 16.01.2007, 23:05
  5. Falsche Wiederstände geliefert - was tun?
    Von vbprogrammierer im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 13
    Letzter Beitrag: 19.08.2005, 11:08

Berechtigungen

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