Sunteți pe pagina 1din 22

Capitolul I

Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

Semnale şi sisteme discrete. Secvenţe unidimensionale.


Operaţii cu secvenţe: convoluţia şi corelaţia.
Sisteme discrete liniare şi invariante în timp (LIT)

Obiectivele capitolului
Scurtă introducere în programarea MATLAB, cu prezentarea facilităţilor oferite
pentru domeniul prelucrării digitale a semnalelor. Semnale şi sisteme discrete. Operaţii cu
secvenţe: convoluţie, corelaţie (liniară, periodică, circulară). Reprezentarea sistemelor
discrete în timp (funcţia pondere, ecuaţia cu diferenţe finite). Cauzalitate. Stabilitate.

I.1. Introducere teoretică


I.1.1 Programul MATLAB
Programul MATLAB, realizat de compania MathWorks este un instrument software
puternic, destinat în special calculului matematic şi procesării digitale a semnalelor. Cei mai
cunoscuţi algoritmi din domeniul PDS sunt disponibili sub formă de funcţii sau pachete de
programe specializate (tools).

I.1.1.1 Noţiuni generale


Programul MATLAB acceptă următoarele tipuri de fişiere:
 fişiere de tip "script" (conţin text ASCII);
 fişiere de tip "funcţie" (extensie .m, conţin text ASCII);
 fişiere de tip "date" (extensie .mat, conţin date binare);
Există posibilitatea conversiei fişierelor de date generate de programe C (cu ajutorul
compilatorului mex), Pascal, în format MATLAB şi invers.

I.1.1.2 Funcţii MATLAB


În Anexa 1, sunt prezentate succint funcţiile MATLAB, sub forma condensată a unor
tabele. Programul oferă în mod "on-line" informaţii despre fiecare dintre aceste funcţii, la
comanda:

>>help <funcţie>

unde <funcţie> este subiectul despre care se doresc informaţii, iar >> este prompterul curent
al programului. Fiecare dintre funcţiile menţionate se află sub forma unor fişiere cu extensia
.m şi pot fi apelate direct în program.
Pentru mai multe detalii referitoare la programul MATLAB poate fi consultată Anexa
1 de la sfârşitul lucrării.

I.1.2 Semnale discrete. Operaţii cu secvenţe. Convoluţia şi corelaţia


I.1.2.1 Semnale discrete în timp
Un semnal se numeşte discret în timp dacă poate fi reprezentat printr-o secvenţă
ordonată de numere {s(tn)}. El poate fi considerat ca o funcţie discretă în timp şi continuă în
amplitudine, definită pe un set de momente de timp discrete t1 , t 2 ,..., t n ,... .
Discretizarea în domeniul timp reprezintă operaţia de eşantionare, care poate fi:
 uniformă: t n  nT , n  Z , cu T = pasul de discretizare constant;
 neuniformă: cu un pas de discretizare T variabil.

1
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

1
T se numeşte perioadă de eşantionare, iar - frecvenţă de eşantionare. În
T
continuare ne vom referi numai la eşantionarea uniformă.

Exemplu
Semnalul discret în timp xn   a n , n  0 este reprezentat grafic în figura următoare:
a>1 0<a<1
x(n)
x(n) 1

1
n n
0 1 2 3 4 5 6 0 1 2 3 4 5 6

Pentru reprezentarea semnalelor discrete se folosesc notaţiile: xn  , xnT  , xn  ,


xnT  , xt  t  nT . Se va preciza când ultimele trei notaţii reprezintă întreaga secvenţă sau un
element al acesteia. Frecvent perioada de eşantionare T se consideră 1.
Secvenţa xn  poate fi finită sau infinită. Secvenţele infinite pot fi periodice sau
aperiodice. O secvenţă periodică, x p n  , de perioadă N , este complet definită dacă se dă o
perioadă a sa; de exemplu, valorile elementelor sale pentru 0  n  N  1 , ceea ce înseamnă
că:

x p n   xn mod N , n  Z .

Un semnal discret poate fi generat direct la momente discrete de timp de către surse de
semnale discrete, sau poate proveni din eşantionarea unui semnal continuu în timp.
Două secvenţe sunt egale dacă au aceeaşi lungime şi valorile eşantioanelor sunt egale:

xk   yk  dacă xk   y k  , pentru toate valorile k luate în considerare.

 Secvenţe simple:

a) secvenţa impuls unitate

1,n  0
 n   
0,altfel

respectiv impuls unitate întârziat,

2
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

1,n  k
 n  k    nk  
0,altfel

b) secvenţa treaptă unitate

1,n  0
u n   
0,altfel

I.1.2.2 Operaţii cu secvenţe

Denumirea operaţiei Operaţia


Adunare z n , cu z n   xn   y n , n
Înmulţire cu număr scalar z n   a  xn   axn , n
Deplasare în timp z n   xn  n0 , n
Înmulţire z n , cu z n   xn   y n , n
Operaţii liniare z n   xn   yn    xn    yn , n
I.1.2.2.1 Convoluţia liniară

Definiţie
Convoluţia liniară (aperiodică) este un operator care acţionează asupra a două
secvenţe x 1 (n) si x 2 (n), pentru a genera secvenţa:

x n *x n    x1 n x 2 n  m  (1.1)
1 2 m

Exemplu
Fie secvenţele: x1 n   3,2,1 , x 2 n   3,2,1; secvenţa obţinută prin convoluţie
liniară este x1 n  * x 2 n   9,12,10,4,1 .

x1(n)*x2(n)
12

10

x1(n)= x2(n) 6

4 4

2 2

n
0 0
1 2 3 n 1 2 3 4 5

3
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

Proprietăţi
a) comutativitate
x1 n  * x 2 n   x 2 n  * x1 n , x1 , x 2

b) asociativitate
x1 n  * x 2 n * x3 n   x1 n  * x2 n  * x3 n , x1 , x2 , x3
c) distributivitate
x1 n  * x 2 n   x3 n   x1 n  * x 2 n   x1 n  * x3 n , x1 , x 2 , x3

d) este o operaţie liniară


x1 n   x2 n * x3 n   x1 n  * x3 n   x 2 n  * x3 n , x1 , x2 , x3 , , 

Observaţii
a) convoluţia liniară a două secvenţe de lungimi N 1 , N 2 generează o secvenţă de
lungime N 1  N 2  1 eşantioane; deci rezultatul este o secvenţă cu valori nenule în intervalul:

n0  n  n0  N 1  N 2  2

b) convoluţia liniară poate fi calculată în două moduri:


- direct (folosind definiţia);
- efectuând transformata Fourier discretă inversă (TFDI) a produsului transformatelor
Fourier discrete (TFD) a celor două secvenţe (dacă convoluţia liniară şi circulară conduc la
acelaşi rezultat).

I.1.2.2.2 Convoluţia periodică

Definiţie
Pentru două secvenţe periodice x1 p n  , x 2 p n  , cu aceeaşi perioadă N ,

N 1
x n    x1 p l x2 p n  l   x  x (1.2)
3p l 0 1p 2p

Exemplu
Fie secvenţele: x 2 p n   x1 p n   3,2,1,3,2,1,...., atunci:
x n  x n  13,13,10,13,13,10,...
1p 2p

4
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

x1p(n) x2p(n) x1p(n)  x2p(n)


13 13
3 3
2 2
1 1 … 10 …

0 1 2 n 0 1 2 n 0 1 2 n

Observaţii
a) Conform definiţiei (1.2) se observă că în calculul operaţiei de convoluţie periodică
intervine numai o perioadă a secvenţelor periodice;
b) Operaţia de convoluţie periodică a două secvenţe periodice de perioadă N este la
rândul ei o secvenţă periodică de perioadă N ;
c) Convoluţia periodică poate fi determinată pe două căi:
- în domeniul timp, cu ajutorul relaţiei (1.2);
- în domeniul frecvenţă, calculând întâi seriile Fourier discrete (SFD) corespunzătoare
secvenţelor periodice şi apoi efectuând transformarea Fourier inversă a produsului acestora.
Dacă X 1 p şi X 2 p sunt SFD ale secvenţelor x1 p , respectiv x 2 p , atunci avem:

x1 p  x 2 p 
F
X 1p  X 2 p

I.1.2.2.3 Convoluţia circulară

Definiţie
Fie două secvenţe finite x1 n  , x 2 n  cu durata N . Convoluţia lor circulară notată
x3 n  poate fi definită astfel :
i) în domeniul timp:
Dacă x1 n  este o perioadă a secvenţei periodice x1 p n  şi x 2 n  este o perioadă a
secvenţei periodice x 2 p n  atunci x3 n   x1 n   x 2 n  este o perioadă a secvenţei
 N 1 

 x1 p l x 2 p n  l  , şi deci o perioada a secvenţei x1 p n  x2 p n . 
 l 0 


x3 n   x1 n   x 2 n   x1 p n   x 2 p n  N  (1.3)

unde  marchează operaţia de convoluţie circulară.

5
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

ii) în domeniul frecvenţă:


Fie X 1 k  şi X 2 k  TFD ale secvenţelor x1 n  , respectiv x 2 n . Notăm cu
X 3 k   X 1 k   X 1 k  . Atunci TFDI a lui X 3 k  este secvenţa x3 n  care reprezintă
convoluţia circulară a secvenţelor x1 n  , x 2 n .

Exemplu
Pentru cazul particular N  4 avem:

c0   x0  y 0   x1 y  1  x2  y  2   x3 y  3


c1  x0  y 1  x1 y 0   x2  y  1  x3 y  2 
c2   x0  y 2   x1 y 1  x2  y 0   x3 y  1
c3  x0  y 3  x1 y 2   x2  y 1  x3 y 0 

Dacă secvenţa este periodică de perioadă 4, atunci:

y  1  y 4  1  y 3
y  2   y 4  2   y 2 
y  3  y 4  3  y 1

Relaţiile se pot scrie matricial:


c0  x0  x3 x2 x1   y 0 
 c1   x1 x0  x3 x2  y 1 
   
c2  x2 x1 x0  x3  y 2
     
 c3  x3 x2 x1 x0   y 3

iar algoritmul de calcul reprezentat mai sus se poate înţelege grafic după cum urmează:

Exemplu
Fie secvenţele: x1 n   3,2,1 , x 2 n   3,2,1 ; atunci

6
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

x1 n   x 2 n   13,13,10
x1(n) x2(n)

3 3
2 2
1 1

0 1 2 n 0 1 2 n

x1(n)*x2(n)
12
10
x1(n)  x2(n) 9
13 13
4
10
1

0 1 2 n 0 1 2 3 n
a) convoluţia circulară b) convoluţia liniară

Observaţii
a) se constată că valorile numerice şi lungimea secvenţei rezultate prin convoluţia
liniară şi circulară a aceloraşi secvenţe x 1 (n) şi x 2 (n) sunt diferite. Se pune problema aflării
modului de alegere a punctelor de calcul ale convoluţiei, astfel încât rezultatul să fie acelaşi.
b) Conform observaţiei a) din paragraful 1.2.1.1, se observă că: adăugarea la secvenţa
de lungime N1 a N2 - 1 zerouri, şi la secvenţa de lungime N2 a N1 -1 zerouri, conduce la
secvenţe de lungime N1 + N2 - 1, care prin convoluţie circulară vor conduce la acelaşi
rezultat cu convoluţia liniară.

Exemplu
Fie x1 p n   x 2 p n   3,2,1,0,0,3,2,1,...
x'1p(n)= x'2p(n)

3 3
2 2
1 1
.....

0 1 2 3 4 5 6 7 n

7
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

O perioadă din secvenţa x3 p n   x1 p n  * x 2 p n  este {9, 12, 10, 4, 1} (rezultat identic
celui obţinut prin convoluţie liniară):

x'3p(n)
12 10
9
4
1
.....

0 1 2 3 4 n

I.1.2.2.4 Corelaţia
Este o altă operaţie des folosită în prelucrarea digitală a semnalelor care oferă o
informaţie despre gradul de asemănare a două secvenţe.

Definiţie
Corelaţia a două secvenţe finite x1 n  , x1 n  este o secvenţă definită astfel:


R x x ( p)   x1 (m) x2 ( p  m),    p   (corelaţie mutuală) (1.4a)
12 m


R x x ( p)   x1 (m) x1 ( p  m),    p   (autocorelaţie) (1.4b)
11 m

Exemplu
a) Fie x1 n   0,0,1,1,1,1,1,1 , x 2 n   0,0,5,4,3,2,1,0 , n  -2 ,5
R
x x
 p   0,5,9,12,14,15,15,10,6,3,2,1, n  -6,-5,...,4,5
1 2
b) Fie secvenţele: x1 n   x 2 n   3,2,1 . Secvenţa de autocorelaţie liniară este:
3,8,14,8,3

x1(n) x2(n)

3 3
2 2
1 1

0 1 2 n 0 1 2 n

8
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

R x 1 x 2 (n )

14

8 8

3 3

-2 -1 0 1 2 n

Proprietăţi ale corelaţiei


a) autocorelaţia este o secvenţă pară: R x x  p  R x x   p ;
11 11
b) corelaţia mutuală satisface relaţia: R x x  p   R x x   p ;
12 2 1
c) corelaţia poate fi realizată cu ajutorul operaţiei de convoluţie, astfel:

R x x  p   x1  n  x 2  n sau R x x  p   x 1  n  x 2   n 
12 12

Corelaţia mutuală şi autocorelaţia sunt operaţii folosite în analiza semnalelor şi a


sistemelor. De exemplu, pe baza secvenţei de corelaţie se poate detecta prezenţa unui semnal
util (cunoscut) într-un semnal cu zgomot sau poate fi determinată funcţia pondere a unui
sistem.

I.1.2.2.5 Corelaţia circulară


Este similară convoluţiei circulare.

Definiţie
Pentru două secvenţe de lungimi egale corelaţia circulară este:

N 1 N 1
~
R x x  p    x1 p m x 2 p  p  m    x m x  p  m ,
12 m0 1 2 (1.5)
m0
p  0 ,1,...,N  1

unde, ca şi în cazul convoluţiei circulare, folosim extensia periodică a secvenţelor şi păstrăm


o singură perioadă a rezultatului

Exemplu
Fie secvenţele x1 n   x 2 n   3,2,1 . Rezultatul corelaţiei circulare este 14,11,11.

9
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

~
x1(n) = x2(n) Rx1x2  n
3 14
2 11 11
1

0 1 2 n 0 1 2 n

Exemplu
Pentru cazul particular N  4 :

r 0   x0  y 0   x1 y 1  x2 y 2   x3 y 3


r 1  x0  y 1  x1 y 2   x2  y 3  x3 y 4 
r 2   x0  y 2   x1 y 3  x2  y 4   x3 y 5
r 3  x0  y 3  x1 y 4   x2  y 5  x3 y 6 

Datorită periodicităţii secvenţelor y  N  m   y m  , respectiv:

y 5  y 4  1  y 1 , y 6   y 4  2   y 2 

Forma matricială:

 r 0  x0  x1 x2 x3  y 0 


 r 1   x3 x0  x1 x2  y 1 
   
r 2  x2 x3 x0  x1   y 2
     
 r 3  x1 x2 x3 x0   y 3

şi forma grafică:

Observaţii

10
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

a) se constată că rezultatul corelaţiei circulare este diferit de rezultatul corelaţiei


liniare, pentru aceleaşi secvenţe. Completarea cu zerouri a operaţiei pentru obţinerea aceluiaşi
rezultat în cazul convoluţiei circulare şi liniare funcţionează şi aici. Dacă secvenţa x1 n  are
lungimea N 1 , x 2 n  are lungimea N 2 , corelaţia lor are lungimea N 1  N 2  1 , deci se
adaugă N 2  1 zerouri secvenţei x1 n  , respectiv N 1  1 zerouri secvenţei x 2 n  .

I.1.3. Sisteme liniare si invariante în timp. Cauzalitate. Stabilitate.


I.1.3.1 Cauzalitate. Stabilitate.

Definiţie
Un sistem discret este un operator T care transformă un semnal discret de intrare
xn  (excitaţie), generând un semnal discret de ieşire, y n  (răspuns): T xn   y n  .

Definiţie
Un sistem discret este invariant în timp sau invariant la translaţie dacă la excitaţia
xn  n0  corespunde răspunsul y n  n0  , unde T xn   y n  .

Definiţie
Un sistem discret este liniar dacă la excitaţia x1 n   x 2 n  corespunde răspunsul
y1 n   y 2 n  , unde T x1 n   y1 n  şi T  x 2 n   y 2 n  ,  ,   C .

Definiţie
Se numeşte funcţia pondere a unui sistem discret secvenţa hn  de răspuns a
sistemului la o excitaţie impuls unitate  n  .

Definiţie
Semnalul xn  este cauzal dacă xn   0 pentru n  0 . Sistemul LIT, caracterizat de
funcţia pondere hn  , este un sistem cauzal dacă hn   0 , pentru n  0 .

Definiţie
Un sistem liniar invariant în timp LIT poate fi:
a) recursiv, dacă este descris de ecuaţia:

N L
y n    a y n  k    b xn  k  sau
k 1 k k 0 k
N L  a '  1, pt.k  0
y n    a y n  k    b xn  k  cu  k (1.6)
k k
k 1 k 0 a'k   ak ,pt.k  1, , N

b) nerecursiv, dacă este descris de o ecuaţie de forma:

L
y n   bk x n  k  (1.7)
k 0

11
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

Aceste ecuaţii poartă denumirea de ecuaţii cu diferenţe finite şi sunt echivalente cu


ecuaţiile diferenţiale folosite pentru caracterizarea sistemelor continue. După forma funcţiei
pondere sistemele discrete pot fi:
i) cu răspuns finit la impulsul unitate – RFI;
ii) cu răspuns infinit la impulsul unitate – RII.

Definiţie
Un sistem discret LIT este stabil în sens Intrare mărginită - Ieşire mărginită dacă la
o secvenţă de intrare mărginită  xn   M 1 , n  N, M 1 finit  corespunde o secvenţă de
ieşire mărginită M 2 finit astfel încât y n   M 2 , n  N  (Bounded Input - Bounded
Output: BIBO).

Observaţii
a) Convoluţia este o metodă de aflare a răspunsului sistemului discret LIT la secvenţa
de intrare xn  când se cunoaşte funcţia pondere a sistemului.
Dacă ţinem cont că
-  n  determină răspunsul hn  (în condiţii iniţiale nule)
-  n  m  determină răspunsul hn  m 
- xm  n  m  determină răspunsul xm hn  m 
 
-  xm δ n  m  determină răspunsul  xm hn  m 
m m
Răspunsul obţinut la ieşirea unui sistem discret LIT:
 
y n    hmxn  m   xmhn  m (1.8)
m   m  

unde xn  este semnalul de intrare iar hn  este funcţia pondere a sistemului. Relaţia (1.8)
poate fi utilizată pentru calculul răspunsului doar în cazul sistemelor RFI, unde secvenţa
pondere are lungime finită. În cazul sistemelor RII răspunsul se calculează cu ecuaţia cu
diferenţe finite (1.6).
b) Se poate arăta că stabilitatea în sens BIBO pentru sisteme LIT este echivalentă cu
cerinţa ca funcţia pondere h(n) să fie de modul sumabilă, adică:
 

 hn   ,
n  
iar pentru sisteme cauzale:  hn   
n 0

I.1.3.2 Folosirea convoluţiei pentru calculul răspunsului sistemelor LIT


Pentru sisteme cauzale LIT şi secvenţe de intrare cauzale avem:

12
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)


y n    hm xn  m   xn   hn  ,
m 0

unde operaţia desemnată prin simbolul „*” este convoluţia liniară.


Presupunem că secvenţele xn  şi hn  sunt de lungime finită N 1 respectiv N 2 . O
metodă eficientă de calcul a convoluţiei liniare este bazată pe folosirea transformatei Fourier
discrete:
- se calculează TFD a celor două secvenţe;
- se efectuează produsul acestor transformate;
- se calculează transformata Fourier discretă inversă pentru obţinerea secvenţei de
ieşire (această metodă se bazează pe o proprietate a convoluţiei care a fost amintită în
paragraful 1.2.1.1).
Deci:

xn  
F
 
X e jω 
Y e jω
 
 X e jω
H e   

F 1
 y n 

hn  
F
 
H e jω 

Transformata Fourier discretă poate fi determinată cu ajutorul unor algoritmi eficienţi


de calcul, denumiţi algoritmi pentru calculul transformatei Fourier rapide (TFR).
Conform unor proprietăţi ale convoluţiei circulare, în relaţie cu TFD, amintite în
paragraful 1.2.1.3, operaţia de trecere a rezultatului înapoi în domeniul timp nu conduce la o
convoluţie liniară (care să fie y n  ) ci la o convoluţie circulară:

xn  TFD
 X k 
 Y k   X k H k   xn   hn   y n 
TFD 1

hn   H k 
TFD

Pentru ca metoda să fie aplicată corect utilizând TFD, trebuie ca rezultatul convoluţiei
circulare să fie echivalat cu cel al convoluţiei liniare. Conform discuţiilor din paragraful
1.2.1.3 referitoare la legătura între convoluţia liniară şi cea circulară, trebuie ca, înainte de a
aplica metoda, secvenţa xn  să fie prelungită cu N 2  1 zerouri, iar hn  să fie
completată cu N1  1 zerouri. Se aplică metoda, rezultatul fiind xn   hn  (convoluţie
circulară), care este o secvenţă de lungime N  N 1  N 2  1 . Această secvenţă este aceeaşi cu
convoluţia liniară a secvenţelor iniţiale, deci este egală cu y n  .

I.2. Aplicaţii
I.2.1 Demo şi Help
a) Se lansează în execuţie programul MATLAB.
Mesajul afişat pe ecran informează utilizatorul că are acces la programele
demonstrative demo şi help.
b) Parcurgeţi pas cu pas programele demonstrative disponibile, pentru a vedea facilităţile
oferite de MATLAB.

13
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

c) Utilizaţi facilitatea help pentru a obţine informaţii despre următoarele comenzi:

load save plot subplot axis xlabel ylabel title

Comentaţi în scris, folosind informaţiile obţinute, programul prezentat în exemplul 1,


reţinând faptul că în MATLAB, comentariile se introduc precedate de semnul %.

% Exemplul 1
t=0:1:99;
plot(t,sin(2*t)+2*sin(t)),title(' Primul meu grafic! ');
xlabel('timpul t');
ylabel(' y=sin(2*t)+2*sin(t) ');
%Scalare
figure;
v=[0 100 -1.5 +1.5];
axis(v);
subplot(221),plot(t,sin(2*t)),title(' Fereastra stinga sus ');
xlabel('timpul t');
ylabel(' y=sin(2*t) ');
subplot(222),plot(t,sin(2*t)+sin(t)), title(' Fereastra dreapta sus ');
subplot(223),plot(t,sin(2*t)+2*sin(t));
subplot(224),plot(t,sin(2*t)+cos(2*t));

d) Desenaţi graficul funcţiei Bessel pentru  = 0 şi  = 1, cu x în intervalul [0,


10] (pasul 0.25). Graficele se vor realiza în fereastra corespunzătoare jumătăţii superioare a
ecranului.

e) Fie vectorul v = [0 1 2 3 4 5 6 7 8 9]. Precizăm că indexul elementelor


vectorilor în MATLAB aparţine intervalului [1, n] în loc de [0, n -1], corespunzător altor
moduri de lucru.
e1) Testaţi dacă el conţine cel puţin un element diferit de zero, folosind funcţia any(v);
Notaţi definiţia funcţiei any;
e2) Testaţi dacă toate elementele vectorului sunt nenule, folosind funcţia all(v); Notaţi
definiţia funcţiei all;
e3) Scrieţi liniile de program necesare aflării valorilor maximă (funcţia max), minimă
(funcţia min), medie (funcţia mean), mediană (funcţia median) a vectorului v.
e4) Scrieţi liniile de program necesare calculului abaterii standard a valorii
elementelor vectorului (funcţia std);

14
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

f) Repetaţi punctul 2.1.e, făcând modificările necesare pentru a funcţiona pentru


matricea X, creată ca matrice Vandermonde, pornind de la vectorul v.

Observaţii
Matricea X va avea ca penultimă coloană vectorul v , iar elementele matricei au
valorile vander(i,j) = v(i)(n -j).

g) Precizaţi ce realizează comenzile de mai jos:

X :, j , X  j : k , X i, :, X :, j : k , X :, :, X :

I.2.2 Operaţii cu secvenţe (partea I)


a) Fie vectorii x 1 = [3 2 1], x 2 = [3 2 1], unde N este lungimea maximă a secvenţei. Urmăriţi
exemplul 3, care realizează convoluţia şi corelaţia vectorilor. În tabelul 1 sunt prezentate
rezultatele obţinute.

% Exemplul 3 Tabelul 1: Rezultate


% Convoluţia şi corelaţia secvenţelor 1-D
x1 = [3 2 1];
x2 = [3 2 1];
% Convoluţia liniară
c = conv(x1, x2); c=[9 12 10 4 1]
% Convoluţia periodică
x1p = [3 2 1 3 2 1];
x2p = [3 2 1 3 2 1];
d = conv(x1p, x2p); d=[9 12 10 22 25 20 17 14 10 4 1]
% Convoluţia circulară
% o posibilitate de calcul în acest caz
a=[3 1 2; 2 3 1; 1 2 3]
circ=a*x2';
c=[0 0 0 13 13 10 0 0]
% Desenarea rezultatelor
t1=0:1:4;
Subplot(221),stem(t1,c),
title('Convoluţie liniară');
t2=0:1:2;
Subplot(223),stem(t2,circ), title('Convoluţie
circulară');

15
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

%
% Corelaţia mutuală
m = xcorr(x1, x2);
%
% Normalizarea val. corelaţiei (cu 1/length(x))
%
norm = xcorr(x1, x2, 'biased');
%
% Autocorelaţia
a = xcorr(x1);
t3 = 0:1:4;
Subplot(222),stem(t3,m),
title('Corelaţie mutuală');
%
% Corelaţia circulară
% Folosim scrierea matricială
a = [ 3 2 1; 1 3 2; 2 1 3];
rcirc = a x1';
t4 = 0:1:2;
Subplot(224),stem(t4,rcirc),
title('Corelaţie circulară');

b) Modificaţi programul şi notaţi rezultatele pentru cazurile:


b1) x1 p  3 2 1 3 2 1 3 2 1 , x 2 p  3 2 1 3 2 1 3 2 1 .

b2) Folosiţi scrierea matricială pentru calculul convoluţiei circulare.

c) Fie vectorii a  1 2 3 , b  4 5 6 , unde N este lungimea maximă a


secvenţei.
c1) Realizaţi (teoretic) convoluţia vectorilor a şi b .
c2) Scrieţi instrucţiunile necesare în MATLAB pentru a repeta punctul a), realizând
un tabel similar tabelului 1.
c3) Inseraţi secvenţa:
u=rand(3,1); t=clock; ...operaţie... etime(clock,t); pentru a calcula durata fiecăreia
dintre operaţiile efectuate (convoluţie/corelaţie).

16
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

d) Pentru secvenţele x1 n  , x 2 n  din figură determinaţi şi desenaţi convoluţia


liniară x1 n  * x 2 n  .

x1(n) x2(n)

2 2 2
1 1 1

0 1 2 3 4 5 n 0 1 2 3 4 5 n

e) Se dau două secvenţe cu duratele 3 şi 6 (fig.): 0,  3, - 2, 1, 2, 0 , 2, 3, 2, - 1.


e1) Scrieţi instrucţiunile MATLAB pentru determinarea lui y1 n   x1 n  * x 2 n 
folosind operaţia de convoluţie. Reprezentaţi grafic rezultatul.
e2) Scrieţi instrucţiunile MATLAB pentru determinarea lui y 2 n   x 2 n  * x1 n 
folosind operaţia de convoluţie. Reprezentaţi grafic rezultatul. Comparaţi rezultatul cu
rezultatul obţinut la punctul e1).

I.2.3 Proprietăţile operaţiilor cu secvenţe

a) Verificaţi proprietăţile de comutativitate, asociativitate, distributivitate,


liniaritate ale convoluţiei, scriind în MATLAB instrucţiunile corespunzătoare. Se vor
considera secvenţele:

x1 n   1,1,1,0,0,0, n  0,5
x 2 n   1,2,0,3,4,2,1,1,2,3,2,1,3
x3 n   1,0,1,0,1

b) Pornind de la definiţia convoluţiei discrete:



x1 n x2 n   x1 m x2 n  m 
m

arătaţi că:
b1) dacă x1 n   0 pentru n  0 , atunci

17
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)


x1 n  x2 n   x1 m x 2 n  m 
m 0

b2) dacă x 2 n   0 pentru n  0 , atunci

n
x1 n x 2 n   x1 m x 2 n  m 
m

b3) dacă x1 n   0 pentru n  0 şi x 2 n   0 pentru n  0 , atunci

n
x1 n x 2 n   x1 m x 2 n  m 
m 0

Se vor considera pentru calculul numeric secvenţele:

 1,n  0,1
 n  
x1 n   cos , n  0,6 x 2 n   0,n  2,3,4
 2  1,n = 5

Observaţii
- O modalitate interesantă de generare a valorii  cu MATLAB este următoarea: se calculează
log 1 (logaritmul natural), ţinând cont că log z   logabs  z   i arctan y / x  , unde
y  0, x  1 ) . Se determină răspunsul: 0.0000 + 3.1416 i.
- Pentru generarea secvenţelor x1 n  , x 2 n  se poate folosi secvenţa de instrucţiuni MATLAB
următoare:

for n = 1: 7 n = 1: 7
x1(n) = cos((pi  n ) / 2); sau x1 = cos((pi  n) / 2);
end;
x2 = [1 1 0 0 0 1]; x2 = [1 1 0 0 0 1];

c) Ştiind că importanţa operaţiei de convoluţie constă şi în faptul că operaţii


elementare (excepţie: operaţiile neliniare) pot fi reprezentate prin convoluţii cu semnale
elementare alese corespunzător, scrieţi instrucţiunile MATLAB necesare pentru a arăta că:
c1) convoluţia cu secvenţa impuls unitate lasă secvenţa xn  neschimbată.
c2) multiplicarea cu un scalar este echivalentă convoluţiei cu secvenţa a n  ("a"
scalar).
c3) întârzierea în timp este echivalentă convoluţiei cu  n  m  :

18
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

xn  m   xn  *  n  m 

c4) sumarea este echivalentă convoluţiei cu secvenţa treaptă unitate:

1,n  0
u n   
0,n  0

Se va considera secvenţa xn   1,2,3,3,2,1, se va nota şi se va desena rezultatul


fiecărei operaţii.

I.2.4 Operaţii cu secvenţe (partea a II-a)

a) x p n  şi rp n  sunt secvenţe periodice cu perioada N  6 , date de:

 1, n  0
 n  
x n   cos  rp n   0, n  1,2,3,4
p  3   1, n = 5

Scrieţi instrucţiunile MATLAB necesare calculului convoluţiei periodice a secvenţelor


xp(n) şi rp(n), notaţi şi reprezentaţi grafic rezultatul.

b) Fie secvenţele periodice:


x1 n   1,2,3,4,5,0,0 , x 2 n   1,1,1,1,0,0,0
b1) Calculaţi cu ajutorul MATLAB convoluţia circulară în 7 puncte a acestor
secvenţe.
b2) Presupunând că secvenţele sunt finite şi neperiodice, găsiţi convoluţia lor liniară.
b3) Sunt rezultatele identice sau nu? Explicaţi şi indicaţi soluţia pentru obţinerea
aceluiaşi rezultat. Verificaţi cu ajutorul MATLAB soluţia propusă.

c) Calculaţi şi reprezentaţi grafic convoluţia liniară, periodică şi circulară, a două


secvenţe de lungime 4, date în tabelul de mai jos:

n x1p(n) x2p(n
)
0 1 3
1 2 2
2 -1 0
3 0 1

19
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

d) Două secvenţe de lungime N  3 , x1 n  şi x 2 n  sunt desenate mai jos:

x1(n) x2(n)

3 3 2

1 2
2 0 n
0 1 n -1
-2 -2

Calculaţi cu ajutorul programului MATLAB şi reprezentaţi grafic:


d1) convoluţia liniară x1 n  * x 2 n  .
d2) convoluţia circulară x1 n   x 2 n  .
d3) corelaţia mutuală R x x  p  .
12
d4) autocorelaţia secvenţei x1 n  , R x x  p 
11
~
d5) autocorelaţia circulară a secvenţei x1 n  , R x x  p 
11

I.2.5 Aplicaţii ale operaţiilor cu secvenţe. Sisteme LIT

a) Fie sistemul discret cu funcţia pondere hn   a n u n  . Dacă la intrare se aplică


k
1
secvenţa x(n) = xn    , calculaţi secvenţa de răspuns, y n  , folosind convoluţia.
 2
Realizaţi calculul teoretic şi cu ajutorul programului MATLAB.

n1   n  
b) Pentru sistemul al cărui h(n) = hn   0.707  cos  , n  0 folosiţi
 4 4
operaţia de convoluţie pentru a calcula răspunsul sistemului la secvenţa treaptă unitate, cu
ajutorul MATLAB. Notaţi secvenţa de instrucţiuni folosite şi rezultatul obţinut.

20
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

 1 1 1 
c) Fie secvenţa de răspuns la  n  , hn   1, , , ,0 ,0 .
 2 3 4 
c1) Reprezentaţi grafic secvenţele:  n  , hn  ,  n  m  , hn  m  .
c2) Determinaţi şi desenaţi răspunsul sistemului la secvenţa de intrare:

4, n  0
xn   
0, n  0

d) Fie secvenţele h(n) şi x(n) din figură. Determinaţi răspunsul sistemului LIT cu
ajutorul operaţiei de convoluţie.

h(n)
4
3
2
1
0

0 1 2 3 4 5 n
x(n)

4
2 2
5 6 7 8
0 1 2 3 4 n

e) Răspunsul unitar al unui sistem liniar invariant în timp (LIT) este dat în tabelul
următor:
n 0 1 2 3 4 5 6
h(n) 0.0 0.0 3.0 0.75 0.56 0.23 0.0

Semnalul de intrare în sistem este xn   5u n  , unde u n  este secvenţa treaptă


unitate. Folosiţi operaţia de convoluţie pentru a afla răspunsul sistemului y n  , pentru
n  0,1,2,3,4 .

21
Capitolul I
Semnale şi sisteme discrete. Secvenţe unidimensionale. Operaţii cu secvenţe: convoluţia şi corelaţia. Sisteme
discrete liniare şi invariante în timp (LIT)

Bibliografie
[1] Richard A. Haddad, Thomas W. Parsons - Digital Signal Processing. Theory,
Applications and Hardware; Computer Science Press, USA, 1991;
[2] Emmanuel C. Ifeachor, Barrie W. Jervis - Digital Signal Processing. A Practical
Approach; Addison - Wesley Publ. Comp., USA, 1993;
[3] Vasile Lazarescu - Prelucrarea digitala a semnalelor; Amco Press, Bucuresti,
România, 1995;
[4] John J. Proakis, Dimitris G. Manolakis - Digital Signal Processing. Principles,
Algorithms and Applications; Maxwell MacMillan Intl, Singapore, 1992;
[5] Robert D. Strum, Donald E. Kirk - First Principles of Discrete Systems and Digital
Signal Processing; Addison - Wesley Publ. Comp., USA, 1988;
[6] Alan V. Oppenheim, Roland W. Schaffer - Discrete Time Signal Processing -
Prentice-Hall International, Inc., 1988
[7] Marin Ghinea, Virgil Fireteanu - MATLAB- calcul numeric, grafica, aplicatii,
Teora, 1995

Anexa 1

Programul MATLAB este dedicat calculului numeric şi reprezentărilor grafice în


domeniul ştiinţei şi ingineriei. El integrează analiza numerică, calculul matriceal, procesarea
semnalului şi reprezentările grafice, într-un mediu uşor de utilizat. La baza calculelor
efectuate cu MATLAB stau operaţiile matriceale.
O caracteristică importantă a programului MATLAB este uşurinţa cu care acesta poate
fi extins prin crearea de noi funcţii sau proceduri pe baza celor existente. MATLAB include
pachete de funcţii sau proceduri numite Toolbox-uri. Acestea sunt pachete de funcţii (fişiere
.m) grupate după anumite domenii. Există următoarele toolbox-uri:
Signal Processing: pentru prelucrarea semnalelor şi analiza seriilor temporale.
Image Processing: pentru prelucrarea imaginilor şi a semnalelor bidimensionale.
Symbolic Math: pentru calculul simbolic matematic.
Neural Networks: pentru proiectarea şi simularea reţelelor neurale.
Statistics: pentru analiza şi modelarea statistică.
Spline: pentru aproximare şi modelare pe baza funcţiilor spline.
Control System Design: pentru analiza şi proiectarea sistemelor automate de control.
Robust Control: pentru control robust (în prezenţa incertitudinii).
System Identification: pentru modelare parametrică, identificarea sistemelor, analiza
spectrală.
-Analysis and Synthesis: pentru -analiză şi sinteză.
Optimization: pentru optimizarea liniară şi neliniară.
Genetic Algorithms, GAOT: pentru optimizare cu algoritmi genetici.
Fuzzy: pentru implementarea sistemelor bazate pe mulţimi vagi.

22

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