Forum: Digitale Signalverarbeitung / DSP / Machine Learning --> 64 Punkt FFT


von Christian W. (christian_83)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

vorab muss ich sagen, dass ich von der FFT wenig Ahnung habe.
Deshalb habe ich mir die Grundlagen mal ein wenig angeschaut und mit 
Excel eine 64Punkt FFT erstellt. (siehe Anhang)

Dafür habe ich mir einfach diese Matrix (Butterfly) erstellt und die 
Summenformeln aufgestellt und mit meinen Eingangswerten verrechnet.

Kann mir jemand sagen ob das so stimmen kann?

Was sagt mir der Graph nun?
Normalerweise sollte ich doch ganz links die höchste Spektrallinie 
haben, die meine Grundfrequenz repräsentiert und ein Balken weiter immer 
das Vielfache meiner Grundfrequenz.

Bei Equalizern ist es so, dass man ein festes Spektrum hat und immer die 
Balken, dessen Frequenz vorhanden sind, ausschlagen.

Aber wie sieht das bei mir aus, bzw. was muss ich umrechnen um einen 
Equalizergraph zu bekommen?

MFG

von zero_gravity (Gast)


Lesenswert?

sieht doch soweit ganz gut aus ^^

aber ganz links is nich die "höchste Spektrallinie, die deine 
Grundfrequenz repräsentiert", sondern der DC-anteil deines signals... 
also in diesem fall null! die linie an der stelle danach stellt deine 
grundfrequenz dar :P

glg
zero_gravity

von Gerhard (Gast)


Lesenswert?

Hallo

was dir bei deiner Simulation fehlt, ist, dass du keine Abtastfrequenz 
vorgegeben hast. Hättest du z.B. eine Abtastfrequenz von 1kHz, ergibt 
sich daraus eine maximale Signalfrequenz von 500 Hz, die du für die FFT 
erfassen kannst. Deine 64 Samples ergeben 32 Messpunkte, damit ergäbe 
sich eine Auflösung von 15,625 Hz.

Gerhard

von Christian W. (christian_83)


Lesenswert?

@Gerhard

Hey, danke für den Anstoß, das klingt sinnig.

Will noch mal alles zusammenfassen und wissen ob ich es richtig 
verstanden habe.

Für ein Spektrum mit X Balken benötige ich X*2 Abtastwerte.
In meinem Fall habe ich 64 Abtastwerte.
Daraus kann ich die ersten 32 Spektrumbalken berechnen, die zweiten 32 
Spektrumbalken sind gespiegelt gleich den ersten und brauch ich gar net 
erst zu berechnen.

Der höchste Balken ganz rechts repräsentiert meine größte Frequenz die 
ich darstellen kann und ist die Hälfte von der Abtastfrequenz.

Die Auflösung beträgt demnach (die Hälfte der Abtastfrequenz) / (Anzahl 
der Spektrumbalken)

Der erste Balken ist mein DC Anteil, der zweite meine Auflösung, der 
dritte meine Auflösung*2 usw.

Sagen wir in meinem Beispiel sei die Abtastfrequenz 1000Hz. Jeder Step 
ist demnach 1ms vom anderen entfernt. Die Periodendauer des Sinussignals 
ist demnach ungefähr 6 Schritte = 6ms = 166,67Hz groß.
Im Spektrum müsste das der 166,67Hz/15,625 te Balken sein
--> 10,67 = 11 = ok

Je genauer ich mir die Frequenzen im Spektrum anzeigen lassen will, 
desto mehr Abtastpunkte muss ich in die Berechnung eingehen lassen.

Kann ich das so stehen lassen ?


MFG

von Gerhard (Gast)


Lesenswert?

Hallo

ja, passt.

Gerhard

von Unit (Gast)


Lesenswert?

Da ist was faul.

Auflösung = Abtastrate / FFT-Länge

Du hast mit diese Formel verwendet, aber ein Paar Zeilen früher was 
anderes geschrieben.

von Gerhard (Gast)


Lesenswert?

Hallo Unit

deine Formel stimmt, aber nur weil sich das 1/2 2* rauskürzt. Eine FFT 
mit einer Abtastrate von 1kHz liefert nur für Signale bis 500Hz richtige 
Ergebnisse. Eine FFT mit 64 Samples liefert nur 32 Werte.

Auflösung = 500/32 oder 1000/64, das bleibt sich gleich. Von Theorie her 
ist erstres richtig.

Gerhard

von Christian W. (christian_83)


Lesenswert?

Die Simulation läuft nun wunderbar.

Wie schaut das eigentlich mit der Amplitude des Spektrums aus. Je größer 
die Amplituden im Abtastframe sind, desto höher wird ja das Spektrum.

Auf wen oder was wird denn da normiert??

von Unit (Gast)


Lesenswert?

Hallo!

1. Das stimmt nicht:

> Der höchste Balken ganz rechts repräsentiert meine größte Frequenz die
> ich darstellen kann und ist die Hälfte von der Abtastfrequenz.
>
> Die Auflösung beträgt demnach (die Hälfte der Abtastfrequenz) / (Anzahl
> der Spektrumbalken)

2.

> Auflösung = 500/32 oder 1000/64, das bleibt sich gleich.

Ja, das finde ich auch so.

> Von Theorie her ist erstres richtig.

a. Quatsch.
b. Du kannst ja die Faktoren so skalieren, wie du willst... Aber das 
macht die Sache nur komplizierter...

von Unit (Gast)


Lesenswert?

> Die Simulation läuft nun wunderbar.
>
> Wie schaut das eigentlich mit der Amplitude des Spektrums aus. Je größer
> die Amplituden im Abtastframe sind, desto höher wird ja das Spektrum.
>
> Auf wen oder was wird denn da normiert??

Z.B. bei einer kohärent abgetasteten (ganze Periodenlängen werden 
abgetastet) Sinuswelle der zur Sinuswelle gehörende Balken ist A*N/2 
groß, wo A die Amplitude der Sinuswelle und N die FFT-Länge sind.

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.