Sunteți pe pagina 1din 10

Proiectarea diferenţiatoarelor FIR prin

metoda Remez

Gaina Dragos-Iulian
Aia 3231-A
Cuprins
Proiectarea diferenţiatoarelor FIR prin metoda Remez.............................................................................1
Introducere.............................................................................................................................................3
Clasificarea filtrelor digitale....................................................................................................................4
Etape in proiectarea filtrelor digitale.....................................................................................................4
Sinteza Filtrelor cu Răspuns Finit la Impuls............................................................................................5
Caracterizarea filtrelor FIR......................................................................................................................5
Filtre cu răspuns finit la impuls de fază liniară.......................................................................................6
Proiectarea filtrelor digitale FIR speciale:..............................................................................................7
Algoritmul iterativ Remez parcurge următoarele etape:.......................................................................8
Proiectarea diferenţiatoarelor FIR prin metoda Remez.........................................................................8
Implementarea in Matlab a filtrelor FIR prin metoda Remez................................................................9
Exemplu de cod in Matlab cu metoda Remez........................................................................................9
Bibliografie............................................................................................................................................10
Introducere

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.
Fata de filtrarea analogica, cea numerica este preferata datorita unor serii de
avantaje pe care acestea le au:
 Pot avea caracteristici care nu pot fi realizate cu ajutorul filtrelor analogice.
 Nu variaza cu variabilele mediului( ex. temperatura), eliminand necestitatea
unei calibrarii periodice.
 Sunt mai multe semnale care pot fi filtrate de un singur filtru digital, fara
anumite modificari ale structurii, prin multiplexare.
 Datele pot fi stocate pentru o prelucrare ulterioara
 Pot fi realizate in dimensiuni mici folosindu-se de tehnologia VLSI, avand
un prêt scazut si o putere relativ mica.
 Performantele filtrelor digitale pot fi folosite de la procesor la procesor, fara
necesitatea reglajelor
 Pot fi folosite la frecvente foarte mici, unde cele analogice nu sunt de ajutor

Orice avantaj este urmat si de o serie de dezavantaje, cele mai importante fiind :
 Limitarea vitezei. Latimea benzii semnalelor care pot fi produse de un filtru
digital este mult mai mica in comparatie cu cele analogice. În funcţionarea
în timp real, conversia analog/digitală (A/D) şi digital/analogicã (D/A)
introduce restricţii de viteză. In plus viteza operatiei depinde si de viteza
procesorului digital si numarul de operatii pe care le executa acestea.
 Filtrele digitale sufera de zgomot de cuantizare al CAD-urilor si de cel de
rotunjire, aparut in timpul calculelor, care duc la o degradare a
performantelor acestora
 Timpul mare necesar proiectarii si dezvoltarii, fiind unul mult mai mare fata
de cel al filtrelor analogice
Clasificarea filtrelor digitale

Filtrele digitale pot fi impartite in doua mari clase :


1. Filtre cu raspuns finit la impuls (FIR).
2. Filtre cu raspuns infinit la impuls (IIR)
Oricare din cele doua tipuri poate fi reprezentat prin raspunsul la impuls h[n], ( n ∈
N pentru filtre cauzale)
Intrarea şi ieşirea filtrului sunt legate prin suma de convoluţie, dată de relaţia
Pentru filtre FIR

Pentru filtre IIR

Pentru filtrele IIR raspunsul la impuls este infinit iar pentru filtrele FIR raspunsul
la impuls are M valori. In practica, pentru filtrele IIR se foloseste alta forma,
pentru ca lungimea filtrului este teoretic ifinita, de aceea se foloseste ecuatia cu
diferente in forma recursiva :

unde ak, bk sunt coeficienţii filtrului, iar M şi N reprezintă gradul polinomului


numărătorului, respectiv numitorului funcţiei de transfer.

Etape in proiectarea filtrelor digitale

Proiectarea unui filtru digital presupune parcurgerea anumitor etape :


1. Specificarea cerintelor filtrului
2. Calculul coeficientilor
3. Stabilirea unui criteriu de calitate pentru raspunsul obtinut in
comparatie cu raspunsul dorit.
4. Realizarea filtrului intr-o structura potrivita
5. Analiza efectelor lungimii finite aspura performantelor acestora
6. Implementare soft/hard
In cazul unor erori pe parcursul etapelor, acestea pot fi repetate.

Sinteza Filtrelor cu Răspuns Finit la Impuls

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.
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:

unde: - hn , n = 0, M - 1 sunt coeficienţii răspunsului la impuls al filtrului;


- 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
Filtre cu răspuns finit la impuls de fază liniară

Unul dintre cele mai simple tipuri de filtre ce poate fi proiectat este filtrul FIR de
fază liniară. Aşa cum va rezulta ulterior, numai filtrele FIR pot avea faza liniară,
condiţie cerută în multe aplicaţii practice. Un filtru FIR de lungime M are
răspunsul în frecvenţă, respectiv funcţia de transfer de forma :

unde coeficienţii filtrului, {bn }, sunt valorile răspunsului la impuls al filtrului

Funcția de transfer H(ω), periodică în frecvență cu perioada 2π, poate fi exprimată


după cum urmează:

Trecerile prin zero ale funcţiei de transfer conduc la salturi de fază de π radiani,
aşa încât θ(ω) are discontinuităţi în acele puncte. Din acest motiv se preferă
următoarea formă pentru funcţia de transfer:

Principalele proprietati ale functiei de transfer sunt :


 În cazul în care filtrul FIR are coeficienţii h[n] reali (aşa cum se întâmplă în
majoritatea situaţiilor ce prezintă interes din punct de vedere practic),
caracteristica de modul H(ω) este o funcţie pară, iar cea de fază ϕ(ω) sau
θ(ω) este o funcţie impară.
 Funcţia HR(ω) denumită funcţie de transfer de fază zero este o funcţie reală
şi continuă, putând lua atât valori pozitive cât şi negative. Funcţia ϕ(ω) este,
de asemenea, o funcţie continuă.
 Funcţia θ(ω) prezintă salturi de π radiani la frecvenţele la care HR(ω) are
treceri prin zero, numite frecvenţe de rejecţie. Acestea pot fi uşor
identificate pe caracteristica de fază.
Condiţia de fază liniară se obţine prin impunerea unei condiţii de simetrie pară sau
pozitivă asupra răspunsului la impuls al filtrului, numită uneori, simplu, condiţie de
simetrie, adică
h[n] = h[M - 1 - n]
sau a unei condiţii de simetrie impară sau negativă asupra răspunsului la impuls al
filtrului, adică
h[n] = −h[M −1− n]
numită și condiție de asimetrie.

Proiectarea filtrelor digitale FIR speciale:

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.
Există mai multe proceduri de proiectare a filtrelor optimale, dintre care cea mai
folosită este metoda de schimb Remez, ce va fi prezentată în continuare.
Teorema alternanţei reprezintă suportul teoretic al acestei metode şi garantează
unicitatea soluţiei problemei de aproximare Cebîşev. Se alege un set iniţial de frecvenţe
presupuse a fi cele L+2 frecvenţe de extrem ale funcţiei eroare ponderată Ep(ω). În
funcţie de filtrul proiectat, unele din aceste frecvenţe au o localizare bine precizată. De
pildă, în cazul unui filtru trece jos de tipul 1, din setul iniţial vor face parte frecvenţele: 0,
ωp, ωs, π .La frecvenţele setului iniţial eroarea ponderată, dată de relaţia, este forţată să
aibă valoarea maximă δ=δs, semnul alternând conform relaţiei.

Iniţial, nu se cunosc nici frecvenţele de extrem ωk, nici parametrii αn şi δ. Aflarea


acestora cu ajutorul algoritmului Remez începe prin a presupune un set de frecvenţe de
extrem ωk.

Algoritmul iterativ Remez parcurge următoarele etape:


1. Se alege un set iniţial de L+2 puncte de extrem ω(1)={ω0 (1), ω1 (1), ...,
ωL+1(1)} aparţinând domeniului de aproximare S.
2. Se determină valoarea δ(1) prin rezolvarea sistemului ce forţează eroarea
ponderată să ia în cele L+2 puncte această valoare, cu semnul alternând de la un
punct de extrem la altul.
3. Se evaluează P (ωk) la frecvenţele alese şi apoi se calculează P(ω) prin
interpolare Lagrange, după care se evaluează eroarea ponderată ( ) (1) Ep ω ,
reţinând pentru noul ciclu de iteraţie cele L+2 frecvenţe de extrem unde eroarea
înregistrează cele mai mari extreme în valoare absolută, cu condiţia ca semnul
erorii să alterneze în punctele selectate.
4. Dacă |ωk (i+1) - ωk (i)|≤ ε pentru orice k=0, 1,..., L+1 (ε fiind o abatere foarte
mică impusă la proiectare), atunci procesul iterativ este oprit, trecând la etapa a 5-
a. În caz contrar, se alege noul set de frecvenţe de extrem ω(i+1) şi se reiau etapele
2 şi 3.
5. Se calculează coeficienţii h[n] ai filtrului.

Proiectarea diferenţiatoarelor FIR prin metoda Remez


Diferenţiatoarele sunt folosite în multe sisteme analogice şi digitale pentru a obţine
derivata unui semnal. Un diferenţiator ideal are răspunsul în frecvenţă proporţional cu
frecvenţa. Răspunsul în frecvenţă al unui diferenţiator digital ideal este

Răspunsul la impuls corespunzător lui Hd (ω) este

Este imposibil de obţinut un diferenţiator pentru toată banda cu un filtru FIR cu număr
impar de coeficienţi, deoarece (π ) = 0 HR . În practică aceste diferenţiatoare de bandă
largă sunt foarte rar folosite. În cele mai multe cazuri, caracteristica răspunsului dorit în
frecvenţă trebuie să fie liniară numai într-un domeniu limitat de frecvenţe, p 0 ≤ ω ≤ 2πf ,
unde p f este lăţimea de bandă a diferenţiatorului
Implementarea in Matlab a filtrelor FIR prin metoda Remez
 [n,fo,ao,w]=remezord(f,a,dev) 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 benzii (între 0 și F2/2)
a este un vector ce specifică amplitudinile dorite în benzile specificate de f.
Lungimea lui f este de două ori lungimea lui a minus 2.
dev este un vector de aceeași lungime ca a și specifică deviația maximă
permisă a riplurilor între răspunsul real în frecvență și cel dorit, pentru fiecare
bandă.
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 să fie minimizată. Uneori filtrele proiectate în acest mod se numesc filtre
de tip equiriplu.
 b=remez(n,f,a) 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:
f este un vector de perechi ale eșantioanelor în frecvență din domeniul 0 la
1, unde 1 corespunde la FS/2. 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ă.
f și a trebuie să aibă aceeași lungime. Lungimea trebuie să fie un număr par
 b=remez(n,f,a,w) utilizează vectorul w pentru a pondera forma în fiecare bandă.
Lungimea lui w este ½ din cea a lui f și a.
 Se utilizează b=remez(n,fo,ao,w) cu ordinul n, vectorul frecvență fo , răspunsul în
amplitudine ao și ponderile rezultate din [n,fo,ao,w]=remezord (f,a,dev).
 b=remez(n,f,a,’type’) specifică tipul filtrului:

Exemplu de cod in Matlab cu metoda Remez

f = [0 0.3 0.4 0.6 0.7 1]; a = [0 0 1 1 0 0];


b = remez(17,f,a);
[h,w] = freqz(b,1,512);
plot(f,a,w/pi,abs(h))
legend('Ideal','remez Design')
Rezultatul va fi un grafic care va contine frecventa unui filtru de bandă Parks-McClellan

de ordin 17;

Bibliografie

http://www.eed.usv.ro/~alexandra/files/curs_lab/PDS/Lab_6_PDS.pdf

http://www.ece.northwestern.edu/local-apps/matlabhelp/toolbox/signal/remez.html

https://books.google.ro/books?
id=RFQuDD_kaQ0C&pg=PA595&lpg=PA595&dq=remez+matlab&source=bl&ots=7qEgRYMkS8&sig=ACfU
3U0GrrR6OtK1V2HS5XkgXxKGSHfORw&hl=ro&sa=X&ved=2ahUKEwj2hbv51-
DpAhWOqaQKHZ7gDQUQ6AEwBHoECAoQAQ

http://telecom.etc.tuiasi.ro/pns/curs/cap2_fir_proiectarea%20filtrelor%20digitale.pdf

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