Angenommen, man speist in einen VDHL-FFT-Core 128 Werte ein, dann erhält man 2x64 Frequenz/Intensitäts-Paare. Wenn die Daten aus einem ADC stammen, der mit 32kHz abgetastet wurde, müsste die Auflösung dann 32.000/128 - oder 32000/64 sein? Sinn ergibt ja eigentlich nur das erste, wobei man zu einer Auflösung von 1:250 gelangt. Wie genau ist da die Zuordnung? Heisst dass, dass der erste Wert die Bereiche 0 ... 299 Hz abdeckt und de zweite 250Hz ... 499 Hz oder muss ich das überlappend interpretieren? Nummer 0: 0,00 ... 499,99 mit Schwerpunkt bei 250 Nummer 1: 250,00 ... 749,99 mit Schwerpunkt bei 500 Nummer 1: 500,00 ... 999,99 mit Schwerpunkt bei 750 ?
:
Verschoben durch Admin
Ach ja, noch vergessen: Reicht es, die erste und die letze Nummer zu ignorieren, wenn man den Gleichanteil und das AA im oberen Bereich weg haben will?
So viel ich weis ist das bei einer FFT so das Du 32000/64 erhälst. Einige liefern auch noch den DC Anteil mit ist dann der 0 Wert
Naja, die Daten sind ja spiegelsymmetrisch und daher mehr oder weniger indentisch. Der DC-Anteil müsste meines Erachtens in der ersten Datengruppe enthalten sein, weil alle Frequenzen ab 0 enthalten sind.
Ranga Yogibaer schrieb: > Der DC-Anteil müsste meines Erachtens in der ersten Datengruppe > enthalten sein, weil alle Frequenzen ab 0 enthalten sind. Der 0. Wert enthält nicht den DC Anteil, sondern IST der DC Anteil. Ranga Yogibaer schrieb: > Nummer 0: 0,00 ... 499,99 mit Schwerpunkt bei 250 > Nummer 1: 250,00 ... 749,99 mit Schwerpunkt bei 500 > Nummer 1: 500,00 ... 999,99 mit Schwerpunkt bei 750 Nix Schwerpunkt usw. Wert 0 ist DC (Frequenz 0) Wert 1 ist 250 Hz Wert 2 ist 500 Hz usw. Die FFT ist eine Frequenzzerlegung, bei 128 Stützpunkten bekommst Du 64 Frequenzwerte. Außerdem solltest Du beachten, dass die Ergebniswerte komplexe Zahlen sind.
Wie ist es denn bei dem IP-Core mit der Genauigkeit. Normalerweise bekommt man ja immer Float oder Double Werte zurück. Wie ist des denn bei dem IP-Core?
> Der 0. Wert enthält nicht den DC Anteil, sondern IST der DC Anteil.
Wo bleiben dann die Frequenzen, die kleiner sind, als der Erstwert?
Wie bilden sich Zwischenfrequenzen ab? - Die FFT enthält ja nicht nur
die ein Freqqenz, die angegeben ist, sondern eine Bandbreite.
Frager schrieb: >> Der 0. Wert enthält nicht den DC Anteil, sondern IST der DC Anteil. > Wo bleiben dann die Frequenzen, die kleiner sind, als der Erstwert? > > Wie bilden sich Zwischenfrequenzen ab? - Die FFT enthält ja nicht nur > die ein Freqqenz, die angegeben ist, sondern eine Bandbreite. Eine DFT (Discrete Fourier Transformation) Zerlegung, von der die FFT ein Spezialfall ist, enthält keine Zwischenfrequenzen! Da möchte ich hier nicht erkären, das soll man sich im Netz nachlesen. Die Wikipedia-Seiten sind recht hochmathematisch, sicherlich finden sich auch verständlichere Darstellungen. Es ist jedenfalls so, dass man, je weniger Abtastpunkte man verwendet, umso weniger Frequenzpunkte zurückbekommt. Will man das Signalspektrum höher auflösen (mehr Frequenzpunkte) muss man die FFT länger machen.
Klaus Falser schrieb: > Eine DFT (Discrete Fourier Transformation) Zerlegung, von der die FFT > ein Spezialfall ist, enthält keine Zwischenfrequenzen! Allerdings möchte ich behaupten, dass im angesprochenen Beispiel (mit 250Hz Abstand) durchaus auch eine Frequenz mit 249,9 Hz oder gar 375Hz im Spektrum auftauchen wird...
Lothar Miller schrieb: > Klaus Falser schrieb: >> Eine DFT (Discrete Fourier Transformation) Zerlegung, von der die FFT >> ein Spezialfall ist, enthält keine Zwischenfrequenzen! > Allerdings möchte ich behaupten, dass im angesprochenen Beispiel (mit > 250Hz Abstand) durchaus auch eine Frequenz mit 249,9 Hz oder gar 375Hz > im Spektrum auftauchen wird... Lothar, deine Aussagen sind normalerweise qualifiziert, aber in diesem Fall entgeht mir der Sinn. Bei einer DFT wird ein zeitlich begrenztes Signal als Summe von Sinusschwingungen interpretiert. Die DFT liefert dazu die Koeffizienten, also Phase und Amplitude dieser Schwingungen. Bei einem Signal, das 128 Punkte lang ist, braucht man genau 64 Frequenzen + DC um das Signal exakt darzustellen und diese Frequenzen sind gleichmäßig gestaffelt. Um beim ursprünglichen Beispiel zu bleiben, 250 Hz, 500 Hz ... usw. Es gibt KEINE Zwischenfrequenzen, weil ein derart kurzer Ausschnitt nicht komplex genug ist, um aus mehr Frequenzen aufgebaut zu werden. Erst wenn man den Ausschnitt verlängert, macht es Sinn von mehr Frequenzen zu reden.
Klaus Falser schrieb: > Lothar, > deine Aussagen sind normalerweise qualifiziert, > aber in diesem Fall entgeht mir der Sinn. Ist ja auch schon gute 15 Jahre her, seit ich die letzte FFT auf einem 68332 gehackt habe, mag sein, dass mir die Terminologie nicht mehr so geläufig ist... ;-) > Bei einem Signal, das 128 Punkte lang ist, braucht man genau 64 > Frequenzen + DC um das Signal exakt darzustellen Genau das ist der Knackpunkt, denn in der "realen" Welt gibt es auch noch jede Menge "Zwischenschritte" bzw. "Zwischenfrequenzen", und diese werden nicht abgebildet... > Es gibt KEINE Zwischenfrequenzen, Das ist soweit klar, diese äquidistante Einteilung liegt in der Natur der FFT. Aber es ist einfach so, dass sich ein Signal, dessen Frequenz z.B. mit 375Hz genau zwischen zwei "Stützpunkten" (250 und 500Hz) ist, (mindestens) auf diese beiden abgebildet wird. BTW: > Bei einem Signal, das 128 Punkte lang ist, braucht man genau 64 > Frequenzen + DC um das Signal exakt darzustellen Was würde eigentlich passieren, wenn die Abtastpunkte nicht die selben Zeitabstände hätten (Jitter, ungewollt oder gewollt)?
Lothar Miller schrieb: >> Es gibt KEINE Zwischenfrequenzen, > Das ist soweit klar, diese äquidistante Einteilung liegt in der Natur > der FFT. Aber es ist einfach so, dass sich ein Signal, dessen Frequenz > z.B. mit 375Hz genau zwischen zwei "Stützpunkten" (250 und 500Hz) ist, > (mindestens) auf diese beiden abgebildet wird. Die DFT geht davon aus, dass das Signal periodisch fortgesetzt wird. Ein Signal mit 375 Hz, 32000 KHz Abtastrate, aus dem man 128 Punkte ausschneidet, lässt sich eben nicht kontinuierlich fortsetzen. An den Stoßstellen bilden sich Diskontinuitäten, die dann höhere Frequenzen erzeugen. Aber Du hast recht, man wird an 250 und 500 einen Peak bekommen. Diese Diskontinuitäten an des Stosstellen sind übrigens der Grund, warum man nicht das Signal direkt nimmt, sondern nochmals mit einem Fenster (z.B. Hamming) gewichtet. Wer probieren will, kann sich ja einmal mit einem freien Mathematikprogramm spielen. > BTW: >> Bei einem Signal, das 128 Punkte lang ist, braucht man genau 64 >> Frequenzen + DC um das Signal exakt darzustellen > Was würde eigentlich passieren, wenn die Abtastpunkte nicht die selben > Zeitabstände hätten (Jitter, ungewollt oder gewollt)? Sollte meines Wissens Rauschen erzeugen, also einen kleinen zufälligen Beitrag zu den ein einzelnen Frequenzen.
> Bei einem Signal, das 128 Punkte lang ist, braucht man > genau 64 Frequenzen + DC um das Signal exakt darzustelle Das wären 65! wo stecken die? Soweit mir bekannt, ist die FFT gespiegelt und voll symmetrisch. Die ersten 64 Werte wäre also: Frequenz 0 Frequenz 1/64 Frequenz 2/64 ... Frequenz 63/64 ab dann rückwärts Frequenz 64/64 gibt es dann nicht? > jede Menge "Zwischenschritte" bzw. "Zwischenfrequenzen", und diese > werden nicht abgebildet... Bei meinem Spektrumanalyzer ist das aber kontinuierlich, wenn ich einen Sinus drauf gebe und durch-"sweepe". Liegt es an der Auflösung und der Breitbandigkeit? Ich meine eher, dass sich das so verhält, wie bei einem Equalizer: Eine Zwischenfrequenz wird zu 0,5 oder 0,7 auf die Nachbarn verteilt. > Hamming Also erst durch das Fenster wird ein zustand erzeugt, dass die Zwischenfrequenzen vernüftig sichtbar werden?
Ranga Yogibaer schrieb: > Also erst durch das Fenster wird ein zustand erzeugt, dass die > Zwischenfrequenzen vernüftig sichtbar werden? Nein, dadurch wird ein Zustand erzeugt, dass keine (unverhofften) "Pseudofrequenzen" auftreten...
Ranga Yogibaer schrieb: >> Bei einem reellen >> Signal, das 128 Punkte lang ist, braucht man >> genau 64 Frequenzen + DC um das Signal exakt darzustelle > > Das wären 65! wo stecken die? Da DC und fs/2 reell sind (Symmetrie des Spektrums) werden die beiden Werte meistens als Real- und Imaginärteil im 1. Frequenzbin zusammengefasst. Sollte in der Dokumentation stehen.
Hallo Lothar, >> Bei einem Signal, das 128 Punkte lang ist, braucht man genau 64 >> Frequenzen + DC um das Signal exakt darzustellen > Genau das ist der Knackpunkt, denn in der "realen" Welt gibt es auch > noch jede Menge "Zwischenschritte" bzw. "Zwischenfrequenzen", und diese > werden nicht abgebildet... Der Knackpunkt liegt m. E. darin, daß Ihr Euch nicht klar darüber seid, welche Signale vorliegen. Die (kontinuierliche) Fouriertransformation transformiert Analogsignale endlicher Signalenergie in ein kontinuierliches Fourierspektrum: Wenn wir ein endlich langes Zeitfenster aus einem Analogsignal betrachten, so liegt ein Signal vor, das in dem betrachteten Zeitverlauf einen charakteristischen Verlauf hat und davor und danach exakt gleich Null ist. Die kontinuierliche Fouriertransformation enthält also an den Rändern den evtl. vorhandenen Sprung zu s(t)=0 und reproduziert den langen Bereich mit den Nullen ebenfalls. Die DFT/FFT transformiert endlich lange (nur zu diskreten Zeitpunkten definierte) Signale in ein diskretes Spektrum gleicher Länge. Im Gegensatz zur kontinuierlichen FT geht die DFT/FFT aber gerade nicht davon aus, daß das Signal am Signalrand verschwindet, sondern vielmehr, daß es sich dort periodisch wiederholt (d. h. es liegt ein anderer "Sprung" am Rand und anderer Verlauf außerhalb des betrachteten Zeitfensters vor). Die DFT/FFT und die kontinuierliche Fouriertransformation bringen dementsprechend grundsätzlich andere "Sprünge" und an den Rändern auch andere Signalverläufe(!) hervor. Nur, wenn die Signalränder nicht interessieren (weil Du beispielsweise sehr gut abtastest und lange Signale betrachtest), kannst Du diesen Einfluß vernachlässigen. >> Es gibt KEINE Zwischenfrequenzen, > Das ist soweit klar, diese äquidistante Einteilung liegt in der Natur > der FFT. Aber es ist einfach so, dass sich ein Signal, dessen Frequenz > z.B. mit 375Hz genau zwischen zwei "Stützpunkten" (250 und 500Hz) ist, > (mindestens) auf diese beiden abgebildet wird. Man möchte hier sagen "ja und nein". Ja, weil das Signal auf die Nachbarfrequenzen abgebildet wird, und nein, weil in Wirklichkeit kein Signal von 375 Hz vorliegt. Ein Signal von (exakt) 375 Hz liegt nur dann vor, wenn das Signal periodisch und somit unendlich lang ist. Bei Digitalsignalen lautet die Frage nicht: Ist das Signal unendlich lang und ist überall sinusförmig, sondern "Ist das Signal überall sinusförmig, und paßt es exakt in das Zeifenster hinein?". Paßt die Periodendauer exakt ist das Zeitfenster, das Du betrachtest, so ergänzt die DFT das Signal periodisch, und Du erhältst wie gewünscht durch die Periodisierung einen unendlich langen Sinus. Das Ergebnis ist ein Peak bei exakt 375 Hz (dieser Wert ist - ohne daß es sich um Zufall handelt - im Spektrum dann auch immer vorhanden). Wenn das Spektrum keine Koordinate f=375 Hz hat, so wird das Signal durch das Zeitfenster irgendwo mittendrin "abgeschnitten". Dieses "Abschneiden" (d. h. der damit verbundene Signalsprung an den Rändern, oder manchmal auch nur ein Sprung in der Ableitung des Signals) bewirkt, daß das Signal tatsächlich auch andere Frequenzen enthält. Meist ergibt sich durch das Abschneiden sogar ein Gleichanteil. Da die eigentliche Frequenz sich in die Nachbarfrequenzen "leckt", spricht man vom sogenannten Leakage-Effekt. > BTW: >> Bei einem Signal, das 128 Punkte lang ist, braucht man genau 64 >> Frequenzen + DC um das Signal exakt darzustellen > Was würde eigentlich passieren, wenn die Abtastpunkte nicht die selben > Zeitabstände hätten (Jitter, ungewollt oder gewollt)? Die Abtastung kannst Du Dir als Multiplikation des Signals mit einem Dirac-Kamm vorstellen. Das Spektrum des abgetasteten Signals ist dementsprechend das Spektrum des Analogsignals gefaltet mit dem Spektrum des Dirac-Kamms. Wenn die Zeitabstände des Dirac-Kamms ungleichmäßig sind, so ist das Spektrum des Dirackamms komplexer als im Idealfall. M. E. gibst Du im Signalspektrum dann andere als die "tatsächlichen" Frequenzen an. Meßtechnisch ist ein Jitter ja nichts so Ungewöhnliches. Gruß, Michael
Klaus Falser schrieb: > Es ist jedenfalls so, dass man, je weniger Abtastpunkte man verwendet, > umso weniger Frequenzpunkte zurückbekommt. Will man das Signalspektrum > höher auflösen (mehr Frequenzpunkte) muss man die FFT länger machen. Mehr Frequenzpunkte würde man aber auch durch zero-padding (zero-stuffing) erhalten, oder? @Michael, was den Leakage-Effekt betrifft, die Signalenergie müsste auf die benachbarten frequency bins aufgeteilt werden -> könnte dann durch passendes Windowing verhindert werden? Ist das auch das Problem was man als Zaunlatteneffekt bezeichnet? Bzgl. dem genauen 375 Hz Signal und dem Zeitfenster meinst du das Problem, das sich ergibt wenn das zeitlich begrenzte Signal transformiert wird und dessen Periode bei der Transformation nicht ganzzahlig im Zeitfenster liegt, hoffe ich habe das richtig verstanden.
Hallo Andi, > Klaus Falser schrieb: >> Es ist jedenfalls so, dass man, je weniger Abtastpunkte man verwendet, >> umso weniger Frequenzpunkte zurückbekommt. Will man das Signalspektrum >> höher auflösen (mehr Frequenzpunkte) muss man die FFT länger machen. > > Mehr Frequenzpunkte würde man aber auch durch zero-padding > (zero-stuffing) erhalten, oder? Ja. Es ist bloß so, daß die Nullen durchaus das Spektrum verändern. > @Michael, was den Leakage-Effekt betrifft, die Signalenergie müsste auf > die benachbarten frequency bins aufgeteilt werden -> könnte dann durch > passendes Windowing verhindert werden? > Ist das auch das Problem was man als Zaunlatteneffekt bezeichnet? Ich kenne das noch al Leckeffekt; der Begriff Zaunlatteneffekt ist mir nicht geläufig. Fenstern glättet das Spektrum, es löst aber nicht das grundlegende Problem, daß Du mit dem Spektrum im Ergebnis etwas haben willst, was Du als Zeitsignal nicht reinsteckst: - Denn ein bandbeschränktes Spektrum (egal, ob analog oder digital) sagt immer etwas über den gesamten Zeitbereich [-oo,+oo] aus. Wenn Dein Signal kürzer als unendlich lang ist, mußt Du Dich entscheiden, welche Signalform Dein Signal vor dem Starten und nach dem Beenden der Messung haben soll. Da Du das nicht wissen kannst, hast Du immer eine gewisse Unbestimmtheit im Spektrum. Die Tatsache, daß bandbeschränkte Signale zeitlich unendlich lang sind, geht letztlich darauf zurück, daß die Aufbaufunktionen des Signals (die Sinus/Cosinusfunktionen) undendlich lang sind. Das Problem ist also direkt in der Begrifflichkeit und der zugrundeliegenden Transformation enthalten und kann im Rahmen des Begriffes "eine Frequenz aufweisen" nicht gelöst werden. Die Verwendung von Fensterfunktionen (Hannfenster, Gaußfenster u. ä.) ist ein pragmatischer Umgang in der Praxis. Beachte jedoch, daß Du mit den Fenstern Dein Meßsignal sogar in dem Zeitbereich, für den Dir Meßwerte vorliegen, verfälschst. Eine ähnliche Methode wie die Fensterung besteht darin, das Signal an den Signalrändern zu spiegeln, anschließend periodisch fortzusetzen und dann zu transformieren. Damit verhindert man die Signalsprünge an den Rändern, ohne sonst allzu viel zu verändern. Doch auch hier gilt: Man muß sich (willkürlich) festlegen, was vor und nach dem eigentlichen Meßsignal gewesen sein soll und beeinflußt damit das Spektrum. > Bzgl. dem genauen 375 Hz Signal und dem Zeitfenster meinst du das > Problem, das sich ergibt wenn das zeitlich begrenzte Signal > transformiert wird und dessen Periode bei der Transformation nicht > ganzzahlig im Zeitfenster liegt, hoffe ich habe das richtig verstanden. Ja. Gruß, Michael
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.