Forum: Mikrocontroller und Digitale Elektronik zu großer adc offset


von christian schreiber (Gast)


Angehängte Dateien:

Lesenswert?

hallo,

ich habe in meiner schaltung einen viel größeren adc offset als im 
datenblatt angegeben und verstehe nicht ganz woher er kommen kann.
vielleicht könnt ihr mir helfen.

im anhang habe ich den logikplan angehängt.

vorweg muss ich sagen, dass es das erste mal ist, dass ich mir über 
analogentkopplung gedanken gemacht habe, daher kann es auch gut an der 
schaltung liegen, aber wie gesagt komm ich leider nicht drauf, was es 
sein kann.

ich messe auf 2 kanälen die nacheinander abgefragt werden.
als referenz benutze ich die interne 2,56v referenz des mega16.
wenn ich nun beide kanäle auf masse lege dann gibt mir der adc für beide 
kanäle den wert 6 aus (wert des ADCW registers, nur das low byte)
wenn ich mit meinem digitaloszi den entsprechenden eingang gegen den adc 
gnd messe komme ich auf 0,5mv. mein oszi is ein voltcraft 4mhz oszi und 
mir is klar, dass es nicht das beste ist(aber das beste, was ich mir als 
student leisten kann) und man auf den absoluten wert nicht ganz viel 
geben kann. aber rechnerisch bedeut der wert 6, dass ich 15mv anliegen 
haben müsste. und ich denk soweit kann ich dem oszi vertraun, dass das 
nicht der fall ist.

wenn ich die interne gnd referenz als adc eingang wähle, bekomme ich 
auch den wert 0 raus.

das layout ist so auf gebaut, dass ich einen zentralen massepunkt habe.
die in schaltplan noch vorhandene spule l2 ist auf dem board nicht 
vorhanden(hab schnell gemerkt, dass das ne dumme idee ist ;) aber ist 
noch mit drin, damit ich einen definierten übergang zwischen gnd und 
agnd habe.

wenn interesse besteht poste ich noch das layout.

ich hoffe ihr könnt mir ein paar tips geben.

gruß
christian

von Karl H. (kbuchegg)


Lesenswert?

christian schreiber schrieb:

> als referenz benutze ich die interne 2,56v referenz des mega16.

Denkst du.
Die interne Referenz des Mega16 hat alles mögliche. Wenn sie genau 2.56 
Volt hat, dann ist das höchstens Zufall.

Auf die Spannung kannst du nichts geben. Die liegt im Bereich dieser 
2.56Volt. Ihre wesentliche Eigenschaft ist es einigermassen konstant zu 
sein und nicht, exakt 2.56 Volt zu haben.

> ich hoffe ihr könnt mir ein paar tips geben.

Normalerweise nimmt man seine eigene Versorgungsspannung AVcc als 
Referenz, wenn man eine Spannung exakt messen möchte.

von Falk B. (falk)


Lesenswert?

@Karl heinz Buchegger (kbuchegg) (Moderator)

>Auf die Spannung kannst du nichts geben. Die liegt im Bereich dieser
>2.56Volt.

+/-10%

> Ihre wesentliche Eigenschaft ist es einigermassen konstant zu
>sein und nicht, exakt 2.56 Volt zu haben.

Eben. Das kann und muss man halt kalibrieren.

>Normalerweise nimmt man seine eigene Versorgungsspannung AVcc als
>Referenz, wenn man eine Spannung exakt messen möchte.

Nana, das wage ich mal zu bezweifeln. Wenn es WIRKLICH exakt sein soll 
nimmt man eine externe Spannungsreferenz. Aber auch die interne ist 
schon recht brauchbar, wenn man kalibriert.

MFG
Falk

von Karl H. (kbuchegg)


Lesenswert?

Falk Brunner schrieb:

> Nana, das wage ich mal zu bezweifeln. Wenn es WIRKLICH exakt sein soll
> nimmt man eine externe Spannungsreferenz. Aber auch die interne ist
> schon recht brauchbar, wenn man kalibriert.

:-)
Dann muss er eine Spannungsreferenz nachrüsten.
Allerdings sind seine Abweichungen schon beträchtlich. Aus den 10% ist 
er draussen.
Frage: inwieweit würdest du seiner Oszi Spannungs-Angabe in diesem 
Bereich trauen?

von Hc Z. (mizch)


Lesenswert?

Der ADC-Wert scheint ja keinen Jitter zu haben.  Dann mess mal mit einem 
Multimeter die Spannung zwischen GND am µC und Deinem Eingang.

Einiges an Deiner Schilderung ist nämlich merkwürdig.  Du sagst, Du 
legst die Eingänge auf Masse, und dennoch misst Du 5 mV.  Welche 
Eingänge?  Auf welche Masse?

Du würdest es Deinen Lesern auch leichter machen, wenn Du an passenden 
Stellen von der Shift-Taste Gebrauch machen könntest.  Schließlich bist 
Du es, der gelesen werden möchte.  Weshalb erschwerst Du das dann?  Es 
hängt durchaus von meiner Tagesform ab, ob ich mir die Mühe mache, durch 
eine solche Kleinbuchstaben-Wüste durchzusteigen.

von Bernhard R. (barnyhh)


Lesenswert?

Es dreht sich um den ADC-Offset bei Eingangsspannung "0".

Ich verstehe die folgende Bemerkung nicht ganz:
> wenn ich die interne gnd referenz als adc eingang wähle, bekomme ich
> auch den wert 0 raus.

Was ist die "interne gnd referenz"?
Was kommt denn raus, wenn ADC6 bzw ADC7 gemessen werden?

Weiter ist mir folgendes nicht ganz verständlich:
> wenn ich nun beide kanäle auf masse lege dann gibt mir der adc für beide
> kanäle den wert 6 aus (wert des ADCW registers, nur das low byte)

Wie werden die Kanäle auf Masse gelegt? Bitte die exakten Punkte 
angeben.

Bernhard

von christian schreiber (Gast)


Lesenswert?

Karl heinz Buchegger schrieb:
> Frage: inwieweit würdest du seiner Oszi Spannungs-Angabe in diesem
> Bereich trauen?

das hab ich mir auch schon gedacht. vom her gefühl her trau ich dem ding 
aber einigermaßen. ich hab noch nen anderes, etwas billigers gerät. so 
ein multimeter der top klasse. hat zwar auch rudimentäre oszi funktion, 
aber nur bis einige khz.
ich hab mal nen datenblatt gesucht, und das sagt 0,1mv auflösung fehler 
+-0.3%( 
http://www.produktinfo.conrad.com/datenblaetter/100000-124999/121750-an-02-de-Scopemeter_750.pdf
seite 21)
aber es ist halt conrad ;)

das heißt aber, ich kann an vref messen und komme auf 2,51v
mit einem adcw wert von 6 als nullpunkt offset heißt das
(2.51/1024) * 6 = 14,7mv

und nach datenblatt des messgeräts müsste man dass schon noch 
feststellen. zumindest in der größenordnung. denn vom eingangskanal auf 
den adc-masse pin bekomme ich 0.8mv

gruß
christian

von christian schreiber (Gast)


Lesenswert?

Ab jetzt auch mit großen Buchstaben :)

von christian schreiber (Gast)


Lesenswert?

Mit interner GND Referenz meine ich die Einstellung MUX4...0 = 11111
Damit wird laut Mega16 Datenblatt der ADC Wandlereingang mit dem 
(ext)GND Terminal des ADC verbunden.
So verstehe ich die Grafik 
http://www.atmel.com/dyn/resources/prod_documents/doc2466.pdf Seite 205

Da Messe ich dann komischerweise einen ADCW Wert von 0. Das heißt kein 
Nullpunkt offset.
Wenn ich aber ADC0 gegen ADC-GND mit dem ADC messe, kommen meine 6 raus 
als Lowbyte aus dem ADCW Register
Wenn ich ADC0 gegen ADC-GND-PIN mit meinem Messgerät messe, bekomme ich 
einen Wert von 0.8mV angezeigt.
Damit aber ein ADCW Wert von 6 rauskommt, müssten ja am Pin rechnerisch 
14,7mV anliegen.
Ich habe aber eben gerade nocheinmal alles nachgemessen und habe 
festgestellt, dass ich mich vermessen habe. Ich habe an den Eingängen 
jeweils einen Offset, der das verhalten erklärt. Das bedeutet es liegt 
an der Schaltung.

Bitte entschuldigt den Fehler :)

von Bernd R. (Firma: Promaxx.net) (bigwumpus)


Lesenswert?

Karl heinz Buchegger schrieb:
> Dann muss er eine Spannungsreferenz nachrüsten.
> Allerdings sind seine Abweichungen schon beträchtlich. Aus den 10% ist
> er draussen.
> Frage: inwieweit würdest du seiner Oszi Spannungs-Angabe in diesem
> Bereich trauen?

Eine nette Referenz ist immer praktisch. TL431 oder LM285 egal was...

Die Spannungsmessung mit einem Oszi ... tsetsetse

Mein 2 Jahre alter Tek (DSO) hatte auch schin 10% Abweichung und das 
liegt noch innerhalb der Spezifikationen (aus meinem Gehirn-Protokoll 
ohne Anspruch auf Richtigkeit, es war aber viel Abweichung).

Da ist ein Multimeter oft besser.

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
Noch kein Account? Hier anmelden.