Semnale Si Sisteme

27
Capitolul 1 - 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 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. 1.1 Prezentarea programului MATLAB Mediul de programare MATLAB este un important instrument software destinat în algoritmilor (matematici), bazat pe calculul matriceal. Este foarte util în inginerie, şi îndeosebi în domeniul prelucrării digitale a semnalelor (PDS). Cei mai cunoscuţi algoritmi sunt disponibili sub formă de funcţii grupate în pachete de programe specializate (tools) (de ex., pentru domeniul PDS există toolbox-ul signal). Programul MATLAB acceptă următoarele tipuri esenţiale de fişiere: fişiere de tip "script" (extensie .m): conţin text (caractere ASCII) şi sunt folosite pentru a scrie un program, o funcţie sau pentru a defini o clasă în Matlab; fişiere de tip "figură" (extensie .fig): sunt utilizate pentru a salva figurile şi interfaţa grafică a programelor Matlab GUI (programe complexe, cu elemente de interfaţare grafica precum meniuri, butoane, etc., realizate în mediul guide); fişiere de tip "date binare" (extensie .mat), care conţin date binare, respectiv fişiere de date de tip text (fişiere ASCII, cu extensie .txt), care conţin datele salvate sub formă de text (valori numerice); fişiere specifice mediului de modelare SIMULINK (extensie .mdl, .slx, .mdlp, .slxp) fişiere de cod Matlab protejate (extensie .p) fişiere dezvoltate în/pentru alte medii de programare (extensii .mex: .mex64, .mexmaci64, .mexw32, .mexw64, pentru Linux® 64-biţi, Apple Mac 64-biţi, Microsoft® Windows® 32-biţi, Windows 64-biţi). Cu ajutorul compilatorului mex pot fi utilizate în MATLAB fişiere generate de programele C, Pascal, etc. Există posibilitatea de a afla informaţii despre funcţiile Matlab disponibile folosind comanda: >>help <nume_funcţie>

description

Semnale Si Sisteme

Transcript of Semnale Si Sisteme

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    1

    1 Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    Obiectivele capitolului Scurt introducere n programarea MATLAB, cu prezentarea facilitilor oferite

    pentru domeniul prelucrrii digitale a semnalelor. Semnale i sisteme discrete. Operaii cu secvene: convoluie, corelaie (liniar, periodic, circular). Reprezentarea sistemelor discrete n timp (funcia pondere, ecuaia cu diferene finite). Cauzalitate. Stabilitate.

    1.1 Prezentarea programului MATLAB Mediul de programare MATLAB este un important instrument software

    destinat n algoritmilor (matematici), bazat pe calculul matriceal. Este foarte util n inginerie, i ndeosebi n domeniul prelucrrii digitale a semnalelor (PDS). Cei mai cunoscui algoritmi sunt disponibili sub form de funcii grupate n pachete de programe specializate (tools) (de ex., pentru domeniul PDS exist toolbox-ul signal).

    Programul MATLAB accept urmtoarele tipuri eseniale de fiiere: fiiere de tip "script" (extensie .m): conin text (caractere ASCII) i sunt folosite

    pentru a scrie un program, o funcie sau pentru a defini o clas n Matlab; fiiere de tip "figur" (extensie .fig): sunt utilizate pentru a salva figurile i

    interfaa grafic a programelor Matlab GUI (programe complexe, cu elemente de interfaare grafica precum meniuri, butoane, etc., realizate n mediul guide);

    fiiere de tip "date binare" (extensie .mat), care conin date binare, respectiv fiiere de date de tip text (fiiere ASCII, cu extensie .txt), care conin datele salvate sub form de text (valori numerice);

    fiiere specifice mediului de modelare SIMULINK (extensie .mdl, .slx, .mdlp, .slxp)

    fiiere de cod Matlab protejate (extensie .p) fiiere dezvoltate n/pentru alte medii de programare (extensii .mex: .mex64,

    .mexmaci64, .mexw32, .mexw64, pentru Linux 64-bii, Apple Mac 64-bii, Microsoft Windows 32-bii, Windows 64-bii). Cu ajutorul compilatorului mex pot fi utilizate n MATLAB fiiere generate de

    programele C, Pascal, etc.

    Exist posibilitatea de a afla informaii despre funciile Matlab disponibile folosind comanda:

    >>help

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    2

    unde este funcia despre care se doresc informaii, iar >> este prompterul curent al ferestrei de comand. Fiecare funcie este implementat sub forma unui fiier cu extensia .m i poate fi apelat direct n program. Fiierul .m asociat unei funcii conine n primele linii descrierea funciei, sub form de comentarii (linii care ncep cu simbolul %).

    MATLAB-ul integreaz analiza numeric, calculul matriceal, prelucrarea semnalului i reprezentrile grafice, ntr-un mediu uor de utilizat.

    O caracteristic important a programului MATLAB este uurina cu care acesta poate fi extins prin crearea de noi funcii sau proceduri pe baza celor existente. MATLAB include pachete de funcii sau proceduri numite Toolbox-uri. Acestea sunt pachete de funcii (fiiere .m) grupate dup anumite domenii. Exist de exemplu urmtoarele toolbox-uri: Signal Processing (help signal) - pentru prelucrarea semnalelor i analiza seriilor temporale, Image Processing (images) - pentru prelucrarea imaginilor i a semnalelor bidimensionale, Symbolic Math (symbolic) - pentru calculul simbolic matematic, Neural Networks (nnet) - pentru proiectarea i simularea reelelor neurale, Statistics (stats) - pentru analiza i modelarea statistic, Spline (splines) - pentru aproximare i modelare pe baza funciilor spline, Control System Design (control) - pentru analiza i proiectarea sistemelor automate de control, Robust Control (robust) - pentru control robust (n prezena incertitudinii)., System Identification (IDENT) - pentru modelare parametric, identificarea sistemelor, analiza spectral, Optimization (optim) - pentru optimizarea liniar i neliniar, Genetic Algorithms (ga) - pentru optimizare cu algoritmi genetici, Fuzzy (fuzzy) - pentru implementarea sistemelor bazate pe mulimi vagi, Bioinformatica (bioinfo), Simulink pentru modelare/analiza de semnale/sisteme.

    1.2 Semnale discrete. Operaii cu secvene. Convoluia i corelaia 1.2.1 Semnale discrete n timp

    Definiie Un semnal s se numete discret n timp dac poate fi reprezentat printr-o

    secven ordonat de numere nts , definit pentru un set de momente de timp discrete ,...,...,, 21 nttt .. Prin urmare semnalul discret este o funcie discret n timp i continu n amplitudine. Discretizarea n domeniul timp se numete eantionare, aceasta putnd fi:

    uniform, cu pasul de discretizare, T , constant: Z nnTtn , ; neuniform: cu un pas de discretizare T variabil.

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    3

    Observaie 0.

    1. T se numete perioad de eantionare, iar T1 este frecvena de

    eantionare. n continuare ne vom referi numai la eantionarea uniform, pentru care s-a dezvoltat domeniul prelucrrii digitale a semnalelor. n mod uzual perioada de eantionare T se consider 1.

    2. Pentru reprezentarea semnalelor discrete se folosesc notaiile: nx , nTx , nx , nTx ,

    nTttx .

    Exemplu Semnalul discret n timp 0, nanx n este reprezentat grafic n Fig. 1.1:

    6543210

    n

    x(n)

    a > 1

    1

    6543210n

    x(n) 0 < a < 1

    1

    Fig. 1.1. Exponeniala discret, reprezentat ca secven cauzal

    Definiii 0.

    1. Secvena nx poate fi finit sau infinit. Secvenele infinite pot fi periodice sau aperiodice. O secven periodic, nxp , de perioad N , este complet definit dac se cunosc valorile sale pentru o perioad (de exemplu, se cunosc valorile eantioanelor sale pentru 10 Nn sau Nn 1 ) ceea ce nseamn c putem scrie:

    Z nNnxnxp ,mod . Un semnal discret poate fi generat direct la momente discrete de timp de

    ctre surse de semnale discrete, sau poate proveni din eantionarea unui semnal continuu n timp.

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    4

    2. Dou secvene sunt egale dac au aceeai lungime i valorile eantioanelor sunt egale:

    nynx dac nynx , pentru toate valorile n luate n considerare. Exemple de secvene )

    a) secvena impuls unitate

    0,00,1

    nn

    n

    respectiv secvena impuls unitate ntrziat,

    knkn

    kn,0,1

    b) secvena treapt unitate

    0,00,1

    nn

    nu

    1.2.2 Operaii cu secvene 1.2.2.1 Operaii elementare

    Denumirea operaiei Operaia Adunare nnynxnznz , cu , nmulire cu numr scalar nnaxnxanz , Deplasare n timp nnnxnz ,0 nmulire nnynxnznz , cu , Operaii liniare nnynxnynxnz ,

    1.2.2.2 Convoluia Convoluia liniar

    Definiie Convoluia liniar (aperiodic) este un operator care acioneaz asupra a

    dou secvene nx1 i nx2 , pentru a genera secvena:

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    5

    m mnxnxnxnx 2121 (1.1)

    Exemplu Fie secvenele: 1,2,31 nx , 1,2,32 nx ; secvena obinut prin

    convoluie liniar este 1,4,10,12,921 nxnx .

    Fig. 1.2. Convoluia liniar a dou secvene

    Proprieti )

    a) comutativitate

    211221 ,, xxnxnxnxnx (1.2) b) asociativitate

    321321321 ,,, xxxnxnxnxnxnxnx (1.3) c) distributivitate

    1

    nxnx 21

    2

    4

    2

    0 n

    1 2 3 4n

    nxnx 21 12

    10

    8

    6

    4

    2

    0

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    6

    3213121321 ,,, xxxnxnxnxnxnxnxnx (1.4) d) este o operaie liniar

    ,,,,, 3213231321 xxxnxnxnxnxnxnxnx (1.5)

    Observaii )

    a) convoluia liniar a dou secvene de lungimi 1N , 2N genereaz o secven de lungime 121 NN eantioane; deci rezultatul este o secven cu valori nenule n intervalul:

    1210 NNn

    b) convoluia liniar poate fi calculat n dou moduri: direct, folosind definiia, sau efectund transformata Fourier discret invers (TFDI) a produsului transformatelor Fourier discrete (TFD) a celor dou secvene (dac convoluia liniar i circular conduc la acelai rezultat).

    Convoluia periodic

    Definiie Pentru dou secvene periodice nx p,1 , nx p,2 , cu aceeai perioad N ,

    convoluia periodic este definit de formula:

    pxpxN

    llnpxlpxnpx ,2,1

    1

    0 ,2,1,3

    (1.6)

    Exemplu Fie secvenele: ....,1,2,3,1,2,3,1,2 nxnx pp , atunci:

    ,...10,13,13,10,13,13,2,1 nxnx pp

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    7

    Fig. 1.3. Convoluia periodic a dou secvene

    Observaii )

    a) Conform definiiei se observ c n calculul convoluiei periodice se consider doar o perioad a secvenelor periodice;

    b) Operaia de convoluie periodic a dou secvene periodice de perioad N este la rndul ei o secven periodic de perioad N ;

    c) Convoluia periodic poate fi determinat pe dou ci: direct, n domeniul timp, cu ajutorul relaiei pxpx

    N

    llnpxlpxnpx ,2,1

    1

    0 ,2,1,3

    (1.6), sau

    indirect, calculnd nti seriile Fourier discrete (SFD) corespunztoare secvenelor periodice i apoi efectund transformarea Fourier invers a produsului acestora (dac pX ,1 i pX ,2 sunt SFD ale secvenelor px ,1 , respectiv px ,2 , atunci avem

    ppF

    pp XXxx ,2,1,2,1 ).

    Convoluia circular

    Definiie Fie dou secvene finite nx1 , nx2 cu durata N . Convoluia lor circular

    notat ny poate fi definit astfel:

    23

    nxnx pp ,2,1

    1

    0 1 2 n

    1313

    n210

    10

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    8

    )

    i) n domeniul timp:

    Dac nx1 corespunde unei perioade a secvenei periodice nx p,1 i nx2 conine eantioanele corespunztoare unei perioade a secvenei periodice nx p,2 , atunci nxnxny 21 este o perioad a secvenei

    1

    0,2,1

    N

    lpp nxnx , i deci o

    perioada a secvenei nxnx pp ,2,1 .

    Npp

    N

    mN nxnxmnxmxny ,2,1

    1

    0mod21

    (1.7)

    unde marcheaz operaia de convoluie circular. ii) n domeniul frecven: Fie kX1 i kX 2 TFD ale secvenelor nx1 , respectiv nx2 . Notm cu kXkXkY 11 . Atunci TFDI a lui kY este secvena ny care reprezint

    convoluia circular a secvenelor nx1 , nx2 .

    Exemplu Pentru cazul particular 4N avem:

    332211000 yxyxyxyxc 231201101 yxyxyxyxc 130211202 yxyxyxyxc 031221303 yxyxyxyxc

    Dac secvena este periodic de perioad 4, atunci:

    1343

    22423141

    yyyyyy

    yyy

    Relaiile se pot scrie matriceal:

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    9

    3210

    0123301223011230

    3210

    yyyy

    xxxxxxxxxxxxxxxx

    cccc

    Exemplu Fie secvenele 1,2,31 nx , 1,2,32 nx ; convoluia circular a

    acestora este 10,13,1321 nxnxy .

    a) b)

    Fig. 1.4. Convoluia circular (a) i liniar (b) dou secvene

    Observaii )

    a) se constat c valorile numerice i lungimea secvenei rezultate prin convoluia liniar i circular a acelorai secvene nx1 i nx2 sunt diferite. Se pune problema aflrii modului de alegere a punctelor de calcul ale convoluiei, astfel nct rezultatul s fie acelai.

    b) Se observ c adugarea a 12 N zerouri la secvena de lungime 1N i a 11 N zerouri la secvena de lungime 2N conduce la secvene de lungime

    12

    3

    nxnx 21

    0 21 n

    11

    nxnx 21

    2

    1

    n0 1 32

    14

    n10

    1012

    9

    nxnx 21

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    10

    121 NN , care prin convoluie circular vor conduce la acelai rezultat cu convoluia liniar.

    Exemplu Fie ...,1,2,3,0,0,1,2,3,2,1 nxnx pp

    a)

    Fig. 1.5. Secvenele periodice extinse (a), i convoluia lor periodic (b)

    O perioad din secvena nxnxny 21 este {9, 12, 10, 4, 1} (rezultat identic celui obinut prin convoluie liniar): 1.2.2.3 Corelaia

    Corelaia liniar Este o alt operaie des folosit n prelucrarea digital a semnalelor care ofer

    o informaie despre gradul de asemnare a dou secvene.

    Definiie Corelaia a dou secvene finite nx1 , nx2 este o secven definit astfel:

    nm mnxnxnxxR ,2121 (corelaie mutual) (1.8)

    nxnx pp ,2,1 '

    n

    1

    210

    23

    754 63

    1

    32

    .....

    ny

    n

    10

    210

    129

    43

    14

    .....

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    11

    nm mnxmxnxxR , (autocorelaie) (1.9)

    Exemplu )

    a) Fie 1,1,1,1,1,1,0,01 nx , 0,1,2,3,4,5,0,02 nx , 52,-n 54...,560,05912141515106310,0,,0

    21,,,--n,,,,,,,,,,,,nxxR

    b) Fie secvenele: 1,2,321 nxnx . Secvena de autocorelaie liniar este: 3,8,14,8,3

    Fig. 1.6. Corelaia liniar a dou secvene

    Proprieti ale corelaiei )

    a) autocorelaia este o secven par

    12

    3

    nxnx 21

    0 21 n

    n210

    14

    -1-2

    8

    3 3

    8

    nR xx 21

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    12

    nxxRnxxR 1111 b) corelaia mutual satisface relaia

    nxxRnxxR 1221 c) corelaia poate fi realizat cu ajutorul operaiei de convoluie, astfel:

    nxnxnxnxnxxR 212121 Corelaia mutual i autocorelaia sunt operaii folosite n analiza semnalelor

    i a sistemelor. De exemplu, pe baza secvenei de corelaie se poate detecta prezena unui semnal util (cunoscut) ntr-un semnal cu zgomot sau poate fi determinat funcia pondere a unui sistem.

    Corelaia circular Este similar convoluiei circulare.

    Definiie Pentru dou secvene de lungimi egale corelaia circular este:

    110

    1

    0mod21

    1

    0 2121~

    ,...,N,n

    N

    mNmnxmx

    N

    mmnpxmpxnxxR (1.5)

    unde, ca i n cazul convoluiei circulare, folosim extensia periodic a secvenelor i pstrm o singur perioad a rezultatului

    Exemplu Fie secvenele 1,2,321 nxnx . Rezultatul corelaiei circulare este 11,11,14 .

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    13

    Fig. 1.7. Corelaia circular a dou secvene

    Exemplu Pentru cazul particular 4N ( nynx , avnd 4 eantioane), corelaia

    circular se calculeaz astfel:

    332211000 yxyxyxyxr 0433221101 4mod yxyxyxyxr 15304231202 4mod4mod yxyxyxyxr 263152041303 4mod4mod4mod yxyxyxyxr

    Pentru obinerea relaiilor anterioare considerm c NmNyny , respectiv: 04 4mod y , 15 4mod y , 26 4mod y .

    Forma matricial :

    3210

    0321103221033210

    3210

    yyyy

    xxxxxxxxxxxxxxxx

    rrrr

    Observaie Se observ c rezultatul corelaiei circulare este diferit de rezultatul corelaiei

    liniare, pentru aceleai secvene. Completarea secvenelor cu zerouri pentru a obine acelai rezultat n cazul convoluiei circulare i liniare funcioneaz i n cazul

    12

    3

    nxnx 21

    0 21 n

    11 1114

    n210

    nR xx 21~

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    14

    calculului corelaiei: dac secvena nx1 are lungimea 1N , nx2 are lungimea 2N , corelaia lor are lungimea 121 NN , deci se adaug 12 N zerouri secvenei nx1 , respectiv 11 N zerouri secvenei nx2 . 1.3 Sisteme liniare i invariante n timp. Cauzalitate. Stabilitate. 1.3.1 Cauzalitate. Stabilitate.

    Definiie Un sistem discret este un operator T care transform un semnal discret de

    intrare nx (excitaie), genernd un semnal discret de ieire, ny (rspuns): nynxT .

    Definiie Un sistem discret este invariant n timp sau invariant la translaie dac la

    excitaia 0nnx corespunde rspunsul 0nny , unde nynxT .

    Definiie Un sistem discret este liniar dac la excitaia nxbnxa 21 corespunde

    rspunsul nybnya 21 , unde nynxT 11 i nynxT 22 , C ba, .

    Definiie Se numete funcia pondere a unui sistem discret secvena nh de

    rspuns a sistemului la o excitaie impuls unitate n .

    Definiie Semnalul nx este cauzal dac 0nx pentru 0n .

    Observaie Un sistem liniar invariant n timp este caracterizat n domeniul timp de funcia

    pondere.

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    15

    Definiie Un sistemul LIT caracterizat de funcia pondere nh este un sistem cauzal

    dac 0nh , pentru 0n .

    Definiie Un sistem liniar invariant n timp LIT poate fi: )

    a) recursiv, dac este descris de ecuaia:

    N

    k

    L

    kknxkbknykany 1 0

    , sau

    N

    k

    L

    kknxkbknyka0 0

    cu

    Nkaaka

    kk

    k

    ,,1pt.,',0pt.,1' (1.10)

    b) nerecursiv, dac este descris de o ecuaie de forma:

    Lk

    nxkbny 0 (1.11)

    Ecuaiile (1.10) i (1.11) se numesc ecuaii cu diferene finite ale sistemului i sunt echivalente cu ecuaiile difereniale folosite pentru caracterizarea sistemelor continue. Dup forma funciei pondere sistemele discrete pot fi:

    )

    i) cu rspuns finit la impulsul unitate RFI; ii) cu rspuns infinit la impulsul unitate RII.

    Definiie Un sistem discret LIT este stabil n sens Intrare mrginit - Ieire mrginit

    dac unei secvene de intrare mrginite finit ,, 11 MnMnx N i corespunde o secven de ieire mrginit N nMnyM , nctastfel finit 22 (Bounded Input - Bounded Output: BIBO).

    Observaii )

    a) Convoluia este o metod de aflare a rspunsului sistemului discret LIT la secvena de intrare nx cnd se cunoate funcia pondere a sistemului.

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    16

    Dac inem cont c pentru un sistem LIT sunt valabile urmtoarele: - n determin rspunsul nh (n condiii iniiale nule) - mn determin rspunsul mnh - mnmx determin rspunsul mnhmx - m mnmx determin rspunsul

    m mnhmx

    obinem pentru rspunsul generat la ieirea sistemului discret LIT expresia:

    m mmnhmxmnxmhny (1.12)

    unde nx este semnalul de intrare iar nh este funcia pondere a sistemului. Relaia (1.12) poate fi utilizat pentru calculul rspunsului doar n cazul sistemelor RFI, unde secvena pondere are lungime finit. n cazul sistemelor RII rspunsul se calculeaz cu ecuaia cu diferene finite (1.10).

    b) Se poate arta c analiza stabilitii n sens BIBO pentru sisteme LIT este echivalent cu verificarea condiiei c funcia pondere nh este absolut sumabil:

    n

    nh , iar pentru sisteme cauzale: 0n

    nh

    1.3.2 Folosirea convoluiei pentru calculul rspunsului sistemelor LIT Pentru sisteme cauzale LIT i secvene de intrare cauzale avem:

    nhnxmnxmhnym

    0

    ,

    unde operaia desemnat prin simbolul * este convoluia liniar. Presupunem c secvenele nx i nh sunt de lungime finit, 1N ,

    respectiv 2N ; o metod eficient de calcul a convoluiei liniare este bazat pe folosirea transformatei Fourier discrete, astfel:

    - se calculeaz TFTD/TFD a celor dou secvene; - se efectueaz produsul acestor transformate; - se calculeaz transformata Fourier n timp discret invers, sau transformata

    Fourier discret invers pentru obinerea secvenei de ieire.

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    17

    nyeHeXeYeHnh eXnx FjjjjF

    jF

    1

    (1.13)

    Transformata Fourier discret poate fi determinat cu ajutorul unor algoritmi eficieni de calcul (algoritmi pentru calculul transformatei Fourier rapide - TFR).

    2 Aplicaii 2.1 Demo i Help

    )

    a) Se lanseaz n execuie programul MATLAB. Mesajul afiat pe ecran informeaz utilizatorul c are acces la programele

    demonstrative demo i help. b) Parcurgei pas cu pas programele demonstrative disponibile, pentru a

    vedea facilitile oferite de MATLAB. c) Utilizai help numeFuncie pentru a obine informaii despre urmtoarele

    comenzi: load, save, plot, subplot, axis, xlabel, ylabel, title.

    Comentai n scris, folosind informaiile obinute, programul prezentat n exemplul 1, reinnd faptul c n MATLAB, comentariile se introduc precedate de semnul %.

    %Exemplul 1 t=0:0.1:20; figure; plot(t,sin(5*t)+0.2*sin(t)),title('y=sin(5*t)+0.2*sin(t)');grid on xlabel('timpul t'); ylabel('y'); axis([-1 21 -1.3 1.3]); %Scalare figure; subplot(221),plot(t,sin(5*t)),title('Desen 1: Fereastra stanga sus');grid on xlabel('s'); ylabel('y=sin(5*t)');ylim([-1.5 1.5]); subplot(222),plot(t,0.2*sin(t));grid on xlabel('s'); ylabel('y=0.2*sin(t)');ylim([-1.5 1.5]); title('Desen 2: Fereastra dreapta sus'); subplot(223);%sau subplot(2,2,3); plot(t,sin(5*t)+0.2*sin(t));title('Desenul 3: Fereastra stanga jos');grid on xlabel('s'); ylabel('sin(5*t)+0.2*sin(t)');ylim([-1.5 1.5]); title('Desen 3: Fereastra stanga jos');

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    18

    subplot(224),plot(t,sin(5*t)-0.2*sin(t));grid on xlabel('s'); ylabel('sin(5*t)-0.2*sin(t)');ylim([-1.5 1.5]); title('Desen 3: Fereastra dreapta jos'); suptitle('Figura cu spatiul de desenare impartit intr-o matrice 2x2');

    d) Desenai graficul funciei Bessel pentru 0 i 1 , cu x n intervalul 10,0 (pasul 0.25). Graficele se vor realiza n fereastra corespunztoare jumtii superioare a ecranului.

    %d figure; x=0:.25:30; alpha=0; subplot(411),plot(x,besselj(alpha,x)),title('alpha = 0');grid on subplot(412),plot(x,besselj(1,x));title('alpha = 1');grid on subplot(413),plot(x,besselj(2,x));title('alpha = 2');grid on subplot(414),plot(x,(1/2)*(besselj(0,x)-besselj(2,x)));title('J^''_1(x) = (1/2)*(J_0(x)-J_2(x))');xlabel('x');grid on

    e) Fie vectorul v = [0 1 2 3 4 5 6 7 8 9]. Precizm c indexul elementelor vectorilor n MATLAB aparine intervalului n,1 n loc de 1,0 n , corespunztor altor medii de programare (C++ de ex.).

    - Testai dac el conine cel puin un element diferit de zero, folosind funcia any(v);

    - Testai dac toate elementele vectorului sunt nenule, folosind funcia all(v); Notai definiia funciei all;

    - Scriei liniile de program necesare aflrii valorilor maxim (funcia max), minim (funcia min), medie (funcia mean), median (funcia median) a vectorului v.

    - Scriei liniile de program necesare calculului abaterii standard a valorii elementelor vectorului (funcia std); f) Repetai punctul e), fcnd modificrile necesare pentru a funciona, pentru

    matricea X, creat ca matrice Vandermonde, pornind de la vectorul v. %e v = [0 1 2 3 4 5 6 7 8 9]; X = vander(v) i = 1; j = 6; k = 9; %linia i X(i,:) %coloana j X(:,j) %primele doua coloane, citite coloana dupa coloana X(1:20)

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    19

    %primele doua linii, toate coloanele X(1:2,:) %coloanele de la j pana la k, toate liniile X(:,j:k) %toata matricea X(:,:) %toata matricea scrisa sub forma vectoriala (o singura coloana), %coloana dupa coloana X(:) %toata matricea X %desenarea valorilor statistice importante, calculate pe coloane figure,boxplot(X(:,7:end)) %f v = [0 1 2 3 4 5 6 7 8 9], w = 1:1:9, disp(['Exista elemente nenule in v: ' num2str(any(v)) ' si in w: ' num2str(any(w))]); disp(['Toate elementele sunt nenule in v: ' num2str(all(v)) ' si in w: ' num2str(all(w))]); maxv = max(v); maxw = max(w); disp(['maxv = ' num2str(maxv) ', maxw = ' num2str(maxw)]); minv = min(v); minw = min(w); disp(['minv = ' num2str(minv) ', minw = ' num2str(minw)]); meanv = mean(v); meanw = mean(w); disp(['meanv = ' num2str(meanv) ', meanw = ' num2str(meanw)]); medianv = median(v); medianw = median(w); disp(['medianv = ' num2str(medianv) ', medianw = ' num2str(medianw)]); stdv = std(v); stdw = std(w); disp(['stdv = ' num2str(stdv) ', stdw = ' num2str(stdw)]); varv = var(v); varw = var(w); disp(['varv = ' num2str(varv) ', varw = ' num2str(varw)]);

    Observaie Matricea X va avea ca penultim coloan vectorul v , iar elementele matricei

    au valorile vander(i,j) = v(i)(n -j).

    g) Precizai ce realizeaz comenzile de mai jos: :,::,,::,,:,,:,:, XXkjXiXkjXjX

    %g v = 0:1:11; X = vander(v(1:2:end)) disp('daca exista elemente nenule, pe coloane - any'); any(X) disp('exista elemente nule - find'); [i,j] = find(X==0) disp('daca toate elementele sunt nenule, pe coloane - all'); all(X) %valori statistice pe coloane

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    20

    disp(['maximul pe coloane (max) = ' num2str(max(X))]); disp(['minimul pe coloane (min) = ' num2str(min(X))]); disp(['valoarea medie pe coloane (mean) = ' num2str(mean(X))]); disp(['valoarea mediana pe coloane (median) = ' num2str(median(X))]); disp(['abaterea standard pe coloane (std) = ' num2str(std(X))]); %valori statistice pe linii disp(['maximul pe linii (max(X,[],1)) = ' num2str(max(X,[],1))]); disp(['minimul pe linii (min(X,[],1)) = ' num2str(min(X,[],1))]); disp(['valoarea medie pe linii (mean(X,1)) = ' num2str(mean(X,1))]); disp(['valoarea mediana pe linii (median(X,1)) = ' num2str(median(X,1))]); disp(['abaterea standard pe linii (std(X,[],1)) = ' num2str(std(X,[],1))]);

    h) Cu ajutorul toolbox-ului timeseries calculai valoarea median, minim, maxim, etc. dintr-o secven. Reprezentai valorile calculate utiliznd boxplot. %h %folosirea valorilor statistice pe serii de timp t=0:0.1:20; TS = timeseries(sin(5*t)+0.2*sin(t),t); TS.mean TS.max TS.min TS.var TS.std TS.median tstool(TS)%pentru analiza imediata a semnalului figure,plot(TS),grid on figure,boxplot(squeeze(TS.data))%pentru desenarea valorilor statistice mai importante figure,boxplot(shiftdim(TS.data))%renuntam la dimensiunile ce nu-s necesare, cu squeeze sau shiftdim

    2.2 Operaii cu secvene )

    a) Fie vectorii 12321 xx , unde 3N este lungimea maxim a secvenei. Urmrii exemplul 3, care realizeaz convoluia i corelaia vectorilor. Notai rezultatele pentru convoluia, respectiv corelaia periodic, considernd secvenele 1231231231 px , 1231231232 px . Folosii scrierea matricial pentru calculul convoluiei circulare. n tabelul 1 sunt prezentate rezultatele obinute. % exemplul 3 x1 = [1 2 3]; x2 = [1 1 1]; % Convolutia liniara c = conv(x2, x1); figure subplot(311),stem(0:2,x2);xlim([-3 3]);title('x2');grid on subplot(312),stem(0:2,x1);xlim([-3 3]);title('x1');grid on subplot(313),stem(-2:2,c);xlim([-3 3]);title('convolutie x1 cu x2');grid on

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    21

    suptitle('Convolutia x1 cu x2'); % Convolutia periodica x1p = repmat(x1,1,2); x2p = repmat(x2,1,2); d = conv(x1p, x2p); figure subplot(311);stem(0:5,x1p);xlim([-6 6]);grid on subplot(312);stem(0:5,x2p);xlim([-6 6]);grid on subplot(313);stem(-5:5,d);xlim([-6 6]);grid on suptitle('Convolutia periodica'); % autoconvolutia circulara % o posibilitate de calcul in acest caz a = [1 3 2;... circshift([1 3 2],[1 1]);... circshift([1 3 2],[1 2])]; circ=a*x1'; figure subplot(211),stem(0:2,circ);xlim([-3 3]);title('convolutia circulara calculata');grid on %acelasi lucru il obtinem prin functia cconv subplot(212),stem(0:2,cconv(x1,x1,3));xlim([-3 3]);title('convolutia circulara din Matlab');grid on % Desenarea rezultatelor convolutiei liniare si circulare figure subplot(211),stem(-2:2,c);xlim([-3 3]);title('Convolutie liniara');grid on subplot(212),stem(0:2,circ);xlim([-3 3]);title('Convolutie circulara');grid on % Corelatia mutuala m = xcorr(x2, x1); figure subplot(311),stem(0:2,x2);xlim([-3 3]);title('x2');grid on subplot(312),stem(0:2,x1);xlim([-3 3]);title('x1');grid on subplot(313),stem(-2:2,m);title('corelatie x2 cu x1');grid on suptitle('Corelatia a doua semnale'); % Normalizarea valorii corelatiei (cu 1/length(x)) norm = xcorr(x2, x1, 'biased'); figure subplot(311),stem(0:2,x2);xlim([-3 3]);title('x2');grid on subplot(312),stem(0:2,x1);xlim([-3 3]);title('x1');grid on subplot(313),stem(-2:2,norm);xlim([-3 3]);title('Corelatia normalizata, x2 cu x1');grid on % Autocorelatia x1_autocorr = xcorr(x1); figure

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    22

    subplot(311),stem(0:2,x1);xlim([-3 3]);title('x1');grid on subplot(312),stem(0:2,x1);xlim([-3 3]);title('x1');grid on subplot(313),stem(-2:2,x1_autocorr);xlim([-3 3]);title('Corelatie mutuala (autocorelatia x1)');grid on % Corelatia circulara % Folosim scrierea matriciala a=[x1; circshift(x1,[1 1]);... circshift(x1,[1 2])]; rcirc=a*x1'; figure subplot(311),stem(0:2,x1);xlim([-3 3]);title('x1');grid on subplot(312),stem(0:2,x1);xlim([-3 3]);title('x1');grid on subplot(313),stem(0:2,rcirc);xlim([-3 3]);title('Corelatie circulara');grid on

    b) Fie vectorii 321a , 654b , unde 3N este lungimea maxim a secvenei.

    - Realizai (teoretic) convoluia vectorilor a i b . - Scriei instruciunile necesare n MATLAB pentru a repeta punctul a). - Inserai secvenele:

    t=clock;

    ...operaii... etime(clock,t);

    pentru a calcula durata fiecreia dintre operaiile efectuate (convoluie/corelaie). c) Pentru secvenele nx1 , nx2 din figur determinai i desenai

    convoluia liniar nxnx 21 * .

    d) Se dau dou secvene cu duratele 6 i 4: 0 2, 1, 2,- 3,0, , 1- 2, 3, 2, . - Scriei instruciunile MATLAB pentru determinarea lui nxnxny 211 *

    folosind operaia de convoluie. Reprezentai grafic rezultatul.

    nx1

    n210

    2 2

    543

    11

    2

    1

    nx2

    n210 543

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    23

    - Scriei instruciunile MATLAB pentru determinarea lui nxnxny 122 * folosind operaia de convoluie. Reprezentai grafic rezultatul. Comparai rezultatul cu rezultatul anterior.

    Proprietile operaiilor cu secvene )

    a) Verificai proprietile de comutativitate, asociativitate, distributivitate, liniaritate ale convoluiei, scriind n MATLAB instruciunile corespunztoare. Se vor considera secvenele:

    5,0,0,0,0,1,1,11 nnx 3,1,2,3,2,1,1,2,4,3,0,2,12 nx 1,0,1,0,13 nx

    b) Pornind de la definiia convoluiei discrete:

    m mnxmxnxnx 2121 artai c:

    - dac 01 nx pentru 0n , atunci:

    0 2121 m mnxmxnxnx - dac 02 nx pentru 0n , atunci

    n

    mmnxmxnxnx 2121

    - dac 01 nx pentru 0n i 02 nx pentru 0n (convoluie ntre secvene cauzale), atunci

    n

    mmnxmxnxnx

    0 2121

    Se vor considera pentru calculul numeric secvenele:

    6,0,2

    cos1

    nnnx ,

    5=1,

    4,3,2,0 1,0,1

    2

    nnn

    nx

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    24

    Observaii )

    a) O modalitate interesant de generare a valorii n MATLAB este urmtoarea: se calculeaz 1log (logaritmul natural), innd cont c

    xyizabsz /arctanloglog , unde 1,0 xy ) . Se determin rspunsul: 0.0000 + 3.1416 i.

    b) Pentru generarea secvenelor nx1 , nx2 se poate folosi secvena de instruciuni MATLAB urmtoare: x1 = cos((0:6)*pi/2); x2 = [1 1 0 0 0 1];

    c) tiind c importana operaiei de convoluie const i n faptul c operaii elementare (excepie: operaiile neliniare) pot fi reprezentate prin convoluii cu semnale elementare alese corespunztor, scriei instruciunile MATLAB necesare pentru a arta c:

    - operaia de convoluie cu secvena impuls unitate las secvena nx neschimbat.

    - multiplicarea cu un scalar este echivalent convoluiei cu secvena na ("a" scalar).

    - ntrzierea n timp este echivalent convoluiei cu mn : mnnxmnx *

    - sumarea eantioanelor anterioare este echivalent convoluiei cu secvena treapt unitate:

    0,00,1

    nn

    nu

    Se va considera secvena 1,2,3,3,2,1nx , se va nota i se va desena rezultatul fiecrei operaii.

    c) Fie nx p,1 i nx p,2 sunt secvene periodice cu perioada 6N , date de:

    3

    cos,1nnpx

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    25

    n=,

    ,,,n, n,

    nx p51

    4321001

    ,2

    Scriei instruciunile MATLAB necesare calculului convoluiei periodice a secvenelor nx p,1 i nx p,2 , notai i reprezentai grafic rezultatul.

    d) Fie secvenele periodice:

    0,0,5,4,3,2,11 nx , 0,0,0,1,1,1,12 nx - Calculai cu ajutorul MATLAB convoluia circular n 7 puncte a acestor

    secvene. - Presupunnd c secvenele sunt finite i neperiodice, gsii convoluia lor

    liniar. - Sunt rezultatele identice sau nu? Explicai i indicai soluia pentru obinerea

    aceluiai rezultat. Verificai cu ajutorul MATLAB soluia propus. e) Calculai i reprezentai grafic convoluia liniar, periodic i circular, a

    dou secvene de lungime 4, definite astfel: 0,1,2,11 nx , 1,0,2,32 nx . f) Dou secvene de lungime 3N , nx1 i nx2 sunt desenate mai jos:

    Calculai cu ajutorul programului MATLAB i reprezentai grafic: - convoluia liniar nxnx 21 * . - convoluia circular nxnx 21 . - corelaia mutual nxxR 21 . - autocorelaia secvenei nx1 , nxxR 11

    nx1

    n2

    10

    3

    -2

    3

    nx2

    n21

    0-1

    2

    -2

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    26

    - autocorelaia circular a secvenei nx1 , nxxR 11~

    2.3 Aplicaii ale operaiilor cu secvene. Sisteme LIT )

    a) Fie sistemul discret cu funcia pondere nuanh n . Dac la intrare se aplic secvena nnx

    21 , calculai secvena de rspuns, ny , folosind

    convoluia. Realizai calculul teoretic i cu ajutorul programului MATLAB. b) Determinai rspunsul sistemului descris de funcia pondere

    0,44

    cos1707.0

    nnnnh la secvena de intrare treapt unitate, teoretic i cu ajutorul mediului de programare MATLAB. Notai instruciunile folosite i rezultatul obinut.

    c) Rspunsul unui sistem la secvena n este

    00

    41

    31

    211 ,,,,,nh .

    - Reprezentai grafic secvenele: n , nh , mn , mnh . - Determinai i desenai rspunsul sistemului la secvena de intrare:

    0,00,4

    nn

    nx

    - Fie secvenele nh i nx din figur. Determinai rspunsul sistemului LIT cu ajutorul operaiei de convoluie.

    d) Rspunsul unitar al unui sistem liniar invariant n timp (LIT) este dat n tabelul urmtor:

    n 0 1 2 3 4 5 6

    nh 0.0 0.0 3.0 0.75 0.56 0.23 0.0

    nh

    n210

    32

    543

    01

    4

    nx

    n210

    2

    4

    876543

    2

  • Capitolul 1 - Semnale i sisteme discrete. Secvene unidimensionale. Operaii cu secvene: convoluia i corelaia. Sisteme discrete liniare i invariante n timp (LIT)

    27

    Semnalul de intrare n sistem este nunx 5 , unde nu este secvena treapt unitate. Folosii operaia de convoluie pentru a afla rspunsul sistemului ny , pentru 43210 ,,,,n .

    Bibliografie 0)

    1) Ungureanu Georgeta Mihaela - Analiza i prelucrarea semnalelor: aplicaii n ingineria biomedical, MATRIX ROM, 2013; 2) Ungureanu G. Mihaela Prelucrarea digital a semnalelor, MATRIX ROM, 2008; 3) Ungureanu Mihaela, Munteanu Cristian, Dumitras Adriana, Vieru Rodica, Coordonator: Prof.Dr.Ing. Lazarescu Vasile - Prelucrarea digital a semnalelor. Aplicaii Matlab, Matrix ROM, 2003; 4) Richard A. Haddad, Thomas W. Parsons - Digital Signal Processing. Theory, Applications and Hardware; Computer Science Press, USA, 1991;

    5) Emmanuel C. Ifeachor, Barrie W. Jervis - Digital Signal Processing. A Practical Approach; Addison - Wesley Publ. Comp., USA, 1993;

    6) Vasile Lazarescu - Prelucrarea digitala a semnalelor; Amco Press, Bucuresti, Romnia, 1995;

    7) John J. Proakis, Dimitris G. Manolakis - Digital Signal Processing. Principles, Algorithms and Applications; Maxwell MacMillan Intl, Singapore, 1992;

    8) Robert D. Strum, Donald E. Kirk - First Principles of Discrete Systems and Digital Signal Processing; Addison - Wesley Publ. Comp., USA, 1988;

    9) Alan V. Oppenheim, Roland W. Schaffer - Discrete Time Signal Processing - Prentice-Hall International, Inc., 1988

    10) Marin Ghinea, Virgil Fireteanu - MATLAB- calcul numeric, grafica, aplicatii, Teora, 1995