Forum: Mikrocontroller und Digitale Elektronik Erfahrungswerte Abtastrate ATMega?


von Claude J. (berus)


Lesenswert?

Hallo Leute,

ich möchte ein Miniboard mit einem ATMega8 kaufen. Dabei soll der 
ATMega8 als AD-Wandler eingesetzt werden. Im Datenblatt des ATMega steht 
geschrieben, dass die maximal empfohlene Samplingrate bei 15kSPS und die 
maximal tragbare bei ca. 71kSPS liegt.

Ich würde gern dazu eure Erfahrungen kennen. Wie hoch habt ihr den 
ATMega schon ausgereizt (so wie ich das sehe, haben ja auch die jüngeren 
ATMegas auch nur eine Samplerate von max 71kSPS) und wie zufrieden seid 
ihr mit dem entsprechenden Wandlungsergebnisses gewesen?

Warum will ich das wissen? Ich weiß nicht, ob ich die obere 
Grenzfrequenz eines Mikrofons auf 15 oder 20kHz einstellen soll. Das 
hängt ja vor allem von der Abtastrate des ADC ab.

Jeder Erfahrungswert hilft mir weiter, um mir eine eigene Meinung zu 
bilden.

von Karl H. (kbuchegg)


Lesenswert?

Claude Juncker schrieb:

> Warum will ich das wissen? Ich weiß nicht, ob ich die obere
> Grenzfrequenz eines Mikrofons auf 15 oder 20kHz einstellen soll. Das
> hängt ja vor allem von der Abtastrate des ADC ab.

Nö, das hängt davon ab, welche Soundqualität du haben willst.
Je näher die höchste vorkommende Signalfrequenz der Nyquist-grenze kommt 
(halbe Sample-Frequenz) desto weniger hat das abgetastete mit dem 
Original zu tun.

>
> Jeder Erfahrungswert hilft mir weiter, um mir eine eigene Meinung zu
> bilden.

Lies lieber mal im Web nach, was es mit dem Shannonschen Abtasttheorem 
auf sich hat.

von Claude J. (berus)


Lesenswert?

Ich kenne das Nyquist-Shannon-Abtasttheorem. Hier der Beweis.

Die Abtastrate sollte mindestens doppelt so groß sein wie der höchste 
Frequenzanteil im Spannungssignal. Du siehst, das ist mir nicht neu.

Das ist wichtig, um eine Unterabtastung zu vermeiden bzw. eine möglichst 
unverfälschte Rekonstruktion des analogen Signals in ein digitales 
Signal zu gewährleisten.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Wenn Du Audio-Experimente machen möchtest, hältst Du es für sinnvoll, 
das mit einem ADC zu machen, der nur 10 Bit Wandlerauflösung hat?

Was die Abtastrate betrifft: Audio-CDs werden mit einer Abtastrate von 
44.1 kHz (und allerdings 16 Bit Wandlerauflösung) produziert. Daher ist 
die mögliche Abtastrate des µC weniger Dein Problem.

von Ingo (Gast)


Lesenswert?

Nimm nen XMega, 12Bit@2MS/s

von Claude J. (berus)


Lesenswert?

@Rufus:

ich hätte wohl noch dazu schreiben sollen, dass ich keine Sprache 
sondern Rauschen aufnehmen und eine Frequenzanalyse durchführen möchte. 
Deshalb stelle ich nur geringe Anforderung an die Bit Zahl des ADCs. Ich 
möchte also keine Sprache wiedergeben.
Ich meine damit, dass zwar die Genauigkeit des digitalisierten Signals 
durch einen 10Bit ADC ungenau wird, dass tut aber der genauen 
Rekonstruktion des Frequenzbereich keinen Abbruch. Sehe ich das falsch?

Wenn ich sogar Musik "nur" mit einer Abtastrate von 44.1 kHz (aber 16 
Bit ADC) digitalisiere, dann müsste die gleiche Abtastrate ja auch für 
Rauschgeräusche ausreichen. Siehst du das anders Rufus?

von Claude J. (berus)


Lesenswert?

@Ingo: du hast meine Interesse mit deinem Hinweis und den XMega geweckt. 
Den sehe ich mir mal genauer an. Hoffentlich ist der nicht teuer.

von Ingo (Gast)


Lesenswert?

Nein, ist er nicht

von Wolfgang (Gast)


Lesenswert?

Claude Juncker schrieb:
> Deshalb stelle ich nur geringe Anforderung an die Bit Zahl des ADCs.

Dann hast du erst recht das Problem, dass du z.B. Quantisierungsrauschen 
nicht von deinem Rauschsignal trennen kannst.

von Claude J. (berus)


Lesenswert?

@Ingo:

Sieht so aus als hätte ich einen neuen Favoriten für die AD-Wanldung.

@Wolfgang:

Quantisierungsrauschen? Dieser Begriff ist mir neu. Darüber muss ich 
erst recherchieren. Wenn du mir eine kurze Einführung in diese Thematik 
geben möchtest, hätte ich nichts dagegen. Falls nicht, dann ist das auch 
nicht schlimm.

@Rufus: übrigens danke für dein informativen Beitrag.

von Bernhard (Gast)


Lesenswert?

>Quantisierungsrauschen?

Das Analogsignal wird durch den Quantisierer auf ganze Werte gerundet 
(insgesamt z.b. 1024 diskrete Werte bei 10 Bit). Diese Rundungsfehler 
treten als Rauschen in Erscheinung. Je höher die "Bitzahl", desto 
geringer das Q.-Rauschen.

von Claude J. (berus)


Lesenswert?

@Bernhard: wie prägnant und verständlich deine Erklärung zum 
Q.-Rauschen. Besten Dank!

Fürs Protokoll:
Dieses Q.-Rauschen wäre also mit dem XMega geringer als beim Atmega8. 
Ein Grund mehr, den XMega statt den ATMega8 zu kaufe.

von ADuU (Gast)


Lesenswert?


von Claude J. (berus)


Lesenswert?

@ADuU: an sich sieht der gut aus. Ich hätte nur gerne eine fertiges 
Board mit nem USB Anschluss. Ich möchte das Bboard bzw. dessen ADC 
direkt mit dem PC verbinden. Der PC soll die ADC-Werte aufnehmen und 
veranschaulichen. Dennoch danke!

von ADuU (Gast)


Lesenswert?

Nein, ernsthaft, 31 Bit einigermaßen sauber und ohne große 
Rundungsfehler in den letzten paar Bits zum PC zu bringen, ist mit 
Raketenwissenschaft zu vergleichen. Schon alleine das Platinenlayout, 
sehr präzise Referenzspannung, Kenntnisse des Chips, ...
Das wird zu schwer. Außerdem zu teuer denke ich mal ;)
Ich würde 12-24 Bit ADU's nehmen, berichtigt mich, falls Unsinn, meine 
Einschätzung

von Udo S. (urschmitt)


Lesenswert?

Wenn das Ganze im Audiobereich ist und eh auf den PC soll, warum nimmst 
du dann nicht einfach den eingebautern A/D Wandler in deiner 
Soundkarte/chips.
Der ist genau dafür gemacht!

von Claude J. (berus)


Lesenswert?

@ADuU: Wolltest du deinen letzten Beitrag wirklich in diesen Thread 
posten - nichts für Ungut?

ADuU schrieb:
> 31 Bit einigermaßen sauber und ohne große
> Rundungsfehler in den letzten paar Bits zum PC zu bringen,

Das habe ich nicht vor. Habe ich das etwa vlt. implizit und 
unwissentlich angedeutet?

@Udo Schmitt:

dein Einwand ist berechtigt. Nur habe ich schon eine Mikrofon mit 
einigen Leuten aus diesem Forum konzipiert. Das will ich jetzt auch noch 
bauen. Ich wüsste jetzt nicht wie ich dieses Mikrofon hinsichtlich des 
Ausgangs analogtechnisch so gestalte, dass ich dass direkt in den PC 
Eingang für Audio hineinstecken könnte.
Außerdem ginge dadurch viel Bastelspass verloren. Aber du hast schon 
iwie Recht.

von ADuU (Gast)


Lesenswert?

Ja, den wollte ich posten. Weil ich nicht so recht verstehen mag, warum 
man für solche Aufgaben einen AtMega verwenden will, ich denke so etwas 
gehört nicht zu den primären Einsatzbereichen, und wenn der interne ADU 
zu schlechte Werte aufweist, ist das doch Zeichen genug, diesen 
Mikrocontroller nicht zu verwenden. Warum quälen, wenn es deutlich 
einfacher mit anderen Bausteinen funktioniert? Du könntest z.B. einen 
ADU extern an den Mikrocontroller anbinden.
Oder vorgefertigte Wandler mit Gehäuse, USB-Anschluss, Software, usw. 
verwenden, dir stehen alle Möglichkeiten offen. Und wenn dir diese 
Lösung zu teuer ist, kannst du immer noch auf den oben vorgeschlagenen 
XMega zurückgreifen, auch möglich.
Alles was ich sagen wollte: Quäle für dein Projekt keinen dafür gebauten 
Controller, oder bringe ihn an die Limits seiner eingebauten Features, 
sondern wähle dafür etwas, was dafür gebaut wurde, z.B. Audio-ADU's mit 
20Bit Auflösung+. Wenn du keine von den "audiophilen", dubiosen Händlern 
im Internet beziehst, werden die wohl auch nicht sehr viel teurer als 
ein XMega.

von Claude J. (berus)


Lesenswert?

ADuU schrieb:
> Ja, den wollte ich posten. Weil ich nicht so recht verstehen mag, warum
> man für solche Aufgaben einen AtMega verwenden will, ich denke so etwas
> gehört nicht zu den primären Einsatzbereichen, und wenn der interne ADU
> zu schlechte Werte aufweist, ist das doch Zeichen genug, diesen
> Mikrocontroller nicht zu verwenden.

Da gehe ich mit dir vollkommen mit.

> Warum quälen, wenn es deutlich
> einfacher mit anderen Bausteinen funktioniert? Du könntest z.B. einen
> ADU extern an den Mikrocontroller anbinden.

Damit hast du wohl Recht. Nur dazu gehört noch weiteres Know-How, 
welches ich mir noch aneignen müsste. Nicht, dass ich lernscheu bin, nur 
will ich dieses Projekt irgendwann zu Ende bringen. Versteh mich nicht 
falsch. Es macht mir Spaß daran zu arbeiten. Es ist nur so, dass man 
natürlich viele Aspekte "meines" Projektes verbessern könnte. Nur wenn 
ich alles optimiere und selbst mach, dann werde ich in absehbarer Zeit 
nicht fertig.

> Oder vorgefertigte Wandler mit Gehäuse, USB-Anschluss, Software, usw.
> verwenden,

Hast du da irgendein speziellen im Sinn?

> dir stehen alle Möglichkeiten offen. Und wenn dir diese
> Lösung zu teuer ist, kannst du immer noch auf den oben vorgeschlagenen
> XMega zurückgreifen, auch möglich.

Nach dem jetzigen Stand der Dinge sieht es wohl so aus, als würde ich 
das machen.

> Alles was ich sagen wollte: Quäle für dein Projekt keinen dafür gebauten
> Controller, oder bringe ihn an die Limits seiner eingebauten Features,
> sondern wähle dafür etwas, was dafür gebaut wurde, z.B. Audio-ADU's mit
> 20Bit Auflösung+.

Da hast du wohl Recht. Ich habe mich auch von der Idee den ATmega8 
einzubauen schon verabschiedet.

von ADuU (Gast)


Lesenswert?

Im Voraus: Ich wollte dir nichts an deinem Projekt schlechtreden, es ist 
schließlich deines.
Du kannst dich auf der Seite von TI mal schlaumachen, da gibt es 
diverse, die deinen Anforderungen entsprechen. Würde aber auf die Art 
der Ansteuerung achten, SPI/Serial ist sicher einfacher, als ihn 
parallel anzusprechen.
http://www.ti.com/lsds/ti/data-converters/precision-adc-less-10msps-products.page
Raussuchen, und dann gegebenenfalls schauen, woher du ihn beziehen 
kannst, du kennst dich da sicher besser aus als ich.
Diese fertigen Analog PC Interfaces gibt es ja als Karten, kleine 
Kästchen und USB Sticks, wobei ich dir ehrlich sagen muss, dass ich da 
kein konkretes Gerät im Kopf habe, tut mir leid, alles was ich weiß, ist 
dass die Interface Einsteckkarten richtig viel Geld kosten können...

von Claude J. (berus)


Lesenswert?

@ADuU:

danke für deinen alternative Lösungsidee. Es gilt ja grundsätzlich: je 
mehr Wege für ein Ziel, umso besser.

> Diese fertigen Analog PC Interfaces gibt es ja als Karten, kleine
> Kästchen und USB Sticks,...

Ich werde auf jeden Fall mal darüber nachdenken. Vlt. ist das ja 
latenterweise sogar die beste Lösungsvariante. Mal gucken.

von Jobst M. (jobstens-de)


Lesenswert?

Claude Juncker, langsam platzt mir der Kragen!
Dies ist nun schon der 3.Thread zu Deinem komischen 
Lichtbogengeräuschanalysator und wieder lässt Du die Leute blöd da 
stehen, weil sie nicht wissen, worum es geht.

Und ich habe Dir auch vor einem Monat schon den PCM2902 oder PCM2906 
empfohlen.
Was stört Dich daran? Du hast die Daten mit einer Abtastrate von 48kHz 
und einer Auflösung von 16-Bit direkt im Rechner - musst Dich nicht 
einmal darum kümmern, weil mittlerweile jedes OS die Dinger als 
Soundkarte erkennt und einen Treiber dabei hat. Du musst die Daten also 
nur noch mit geeigneter SW, die es auch bereits fertig gibt, auswerten.

Maaaan ...

Hier für die, die den Rest lesen wollen:
Beitrag "Signalverfälschung durch Tiefpass?"
Beitrag "Frage zum Schaltplan"


Gruß

Jobst

von isnah (Gast)


Lesenswert?

Jobst, bitte hab Verständnis mit dem "Cleverle" - Angaschierte 
Forumshelfer müssen nicht als reguläre Angestellte bezahlt werden. ;-)

von Jobst M. (jobstens-de)


Lesenswert?

isnah schrieb:
> Jobst, bitte hab Verständnis mit dem "Cleverle"

Nö!

von Pisa13 (Gast)


Lesenswert?

isnah schrieb:
> Angaschierte Forumshelfer
Was sind das denn für Dinger?

von Claude J. (berus)


Lesenswert?

@Jobst M.:

> Und ich habe Dir auch vor einem Monat schon den PCM2902 oder PCM2906
> empfohlen.
> Was stört Dich daran? Du hast die Daten mit einer Abtastrate von 48kHz
> und einer Auflösung von 16-Bit direkt im Rechner -

Das hat mir an sich auch zugesagt.

> musst Dich nicht
> einmal darum kümmern, weil mittlerweile jedes OS die Dinger als
> Soundkarte erkennt und einen Treiber dabei hat. Du musst die Daten also
> nur noch mit geeigneter SW, die es auch bereits fertig gibt, auswerten.

Das es so "einfach" ist hätte ich nicht gedacht. Ich sah einfach nur den 
PCM2902 in seiner ganzen Größe vor mir und dachte mir einfach, wie soll 
ich den denn bitte mit einem PC auf der Analogeebene verbinden und dann 
noch auf Ebene der Software richtig konfigurieren. Das mag den einen 
oder anderen von euch nicht abschrecken. Mich aber schon, da es für mich 
sehr schwierig erschien. Ich hatte ja keine Ahnung, dass es so "einfach" 
sein soll - und ich glaube auch jetzt noch nicht wirklich, dass es 
einfach für mich ist.

Ich blieb dann einfach bei der Idee mit dem uC, weil ich glaubte, 
wenigstens etwas davon zu überblicken.
Ich will dir nichts vorwerfen, dazu bin ich dir wegen deiner mir 
entgegengebrachten Hilfe zu viel schuldig - so wie einigen anderen auf 
diesem Form (namentlich nur einige wie z.B.: Helmut S., ArnoR oder 
HildeK u.v.m.). Vielleicht kannst du aber auch verstehen, dass ich mit 
diesem kommentarlosen Link zum PCM2902 nicht so viel anfangen konnten 
wie du vlt. dachtest oder es für mich besser gewesen wäre, weil mir 
einfach das Wissen dazu fehlt/fehlte.

Ich wollte dir nicht auf den Schlips treten und auch keine Schuld an 
deinem zerplatzen Kragen tragen.

Ich kann deine Standpunkt nachvollziehen. Du winkst schon mit dem 
Zaunpfahl auf die vermutlich für mich leichteste Lösung für meine 
Angelegenheit und dann bin ich schlichtweg zu blind um es als solche zu 
erkennen - sehr ärgerlich. Ich war aber nicht aus Arroganz blind, 
sondern weil ich es nicht besser wusste.

Berus

P.S.: ich verdanke dem Forum wirklich einiges

: Bearbeitet durch User
von Jobst M. (jobstens-de)


Lesenswert?

Claude Juncker schrieb:
> Das mag den einen oder anderen von euch nicht abschrecken.

Nein, wir lesen die Datenblätter. Und da kannst Du nicht böse sein, wenn 
wir von Dir erwarten, dass Du das selbst tust.

Claude Juncker schrieb:
> und ich glaube auch jetzt noch nicht wirklich, dass es einfach für
> mich ist.

Es ist einfach. Einfacher als einen ATmega8 zum laufen zu bekommen!

Einfach nach Applikation "PCM290x TYPICAL CIRCUIT CONNECTION 2" 
aufbauen.

Ach ja: Der einzige Unterschied zwischen dem PCM2902 und dem PCM2906 ist 
der Stromverbrauch, der dem USB-Host mitgeteilt wird. Der PCM2902 sagt 
100mA, der PCM2906 sagt 500mA - damit man zusätzliche Hardware an den 
USB 5V betreiben kann.

Nachzulesen im Kapitel "USB INTERFACE" in Tabelle 2


Und wenn Du das Ding dann aufgebaut hast, dann kommt jeder damit klar 
einstecken, OS rödelt, neue Soundkarte gefunden. Kann meine Mutter.
Software starten, Soundkarte auswählen, ... go!
Nur wenn Du mit Win98 oder so handtierst, brauchst Du einen Treiber für 
eine generic-USB-Soundcard ...



Gruß

Jobst

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.