Tuesday, October 25, 2016

Frekwensieweergawe van 'n 4 punt bewegende gemiddelde filter

Frekwensie van die lopende gemiddeld Filter Die frekwensieweergawe van 'n LTI stelsel is die DTFT van die impulsrespons, Die impulsrespons van 'n L - sample bewegende gemiddelde is sedert die bewegende gemiddelde filter is FIR, die frekwensieweergawe verminder om die eindige som Ons kan die baie nuttig identiteit gebruik om die frekwensie reaksie as waar ons ae het laat skrywe - j 119. N 0, en M L - 1. Ons kan belangstel in die omvang van hierdie funksie word ten einde te bepaal watter frekwensies te kry deur middel van die filter unattenuated en wat verswakte. Hier is 'n plot van die omvang van hierdie funksie lyk, vir L 4 (rooi), 8 (groen) en 16 (blou). Die horisontale as wissel van nul tot 112 radiale per monster. Let daarop dat in al drie gevalle, die frekwensieweergawe het 'n laagdeurlaat kenmerk. 'N konstante komponent (nul frekwensie) in die insette gaan deur die filter unattenuated. Sekere hoër frekwensies, soos 112/2, is heeltemal uitgeskakel word deur die filter. Maar, as die bedoeling was om 'n laagdeurlaatfilter ontwerp, dan het ons nie baie goed gedoen. Sommige van die hoër frekwensies is verswakte net met 'n faktor van ongeveer 1/10 (vir die 16 punt bewegende gemiddelde) of 1/3 (vir die vier punt bewegende gemiddelde). Ons kan baie beter as dit doen. Bogenoemde plot is geskep deur die volgende Matlab kode: omega 0: pi / 400: pi H4 (1/4) (1-exp (-iomega4)) ./ (1-exp (-iomega)) H8 (1/8 ) (1-exp (-iomega8)) ./ (1-exp (-iomega)) H16 (1/16) (1-exp (-iomega16)) ./ (1-exp (-iomega)) plot (omega , ABS (H4) ABS (H8) ABS (H16)) as (0, PI, 0, 1) frekwensie van die lopende gemiddeld Filter die frekwensieweergawe van 'n LTI stelsel is die DTFT van die impulsrespons, die impulsrespons van 'n L - sample bewegende gemiddelde is sedert die bewegende gemiddelde filter is FIR, die frekwensieweergawe verminder om die eindige som ons kan die baie nuttig identiteit gebruik om die frekwensie reaksie as waar ons toelaat dat AE minus jomega skryf. N 0, en M L minus 1. Ons kan belangstel in die omvang van hierdie funksie word ten einde te bepaal watter frekwensies te kry deur middel van die filter unattenuated en wat verswakte. Hier is 'n plot van die omvang van hierdie funksie lyk, vir L 4 (rooi), 8 (groen) en 16 (blou). Die horisontale as wissel van nul tot pi radiale per monster. Let daarop dat in al drie gevalle, die frekwensieweergawe het 'n laagdeurlaat kenmerk. 'N konstante komponent (nul frekwensie) in die insette gaan deur die filter unattenuated. Sekere hoër frekwensies, soos pi / 2, is heeltemal uitgeskakel word deur die filter. Maar, as die bedoeling was om 'n laagdeurlaatfilter ontwerp, dan het ons nie baie goed gedoen. Sommige van die hoër frekwensies is verswakte net met 'n faktor van ongeveer 1/10 (vir die 16 punt bewegende gemiddelde) of 1/3 (vir die vier punt bewegende gemiddelde). Ons kan baie beter as dit doen. Bogenoemde plot is geskep deur die volgende Matlab kode: omega 0: pi / 400: pi H4 (1/4) (1-exp (-iomega4)) ./ (1-exp (-iomega)) H8 (1/8 ) (1-exp (-iomega8)) ./ (1-exp (-iomega)) H16 (1/16) (1-exp (-iomega16)) ./ (1-exp (-iomega)) plot (omega , ABS (H4) ABS (H8) ABS (H16)) as (0, PI, 0, 1) Kopiereg kopie 2000- - Universiteit van Kalifornië, BerkeleyDocumentation freqz Oordragfunksie koëffisiënte, vermeld as vektore. Druk die oordragsfunksie in terme van b en 'n as H (EJ x03C9) B (EJ x03C9) A (EJ x03C9) b (1) b (2) x2009 e x2212 j x03C9 b (3) x2009 e x2212 j 2 x03C9 x22EF b (M) x2009 e x2212 j (M x2212 1) x03C9 n (1) 'n (2) x2009 e x2212 j x03C9 n (3) x2009 e x2212 j 2 x03C9 x22EF n (n) x2009 e x2212 j (n x2212 1 ) x03C9. Voorbeeld: b 1 3 3 1/6 en 'n 3 0 1 0/3 spesifiseer 'n derde-orde Butterworth filter met genormaliseer 3-dB frekwensie 0,5960 rad / monster. Datatipes: dubbele enkele kompleks nommer Ondersteuning: Ja N 8212 nommer van evaluering wys 512 (verstek) positiewe heelgetal skalaar nommer van evaluering punte, wat as 'n positiewe heelgetal skalaar nie minder nie as 2 Wanneer N afwesig is, dit verstek na 512. Vir beste resultate, stel n 'n waarde van meer as die filter orde. SOS 8212 Tweede-orde artikel koëffisiënte matriks Tweede-orde artikel koëffisiënte, wat as 'n matriks. SOS is 'n K - per-6 matriks, waar die aantal artikels, K. moet groter as of gelyk aan 2. As die aantal afdelings minder as 2 is, freqz van mening dat die insette om 'n teller vektor wees. Elke ry van SOS ooreenstem met die koëffisiënte van 'n tweede-orde (biquad) filter. Die i ste ry van SOS ooreenstem met twee (1) twee (2) twee (3) ai (1) AI (2) ai (3). Voorbeeld: s 2 4 2 6 0 23 3 0 6 0 0 spesifiseer 'n derde-orde Butterworth filter met genormaliseer 3-dB frekwensie 0,5960 rad / monster. Datatipes: dubbele enkele kompleks nommer Ondersteuning: Ja d 8212 Digitale filter digitalFilter beswaar Digitale filter, wat as 'n digitalFilter voorwerp. Gebruik designfilt 'n digitale filter gebaseer op frekwensie-reaksie spesifikasies te genereer. Voorbeeld: d designfilt (lowpassiir, FilterOrder, 3, HalfPowerFrequency, 0.5) bepaal 'n derde-orde Butterworth filter met genormaliseer 3-dB frekwensie 0,5960 rad / monster. FS 8212 sampling rate positiewe skalaar Kies Jou CountryI nodig om 'n bewegende gemiddelde filter wat 'n afsnyfrekwensie van 7.8 Hz het ontwerp. Ek het gebruik voordat bewegende gemiddelde filters, maar so ver as Im bewus, die enigste parameter wat in gevoer kan word is die aantal punte wat gemiddeld. Hoe kan dit met 'n afsnyfrekwensie Die omgekeerde van 7.8 Hz is 130 ms, en Im werk met data wat getoets by 1000 Hz. Impliseer dit dat ek dit behoort te word met behulp van 'n bewegende gemiddelde filter venster grootte van 130 monsters, of is daar iets anders wat Im hier vermis gevra 18 Julie 13 aan 09:52 Die bewegende gemiddelde filter is die filter gebruik word in die tydgebied te verwyder die geraas bygevoeg en ook vir glad doel, maar as jy dieselfde bewegende gemiddelde filter gebruik in die frekwensiedomein vir frekwensie skeiding dan prestasie sal ergste wees. so in daardie geval gebruik frekwensiedomein filters uitvoering maak user19373 3 Februarie by 05:53 Die bewegende gemiddelde filter (soms omgangstaal bekend as 'n wagon filter) het 'n vierkantige impulsrespons: Of, anders gestel: Onthou dat 'n diskretetyd-stelsels frekwensieweergawe is gelyk aan die diskrete-tyd Fourier-transform van sy impulsrespons, kan ons dit soos volg bereken: Wat was die meeste belangstelling in jou geval is die grootte van die filter, H (omega). Met behulp van 'n paar eenvoudige manipulasies, kan ons kry dat in 'n makliker om te begryp vorm: Dit kan nie makliker om te verstaan ​​kyk. As gevolg van Eulers identiteit. onthou dat: Daarom kan ons skryf die bogenoemde as: Soos ek al voorheen gesê, wat jy regtig bekommerd oor die omvang van die frekwensieweergawe. Dus, kan ons die grootte van die bogenoemde te neem om dit verder te vereenvoudig: Let wel: Ons is in staat om die eksponensiële terme uit te laat val, omdat hulle dit nie invloed op die grootte van die resultaat e 1 vir alle waardes van omega. Sedert xy xy vir enige twee eindige komplekse getalle x en y, kan ons aflei dat die teenwoordigheid van die eksponensiële terme dont raak die algehele omvang reaksie (in plaas daarvan, hulle invloed op die stelsels fase reaksie). Die gevolglike funksie binne die omvang hakies is 'n vorm van 'n Dirichlet kern. Dit is soms 'n periodieke sed funksie, want dit lyk soos die sinc funksie ietwat in voorkoms, maar is periodieke plaas. In elk geval, sedert die definisie van afsnyfrekwensie ietwat is underspecified (-3 dB punt -6 dB punt eerste sidelobe nul), kan jy die bostaande vergelyking gebruik om op te los vir alles wat jy nodig het. Stel H (omega) ter waarde wat ooreenstem met die filter reaksie wat jy wil by die afsnyfrekwensie: spesifiek, kan jy die volgende doen. Stel omega gelyk aan die afsnyfrekwensie. Om 'n deurlopende-time frekwensie om die diskrete-tyd domein karteer, onthou dat omega 2pi frac waar FS is jou monster tempo. Vind die waarde van N wat gee jou die beste ooreenkoms tussen die linker - en regterkante van die vergelyking. Dit moet die lengte van jou bewegende gemiddelde wees. As N is die lengte van die bewegende gemiddelde, dan 'n geskatte afsnyfrekwensie F (geldig vir N GT 2) in genormaliseer frekwensie Ff / fs is: Die omgekeerde hiervan is Hierdie formule is asimptoties korrekte vir groot N, en het ongeveer 2 fout vir N2, en minder as 0,5 vir N4. P. s. Na twee jaar, hier uiteindelik wat die benadering gevolg. Die gevolg is gebaseer op ongeveer dieselfde MA amplitude spektrum rondom f0 as 'n parabool (2 orde Series) volgens MA (Omega) ongeveer 1 (frac - frac) Omega2 wat meer presiese naby die nul kruising van MA (Omega) gemaak kan word - frac deur te vermenigvuldig Omega deur 'n koëffisiënt verkryging MA (Omega) ongeveer 10,907523 (frac - frac) Omega2 die oplossing van MA (Omega) - frac 0 gee die resultate hierbo, waar 2pi F Omega. Al die bogenoemde het betrekking op die -3dB afsny frekwensie, die onderwerp van hierdie post. Soms al is dit interessant om 'n verswakking profiel in stop-orkes wat vergelykbaar is met dié van 'n 1 Om IIR laaglaatfilter verkry (enkele paal LPF) met 'n gegewe -3dB afsny frekwensie (so 'n LPF is ook bekend as lekkende integreerder, 'n paal nie presies by DC, maar naby aan dit). Om die waarheid te beide die MA en die 1ste orde IIR LPF het -20dB / dekade helling in die stop-band ( 'n mens moet 'n groter N as die een wat in die figuur, N32, om dit te sien), maar terwyl MA het spektrale nulls by Fk / n en 'n 1 / f evelope, die IIR filter het slegs 'n 1 / f profiel. As 'n mens wil 'n MA filter met 'n soortgelyke geraas filter vermoëns as hierdie IIR filter verkry, en ooreenstem met die 3dB afgesny frekwensies om dieselfde te wees, op die vergelyking van die twee spektra, sou hy besef dat die stop orkes rimpeleffek van die MA filter beland 3dB laer as dié van die IIR filter. Met die oog op dieselfde stop-orkes rimpeleffek (maw dieselfde geraas krag verswakking) as die IIR kry filtreer die formules kan soos volg gewysig word: ek het terug die Mathematica script waar ek bereken die uitroei vir 'n paar filters, insluitend die MA een. Die gevolg is gebaseer op ongeveer dieselfde MA spektrum rondom f0 as 'n parabool volgens MA (Omega) Sonde (OmegaN / 2) / Sonde (Omega / 2) Omega 2piF MA (F) ongeveer N1 / 6F2 (N-N3) pi2. En die afleiding van die kruising met 1 / sqrt van daar af. â € Massimo 17 Januarie by 2: 08FIR filters, IIR filters, en die lineêre konstante-koëffisiënt verskilvergelyking Kousale bewegende gemiddelde (FIR) Comments nie Weve bespreek stelsels waarin elke monster van die produksie is 'n geweegde som van (sekere van die) die monsters van die insette. Kom ons neem 'n oorsaaklike geweegde som stelsel, waar oorsaaklike beteken dat 'n gegewe uitset monster hang net af van die huidige insette monster en ander insette vroeër in die ry. Nóg lineêre stelsels in die algemeen nie, en eindig impulsrespons stelsels in die besonder, moet oorsaaklike wees. Maar oorsaaklikheid is gerieflik vir 'n soort van analise wat op pad was om gou te verken. As ons simboliseer die insette as waardes van 'n vektor x. en die uitgange as die ooreenstemmende waardes van 'n vektor y. dan so 'n stelsel kan geskryf word as waar die b waardes quotweightsquot toegepas word om die huidige en vorige insette monsters om die huidige uitset monster te kry. Ons kan dink aan die uitdrukking as 'n vergelyking met die gelykaanteken wat beteken gelykes, of as 'n prosedurele onderrig, met die gelykaanteken wat beteken opdrag. Kom ons skryf die uitdrukking vir elke uitset monster as 'n MATLAB lus van opdrag state, waar x is 'n N-lengte vektor van insette monsters, en b is 'n M-lengte vektor van gewigte. Ten einde te gaan met die spesiale geval aan die begin, sal ons x insluit in 'n meer vektor xhat wie se eerste M-1 monsters is nul. Ons sal die geweegde opsomming vir elke y (N) as 'n innerlike produk te skryf, en sal 'n paar wysigings van die insette te doen (soos b omkeer) vir hierdie doel. Hierdie soort stelsel word dikwels bekend as 'n bewegende gemiddelde filter, vir ooglopende redes. Van ons vroeër besprekings, moet dit duidelik dat so 'n stelsel is lineêre en verskuiwing-invariante wees. Natuurlik sou dit baie vinniger wees om die MATLAB konvolusie funksie conv (gebruik) in plaas van ons mafilt (). In plaas van die oorweging van die eerste M-1 monsters van die insette tot nul, ons hulle kan oorweeg om dieselfde as die laaste M-1 monsters wees. Dit is dieselfde as die behandeling van die insette as periodieke. Wel gebruik cmafilt () as die naam van die funksie, 'n klein verandering van die vroeër mafilt () funksie. In die bepaling van die impulsrespons van 'n stelsel, is daar gewoonlik geen verskil tussen die twee, aangesien alle nie-aanvanklike monsters van die insette is nul: Aangesien 'n stelsel van hierdie aard is lineêre en skuif-invariante, ons weet dat die uitwerking daarvan op enige sinusgolf sal slegs volgens skaal en skuif dit. Hier is dit sake wat ons gebruik die omsendbrief weergawe Die sirkulêr-gekonvuleerde weergawe geskuif en afgeskaal 'n bietjie, terwyl die weergawe met gewone konvolusie verwring aan die begin. Kom ons kyk wat die presiese skalering en verskuiwing is deur die gebruik van 'n FFT: Beide toevoer en afvoer het amplitude net by frekwensies 1 en -1, wat is soos dit moet wees, aangesien die insette was 'n sinusgolf en die stelsel was lineêre. Die uitset waardes groter deur 'n verhouding van 10,6251 / 8 1,3281. Dit is die wins van die stelsel. Wat van die fase Ons moet net om te kyk waar die amplitude is nie-nul: Die insette het 'n fase van pi / 2, soos ons versoek. Die uitset fase verskuif met 'n bykomende 1,0594 (met teenoorgestelde teken vir die negatiewe frekwensie), of oor 1/6 van 'n siklus van die reg, soos ons kan sien op die grafiek. Nou kan probeer om 'n sinusgolf met dieselfde frekwensie (1), maar in plaas van amplitude 1 en fase pi / 2, Kom ons probeer amplitude 1,5 en fase 0. Ons weet dat net frekwensie 1 en -1 nie-nul amplitude sal hê, so laat net kyk na hulle: weereens die amplitude verhouding (15,9377 / 12,0000) is 1,3281 - en as vir die fase dit weer verskuif deur 1,0594 as hierdie voorbeelde is tipiese, kan ons die effek van ons stelsel (impulsrespons 0,1 0,2 voorspel 0,3 0,4 0,5) op enige sinusgolf met frekwensie 1 - die amplitude sal verhoog word met 'n faktor van 1,3281 en die (positiewe frekwensie) fase sal verskuif deur 1,0594. Ons kan gaan op na die uitwerking van hierdie stelsel op sinusoïede van ander frekwensies bereken deur dieselfde metodes. Maar daar is 'n baie makliker manier, en een wat die algemene punt vestig. Sedert (omsendbrief) konvolusie in die tydgebied beteken vermenigvuldiging in die frekwensiedomein, daaruit volg dat Met ander woorde, die DFT van die impulsrespons is die verhouding van die DFT van die uitset na die DFT van die insette. In hierdie verband die DFT koëffisiënte is komplekse getalle. Sedert ABS (C1 / C2) ABS (c1) / ABS (C2) vir alle komplekse getalle C1, C2, hierdie vergelyking vertel ons dat die amplitude spektrum van die impulsrespons altyd die verhouding van die amplitude spektrum van die uitset na wat sal wees van die insette. In die geval van die fase spektrum, hoek (C1 / C2) hoek (c1) - hoek (C2) vir alle C1, C2 (word met dien verstande dat fases verskil deur n2pi gelyk beskou). Daarom is die fase spektrum van die impulsrespons sal altyd die verskil tussen die fase spektra van die uitset en die insette (met alles wat regstellings deur 2pi is nodig om die resultaat tussen - pi en pi hou) wees. Ons kan die fase-effekte sien meer duidelik as ons oop maak die voorstelling van fase, dit wil sê as ons verskeie veelvoude voeg van 2pi as wat nodig is om die spronge wat geproduseer word deur die periodieke aard van die () funksie hoek te verminder. Hoewel die amplitude en fase gewoonlik gebruik vir grafiese en selfs 'n tabel aanbieding, want hulle is 'n intuïtiewe manier om te dink oor die gevolge van 'n stelsel op die verskillende frekwensie komponente van sy insette, die komplekse Fourier koëffisiënte is meer nuttig algebraïes, omdat hulle toelaat die eenvoudige uitdrukking van die verhouding die algemene benadering wat ons so pas gesien sal saam met arbitrêre filters van die tipe geskets, waarin elke uitset monster is 'n geweegde som van sommige stel insette monsters. Soos vroeër genoem, is hierdie dikwels genoem Eindige Impulse Response filters, omdat die impulsrespons is van beperkte omvang, of soms Moving Gemiddelde filters. Ons kan die frekwensieweergawe kenmerke van so 'n filter van die FFT van sy impulsrespons te bepaal, en ons kan ook nuwe filters met gewenste eienskappe te ontwerp deur IFFT van 'n spesifikasie van die frekwensieweergawe. Outoregressiewe (IIR) Filters Daar sal min punt in 'name vir FIR filters wees, tensy daar was 'n paar ander soort (e) om hulle te onderskei van, en so diegene wat bestudeer pragmatiek sal nie verbaas wees om te verneem dat daar wel nog 'n groot soort lineêre tyd-invariante filter. Hierdie filters is soms genoem rekursiewe omdat die waarde van die vorige uitsette (asook vorige insette) aangeleenthede, hoewel die algoritmes in die algemeen geskryf met behulp van iteratiewe konstrukte. Hulle word ook genoem Oneindige Impulse Response (IIR) filters, want in die algemeen hul reaksie op 'n impuls gaan op tot in ewigheid. Hulle word ook soms genoem outoregressiewe filters, omdat die koëffisiënte kan beskou word as die gevolg van doen lineêre regressie te sein waardes uit te druk as 'n funksie van vroeër sein waardes. Die verhouding van EIR en OIR filters kan duidelik gesien word in 'n lineêre konstante-koëffisiënt verskilvergelyking, dit wil sê die oprigting van 'n geweegde som van uitsette gelykstaande aan 'n geweegde som van insette. Dit is soos die vergelyking wat ons vroeër het vir die oorsaaklike FIR filter, behalwe dat bykomend tot die geweegde som van insette, ons het ook 'n geweegde som van uitsette. As ons wil hê om te dink aan dit as 'n prosedure vir die opwekking van uitset monsters, moet ons die vergelyking herrangskik om 'n uitdrukking vir die huidige uitset monster y (N) te kry, die aanneming van die konvensie dat 'n (1) 1 (soos deur skalering ander as en BS), ons kan ontslae te raak van die 1 / n (1) term: y (n) b (1) x (n) b (2) x (n-1). b (LW1) x (N-NB) - 'n (2) y (N-1) -. - 'N (Na1) y (N-na) As al die n (N) buiten 'n (1) is nul, dit verminder na ons ou vriend die oorsaaklike FIR filter. Dit is die algemene geval van 'n (kousale) LTI filter, en geïmplementeer word deur die MATLAB funksie filter. Kom ons kyk na die geval waar die ander as b b koëffisiënte (1) is nul (in plaas van die FIR geval, waar die n (N) is nul): In hierdie geval, die huidige uitset monster y (N) word bereken as 'n geweegde kombinasie van die huidige insette monster x (n) en die vorige uitset monsters y (n-1), y (n-2), ens Om 'n idee te kry van wat gebeur met sulke filters kry, kan ons begin met die geval waar: dit wil sê, die huidige uitset monster is die som van die huidige insette monster en die helfte van die vorige uitset monster. Wel neem 'n inset impuls deur 'n paar keer stappe, een op 'n slag. Dit moet duidelik op hierdie punt dat ons maklik 'n uitdrukking vir die nde uitset monster waarde kan skryf: dit is net (As MATLAB getel vanaf 0, sou dit eenvoudig .5n wees). Sedert wat ons berekening is die impulsrespons van die stelsel, het ons gedemonstreer deur 'n voorbeeld dat die impulsrespons, want dit kan hê oneindig baie nie-nul monsters. Om hierdie triviale eerste-orde filter in MATLAB te implementeer, kan ons gebruik filter. Die oproep sal lyk: en die resultaat is: Is hierdie besigheid eintlik nog lineêr Ons kan kyk na hierdie empiries: Vir 'n meer algemene benadering, oorweeg die waarde van 'n uitset monster y (N). Deur opeenvolgende vervanging kan ons dit skryf, want dit is net soos ons ou vriend die konvolusie-som vorm van 'n FIR filter, met die impulsrespons deur die uitdrukking .5k. en die lengte van die impulsrespons om oneindig. So dieselfde argumente wat ons gebruik om te wys dat FIR filters was lineêre sal nou hier van toepassing. Tot dusver dit mag lyk soos 'n groot bohaai oor nie veel nie. Wat is hierdie hele lyn van ondersoek goed vir Wel beantwoord hierdie vraag in fases, wat begin met 'n voorbeeld. Dit is nie 'n groot verrassing dat ons kan bereken 'n gemonsterde eksponensiële deur rekursiewe vermenigvuldiging. Kom ons kyk na 'n rekursiewe filter dat daar iets minder voor die hand liggend nie. Hierdie keer goed maak dit 'n tweede-orde filter, sodat die oproep om te filter van die vorm sal wees Kom stel die tweede uitset koëffisiënt a2 om -2cos (2pi / 40), en die derde uitset koëffisiënt A3 tot 1, en kyk na die impulsrespons. Nie baie nuttig as 'n filter, eintlik, maar dit genereer 'n gemonsterde sinusgolf (van 'n impuls) met drie vermenigvuldig-voeg per monster Ten einde te verstaan ​​hoe en hoekom dit doen dit, en hoe rekursiewe filters kan ontwerp en in ontleed die meer algemene geval, moet ons terug te stap en 'n blik op 'n paar ander eienskappe van komplekse getalle, op pad na die begrip van die z-transform.


No comments:

Post a Comment