Linjärt filter
Linjära filter behandlar tidsvarierande insignaler för att producera utsignaler, med förbehåll för linjäritetsbegränsningen . I de flesta fall är dessa linjära filter också tidsinvarianta (eller skiftinvarianta ) i vilket fall de kan analyseras exakt med hjälp av LTI ("linear time-invariant") systemteori som avslöjar deras överföringsfunktioner i frekvensdomänen och deras impulssvar i tiden domän. Realtidsimplementationer av sådana linjära signalbehandlingsfilter i tidsdomänen är oundvikligen kausala , en ytterligare begränsning för deras överföringsfunktioner. En analog elektronisk krets som endast består av linjära komponenter (motstånd, kondensatorer, induktorer och linjära förstärkare) kommer nödvändigtvis att falla i denna kategori, liksom jämförbara mekaniska system eller digitala signalbehandlingssystem som endast innehåller linjära element. Eftersom linjära tidsinvarianta filter helt och hållet kan karakteriseras av deras svar på sinusoider med olika frekvenser (deras frekvenssvar ), kallas de ibland för frekvensfilter.
Icke-realtidsimplementeringar av linjära tidsinvarianta filter behöver inte vara orsakssamband. Filter med mer än en dimension används också som i bildbehandling . Det allmänna konceptet linjär filtrering sträcker sig även till andra områden och tekniker som statistik , dataanalys och maskinteknik .
Impulssvar och överföringsfunktion
Ett linjärt tidsinvariant (LTI)-filter kan specificeras unikt av dess impulssvar h , och utsignalen från vilket filter som helst uttrycks matematiskt som faltningen av ingången med det impulssvaret. Frekvenssvaret , som ges av filtrets överföringsfunktion , är en alternativ karaktärisering av filtret. Typiska filterdesignmål är att förverkliga ett visst frekvenssvar, det vill säga storleken på överföringsfunktionen ; vikten av fasen för överföringsfunktionen varierar beroende på applikationen, eftersom formen på en vågform kan förvrängas i större eller mindre utsträckning i processen för att uppnå ett önskat (amplitud)svar i frekvensdomänen. Frekvenssvaret kan skräddarsys för att till exempel eliminera oönskade frekvenskomponenter från en insignal eller för att begränsa en förstärkare till signaler inom ett visst band av frekvenser.
Impulssvaret h för ett linjärt tidsinvariant kausalfilter specificerar utsignalen som filtret skulle producera om det skulle ta emot en ingång som består av en enda impuls vid tidpunkten 0. En "impuls" i ett kontinuerligt tidsfilter betyder en Dirac deltafunktion ; i ett diskret tidsfilter skulle Kronecker delta-funktionen tillämpas. Impulssvaret karakteriserar fullständigt svaret hos vilket filter som helst, eftersom varje möjlig insignal kan uttryckas som en (möjligen oändlig) kombination av viktade deltafunktioner. Multiplicering av impulssvaret skiftat i tid enligt ankomsten av var och en av dessa deltafunktioner med amplituden för varje deltafunktion, och summering av dessa svar tillsammans (enligt superpositionsprincipen, tillämplig på alla linjära system) ger den utgående vågformen.
Matematiskt beskrivs detta som faltningen av en tidsvarierande insignal x(t) med filtrets impulssvar h , definierad som:
Den första formen är den kontinuerliga tidsformen, som beskriver till exempel mekaniska och analoga elektroniska system. Den andra ekvationen är en tidsdiskret version som används till exempel av digitala filter implementerade i mjukvara, så kallad digital signalbehandling . Impulssvaret h karakteriserar helt vilket linjärt tidsinvariant (eller skiftinvariant i det tidsdiskreta fallet) filter. Ingången x sägs vara " konvolverad " med impulssvaret h som har en (möjligen oändlig) varaktighet av tiden T (eller av N samplingsperioder ).
Filterdesign består av att hitta en möjlig överföringsfunktion som kan implementeras inom vissa praktiska begränsningar som dikteras av tekniken eller önskad komplexitet i systemet, följt av en praktisk design som realiserar den överföringsfunktionen med hjälp av den valda tekniken. Komplexiteten hos ett filter kan specificeras i enlighet med filtrets ordning .
Bland tidsdomänfiltren vi här betraktar finns det två allmänna klasser av filteröverföringsfunktioner som kan approximera ett önskat frekvenssvar. Mycket olika matematiska behandlingar gäller för konstruktionen av filter som kallas infinite impulse response (IIR) filter, karakteristiska för mekaniska och analoga elektroniksystem, och finita impulsrespons (FIR) filter, som kan implementeras av diskreta tidssystem som datorer (då kallade digital signalbehandling ).
Oändliga impulssvarsfilter
Tänk på ett fysiskt system som fungerar som ett linjärt filter, till exempel ett system av fjädrar och massor, eller en analog elektronisk krets som inkluderar kondensatorer och/eller induktorer (tillsammans med andra linjära komponenter som motstånd och förstärkare ). När ett sådant system utsätts för en impuls (eller någon signal med ändlig varaktighet) svarar det med en utgångsvågform som varar längre än ingångens varaktighet, för att slutligen avta exponentiellt på ett eller annat sätt, men aldrig helt stabiliseras till noll (matematiskt sett) ). Ett sådant system sägs ha ett oändligt impulssvar (IIR). Faltningsintegralen (eller summeringen) ovan sträcker sig över hela tiden: T (eller N) måste sättas till oändligt.
Tänk till exempel på en dämpad harmonisk oscillator som en pendel eller en resonant LC- tankkrets . Om pendeln har legat i vila och vi skulle slå den med en hammare ("impulsen") och sätta den i rörelse, skulle den svänga fram och tillbaka ("resonera"), säg med en amplitud på 10 cm. Efter 10 minuter, säg, skulle pendeln fortfarande svänga men amplituden skulle ha minskat till 5 cm, hälften av dess ursprungliga amplitud. Efter ytterligare 10 minuter skulle dess amplitud bara vara 2,5 cm, sedan 1,25 cm, etc. Den skulle dock aldrig komma till en fullständig vila, och vi kallar därför den responsen på impulsen (att slå den med en hammare) "oändlig" i varaktighet.
Komplexiteten hos ett sådant system specificeras av dess ordning N . N är ofta en begränsning för utformningen av en överföringsfunktion eftersom den specificerar antalet reaktiva komponenter i en analog krets; i ett digitalt IIR-filter är antalet beräkningar som krävs proportionellt mot N.
Finita impulssvarsfilter
Ett filter implementerat i ett datorprogram (eller en så kallad digital signalprocessor ) är ett tidsdiskret system; en annan (men parallell) uppsättning matematiska begrepp definierar beteendet hos sådana system. Även om ett digitalt filter kan vara ett IIR-filter om algoritmen som implementerar det inkluderar feedback , är det också möjligt att enkelt implementera ett filter vars impuls verkligen går till noll efter N tidssteg; detta kallas ett FIR-filter ( finite impulse response) .
Anta till exempel att man har ett filter som, när det presenteras med en impuls i en tidsserie:
- 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ...
matar ut en serie som svarar på den impulsen vid tidpunkten 0 fram till tidpunkten 4, och som inte har något ytterligare svar, såsom:
- 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0.....
Även om impulssvaret har varat i 4 tidssteg efter inmatningen, har det från och med tid 5 verkligen gått till noll. Omfattningen av impulssvaret är ändlig , och detta skulle klassificeras som ett fjärde ordningens FIR-filter. Faltningsintegralen (eller summeringen) ovan behöver endast sträcka sig till hela varaktigheten av impulssvaret T, eller ordningen N i ett diskret tidsfilter.
Implementeringsfrågor
Klassiska analoga filter är IIR-filter, och klassisk filterteori fokuserar på bestämning av överföringsfunktioner som ges av lågordnade rationella funktioner , som kan syntetiseras med samma lilla antal reaktiva komponenter. Genom att använda digitala datorer, å andra sidan, är både FIR- och IIR-filter enkla att implementera i programvara.
Ett digitalt IIR-filter kan i allmänhet approximera ett önskat filtersvar med mindre beräkningskraft än ett FIR-filter, men denna fördel är oftare onödig med tanke på den ökande kraften hos digitala processorer. Lättheten att designa och karakterisera FIR-filter gör dem att föredra framför filterdesignern (programmeraren) när det finns gott om datorkraft. En annan fördel med FIR-filter är att deras impulssvar kan göras symmetriskt, vilket innebär ett svar i frekvensdomänen som har nollfas vid alla frekvenser (inte med tanke på en ändlig fördröjning), vilket är absolut omöjligt med vilket IIR-filter som helst.
Frekvenssvar
Frekvenssvaret eller överföringsfunktionen för ett filter kan erhållas om impulssvaret är känt, eller direkt genom analys med hjälp av Laplace-transformer , eller i diskreta tidssystem Z-transformen . Frekvenssvaret inkluderar även fasen som en funktion av frekvensen, men i många fall är fasresponsen av litet eller inget intresse. FIR-filter kan fås att ha nollfas, men med IIR-filter är det i allmänhet omöjligt. Med de flesta IIR-överföringsfunktioner finns det relaterade överföringsfunktioner som har ett frekvenssvar med samma storlek men en annan fas; föredras den så kallade minimala fasöverföringsfunktionen .
Filter i tidsdomänen uppmanas oftast att följa ett specificerat frekvenssvar. Sedan hittar en matematisk procedur en filteröverföringsfunktion som kan realiseras (inom vissa begränsningar), och approximerar det önskade svaret inom något kriterium. Vanliga filtersvarsspecifikationer beskrivs enligt följande:
- Ett lågpassfilter släpper igenom låga frekvenser samtidigt som det blockerar högre frekvenser.
- Ett högpassfilter släpper igenom höga frekvenser.
- Ett bandpassfilter passerar ett band (intervall) av frekvenser.
- Ett bandstoppfilter släpper igenom höga och låga frekvenser utanför ett specificerat band.
- Ett notchfilter har ett nollsvar vid en viss frekvens. Denna funktion kan kombineras med något av ovanstående svar.
- Ett allpassfilter passerar alla frekvenser lika bra, men ändrar fasförhållandet mellan dem.
- Ett utjämningsfilter är inte utformat för att helt passera eller blockera någon frekvens, utan istället för att gradvis variera amplitudsvaret som en funktion av frekvensen: filter som används som förbetoningsfilter , utjämnare eller tonkontroller är bra exempel.
FIR-överföringsfunktioner
Att uppfylla ett frekvenssvarskrav med ett FIR-filter använder relativt enkla procedurer. I den mest grundläggande formen kan det önskade frekvenssvaret självt samplas med en upplösning på och Fourier transformeras till tidsdomänen. Detta erhåller filterkoefficienterna hi , som implementerar ett nollfas FIR - filter som matchar frekvenssvaret vid de använda samplade frekvenserna. För att bättre matcha ett önskat svar måste Varaktigheten av filtrets impulssvar och antalet termer som måste summeras för varje utdatavärde (enligt ovanstående diskreta tidsfaltning) ges dock av där T är samplingsperioden för det diskreta tidssystemet (N-1 kallas också ordningen för ett FIR-filter). Således växer komplexiteten hos ett digitalt filter och den involverade beräkningstiden omvänt med vilket lägger en högre kostnad på filterfunktioner som bättre approximerar det önskade beteendet. Av samma anledning kräver filterfunktioner vars kritiska svar är vid lägre frekvenser (jämfört med samplingsfrekvensen 1 /T ) ett högre ordnings, mer beräkningsintensivt FIR-filter. Ett IIR-filter kan alltså vara mycket mer effektivt i sådana fall.
På andra ställen kan läsaren hitta ytterligare diskussion om designmetoder för praktisk FIR-filterdesign .
IIR-överföringsfunktioner
Eftersom klassiska analoga filter är IIR-filter, har det funnits en lång historia av att studera omfånget av möjliga överföringsfunktioner som implementerar olika av de ovan önskade filtersvaren i kontinuerliga tidssystem. Med hjälp av transformer är det möjligt att konvertera dessa kontinuerliga tidsfrekvenssvar till sådana som implementeras i diskret tid, för användning i digitala IIR-filter. Komplexiteten hos ett sådant filter ges av ordningen N, som beskriver ordningen för den rationella funktionen som beskriver frekvenssvaret. Ordningen N är av särskild betydelse i analoga filter, eftersom ett elektroniskt filter av N: te ordningen kräver N reaktiva element (kondensatorer och/eller induktorer) för att implementeras. Om ett filter implementeras med till exempel biquad-steg som använder op-amps , behövs N/2-steg. I en digital implementering är antalet beräkningar som utförs per sampel proportionellt mot N. Det matematiska problemet är alltså att få den bästa approximationen (i någon mening) till det önskade svaret med hjälp av ett mindre N, som vi nu ska illustrera.
Nedan visas frekvenssvaren för flera standardfilterfunktioner som approximerar en önskad respons, optimerad enligt något kriterium. Dessa är alla femte ordningens lågpassfilter, designade för en gränsfrekvens på 0,5 i normaliserade enheter. Frekvenssvar visas för Butterworth- , Chebyshev- , invers Chebyshev- och elliptiska filter .
Som framgår av bilden är det elliptiska filtret skarpare än de andra, men på bekostnad av krusningar i både dess passband och stoppband. Butterworth-filtret har den sämsta övergången men har en jämnare respons, och undviker krusningar i antingen passbandet eller stoppbandet. Ett Bessel-filter (ej visat) har en ännu sämre övergång i frekvensdomänen, men bibehåller den bästa fastillförlitligheten för en vågform. Olika applikationer betonar olika designkrav, vilket leder till olika val bland dessa (och andra) optimeringar, eller kräver ett filter av högre ordning.
Exempel på implementeringar
En populär krets som implementerar ett andra ordningens aktivt RC-filter är Sallen-Key- designen, vars schematiska diagram visas här. Denna topologi kan anpassas för att producera lågpass-, bandpass- och högpassfilter.
Ett N: te ordningens FIR-filter kan implementeras i ett diskret tidssystem med användning av ett datorprogram eller specialiserad hårdvara där insignalen är föremål för N fördröjningssteg. Filtrets utgång bildas som den viktade summan av dessa fördröjda signaler, såsom visas i det bifogade signalflödesdiagrammet. Filtrets svar beror på viktningskoefficienterna betecknade b 0 , b 1 , .... b N . Till exempel, om alla koefficienter var lika med enhet, en så kallad boxcar-funktion , skulle den implementera ett lågpassfilter med en lågfrekvensförstärkning på N+1 och ett frekvenssvar som ges av sinc-funktionen . Överlägsna former för frekvenssvaret kan erhållas med hjälp av koefficienter härledda från en mer sofistikerad designprocedur.
Matematik för filterdesign
Linjära analoga elektroniska filter |
---|
LTI-systemteorin beskriver linjära tidsinvarianta (LTI) filter av alla typer. LTI-filter kan fullständigt beskrivas genom deras frekvenssvar och fassvar , vars specifikation unikt definierar deras impulssvar , och vice versa . Ur en matematisk synvinkel kan kontinuerliga IIR LTI-filter beskrivas i termer av linjära differentialekvationer , och deras impulssvar betraktas som Greens funktioner i ekvationen. Kontinuerliga LTI-filter kan också beskrivas i termer av Laplace-transformen av deras impulssvar, vilket gör att alla egenskaper hos filtret kan analyseras genom att beakta mönstret av nollor och poler för deras Laplace-transform i det komplexa planet . På liknande sätt kan tidsdiskreta LTI-filter analyseras via Z-transformen av deras impulssvar.
Före tillkomsten av verktyg för datorfiltersyntes användes grafiska verktyg som Bode-plott och Nyquist-plots i stor utsträckning som designverktyg. Än idag är de ovärderliga verktyg för att förstå filterbeteende. Referensböcker hade omfattande plotter av frekvenssvar, fassvar, gruppfördröjning och impulssvar för olika typer av filter, av olika ordningsföljd. De innehöll också värdetabeller som visar hur man implementerar sådana filter som RLC-stegar - mycket användbart när förstärkningselement var dyra jämfört med passiva komponenter. En sådan stege kan också utformas för att ha minimal känslighet för komponentvariationer, en egenskap som är svår att utvärdera utan datorverktyg.
Många olika analoga filterdesigner har utvecklats, var och en försöker optimera en del av systemets respons. För praktiska filter är en anpassad design ibland önskvärd, som kan erbjuda den bästa avvägningen mellan olika designkriterier, som kan inkludera komponentantal och kostnad, såväl som filterresponsegenskaper.
Dessa beskrivningar hänvisar till filtrets matematiska egenskaper (det vill säga frekvensen och fassvaret). Dessa kan implementeras som analoga kretsar (till exempel med användning av en Sallen Key- filtertopologi, en typ av aktivt filter ), eller som algoritmer i digitala signalbehandlingssystem .
Digitala filter är mycket mer flexibla att syntetisera och använda än analoga filter, där designens begränsningar tillåter användning. Noterbart finns det inget behov av att ta hänsyn till komponenttoleranser, och mycket höga Q-nivåer kan erhållas.
Digitala FIR-filter kan implementeras genom direkt faltning av det önskade impulssvaret med insignalen. De kan enkelt utformas för att ge ett matchat filter för alla godtyckliga pulsformer.
IIR digitala filter är ofta svårare att designa, på grund av problem inklusive dynamikområdesproblem, kvantiseringsbrus och instabilitet. Vanligtvis är digitala IIR-filter utformade som en serie digitala biquad-filter .
Alla lågpass andra ordningens kontinuerliga tidsfilter har en överföringsfunktion som ges av
Alla bandpass andra ordningens kontinuerliga tidsfilter har en överföringsfunktion som ges av
var
- K är förstärkningen (lågpass DC-förstärkning, eller bandpass-mellanbandsförstärkning) ( K är 1 för passiva filter)
- Q är Q-faktorn
- är mittfrekvensen
- är den komplexa frekvensen
Se även
- Filterdesign
- Laplace transformation
- Greens funktion
- Prototypfilter
- Z-transform
- Systemteori
- Icke-linjärt filter
- Wiener filter
- Gabor filter
- Leapfrog filter
Anteckningar och referenser
Vidare läsning
- Williams, Arthur B & Taylor, Fred J (1995). Elektronisk filterdesignhandbok . McGraw-Hill. ISBN 0-07-070441-4 .
- National Semiconductor AN-779 applikationsnotis som beskriver analog filterteori
- Lattice AN6017 applikationsnota jämförande och kontrasterande filter (i ordning efter dämpningskoefficient, från lägre till högre värden): Gaussian, Bessel, linjär fas, Butterworth, Chebyshev, Legendre, elliptisk. (med grafer).
- ANVÄNDNING AV ANALOGA ENHETER AKTIVT FILTERDESIGNVERKTYG : en liknande applikationsanmärkning från Analog Devices med omfattande grafer, aktiva RC-filtertopologier och tabeller för praktisk design.
- "Design och analys av analoga filter: A Signal Processing Perspective" av LD Paarmann