Wenn ich ein zeitlich begrenztes Signal habe, sagen wir eine Sinuskurve, die nur Sekunden dauert , und ich nehme die FFT dieses Signals, sehe ich den Frequenzgang. Im Beispiel wäre dies eine Spitze bei der Hauptfrequenz der Sinuskurve.
Sagen wir jetzt, ich nehme das gleiche Zeitsignal und verzögere es um eine Zeitkonstante und nehme dann die FFT. Wie ändern sich die Dinge? Kann die FFT diese Zeitverzögerung darstellen?
Ich erkenne, dass eine Zeitverzögerung eine -Änderung im Frequenzbereich darstellt, aber es fällt mir schwer zu bestimmen, was das eigentlich bedeutet .
Ist der Frequenzbereich praktisch ein geeigneter Ort, um die Zeitverzögerung zwischen verschiedenen Signalen zu bestimmen?
fft
fourier-transform
delay
Gallamin
quelle
quelle
Antworten:
Die diskrete Fouriertransformation (DFT) , die üblicherweise durch die schnelle Fouriertransformation (FFT) implementiert wird , bildet eine Sequenz endlicher Länge von diskreten Zeitdomänenabtastwerten in eine Sequenz gleicher Länge von Frequenzdomänenabtastwerten ab. Die Abtastwerte im Frequenzbereich sind im Allgemeinen komplexe Zahlen; Sie stellen Koeffizienten dar, die in einer gewichteten Summe komplexer Exponentialfunktionen im Zeitbereich verwendet werden können, um das ursprüngliche Zeitbereichssignal zu rekonstruieren.
Diese komplexen Zahlen stellen eine Amplitude und Phase dar , die jeder Exponentialfunktion zugeordnet sind. Somit kann jede Zahl in der FFT-Ausgabesequenz wie folgt interpretiert werden:
Sie können dies folgendermaßen interpretieren: Wenn Sie x [n], das Signal, mit dem Sie begonnen haben, rekonstruieren möchten, können Sie eine Reihe komplexer Exponentialfunktionen , gewichte jedes mitX[k]=Akejϕkund summiere sie. Das Ergebnis ist genau gleich (mit numerischer Genauigkeit) zux[n]. Dies ist nur eine wortbasierte Definition der inversen DFT.ej 2 πn kN, k = 0 , 1 , ... , N- 1 X[ k ] = Akej ϕk x [ n ]
In Bezug auf Ihre Frage haben die verschiedenen Aromen der Fourier-Transformation die Eigenschaft, dass eine Verzögerung im Zeitbereich einer Phasenverschiebung im Frequenzbereich zugeordnet wird. Für die DFT ist diese Eigenschaft:
x [ n - D ] ↔ e - j 2 π k D
Das heißt, wenn Sie Ihr Eingangssignal um Abtastwerte verzögern , wird jeder komplexe Wert in der FFT des Signals mit der Konstanten e - j 2 π k D multipliziertD . Es ist üblich, dass Menschen nicht erkennen, dass die Ausgaben der DFT / FFT komplexe Werte sind, da sie oft nur als Größen (oder manchmal als Größen und Phasen) dargestellt werden.e- j 2 πk DN
quelle
Gallamin,
Dies bedeutet einfach, dass es in Ihrem FFT-Vektor einen Phasenversatz gibt. Wenn Sie Ihr (reales) Signal weiterleiten, ist Ihre Antwort komplex, sodass Sie einen Real- und einen Imaginärteil haben. Wenn Sie ihre Phase genommen haben (inverse_tangent (imag / real)), werden alle Phasen der Frequenzen angezeigt. Die Art und Weise, wie sich ihre Phasen unterscheiden, wenn Sie keine Verzögerung hatten, hängt direkt von der Verzögerung ab, die Sie in der Zeit haben.
(In matlab können Sie die Phase auch einfach durch "angle (fft_result)" ermitteln.)
Übrigens, wenn Sie eine Korrelation Ihres Signals mit Verzögerung und ohne Verzögerung durchführen und die Spitze auswählen, können Sie die Verzögerung auf diese Weise erhalten. Im Frequenzbereich werden alle Phasen Ihres Signals ohne Verzögerung von allen Signalen mit Verzögerung subtrahiert und der Durchschnitt gebildet.
quelle
quelle