Sunteți pe pagina 1din 32

MINISTERUL EDUCAŢIEI al REPUBLICII MOLDOVA

UNIVERSITATEA TEHNICĂ A MOLDOVEI

Catedra Microelectronică şi Dispozitive cu Semiconductori

Îndrumar de Laborator
la disciplina

Chişinău 2020
Elaborat dr.conf. S.Railean

2
Proiectarea şi studierea semnalelor folosind MATLAB.

Scopul lucrării: Proiectarea studierea şi semnalelor folosind


MATLAB.

Ordinea îndeplinirii lucrării de laborator


Tabelul 1
Varianta A B C D E F
1 1 1.5 2 10 15 25
2 2.5 2 1.5 10 20 35
3 1 2 1.5 15 35 25
4 2 2.5 1.5 10 35 25
5 2 1.5 1 35 25 10
6 1.5 2 2.5 10 35 25
7 1 2.5 3 35 25 10
8 3 2 1 15 25 10
9 2 2 3 20 35 10
10 3 2 2 35 25 15
11 2 3 2 25 15 25
12 3 1 3 20 15 35
13 3 3 1 35 20 10
14 1 1.5 2 35 25 15
15 2.5 2 1.5 25 15 25
16 1 2 1.5 20 15 35
17 3 1.5 3 15 25 15
18 2.5 1 1 35 15 25
19 3 2 1.5 10 15 35
20 1 1.5 3 25 5 20

3
Lucrarea de laborator N 1
Modelarea semnalelor elementare.

Eşantionarea semnalelor continue


Să se reprezinte formele de undă pentru un semnal sinusoidal continuu x t  şi varianta
sa eşantionată (în timp discret) x n  , ştiind că:
x(t )  A sin  0t  0 
Semnalul eşantionat se scrie:
x t  t  nT  x  nT   A sin  0 nT  0   A sin  2F0 nT  0  
 F   F 
 A sin  2 0 n  0   A sin  2 0 n  0 
 1/ T   Fe 
Se obţine deci:
x n  A sin  0 n  0   A sin  2f 0 n  0 
unde: 0  2f0  2F0 / Fe cu Fe  1/ T .
Deoarece t  nT şi 0  0T , rezultă:
t rad  s 
0  0   rad/eşantion
n s  eşantion
O imagine grafică sugestivă asupra corespondenţelor în frecvenţă dintre domeniile timp
continuu şi timp discret este redată în figura 1.1.

Figura 1.1

4
Desfăşurarea lucrării
Lansaţi pachetul de programe MATLAB .

1.1. Modelaţi un semnal periodic în formă dreptunghiulară folosind funcţia square:

A=1;
w0=10*pi;
rho=0.5;
t=0:.001:1;
sq=A*square(w0*t+rho);
plot(t,sq), grid, set (gca,'FontName', ...
'ArialCyr','FontSize',16)
title('Semnal periodic in forma dreptunghiulara')
xlabel('t,sec'),ylabel('X(t)'),grid

1.2. Modelaţi un semnal periodic în formă sinusoidală folosind funcţia cos, pentru
aceasta culegeţi programa:

A=4;
w0=20*pi;
phi=pi/6;
t=0:.001:1;
cosine=A*cos(w0*t+phi);
plot(t,cosine), grid, set (gca, ...
'FontName','Arial Cyr','FontSize',16)
title('Exemplu de utilizare a procedurii cos')
xlabel('timpul(s)'),ylabel('functia y(t)'),grid

1.3. Modelaţi un semnal discret în formă sinusoidală folosind funcţia cos, pentru aceasta
culegeţi programa:

A=4;
w0=20*pi;
phi=pi/6;
t=0:.005:1;
cosine=A*cos(w0*t+phi);
stem(t,cosine), grid, set (gca, ...
'FontName','Arial Cyr','FontSize',16)
title('Exemplu de utilizare a procedurii cos')
xlabel('timpul(s)'),ylabel('functia y(t)'),grid

5
1.4. Modelaţi un semnal exponenţial cu valoarea crescândă folosind funcţia exp, pentru
aceasta culegeţi programa:

B=1;
a=5;
t=0:.001:1;
x=B*exp(a*t);
plot(t,x), grid, set (gca,'FontName',...
'Arial Cyr','FontSize',16)
title('Exemplu de utilizare a procedurii exp')
xlabel('timpul(s)'),
ylabel('functia y(t)'),grid

1.5. Modelaţi un semnal care va constitui o sinusoidă modulată după funcţia lui Gaus,
folosind funcţia gauspuls, pentru aceasta culegeţi programa:

t=-10:.01:10;
y=0.75*gauspuls(t+3,1,0.5);
plot(t,y), grid, set (gca,'FontName', ...
'Arial Cyr','FontSize',16)
title('Exemplu de utilizare a procedurii gauspuls')
xlabel('timpul(s)'),ylabel('functia y(t)'),grid

1.6. Modelaţi un semnal care va constitui transformarea Fourier a unui impuls


dreptungiular cu lăţimea 2 şi înălţimea 1, folosind funcţia sinc, pentru aceasta culegeţi
programa:

t=0:.01:50;
y1=0.7*sinc(pi*(t-25)/5);
plot(t,y1), grid, set (gca,'FontName', ...
'Arial Cyr','FontSize',16)
title('Exemplu de utilizare a procedurii sinc')
xlabel('timpul(s)'),ylabel('functia y(t)'),grid

1.7. Modelaţi o cosinusoidă, frecvenţa căreia se schimbă linear cu timpul, folosind funcţia
chirp, pentru aceasta culegeţi programa:

t=0:0.001:1;
y=0.75*chirp(t);
plot(t,y), grid, set (gca,'FontName', ...
6
'Arial Cyr','FontSize',16)
title('Exemplu de utilizare a procedurii chirp')
xlabel('timpul(s)'),ylabel('functia y(t)'),grid

1.8. Modelaţi un semnal care va constitui dependenţa funcţiei Dirihlet, folosind funcţia
diric:

t=0:.01:50;
y=0.7*diric(t,4);
plot(t,y), grid, set (gca,'FontName', ...
'Arial Cyr','FontSize',16)
title('Exemplu de utilizare a procedurii diric')
xlabel('timpul(s)'),ylabel('functia y(t)'),grid

Teorema eşantionării
1.8. Să se genereze un semnal de 2 s compus din suma a două sinusoide de frecvenţe 100 Hz şi 156
Hz cu amplitudinea de 1V. Se consideră o frecvenţă de eşantionare de 256 Hz. Reprezentaţi
semnalul sumă.

t=(1:512); f1=100; f2=156;fe=256;


y=sin(2*pi*f1/fe*t)+sin(2*pi*f2/fe*t);
plot(t/fe,y); xlabel('timp (s)') ; ylabel('amplitudine (V)')

1.9. Să se genereze, să se reprezinte şi să se compare două sinusoide de frecvenţe 100 Hz şi 356 Hz


şi amplitudinea de 1V. Se consideră o frecvenţă de eşantionare de 256 Hz.

t=(1:100); f1=100; f2=356; fe=256;


y1=sin(2*pi*f1/fe*t); y2=sin(2*pi*f2/fe*t);
subplot(211); plot(t/fe,y1); ylabel('amplitudine (V)');
title('sinusoida de frecventa 100 Hz')
subplot(212); plot(t/fe,y2);
xlabel('timp (s)'); ylabel('amplitudine (V)');
title('sinusoida de frecventa 356 Hz')

7
Lucrarea de laborator N 2
Convoluţia semnalelor
Interpretarea polinomială a convoluţiei liniare şi ciclice
Operaţiile de convoluţie liniară şi ciclică, precum şi de deconvoluţie se pot interpreta prin
prisma operaţiilor cu polinoame. Să considerăm secvenţele 1D şi polinoamele asociate de mai jos:
x   x0 ,x1 ,x2   X  z   x0  x1 z  x2 z 2
h   h0 ,h1  H  z   h0  h1 z
N 1
Conform definiţiei: yn   xm hn  m . Se obţine prin urmare:
m 0

y   y0 , y1 , y2 , y3   x0 h0 , x0 h1  x1h0 , x1h1  x2 h0 , x2 h1


Aceiaşi coeficienţi pot fi obţinuţi ca urmare a produsului polinoamelor X  z  si H  z 
:


Y  z   X  z  H  z   x0  x1 z  x2 z 2  h 0  h1z  

 x0 h0   x0 h1  x1h0  z   x1h1  x2 h0  z 2  x2 h1 z 3
Funcţia MATLAB conv, pentru calculul convoluţiilor liniare 1D calculează de fapt acest
produs. De exemplu, pentru a realiza convoluţia secvenţelor x  1,2 ,3 şi h  1,1 se
utilizează:
x=[1,2,3] ; h=[1,1] ; [y]=conv(x,h)

Deconvoluţia poate fi realizată cu funcţia MATLAB deconv şi poate fi văzută ca


rezultatul împărţirii cu rest a polinoamelor Y şi X.
[q,r]=deconv(y,x)

Şi convoluţia ciclică admite o interpretare polinomială. Să considerăm secvenţele:


x   x0 ,x1  X  z   x0  x1 z, cu N  2
h   h0 ,h1  X  z   h0  h1 z
N 1
Conform definiţiei: yn   xm hn  m , se obţine:
m0

y    y0 , y1  x0 h0  x1h1 , x0 h1  x1h0 

8
Acelaşi rezultat se obţine ca rest al operaţiei polinomiale:
Y   z   X  z  H  z  mod z 2
1 , adică ca rest al împărţirii polinomului

h1 x1 z 2   h0 x1  h1 x0  z  h0 x0  2
prin z  1 . 
Un exemplu de convoluţie ciclică 1D este prezentat mai jos:

x=[1,2]; h=[3,4]; m=[1,0,-1];


[q,y]=deconv(fliplr(conv(x,h)),m)

Aceleaşi consideraţii sunt valabile şi în cazul secvenţelor 2D. Astfel, în cazul convoluţiei
liniare:

x  xn ,n 1 2 
,n1  0,1; n2  0 ,1, 2  0,1, 2 ; 3, 4,5

h   hn ,n 1 2
,n1  0 ,1; n2  0,1, 2  1,0,1;1,0,1

Modul de calcul al primelor elemente ale secvenţei 2D y  h  x este prezentat mai


jos:
1 2
y0 ,0    h0  r ,0  r xr ,r
1 2 1 2
 h0 ,0 x0 ,0  0
r1  0 r2  0
1 2
y0 ,1    h0  r ,1 r xr ,r
1 2 1 2
 h0 ,1 x0 ,0  h0 ,0 x0 ,1 0  1  1
r1  0 r2  0
1 2
y0 ,2    h0  r ,2  r xr ,r
1 2 1 2
 h0 ,2 x0 ,0  h0 ,1 x0 ,1 h0 ,0 x0 ,2  0  0  1  2  2
r1  0 r2  0

Rezultatul complet se obţine utilizând comenzile MATLAB:


x=[0,1,2;3,4,5] ; h=[1,0,1;1,0,1] ;
y=conv2(x,h)

9
Desfăşurarea lucrării
2.1 Modelaţi trei semnale periodice conform variantei-tabelului (Valorile
A,B,C,D,E,F - fiind selectate din Tabelul 1 conform numărului de
ordine din lista grupei).
t=0:.001:1;
sq=A*square(D*pi*t+pi/6);
tri=B*sawtooth(E*pi*t+pi/6);
cosine=C*cos(F*pi*t+pi/6);

2.2 Modelaţi un semnal periodic compus din suma a trei semnale conform
variantei.

sem1=sq+cosine+tri;

2.3 Afişaţi atât semnalele elementare ce au întrat în componenţa semnalului


sem1 (sq, tri, cosine) cât şi însuşi semnalul sem1 în formă continuie
şi discretă (folosind procedura plot şi stem):

sem1=sq+cosine+tri
plot(t,sq), grid, set (gca,'FontName', ...
'ArialCyr','FontSize',16)
title('Semnal periodic in forma dreptunghiulara')
xlabel('t,sec'),ylabel('X(t)'),grid
…………………………………
sem1=sq+cosine+tri
n=1:1:1001;
stem(n,sq),
grid, set (gca,'FontName', ...
'ArialCyr','FontSize',16)
title('Semnal periodic in forma dreptunghiulara')
xlabel('t,sec'),ylabel('X(t)'),grid

10
2.4 Efectuaţi convoluţia semnalului sem1 cu semnalul sq folosind procdura
conv:

c=conv(sem1,sq);
n=1:1:2001;
stem(n,c),

Afişaţi rezultatul (stem).

2.5 Calculaţi convoluţia din punctul precedent prin intermediul transformării


Fourrier inverse:

m=2001;
AE=fft(sem1,m);
BE=fft(sq,m);
y1=ifft(AE.*BE);
n=1:1:2001;
stem(n,c),

2.6 Determinaţi timpul de calcul adăugând procedurile tic şi toc:


Prin procedura conv

t=0:.001:100;
sq=1*square(10*pi*t+pi/6);
tri=1.5*sawtooth(15*pi*t+pi/6);
cosine=2*cos(25*pi*t+pi/6);
semsem1=sq+cosine+tri

11
tic;
c2=conv(semsem1,sq);
toc;
n=1:1:200001;
stem(n,c2),

(elapsed_time =

??.????)

Prin procedura fft

t=0:.001:100;
sq=1*square(10*pi*t+pi/6);
tri=1.5*sawtooth(15*pi*t+pi/6);
cosine=2*cos(25*pi*t+pi/6);
semsem1=sq+cosine+tri
m=262144;
tic;
AE=fft(semsem1,m);
BE=fft(sq,m);
Y2=ifft(AE.*BE);
toc;
n=1:1:262144;
stem(n,Y2);

(elapsed_time =

??.????)

12
Afişaţi rezultatul (stem). Observaţi diefrenţa în timp.

2.7 Calculaţi şi afişaţi (stem) eroarea determinării convoluţiei prin metoda


alternativă:

er=y1-c;
n=1:1:2001;
stem(n,er);

2.8 Repetaţi punctul 2.6 şi 2.7 pentru convoluţia semnalului semsem cu


semnalul tri şi cosine.

Afişaţi rezultatele (stem).

2.9 Determinaţi modului şi faza transformarea Fourrier rapidă a semnalului


sem

Y3=fft(sem1);
m=abs(Y3);p=unwrap(angle(Y3));% Magnituda si faza
f=(0:length(Y3)-1)*99/length(Y3);% Vectorul frecventei
plot(f,m); title('Magnitude');
set(gca,'XTick',[15 40 60 85]);
figure; plot(f,p*180/pi); title('Faza');
set(gca,'XTick',[15 40 60 85])

13
2.10 Aplicaţi procedura fftshift şi afişaţi dependenţa modului de frecvenţă:

xp=fftshift(Y3);
a=abs(xp);
df=1; Fmax=1/0.001;
f1=-Fmax/2:df:Fmax/2;
stem(f1,a)

Afişaţi rezultatele (stem).

14
Lucrarea de laborator N 3
Filtrarea digitală a semnalelor

Comenzi MATLAB pentru proiectarea FN-FIR


fir1 metoda ferestrelor
fir2 metoda ferestrelor cu caracteristică de frecvenţă prescrisă
kaiserord estimează parametrii pentru fir1 cu fereastra Kaiser
firls utilizează metoda celor mai mici pătrate
remez utilizează algoritmul Remez pentru proiectarea FIR
remezord estimează ordinul FIR pentru utilizarea algoritmului Remez
fircls utilizează metoda celor mai mici pătrate cu constrângeri
fircls1 utilizează metoda celor mai mici pătrate pentru FTJ şi FTS
cremez proiectează FIR cu fază neliniară echiriplu
firrcos proiectează un FIR cu caracteristică tip cosinus ridicat

Proiectarea FN-FIR prin metoda ferestrelor


Algoritm:
a) Se dă

b) Se determină răspunsul

15
c) Se determină răspunsul al FN-FIR

d) Se calculează răspunsul în frecvenţă al FN-FIR

Desfăşurarea lucrării
3.1. Eefctuaţi proiectarea unui FN-FIR cu şi rad/sec:

h=0.4*sinc (0.4* (-25:25));


stem(h)
[H,w]=freqz (h,1,512,2);
plot (w,abs (H)) , grid

3.2. sau folosind fereastra Hamming:


16
h=0.4*hamming (51);
[H,w] =freqz (h,1,512,2);
plot (w,abs (H)) , grid

3.3. Modelaţi un semnal periodic compus din suma a trei semnale conform
variantei.

t=0:.001:1;
sq=A*square(D*pi*t+pi/6);
tri=B*sawtooth(E*pi*t+pi/6);
cosine=C*cos(F*pi*t+pi/6);
sem1=sq+cosine+tri;

Afişaţi semnalul obţinut sem1

plot(t,sem1);

3.4. Utilizând procedura

x1=rand(1,length(t));

modelaţi un zgomot alb. Afişaţi acest zgomot folosind plot (t,x1), stem
(t,x1) şi histograma acestuia, utilzând hist(x1,t).

x1=rand(1,length(t));
plot (t,x1);

3.5. Efectuaţi adunarea zgomotului alb x1 cu semnalul sem1 şi afişaţi


rezultatul (plot).

sem2=sem1+3*x1;
plot(t,sem2);

3.6. Proiectaţi un filtru IIR Trece-jos şi filtraţi semnalul afectat de zgomot


sem2
17
T1=1;
Ts=0.075;
Tf=T1;
dz=0.47;
om0=2*pi/Tf;
A=1;
oms=om0*Ts;
a(1)=1+2*dz*oms+oms^2;
a(2)=-2*(1+dz*oms);
a(3)=1;
b(1)=A*Ts*Ts*(2*dz*om0^2);
y=filter(b,a,sem2);

Afişaţi rezultatul (plot).

plot(t,y);

3.7. Afişaţi pe acelaşi grafic (plot) semnalul sem2 afectat de zgomot şi cel
filtrat:

plot(t,y,t,sem2)

Afişaţi pe acelaşi grafic (plot) semnalul iniţial sem1 şi cel filtrat:

plot(t,y,t,sem1);

18
3.7. Aplicaţi procedura filtfilt pentru a exclude întârzierea întrodusă de
filtru:

y2=filtfilt(b,a,sem2);

3.8. Afişaţi pe acelaşi grafic (plot) semnalul iniţial şi cel filtrat prin
procedura filtfilt:

plot(t,sem1,t,y2);

3.9. Proiectaţi un filtru FIR Trece-jos de netezire şi filtraţi semnalul sem2 -


cu 3 mostre trecute ale întrării:

bb = [1/3 1/3 1/3]; %<--Filter coefficients


yy = filter(bb, 1, sem2); %<--Compute the output
plot(t,yy);

Afişaţi pe acelaşi grafic (plot) semnalul sem2 afectat de zgomot şi cel filtrat:

plot(t,yy,t,sem2)

Afişaţi pe acelaşi grafic (plot) semnalul iniţial sem1 şi cel filtrat:

plot(t,yy,t,sem1);

Afişaţi dependenţa modilului şi fazei funcşiei de transfer a FIR Trece-jos de


netezire cu 3 mostre trecute ale întrării:

19
ww = -pi:(pi/200):pi;
H = freqz( bb, 1, ww );
subplot(2,1,1)
plot( ww, abs(H) ) %<-- Magnitude
subplot(2,1,2)
plot( ww, angle(H) ) %<-- Phase
xlabel('NORMALIZED FREQUENCY')

3.10. Filtraţi semnalul sem2 - cu 10 de mostre trecute ale întrării:

bb = 1/10*ones(1,10);
yy = filter(bb, 1, sem2); %<--Compute the output
plot(t,y);

Afişaţi pe acelaşi grafic (plot) semnalul sem2 afectat de zgomot şi cel filtrat:

plot(t,yy,t,sem2);

Afişaţi pe acelaşi grafic (plot) semnalul iniţial sem1 şi cel filtrat:

plot(t,yy,t,sem1);

Afişaţi dependenţa modilului şi fazei funcşiei de transfer a FIR Trece-jos de


netezire cu 10 mostre trecute ale întrării:

ww = -pi:(pi/200):pi;
H = freqz( bb, 1, ww );
subplot(2,1,1)
plot( ww, abs(H) ) %<-- Magnitude
subplot(2,1,2)
plot( ww, angle(H) ) %<-- Phase
xlabel('NORMALIZED FREQUENCY');

20
3.8. Filtraţi semnalul sem2 - cu de netezire 50 de mostre trecute ale
întrării:

bb = 1/50*ones(1,50);
yy = filter(bb, 1, sem2); %<--Compute the output
plot(t,y);

Afişaţi pe acelaşi grafic (plot) semnalul sem2 afectat de zgomot şi cel filtrat:

plot(t,yy,t,sem2);

Afişaţi pe acelaşi grafic (plot) semnalul iniţial sem1 şi cel filtrat:

plot(t,yy,t,sem1);

Afişaţi dependenţa modilului şi fazei funcşiei de transfer a FIR Trece-jos de


netezire cu 10 mostre trecute ale întrării:

ww = -pi:(pi/200):pi;
H = freqz( bb, 1, ww );
subplot(2,1,1)
plot( ww, abs(H) ) %<-- Magnitude
subplot(2,1,2)
plot( ww, angle(H) ) %<-- Phase
xlabel('NORMALIZED FREQUENCY');

3.6 Aplicaţi procedura filtfilt pentru a exclude întârzierea întrodusă de


filtru 50 de mostre trecute ale întrării:

yy2=filtfilt(bb,1,sem2);

21
Afişaţi pe acelaşi grafic (plot) semnalul sem2 afectat de zgomot şi cel filtrat
prin procedura filtfilt:

plot(t,yy2,t,sem2);

Afişaţi pe acelaşi grafic (plot) semnalul iniţial şi cel filtrat prin procedura
filtfilt:

plot(t,sem1,t,yy2);

Lucrarea de laborator N 4
Modulaţia semnalelor
Modulaţia. Definiţii şi clasificări
În procesul de modulaţie intervin următoarele semnale:
- semnalul s(t) ce conţine informaţia (mesajul), denumit semnal modulator;
- semnalul P(t), asupra căruia se transferă informaţia, denumit purtător;.
- semnalul sM(t) rezultat prin acţiunea semnalului modulator asupra
purtătorului, denumit semnal modulat.
Modulaţia constă în modificarea unui parametru al purtătorului P(t) de
câtre semnalul modulator s(t), ce urmează a fi transmis.
După natura semnalului purtător P(t), putem avea:
- modulaţie cu purtător sinusoidal;
- modulaţie cu purtător în impulsuri.

22
Fig.1 Purtător sinusoidal

Noţiuni generale. Tipuri de modulaţie


Purtătorul P(t) cu variaţie sinusoidală în timp se reprezintă analitic prin expresia:
(1)
În această expresie A0 reprezintă amplitudinea oscilaţiei, 0 - frecvenţa
unghiulară (pulsaţia), iar 0 — faza iniţială (diferenţa de fază sau unghiul de
fază).
Reprezentarea grafică a lui P(t) şi semnificaţia parametrilor săi sînt date în
figura 1.
A modula înseamnă a stabili o dependenţă între un parametru al purtătorului
P(t) şi semnalul modulator s(t). Este indicat ca această dependenţă să fie liniară,
căci în acest caz prin transformare inversă, numită demodulaţie, se poate obţine
simplu semnalul util s(t) din semnalul modulat.
Fiecare din cei trei parametri ce definesc purtătorul poate prelua variaţiile
semnalului modulator, obţinându-se corespunzător următoarele tipuri de
modulaţie:

— modulaţie de amplitudine (MA);


— modulaţie de frecvenţă (MF);
— modulaţia de fază (M) sau (MP).

Modulaţia de amplitudine cu purtător sinusoidal


Fie semnalul modulator s(t), si purtătorul P(t) :
(2)
Conform celor afirmate anterior, amplitudinea instantanee A(t) a semnalului MA
trebuie să fie într-o relaţie de dependenţă liniară cu semnalul s(t). A(t) poate fi o
funcţie de timp de forma:

23
Fig. 2. Formele de undă ale semnalului
modulator (a), purtătorului (b), amplitudinii
instantanee (c) şi semnalului MA (d).

(3)

Expresia în domeniul timp a semnalului MA este prin urmare:

Aceasta reprezintă forma cea mai generală a unui semnal MA, întrucât asupra
mesajului s(t) nu s-a făcut nici o restricţie.
În figura 2 sunt reprezentate, în ordine, funcţiile de timp (formele de undă) ale
semnalului modulator s(t), purtătorului P(t), amplitudinii instantanee A(t) şi
semnalului modulat sMA(t). Curba reprezentată punctat în figura 2,d poartă
denumirea de înfăşurătoare sau anvelopă a semnalului MA şi reproduce forma
semnalului modulator.
Până acum am analizat forma de undă a semnalului MA sau altfel spus,
reprezentarea sa în domeniul timp. Să examinăm în continuare reprezentarea
semnalului MA în domeniul frecvenţă (spectrul de frecvenţă) considerând trei
situaţii di-ferite prin forma de undă a semnalului modulator s(t).
1. Presupunem că s(t) este un semnal sinusoidal de forma:
(5)

Amplitudinea A(t) si semnalul sMA(t), date de relaţiile (3) şi (4), devin în acest caz:

(6)

24
(7)
Parametrul

reprezintă gradul de modulaţie. După cum se observă, m este proporţional cu


amplitudinea semnalului modulator.
Din relaţia (6) rezultă amplitudinile maximă şi minimă ale semnalului
MA:

(8)

Fig. 3. Formele de undă ale semnalului modulator (a), purtătorului (b)


şi semnalului MA (c).

deci

(9)
Relaţiile (9) se utilizează în determinarea experimentală a gradului de
modulaţie prin vizualizarea pe osciloscop a semnalului MA.
Formele de undă ale semnalelor s(t), P(t) şi sMA(t), corespunzătoare acestui caz,
sînt reprezentate grafic în figura 4.
Gradul de modulaţie m trebuie să satisfacă condiţia:
m1 (10)
pentru ca la recepţie s(t) să poată îi reconstituit.
Dacă m > 1 (fig. 4), înfăşurătoarea semnalului MA nu mai reproduce forma
semnalului modulator s(t) şi acesta nu se mai poate obţine prin demodulare.
Expresia (7) se poate scrie sub forma:
25
(11)

Fig. 4. Semnal MA supramodulat (m>1)

care pune în evidenţă componentele spectrale ale semnalului modulat.


Reprezentarea spectrelor de amplitudine ale mesajului, purtătorului şi semnalului
MA este dată în figura 4, a, b, c. Figura 5, c este reprezentarea semnalului MA în
domeniul frecvenţă, la frecvenţe fizice ( > 0).
Constatăm că spectrul semnalului MA conţine trei componente armonice:
- o componentă centrală de frecvenţa 0 şi amplitudine A0, care este chiar
purtătorul;
- două componente de frecvenţe 0+ 0,

0 - 0 de amplitudine care se numesc componente laterale (inferioară şi


superioară). Banda de frecvenţe ocupată de semnalul MA este B = 2.

26
Fig. 5. Diagramele spectrale de amplitudini ale semnalului modulator (a),
purtătorului (b) şi semnalului MA. (c)..

Desfăşurarea lucrării

Operatorul pentru efectuarea modulaţiei:

y = modulate(x,fc,fs,'method',opt)

unde:
• x semnalul mesaj modulator.
• fc frecfenţa semnalului purtător.
• fs fercvenţa de discretizare.
• method metoda de modulaţie.
• opt un argument opţional

4.1. Generaţi un semnal purtător de fravenţă

27
t=0:.001:1;
sq=2*square(10*pi*t+pi/6);
tri=3*sawtooth(15*pi*t+pi/6);
cosine=2*cos(25*pi*t+pi/6);
sem1=(sq+cosine+tri);

Modulaţia în amplitudine cu purtător suprimat şi ambele benzi


4.2. Efectuaţi modulaţia în amplitudine cu purtător suprimat şi ambele benzi
a semnalului sem1:

sem1AM = modulate(sem1,490,1001,'am')
plot(t,sem1AM)

4.3. Efectuaţi transformarea Fourier a semanlului modulat sem1AM. Afişaţi


spectrul obţinut.

Y3=fft(sem1AM);
m=abs(Y3);p=unwrap(angle(Y3));% Magnituda si faza
f=(0:length(Y3)-1)*99/length(Y3);% Vectorul frecventei
plot(f,m); title('Magnitude');
set(gca,'XTick',[15 40 60 85]);
figure; plot(f,p*180/pi); title('Faza');
set(gca,'XTick',[15 40 60 85])

Aplicaţi procedura fftshift şi afişaţi dependenţa modului de frecvenţă:

xp=fftshift(Y3);
a=abs(xp);
df=1; Fmax=1/0.001;
f1=-Fmax/2:df:Fmax/2;
plot(f1,a)

4.4. Pentru a exclude supramodulaţia, adăugaţi la semnalul modulator sem1


o constantă - pentru a primi un semnal unipolar

28
t=0:.001:0.15;
sq=1*square(10*pi*t+pi/6);
tri=1.5*sawtooth(15*pi*t+pi/6);
cosine=2*cos(25*pi*t+pi/6);
sem1=(sq+cosine+tri)+7;

sem1AM = modulate(sem1,490,1001,'am')
plot(t,sem1AM)

4.5. Efectuaţi transformarea Fourier a semanlului modulat sem1AM. Afişaţi


spectrul obţinut.

Y3=fft(sem1AM);
m=abs(Y3);p=unwrap(angle(Y3));% Magnituda si faza
f=(0:length(Y3)-1)*99/length(Y3);% Vectorul frecventei
plot(f,m); title('Magnitude');
set(gca,'XTick',[15 40 60 85]);
figure; plot(f,p*180/pi); title('Faza');
set(gca,'XTick',[15 40 60 85])

Aplicaţi procedura fftshift şi afişaţi dependenţa modului de frecvenţă:

xp=fftshift(Y3);
a=abs(xp);
df=1; Fmax=1/0.001;
f1=-Fmax/2:df:Fmax/2;
plot(f1,a)

Modulaţia în amplitudine cu purtător şi ambele benzi


4.6. Efectuaţi modulaţia în amplitudine cu purtător şi ambele benzi a
semnalului sem1:

t=0:.001:0.15;
sq=1*square(10*pi*t+pi/6);
tri=1.5*sawtooth(15*pi*t+pi/6);
cosine=2*cos(25*pi*t+pi/6);

29
sem1=(sq+cosine+tri)+7;

sem1AMP = modulate(sem1,490,1001,'amdsb-tc')
plot(t,sem1AMP)

4.7. Efectuaţi transformarea Fourier a semanlului modulat sem1AM. Afişaţi


spectrul obţinut.

Y3=fft(sem1AMP);
m=abs(Y3);p=unwrap(angle(Y3));% Magnituda si faza
f=(0:length(Y3)-1)*99/length(Y3);% Vectorul frecventei
plot(f,m); title('Magnitude');
set(gca,'XTick',[15 40 60 85]);
figure; plot(f,p*180/pi); title('Faza');
set(gca,'XTick',[15 40 60 85])

Aplicaţi procedura fftshift şi afişaţi dependenţa modului de frecvenţă:

xp=fftshift(Y3);
a=abs(xp);
df=1; Fmax=1/0.001;
f1=-Fmax/2:df:Fmax/2;
plot(f1,a)

Modulaţia în amplitudine cu o singură bandă laterală


4.8. Efectuaţi modulaţia în amplitudine cu o singură bandă laterală a
semnalului sem1:

t=0:.001:0.15;
sq=1*square(10*pi*t+pi/6);
tri=1.5*sawtooth(15*pi*t+pi/6);
cosine=2*cos(25*pi*t+pi/6);
sem1=(sq+cosine+tri)+7;

sem1AMS = modulate(sem1,490,1001,'amssb')
plot(t,sem1AMS)

30
4.9. Efectuaţi transformarea Fourier a semanlului modulat sem1AM. Afişaţi
spectrul obţinut.

Y3=fft(sem1AMS);
m=abs(Y3);p=unwrap(angle(Y3));% Magnituda si faza
f=(0:length(Y3)-1)*99/length(Y3);% Vectorul frecventei
plot(f,m); title('Magnitude');
set(gca,'XTick',[15 40 60 85]);
figure; plot(f,p*180/pi); title('Faza');
set(gca,'XTick',[15 40 60 85])

Aplicaţi procedura fftshift şi afişaţi dependenţa modului de frecvenţă:

xp=fftshift(Y3);
a=abs(xp);
df=1; Fmax=0.15/0.001;
f1=-Fmax/2:df:Fmax/2;
plot(f1,a)

Modulaţia în frecvenţă

4.10. Efectuaţi modulaţia în în frecvenţă semnalului sem1:

t=0:.001:0.4;
sq=1*square(10*pi*t+pi/6);
tri=1.5*sawtooth(15*pi*t+pi/6);
cosine=2*cos(25*pi*t+pi/6);
sem1=(sq+cosine+tri)+7;

sem1AMF = modulate(sem1,490,1001,'fm')
plot(t,sem1AMF)

4.11. Efectuaţi transformarea Fourier a semanlului modulat sem1AM. Afişaţi


spectrul obţinut.
31
Y3=fft(sem1AMF);
m=abs(Y3);p=unwrap(angle(Y3));% Magnituda si faza
f=(0:length(Y3)-1)*99/length(Y3);% Vectorul frecventei
plot(f,m); title('Magnitude');
set(gca,'XTick',[15 40 60 85]);
figure; plot(f,p*180/pi); title('Faza');
set(gca,'XTick',[15 40 60 85])

Aplicaţi procedura fftshift şi afişaţi dependenţa modului de frecvenţă:

xp=fftshift(Y3);
a=abs(xp);
df=1; Fmax=0.4/0.001;
f1=-Fmax/2:df:Fmax/2;
plot(f1,a)

32

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