A mobil nézet még fejlesztés alatt!
>> váltás asztali nézetre <<

Impulzusválasz alapú akusztikai mérések

4. rész: Idő-frekvencia tartomány és szemléltetése

A frekvenciamenet mérésének van egy nem elhanyagolható hátránya: csakis a szinuszos állandósult állapotra igaz, vagyis régóta fennálló folyamatos szinuszos gerjesztésre. A kimenetnek mindig kell egy kis idő, amíg ez az un. stacioner állapot beáll, és kikapcsolásakor sem tud a kimenet azonnal 0 szintre visszaállni, itt is idő kell, amíg leáll a rezgés. Azt az időt, amíg a rendszer beáll a stacioner állapotra (ill. kikapcsoláskor visszaáll a 0 nyugalmi szintre) tranziens időnek nevezzük. A frekvenciaátviteli függvény csak a stacioner állapotról ad képet, a tranziensről nem. (Persze ettől még hordozza a frekvenciafüggvény ezt az információt, részben az amplitúdómenet változásaiba, részben pedig a fázismenetbe kódolva)

A tranziens időbeli viselkedés viszonylag jól megmutatkozik a rendszer impulzusválaszán, vagy egységugrás-válaszán (egységnyi nagyságú négyszöglökés válaszjele). Szoktak is ilyen jellegű méréseket végezni, pl. erősítőknél gyakori a viszonylag alacsony frekvenciájú négyszögjellel való vizsgálat, ahol a négyszögjel fel/le futásain látható, hogy milyen meredekséggel, esetleges túllendüléssel, utólengésekkel képes követni a rendszer a bemenőjelet. Sokszor azonban nem elég azt látni, hogyan cirkuszol a rendszer egy ugrásra, azt is látni szeretnénk, hogy milyen frekvenciákon keletkeznek lengések és milyen fel- és lefutási burkológörbével. Egyetlen szinuszos lengedezés frekvenciája, lecsengési ideje még meghatározható az időtartományban, de egy komplexebb, több összetevős impulzus- vagy egységugrás-válaszon ez már nem megy. Ilyenkor lépnek be a különféle idő-frekvencia vizsgálatok, mint pl. a vízesés diagram (CSD), Wigner-eloszlás, Burst-lecsengés.

Ablakoló függvények (Time window)

Mielőtt tovább lépnénk, egy ezidáig diszkréten halogatott dologgal kell megismerkednünk, az ablakoló függvénnyel. Az angol elnevezés Time window időablakot jelent. Lényege, hogy az FFT ablakban lévő jelrészletet egy burkológörbével látja el, mely a jelnek vagy csak a végét (aszimmetrikus ablakfüggvény) vagy a kezdetét és a végét is (szimmetrikus ablakfüggvény) „lehalkítja”. Erre azért van szükség, mert amikor egy folytonos jelből kivágunk egy kicsi ablaknyi részt, melyet Fourier-transzformálni szeretnénk, akkor valójában nem ennek az ablaknyi mintának a spektrumát kapjuk, hanem annak a periodikus jelnek a spektrumát, melynek egy periódusa az adott ablaknyi jelrészlet. Ennek oka, hogy a Fourier-transzformáció -így az FFT is- kizárólag periodikus jeleken értelmezett. Vagyis, az ablaknyi jelünk végéhez hozzákapcsolódik annak eleje (mintha végtelenszer játszanánk le egymásután). Ha ezen a toldáson van szintugrás vagy meredekségugrás, akkor ez is része lesz az FFT analízisnek, mely hamis magasfrekvenciás spektrumvonalakat eredményez. Az ablakfüggvény lényege, hogy az FFT ablak szélein leszintezi a jelet, így amikor ismétlésszerűen egymás után kapcsoljuk, akkor ezen a részen sem szintesés, sem meredekségugrás nem lesz.

kép

Bár magasfrekvenciás oldalról rendeződik a spektrum, viszont az ablakfüggvény alacsony frekvencián torzítja el a jelalakot, így az ablakolt FFT-nek az első néhány spektrumvonala szinte biztosan hamis értéket fog mutatni. Ezt azonban azzal tudjuk ellensúlyozni, hogy túlméretezzük az FFT ablak méretét 2-4, vagy akár 8-szorosan.

Sokféle ablakfüggvény létezik, pont azért, mert ugyan elvesznek torzulást a grafikonból, de hozzá is adnak. Így nem lehet univerzális ablakfüggvénnyel dolgozni. (Ennek ellenére a leggyakoribb a Hanning-ablak)

kép

A fenti ábrán láthatunk négy egyszerű ablakfüggvényt. Matematikailag az ablakolás két függvény elemenként történő összeszorzása, így lényegében az ablakfüggvény azt írja le, hogy a jel különböző helyeken milyen súllyal szerepel.

A négyszög semmit nem csinál a jellel, minden mintája egységnyi súlyt kap. A háromszög a közepén 1-szeres súllyal szoroz, a szélek felé pedig lineárisan megy a 0-hoz. Az eredmény két szélső mintája is így 0 lesz. A Hanning és Hamming haranggörbe vonalú burkológörbe, a Hanning 0-ra leveszi a jelszintet az ablakszéleken, míg a Hamming hagy itt egy keveset . Természetesen ennél sokkal többféle ablakfüggvény létezik.

Annyit még fontos megjegyezni, hogy az ablakfüggvénynek torzításmentesen kell hagynia a jelnek azt a szakaszát, ahol nagy súllyal tartalmaz információt, ill. (megfordítva) ott csillapíthatja erőszakosabban, ahol kevésbé hordoz információt. Egy jelfolyamból (pl. zene) kivágott jelrészletnél időben egyenletesen oszlik el az információ, nincs kitüntetett rész. Ilyenkor az ablakfüggvény többnyire középre súlyoz, az FFT után a spektrumban az ablak közepének megfelelő időpont dominál, és tőle fél ablaknyit balra és jobbra csökken a komponensek súlya. Ennek a fenti ábrán mutatott albakfüggvények eleget tesznek. Ettől alapvetően különbözik az impulzusválasz. Itt ugyanis óriási információmennyiség zsúfolódik a jel elejére, az impulzus megugrásának lefutásába. Aztán ahogy távolodunk ettől a ponttól, úgy egyre kevésbé hordoz információt a jel. Itt tehát az FFT ablak elejére koncentrálódik az információ, és ha ez megsérül, (a rosszul megválasztott ablakfüggvény következtében) akkor nagyon hamis spektrumot fogunk kapni. Ezért az impulzusválasz függvény FFT analíziséhez aszimmetrikus (vagy más néven fél) ablakfüggvényt kell használni. Ez a fenti ábrán látható függvények esetén azok közepe és jobboldala közti fele. A gyakorlatban spektrogram esetében szimmetrikus ablakfüggvény használatos, vízesés grafikonoknál (CSD) pedig aszimmetrikus.

Idő-frekvencia grafikonok

Spektrogram

Az első, talán legalapvetőbb idő-frekvencia diagram a spektrogram. Nem igazán mérésre, inkább jelek spektrumanalízisére alkalmazzák, sokszor hangmérnökök, dj-k, zenészek zenei jelek vizsgálatára. Lényege egy adott szélességű időablak csúsztatása a jelfolyamon, ami mindig egy rövid szakasz spektrumát veszi fel. Így minden ablakhelyzethez készül egy FFT analízis, melyeket grafikonba rendezünk. (Az ábrán a kis türkizre színezett rész szemlélteti az FFT ablakot, melyet folyamatosan csúsztatunk jobbra)

kép

Itt is zenei jelből vett részletet látható, és lent ennek spektrogramja. Ha mérésre szeretnénk használni, akkor természetesen nem zenét, hanem valamilyen alkalmas mérőjelet választunk, mint pl. egységimpulzust. (van is ilyen alkalmazása, lásd lejjebb ARTA STF grafikonok)

A függvény most két független változóval rendelkezik, egyik az idő (az ablak pillanatnyi helyzete) a másik a frekvencia. Ennek megfelelően az ábrázolása lehet háromdimenziós koordináta-rendszerben, vagy kétdimenziós síkon, ahol a függvényérték a pont sötétárnyalatához vagy színekhez van rendelve. (Izovonalas megjelenítés)

Spektrumábrázolás háromdimenziós koordináta-rendszerben:

kép

Itt vízszintesen van skálázva a frekvencia, ferdén az idő és függőlegesen az amplitúdó. Bár nagyon látványos, de nehéz jól átlátni ezt a fajta ábrázolási módot, ezért spektrogarmnál gyakoribb a két dimenzióban történő izovonalas ábrázolás:

kép

Itt vízszintesen van az idő, függőlegesen a frekvencia (ez a két koordináta egyes programoknál felcserélődik, kinek így, kinek úgy szimpatikus) és az amplitúdó színekhez van rendelve, melyet a jobboldali kis csíkról lehet leolvasni.

A spektrum felbontását az FFT ablak szélessége határozza meg. Minél nagyobb az ablak, annál jobb a frekvenciafelbontás, de annál rosszabb az időtengely felbontása, mivel az ablak szélességében időben átlagol. Ez pont olyan mint a simítószűrők hatása. Ez a fenti példán az izovonalas grafikonban is látszik, hosszúkásan el van maszatolva a spektrumkép. Pont olyan, mintha egy FFT ablaknyi simítószűrőt alkalmaznánk, az időtengelyen. (sőt, ennek a látszólagos simítószűrőnek pont olyan a kernele, mint az FFT ablak ablakoló függvénye, pl. Hanning ablaknál haranggörbe, mely középre súlyoz)

Nem könnyű beállítani a spektrogramot, kell hozzá egy kis rutin. Az FS mintavételt, az ablakméretet, az ablakfüggvényt úgy kell belőni, hogy amit látni akarunk, az látható is legyen, különben valamelyik irányban nem lesz elég jó a felbontás (vagy maszatolja az időt, vagy gyenge a frekvenciafelbontás) Erre a célra amúgy egy remek program a SpektraLab, én néha zenék főleg alacsonyfrekis összetevőit szoktam megnézni vele.

ARTA-féle STF (Sort Time Fourier Transformation) diagram

A fenti spektrogramhoz nagyon hasonlóan működik az ARTA program STF grafikonja. Ahogy a nevében is szerepel, rövid időablakkal dolgozik, hossza konstans, folytonosan csúsztatja a jelen (átfedi saját magát). Az ablakon belül Hanning ablakfüggvényt alkalmaz, vagyis az ablak pillanatnyi helyzetének közepére súlyoz. Természetesen, itt nem zenét elemezgetünk, hanem a mért hangsugárzó impulzusválasza a feldolgozás tárgya. Kicsit hasonlít az eredménye a Koller István féle Wigner-eloszláshoz, csak nem olyan jó a felbontása.

kép

Az ábrán jól kivehető az időtartománybeli sorrend, elsőnek a marker jelet láthatjuk rajta, egy kis nyúlvány a jobb felső sarokban 1.7ms időnél. Alatta 3.1ms-nál a széles piros vízszintes csík a mért hangsugárzó impulzusválasza (a direkt jel). Bár ebben a léptékezésben halványan, de azért látható a keresztezési frekvencián történő elhajlás (fx=2.8kHz), a magas hangok időbeli előrébb járása. (a Wigner-eloszlásnál ez sokkal jobban látszik, bár ott a lineáris frekvencialéptékezés miatt kitolódik a grafikon bal szélére) Ezután 1-2 ms késéssel a hangsugárzó kirezgései és időkéséssel megjelenő energiagócok láthatóak. 9ms-tól lefelé erős vízszintes csíkozás jelzi, hogy ez már a környező tárgyak, falak erős hangvisszaverődései. Ide húztam egy vízszintes vonalat, és jeleztem az ábrán, hogy ami ezen vonal alatt van, az már reflexiókkal terhelt rész.

Ebben a grafikonban amúgy 128 minta volt beállítva ablakméretnek, ami a 96kHz-es mintavétel esetén 128/96k=1.33ms időbeli szélesség. Ebben a szélességben ken a grafikon időtartományban, ill. az alsó határfrekvencia és a frekvenciafelbontás ebből fakadóan 750Hz.

CSD (vízesés) diagram

CSD Comulativ Spectral Decay, magyarul halmozott lecsengési spektrumnak nevezik, röviden pedig csak vízesés diagramnak hívják. Amíg a spektrogramot inkább különféle jelek analizálására használják (pl. mint fent is, egy zenei jelrészlet), addig a CSD már szín tiszta rendszervizsgálat, a rendszer bemenetére vezetett egységimpulzus (dirakt-delta) a vizsgálójel és az erre adott válaszjelet, azaz az impulzusválaszt elemzi. Más fajta válaszjel nem is dolgozható fel, csakis ezen értelmezett. Ez viszont nem jelenti azt, hogy ténylegesen dirakt-deltával kell mérni, a fizikai mérőjel lehet bármilyen más szélessávú jel, amennyiben az arra adott válaszból impulzusválaszt lehet számolni. (a gyakorlatban többnyire zaj)

Csak a rezgések lecsengését mutatja meg, de azt igen jó felbontásban. A jel felfutásairól nem ad információt. A jó felbontás oka, hogy hosszú időablakkal lehet dolgozni (jó frekvenciafelbontás) úgy, hogy az nem megy az időbeli felbontás rovására. Viszont ez kizárólag monoton csökkenő energiájú impulzusválasz esetében működik. Az előbb tárgyalt spektrogramnál is be lehet állítani hosszú FFT ablakot, ekkor ott is jó lesz a frekvenciafelbontás, de az ablak szélességében elken időtartományban, így ott a frekvenciafelbontás és az időfelbontás fordított arányosságban áll, egyszerre csak az egyik lehet jó. Ez a jelenség CSD-nél bármilyen hosszú FFT ablak esetén sem zavar be, az időfelbontás mindig maximális. A gyakorlatban a CSD időablakának (FFT ablakának) nagyságát az akusztikai reflexiók beérkezésének időkésése határolja be, így az akusztikai mérőrendszer felállításától, a reflexióképes felületek, tárgyak távolságától függ csupán. Tehát ettől függ az is, hogy milyen frekvenciafelbontást tudunk megvalósítani és ez határozza meg a CSD grafikon időtengelyének hosszát is. Ha pl. 5ms a jel reflexiómentes része, akkor ezen kell képezni a CSD-t, a frekvenciafelbontás 200Hz lesz (f=1/T), a grafikon pedig 5ms hosszan jelenít meg. Ha messzebb vannak a reflexióképes tárgyak és többet késik a reflexió, akkor értelemszerűen jobb frekvenciafelbontás és hosszabb időtengely érhető el.

Esetleg annyi megjegyzés, hogy közelmikrofonozott mérés esetén szintén hosszabbra lehet venni az FFT ablakot, mivel ilyenkor a közvetlen jel és a reflexiók között jelentősebb, akár 30dB körüli amplitúdókülönbség lesz (a hangszóró lekiabálja a visszhangját) és ilyenkor nem okoz problémát, ha a feldolgozásba belejut olyan rész, amiben van egy kis reflektált jel.

A CSD működésének lényege, hogy viszonylag hosszú időablakkal indul, melynek mérete az időtartományon való csúsztatás folyamán folyamatosan csökken. Ez úgy valósul meg, hogy a csúszóablak vége a vizsgálandó jelrészlet végéhez rögzített, és csak az eleje csúszik minden ciklusban (falnál) kicsit beljebb. Így mindig azt mutatja, hogy ettől az adott pillanattól nézve, mi lesz a jel teljes lefutásáig. Amíg az ablak eleje előrébb van mint az impulzusválasz kezdete (első nagy megugrása), addig a rendszer frekvenciaátviteli függvényét rajzolja fel újra meg újra. (stacioner, azaz állandósult szinuszos állapot) Amint túllép a csúszóablak kezdete az impulzusválasz kezdetén, rögvest a rendszer lecsengéseit kezdi FFT-zni, minden ciklusban egy kicsit későbbi időpontból indulva. (tranziens tartomány) A következő ábrán egy 5 lépéses CSD képzés menetét láthatjuk:

kép

És ugyanez valós alkalmazáskor 50 lépésben így néz ki:

kép

Ezen az ábrán jól látni, hogy most 4-szer megismételte a frekvenciafüggvényt, és csak az az 5-ik lépésben lépte át az impulzusválasz megugrását a folyamat. Véleményem szerint ez azért jó, mert így jobban látni, hogy honnan omlik le a fal. Ha így akarjuk rajzoltatni a CSD-t, akkor ehhez mindig tegyük az impulzus-válasz első megugrása elé egy kicsivel az FFT ablak kezdetét jelölő vonalat.

Egy másik megjelenítési forma a szonográf, ami izovonalas megjelenítést használ. Itt sokkal könnyebb az idő- és frekvencia koordinátákat leolvasni, de rosszabbul olvasható az amplitúdó. Maga a megjelenítés teljesen olyan mint a spektrogram, színekhez vagy világosság/sötétség értékhez van rendelve a függvényérték.

kép

Ez a fajta megjelenítés pl. lehetőséget ad a fal egyenességének a vizsgálatára is, amivel az akusztikus távolság frekvenciafüggése mérhető fel. Ez többutas hangsugárzóknál jól láthatóan megmutatja a nem egy akusztikai síkban szerelt hangszórók hatását, de egyetlen hangszóró kónusza is okoz ilyen jellegű torzítást, attól függően hogy a kónusz egyes részei hogyan, milyen amplitúdóval és fázissal követik a gerjesztőjelet.

Alapjelek a CSD grafikonban

A következőkben néhány alapjel idő-frekvencia grafikonjait viszgálunk meg, elsőként a dirakt-deltát:

Letöltés:diract.wav

A letölthető .wav fájlokat importálni lehet az ARTA és az LspLAB-ba egyaránt, azonban az ARTA a cikk megírása óta változott, a jelenlegi verzió kicsit másképp dolgozza fel az importált jeleket.

kép

Ha megnézzük a jelünk frekvenciafüggvényét, akkor egy lináris függvényt kapunk:

kép

A fázis konstans 0 értéke úgy jön össze, hogy az ablakkezdet marker pontosan a megugrásra van állítva (ld. fent). CSD rajzoláshoz érdemes kicsit balra menni az ablakkezdéssel, ekkor ilyen eredményt kapunk:

kép

Itt is látjuk, hogy amíg az FFT kezdete megelőzi az impulzust, addig ismétli a frekvenciafüggvényt, majd amint túlmegy rajta, a tranzienst tartományt rajzolja. Mivel azonban itt nincs tranziens, így nincs is mit mutatni, az impulzus egyetlen 1 értékű elem, az őt követő elemek rendre 0 értéket képviselnek.

Az ARTA-ban sok beállítási lehetőség van a CSD beparaméterezésére, többek között a különféle simítások, melyből most az időtengelyen történő simítást fogjuk megnézni. (a frekvenciatengelyen alkalmazható gondolom nem szorul különösebb magyarázatra...) Az előbbi grafikonban egy pillanat alatt leomló falat láttunk, melyhez 0.02ms idősimítás volt beállítva. Ez olyan kicsiny idő, hogy nem is láttuk a hatását.

Most nézzük meg részletesebben az ARTA CSD/STF grafikon rajzoló párbeszédablakát:

kép

Az Axis csoportot nem kell különösebben magyarázni, az Editing-nél tudjuk kiválasztani a frekvencia irányú simítást, ill. beállítani hogy korrigálja-e a görbesereget a mikrofon átvitelével. (Ez most nálam ki van kapcsolva, mivel nem mérést dolgozok fel) A Time-frequendy Fourier analysis csoport már érdekesebb, itt kell beállítani az FFT-vel kapcsolatos dolgokat. A lenyíló ablakban a grafikon típusát kell beállítani (CSD vagy STF). A CSD a vízesés feldolgozás, az ablak vége rögzített, az eleje tolódik befelé. STF módban (sort-time) rövid idejű fix méretű FFT ablakot tol végig a jelen, gyakorlatilag spektrogramot rajzol. (Erre nemsokára látunk példát) Következő az FFT ablak mérete (mintában). Ezt CSD rajzoláskor úgy célszerű beállítani, hogy minél nagyobb legyen, de vigyázat, a kijelölt kapuméretnél nem lehet több! Figyelni kell az FFT ablak felvételekor, hogy hány mintát állítottunk be, és ehhez mérten a legnagyobb FFT ablakot célszerű használni, mivel ekkor kapjuk a legjobb frekvenciafelbontást, és CSD-nél ez nem jelenti (fordított)arányosan az időfelbontás leromlását! STF grafikon rajzolásakor viszont pont az FFT ablak méretével tudjuk beállítani a számunkra megfelelő kompromisszumot,vagyis hogy időtartományban, vagy frekvenciatartományban akarunk-e jobb felbontást. Következő az ablak tolása, ennyi mintánként lépked előre a falak felhúzása közben. Alatta a ciklusok számát kell megadni, vagyis ennyi falat fog felhúzni egymás elé. Az utolsó beállítás pedig az időtengely irányában történő simítószűrő kernelének szélessége ms-ban.

Kissé kényelmetlen, de végül is praktikus, hogy mindent sample-ben azaz mintában kell megadni. jelenleg FS=48kHz a mintavételi freki, így ebből tudunk számolni szükség esetén. Az egy minta időszélessége (mintavételi periódusidő) TS=1/48000Hz=20.83μs. A többi dolog ebből számítható: Ha 5 mintánként csúszik az ablak(kezdet), akkor a ciklusok (falak) közt 5·TS=104.15μs az időléptetés. Ha 50 falat húz fel egymás elé, melyek között 104.15μs a távolság, akkor 5207.5μs azaz kb 5.2ms a teljes CSD grafikon időátfogása. Ezzel érdemes eljátszani, az 50 falnál lehet többet is beállítani, én pl. 100-at szoktam használni, mely 3 mintánkénti léptetéssel kb 3ms teljes időátfogást ad a 96kHz-en mintavételezett mérések esetén. (48kHz-nél ez kétszer több időt jelent!)

Nézzük meg, mi történik, ha az idősimítást nagyobb értékre, 0.5ms-ra állítjuk:

kép

Ekkor lassan omlik le a fal, de a gyakorlatban ilyenkor jobban látszik, hogy minden frekvencián egyformán esik-e, ezért célszerű valamekkora simítást használni, én pl. 0.1-0.2ms-ot szoktam általában.

Következzen ezután az STF (Short-time FFT) féle grafikonozást! Ezt is a CSD gombbal kezdjük, csak most így kell beállítani:

kép

Az ablak szélességét minimumra vettem, ami 128 minta. 10 mintánként csúszik az ablak és 200 falat húz fel. Az idősimítást ilyenkor nem tudjuk beállítani, melynek oka, hogy a spektrogram alapból átlagol az FFT ablak szélességével. A hatása pont olyan, mintha ugyanolyan függvénnyel simítanánk az időtengely mentén, mint ami az FFT analízis ablakfüggvénye. (esetünkben Hanning) Ezt ugyebár látjuk is a fal oldalmetszetén, mivel ideális esetben itt egy határozott meredek falat kellene látni, de ehelyett a fal metszete felveszi a haranggörbe formát! (ld. az ábrán a fal jobboldali élét)

kép

Ugyanez szonográf ábrázolásban:

kép

Ez a fajta ábrázolás eléggé hasonlít a Videotonnál és a BME-n alkalmazott Wigner-eloszlás grafikonhoz, de mégsem az. A Wigner-eloszlás ettől sokkal jobb felbontású. Itt látni, hogy a 128 minta (ami 128·TS=2.67ms széles) még viszonylag elfogadható időfelbontású, de gyenge frekvenciafelbontást ad. Az alsó határfrekvencia és a frekvencia-felbontás 1/2.67ms=374.5Hz. Ha növeljük az ablak szélességét pl. 512 mintára, akkor az időablak már 10.67ms szélesen maszatol, és a frekvenciafelbontás még így is csak 93.75Hz! A Videoton-féle Wigner grafikonok ettől messze jobb felbontásúak, de sajnos eddig semmi infót nem sikerült felhajtanom erről a grafikonról. (pedig hányan ígértek már nekem BME villamos jegyzeteket...)

kép

A következő jelalak az 1kHz-es szinuszjel:

Letöltés:1kHz.wav

kép

Frekvenciaspektruma egy vonal:

kép

CSD grafikonon pedig egy időtengellyel párhuzamos fal:

kép

Izovonalas (sonográf) megjelenítésben:

kép

Mivel itt a szinuszjelünknek lényegében nem volt indulása/megállása, így a CSD grafikonon sem áll meg sehol, bármekkora időátfogást is veszünk, konstans amplitúdóval kitölti a teljes időtartamot, ettől legfeljebb az ablakfüggvények hatása miatt térhet el. Mind a dirakt-jel, mind pedig a kitartott szinuszjel tranziensektől mentes jel.

Következzen egy digitális FIR sáváteresztő szűrő impulzusválasza. Itt már van, nem is akármilyen tranziens:

Letöltés:fir.wav

kép

Digitális szűrő lévén ennek az impulzusválasznak megvan az a jellegzetessége, hogy a t=0 idő előtt is tartalmaz értékeket. Valóságos (kauzális) rendszerekben lehetetlen az, hogy egy rendszer előbb kezdje el a kimenetén a választ, minthogy a bemenetére megkapná a gerjesztőjelet. Vagyis az impulzusválasz sem indulhat el a dirakt-jel előtt, hisz akkor még nem is tudja a rendszer hogy fog kapni egy dirakt-delta jelet. Digitális jelfeldolgozás egyik sajátossága, hogy amennyiben post-processing módban dolgozunk, úgy generálhatunk olyan impulzusválaszú szűrőt, mely képes ezt a megkötést átlépni. (real-time rendszereknél is lehetséges, ha a rendszer kimenete egy állandó idővel késik a bemenethez képest) Nézzük tehát a frekvenciafüggvényt:

kép

Itt már látni az élek mentén némi bizonytalanságot, ami mégjobban megmutatja magát a CSD-n:

kép kép

Amíg a szűrő a stacioner tartományban dolgozik (kitartott periódikus jellel való gerjesztés), addig teszi a dolgát, nagy meredekséggel szűri a sávszéleket. A tranziens időben viszont mind a frekvencia, mind az időtartományban rakoncátlankodik, különösen a szonográf ábrán látható ez jól. Ha készítünk az ARTA-val egy STF (rövid ablakos) spektrogram szerű ábrát, ott igen jól látszik ennek a szűrőnek az idő-frekvencia sajátossága:

kép kép

Utolsó jel egy un. szinusz-burst:

Letöltés:burst.wav

kép

A frekvenciafüggvénye pedig ilyen:

kép

Azt látjuk, hogy az alapfrekvencia alatt és fölött egyébb frekvenciák is megjelennek. Ez úgy lehetséges, hogy amikor egy szinuszjel elindul vagy megáll, akkor az egy hirtelen tranziensnek számít, ami (ahogy a dirakt impulzus vagy az egységugrás is) több frekvencia egymáson való megjelenését eredményezi. A szinusz-burst CSD-jétől most eltekintünk, ugyanis nem nagyon értelmezhető, mivel nem monoton csökkenő jel, legfeljebb egyetlen szinuszcsomag leállását lenne értelme CSD-zni) Az STF grafikonja viszont már érdekes számunkra, itt jól látni hogy összesen négy szinuszcsomag volt a jelben:

kép kép

Mivel ez alapjel, ami időben gyorsan indul és áll meg, így az időtartományban nem maszatos, csupán a frekvenciatartományban pacáz szét az indítás-leállás pillanatában. A szinuszjelek indítását és megállását azonban érdemes komolyan venni, sokszor pont az a baj egy hangsugárzóval, hogy ezt nem képes jól, pontosan megtenni, ilyenkor van, hogy a mélynyomó nem pontos. És mint látjuk, hiába veszünk egy adott valamilyen frekvenciát, teszem azt 40Hz-en jól visz át a hangsugárzóm, a GD is alacsony a 40Hz-nél, de máshol, viszont csúcsos. Mivel egy 40Hz-es szinuszjel indulásakor és megállásakor egy pillanatra nagyon sok frekvencia megjelenik, így a rendszert éri olyan freki, amin már rakoncátlankodik. Vagyis, ha mondjuk 20 vagy 30 Hz-en van erős rezonancia (nagy csúcs a csoportfutás grafikonon), akkor egy 40-50Hz-es jel indulása vagy megállása ugyanúgy belöki ezt a frekit, mint az a frekvencia amin a rezonancia van.

CSD készítése LspLAB szoftverrel

A fentiekből azt már látjuk, hogyan tudunk CSD grafikont készíteni az ARTA szoftverrel. Most nézzük meg az LspLAB lehetőségeit. Én most nem egy LspLAB-ban folytatott mérést fogok feldolgozni, hanem az ARTA-val mért impulzusválaszt fogom ide áthozni az export/import lehetőségekkel. Ehhez először az ARTA-ban az impulzusválaszt kiexportálom. Az célfájl lehet .txt, amiben egy kétoszlopos táblázatba rendeződik az adatsor, de lehet .wav audió fájl is. Előbbi annyiban precízebb, hogy nem 16 bites felbontásban tárolja a mérési pontokat, hanem lebegőpontos számábrázolásban, ami sokkal pontosabb. Ez az impulzusválasz szempontjából nem lényegtelen, ugyanis itt az információ a mérés elejére zsúfolódik, nem elhanyagolandó az amplitúdófelbontás! Mindenesetre a wav sem ad észrevehetően rosszabb eredményt, viszont sokkal rugalmasabb a használata. Az áthozott impulzusválasz tehát a következő:

kép

A fenti impulzusválasz letölthető itt: ir_minta.wav

Az ARTA-nál már láttuk, hogy az FFT ablak kezdetét és végét be kell jelölni, különben fals grafikont kapunk. (olyan részt rajzol fel, ahol még- vagy már nincs jelünk). Ezt az LspLAB-nál is el kell követnünk, a képen látható módon két függőleges jelölővel. A két jelölő közötti szaggatott vonal az ablakoló függvény. (itt egy fél Hanning) A CSD kérést ne az ablak tetején lévő nyomógombbal kérjük, mert akkor nem dobja elénk a beállító ablakot, hanem a grafikonon jobb gombos menüben válasszuk a Compute CSD (waterfall) lehetőséget:

kép

Itt több beállítást lehet megadni mint a ARTA-ban, de ez még nem jelenti azt hogy jobb is annál. Nekem személy szerint két dolog nem tetszik benne: Az egyik, hogy nem lehet az időtengelyen simítani, így nem látszik jól a fal esésének egyenletessége, a másik pedig a beépített ablakolás. Itt az ablakfüggvénynek a megszokott gyakori típusokat adhatjuk meg, ill. azok impulzusválaszra használható aszimmetrikus (fél) változatait. Az ARTA-ban csak egyféle ablakfüggvény van, de az sokkal jobb (nem elavult) és kevesebb alacsonyfrekis torzítást okoz. AZ LspLAB-nál sajnos jobban járunk ha egyáltalán nem adunk meg ablakoló függvényt.

Ha a fenti beállításokkal kérjük a CSD-t, akkor ezt kapjuk:

kép

Itt fél-Hanning ablakfüggvénnyel dolgozott a program, ha kikapcsoljuk (Rectangular azaz négyszög típust állítunk be), akkor szebb eredményt kapunk:

kép

Ablak nélkül eltűnik a dombvidék 500-1000Hz, 2-4ms tartományban. Ebből is láthatjuk, hogy az ablakolás kétélű dolog, kitisztítja a magasfrekvenciás tartományt, de meghamisítja a spektrum elejét. Impulzusválasz esetén szerencsére nem sérül észrevehetően a spektrum teteje, ha nem adunk meg ablkaoló függvényt és jól állítjuk be az ablak végét. (oda tegyük a jelölőt, ahol amúgy is 0-közeli jel van!)

Van még egy jellemző tulajdonsága a CSD-nek, mégpedig a spektrum alacsonyfrekvenciás kiürülése-elgörbülése, a domborzat baloldalán látható bekanyarodása. Ez a változó méretű ablak miatt van, ahogy egyre kisebb az ablak, úgy egyre magasabb az FFT alsó frekvenciahatára. Ha fix méretű ablakkal dolgozik a program, akkor egyenes marad az ablak baloldala, de vigyázat, ilyenkor az ablak vége ráfut olyan részére az impulzusválasznak, amit már ki akarunk zárni a feldolgozásból! Az LspLAB-ban ehhez a CSD type beállítást Skiing TW-ről Constans TW-re kell átállítani. A korábbi Hanning ablakos esetben ilyen lesz a CSD:

kép

Az LspLAB is tud izovonalas megjelenítést, a grafikonon jobb gombbal kattintva egy sor megjelenítési beállítást kapunk. (pl. amplitúdófelbontás, frekvencia-tartománybeli simítás stb.) Itt csak be kell jelölni a sonograph mode menüpontot:

kép

Itt felcserélődött az idő és a frekvencia tengely, ami nekem személy szerint nem túl szimpatikus.

Végül azt szeretném még megmutatni, miként romlik el a CSD, ha az ablakot túlméretezzük a reflexiómentes szakaszon, és egy kevés bejut az első néhány szobai visszavert hullámból. Az ablakot ehhez így állítottam be:

kép

És ilyen lett a CSD:

kép

Amikor időkéséssel érkező jelek kerülnek a CSD feldolgozásba, akkor azok a fenti ábrán látható egyenes hátú, az időtengellyel párhuzamos csíkozást eredményez. Ez azért van, mert a CSD ilyenkor mintegy előrelátó tulajdonsággal bír. Mutatja, hogy ettől az időponttól kezdve milyen spektrum van a kimeneten, akkor is, ha az pár ms-al később jön. Ez egy nagy különbség a spektogramhoz képest, ami az FFT ablak középvonalától számítva attól +/- fél ablaknyi elkenéssel analizál, és nem zavar bele a jel jövője. Viszont a CSD pont a hosszú, túlzottan is jövőbenyúló ablaka miatt sokkal jobb felbontású, mint a spektrogram, vagy az ARTA-féle STF grafikon.