FIR 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. Documentation dfilt. latticearma belangrikste is die etiket posisie in die diagram, wat identifiseer waar die formaat toepassing. As 'n voorbeeld, kyk na die etiket LatticeProdFormat, wat altyd volg op 'n koëffisiënt vermenigvuldiging element in die sein vloei. Die etiket dui aan dat rooster koëffisiënte laat die vermenigvuldiging element met die lengte woordlengte en breuk wat verband hou met die produk bedrywighede wat koëffisiënte sluit. Van die hersiening van die tafel, sien jy dat die LatticeProdFormat verwys na die eienskappe ProductWordLength. LatticeProdFracLength. en ProductMode wat ten volle die koëffisiënt formaat na vermeerder definieer (of produk) operasies. Eiendomme in hierdie tabel wat jy sien die eienskappe wat verband hou met die outoregressiewe bewegende gemiddelde rooster implementering van dfilt voorwerpe. Let Die tabel lys van al die eienskappe wat 'n filter kan hê. Baie van die eienskappe is dinamiese, wat beteken dat hulle bestaan net in reaksie op die stellings van ander eiendomme. Jy kan al die tyd nie sien al die genoteerde eiendomme. Aan al die eienskappe vir 'n filter te eniger tyd te sien, te gebruik waar HD is 'n filter. Vir verdere inligting oor die eienskappe van hierdie filter of enige dfilt voorwerp, verwys na vaste punt Filter Properties. Stel die modus gebruik word om te reageer op omstandighede in vaste punt rekenkundige oorloop. Kies uit óf versadig (die uitset na die grootste positief of negatief representeerbaar waarde beperk) of draai (stel golwende waardes tot die naaste representeerbaar waarde met behulp van modulêre rekenkunde). Die keuse wat jy maak slegs affekteer die akkumulator en uitset rekenkundige. Koëffisiënt en insette rekenkundige versadig altyd. Ten slotte, produkte nooit overflow8212they handhaaf volle presisie. Vir die produksie van 'n produk operasie, dit stel die fraksie lengte gebruik om die data te interpreteer. Hierdie eiendom word skryfbare (jy kan die waarde te verander) wanneer jy ProductMode stel om SpecifyPrecision. Bepaal hoe die filter hanteer die uitvoer van die produk bedrywighede. Kies uit volle presisie (FullPrecision), of om die belangrikste bietjie (KeepMSB) of minstens beduidende bietjie (KeepLSB) in die resultaat te hou wanneer jy dit nodig om die data woorde verkort. Vir jou om in staat wees om die akkuraatheid (die breuk lengte) wat gebruik word deur die uitvoer van die vermeerder stel, jy ProductMode stel om SpecifyPrecision. Spesifiseer die woordlengte om te gebruik vir vermenigvuldiging operasie resultate. Hierdie eiendom word skryfbare (jy kan die waarde te verander) wanneer jy ProductMode stel om SpecifyPrecision. Gee aan of die filter state en geheue te herstel voor elke filter werking. Kan jy besluit of jou filter behou state van die vorige filter lopies. Vals is die verstek. Stel die modus van die filter gebruik om numeriese waardes quantiseren wanneer die waardes tussen representeerbaar waardes vir die data-formaat (woord en breuk lengtes) lê. oordek - Ronde na positiewe oneindig. konvergente - Ronde na die naaste representeerbaar heelgetal. Bande te rond tot die naaste selfs gestoor heelgetal. Dit is die minste bevooroordeeld van die beskikbare in hierdie sagteware metodes. los - Ronde na nul. vloer - Ronde teenoor negatiewe oneindigheid. naaste - Ronde na naaste. Bande te rond na positiewe oneindig. ronde - Ronde na naaste. Bande te rond na negatiewe oneindigheid vir negatiewe getalle, en die rigting van positiewe oneindigheid vir positiewe getalle. Die keuse wat jy maak slegs affekteer die akkumulator en uitset rekenkundige. Koëffisiënt en insette rekenkundige altyd ronde. Ten slotte, produkte nooit oorloop 8212 hulle volle akkuraatheid te handhaaf. Gee aan of die filter gebruik onderteken of unsigned vaste punt koëffisiënte. Slegs koëffisiënte weerspieël hierdie eiendom omgewing. Kies jou CountryThe Eenvoudige bewegende gemiddelde filter Hierdie bladsy beskryf die eenvoudige bewegende gemiddelde filter. Dit is deel van die afdeling oor filter wat deel is van 'n Gids tot Fout opsporing en diagnose .. Oorsig Die eenvoudige bewegende gemiddelde filter gemiddeldes onlangse waardes van die filter insette vir 'n gegewe aantal insette. Dit is die mees algemene voorbeeld van die 8220moving gemiddelde 8221 (MA) kategorie van filters, ook bekend as eindige impulsrespons (FIR) filters. Elke onlangse insette word vermenigvuldig met 'n koëffisiënt vir alle lineêre MA filters, en die koëffisiënte is almal dieselfde vir hierdie eenvoudige bewegende gemiddelde. Die som van die koëffisiënte is 1.0, sodat die uitset uiteindelik ooreenstem met die insette wanneer die insette doesn8217t verandering. Die opbrengs net afhanklik van onlangse insette, in teenstelling met die eksponensiële filter wat ook hergebruik sy vorige uitset. Die enigste parameter is die aantal punte in die gemiddelde - die 8220window size8221. Bewegende gemiddelde stap reaksie Soos enige MA filter, dit 'n stap reaksie in 'n beperkte tyd, afhangende van die venster grootte voltooi: Hierdie eenvoudige bewegende gemiddelde voorbeeld hierbo is gebaseer op 9 punte. Onder beskeie aannames, is dit die verskaffing van die optimale (glad) skatting vir 'n waarde op die middelpunt van die tyd interval, in hierdie geval, 4.5 monster tussenposes in die verlede. Kopiereg 2010 - 2013, Greg StanleyFIR Filter Basics 1.1 Wat is quotFIR filtersquot FIR filters is een van twee primêre vorme van digitale filters gebruik in Digital Signal Processing (DSP) aansoeke, die ander soort wat IIR. 1.2 Wat beteken quotFIRquot beteken quotFIRquot beteken quotFinite Impulse Responsequot. As jy sit in 'n impuls, dit wil sê 'n enkele quot1quot monster gevolg deur baie quot0quot monsters, nulpunte sal uittrek agter die quot1quot monster pad gemaak het deur die vertraging lyn van die filter. 1.3 Hoekom is die impulsrespons quotfinitequot In die algemeen geval, die impulsrespons eindig, want daar is geen terugvoering in die FIR. 'N Gebrek aan terugvoer waarborg dat die impulsrespons eindige sal wees. Daarom is die term quotfinite impuls responsequot is byna sinoniem met quotno feedbackquot. Maar as terugvoer in diens nog die impulsrespons eindig, die filter is nog steeds 'n FIR. 'N Voorbeeld is die bewegende gemiddelde filter, waarin die nde voor monster afgetrek (teruggevoer) elke keer as 'n nuwe monster kom in hierdie filter 'n eindige impulsrespons selfs al is dit gebruik terugvoering. Na N monsters van 'n impuls, die uitset sal altyd nul. 1.4 Hoe spreek ek quotFIRquot Sommige mense sê die letters F-ek-R ander mense uit te spreek asof dit 'n soort boom. Ons verkies om die boom. (Die verskil is of jy praat oor 'n F-ek-R filter of 'n FIR filter.) 1.5 Wat is die alternatief vir FIR filters DSP filters kan ook quotInfinite Impulse Responsequot (IIR). (Sien dspGurus IIR Vrae.) IIR filters gebruik terugvoer, so wanneer jy insette 'n impuls die uitset teoreties ringe onbepaald. 1.6 Hoe FIR filters vergelyk met IIR filters Elkeen het voordele en nadele. Algehele, alhoewel, die voordele van FIR filters swaarder as die nadele, sodat hulle veel meer as IIRs gebruik. 1.6.1 Wat is die voordele van FIR Comments (in vergelyking met IIR filters) In vergelyking met IIR filters, FIR filters bied die volgende voordele: Hulle kan maklik ontwerp om quotlinear phasequot wees (en gewoonlik is). Eenvoudig gestel, lineêre-fase filters vertraag die insetsein maar donrsquot sy fase verdraai. Hulle is maklik om te implementeer. Op die meeste DSP mikroverwerkers, kan die FIR berekening gedoen word deur herhaling 'n enkele opdrag. Hulle is geskik vir multi-koers aansoeke. Deur multi-koers, bedoel ons nie quotdecimationquot (vermindering van die sampling rate), quotinterpolationquot (die verhoging van die sampling rate), of albei. Of gedecimeerd of interpol, die gebruik van FIR filters kan 'n paar van die berekeninge word weggelaat, dus die verskaffing van 'n belangrike computational doeltreffendheid. In teenstelling, as IIR filters gebruik word, elke uitset moet individueel bereken, selfs al is dit dat uitset sal weggegooi (so die terugvoer sal in die filter word opgeneem). Hulle het desireable numeriese eienskappe. In die praktyk, moet alle DSP filters word toegepas met behulp van eindige-presisie rekenkundige, dit is, 'n beperkte aantal bisse. Die gebruik van eindige-presisie rekenkundige in IIR filters kan groot probleme veroorsaak as gevolg van die gebruik van terugvoer, maar FIR filters sonder terugvoer kan gewoonlik geïmplementeer met behulp van minder stukkies, en die ontwerper het minder praktiese probleme op te los wat verband hou met nie-ideale rekenkundige. Hulle geïmplementeer kan word met behulp van fraksionele rekenkundige. In teenstelling met IIR filters, dit is altyd moontlik om te implementeer 'n FIR filter met behulp van koëffisiënte met grootte van minder as 1.0. (Die algehele wins van die FIR filter kan aangepas word by die uitset, as jy wil.) Dit is 'n belangrike oorweging by die gebruik van vaste punt ADV, want dit maak die implementering baie makliker. 1.6.2 Wat is die nadele van FIR Comments (in vergelyking met IIR filters) In vergelyking met IIR filters, FIR filters het soms die nadeel dat hulle meer geheue en / of berekening verlang om 'n gegewe filter reaksie eienskap te bereik. Ook, sekere antwoorde is nie prakties uit te voer met FIR filters. 1.7 Wat terme gebruik in die beskrywing van FIR filters Impulse Response - Die quotimpulse responsequot van 'n FIR filter is eintlik net die stel van FIR koëffisiënte. (As jy 'n quotimplusequot sit in 'n FIR filter wat bestaan uit 'n quot1quot monster gevolg deur baie quot0quot monsters, die opbrengs van die filter sal die stel koëffisiënte wees, soos die 1 voorbeeld beweeg verby mekaar koëffisiënt op sy beurt aan die uitset te vorm.) Tik - 'n FIR quottapquot is bloot 'n koëffisiënt / vertraging paar. Die aantal FIR krane, (dikwels aangewys as quotNquot) is 'n aanduiding van 1) die bedrag van die geheue benodig by die filter te implementeer, 2) die aantal berekeninge wat nodig is, en 3) die bedrag van quotfilteringquot die filter kan doen in werking tree, meer krane beteken meer stopband attenuasie, minder rimpeleffek, nouer filters, ens vermenigvuldig-akkumuleer (MAC) - In 'n FIR konteks, 'n quotMACquot is die werking van 'n koëffisiënt van die ooreenstemmende vertraag data monster te vermenigvuldig en die opbou van die resultaat. Sipresse gewoonlik vereis dat 'n MAC per kraan. Die meeste DSP mikroverwerkers implementeer die MAC operasie in 'n enkele opdrag siklus. Band oorgang - Die band van frekwensies tussen deurlaatband en stopband kante. Die nouer die oorgang groep, hoe meer krane wat nodig is om die filter te implementeer. (A quotsmallquot oorgang groep lei tot 'n quotsharpquot filter.) Vertraging Line - Die versameling van geheue-elemente wat die quotZ-1quot vertraging elemente van die FIR berekening te implementeer. Omsendbrief Buffer - 'n Spesiale buffer wat quotcircularquot omdat die verhoog aan die einde veroorsaak dat dit om rond te draai na die begin, of as gevolg decrementing van die begin af veroorsaak dat dit om rond te draai na die einde. Omsendbrief buffers word dikwels deur DSP mikroverwerkers om die quotmovementquot van die monsters deur die FIR vertraging aanlyn implementeer sonder om letterlik die data beweeg in die geheue. Wanneer 'n nuwe monster gevoeg om die buffer, dit vervang outomaties die oudste one. Variations op die bewegende gemiddelde Die bewegende gemiddelde filter is min of meer ideaal vir glad data in die teenwoordigheid van geraas, indien die nuttige inligting in jou data is heeltemal in die tydgebied. In daardie geval, moenie jy omgee sy eerder swak prestasie in die frekwensiedomein. Figuur 1 toon die impuls, stap, en frekwensieweergawes van die basiese bewegende gemiddelde filter (met drie ekstra monsters aan beide kante wat nie deel van die impuls en stap antwoorde, vir duidelikheid). Soms, egter, het jy om te werk met data waarvoor beide domeine is belangrik. Vir sulke gevalle, is daar geweegde weergawes van die bewegende gemiddelde wat min of meer gelykstaande is in die tydgebied, maar dat daar nog baie beter prestasie in die frekwensiedomein het. Herhaal bewegende gemiddelde Die eerste ding wat jy kan doen om die frekwensieweergawe van die bewegende-gemiddelde te verbeter, is om dit 'n paar keer toe te pas. Na twee herhalings, dit neerkom op 'n driehoekige gewig van die koëffisiënte (Figuur 2). Sedert die toepassing van dieselfde filter twee keer verdubbel die uitwerking daarvan, die eerste kant lob van die frekwensieweergawe is net die helfte so hoog soos die een van figuur 1. Die rede vir die driehoekige vorm is dat die bewegende gemiddelde is 'n konvolusie met 'n vierkantige pols. Die toepassing van dit twee keer veroorsaak 'n konvolusie van hierdie reghoekige puls met homself, wat lei tot 'n driehoekige venster vir die gekombineerde filter. Let daarop dat Ive geneem dieselfde filter lengte in Figuur 2 soos in Figuur 1 en sodoende die eerste nul van die frekwensieweergawe verskuif. 'N Ware konvolusie van die oorspronklike reghoekige filter gevolg sou gehad het 'n langer filter en sou die nulle in presies dieselfde plek gehou, natuurlik. As die bewegende gemiddelde filter verskeie kere herhaal word, die koëffisiënte konvergeer na 'n Gaussiese venster (Figuur 3) as gevolg van die sentrale limietstelling. Natuurlik, 'n werklike Gaussiese strek oneindig in albei rigtings, so daar is geen ander opsie as om dit te sny van op 'n stadium (of dalk vermenigvuldig dit met 'n tweede venster). Daarbenewens het die standaardafwyking van die Gaussiese moet gekies word. Vir hierdie illustrasie (en vir die implementering van die Filter Designer), ek het die standaard instellings van MATLAB aangeneem. In die praktyk, kan jy dalk te eenvoudig herhaaldelik toe te pas die bewegende gemiddelde plaas van die toepassing van 'n Gaussiese venster. Wanneer rekursief geïmplementeer, die bewegende gemiddelde is baie effektief. terwyl die Gaussiese venster moet geïmplementeer word deur konvolusie. Blackman Venster Nog 'n moontlikheid is om een van die klassieke venster funksies wat gebruik word vir 'n klein venster-sed filters haal, en gebruik dit as 'n filter kern (sien die uitstekende Wikipedia bladsy op venster funksies). As 'n voorbeeld, Ive opgetel die Blackman venster (Figuur 4). Dit verbeter die stop-orkes verswakking nog verder, terwyl hy nog 'n gladde tyddomein reaksie sonder enige lui of oorskiet wys. Ten slotte, as jy nodig het om data te stryk, maar 'n beter frekwensie prestasie nodig as die basiese bewegende gemiddelde te bied, 'n paar alternatiewe beskikbaar. Filterontwerp Tool Hierdie artikel word aangevul met 'n Filter Ontwerp instrument. Eksperimenteer met die verskillende venster funksies en die lengte van die filter, en sien wat die effek op die frekwensieweergawe. Probeer dit nou
No comments:
Post a Comment