Filtru liniar - Linear filter
Filtrele liniare procesează semnale de intrare care variază în timp pentru a produce semnale de ieșire, sub rezerva constrângerii liniarității . În majoritatea cazurilor, aceste filtre liniare sunt, de asemenea, invariante în timp (sau invariante în schimbare ), caz în care pot fi analizate exact folosind teoria sistemului LTI („liniar în timp invariant”), dezvăluind funcțiile lor de transfer în domeniul frecvenței și răspunsurile lor la impulsuri în timp domeniu. Implementările în timp real ale unor astfel de filtre liniare de procesare a semnalului în domeniul timpului sunt inevitabil cauzale , o constrângere suplimentară asupra funcțiilor lor de transfer. Un circuit electronic analogic format doar din componente liniare (rezistențe, condensatori, inductoare și amplificatoare liniare) va intra în mod necesar în această categorie, la fel ca și sistemele mecanice comparabile sau sistemele digitale de procesare a semnalului care conțin doar elemente liniare. Deoarece filtrele liniare invariante în timp pot fi complet caracterizate prin răspunsul lor la sinusoide de diferite frecvențe ( răspunsul lor în frecvență ), acestea sunt uneori cunoscute sub numele de filtre de frecvență.
Implementările în timp real ale filtrelor liniare invariante în timp nu trebuie să fie cauzale. De asemenea, sunt utilizate filtre cu mai multe dimensiuni, cum ar fi procesarea imaginilor . Conceptul general de filtrare liniară se extinde și în alte domenii și tehnologii, cum ar fi statistica , analiza datelor și ingineria mecanică .
Răspunsul la impuls și funcția de transfer
Un filtru liniar de invariant în timp (LTI) poate fi specificat în mod unic prin răspunsul său la impuls h , iar ieșirea oricărui filtru este exprimată matematic ca convoluția intrării cu acel răspuns de impuls. Răspunsul în frecvență , dat de funcția de transfer a filtrului , este o caracterizare alternativă a filtrului. Obiectivele tipice de proiectare a filtrelor sunt realizarea unui anumit răspuns de frecvență, adică mărimea funcției de transfer ; importanța fazei funcției de transfer variază în funcție de aplicație, în măsura în care forma unei forme de undă poate fi distorsionată într-o măsură mai mare sau mai mică în procesul de obținere a unui răspuns dorit (amplitudine) în domeniul frecvenței. Răspunsul în frecvență poate fi adaptat, de exemplu, pentru a elimina componentele de frecvență nedorite dintr-un semnal de intrare sau pentru a limita un amplificator la semnale dintr-o anumită bandă de frecvențe.
Răspunsul la impuls h al unui filtru cauzal liniar invariant în timp specifică ieșirea pe care filtrul ar produce-o dacă ar primi o intrare constând dintr-un singur impuls la momentul 0. Un „impuls” într-un filtru de timp continuu înseamnă o funcție delta Dirac ; într-un filtru de timp discret se va aplica funcția delta Kronecker . Răspunsul la impuls caracterizează complet răspunsul oricărui astfel de filtru, în măsura în care orice semnal de intrare posibil poate fi exprimat ca o combinație (posibil infinită) de funcții delta ponderate. Înmulțirea răspunsului la impuls modificat în timp în funcție de sosirea fiecăreia dintre aceste funcții delta cu amplitudinea fiecărei funcții delta și însumarea acestor răspunsuri împreună (conform principiului suprapunerii , aplicabil tuturor sistemelor liniare) dă forma de undă de ieșire.
Din punct de vedere matematic, aceasta este descrisă ca convoluția unui semnal de intrare care variază în timp x (t) cu răspunsul la impuls al filtrului h , definit ca:
Prima formă este forma continuă, care descrie, de exemplu, sistemele electronice mecanice și analogice. A doua ecuație este o versiune discretă utilizată, de exemplu, de filtrele digitale implementate în software, așa-numita procesare a semnalului digital . Răspunsul la impuls h caracterizează complet orice filtru liniar de invariant în timp (sau de schimbare-schimbare în cazul timpului discret). Se spune că intrarea x este " convolvată " cu răspunsul la impuls h având o durată (posibil infinită) a timpului T (sau a N perioade de eșantionare ).
Proiectarea filtrelor constă în găsirea unei posibile funcții de transfer care poate fi implementată în cadrul anumitor constrângeri practice dictate de tehnologia sau de complexitatea dorită a sistemului, urmată de un design practic care realizează acea funcție de transfer folosind tehnologia aleasă. Complexitatea unui filtru poate fi specificată în funcție de ordinea filtrului.
Printre filtrele de domeniu de timp pe care le considerăm aici, există două clase generale de funcții de transfer al filtrelor care pot aproxima un răspuns de frecvență dorit. Tratamente matematice foarte diferite se aplică proiectării filtrelor denumite filtre cu răspuns la impuls infinit (IIR), caracteristice sistemelor electronice mecanice și analogice și filtrelor cu răspuns la impuls finit (FIR), care pot fi implementate de sisteme de timp discrete , cum ar fi computerele (numite apoi procesarea semnalului digital ).
Filtre de răspuns la impulsuri infinite
Luați în considerare un sistem fizic care acționează ca un filtru liniar, cum ar fi un sistem de arcuri și mase, sau un circuit electronic analogic care include condensatori și / sau inductori (împreună cu alte componente liniare, cum ar fi rezistențe și amplificatoare ). Când un astfel de sistem este supus unui impuls (sau oricărui semnal de durată finită), acesta răspunde cu o formă de undă de ieșire care durează peste durata de intrare, decăzând în cele din urmă exponențial într-o manieră sau alta, dar niciodată complet deconectând la zero (matematic vorbind ). Se spune că un astfel de sistem are un răspuns la impuls infinit (IIR). Integrala de convoluție (sau însumarea) de mai sus se extinde în toate timpurile: T (sau N) trebuie setat la infinit.
De exemplu, luați în considerare un oscilator armonic amortizat, cum ar fi un pendul sau un circuit rezervor LC rezonant . Dacă pendulul a fost în repaus și ar fi să-l lovim cu un ciocan („impulsul”), punându-l în mișcare, acesta s-ar oscila înainte și înapoi („rezonează”), să zicem, cu o amplitudine de 10 cm. După 10 minute, să zicem, pendulul ar fi tot oscilant, dar amplitudinea ar fi scăzut la 5 cm, jumătate din amplitudinea inițială. După alte 10 minute, amplitudinea sa ar fi de doar 2,5 cm, apoi 1,25 cm etc. Cu toate acestea, nu ar ajunge niciodată la o odihnă completă și, prin urmare, numim acest răspuns la impuls (lovindu-l cu un ciocan) ca durată „infinită”.
Complexitatea unui astfel de sistem este un specificat prin ordinul său N . N este adesea o constrângere asupra proiectării unei funcții de transfer, deoarece specifică numărul de componente reactive dintr-un circuit analogic; într-un filtru digital IIR numărul de calcule necesare este proporțional cu N.
Filtre de răspuns la impulsuri finite
Un filtru implementat într-un program de computer (sau așa-numitul procesor de semnal digital ) este un sistem în timp discret; un set diferit (dar paralel) de concepte matematice definește comportamentul unor astfel de sisteme. Deși un filtru digital poate fi un filtru IIR dacă algoritmul care îl implementează include feedback , este, de asemenea, posibil să implementați cu ușurință un filtru al cărui impuls merge cu adevărat la zero după N pași de timp; aceasta se numește un filtru de răspuns la impuls finit (FIR).
De exemplu, să presupunem că unul are un filtru care, atunci când este prezentat cu un impuls într-o serie de timp:
- 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ...
generează o serie care răspunde la acel impuls la momentul 0 până la momentul 4 și nu mai are niciun răspuns, cum ar fi:
- 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 .....
Deși răspunsul la impuls a durat 4 pași de timp după intrare, începând cu momentul 5 a trecut cu adevărat la zero. Măsura răspunsului la impuls este finită , iar aceasta ar fi clasificată ca un filtru FIR de ordinul patru. Integrala de convoluție (sau însumarea) de mai sus trebuie să se extindă numai pe întreaga durată a răspunsului la impuls T sau ordinea N într-un filtru de timp discret.
Probleme de implementare
Filtrele analogice clasice sunt filtre IIR, iar teoria clasică a filtrelor se concentrează pe determinarea funcțiilor de transfer date de funcțiile raționale de ordin scăzut , care pot fi sintetizate folosind același număr mic de componente reactive. Folosind computere digitale, pe de altă parte, ambele filtre FIR și IIR sunt ușor de implementat în software.
Un filtru digital IIR poate aproxima, în general, răspunsul dorit al filtrului folosind o putere de calcul mai mică decât un filtru FIR, totuși acest avantaj este de multe ori inutil, având în vedere puterea crescândă a procesorelor digitale. Ușurința de proiectare și caracterizare a filtrelor FIR le face preferabile proiectantului de filtru (programator) atunci când este disponibilă o putere de calcul amplă. Un alt avantaj al filtrelor FIR este că răspunsul lor la impuls poate fi făcut simetric, ceea ce implică un răspuns în domeniul frecvenței care are fază zero la toate frecvențele (fără a lua în considerare o întârziere finită), ceea ce este absolut imposibil cu orice filtru IIR.
Răspunsul în frecvență
Răspunsul de frecvență sau funcția de transfer a unui filtru se poate obține dacă răspunsul la impuls este cunoscut, sau direct prin analiză folosind transformatele Laplace , sau în sisteme discrete Z-transformare . Răspunsul în frecvență include, de asemenea, faza în funcție de frecvență, cu toate acestea, în multe cazuri, răspunsul la fază este de puțin sau deloc interes. Filtrele FIR pot fi făcute să aibă fază zero, dar cu filtre IIR, ceea ce este în general imposibil. Cu majoritatea funcțiilor de transfer IIR există funcții de transfer conexe care au un răspuns de frecvență cu aceeași magnitudine, dar cu o fază diferită; în majoritatea cazurilor este preferată așa-numita funcție de transfer de fază minimă .
Filtrele din domeniul orar sunt cel mai adesea solicitate să urmeze un răspuns de frecvență specificat. Apoi, o procedură matematică găsește o funcție de transfer a filtrului care poate fi realizată (în anumite constrângeri) și aproximează răspunsul dorit la un anumit criteriu. Specificațiile comune de răspuns la filtru sunt descrise după cum urmează:
- Un filtru trece-jos trece frecvențe joase în timp ce blochează frecvențe mai mari.
- Un filtru trece-înalt trece frecvențe înalte.
- Un filtru band-pass trece o bandă (gama) de frecvențe.
- Un filtru de oprire a benzii trece frecvențe înalte și joase în afara unei benzi specificate.
- Un filtru de notch are un răspuns nul la o anumită frecvență. Această funcție poate fi combinată cu unul dintre răspunsurile de mai sus.
- Un filtru all-pass trece toate frecvențele la fel de bine, dar modifică relația de fază dintre acestea.
- Un filtru de egalizare nu este conceput pentru a trece sau bloca complet orice frecvență, ci pentru a varia treptat răspunsul amplitudinii în funcție de frecvență: filtrele folosite ca filtre pre-accent , egalizatoare sau controale de ton sunt exemple bune.
Funcții de transfer FIR
Respectarea unei cerințe de răspuns în frecvență cu un filtru FIR utilizează proceduri relativ simple. În forma cea mai de bază, răspunsul de frecvență dorit în sine poate fi eșantionat cu o rezoluție de și Fourier transformat în domeniul timpului. Aceasta obține coeficienții filtrului h i , care implementează un filtru FIR cu fază zero care se potrivește cu răspunsul de frecvență la frecvențele eșantionate utilizate. Pentru a se potrivi mai bine cu un răspuns dorit, trebuie redus. Cu toate acestea, durata răspunsului la impuls al filtrului și numărul de termeni care trebuie adunați pentru fiecare valoare de ieșire (conform convoluției discrete de timp de mai sus) sunt date de unde T este perioada de eșantionare a sistemului de timp discret (N-1 este denumită și ordinea unui filtru FIR). Astfel, complexitatea unui filtru digital și timpul de calcul implicat crește invers , plasând un cost mai mare asupra funcțiilor de filtrare care aproximează mai bine comportamentul dorit. Din același motiv, funcțiile de filtrare al căror răspuns critic este la frecvențe mai mici (în comparație cu frecvența de eșantionare 1 / T ) necesită un filtru FIR de ordin superior, mai intens din punct de vedere al calculului. Un filtru IIR poate fi astfel mult mai eficient în astfel de cazuri.
În altă parte, cititorul poate găsi discuții suplimentare despre metodele de proiectare pentru proiectarea practică a filtrului FIR .
Funcții de transfer IIR
Deoarece filtrele analogice clasice sunt filtre IIR, a existat o lungă istorie de studiu a gamei de funcții de transfer posibile implementând diverse răspunsuri dorite de filtrare de mai sus în sisteme de timp continuu. Folosind transformări este posibil să convertiți aceste răspunsuri de frecvență de timp continuu la cele care sunt implementate în timp discret, pentru a fi utilizate în filtrele digitale IIR. Complexitatea oricărui astfel de filtru este dată de ordinea N, care descrie ordinea funcției raționale care descrie răspunsul în frecvență. Ordinea N este de o importanță deosebită în filtrele analogice, deoarece un N - lea ordin de filtru electronic necesită N elemente reactive (condensatoare și / sau inductoare) să pună în aplicare. Dacă un filtru este implementat folosind, de exemplu, etape biquad folosind op-amperi , sunt necesare etape N / 2. Într-o implementare digitală, numărul de calcule efectuate pe eșantion este proporțional cu N. Astfel, problema matematică este de a obține cea mai bună aproximare (într-un anumit sens) la răspunsul dorit folosind un N mai mic, așa cum vom ilustra acum.
Mai jos sunt răspunsurile de frecvență ale mai multor funcții de filtrare standard care aproximează un răspuns dorit, optimizat conform unor criterii. Acestea sunt toate filtre de trecere joasă de ordinul cinci, proiectate pentru o frecvență de tăiere de .5 în unități normalizate. Răspunsurile de frecvență sunt afișate pentru filtrele Butterworth , Chebyshev , Chebyshev invers și eliptice .
După cum reiese din imagine, filtrul eliptic este mai ascuțit decât celelalte, dar în detrimentul valurilor atât în banda de trecere cât și în banda de oprire. Filtrul Butterworth are cea mai slabă tranziție, dar are un răspuns mai uniform, evitând undele fie în banda de trecere, fie în banda de oprire. Un filtru Bessel (neprezentat) are o tranziție și mai slabă în domeniul frecvenței, dar menține cea mai bună fidelitate de fază a unei forme de undă. Diferite aplicații subliniază cerințe de proiectare diferite, ducând la alegeri diferite între aceste (și alte) optimizări sau necesitând un filtru de ordin superior.
Exemple de implementări
Un circuit popular care implementează un filtru RC activ de ordinul doi este designul Sallen-Key , a cărui diagramă schematică este prezentată aici. Această topologie poate fi adaptată pentru a produce filtre low-pass, band-pass și high pass.
Un N - lea filtru FIR comandă poate fi implementat într - un sistem de timp discret cu ajutorul unui program de calculator sau hardware specializat , în care semnalul de intrare este supusă etapelor de întârziere N. Ieșirea filtrului este formată ca suma ponderată a acelor semnale întârziate, așa cum este descris în diagrama de flux de semnal însoțitoare. Răspunsul filtrului depinde de coeficienții de ponderare notate b 0 , b 1 , .... b N . De exemplu, dacă toți coeficienții ar fi egali cu unitatea, așa-numita funcție boxcar , atunci ar implementa un filtru low-pass cu un câștig de frecvență scăzut de N + 1 și un răspuns de frecvență dat de funcția sinc . Forme superioare pentru răspunsul în frecvență pot fi obținute folosind coeficienți derivați dintr-o procedură de proiectare mai sofisticată.
Matematica proiectării filtrelor
Filtre electronice analogice liniare |
|---|
|
|
Filtre simple
|
Teoria sistemului LTI descrie filtre liniare de invariant în timp (LTI) de toate tipurile. Filtrele LTI pot fi complet descrise prin răspunsul lor în frecvență și răspunsul de fază , ale căror specificații definesc în mod unic răspunsul la impuls și invers . Din punct de vedere matematic, filtrele LTI IIR în timp continuu pot fi descrise în termeni de ecuații diferențiale liniare , iar răspunsurile lor la impulsuri pot fi considerate funcțiile ecuației lui Green . Filtrele LTI în timp continuu pot fi, de asemenea, descrise în termeni de transformare Laplace a răspunsului lor la impuls, care permite analizarea tuturor caracteristicilor filtrului luând în considerare modelul de zerouri și poli ai transformării lor Laplace în planul complex . În mod similar, filtrele LTI în timp discret pot fi analizate prin transformarea Z a răspunsului lor la impuls.
Înainte de apariția instrumentelor de sinteză a filtrelor computerizate, instrumentele grafice precum graficele Bode și graficele Nyquist erau utilizate pe scară largă ca instrumente de proiectare. Chiar și astăzi, acestea sunt instrumente neprețuite pentru a înțelege comportamentul filtrelor. Cărțile de referință au reprezentat grafice extinse de răspuns de frecvență, răspuns de fază, întârziere de grup și răspuns de impuls pentru diferite tipuri de filtre, de diferite ordine. De asemenea, conțineau tabele de valori care arătau cum să implementați filtre precum scările RLC - foarte utile atunci când elementele de amplificare erau costisitoare în comparație cu componentele pasive. O astfel de scară poate fi, de asemenea, proiectată pentru a avea o sensibilitate minimă la variația componentelor, o proprietate greu de evaluat fără instrumente informatice.
Au fost dezvoltate multe modele diferite de filtre analogice, fiecare încercând să optimizeze unele caracteristici ale răspunsului sistemului. Pentru filtrele practice, este uneori de dorit un design personalizat, care poate oferi cel mai bun compromis între diferite criterii de proiectare, care pot include numărul și costul componentelor, precum și caracteristicile de răspuns ale filtrelor.
Aceste descrieri se referă la proprietățile matematice ale filtrului (adică frecvența și răspunsul de fază). Acestea pot fi implementate ca circuite analogice (de exemplu, folosind o topologie a filtrului Sallen Key , un tip de filtru activ ) sau ca algoritmi în sistemele digitale de procesare a semnalului .
Filtrele digitale sunt mult mai flexibile de sintetizat și de utilizat decât filtrele analogice, unde constrângerile proiectului permit utilizarea lor. În special, nu este necesar să se ia în considerare toleranțele componentelor și se pot obține niveluri foarte ridicate de Q.
Filtrele digitale FIR pot fi implementate prin convoluția directă a răspunsului de impuls dorit cu semnalul de intrare. Ele pot fi proiectate cu ușurință pentru a oferi un filtru potrivit pentru orice formă de impuls arbitrară.
Filtrele digitale IIR sunt deseori mai dificil de proiectat, din cauza unor probleme, inclusiv probleme cu intervalul dinamic, zgomotul de cuantificare și instabilitate. De obicei, filtrele digitale IIR sunt proiectate ca o serie de filtre digitale biquad .
Toate filtrele de timp continuu de ordin secundar de tip low-pass au o funcție de transfer dată de
Toate filtrele de timp continuu de ordin secundar de tip band-pass au o funcție de transfer dată de
Unde
- K este câștigul (câștig DC de trecere joasă sau câștig de bandă de mijloc) ( K este 1 pentru filtrele pasive)
- Q este factorul Q
- este frecvența centrală
- este frecvența complexă
Vezi si
- Design filtru
- Transformarea Laplace
- Funcția lui Green
- Filtru prototip
- Transformarea Z
- Teoria sistemului
- Filtru neliniar
- Filtru Wiener
- Filtru Gabor
- Filtru Leapfrog