Lucrarea 7. Sinteza Filtrelor cu Răspuns Finit la Impuls

Podobné dokumenty
Concursul PRIN LABIRINTUL MATEMATICII ediţia a XI-a, Baia Mare, 26 noiembrie CLASA a IV-a

Manual despre introducerea ofertei de către participant în casa de eaucție în sistemul PROebiz

MIFID_FORMS_LIST_ROM

Republica Serbia MINISTERUL ÎNVĂŢĂMÂNTULUI ŞI ŞTIINŢEI INSTITUTUL PENTRU EVALUAREA CALITĂŢII ÎNVĂŢĂMÂNTULUI ŞI EDUCAŢIEI

Foarte formal, destinatarul ocupă o funcţie care trebuie folosită în locul numelui

SYMBOL SYMBOL SYMBOL SYMBOL DOKKER SYMBOL. Beépítési utasítások. Beépítési utasítások 取付説明書 取付説明書. Beépítési utasítások 取付説明書. Montavimo instrukcija

EPSICOM INDICATOR DE TEMPERATURĂ ÎN 4 PUNCTE EP Ready Prototyping. Cuprins. Idei pentru afaceri. Hobby & Proiecte Educationale

BPT-SP. Manual de instrucţiuni de instalare şi utilizare. Termostat pentru controlul la distanţă a panourilor radiante

TBT001. Montážní návod Montážny návod Szerelési útmutató Ghid de asamblare

Při návrhu FIR filtru řešíme obvykle následující problémy:

Din analiza datelor primite de la societățile de asigurare rezultă următoarele:

Dynamic Signals. Ananda V. Mysore SJSU

Contoare digitale de energie activă, cu certificare MID

Život v zahraničí Dokumenty

Opticum 4060 CX. opticum OPTICUM 4060 CX. Digitální satelitní přijímač.

Logitech Wireless Gaming Mouse G700 Features Guide

Programul zilei. Elementele de bază ale GIS

Platformă forestieră pentru transport lemn scurt

Cestování Obecné. Obecné - Základy. Obecné - Konverzace. Pro zeptání se na pomoc. Pro zeptání se, zda člověk mluví anglicky

PŘENOSNÝ SKENER S DISPLEJEM

RD RD RD RD 25203

ÚPGM FIT VUT Brno,

Nápady Pomůcky Zábava. Bezpečnostní upozornění: Cod

LC-26SH330E LC-32SH330E LC-42SH330E

TIPURI DE DATE DEFINITE DE UTILIZATOR

Călătorie Servire în oraș

Mr. Adam Smith Smith's Plastics 8 Crossfield Road Selly Oak Birmingham West Midlands B29 1WQ

COUNCIL OF THE EUROPEAN UNION. Brussels, 13. April /10. Interinstitutional File: 2009/0002 (ACC) JUR 198

agenți operativi spioni Știți deja cum se joacă Nume de cod? Mergeți direct la pagina 11.

MĚŘENÍ ÚHLOVÝCH KMITŮ ZA ROTACE

14/10/2015 Z Á K L A D N Í C E N Í K Z B O Ž Í Strana: 1

SIGNÁLY A SOUSTAVY, SIGNÁLY A SYSTÉMY

Vopsea Ecologica. Alb. Gri. Euroinvest. Nuc. Nuc Verona 1. Finisaj Portasynchro 3D. Acacia Auriu

Topografie efectuata cu usurinta

For Model No. MP10WOM EN. User Manual

Základní metody číslicového zpracování signálu část I.


Návrh filtrů FIR, metoda okénkování, klasická okna, návrh pomocí počítače. Návrh filtrů IIR, základní typy filtrů, bilineární transformace

ESL 8316RO CS MYČKA NÁDOBÍ NÁVOD K POUŽITÍ 2 RO MAŞINĂ DE SPĂLAT VASE MANUAL DE UTILIZARE 21 SK UMÝVAČKA NÁVOD NA POUŽÍVANIE 41

VŠEOBECNÉ. 1 Rádi obdržíme vaše náměty a připomínky Așteptăm cu drag propunerile și observațiile dvs. 8 Kalkulačka/Kalkulačky Calculator/Calculatoare

CONVERSAŢII CU DUMNEZEU

Tensiometru digital pentru braţ Manual de utilizare

FILTRACE VE FOURIEROVSKÉM SPEKTRU

Finisaj Super Matt. Alb. Vopsea Ecologica UV. Ivoriu (RAL9010) RAL. Finisaj Portaperfect 3D. Stejar. Stejar. Havana. California.

Při návrhu FIR filtru řešíme obvykle následující problémy:

Biosignál přehled, snímání, zpracování, hodnocení

CAPITOLUL IX METODE DE CALCULAŢIE BAZATE PE COSTUL COMPLET

Filtrace obrazu ve frekvenční oblasti

A7B31ZZS 10. PŘEDNÁŠKA Návrh filtrů 1. prosince 2014

Název: Komplexní čísla zobrazení v rovině


MAi PIESA LUNII FILTRU DE POLEN


Buletinul informativ nr. 2 al radioamatorilor din judetul Arad

Česky. 1. Úvodní poznámka

Despre noi 3 Marcarea produselor 7. Forma, dimensiunea și specificația... 7 Marcarea corpurilor abrazive... 8 Profiluri standard...

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

... CS CHLADNIČKA S EN3481AOX EN3481AOW EN3487AOH EN3487AOO EN3487AOY EN3487AOJ

7.1. Číslicové filtry IIR

Lineární a adpativní zpracování dat. 3. Lineární filtrace I: Z-transformace, stabilita

Grădinărit fără efort.

2. Číslicová filtrace

IAE64413XB. CS Návod k použití 2 Varná deska RO Manual de utilizare 24 Plită SK Návod na používanie 47 Varný panel USER MANUAL

Rekurentní filtry. Matlab

CS Návod k použití 2 Varná deska RO Manual de utilizare 17 Plită HG654320


Chladnička s mrazničkou Frigider cu congelator

5. PŘEDNÁŠKA 21. března Signály srdce I

FLORE SANITA. TECHNICKÝ LIST TL 324/2003 Datum vydání: Datum revize:


Arzator de gaz cu aer insuflat

Návod k použití KŘOVINOŘEZ. Profi 750, Profi 1800

Číslicová filtrace. FIR filtry IIR filtry. ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická

HKB64540NB. CS Návod k použití 2 Varná deska RO Manual de utilizare 23 Plită SK Návod na používanie 44 Varný panel USER MANUAL

EN3854MOX CS CHLADNIČKA S MRAZNIČKOU RO FRIGIDER CU CONGELATOR NÁVOD K POUŽITÍ 2 MANUAL DE UTILIZARE 21

Agon 600. Instruction Manual PWPS-060P02G-BU01B. Manual de utilizare Uživatelský manuál

Skladem v Praze zaslání do 24 hodin Skladem v každém SCHRACK STORE možnost osobního odběru

EGG6042 CS VARNÁ DESKA NÁVOD K POUŽITÍ 2 RO PLITĂ MANUAL DE UTILIZARE 17 SL KUHALNA PLOŠČA NAVODILA ZA UPORABO 33

Opakování z předmětu TES

KX-TG1612FX KX-TG1613FX KX-TG1712FX

Získejte nové zákazníky a odměňte ty stávající slevovým voucherem! V čem jsme jiní? Výše slevy Flexibilní doba zobrazení Délka platnosti voucheru

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

Dodatky k FT: 1. (2D digitalizace) 2. Více o FT 3. Více k užití filtrů. 7. přednáška předmětu Zpracování obrazů



MANUAL DE INSTALARE SISTEM DE PROTECȚIE PERIMETRALĂ. Maxim GUARD. v.2.0 Pagina 1

roses blush mineral midnight crossfire candy

B BACTEC MGIT 960 SIRE Kit

ŽÁDOST O DŮCHOD Z ČESKÉ REPUBLIKY CERERE PENTRU PENSIE DIN REPUBLICA CEHĂ

ROMÂNĂ БЪЛГАРСКИ ČESKY MAGYAR POLSKI

MANUAL DE COACHING O ABORDARE INOVATOARE PENTRU O MAI BUNA INTEGRARE A REFUGIATILOR

Multimediální systémy

Summer. Úsporné nápady na podporu vašeho podnikání! Idei low cost pentru promovarea afacerii Dumneavoastră. Summer 1

Jmenovitý průtok. Přípustné kolísání napětí AC ± 10%, DC ± 20% Ochrana. Označení modelů elektromagnetických ventilů sérií 3 a 4.

Cestování Stravování. Stravování - U vchodu. Stravování - Objednání jídla

Transformace obrazu Josef Pelikán KSVI MFF UK Praha

Spektrální analýza a diskrétní Fourierova transformace. Honza Černocký, ÚPGM

/0 (908)

ESL8345RO. CS Myčka nádobí Návod k použití 2 RO Maşină de spălat vase Manual de utilizare 24 SK Umývačka Návod na používanie 48

Waveletová transformace a její použití při zpracování signálů

Transkript:

Lucrarea 7 Un filtru digital sau numeric este un sistem discret care scalează şi/sau defazează în mod selectiv componentele spectrale ale semnalului discret de intrare, oferind la ieşire un semnal discret optim pentru scopul dorit. Scopul filtrării este de a îmbunătăţi calitatea semnalului (de a reduce sau înlătura zgomotul), de a extrage informaţii sau de a separa două sau mai multe semnale combinate. Filtrarea numerică este preferată celei analogice datorită unuia sau mai multor avantaje, dintre care enumerăm: 1. Filtrele numerice pot avea caracteristici imposibil de realizat cu filtrele analogice (de exemplu, fază perfect liniară, în cazul filtrelor FIR).. Spre deosebire de filtrele analogice, performanţele celor digitale nu variază cu variabilele mediului, de exemplu, temperatura. Aceasta elimină necesitatea calibrării periodice. 3. Diferite semnale de intrare pot fi filtrate de un singur filtru digital, fără modificarea structurii hard, prin multiplexare. 4. Atât datele filtrate cât şi cele nefiltrate pot fi stocate pentru o prelucrare ulterioară. 5. Folosind avantajele tehnologiei VLSI, aceste filtre pot fi realizate la dimensiuni mici, putere mică, preţ scăzut. 1. Elaborarea specificaţiilor filtrului Proiectarea unui filtru discret presupune trei etape importante: 1. Elaborarea specificaţiilor filtrului;. Determinarea parametrilor filtrului pentru a satisface specificaţiile; 3. Realizarea filtrului numeric printr-o structură specifică. Primul pas este specificarea caracteristicilor filtrului. Pentru exemplificare se prezintă în Figura 1 caracteristica de amplitudine a unui Filtru Trece Bandă (FTB). Pentru specificarea răspunsului în amplitudine, H ( ω ), se utilizează următorii parametri: ε - eroarea permisă în banda de trecere (B.T.) δ p - deviaţia din B.T. δ s - deviaţia din banda de oprire (B.O.) f p1, f p - frecvenţele de margine din B.T. fs1, f s - frecvenţele de margine din B.O. Deviaţiile din B.T. şi B.O. pot fi exprimate direct în unităţi de măsură corespunzătoare semnalului (V, A, etc) sau în db, când sunt definite astfel: 1+ δ p AP = log1 = log1 ( 1+ ε ) (1) 1 δ p 8

1+ δ p 1- δ p H(f) A S = log 1 δ s () banda de trecere (BT) banda de tranziţ ie ( BTr) BO banda de oprire (BO) δ S f S 1 f P 1 f P f S 1/ f Figura 1. Caracteristica de frecvenţă a unui FTB Pasul următor este cel al calculului coeficienţilor filtrului şi va fi prezentat pe larg în secţiunile următoare din lucrarea de laborator.. Noţiuni teoretice.1. Caracterizarea filtrelor FIR Un filtru cu răspuns finit la impuls (FIR de la acronimul în engleză Finite Impulse Response) poate fi caracterizat, în mod echivalent, prin una din ecuaţiile: Sau unde: - [ ] M 1 yn [ ] = hkxn [ ] [ k] (3) H z H k = M 1 k = h k z (4) ( ) [ ] k= M 1 j n = h k e ω (5) ( ω) [ ] hk, k =, M 1, sunt coeficienţii răspunsului la impuls al filtrului; k = - H( z ) este funcţia de transfer a filtrului; - M 1 este ordinul filtrului; -ω este pulsaţia normalizată cu dublul frecvenţei de eşantionare F s = ( T s Ts fiind perioada de eşantionare). Filtrele FIR sunt specifice domeniului discret şi nu pot fi obţinute prin transformarea filtrelor analogice. Răspunsul în frecvenţă, H(ω), poate fi exprimat sub forma: jθ ω H ω = H ω e (6) ( ) ( ) ( ) 81

Dacă hn [ ] este o funcţie reală, atunci H(ω)este o funcţie pară, iar Θ(ω) impară. Unul din cele mai simple filtre FIR este cel cu fază liniară. Numai filtrele FIR pot fi proiectate pentru a avea fază liniară. Se demonstrează că un filtru FIR are fază liniară, dacă şi numai dacă răspunsul la impuls, hn, [ ] satisface condiţia: hn [ ] =± hm [ 1 n], n=, M 1 (7) relaţie cunoscută şi sub numele de condiţia de liniaritate a lui Gibbs. Filtrele pentru care este îndeplinită condiţia de simetrie ( hn [ ] = hm [ 1 n] ) sunt utilizate, în general, pentru filtrare propriu-zisă, pe când cele pentru care este îndeplinită condiţia de asimetrie ( hn [ ] = hm [ 1 n] ) sunt utilizate în aplicaţii cu defazare (integrator, diferenţiator, transformator Hilbert)... Metode de aproximare a filtrelor FIR Metodele de aproximare ale funcţiei de transfer cel mai frecvent folosite în cazul filtrelor FIR sunt: 1) metoda ferestrelor de timp; ) metoda eşantionării în frecvenţă; 3) metoda optimală...1. Metoda ferestrelor Etapele de proiectare în cazul metodei ferestrelor sunt: 1 Se specifică răspunsul în frecvenţă dorit, notat H d ( ω ), atenuarea în banda de oprire, atenuarea în banda de trecere şi frecvenţele capetelor de bandă. De obicei răspunsul dorit se consideră a fi răspunsul filtrului ideal de acel tip; Se obţine răspunsul la impuls hd [ n ] prin calcularea transformatei Fourier inverse: π 1 jωn hd[ n] = Hd ( ω) e dω π (8) π Pentru filtrele selective de frecvenţă expresia pentru hd [ n ] este dată în Tabelul 1. În general, răspunsul la impuls hd [ n ] este de durată infinită şi, pentru a se obţine un filtru FIR, acesta trebuie trunchiat. Pentru un filtru FIR de lungime M trunchierea se face la n M 1 h n cu o funcţie =, ceea ce este echivalent cu multiplicarea lui d [ ] fereastră de lungime M, notată wn, [ ] având transformata Fourier ( ) W ω. 3 Se selectează funcţia fereastră prin a cărei folosire se satisfac specificaţiile filtrului, apoi se determină numărul de coeficienţi ai filtrului folosind relaţiile aproximative specificate în Tabelul (relaţiile dintre lăţimea benzii de tranziţie şi lungimea filtrului). 8

Tabelul 1. Răspunsurile ideale la impuls pentru filtre uzuale Tipul filtrului Răspunsul la impuls ideal h h [ n], n d FTJ fc sin( nωc ) ( nωc ) fc FTS fc sin( nωc ) ( nωc ) 1 fc FTB f sin( nω ) ( nω ) ( f f1) f1 sin( nω1) ( nω1) FOB f1 sin( nω1) ( nω1) 1 ( f f1) f sin( nω ) ( nω ) Tabelul. Parametrii ferestrelor de timp utilizate pentru proiectarea filtrelor FIR Tipul ferestrei Lăţimea benzii de tranziţie (normalizată) Riplul în banda de trecere (db) Atenuarea lob principal/ lob secundar (db) Atenuare în banda de oprire (db) Rectangular,9/M,7614 13 1 Hanning 3,1/M,546 31 44 Hamming 3,3/M,194 41 53 Blackman 5,5/M,17 57 74 Kaiser,93/M(β=4,54) 4,3/M(β=4,76) 5,71/M(β=8,96),76,75,75 4 Se obţin valorile lui wm [ ] coeficienţilor filtrului FIR, hn, [ ] după relaţia: hn [ ] h[ n] w [ n] d [ ] 5 7 9 n pentru funcţia fereastră aleasă şi valorile = d M (9) Efectele trunchierii în timp se manifestă în domeniul frecvenţă prin apariţia unor ripluri în banda de trecere şi în banda de oprire, precum şi o bandă de tranziţie de lăţime nenulă. În Tabelul sunt prezentaţi diverşi parametri ai ferestrelor utilizate în proiectare.... Metoda eşantionării în frecvenţă Această metodă permite proiectarea filtrelor FIR nerecursive pentru filtre standard (FTJ, FTS, FTB, FOB) şi filtre cu răspuns în frecvenţă arbitrar. De asemenea poate fi folosită şi pentru proiectarea filtrelor FIR recursive. Se poate specifica următorul set de frecvenţe, egal spaţiate, în care se specifică răspunsul în frecvenţă: 83

π M 1 ωk = ( k + α), k =,, pentru M impar M (1) M k =, 1, pentru M par α =, pentru filtre de tipul I sau α = 1, pentru filtre de tipul II. Se determină coeficienţii răspunsului la impuls, hn, [ ] al filtrului FIR, pornind de la aceste specificaţii în frecvenţă, egal decalate. Este de dorit să se optimizeze cerinţele în frecvenţă în banda de tranziţie a filtrului. Răspunsul în frecvenţă al unui filtru FIR este dat de relaţia: M 1 j n H ω = h n e ω (11) ( ) [ ] n= Se presupune că răspunsul filtrului este dat la frecvenţele specificate de relaţia (1). Se obţine: π H( k + α) = H ( k + α) M (1) M 1 j π( k+ α) n/ M H k + α = h[ n] e ( ) Din această relaţie, prin inversare, se obţine răspunsul la impuls [ ] de H ( k +α ). Rezultă deci: unde n= hn, în funcţie 1 hn [ ] = H( k+ α ) e n= M M Funcţia de fază zero a filtrului proiectat va fi: M 1 M 1 1 πα π k HR( ω) = Hd[ k + α] P( ω, k + α) = Hd[ k + α] Saω k= k= M M M M 1 jπ( k+ α) n M,, 1 (13) k=, (14) M πα π sin ω k πα π k M M Sa ω = M M 1 πα π sin ω k M M (15) Figura. Răspunsul de fază zero al filtrului dorit şi al celui real 84

Dacă hn [ ] este real, se observă că eşantioanele în frecvenţă H( k α ) + satisfac proprietatea de simetrie: H (16) hn face ca numărul de puncte în M + dacă M este impar şi la M / dacă M este par. Există patru situaţii posibile: hn simetric, α = ( k + α ) = H ( M k α ) Această condiţie împreună cu cea pentru [ ] care se precizează H ( ω ) să se reducă la ( 1)/ 1. [ ]. hn [ ] simetric, α = 1 3. hn [ ] antisimetric, α = 4. hn [ ] antisimetric, 1 α =. Pentru fiecare situaţie se stabileşte relaţia pentru răspunsul la impuls hn. [ ] Avantajul metodei eşantionării în frecvenţă constă în structura de eşantionare eficientă atunci când multe din eşantioanele răspunsului de modul în frecvenţă sunt zero. În scopul minimizării erorii se pot utiliza 1-3 eşantioane suplimentare situate în banda de tranziţie...3. Metoda optimală Aproximarea de tip Cebîşev este văzută ca un criteriu de proiectare optim, în sensul că eroarea de aproximare ponderată dintre răspunsul în frecvenţă dorit şi cel obţinut este întinsă uniform peste banda de trecere şi cea de oprire şi apoi se minimizează eroarea maximă. Această aproximare poate fi făcută utilizând metoda de schimb Remez sau metoda celor mai mici pătrate. 3. Implementarea în MATLAB a filtrelor FIR A. Pentru proiectarea filtrelor FIR cu ajutorul metodei ferestrelor şi a eşantionării în frecvenţă se folosesc următoarele funcţii: fir1 implementează metoda clasică a proiectării filtrelor FIR cu fază liniară prin metoda ferestrelor. Se pot proiecta filtre FTJ, FTS, FTB şi FOB. b=fir1(n,wn) returnează un vector b ce conţine n+1 coeficienţi ai unui filtru FIR, de tipul FTJ de ordin n, aproximat prin metoda ferestrei Hamming, cu frecvenţa de tăiere wn. Coeficienţii sunt ordonaţi în ordine descrescătoare a puterilor lui z. wn este un număr între şi 1, cu 1 corespunzând la F s /. Când wn este un vector cu două elemente wn=[w1 w], fir1 returnează un filtru FTB cu banda de trecere cuprinsă între w1 şi w. b=fir1(n,wn, type ) are aceeaşi semnificaţie ca cea anterioară. În plus specifică tipul filtrului prin parametrul type, care poate fi: - high pentru un filtru FTS cu frecvenţa de tăiere wn; - stop pentru un filtru FOB, dacă wn=[w1 w]. 85

fir1 utilizează întotdeauna un ordin n par pentru filtrele FTS şi FOB, datorită faptului că pentru ordin impar răspunsul în frecvenţă la frecvenţa Nyquist ( F s /) este. b=fir1(n,wn, window ) utilizează fereastra specificată 1 în vectorul coloană al ferestrei corespunzătoare.vectorul coloană trebuie să fie de lungime n+1. Dacă nu este specificată nici o fereastră, atunci implicit fir1 utilizează fereastra Hamming. b=fir1(n, wn, type, window ) acceptă drept parametri atât type cât şi window. Exemplu 1. Să se proiecteze un filtru TJ FIR de lungime 61, cu frecvenţa de tăiere (normalizată la 1 pentru la F s ) de,3, utilizând fereastra Kaiser (cu β = 4, 533514) şi să se reprezinte modulul răspunsului în frecvenţă. %Program P7_1 %Proiectarea unui filtru TJ FIR prin metoda ferestrelor %Length = 61, Beta = 4.533514 format long clf; beta=4.533514; kw=kaiser(61,beta); b=fir1(6,.3,kw); [H,omega]=freqz(b,1,51); mag=*log1(abs(h)); plot(omega/pi,mag); axis([ 1-8 5]);grid xlabel('\omega/\pi');ylabel('cistig, db'); title('proiectarea unui filtru TJ, FIR, cu fereastra Kaiser (cu \beta=4.533514)'); Se obţine răspunsul de amplitudine în frecvenţă din Figura 3. fir reprezintă o combinaţie dintre metoda ferestrelor şi cea de eşantionare în frecvenţă, fereastra aleasă implicit fiind fereastra Hamming. b=fir(n,f,m) returnează un vector linie b conţinând n+1 coeficienţi ai unui filtru FIR de ordinul n. Caracteristica amplitudine-frecvenţă a filtrului este cea dată de vectorii f şi m. - f este un vector ce conţine valorile frecvenţelor din domeniul de la la 1, unde 1 corespunde la FS/, pentru care se specifică amplitudinile corespunzătoare în vectorul m. Primul punct a lui f trebuie să fie şi ultimul 1. Punctele trebuie să fie în ordine crescătoare. - m este un vector ce conţine amplitudinile dorite la frecvenţele specificate în vectorul f. - f şi m trebuie să aibă aceeaşi lungime. (vezi help fir) 1 boxcar- pentru fereastra rectangulara; triang- pentru fereastra triunghiulara; blackman- pentru fereastra Blackman; bartlett- pentru fereastra Bartlett; hamming- pentru fereastra Hamming; hanning pentru fereastra Hanning; kaiser- pentru fereastra Kaiser 86

Proiectarea unui filtru TJ, FIR, cu fereastra Kaiser (cu β=4.533514) -1 - -3 Cistig, db -4-5 -6-7 -8.1..3.4.5.6.7.8.9 1 ω/π Figura 3. Răspunsul de amplitudine în frecvenţă pentru filtrul din Exemplul 1 Coeficienţii din b sunt ordonaţi în ordine descrescătoare a puterilor lui z. b=fir(n,f,m,window) utilizează fereastra specificată în vectorul coloană al ferestrei corespunzătoare. Vectorul coloană trebuie să fie de lungime n+1. Dacă nu este specificată nici o fereastră, atunci implicit fir utilizează fereastra Hamming. b=fir(n,f,m,npt,window) sau b=fir(n,f,m,npt) specifică numărul de puncte, npt, ale gridului în care fir interpolează răspunsul în frecvenţă, cu sau fără specificaţia de fereastră. Exemplul. Să se proiecteze un filtru FIR, având ordinul 1, prin metoda eşantionării în frecvenţă cu ajutorul comenzii fir. Caracteristica amplitudinefrecvenţă a filtrului este cea dată de vectorii fpts şi mval. %Program P7_ %Proiectarea unui filtru FIR prin metoda esantionarii in frecventa clf; fpts=[.8.3.5.5 1]; mval=[.3.3 1. 1..7.7]; b=fir(1,fpts,mval); [H,omega]=freqz(b,1,51); plot(omega/pi,abs(h)); grid; axis([ 1 1.]); xlabel('\omega/\pi');ylabel('amplitudine'); title('proiectarea unui filtru FIR prin metoda esantionarii in frecventa'); Se obţine răspunsul de amplitudine în frecvenţă din Figura 4. 87

Proiectarea unui filtru FIR prin metoda esantionarii in frecventa 1.8 Amplitudine.6.4..1..3.4.5.6.7.8.9 1 ω/π Figura 4. Răspunsul de amplitudine în frecvenţă pentru filtrul din Exemplul filter filtrează secvenţele cu un filtru FIR sau un filtru IIR y=filter(b,a,x) filtrează datele din vectorul x cu filtrul descris prin coeficienţii din vectorii b şi a şi obţine datele filtrate în vectorul y. filter poate avea date de intrare atât reale cât şi complexe. Exemplul 3 Să se proiecteze un filtru TB, FIR, prin metoda ferestrelor, utilizând fereastra Hamming, având ordinul 64, cu banda de trecere.3 w.6. Să se reprezinte răspunsul filtrului în frecvenţă al filtrului şi răspunsul la impuls în 1 de puncte. %Program P7_3 %Proiectarea unui filtru TB, FIR, prin metoda ferestrelor clf; b=fir1(64,[.3.6]); figure(1); freqz(b,1); n=:64; imp=[1 zeros(1,64)]; h=filter(b,1,imp); figure(); stem(n,h); grid on; title('raspunsul la impuls h[n]'); xlabel('n');ylabel('amplitudine'); Se obţine răspunsul în frecvenţă din Figura 5: 88

Magnitude (db) - -4-6 -8-1 -1.1..3.4.5.6.7.8.9 1 Normalized Frequency ( π rad/sample) 5 Phase (degrees) -5-1 -15 - -5.1..3.4.5.6.7.8.9 1 Normalized Frequency ( π rad/sample) Figura 5. Răspunsul în frecvenţă pentru filtrul din Exemplul 3 şi răspunsul la impuls din Figura 6:.3 Raspunsul la impuls h[n]..1 Amplitudine -.1 -. -.3 -.4 1 3 4 5 6 7 n Figura 6. Răspunsul la impuls al filtrului din Exemplul 3 B. Pentru proiectarea filtrelor FIR cu ajutorul metodei optimale se folosesc următoarele funcţii: fircls1 permite proiectarea filtrelor FIR cu fază liniară tip FTJ şi FTS, având la bază metoda celor mai mici pătrate b=fircls1(n,wo,dp,ds) generează un filtru Trece Jos, FIR cu fază liniară, de lungime n+1, cu frecvenţa de tăiere normalizată wo în domeniul [,1 ] (1 corespunzând la F s /), cu dp deviaţia maximă faţă de 1 din banda de trecere şi cu ds deviaţia maximă faţă de din banda de oprire. 89

b=fircls1(n,wo,dp,ds, high ) generează un filtru Trece Sus (ordinul n trebuie să fie par). b=fircls1(n,wo,dp,ds, design flag ) permite să se monitorizeze proiectarea filtrului, unde design filter poate fi: - trace pentru o afişare a unui tabel utilizat în proiectare - plots pentru trasarea grafică amplitudinii, întârzierii de grup a zerourilor şi polilor - both pentru afişarea atât tip text cât şi grafică firls are la bază proiectarea filtrelor FIR cu fază liniară prin metoda celor mai mici pătrate b=firls(n,f,a) returnează un vector b conţinând n+1 coeficienţi ai unui filtru FIR de ordinul n, a cărui caracteristică de amplitudine aproximează pe cea dată de vectorii f şi a. - f este un vector de frecvenţe de la pînă la 1, unde 1 corespunde la FS/. Punctele trebuie să fie în ordine crescătoare. - a este un vector ce conţine amplitudinile dorite la frecvenţele specificate în f. Amplitudinea dorită corespunzătoare frecvenţelor cuprinse între perechile de puncte (f(k),f(k+1)), cu k impar este un segment de dreaptă ce leagă punctele (f(k),a(k)) şi (f(k+1),a(k+1)). Amplitudinea dorită corespunzătoare frecvenţelor cuprinse între perechile de puncte (f(k),f(k+1)), cu k par este nespecificată. Spaţiile între astfel de puncte sunt regiuni ce nu interesează (don t care regions). - f şi a trebuie să aibă aceeaşi lungime. Lungimea trebuie să fie un număr par. b=firls(n,f,a, ftype ) specifică tipul filtrului în ftype după cum urmează: - hilbert pentru filtre FIR cu fază liniară şi simetrie impară. Această clasă include transformatorul Hilbert, ce are amplitudinea egală cu 1 în întreaga bandă. - differentiator pentru filtru cu fază liniară şi simetrie impară, utilizând o tehnică specială de ponderare după cum urmează: pentru o bandă cu amplitudine nenulă, eroarea medie pătratică este ponderată cu un factor egal cu (1/f), ceea ce face ca eroarea la frecvenţe mici să fie mult mai mică decât la frecvenţe ridicate; pentru filtrele FIR de tip diferenţiator, pentru care amplitudinea este proporţională cu frecvenţa, aceste filtre minimizează eroarea medie pătratică relativă (integrala pătratului raportului erorii şi al amplitudinii dorite). remezord estimează ordinul unui filtru FIR prin metoda optimală, utilizând algoritmul Parks-McClellan. [n,fo,ao,w]=remezord(f,a,dev,fs); determină ordinul, capetele normalizate ale benzilor, amplitudinile corespunzătoare şi ponderile care satisfac specificaţiile de intrare cuprinse în F, a şi dev ce vor fi utilizate cu comanda remez. - F este un vector ce reprezintă capetele benzilor (între şi Fs/) - a este un vector ce specifică amplitudinile dorite în benzile specificate de F. Lungimea lui F este de două ori lungimea lui a minus. 9

- dev este un vector de aceeaşi lungime ca a şi specifică deviaţia maximă permisă a riplului între răspunsul real în frecvenţă şi cel dorit, pentru fiecare bandă. - Fs este frecvenţa de eşantionare. remez proiectează un filtru FIR cu fază liniară utilizând metoda Parks- McClellan, ce are la bază algoritmul Remez. Filtrul proiectat este optimal în sensul că eroarea maximă între răspunsul în frecvenţă dorit şi răspunsul în frecvenţă obţinut este minimizată. Uneori filtrele proiectate în acest mod se numesc filtre de tip echiriplu. b=remez(n,fo,ao) returnează un vector linie b ce conţine cei n+1 coeficienţi ai unui filtru FIR de ordin n a cărui caracteristică amplitudine-frecvenţă este conţinută în vectorii F şi a: - fo este un vector de perechi ale eşantioanelor în frecvenţă din domeniul la 1, unde 1 corespunde la Fs/. Punctele trebuie să fie în ordine crescătoare. - ao este un vector ce conţine amplitudinile dorite la frecvenţele specificate în F. Amplitudinea dorită corespunzătoare frecvenţelor cuprinse între perechile de puncte (F(k),F(k+1)), cu k impar este un segment de dreaptă ce leagă punctele (F(k),a(k)) şi (F(k+1),a(k+1)). Amplitudinea dorită corespunzătoare frecvenţelor cuprinse între perechile de puncte (F(k),F(k+1)), cu k par este nespecificată. Spaţiile între astfel de puncte sunt regiuni ce nu interesează (don t care regions). - fo şi ao trebuie să aibă aceeaşi lungime. Lungimea trebuie să fie un număr par. b=remez(n,fo,ao,w) utilizează valorile din vectorul w pentru a pondera eroarea în fiecare bandă. Lungimea lui w este 1/ din cea a lui fo şi ao. Se utilizează b=remez(n,fo,ao,wo) cu ordinul n, vectorul frecvenţă fo, răspunsul în amplitudine ao şi ponderile rezultate prin rularea comenzii: [n,fo,ao,w]=remezord (F,a,dev,fs). b=remez(n,fo,ao, type ) specifică tipul filtrului: - hilbert pentru filtru cu fază liniară şi simetrie impară. Această clasă include transformatorul Hilbert, ce are amplitudinea egală cu 1 în întreaga bandă. - differentiator pentru filtru cu fază liniară şi simetrie impară, utilizând o tehnică specială de ponderare. Pentru o bandă cu amplitudine nenulă, eroarea este ponderată cu un factor egal cu 1/f ceea ce face ca eroarea la frecvenţe mici să fie mult mai mică decât la frecvenţe ridicate. Pentru filtrele FIR de tip diferenţiator, pentru care amplitudinea este proporţională cu frecvenţa, aceste filtre minimizează eroarea maximă relativă (maximul raportului dintre eroare şi amplitudinea corespunzătoare). Exemplul 4. Să se determine ordinul unui filtru Trece Jos FIR cu fază liniară utilizând comanda remezord, iar apoi să se proiecteze prin metoda optimală, utilizând metoda 91

Parks-McClellan şi să se reprezinte modulul răspunsului în frecvenţă al acestui filtru. Se ştie că frecvenţa de eşantionare este 8 Hz, banda de trecere este până la 15 Hz, iar cea de oprire începe la Hz. Deviaţia maximă în banda de trecere este.1, iar în banda de oprire.1. % Program P7_4 % Estimarea ordinului folosind remezord F=[15 ]; a=[1 ]; dev=[.1.1]; Fs=8; [n,fo,ao,w] = remezord(f,a,dev,fs); fprintf('ordinul filtrului este: %d \n',n); % Proiectarea unui filtru FIR echiriplu cu functia remez figure(1); clf; format long b = remez(n,fo,ao,w); %disp('coeficientii filtrului FIR'); disp(b) [H,w] = freqz(b,1,56); mag = *log1(abs(h)); plot(w/pi,mag);axis([ 1-8 5]); grid xlabel('\omega/\pi'); ylabel('cistig, db'); title('filtru FIR echiriplu cu faza liniara') 4. Proiectarea filtrelor FIR cu ajutorul instrumentelor interactive (SPTool) Toolbox-ul de procesare a semnalelor din MATLAB include o interfaţă grafică, numită SPTool. Cu ajutorul acestui instrument se pot proiecta filtre. Componenta care permite acest lucru este Filter Design. Pentru a deschide SPTool se tastează sptool la prompterul din MATLAB. Din fereastra care apare se selectează butonul New de sub coloana Filters. Fereasta care apare este cea din Figura 7. Interfaţa grafică din Figura 7 se poate deschide direct tastând comanda fdatool la prompterul din MATLAB. Se pot alege mai multe opţiuni pentru proiectarea filtrelor FIR: echiriplu (ce are la bază funcţia remez), cele mai mici pătrate (ce accesează funcţia firls), metoda ferestrelor (ce accesează funcţia fir1, cu diferite tipuri de ferestre) etc. Se pot selecta oricare din configuraţiile standard: FTJ, FTS, FTB şi FOB. Prin selectarea butoanelor corespunzătoare din bara de comenzi se pot vizualiza: specificaţiile filtrului, modulul răspunsului în frecvenţă (în db), faza răspunsului în frecvenţă, simultan modulul (în db) şi faza răspunsului în frecvenţă, întârzierea de grup, întârzierea de fază, răspunsul la impuls, răspunsul la treapta unitate, diagrama poli-zerouri, coeficienţii filtrului sau alte informaţii suplimentare despre filtrul proiectat. De asemenea, se pot plasa cum se doreşte, zerourile funcţiei de transfer sau se pot specifica coeficienţii filtrului, prin selectarea butoanelor din partea stângă-jos a interfeţei grafice din Figura 7. 9

Se poate filtra un semnal cu ajutorul unui filtru proiectat selectând filtrul din lista Filters, iar semnalul din lista Signals şi apoi selectând Apply. Semnalele din lista Signals se pot vizualiza selectând butonul View. Figura 7. Interfaţa grafică pentru proiectarea filtrelor FIR 5. Aplicaţii propuse 1. Să se reprezinte grafic ferestrele dreptunghiulară, triunghiulară, Hanning, Hamming, Blackman şi Kaiser (pentru diferite valori ale lui β ) utilizând comenzile: boxcar, bartlett, hanning, hamming, blackman şi kaiser. Să se determine şi să se reprezinte modulul răspunsului în frecvenţă al acestora. Să se noteze valorile lobilor secundari. Să se compare răspunsurile în frecvenţă şi să se precizeze ce fereastră asigură cea mai îngustă bandă de tranziţie. Trageţi concluzii cu privire la efectul acestor ferestre în proiectarea filtrelor FIR.. Să se sintetizeze un filtru FIR, de tip FTB, de ordinul 5, prin metoda ferestrelor (fereastră dreptunghiulară, Bartlett, Blackman, Hamming, Hanning, Kaiser), având limitele benzii de trecere Fp1=1 khz şi Fp=16 khz. Se consideră o frecvenţă de eşantionare de FS=96 khz. Pentru fiecare tip de fereastră să se reprezinte: - răspunsul în frecvenţă al filtrului; - răspunsul la impuls; - distribuţia zerourilor. 93

Comentaţi forma răspunsului la impuls şi distribuţia zerourilor sale. 3. Să se proiecteze un filtru FIR, de tip FTS, de ordinul 48, prin metoda eşantionării în frecvenţă, având frecvenţa limită a benzii de trecere Fp=1 khz, iar frecvența limită a benzii de oprire Fst=9.8 khz. Frecvenţa de eşantionare este FS =3 khz. Să se reprezinte răspunsul în frecvenţă al filtrului, precum şi localizarea zerourilor sale. 4. Să se proiecteze un filtru FTJ având ordin minim, cu frecvenţa de tăiere din banda de trecere de Fp=5 Hz şi frecvenţa din banda de oprire de Fst=6 Hz, având o frecvenţă de eşantionare FS= Hz, o atenuare de cel puţin 4 db în banda de oprire şi de cel mult 3 db în banda de trecere. 5. Semnalul analogic x( t) = cos( πft 1 ) + cos( πft ) ( F 1 = 3 khz şi F = 3. khz) se eşantionează cu frecvenţa F S = 15 khz. a) Să se determine analitic semnalul discret obţinut x[ n ], să se genereze pentru n =,199 şi să se reprezinte în domeniul timp şi în domeniul frecvenţă; în domeniul frecvenţă se va reprezenta modulul Tranformatei Fourier Discrete a secvenţei x[ n ]. b) Să se sintetizeze un filtru FIR care să rejecteze prima componentă din cele două existente în spectrul semnalului x[ n ]; c) Să se filtreze semnalul x[ n ] prin filtrul obţinut şi să se reprezinte semnalul din ieşirea filtrului în domeniul timp şi în domeniul frecvenţă. 6. Să se poiecteze un filtru FIR, având aceleaşi cerinţe ca cele specificate la punctul 4, utilizând interfaţa grafică SPTool. 94