www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Erhöhung der Auflösung des AD-Wandlers


Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

gibt es eine Möglichkeit durch Überabtasten die Auflösung eines
AD-Wandlers im Mikrocontroller zu erhöhen. Ich wollte einen Controller
mit 12bit AD einsetzen, benötige aber eine Auflösung von 16bit.

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du die Möglichkeit hast, die Referenz-Spannung(-en) zu verändern,
müsste es gehen.
Siehe auch "Mikrocontroller Kochbuch" von Andreas Roth.

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn der Wandler schön monoton ist, kann man da noch etwas
rausschlagen.

Für 2 Bits mehr sollte man mindestens 64 mal aufaddieren. Mehr als 2
Bits sollten aber kaum drin sein.


Peter

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe Interesse an dem Thema, wie kann man durch aufdadieren eine höhere
Auflösung bekommen?

12 Bit bleiben doch 12 Bit oder gibt es da einen Trick?


Bitte um Info!



Gruß

Thomas

Autor: icke (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja sicher, das aufaddieren halt.

Den Mittelwert kannst du genauer angeben, als eine Einzelmessung.

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst fast beliebig viele Bits rausholen. Der Trick dabei ist, dass
Du ein definiertes Rauschsignal auf Dein Signal geben musst.

Dieses Verfahren geht aber genau dann in die Hose, wenn Du das
Rauschsignal nicht vernüftig kontrollieren kannst oder eben noch andere
Störungen auf dem Signal hast. Dann machen die Aliasing-Effekte den
Gewinn an Auflösung durch Rauschen, Oversampling und digital filtern
wieder zu nichte.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vergesst die Nichtlinearität nicht. Zwar kann man die evtl. per Software
korrigieren, aber dazu braucht man erst einmal ein entsprechend
genaueres Referenzgerät zur Kalibrierung.

Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke soweit für die Info.
Das Problem ist wohl ein Rauschsinal zu generieren, damit das letzte
Bit toggelt und ich somit über einen Mittelwert ein genauere Ergebnis
bekomme.
Aber wie kann ich dieses Signal stabil erzeugen?

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rauschsignale erzeugt man am besten digital. Dann eben noch filtern
(teils digital, teils analog) und dann aufs Signal geben.

Naja, aber ein DSP wäre dazu wohl besser geeignet, da so ein AVR mit
dem  Erzeugen eines definierten Rauschsignals schon ziemlich gut
beschäftig wäre.

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das kann nicht gehn... nur mal so am rande bemerkt... wenn er 16bit
genauigkeit hat kannst du nicht einfach aufaddieren und hoffen, dass
deine information mehr wird... du kannst durch mittelwert-bildung nur
stochastische fehler minimieren... sprich wenn von deinen 16 bit nur
effektiv 12bit an sinnvollen informationen da sind (rest meinetwegen
rauschpegel) dann kannst du durch vernünftige mittlung unterumständen
was rausschalgen... aber wenn du nur physikalisch 12bit auflösen kannst
dann können da aber nicht auf einmal 4 bits auftauchen...

73

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Trick bei der ganzen Sache ist der gleich wie bei der
Delta-Sigma-Wandlung. Da ist der eigentlich AD-Wandler oft nur 1-Bit ,
der Rest kommt durch "spezielle Mittelwertbildung". Die
Absolutgenauigkeit wird durch das ganze nicht unbedingt erhöht, aber
die Auflösung kann schon gesteigert werden. Als Rauschsignal reicht
u.U. das Messsignal selbst, wenn dort genügend Rauschen drauf ist. Am
besten ausprobieren.

Gruß Thomas

Autor: Jan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Annahme: 12bitADC mit tatsächlich 12 richtigen Bits, Wert V0 . Ein 13.
Bit kannst du auf folgende Weise erhalten:
Du überlagerst das zu messende Signal mit einem Rauschen von +- 0,5
LSB
Dieses Signal misst du nun mehrmals, dann wird dein Messwert entweder
zwischen V0 und V0-LSB oder zwischen V0 und V0+LSB schwanken.
So hast du eine Auflösung von 13bit erreicht.

Technisch gesehen wird das zwar schwierig zu realisieren, aber
theoretisch ist es möglich.

Autor: frankieboy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas

In der Atmel Applikationsnote 121 (AVR121: Enhancing ADC resolution by
oversampling) gibt es ein Beispiel um die Auflösung des internen 10 Bit
Wandlers zu erhöhen.

Gruss

Frank

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Doch Hans, das geht. Einfach mal ein wenig Signaltheorie pauken, und
Statistik und Mathematik allgemein...

Ansonsten, man brauch auch nicht nur an einem LSB wackeln, man kann
auch mehr wackeln. Der entscheidende Punkt ist aber, wie gesagt, das
richtig gewackelt wird.

Aber das ursprüngliche Problem, dass sich mit jedem Bit der Anspruch an
die Qualität der Elektronik, in diesem Fall besonders an das Rauschen,
verdoppelt, liegt in der Natur dieser kleinen Bits.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.