Documente Academic
Documente Profesional
Documente Cultură
Lucrarea 2 Semnale Numerice
Lucrarea 2 Semnale Numerice
Lucrarea 2
Semnale numerice
x:
n x[n]
x[n N ] = x[n], n
i N
Cea mai mic valoare pozitiv a lui N pentru care relaia precedent este ndeplinit se numete perioad fundamental. Dac nu exist nici o valoare pentru N care s satisfac relaia, semnalul se numete neperiodic sau aperiodic.
PNS 4. 5.
Semnale numerice s=sin(2*pi*f*n) genereaz o secven sinusoidal cu frecvena discret f, n=-M:L. sc=sinc(2*f*n) genereaz un sinus atenuat cu frecvena f dup formula: sc = sin(2 f n) /(2 f n) ,n=-M:L. ex=exp(n) unde n=-M:L ex1=pow2(-g*(0:L)) ex2=p.^n ex3=power(p,n) unde n=-M:L sau unde n=-M:L
6. 7. 8. 9.
Semnal exponenial
en
Semnalul exponenial Semnal exponenial
gn
ran=rand(M,N) genereaz o matrice de dimensiune (M N) cu elementele alese aleator dup o distribuie uniform n intervalul [0 ,1] ran=randn(M,N) genereaz o matrice de dimensiune (M N) cu elementele alese aleator dup o distribuie normal cu medie 0 i dispersie 1
n continuare sunt prezentate cteva programe simple de generare i vizualizare a unor semnale elementare pentru anumite domenii de valori ale variabilei independente. Pentru a obine impulsul unitate centrat pe valoarea 0 a variabilei independente se utilizeaz urmtorul program MATLAB : Exemplul 1 Generarea i reprezentarea impulsului unitate [n]
% Program P2_1 % Generarea impulsului unitate clf; % sterge vechiul grafic % generarea unui vector de la -10 la 20 n = -10:20; % generarea impulsului d = [zeros(1,10) 1 zeros(1,20)]; % reprezentarea grafic stem(n,d); xlabel('n');ylabel('Amplitudine'); title('Impulsul unitate'); axis([-10 20 0 1.2]); %vezi help axis
s[n] = Al [n lP ] .
l =0
M 1
15
PNS
Lucrarea 2
Semnale numerice
%reprezentare grafica n=0:M*P-1; stem(n,tren); xlabel('n');ylabel('Amplitudine'); title('Tren de impulsuri unitate'); axis([-2 32 0 1.2]);
x[n] = 2e
= 2e
1 n 12
i n 6
= 2e
1 n 12
n cos n + i e 12 sin n 6 6 1
16
PNS
Lucrarea 2
Semnale numerice
n = 0:40; f = 0.1; %frecventa discreta phase = 0; A = 1.5; arg = 2*pi*f*n+phase; x = A*cos(arg); clf; stem(n,x); %afiseaza secventa sinusoidala axis([0 40 -2 2]); grid; title(Secventa sinusoidala'); xlabel('n'); ylabel('Amplitudine');
Exemplul 8 Generarea i reprezentarea unei secvene modulate n amplitudine y[n] = (1 + m sin(2f L n)) sin( 2f H n)
% Program P2_8 % Generarea unei secvene modulate n amplitudine clf; n = 0:150; m = 0.4; fH = 0.08; fL = 0.01; xH = sin(2*pi*fH*n); %purtatoarea xL = sin(2*pi*fL*n); %modulatoarea y = (1+m*xL).*xH; stem(n,y);grid; title('Secventa modulata in amplitudine') xlabel('n');ylabel('Amplitudine');
Exemplul 9 Generarea unui semnal de tip chirp (semnal sinus cu frecven liniar cresctoare n timp: x[n] = sin( 2 ( f n) n) n = 0,1... )
% Program P2_9 % Generarea unui semnal de tip chirp n = 0:200;
17
PNS
Lucrarea 2
Semnale numerice
a = pi/4/200; b = 0; arg = a*n.*n + b*n; x = cos(arg); clf; stem(n, x); axis([0,200,-1.5,1.5]); title('Semnal tip chirp'); xlabel('n'); ylabel('Amplitudine'); grid;
std =
1 N ( x mx ) 2 N 1 i =1
xsin=sin(2*pi*f*n); xdrept=square(2*pi*f*n); xw=sawtooth(2*pi*f*n); med=mean(xsin) %se procedeaza la fel si cu xdrept, xw ms=min(xsin) %se procedeaza la fel si cu xdrept, xw Ms=max(xsin) % se procedeaza la fel si cu xdrept, xw ds=std(xsin) %se procedeaza la fel si cu xsin, xw
%rezultatele se vizualizeaz n fereastra Matlab
18
PNS
Lucrarea 2
Semnale numerice
3. Aplicaii propuse
Exerciiul 1. S se genereze i s se reprezinte urmtoarele secvene. Abscisa (n) trebuie s se cuprind numai domeniul indicat. x1[n]=0.8 [n], x2[n]=0.9 [n-5], x3[n]=1.5 [n-333], x4[n]=4.9 [n+7], x5[n]=4 u[n], x6[n]=1.4 u[n-7], x7[n]=2.3 u[n+5], -15n15 1n20 300n350 -10n0 -10n10 -5n20 -15n10
Exerciiul 2. S se genereze i s se reprezinte grafic n domeniul indicat urmtoarele semnale sinusoidale: x1[n]=sin(/17n), x2[n]=sin(/17n), x3[n]=sin(3n +/2), x4[n]=cos(/17n), 0n25 -15n15 -10n10 0n25
S se dea o formula mai simpl pentru x3[n] i s se explice de ce x4[n] nu este o secven periodic. Exerciiul 3. S se genereze i s se reprezinte grafic urmtoarele semnale: 1 pentru n = 0,1,2,3 x 1[n] = 0 n rest -5n10
-5n10
0n20
Exerciiul 4. S se construiasc o funcie Matlab care s genereze o sinusoid de lungime finit, cu o funcie cu 5 argumente de intrare: 3 pentru parametrii sinusoidei i 2 pentru a specifica primul i ultimul indice al secvenei finite. Funcia va returna un vector coloan care va conine valorile sinusoidei. Indicaie. Declaraia de funcie va fi:
function s=gensin(ampl,frecv,phase,ninitial,nfinal);
Utilizai funcia respectiv ntr-un script pentru calculul maximului, mediei i dispersiei unei secvene sinusoidale cu frecvena frecv=1/8, ampl=1, phase = /3 , 0 n 40
19
PNS
Lucrarea 2
Semnale numerice
Exerciiul 5. S se modifice funcia de la exerciiul 4, astfel nct s se returneze dou argumente: un vector ce conine valorile semnalului i un vector al indicilor semnalului. Indicaie. Declaraia de funcie va fi n acest caz:
function [s,n]=gensin1(ampl,frecv,phase,ninitial,nfinal);
Exerciiul 6. S se genereze i s se reprezinte grafic un semnal dreptunghiular i unul dinte de fierstru care s aib 10 eantioane pe perioad. Indicele n este cuprins ntre 0 n 40 .
20