Kapitel 9 frekvensanalys
Fouriertransformen För en analog signal 𝑋 𝜔 = −∞ ∞ 𝑥(𝑡)∙ 𝑒 −𝑗𝜔𝑡 𝑑𝑡 För en tidsdiskret signal 𝑋 𝑘 = 1 𝑁 ∙ 𝑛=0 𝑁−1 𝑥(𝑛)∙ 𝑒 −𝑗𝑘 Ω 0 𝑘=𝑘 ∙Ω 0
Fouriertransformens egenskaper Om vi samplar en signal med hastighet fs blir signalens Fouriertransform periodisk med perioden fs Exempel matlab
Sampling 1Hz, signal 0,2 Hz, 1,2 Hz och 0,8 Hz clear dt=1; t=0:dt:10; fs=1./dt f=.20; y=sin(2.*pi.*f.*t);hold on; plot(t,y,'rs','LineWidth',2,... 'MarkerEdgeColor','k',... 'MarkerFaceColor','r',... 'MarkerSize',10); hold off dt=.001; t=0:dt:10 plot(t,y,'--b','LineWidth',2); hold off f=1.2; plot(t,y,'--g','LineWidth',2); hold off f=-.8; plot(t,y,'--k','LineWidth',2); hold off
Samplingsteoremet För att amplitudspektrum för en samplad signal ska vara entydig (dvs användbar) måste vi införa följande restriktioner Vi analyserar endast signaler med frekvens < fs/2 VI tittar bara på intervallet 0≤𝑓< 𝑓 𝑠 2
Sampla mer än 2 gånger per period
Sampla mer än 2 gånger per period
Sampla mer än 2 gånger per period
Fast FourierTransform Om man analyserar N sampel får man ett spektrum med giltiga värden för N frekvenser jämt utspridda mellan 0 och fs
FFT clear fs=1; f=0.139; dt=1/fs; t=1:dt:97; figure(1) y=cos(2.*pi.*f.*t); plot(t,y,'--rs','LineWidth',2,... 'MarkerEdgeColor','k',... 'MarkerFaceColor','g',... 'MarkerSize',10); hold off %fft - analys figure(2) N=length(y); Y=fft(y); stem(abs(Y)); figure(3) df=fs./N; f=0:df:(N-1).*df; stem(f,abs(Y));
Fönstring clear fs=1; f=0.139; dt=1/fs; t=1:dt:97; figure(1) y=cos(2.*pi.*f.*t); N=length(y); y_funster=y.*hamming(N)' plot(t, hamming(N)');hold on plot(t,y_funster,'--rs','LineWidth',2,... 'MarkerEdgeColor','k',... 'MarkerFaceColor','g',... 'MarkerSize',10); hold off %fft - analys figure(2) Y=fft(y_funster); stem(abs(Y)); figure(3) df=fs./N; f=0:df:(N-1).*df; stem(f,abs(Y));