AVR ADC Ungenauigkeit bei hoher Impedanz

#7750487
Lesenswert?

Hallo, verursacht eine hohe Impedanz am ADC-Eingang eines AVR (zum Beispiel ATMega8) eine Messungenauigkeit wegen der Sample-and-Hold-Schaltung?

Ich hatte es immer so verstanden, dass die Analogspannung für eine gewisse Zeit gesamplet wird und wenn die Impedanz der Quelle zu hoch ist, um den Kondensator in dieser Zeit entsprechend zu laden bzw. wenn die Spannung einbricht, wird halt eine falsche Spannung gewandelt.

Jetzt habe ich aber im Datenblatt die Information gefunden: "The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less. [...] If a source with higher impedance is used, the sampling time will depend on how long time the source needs to charge the S/H capacitor, with can vary widely." (S.195 Datenblatt ATMega8/L https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2486-8-bit-AVR-microcontroller-ATmega8_L_datasheet.pdf)

Das verstehe ich so, dass die Sample-and-Hold-Schaltung erst aufhört zu samplen, wenn der Kondensator fertiggeladen ist.

Deshalb die Frage: Verlängert eine hohe Impedanz der Analogquelle nur die Sampling- und damit Wandlungszeit oder verringert das auch die Genauigkeit? Das Signal soll als konstant angenommen werden und die Frage bezieht sich nicht auf die Leckströme.

(Firma: matzetronics) #7750490
Lesenswert?

Florian schrieb:

Deshalb die Frage: Verlängert eine hohe Impedanz der Analogquelle nur die Sampling- und damit Wandlungszeit oder verringert das auch die Genauigkeit?

Nö, und der zitierte Absatz ist insofern irreführend, als das der AVR natürlich keine Prophetschaltung hat und deswegen gar nicht weiss, wann die Eingangsspannung der am S&H Kondensator entspricht. Du kannst persönlich die Abtastzeit verlängern per ADC Takt, aber von alleine machte der AVR das nicht.

Gast #7750492
Lesenswert?

Florian schrieb:

Das verstehe ich so, dass die Sample-and-Hold-Schaltung erst aufhört zu samplen, wenn der Kondensator fertiggeladen ist.

Nein, das Timing steht durch die Konfiguration der ADC Register (in Kombination mit der Taktfrequenz) fest. Der ADC weiß nicht, wann der Kondensator für deine Ansprüche voll genug ist.

Genau genommen wird der Kondensator nie voll, wenn er durch einen Widerstand geladen wird. Die Spannung nähert sich an Umax an, erreicht diesen Wert aber nie. Was man in der Praxis sogar leicht nachvollziehen kann, indem man einen Widerstand im Mega-Ohm Bereich und einen dicken Elko verwendet.

Deshalb die Frage: Verlängert eine hohe Impedanz der Analogquelle nur die Sampling- und damit Wandlungszeit

Die Hohe Impedanz erfordert eine längere Sampling-Zeit. Das musst du aber selbst konfigurieren.

oder verringert das auch die Genauigkeit?

Das passiert, wenn du die Konfiguration nicht passend anpasst.

Angehängte Dateien:
Moderator (Firma: Titel) Persönliche Seite #7750501
Lesenswert?

Florian schrieb:

verursacht eine hohe Impedanz am ADC-Eingang eines AVR (zum Beispiel ATMega8) eine Messungenauigkeit wegen der Sample-and-Hold-Schaltung?

Ich hatte es immer so verstanden, dass die Analogspannung für eine gewisse Zeit gesamplet wird und wenn die Impedanz der Quelle zu hoch ist, um den Kondensator in dieser Zeit entsprechend zu laden bzw. wenn die Spannung einbricht, wird halt eine falsche Spannung gewandelt.

Das ist in der Realität ein wenig komplexer, dort haben wir das mal aufs Tausendstel ausgekaspert:

Beitrag "Re: Attiny85 ADC Eingangswiderstand - wie hoch"

Mein Tipp: das mit dem Poti und dem hochohmigen Spannungsteiler sollte man mal selber ausprobiert haben, dann bekommt man eher ein "Gefühl" dafür.

Gast #7750503
Lesenswert?

Florian schrieb:

Es hätte ja sein können, dass irgendwie geprüft wird, ob sich die Spannung noch merklich ändert.

Dazu müsste der ADC wissen, was genau du unter "merklich" verstehst. Außerdem ändert sich die Spannung z.B. bei einem Audio-Signal ständig. Die Automatic würde in dem Fall "ewig" warten.

#7750515
Lesenswert?

Lothar M. schrieb:

Das ist in der Realität ein wenig komplexer, dort haben wir das mal aufs Tausendstel ausgekaspert:

Ich werde mal drüberlesen. Aber eigentlich wollte nicht zu tief einsteigen. Es war nur überraschend für mich, dass scheinbar der ADC von selber lange genug samplet.

Monk schrieb:

Außerdem ändert sich die Spannung z.B. bei einem Audio-Signal ständig. Die Automatic würde in dem Fall "ewig" warten.

Das war auch, was mich gestört hat.

Moderator (Firma: Titel) Persönliche Seite #7750522
Lesenswert?

Florian schrieb:

Es war nur überraschend für mich, dass scheinbar der ADC von selber lange genug samplet.

Er samplet eben nur dann "lange genug", wenn die Anforderungen aus dem DB eingehalten werden, damit der Wandlungsfehler kleiner 1 LSB ist.

Aber eigentlich wollte nicht zu tief einsteigen.

Du wirst da schon noch mal drüber stolpern. Und dann reicht es, wenn du weißt, wo du solche Informationen findest.

Ich lasse alle meine Praktikanten diesen Versuch mit dem Poti und dem hochohmigen Spannungsteiler machen. Noch jeder war davon überrascht...

#7750525
Lesenswert?

Monk schrieb:

Genau genommen wird der Kondensator nie voll, wenn er durch einen Widerstand geladen wird. Die Spannung nähert sich an Umax an, erreicht diesen Wert aber nie. Was man in der Praxis sogar leicht nachvollziehen kann, indem man einen Widerstand im Mega-Ohm Bereich und einen dicken Elko verwendet.

..., wobei ein dicker Elko auch noch Leckströme hat, die bei einem Mega-Ohm-Widerstand verhindern, dass die Ladespannung sich beliebig der angelegten Spannung annähern.

#7750530
Lesenswert?

Monk schrieb:

Dazu müsste der ADC wissen, was genau du unter "merklich" verstehst.

Z. B. das, was dem Wert einem halben untersten Bit entspricht. Darunter ist es ja "unmerklich". Das kann ein Chip jedenfalls theoretisch wissen. Allerdings würde das nicht zu einer festen Abtastrate passen.

Außerdem ändert sich die Spannung z.B. bei einem Audio-Signal ständig. Die Automatic würde in dem Fall "ewig" warten.

Hinter der S/H-Stufe ändert sich die Spannung (fast) nicht, dafür ist das H ja da. :-)

#7750553
Lesenswert?

Bei hohen Eingangsimpedanzen der Quelle ist eine gute Abhilfe, einen Kondensator vom Eingang des Wandlers gegen GND zu schalten. Damit das Signal nicht verfälscht wird, sollte die Zeitkonstante von Eingangsimpedanz und Kondensator deutlich kleiner als die maximal zu erwartende Eingangsfrequenz sein. Üblich sind Kondensatoren von 10 bis 100 nF.

#7750567
Lesenswert?

M.A. S. schrieb:

Monk schrieb:

Genau genommen wird der Kondensator nie voll, wenn er durch einen Widerstand geladen wird. Die Spannung nähert sich an Umax an, erreicht diesen Wert aber nie. Was man in der Praxis sogar leicht nachvollziehen kann, indem man einen Widerstand im Mega-Ohm Bereich und einen dicken Elko verwendet.

..., wobei ein dicker Elko auch noch Leckströme hat, die bei einem Mega-Ohm-Widerstand verhindern, dass die Ladespannung sich beliebig der angelegten Spannung annähern.

Und der innenwiderstand des Messgeräts (üblicherweise 10M) macht sich schon sehr deutlich bemerkbar.

#7750569
Lesenswert?

Bis 10k Quellimpedanz ist der Fehler durch den S&H Kondensator zu vernachlässigen. Darüber muß man einen Pufferkondensator an den Eingang legen. Ich nehme dafür 100nF Keramik. Für die Messung an 3kV habe ich mal einen Spannungsteiler mit 1M als unteren Widerstand dimensioniert, damit nicht zuviel Wärme entsteht. Mit dem 100nF parallel hat das hat gut funktioniert. Der S&H Kondensator entlädt den 100nF nur unwesentlich.

Es geht allerdings auch, nach der Umschaltung des MUX einige Zeit zu warten. Z.B. der interne Temperatursensor ist sehr hochohmig. Da man an den Anschluß ja nicht rankommt, muß man warten, damit die Messung durch den vorherigen Eingang nicht verfälscht wird.

#7750658
Lesenswert?

Peter D. schrieb:

Bis 10k Quellimpedanz ist der Fehler durch den S&H Kondensator zu vernachlässigen.

Das ist schlampig formuliert.

Bis 10K Quellimpedanz ist auch bei der maximal erlaubten ADC-Taktfrequenz der Fehler durch die endliche Abtastzeit kleiner als 1 LSB. Wenn man die ADC-Taktfrequenz reduzieren kann, dann gehen auch größere Quellimpedanzen.

Darüber muß man einen Pufferkondensator an den Eingang legen. Ich nehme dafür 100nF Keramik.

Das ist in dieser Allgemeinheit falsch. Das funktioniert nämlich nur, wenn man eine Gleichspannung (bzw. ein sich nur langsam änderndes Signal) messen will.

#7750679
Lesenswert?

Lothar M. schrieb:

Florian schrieb:

Es war nur überraschend für mich, dass scheinbar der ADC von selber lange genug samplet.

Er samplet eben nur dann "lange genug", wenn die Anforderungen aus dem DB eingehalten werden, damit der Wandlungsfehler kleiner 1 LSB ist.

Deshalb "scheinbar".

Lothar M. schrieb:

Aber eigentlich wollte nicht zu tief einsteigen.

Du wirst da schon noch mal drüber stolpern. Und dann reicht es, wenn du weißt, wo du solche Informationen findest.

Ich habe es mal durchgelesen. Das Verhalten hätte ich erwartet. Irgendwo, vielleicht sogar im Datenblatt, stand, dass bei einem Kanalwechsel die Ladezeit länger sein kann, weil der Kondensator immer wieder umgeladen werden kann.

Vielen Dank für die Antworten. Meine Frage ist damit beantwortet.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren