Moinmoin, In meinem aktuellen Projekt bin ich auf ein Problem mit einer ADC Messung gestoßen. Aus Gründen der umgesetzten Leistung verwende ich einen recht hochohmigen Spannungsteiler (220kOhm - 75kOhm) um die Spannung an einem 6,5-9V Akku mithilfe der internen Referenzspannung zu messen (Nutzen der internen 2,56V Referenz für diese Anwendung notwendig, statische Abweichungen von 2,56V kann ich verkraften). Am AREF Pin hängt ein C zu GND mit 10nF. Bei kontinuierlichen Messungen (ca. 5 mal/sec) entstehen jedoch Abweichungen des Messwertes um bis zu ca. 8 Bit (von 1024). Messungen mit einem handelsüblichen Multimeter zeigen sehr saubere Spannungen an AREF und dem ADC Port. Wie kann ich diese Schwankungen kompensieren bzw. wie entstehen diese überhaupt? Spielt die Hochohmigkeit des Spannungsteilers hier eine Rolle? Oder das Setzen der ADSP (ADC Prescaler) bits (die mich grundsätzlich etwas irritieren)? Viele Dank für Vorschläge im Voraus! Jabu
Hallo, die Ursache ist der endliche Einganswiderstand des ADC. Zum genauen Wert: siehe Datenblatt. Einfachste Lösung: kleine Widerstandswerte beim Spannungsteiler nehemen. Wenn dir dann zu viel Strom fließt den Spannungsteiler z.b. mit einem Fet abschaltbar machen.
Ein Kondensator über dem unteren Widerstand des Spannungsteilers würde das Signal zumindest für dynamische Belastung beim Samplen niederohmiger machen.
Hallo Eumel! Der Eingangswiderstand des ADC ist mit 100MOhm angegeben. Wenn das tatsächlich die Ursache für diese doch recht großen Abweichungen ist, würde sich ein FET in Verbindung mit geringeren Widerständen tatsächlich anbieten, danke für diesen Vorschlag. Gibt es so eine Art Richtwert bis zu maximal welchen Widerständen der ADC betrieben werden sollte?
Z.B. ATmega328: Analog Input Circuitry: The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less.
Hallo Helmut, ich habe nach dieser Angabe bisher vergeblich gesucht. Dann werde ich den Spannungsteiler niederohmiger dimensionieren. Danke nochmal!
Oder schalte einen CMOS OP-Amp davor, zum Beispiel den TL071. Er hat einen sehr hohen Eingangswiderstand und einen geringen Ausgangswiderstand un eine geringe Stromaufnahme.
Hallo, siehe T2, R4 und R5 http://www.mikrocontroller.net/articles/Datei:BMON_1048_PIC.PNG in meinem Batteriewächter Gruß Anja
Abend, Nach wie vor habe ich ein Problem mit Messschwankungen des ADC beim mega644 (interne REF 2,56V), wobei nun am ADC Pin ein Spannungsteiler mit 15kOhm an GND und 15kOhm an Vcc abzweigt. An AREF hängen 100nF nach GND. DDRA = 0; PORTA = 0; ADCSRA |= (1<<ADEN)|(1<<ADPS0)|(1<<ADPS1)|(1<<ADPS2); //Prescaler: 128 ADMUX = (...single port x...); ADMUX |= (1<<REFS0)|(1<<REFS1); Soweit zur Initialisierung. Nach mehreren Messungen, die hintereinander ausgeführt werden, stellt man fest, dass der Wert immer noch um bis zu 8 bit schwankt. Woran könnte es liegen? Was habe ich nicht beachtet? Ist die interne Referenz so unzuverlässig? Ich versuche einen Ausschnitt vom Schaltplan anzuhängen Danke im Voraus, Jabu
Jabu schrieb: > Was habe ich nicht beachtet? Falsche Masseverdrahtung? Deine Schaltung ergibt Überspannung am Analogpin wenn der FET ausgeschaltet ist. Gruß Anja
Jabu schrieb: > Woran könnte es liegen? Es gibt auch noch die Möglichkeit, dass Potentialunterschiede zwischen den GNDs (AGND, GND und GND des zu messenden Signals) einen Fehler produzieren. Außerdem können Störungen auf AVCC eine Ursache sein (-> AVCC abblocken, ggf. mit Drossel). Gruß Dietrich
Jabu schrieb: > Was habe ich nicht beachtet? Ist die interne Referenz so > unzuverlässig? Bleibt der ADC in Deinem Projekt auf interne Referenz geschaltet oder wird zwischendurch auch auf VCC Referenz umgeschaltet? Beim Umschalten auf interne Referenz muß eine Wartezeit berücksichtigt werden, bis die AREF Spannung wegen des angeschlossenen Kondensators die geänderte Referenzspannung erreicht.
Anja schrieb: > Deine Schaltung ergibt Überspannung am Analogpin wenn der FET > ausgeschaltet ist. Nein, die Spannung am Pin wird VCC+0.5V nicht überschritten. Dafür sorgt die VCC-seitige Schutzdioden. Und 15kΩ zur Strombegrenzung sind doch ok ;-)
Michael schrieb: > Und 15kΩ zur Strombegrenzung sind doch ok ... nur wenn der Prozessor nicht im Sleep-Mode ist. Oder sonst irgend ein Verbraucher die Versorgung entsprechend stark belastet. Gruß Anja
Wenn ein Strom durch die "Schutzdioden" abfließt kann dies die benachbarten Eingänge, insbesondere andere AD Eingänge stören. Mit dem Strom über die "Dioden" geht der µC zwar nicht kaputt, aber er funktioniert auch nicht mehr unbedingt normal. Die einfachste Lösung ist wohl der Kondensator parallel zum Hochohmigen Teiler (bis etwa 1 M), zumindest wenn die Temperatur nicht zu hoch wird. Wenn schon Teiler, dann eher so wie Anja gezeigt hat, mit FET vor dem Eingang. Als Alternative ginge auch noch ein hochohmiger Teiler und ein sparsamer (z.B. TS27L2), ggf. Abschaltbarer (z.B. MCP603) OP als Impedanzwandler.
Beitrag #7743959 wurde vom Autor gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.