Che effetto ha un ritardo nel dominio del tempo nel dominio della frequenza?


21

Se ho un segnale che è limitato nel tempo, dico una sinusoide che dura solo per secondi, e prendo la FFT di quel segnale, vedo la risposta in frequenza. Nell'esempio questo sarebbe un picco alla frequenza principale della sinusoide.T

Ora, supponiamo che prenda lo stesso segnale orario e lo ritardo di qualche costante di tempo, quindi prendo la FFT, come cambiano le cose? La FFT è in grado di rappresentare quel ritardo?

Riconosco che un ritardo rappresenta una variazione di nel dominio della frequenza, ma faccio fatica a determinare cosa significhi effettivamente .exp(-jωt)

In pratica, il dominio della frequenza è un luogo appropriato per determinare il ritardo tra i vari segnali?


1
Dipende da cosa intendi per FFT. Supponiamo che il tuo segnale originale abbia avuto campioni di tempo. Supponiamo che il ritardo sia di campioni. Così ora avete campioni con il primo essendo . Stai calcolando la FFT dei primi campioni (come prima)? dei campioni ? degli ultimi dei campioni ? La risposta dipenderà da cosa intendi per FFT ...N100N+1001000NN+100NN+100
Dilip Sarwate,

1
@Dilip Sto cercando una risposta più generale. Forse sarebbe utile una spiegazione di cosa cambierebbe in quegli scenari?
Gallamina,

1
Se si passano gli ultimi degli campioni alla subroutine FFT point, si otterrà lo stesso FFT ottenuto in precedenza. Nessuna differenza. Se passi i primi dei campioni (con i primi campioni pari a ) alla tua subroutine point FFT, otterrai cose che sono difficili da interpretare. Leggi attentamente la Risposta di @JasonR che ti dice che se i primi campioni vengono riempiti dai tuoi dati tramite uno spostamento circolare o ciclico , vedrai il ritardo riflesso nella fase dei campioni. NN+100NNN+1001000N100
Dilip Sarwate,

Risposte:


21

La trasformata discreta di Fourier (DFT) , comunemente implementata dalla trasformata rapida di Fourier (FFT) , mappa una sequenza a lunghezza finita di campioni nel dominio del tempo discreto in una sequenza di uguale lunghezza di campioni nel dominio della frequenza. I campioni nel dominio della frequenza sono in numeri complessi generali; rappresentano coefficienti che possono essere utilizzati in una somma ponderata di complesse funzioni esponenziali nel dominio del tempo per ricostruire il segnale del dominio del tempo originale.

Questi numeri complessi rappresentano un'ampiezza e una fase associate a ciascuna funzione esponenziale. Pertanto, ogni numero nella sequenza di output FFT può essere interpretato come:

X[K]=Σn=0N-1X[n]e-j2πnKN=UNKejφK

Puoi interpretarlo come segue: se vuoi ricostruire x [n], il segnale con cui hai iniziato, puoi prendere un sacco di complesse funzioni esponenziali , pondera ciascuno perX[k]=Akejϕke sommali. Il risultato è esattamente uguale (con precisione numerica) ax[n]. Questa è solo una definizione basata su parole del DFT inverso.ej2πnKN,K=0,1,...,N-1X[K]=UNKejφKX[n]

Quindi, parlando alla tua domanda, i vari tipi di trasformata di Fourier hanno la proprietà che un ritardo nel dominio del tempo si associa a uno sfasamento nel dominio della frequenza. Per il DFT, questa proprietà è:

x [ n - D ] e - j 2 π k D

X[n]X[K]
X[n-D]e-j2πKDNX[K]

Cioè, se si ritarda il segnale di ingresso di campioni, ogni valore complesso nella FFT del segnale viene moltiplicato per la costante e - j 2 π k DD . È comune che le persone non si rendano conto che le uscite di DFT / FFT sono valori complessi, perché sono spesso visualizzate solo come magnitudini (o talvolta come magnitudo e fase).e-j2πKDN

X[n]DDX[n]X[n]D


1

Gallamine,

Questo significa semplicemente che ci sarà un offset di fase nel vettore FFT. Quando trasmetti il ​​tuo (reale) segnale, la tua risposta sarà complessa, quindi avrai una parte reale e immaginaria. Se hai preso la loro fase, (inverse_tangent (imag / real)), verranno visualizzate tutte le fasi delle frequenze. Il modo in cui le loro fasi differiscono se non hai avuto alcun ritardo è direttamente correlato al ritardo che hai nel tempo.

(In matlab puoi anche ottenere la fase semplicemente "angle (fft_result)").

A proposito, se fai una correlazione del tuo segnale con ritardo e senza ritardo e scegli il picco, puoi ottenere il ritardo in quel modo. Nel dominio freq sta sottraendo tutte le fasi del segnale senza ritardo, da tutto il segnale con ritardo e prendendo la media.


2
Ci sono troppe cose lasciate non dette e non specificate in questa risposta. Mohammad sta essenzialmente assumendo uno spostamento circolare dei dati senza dirlo. Vedi la risposta (modificata) di @ JasonR per un'attenta descrizione di questo punto e il mio commento sulla domanda principale che dice che ci sono molti modi di usare la FFT e tutti danno risultati diversi
Dilip Sarwate

@DilipSarwate ha ragione, questo presuppone uno spostamento circolare dei dati. Come ha sottolineato, ci sono sottigliezze nella FFT basate sul vettore di input.
Spacey

@gallamine, posso chiederti che aspetto hanno i tuoi vettori di dati, esempio: - Signal1: [someZeros, signal, someZeros] - Signal2: [someDifferentNumberOfZeros, signal, someDifferentNumberOfZeros]
Spacey,

1

Considera il segnale peccato(ωt)ω


Ciao aman Benvenuto in Signals.SE. Potresti prenderti un po 'di tempo e formattare un po' la tua risposta? Abbiamo MathJax abilitato, che generalmente preferiamo per le equazioni. Ho fatto una rapida modifica parziale che ha alcuni esempi se non l'hai mai usata prima. Grazie per il tuo contributo, e di nuovo, benvenuto nel sito!
datageist
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.