Sunteți pe pagina 1din 13

Ministerul Educatiei al Republicii Moldova

Universitatea Tehnica a Moldovei


Facultatea Calculatoare, Informatica si Microelectronica
Catedra Microelectronica si Inginerie Biomedicala

Disciplina: PSIB

Raport
Lucrare de laborator n. 6
Analiza domeniului de frecvena a semnalelor folosind MATLAB

A efectuat:

studentul grupei ISBM-111


Stadnic Eugeniu

A verificat:

conferentiar universitar, doctor


Railean Sergiu

Chisinau 2014
Scopul lucrrii: Analiza domeniului de frecven a semnalului sinusoidal folosind MATLAB.
Noiuni teoretice.
La discretizarea semnalului continuu f(t) n orice T secunde obinem o consecutivitate de valori ale
semnalului original: fk=f(kT). Notarea vectorului n MATLAB se ncepe cu 1: x(1), x(2), . Notarea
semnalelor de obicei pornesc cu zero g0, g1, , ct i cu orice alt valoare, inclusiv negativ h -2, h-1, h0
Dac semnalele g i h conin cte 10 valori, atunci vectorii corespunztori vor conine de asemenea 10 valori:
vectorul kg va conine valorile de la 0..9 iar vectorul kh va conine valorile 2..7.
Domeniul de frecven a semnalelor poate fi reprezentat prin valori complexe care reprezint
sinusoidele ce fac parte din semnal. Algoritmul Transformrii Fourier Discrete (TFD) se folosete pentru a
transforma semnalul digital din domeniul de timp ntr-un set de puncte n domeniul de frecven. Intrarea
algoritmului TFD este un set de N valori din domeniul de timp [f k]: algoritmul modeleaz un set de N valori
complexe [Fk] care reprezint informaia despre domeniul de frecven. Dac N este un numr cu baza 2
(N=2M) atunci se folosete Transformarea Fourier Rapid (TFR).

Figura 1. Semnal discretizat cu perioada T.


Fie c un semnal digital a fost discretizat la orice T secunde, sau avem 1/T probe pe secund.
Alegerea vitezei de cuantizare se efectueaz n aa fel ca s fie eliminat suprapunerea, problem ce apare
cnd discretizarea e prea lent. Pentru a nltura aceast problem discretizarea se efectueaz cu o vitez mai
mare dect dublul frecvenei a fiecrui semnal sinusoidal. Dac avem un semnal ce conine dou sinusoide
cu frecvena 10 i respectiv 35 Hz, discretizarea se efectueaz la o frecven mai mare dect 70 Hz.
Frecvena Nyquist este egal cu jumtate din frecvena de cuantizare i reprezint limita de sus a frecvenei
care trebuie s se conin n semnalul digital.
Funcia MATLAB care transformarea TFD este fft. Aceast funcie poate fi folosit cu un sau cu dou
argumente la intrare. Dac se folosete un singur argument care este un vector ce conine un semnal n timp,
ieirea acestei funcii va fi un alt vector de acelai tip ce conine valori complexe care reprezint coninutul
de frecven a semnalului. Dac se folosesc dou argumente primul este un vector ce conine semnalul n
timp, iar al doilea argument este o valoare integr L care specific numrul de puncte a vectorului de ieire.
Dac L>N atunci L-N zerouri vor fi aplicate la sfritul semnalului n timp nainte de procesul de
transformare. Dac L<N, atunci primele L valori ale semnalului n timp vor fi folosite pentru transformare n
domeniul de frecven.

Figura 2. Modificarea semnalului la ieire n funcie de numrul de puncte a vectorului de ieire.


Valorile domeniului de frecven prin folosire fft corespund frecvenelor separate cu 1/NT Hz. Dac avem
32 de probe a semnalului n timp care a fost discretizat cu frecvena de 1000 Hz, valorile frecvenei
transformate prin fft corespund: 0 Hz, 1/0.032 Hz, 2/0.032 Hz . .Aceste valori sunt 0 Hz, 31.25 Hz, 62.5

Hz . Frecvena Nyquist este egal cu 1/2T i va corespunde cu F 16. Deci, TFD este o funcie periodic i
valorile frecvenei mai mari dect frecvena Nyquist nu reprezint informaie nou.

Mersul lucrrii.
1.1. Generm un semnal n timp, care conine 64 de probe. Pentru aceasta culegei:
N=64; T=1/128; k=0:N-1;
f=sin(2*pi*20*k*T);
plot(k,f); grid on;
xlabel('Numarul probei (k)'); ylabel('Y(t)');
title('Sinusoida cu frecventa 20 Hz, discretizata cu 128 Hz');

Semnalul f este o sinusoid cu frecvena 20 Hz discretizat cu frecvena de 128 Hz. Dac f este o singur
sinusoid, atunci coninutul de frecven va fi zero cu excepia punctului n domeniul de frecven care
corespunde 20 Hz.

Figura 3. Sinusoid cu frecvena 20 Hz discretizat cu frecvena de 128 Hz.


1.2. Pentru a determina Fk care corespunde frecvenei 20 Hz se modeleaz creterea n Hz dintre punctele
din domeniul de frecven care este 1/NT sau 2 Hz . Acum componenta cu 20 Hz va aprea la F10.
N=64; T=1/128; k=0:N-1;
f=sin(2*pi*20*k*T); F=fft(f); magF=abs(F);
plot(k,magF); grid on;
xlabel('Indecsul k'); ylabel('Modulul FFT');
title('FFT a semnalului original');

Figura 4. Componenta Fk ce corespunde frecvenei de 20 Hz.


Din figur se vede c componenta cu 20 Hz este repetat de asemenea la F54 ca o cauz a periodicitii TFD.
De asemenea vectorul k conine notaia ce corespunde semnalelor f i F.
1.3. n genere se recomand de a desena numai jumtate din valorile modulului. De asemenea este mai
convenabil de a prezenta axa x n Hz fa de indicele k. Pentru aceasta culegem programa:
N=64; T=1/128; k=0:N-1;
f=sin(2*pi*20*k*T); F=fft(f); magF= abs(F); hertz=k*(1/(N*T));
plot(hertz(1:N/2),magF(1:N/2)); grid on;
xlabel('Frecventa, Hz'); ylabel('Modulul FFT');
title('FFT a semnalul original');

Figura 5. Reprezentarea unei jumti din valorile modulului TFD.


1.4. S presupunem c frecvena sinusoidei era de 19 Hz (n loc de 20). Pasul de cretere a valorilor F k n Hz
este de 2 Hz, deci sinusoida va aprea la Fk unde k=9.5. ns k este integru i nu sunt valori la F9.5. n acest
caz sinusoida va apra la valorile vecine F9 i F10. Pentru a ilustra aceasta, culegem:
N=64; T=1/128; k=0:N-1;
f=sin(2*pi*19*k*T); F=fft(f); magF= abs(F); hertz=k*(1/(N*T));
plot(hertz(1:N/2),magF(1:N/2)); grid on;
xlabel('Frecventa, Hz'); ylabel('Modulul FFT');
title('FFT a semnalului original');

Figura 6. Componenta Fk ce corespunde frecvenei de 19 Hz.


2. Determinarea modului i fazei Transformrii Fourier.
Crem un semnal dup cum urmeaz:
t = (0:1/99:1);
% Vectorul de timp
x = sin(2*pi*15*t) + sin(2*pi*40*t); % Semnalul
% determinarea DFT, magnituda si faza secventei x
y = fft(x);
% Modelarea DFT
m = abs(y); p = unwrap(angle(y)); % Magnituda si faza
% afisarea magnitudei si fazei
f = (0:length(y)-1)*99/length(y);
% Vectorul frecventei
figure(1); plot(f,m); grid on;
title('Magnitude');
xlabel('Frecventa, Hz'); ylabel('Magnitude (modulul FFT)');
figure(2); plot(f,p*180/pi); grid on;
title('Faza'); xlabel('Frecventa, Hz'); ylabel('Faza, grade');

Figura 7. Modului Transformrii Fourier.

Figura 8. Faza Transformrii Fourier.


3. Determinarea Transformrii Fourier a impulsului dreptunghiular.
3.1. Modelm un semnal dup cum urmeaz:
A=0.75; w=0.5; Ts=0.01; T=100; t=0:Ts:T;
y=A*rectpuls(t,w);
stem(t(1:50),y(1:50)); grid on;
title('Semnal periodic in forma dreptunghiulara');
xlabel('timpul, s'), ylabel('Y(t)');

Figura 9. Impuls dreptunghiular.


3.2. Aplicm procedura fft i afim dependena modului de frecven dup cum urmeaz:
A=0.75; w=0.5; Ts=0.01; T=100; t=0:Ts:T; df=1/T; Fmax=1/Ts; f=0:df:Fmax;
y=A*rectpuls(t,w); x=fft(y); a=abs(x);
figure(1); stem(f,a); grid on;
title('Modului FFT a semnalui periodic in forma dreptunghiulara');
xlabel('Frecventa, Hz'), ylabel('Modulul FFT');
figure(2); plot(f,a); grid on;
title('Modului FFT a semnalui periodic in forma dreptunghiulara');
xlabel('Frecventa, Hz'), ylabel('Modulul FFT');

Figura 10. Dependena modului de frecven a unui impuls dreptunghiular.

Figura 11. Dependena modului de frecven a unui impuls dreptunghiular.


3.3. Aplicm procedura fftshift i afim dependena modului de frecven:
A=0.75; w=0.5; Ts=0.01; T=100; t=0:Ts:T; df=1/T;
Fmax=1/Ts; f1=-Fmax/2:df:Fmax/2;
y=A*rectpuls(t,w); x=fft(y); xp=fftshift(x); a=abs(xp);
figure(1); stem(f1,a); grid on;
title('Modului FFT a semnalului periodic in forma dreptunghiulara');
xlabel('Frecventa, Hz'), ylabel('Modulul FFT');
figure(2); plot(f1,a); grid on;
title('Modului FFT a semnalui periodic in forma dreptunghiulara');

xlabel('Frecventa, Hz'), ylabel('Modulul FFT');

Figura 12. Dependena modului de frecven a unui impuls dreptunghiular utiliznd fftshift.

Figura 13. Dependena modului de frecven a unui impuls dreptunghiular utiliznd fftshift.
3.4. Afim pe o singur dependen modulul i faza TF:
A=0.75; w=0.5; Ts=0.01; T=100; t=0:Ts:T; df=1/T;
Fmax=1/Ts; f1=-Fmax/2:df:Fmax/2;
y=A*rectpuls(t,w); x=fft(y); xp=fftshift(x);
dch=real(xp); mch=imag(xp);
plot(f1,dch,f1,mch,'k'); grid on;
title('Modulul si faza FFT a semnalului periodic in forma dreptunghiulara');
xlabel('Frecventa, Hz'), ylabel('Modulul si faza');
legend('modulul','faza');

Figura 14. Modulul i faza FFT a semnalului periodic in forma dreptunghiulara.

4. TFD a zgomotului alb.


Deseori Transformarea Fourier este utilizat pentru determinarea componentelor de frecven a semnalelor
afectate de zgomot.
4.1. Generm un proces n forma zgomotului alb:
Ts=0.01; T=50; t=0:Ts:T;
x1=rand(1,length(t));
plot(t,x1); grid on;
title('Zgomot alb'); xlabel('Timpul, s'), ylabel('X1(t)');

Figura 15. Proces n forma zgomotului alb.


4.2. Proiectm un filtru i filtrm zgomotul alb:
Ts=0.01; T=50; t=0:Ts:T;
x1=rand(1,length(t));
b=[0.2511326373 0.4977347255 0.2511326373];
y1=filter(b,a,x1);
plot(t,y1); grid on;

title('Iesirea filtrului');
xlabel('Timpul, s'), ylabel('Y1(t)');

Figura 16. Filtrarea zgomotului alb.


4.3. Reprezentm TF a zgomotului alb i spectrul densitii de putere:
Ts=0.01; T=50; t=0:Ts:T; om0=2*pi; dz=0.05; A=1; oms=om0*Ts;
df=1/T; Fmax=1/Ts; f=-Fmax/2:df:Fmax/2; dovg=length(f);
x1=rand(1,length(t));
b=[0.2511326373 0.4977347255 0.2511326373];
y1=filter(b,a,x1);
Fu1=fft(x1)/dovg; Fu2=fft(y1)/dovg;
Fu1p=fftshift(Fu1); Fu2p=fftshift(Fu2);
A1=abs(Fu1p); A2=abs(Fu2p); % modulul zgomotului si semnalul filtrat
S1=Fu1p.*conj(Fu1p)*dovg; S2=Fu2p.*conj(Fu2p)*dovg;
subplot(2,1,1); stem(f,A1); grid on;
title('Modulul zgomotului'); ylabel('Modulul FFT');
subplot(2,1,2); stem(f,S1); grid on;
title('Spectrul densitatii de putere a zgomotului');
xlabel('Frecventa, Hz');

Figura 17. TF a zgomotului alb i spectrul densitii de putere.


4.4. Repetm p. 4.4 pentru semnalele de la ieirea filtrului:
c1=fix(dovg/2)-200; c2=fix(dovg/2)+200;
subplot(2,1,1); stem(f(c1:c2),A2(c1:c2)); grid on;
title('Modulul zgomotului la iesirea filtrului'); ylabel('Modulul FFT');

subplot(2,1,2); stem(f(c1:c2),S2(c1:c2)); grid on;


title('Spectrul densitatii de putere la iesirea filtrului');
xlabel('Frecventa, Hz');

Figura 18. TF a zgomotului alb i spectrul densitii de putere la ieirea filtrului.


5. Cercetarea transformrii continue.
Din meniul MATLAB DEMO selectm Toolboxes\Signal processing\Transforms\Continuous Fourier
transform. Schimbm valoarea frecvenei de modulare i cercetm influena acesteia asupra modulului
transformrii Fourier. Salvm informaia referitor la Transformarea Fourier continua, apsnd butonul INFO
din fereastra de modelare.
Acest model interactiv permite analizarea transformrii Fourier a unui semnal continuu. n partea de sus este
o funcie continu, care reprezint un puls Gauss multiplicat sau modulat cu un semnal cosinusoidal de o
frecven concret. Aceast frecven de modulare poate fi schimbat prin intermediul unei casete de text din
partea de jos a ferestrei modelului, prin intermediul unui glisor din imediata apropiere sau interactiv prin
tragerea cu oricelul a unui punct de pe linia graficului. Amplitudinea poate fi modificat doar n mod
interactiv.
Dac analizm figurile 19-22 putem observa c variaia amplitudinii semnalului sau a modulului
transformatei Fourier nu influeneaz asupra frecvenei, fiind independente una de alta. Relaia are loc
respectiv invers: modificarea frecvenei nu duce la schimbarea amplitudinii.
La o frecven mai mic, modulul TF este cu o periodicitate mai mare, oglindirea fcndu-se n general n
regiunea frecvenelor zero. Pentru frecvene mai mari, scade aceast periodicitate.

Figura 19. FFT continuu pentru f=2.324 Hz i A=1.

Figura 20. FFT continuu pentru f=1 Hz i A=0.5.

Figura 21. FFT continuu pentru f=5 Hz i A=0.85.

Concluzii
La aceast lucrare de laborator am observat efectele discretizarii semnalului asupra transformatei
fourier a acestuia. De asemenea am vazut cum arata transformata fourier a semnalului modulat n
amplitudine. Consider c n sarcina de laborator ar trebui sa se includa cerin a de a realiza transfortama
fourier a unei sinusoide cu frecvena mai mare de Fs/2, cu frecvena Fs-delta i Fs+delta. Aceasta ne va
permite sa observm efectul de aliere. De asemenea este interesant transformata unui semnal compus din 2
sinusoide (cu frecvena F i Fs+F).

S-ar putea să vă placă și