Forum: Mikrocontroller und Digitale Elektronik Verständnisfragen ADC


von Philipp (Gast)


Lesenswert?

Hallo zusammen,

ich habe kein Problem im Zusammenhang mit nem ADC. Arbeite als 
studentische Hilfskraft bei einer Firma und muss mich jetzt mit 
Microcontrollern und speziell ADC rumschlagen.

Zur Sachlage:

Ich will Spannungen messen im Bereich 0-10V. Benutze hierfür einen 
ATmega32L, der beim ADC die interne Spannungsref. auf 2.56V setzen kann.
Nun muss ich ja meine Eingangsspannung auf unter/bzw. gleich 2.56V 
begrenzen. Gibt es da elegante Möglichkeiten außer normalen 
Spannungsteiler ( Stichwort Operationsverstärker?).

Und im ADC gibt es die Möglichkeit einen Gain zu setzen. Geht das nur, 
wenn man 2 ADC-Eingänge miteinander vergleicht, oder kann man den Gain 
auch bei single ended setzen?

Mein Problem ist, dass ich bei einer Messbereichserweiterung auf 10V ja 
kleine Eingänge (z.B. 0.1V) nicht mehr wirklich voll auflöse. Am ADC 
würde ja dann nur noch 0.01V ankommen, im Vergleich zur Refspannung ist 
das ja so gering, dass der ADC da kaum mehr genau auflösen kann. Hier 
wäre halt dann der Gain-Faktor interessant.Oder muss man das dann durch 
Operationsverstärker realisieren?

Oder bleibt mir in diesem Fall nichts anderes übrig, als mittels 
Multiplexer und verschiedenen Messbereichserweiterungen je nach 
Eingangsspannung die optimalen Bereich nutze?
In diesem Fall würde ich die Funktion des ADC-Gains nicht wirklich 
verstehen, wo braucht man die dann überhaupt?

Ich hoffe, ihr könnt mir folgen und wäre sehr dankbar, wenn ihr mir 
helfen könnt.

Gruß
Philipp

von Karl (Gast)


Lesenswert?

Schonmal an operationsverstärker gedacht

von Timmo H. (masterfx)


Lesenswert?

Karl schrieb:
> Schonmal an operationsverstärker gedacht
offensichtlich schon...
Philipp schrieb:
> Gibt es da elegante Möglichkeiten außer normalen
> Spannungsteiler ( Stichwort Operationsverstärker?).

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


Lesenswert?

Ein Spannungsteiler mit guten Widerständen verfälscht das Meßergebnis 
nicht so sehr wie eine OP-Schaltung.

Ich gehe auch hin und messe bei 5V-uCs die Eingangsspannung mit dem ADC 
und nehme die Vcc als Referenz und messe auch die Vref gegen Vcc und 
bilde dann die passenden Verhältnisse.
Evtl. ist das leichter bei 5V-Spannungspegeln.

Und alles immer mitteln...

von Stefan S. (stefan2013)


Lesenswert?

Ist nur eine Idee, aber wäre da was mit einem digitalen Potentiometer 
machbar? (MCP41XXX)

von Thomas (Gast)


Lesenswert?

> Ein Spannungsteiler mit guten Widerständen verfälscht das Meßergebnis
> nicht so sehr wie eine OP-Schaltung.
Das gilt aber nur bei ganz niederohmigen Quellen, und die hat man 
selten.

Deinen zweiten Absatz verstehe ich nicht.

von Reinhard Kern (Gast)


Lesenswert?

Philipp schrieb:
> Mein Problem ist, dass ich bei einer Messbereichserweiterung auf 10V ja
> kleine Eingänge (z.B. 0.1V) nicht mehr wirklich voll auflöse.

Das ist ein rein rechnerisches Problem und hat mit der jeweiligen 
elektronischen Schaltung garnichts zu tun. Wenn dein Signal nur 1/100 
des vollen Messbereichs ist, hast du 10 Bit weniger Auflösung ganz egal 
was du unternimmst. Da hilft nur Bereichsumschaltung, manuell oder 
automatisch. Auch den genialsten Konstrukteuren von Digital-Multimetern 
ist noch nichts besseres eingefallen.

Gruss Reinhard

von Bernie (Gast)


Lesenswert?

Warum redest du nicht Klartext?

0...10 V an einen ADC mit Uref = 2,56 V über einen
Spannungsteiler zu führen ist doch erst mal OK.

Du verschweigst uns:
- Welche Auflösung brauchst du?
- Welche Belastung vertragen deine Spannungen?
- Wie schnell können sich deine Spannungen
  ändern - und wie genau muss das erfasst werden?

Ohne diese Angaben kannst du keine wirklich
hilfreichen Antworten erwarten.

von Michael K. (Gast)


Lesenswert?

@Philipp:
Deine Beschreibung hört sich etwas wirr an.
Durchatmen und die Anforderungen klar definieren das wird dann schon.

Der Gain geht nur für Dif Signale.

Was am einen Spannungsteiler nicht elegant ist, versteh ich nicht.
Warum OPs wenn Rs den Job machen ?

Ist Dein Problem das Du sowohl große (0-10V) als auch kleine (0-1V) 
Spannungen mit maximaler Auflösung sampeln willst ?

Wenn der interne 10bit AD für die benötigte Auflösung über den vollen 
Meßbereich nicht ausreicht gibt viele Möglichkeiten.

a. Externe Messbereichsumschaltung (IMHO die schlechteste Möglichkeit)
b. Oversampling um die effektive Auflösung zu erhöhen
c. Externer >>10bit (14 - ??bit) AD Wandler
d. xMega MCU verwenden, viele programmierbare Gain und Teiler am AD

Dir ist aber klar das 10V / 1024 bereits eine 10mV Auflösung ist ?

Alles das kannst Du aber in die Tonne treten, wenn Du den AD nicht 
kalibrieren kannst, bzw. in der Software zumindest die Offset-Drift 
rausrechnest.

Mit dem ATmega32L hast Du einen recht einfachen AD für recht einfache 
Aufgaben.
Überprüfe zuerst wie überhaupt Deine Anforderungen an die Messung sind.
Wenn Du nicht Sattelfest bei OP Beschaltungen bist läufst Du Gefahr Dir 
mehr Probleme einzufangen als die Sache Wert ist.
Spannungsteiler, nicht zu hochohmig, mit kleinem C am AD tut es völlig.

Leg Dir die Latte nicht zu hoch auf.
Es ist völlig normal das die angegebene prozentuale Abweichung Deiner 
Messung sich auf den max. Eingang bezieht.
+/-1% bei 10V sind dann +/-100mV, bei jeder gemessenen Spannung.
0.1V werden dann bescheiden aufgelöst es sei den es gibt die explizite 
Anforderung nach verschiedenen Meßbereichen.

Hast Du schriftliche Anforderungen, dann lese auch das was da nicht drin 
steht. Nennt sich Requirements Engineering: Baue mit minimalem Aufwand 
gerade so eben das was schwarz auf weiß gefordert (bezahlt) wird.

von Udo S. (urschmitt)


Lesenswert?

Was verstehst du unter elegant?
Möglicht kompliziert?
Möglichst universell?
Möglichst einfach?

Eigentlich ist nichts eleganter als ein Spannungsteiler, so er die 
Anforderungen erfüllt.
Bei einer Op Schaltung hast du auch nur einen Verstärker, der durch 
einen Spannungsteiler rückgekoppelt wird.

von Bastler (Gast)


Lesenswert?

Kann mich nur anschließen.

Spannungsteiler + R-C Filter wird zu 90% verwendet.
Bei 1% Widerständen passt das gut.

Beim ADC zappel sowieso immer 1-2 Bits.

Was an dieser Stelle viel bringt ist etwas oversampling.
Wird im "Regelfall" auch oft gemacht.
(gute Schritte wählen, z.B. 8 oder 16, dann geht die Berechnung auch 
fix)

von q34zhh5w (Gast)


Lesenswert?

Und wo ist Philipp?

von q34zhh5w (Gast)


Lesenswert?

Undank ist der Welten Lohn.

von Philipp (Gast)


Lesenswert?

Philipp schrieb im Beitrag #3301346:
>>Und wo ist Philipp?
>
> Sorry Leute, ihr habt doch alle zusammen nicht halb so viel Ahnung wie
> ich.
> Statt Klartext zu reden fragt ihr einer nach dem anderen nach genau den
> Details, die ich in meiner Frage genannt habe. So könnt ihr natürlich
> auch davon ablenken, dass euch das Thema zu komplex ist. Ich würde es
> auch so machen, wenn ich ohne jede Ahnung als Experte dastehen will.
>
> Das was ihr draufhabt, kann ich schon lange. Traurig, was aus diesem
> Forum geworden ist.



Also erstmal,das war ich nicht -.- Weiß nicht, wer in seinem Leben so 
wenig Freunde hat, dass im Forum andere Leute imitieren muss. Ich 
jedenfalls habe diesen Beitrag nicht verfasst. @Verfasser: Besorg dir 
Eier und benutze deinen eigenen Namen.


Zu den anderen Antworten:

Vielen Dank erstmal für die vielen Infos, musste mir noch mehr 
Hintergrundwissen anlesen, deswegen kommt die Antwort zu spät.

Externen ADC habe ich eingeplant, wollte da auf 14Bit auflösen. 
Ansonsten werde ich, wie ihr auch sagt, Spannungsteiler benutzen und 
falls wer halt niedrige Spannungen messen möchte, muss er mit einem 
höheren Fehler leben.
Die Anforderungen sind halt ADC für Wandlungen bis max. 10V. Wie gesagt, 
einfache Aufgabe, bin erst im 2. Semester :D

@Michael Knoelke
Vielen Dank da noch mal extra für die ausführliche Antwort. Hat mir sehr 
weitergeholfen. Werde mir die Tipps zu Herzen nehmen.

Gruß
Philipp

von Der Rächer der Transistormorde (Gast)


Lesenswert?

Philipp schrieb im Beitrag #3301346:
> Sorry Leute, ihr habt doch alle zusammen nicht halb so viel Ahnung wie
> ich.

ich glaube nicht das ein nicht Troll so blöde ist gleichzeitig von 
Ahnung zu reden und dermaßen dummes Zeugs abzulassen.

D

q34zhh5w schrieb:
> Und wo ist Philipp?

Wo ist der Original Phillip? Wenn er das ist tut er mir leid s.o..


Zur Problemstellung:

Philipp schrieb:
> Mein Problem ist, dass ich bei einer Messbereichserweiterung auf 10V ja
> kleine Eingänge (z.B. 0.1V) nicht mehr wirklich voll auflöse.

0,1V mit 12 Bit Aufgelöst sind 0,000024 V pro step. Ist es das was du 
brauchst? Entscheidend ist die Genauigkeit? Spezifizieren und danach den 
nötigen Wandler bzw. die Messbereiche raussuchen oder halt feststellen 
das der im uC reicht.

von Philipp (Gast)


Lesenswert?

Guck eine Antwort über dir an ;-)
Ansonsten ist das Thema soweit erstmal durch, ihr habt mir genug Infos 
gegeben, damit ich mir nen Plan überlegen kann. Dafür vielen Dank.

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.