www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Oversampling verstehen


Autor: hahgeh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Oversampling ist doch auch dazu geeignet eine höhere Auflösung zu 
erreichen?
Wenn man z.B. immer 4 10-bit Werte addiert, erhält man eine 
resultierende Auflösung von 12 bit.
Dachte ich zumindest immer.
Aber so kann man nicht den vollen bereich von 0 bis 4095 ausschöpfen, 
denn der maximale Wert liegt bei 4*1023=4092, also etwa 11,999 bit.

Wie wird das Problem in AD-Wandlern gelöst, die ja auch manchmal intern 
die Auflösung erhöhen und trotzdem den vollen Bereich ausgeben?

VDumfG,
hahgeh

Autor: ARM-Fan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Wandler brauchen keine Probleme lösen.
Klassischer Fall von PEBCAK ;-)

10 bit sind eben 1024 mögliche Werte und nicht 1023.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ hahgeh (Gast)

>Oversampling ist doch auch dazu geeignet eine höhere Auflösung zu
>erreichen?

Ja.

>Wenn man z.B. immer 4 10-bit Werte addiert, erhält man eine
>resultierende Auflösung von 12 bit.

Nö, 11 Bit.

Und das gilt nur bis zu einem bestimmten Punkt unter der Vorraussetzung, 
dass das Messignal ein Rauschen von ca. 1..2 LSB hat. UNd man kann damit 
nicht aus einem 10 Bit Wandler einen 24 Bit Wandler machen. Das ist 
Augenwischerei.

>Dachte ich zumindest immer.
>Aber so kann man nicht den vollen bereich von 0 bis 4095 ausschöpfen,
>denn der maximale Wert liegt bei 4*1023=4092, also etwa 11,999 bit.

Akademische Details.

>Wie wird das Problem in AD-Wandlern gelöst, die ja auch manchmal intern
>die Auflösung erhöhen und trotzdem den vollen Bereich ausgeben?

Das machen AFIAK nur Sigma-Delta-Wandler. Und dort ist noch ein 
digitales Filter drin, das funktioniert anders.

MFG
Falk

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht mit Aufrunden? Alle Messungen müssten mit dem Faktor 
4095/4092 multipliziert werden, dann stimmts exakt.
Messen diese ADCs nicht erst mal intern mehr Stellen, das geht ja über 
digitale Tiefpassfilterung der Messungen? Ein 1-Bit-Wandler mit 
Oversampling hat zunächst mal mehr Stellen als nötig. 
http://de.wikipedia.org/wiki/Sigma-Delta-Wandler
Mit dem fest für 10 Bit gebauten internen ADC eines Mikrocontrollers ist 
das eben nicht gegeben.

Autor: hahgeh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Falk Brunner (falk)

>Nö, 11 Bit.

>Aufloesung_{Oversampling} = \sqrt{N} * Aufloesung_{ADC}

>Und das gilt nur bis zu einem bestimmten Punkt unter der Vorraussetzung,
>dass das Messignal ein Rauschen von ca. 1..2 LSB hat. UNd man kann damit
>nicht aus einem 10 Bit Wandler einen 24 Bit Wandler machen. Das ist
>Augenwischerei.

>>Dachte ich zumindest immer.
>>Aber so kann man nicht den vollen bereich von 0 bis 4095 ausschöpfen,
>>denn der maximale Wert liegt bei 4*1023=4092, also etwa 11,999 bit.

>Akademische Details.

Und wie wird dann das Resultat berechnet?

VDumfG,
hahgeh

Autor: sechsnullsechs (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, aufsummieren und dann schieben. Ob es nun 11, 12, oder 13 bit sind 
ist anderswo definiert. Man kann die Summe auch als 16bit wert 
darstellen. Die hintersten sind dann eben einfach Rauschen. Ich 
persoenlich habe uebrigens mit 256 Summationen 13 bit erreicht. Die 
Werte sind stabil und stetig.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ hahgeh (Gast)

>>denn der maximale Wert liegt bei 4*1023=4092, also etwa 11,999 bit.

>Und wie wird dann das Resultat berechnet?

Wie Christoph geschrieben hat, oder indem man einfach 4092 als Maximum 
in alle Formeln einsetzt. Was aber auch nicht richtig ist, denn die 
Summe der vier Messwerte muss wieder durch zwei geteilt werden, da die 
echte Auflösung nur 11 Bit beträgt. Dann kommt 2046 raus.

MFG
Falk

Autor: I_ H. (i_h)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> denn die
Summe der vier Messwerte muss wieder durch zwei geteilt werden, da die
echte Auflösung nur 11 Bit beträgt. Dann kommt 2046 raus.

Das würde mich mal interessieren. Eigentlich kommen ja, wenn man 
aufsummiert, 4*1023 verschiedene Werte raus. Welcher Wert das dann 
letztendlich wird hängt nur von der Häufigkeitsverteilung der Messwerte 
ab (zB. 3mal 500, 1mal 501 -> 2001/4 -> 500.25), nicht davon wann 
welcher Messwert kommt (also da gehen durch's Aufsummieren keine 
Informationen verloren). Und die Häufigkeitsverteilung entspricht genau 
dem Messwert.

Da fehlen dann übrigens auch die Werte bis 4096. Aus 1 mach 4 bit 
bedeutet, dass nun für jeden Wert 4 Werte zur Verfügung stehen. Also 
statt 0 dann 0, 0.25, 0.5, 0.75. Dann 1, 1.25, 1.5, 1.75 usw. Und ganz 
zum Schluss 1023, 1023.25, .5 und .75. Nur das es die letzten 3 Werte 
eben nicht gibt, 1023*4/4 gibt immernoch 1023.
Oversampling funktioniert nur mit einem statistisch gleichverteilten 
Rauschen, und damit das bei 1023.75 funktioniert müsste man auch 1024 
als Wert erfassen können, weil der Messwert eben mal drüber und mal 
drunter liegt. Da das aber nicht geht...


nochmal @Falk: Oder ist in deiner Aussage schon das Gesetz der großen 
Zahlen berücksichtigt? Dann käme das natürlich hin, bei 4 Messwerten 
besteht ja auch eine gute Wahrscheinlichkeit, dass der Messwert 4mal 
über dem realen Wert liegt, obwohl er eigentlich drunter liegt.

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.