You are on page 1of 4

Postopki obdelave signalov

6. vaja – diskretna Fourierova transformacija
Tvorjenje periodičnih signale si lahko predstavljamo tako, da seštevamo harmonične signale, kjer so harmonični signali različni tako po frekvenci, kot tudi po amplitudi in fazi – predstavimo jih z različnimi fazorji: ∞ ∞ x(t ) = A0 + ∑k =1 Ak cos(2πkf 0 t + φ k ) = X 0 + ℜ ∑k =1 X k e j 2πkf 0t

{

}

Fourierova transformacija je matematični postopek, ki izračuna parametre posameznih harmoničnih komponent periodičnega signala – izračuna frekvenčni spekter signala. Pri digitalni obdelavi signalov uporabljamo posebno obliko te transformacije, ki je omejena na periodične in časovno-diskretne signale – diskretni Fourierov transform (DFT). Le tega matematično opisuje Fourierov par enačb:

W =e 2πk j n 1 N −1 N −1 − kn N x[n] = ∑k =0 X [k ]e = ∑k =0 X [k ]W N N kjer N predstavlja dolžino niza, nad katerim izvajamo diskretno Fourierovo transformacijo. Uporaba komplesnega eksponentnega signala ( X k e jω ) napeljuje na to, da so rezultat transformacije harmonične funkcije. Frekvenčni spekter je pri diskretni Fourierovi transformaciji diskreten (končno število komponent). V splošnem je rezultat Fourierove transformacije komplesen (ima realni in imaginarni del).
kn N

X [k ] = ∑n =0 x[n]e
N −1

−j

2πk n N

kn = ∑n =0 x[n]W N N −1

−j

2π N

Iz Fourierovega para vidimo, da je rezultat transformacije končno število komponent, ki so določene z delitvijo frekvenčnega prostora, ki ga dovoljuje izbrana vzorčna frekvenca. Govorimo tudi o ločljivosti diskretne Fourierove transformacije: 2π δω = N Dolžina niza torej določa spektralno komponento z namanjšo frekvenco (največjo periodo), ostale pa so celoštevilski večkratnik le-te.
kn Zapis transformacij z uporabo operatorja W N nam pomaga predstaviti diskretno Fourierovo transformacijo kot matrični operator: 0 0 0 ⎡ W N ,0 W N ,1 ... W N , N −1 ⎤ ⎢ 1,0 ⎥ v v ... ... ... ⎥ kn ⎢ WN [X 0 , X 1 ,..., X N −1 ] = [x0 , x1 ,..., x N −1 ] ⋅ ⎢ X = x ⋅ WN ... ... ... ... ⎥ ⎢ N −1,0 ⎥ ... ... W NN −1, N −1 ⎥ ⎢W N ⎣ ⎦

Posebnost, ki jo prinese uporaba diskretne Fourierove transformacije, se pokaže pri računanju konvolucije. Le ta namreč preide v krožno konvolucijo, saj se morajo dolžine vseh treh uporabljenih nizov (x[n], h[n], y[n]) ujemati. V ta namen moramo 'podaljšati' dane nize (dodamo ničle) na dolžino N = L + M − 1 , kjer sta L in M dolžini nizov x[n] in h[n], N pa dolžina niza y[n]. Računanje DFT je matematično zahteven postopek, ki pa se ga v praksi z določenimi postopki lahko poenostavi in pohitri. Takšne algoritme imenujemo hitri Fourierov transform (FFT – Fast Fourie Transform).

1.) Oblikujte in narišite naslednje značilne signale, ter njihovo DFT. Rezultat DFT je v spošnem kompleksen, zato narišite tako amplitudni kot fazni del transforma. Uporabite 8 točk signala. Matlab izvaja enega izmed algoritmov FFT, ki ga prikličete s funkcijo fft(...). Amplitudni potek dobite z uporabo funkcije abs(...), fazni potek pa z uporabo funkcije angle(...).
n = 0:7; X = fft(x); subplot(1,3,1); stem(n,x); subplot(1,3,2); stem(n,abs(X)); subplot(1,3,3); stem(n,angle(X));

a) Enotin impulz - δ [n] (x = [1,0,0,0,0,0,0,0]).
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n

b) Zamaknjen enotin impulz - δ [n − 3] (x = [0,0,0,1,0,0,0,0]). Primerjajte z rezultatom naloge a).
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n

c) Signal samih enic (x = [1,1,1,1,1,1,1,1]). Primerjajte z rezultatom naloge a).
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n

d) Tritočkovno stopnico (x = [1,1,1,0,0,0,0,0]).
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n

e) Simetrični impulz (x = [1,1,0,0,0,0,0,1]). Primerjajte z rezultatom naloge d).
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n

2.) Oblikujte in narišite navedene harmonične signale, ter njihovo DFT. Uporabite 21 točk signala. Pri risanju faze upoštevajte samo vrednosti pri tistih vzorcih, ki imajo amplitudno komponento (Matlab bo zaradi računske napake fazo prikazal tudi pri vzorcih, ki nimajo amplitudne komponente). a) Harmonični signal s periodo 21 točk (x = cos(2*pi/21*n)). Kolikšna je ločljivost DFT ?
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n

b) Harmonični signal s periodo 7 točk. Primerjajte z rezultatom naloge a).
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n

c) Harmonični signal s periodo 21 točk in fazo
signal

π

3

. Primerjajte z rezultatom naloge a).
DFT - faza 3

DFT - amplituda

2

1

0

-1

-2

-3 n n n

d) Harmonični signal s periodo 9 točk. Zakaj v spektru ne dobimo ene same komponente?
signal DFT - amplituda 3 DFT - faza

2

1

0

-1

-2

-3 n n n