Sunteți pe pagina 1din 8

Reprezentarea in frecventa a unui semnal

F
S (t )
S( f ) =

s(t ) e

j 2ft

dt

%plotspec(x,Te) traseaza
esantionat cu perioada Te

grafic

spectrul

semnalului

function plotspec(x,Te)
N=length(x);
t=Te*(1:N);
f=((-1)*N/2:N/2-1)/(Te*N);
fx=fft(x(1:N));
fxs=fftshift(fx) ;

%vectorul timp
%vectorul frecventa
%transformata Fourier
%discreta rapida
%deplaseaza vectorul spectru
%cu mijlocul intervalului in
%origine

subplot(2,1,1)
plot(t,x)
xlabel(secunde) ;
ylabel(amplitudine);
subplot(2,1,2)
plot(f,abs(fxs))
xlabel(frecventa);
ylabel(modul);

Spectrul unui semnal dreptunghiular

f=10;
T=2;
Te=1/1000;
t=Te:Te:T
x=sign(cos(2*pi*f*t));
plotspec(x,Te)
Spectrul unui semnal zgomotos

%programul 1
T=1;
Te=1/10000;
x=randn(1,T/Te) ;
plotspec(x,Te)

%frecventa semnalului
%dreptunghilar
%intervalul de timp
%perioada de esantionare
%timpul
%semnal dreptunghiular
%spectrul semnalului

Chestiuni de studiat
1. Folosind primul program pentru a observa relatia dintre descrierile semnalului in
timp si frecventa (se poate utiliza posibilitatea Matlabului de a face zoom)
a. Incercati semnale dreptunghiulare cu diferite frecvente : f=20, 40, 100,
300 ; Cum se modifica reprezentarea in timp a semnalului? Dar in
frecventa?
b. Incercati semnale dreptunghiulare de diferite lungimi de intervale T=1, 10,
100 sec. Cum se modifica spectrul in fiecare caz?
c. Incercati diferite perioade de esantionare, Te=1/100, 1/10.000 secunde.
Cum se modifica spectrul in fiecare caz ?

2. Cum sunt rezultatele obtinute comparativ cu cele obtinute in laboratorul precedent,


cand s-a calculat RMS-ul unui semnal dreptunghiular.
3. Modificati primul program pentru a reprezenta spectrul urmatoarelor semnale:
a) un impuls exponential s (t ) = e t
b) un impuls exponential scalat s (t ) = 5e t
c) un impuls gaussian s (t ) = e t
d) sinusiodele s (t ) = sin(2ft + ) pentru f=20, 100, 1000 si =0, / 4 , / 2
2

Spectrul unui semnal armonic:


%program 2
f=10;
%frecventa
%faza
=0;
T=2;
Te=1/100;
t=Te:Te:T;
x = cos(2ft + ) ;
plotspec(x,Te);

Chestiuni de studiat:
4. Modificati codul din programul anterior pentru a reprezenta spectrul unui semnal
cosinusoidal:
a) pentru diferite frecvente f=1, 2, 20, 30 Hz
b) pentru diferite faze =0, 0.1, / 8 , / 2
c) pentru diferite perioade de esantionare
Te=1/10, 1/1000, 1/100.000
5. Fie xi (t ) = cos(2f i t ) cu i=1:3 si f1=10, f2=18, f3=33. Iar x(t)=x1(t)+0.5*x2(t)+2*x3(t)
Reprezentati spectrul lui x(t)

Ce proprietate a transformatei Fourier este ilustrata aici ?


6. Reprezentati spectrul unui semnal sinusoidal cand :
a) este o functie de timp ( (t ) = 10t )

b) este o functie de timp ( (t ) = t 2 )


c) f este o functie de timp (f(t)=sin(2 t) )
d) f este o functie de timp (f(t)= t 2 )
Filtre liniare

N- ordinul filtrului.
h[n] este functia pondere a sistemului si este un raport de doua polinoame. Atunci cand
numitorul este 1, filtrul are raspuns finit la imuls (FIR).
Filtrarea (convolutia) este realizata de functia filter.
y=filter(b,a,x);
cu x,y, a si b din schema de mai sus.
Un mod de a proiecta filtre este functia firpm, exemplificata in figurile de mai jos pentru
filtru trece-jos (FTJ), trece-sus (FTS) si trece-banda (FTB).

Alegerea ordinului N. In figurile de mai jos este ilustrata influenta lui N asupra filtrului.
S-a utilizat unealta FDATool din Matlab.
Pentru N=10 (ordin mic) se observa o atenuare minima de 17dB. Cu cat scade practic
amplitudinea in cazul acesta? -17dB=(-20+3)->1/100x2=1/50. Practic puterea scade de
50 de ori iar amplitudinea de 50 =7 ori. Cu alte cuvinte, filtrul este foarte departe de a fi
ideal.
Pentru N=100 (ordin mare) se observa o atenuare minima de 85dB. Cu cat scade
amplitudinea in cazul acesta? -85dB=-70 (-3)x5->1/107 x1/25 ~ 1/107x1/30 aproximativ
3x10-8. Astfel puterea scade de aproximativ 3x108 ori, iar amplitudinea de 17000 ori
(3x104 ). Filtrul obtinut are o atenuare buna.
Concluzia este ca N e bine sa fie cat mai mare pentru un filtru cu profil bun (atenuare
buna, amplifcare constanta, panta mare) si cat mai mic pentru putine calcule (pentru
fiecare esantion de iesire se fac N inmultiri).

Filtrarea unui semnal zgomotos


%programul 3
T=3;
Te=1/10000;
x=randn(1,T/Te);
figure (1);
Plotspec (x,Te);
b=firpm(100,[0 0.2 0.21 1],[1 1 0 0]);
ytj=filter (b,1,x);
figure (2);
Plotspec (yty,Te);
b=firpm(100,[ 0 0.24 0.26 0.5 0.51 1],[0 0 1 1 0 0]);
ytb=filter (b,1,x);
figure (3);
Plotspec (ytb,Te);
b=firpm (100,[0 0.74 0.76 1],[0 0 1 1]);
yts=filter (b,1,x);
Figure (4);
Plotspec (yts,Te);
Chestiuni de studiat
7.

Modificati calculul anterior pentru a crea filtre care :


a. lasa sa treaca toate frecventele mai mari de 500Hz
b. lasa sa treaca toate frecventele mai mici de 300Hz
c. neglijeaza toate frecventele intre 1500 si 2500 Hz

8.

Schimbati perioada de esantioare la Te=1/20000


Reproiectati cele 3 filtre de la problema 7.

9.
Fie x1(t) o cosinusoida de frecv f=800, x2(t) o cosinusoida de frecv f=2000, x3(t)
o cosinusoida de frecv f=4500
Iar x(t)=x1(t)+0.5x2(t)+2*x3(t).
Folositi x(t) ca intrarea in programul 3.
Explicati rezultatele
Esantionarea
Probabil s-a observat ca se modifica axa frecventelor cand se schimba perioada de
esantionare?
Ce se intampla cand frecv semnalului este mult prea mare comparativ cu frecv de
esantionare?
Reprezentarea devine ambigua. Acest fenomen se numeste aliere si este simulat in
continuare.

Chestiuni de studiat
10. Modificati codul si programul 2 cu Te = 1/100 si reprezentati spectrul cosinusoidei
cos(2ft) cand f = 30, 40, 49,50, 51, 60 Hz. Care dintre acestea manifesta aliere?
11. Creati o cosinusoida cu frecventa 50 Hz. Reprezentati spectrul cand acest semnal este
esantionat la Te = 1/50, 1/90, 1/100, 1/110, 1/200.
Care dintre acestea manifesta aliere ?
Neliniaritati statice
12. Modificati codul si programul 2 cu Te = 1/1000 si reprezentati spectrul semnalului de
iesire y(t) al unui bloc de ridicare la patrat, cand intrarea este
a. x(t) = cos(2ft) pentru f = 100Hz
b. x(t) = cos(2f1t) + cos(2f2t) pentru f1 = 100Hz si f2 = 150Hz
c. o secventa de zgomot filtrata cu spectrul nenul intre f1 = 100Hz si f2 = 300Hz
Indicatie: se genereaza intrarea pe baza programului 3
d. puteti aplica componenta continua mare?
13. Incercati diferite valori pentru f1 si f2 in problema de mai sus. Puteti anticipa ce
frecvente vor aparea la iesire? Cand este alierea o problema?
14. Presupunand ca iesirea unui bloc neliniar este y (t ) = g ( x(t )) unde
1, x(t ) > 0
g (t ) =
1, x(t ) 0
Este un cunatizor ce scoate +1 pentru o intrare pozitiva si -1 pentru o intrare negative.
Reprezentati spectrul iesirii cand intrarea este :
a. x(t ) = cos(2t ), = 100 Hz
b. x(t ) = cos(21t ) + cos(2 2 t ),1 = 100, 2 = 150
15. Presupunand ca iesirea unui bloc neliniar cu intrarea x(t) este y (t ) = x 2 (t ),
reprezentati spectrul iesirii cand intrarea este:
a. x (t ) = cos(2t + ), = 100 Hz , = 0.5

b. x(t ) = cos(21t ) + cos(2 2 t ),1 = 100, 2 = 150Hz


c. x(t ) = cos(21t + ) + n(t ), 1 = 100, = 0.5 ,iar n(t) este un zgomot alb.
Neliniaritate generala de modulatiie de produs
% program 4
T=5;
Te=1/10 000;
t=Te:Te:T;
fp=1000;
sp=cos(2fpt)

%frecventa purtatoare
%semnal purtator

fi =100;
x=cos(2fit);
y=Sp.*x;
figure(1)
plotspec(Sp,Te)
figure(2)
plotspec(x,Te)
figure(3)
plotspec(y,Te)

% frecventa semnalului de intatre


%semnalul de intrare
%modulatie de produs

Chestiuni de studiat
16. Modificati codul in programul 4 pentru a reprezenta spectrul iesirii y(t) a unui bloc
modulator (cu frecventa semnalului purtator fp=1000Hz) cand :
a. intarrea este x(t)=cos(2f1t)+cos (2f2t) pentru f1=100 si f2=150Hz
b. intrarea este un semnal dreptunghiular cu frecventa fundamentala f=150Hz
c. intrarea este un semnal zgomotos cu intreaga energie sub 300Hz
d. intarea este un semnal zgomotos de banda limitata intre 2000 si 2300 Hz
e. intrarea este un semnal zgomotos cu intreaga energie sub 1500 Hz.

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