Liebe Mit-Bastler, ich gebe aufgenommene Audio-Signale mit einem D/A-Wandler aus. Es klingt auch schon recht passabel, allerdings habe ich gerade bei hohen Tönen ein erhöhtes Rauschen und geringe Klangveränderung. Ich denke, es liegt daran, daß mein Ausgangssignal (siehe Anlage) noch aus einzelnen Spannungswerten besteht. Funktioniert ein Tiefpaß (R/C-Kombination) um im anliegenden Bild die "Punkte zu verbinden" oder was kann man noch mit wenig Aufwand tun? (außer jetzt die Sampling-Rate zu erhöhen, das hab ich noch vor..)
Hallo, die Samplingrate erhöhen bewirkt, das die HF-Anteile (die durch den diskreten Aufbau eines D/A-Wandlers entstehen) noch hochfrequenter werden, und somit dein nachgeschaltetes Tiefpassfilter einfacher "gestrickt" sein kann, da höhere Frequenzen stärker gedämpft werden. Ich denke also, dass da ein Tiefpass 2. Ordnung reichen müsste.
Du brauchst einen Filter. Die eintscheidende Frage ist nur, was für einer. Ein Filter erster Ordnung macht 6 dB pro Oktave bzw. knapp 20 dB pro Dekade. Eine Okatve ist eine Verdoppelung der Frequenz, und eine Dekade ist das Zehnache. 20 dB Spannungsdämpfung ist der Faktor 1/10. D.h., wenn Du einen Filter erster Ordnung hast, den Du auf eine Eckefrequenz von z.B. 10 kHz dimensionierst, und nun auf diesen Filter ein Sinussignal mit 100 kHz und 10 Volt Amplitude gibst, hast Du am Ausgang immer noch eine Amplitude von 1 Volt. Ergo: Ein Filter erster Ordnung ist ziemlich schwächlich. Ein Filter 2. Ordnung ist auch nicht viel besser: Grenzfrequenz z.B. 10 kHz. Pro Oktave macht ein Filter zweiter Ordnung 12 dB, das ist ziemlich genau ein Spannungsfaktor von 0,25. D.h. wenn Du nun auf einen solchen Filter 20 kHz mit 10 Volt Amplitude anlegst, hast Du am Ausgang immer noch 2,5 Volt. Ergo: Auch ein Filter 2. Ordnung ist nicht sehr doll. Du brauchst mehr. Wieviel mehr, kannst Du Dich an der D/A-Auflösung orientieren. 8-Bit D/A entspricht etwa 48 dB. D.h. der Filter sollte die Sampling-Frequenz mit rund 48 dB Filtern. Wenn Du nun nach Nyquist gehst, und Deine höchste Signalfrequenz knapp unter der Hälfte der Samplingfrequenz liegt, hast Du praktisch eine Oktave zu Verfügung. D.h. 48 dB / 6 dB pro Oktave = 8. Ordnung. Also brauchst Du einen Filter mit 8. Ordnung oder besser. Bei dieser Dimensioniereung entspricht die Amplitude der Samplingfrequenz nur noch dem Rauschen des LSB. Für viele Anwendungen ist das mehr als genug, und man kann in der Praxis oft einen etwas schlechteren Filter wählen. Schneller zu Erfolg kommt man aber, wenn Oversampling betreibt. Dann hat man ein wesentlich breiteres Frequenzband als eine Okave für die Filterdimensionierung zur Verfügung. Ein anderer Trick ist es, die Grenzfrequenz des Filters etwas mehr in den Signalfrequenz-Nutzbereich zu verschieben, und vor der D/A-Wandlung die höheren Frequenzen entsprechend zu verstärken. Dann geht einem in den hohen Frequenzen Dynamik verloren, dafür wird der Ausgangsfilter einfacher. In der Praxis stört der Dynamikverlust in den hohen Frequenzen oft nicht.
Danke für die Antworten! Wenn ich das mit dem Oversampling richtig verstanden habe, dann sollte ich z.B. die Ausgabefrequenz verdoppeln, und zwischen 2 "echten" Ausgabewerten den Mittelwert dieser beiden ausgeben? (Das würde mir plausibel erscheinen) Na mal sehen, ob das mein uC noch schafft, sonst nehme ich halt einen zweiten nur dafür.. :-)
@papa: Das kannst Du so machen, obwohl das mit dem Mittelwert keine sehr saubere Lösung ist. Normalerweise wird nach dem Oversampling erst korrekt digital gefiltert um die "Nicht-Oversampling-Frequenz" zu entfernen. Digital kann man sehr gut filtern, wenn der Prozessor entsprechend Rechenkraft hat. Die Mittelwertbildung ist auch ein Filter, aber eben nur wieder ein relativ schlechter. Aber zum experimentieren sicher mal geeignet. Wie groß die Störungen durch die Mittelwertbildung sind, kann ich Dir im Moment nicht sagen. Das müsste ich erstmal nachlesen (wenn es irgendwo in meinen Büchern steht) oder ausrechnen. Aber diese Störungen werden ja wieder durch den Filter gedämpft. Zwar nicht so stark wie die PWM-Frequenz selbst, aber je nach Größe der erzeugten Störung ausreichend.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.