Forum: Mikrocontroller und Digitale Elektronik AVR Bodeplotter von 1hz bis 20KHz


von Ra S. (mcfloppy)


Lesenswert?

Hallo Leute,
ich möchte gern einen einfachen Audioanalyzer bauen, der mit einem 
Sinussignal eine Audiobaugruppe durchscant und dazu einen Bodeplot 
niederschreibt.
Gibt es Leute die Interesse an diesem Projekt haben?
Sollte man DDS im AVR machen oder lieber einen dezendierten chip?
Reicht ein statischer Filter auf 20kHz abgestimmt oder lieber einen 
Variablen kurz über der aktuellen Nutzfrequenz?
Wie messe ich die Amplitude und Phase am sinnigsten?

LG Floppy

von Peter R. (pnu)


Lesenswert?

Eine AVR als DDS würde ich aus folgender Abschätzung heraus nicht 
verwenden:

Die Taktfrequenz des AVR liegt bei 16MHz, eine 24-bit Additionsschleife 
wird mindestens in 8 Takten durchlaufen. Damit wird mit 2MHz der 
Signalverlauf getaktet bzw. abgetastet.
Der Abstand ist zwar 1:100 zu den 20 kHz, aber für Messzwecke wird dann 
der Sinus schon etwas ungenau.

Und das gilt nur, wenn der AVR alleine mit der DDS-Arbeit beschäftigt 
ist.
Wenn er dazu noch Interrupts bedienen muss, ist es aus mit dem 
kontinuierlichen Signal.

Beim dezidierten DDS-IC ist die sample-Frequenz gleich der Taktfrequenz, 
also mindestens um den Faktor 10 höher.
Dazu kommt dann noch, dass DDS mit 10 oder mehr bit zu haben sind, 
während mehr als 8 bit beim AVR schwierig wird.

von Ben (Gast)


Lesenswert?

hmm interessante idee für eine sound-to-light steuerung... würde ein AVR 
sowas mit 4-5 festen frequenzband-teilen schaffen?

von Purzel H. (hacky)


Lesenswert?

Ich wuerd mal mit einem AD5932 beginnen. Der Rest ist dann nicht mehr so 
schwierig. Ein Mega32 plus etwas Analogik und gut ist

von Helmut L. (helmi1)


Lesenswert?

>Der Abstand ist zwar 1:100 zu den 20 kHz, aber für Messzwecke wird dann
>der Sinus schon etwas ungenau.


Nö. Dann hast du das Filter hinter dem DAC nicht richtig ausgelegt.
Normalerweise kann man bei DDS ein Bereich bis fc/3 sinnvoll ausnutzen 
mit einem richtig dimensonierten Filter.


Gruss Helmi

von Ra S. (mcfloppy)


Lesenswert?

Wie würdet ihr die Messwerte aufnehmen? TrueRMS oder gleichrichtspannung 
oder amplitude? Müste der Filter mitwandern? weil wenn ich starr bei 
20kHz filtere fallen da ja zig harmonische von 10Hz rein...

LG Floppy

von Purzel H. (hacky)


Lesenswert?

Wenn der DDS mit 16MHz laeuft, so ist ein 10MHz filter gut genug. Alles 
oberhalb 10MHz absaegen.

von Ra S. (mcfloppy)


Lesenswert?

So, ein DDS Sample sowie ein SigmaDSP Sample liegen hier :) Mal schaun 
was sich ergibt G

LG Floppy

von Ulrich (Gast)


Lesenswert?

Wenn man einen Bode plot (Amplitude und Phase) erreichen will, muß man 
das Signal auch wieder Phasenrichtig auswerten. Das geht am einfachsten, 
wenn man das Signal zur Anregung auch mit dem gleichen µC erzeugt und 
keinen extra DDS Chips nimmt.  Bis 20 kHz sollte die Sampling rate noch 
nicht das Problem sein, schon etwa 100 kHz sollten reichen, selbst wenn 
der Filter nicht so gut ist. Den Filter braucht man auch nicht 
umschalten, einmal fest als Tiefpass bei etwa 20-30 kHz reicht. 
Eventuelle Einflüsse des Filters, der Abtastrate und auch des ADs kann 
man durch eine Referenzmessung rausrechnen.

Man hat dabei die Wahl die Sampling rate des AD Wandlers an das Signal 
anzupassen und dann die Daten nur mit Faktore wie -1,0,1,0 zu 
multiplizieren, oder den AD immer mit hoher Rate laufen zu lassen und 
dann mit den passenden Sinus/Cosinus-Werten zu multiplizieren.

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.