Impuls Response Meting Doel van de meting Het doel van de meting die ik gedaan heb is het meten van de akoestische eigenschappen van een ruimte. In dit geval de frequentie response van deze ruimte.
Geanalyseerd systeem en verwachtingen Als ruimte heb ik gekozen voor mijn badkamer. Deze badkamer is relatief klein, ongeveer 1,5x3,0x2,5 meter en heeft een galmende akoestiek. De ruimte is symmetrisch en rechthoekig met op ¾ een half openstaande douchedeur. Door het kleine formaat van de badkamer is de resulterende galm van redelijk korte duur. In de analyse van de impuls response verwacht ik vroege reflecties en en een galm met een korte 'staart'. Wellicht zorgt de half openstaande douchedeur ook voor wat extra reflecties al lijkt me dat moeilijk op te maken uit de impuls response gezien deze douchedeur op dezelfde afstand van de microfoon staat als een aantal muren in de ruimte. Het lijkt me dus moeilijk te bepalen of de eerste reflecties komen van de douchedeur of de dichtstbijzijnde muren.
Process schema
Omschrijving van de meet opstelling Ik heb gebruik gemaakt van de volgende apparatuur: Computer Playback/Recording Software Geluidskaart Speaker Microfoon
– MacBook Pro – Ableton Live – M-Audio Fast Track Pro – Boss MA-12 – Superlux ECM-888B
Op de volgende pagina een schema van de opstelling gemaakt voor de meting met daaronder 2 foto's van de opstelling:
Signaal Ik heb gebruik gemaakt van een exponentiële sine-sweep wiens frequentie exponentieel gemoduleerd word van 10 tot 12800 Hz over een tijdspanne van 10 seconden. Om een goede impuls response te maken heb ik een sweep gemaakt die alle frequentie componenten in gelijke proporties bezit. Met gevolg dat het spectrum van de gehele sweep gelijke amplitude waardes heeft voor alle frequentie componenten. De golfvorm van de gebruikte sweep:
Het 'korte termijn spectrogram' van de gebruikte sweep:
Het spectrogram van de totale sweep:
Voor het genereneren van het signaal heb ik gebruik gemaakt van de applicatie:'Praat'. In 'Praat' heb ik het script gebruikt wat Peter Pabon op zijn website voorstelt: startFreq=10 endFreq=12800 lnRange=ln(endFreq/startFreq) periodT=10 multFact=lnRange/periodT Create Sound... ExpSweep 0 periodT 44100 exp(multFact*0.5*(xperiodT))*sin(2*pi*startFreq/multFact*exp(multFact*x))
Ten slotte heb ik een kleine fade-out gemaakt aan het eind van de sweep om zo een click te voorkomen die de energie in de hogere frequenties zou vergroten.
Problemen en errors Een probleem wat me meteen al opviel tijdens het meten van de sweep repsonse is dat het in mijn badkamer niet volledig stil is. Je hoort wat ruis als je goed luistert die misschien van verwarmingsbuizen kwam. In het signaal van de opgenomen sweep response is inderdaad wat ruis te horen (voornamelijk in het eerste deel van de sweep). Later bedacht ik me dat dit ook te maken kan hebben met de ruis die de pre-amp in mijn geluidskaart eventueel met zich mee bracht. Ik heb de gain van de inkomende audio namelijk bijna maximaal moeten boosten om een sterk signaal op te kunnen nemen. Na het convolven van de uiteindelijke impuls response met een geluidsbestand van een pratende vrouw lijkt dit geen grote invloed te hebben op de uiteindelijke meting. Het convolvde signaal heeft namelijk een akoestiek die vrijwel identiek is aan die in mijn badkamer.
Interpretatie en resultaat
In het eerste bovenstaande figuur zie je het 'korte termijn spectrum' van de opgenomen sweep response in de ruimte. Daaronder weer het 'korte termijn spectrum' van de sweep op mijn computer. Je ziet dat er in de sweep response extra harmonische zijn ontstaan ten gevloge van vervorming van het signaal ergens in het proces. Als het goed is komen deze harmonische terug in de impuls response als impulsen voorafgaand aan de eigenlijke puls. Deze vervorming moet dan ook te negeren zijn door het wegknippen van deze “pre-pulsen”. Als we kijken naar het spectrum en de golfvorm van de uiteindelijke impuls response (hieronder) zien we inderdaad iets gebeuren voor de eigenlijke puls (voornamelijk zichtbaar in het 'korte termijn spectrum'). Dit ten gevolge van de extra harmonische die zijn ontstaan door vervorming in het proces zoals te zien is in het 'korte termijn spectrum' van de sweep response.
Los van de vervorming zie je in de twee figuren hierboven een puls met een korte galm (± 0.2 s). Dit is precies wat ik verwacht had. Hieronder twee figuren, eerst het spectrum van de gehele sine-sweep en dan het spectrum van de gehele sweep response:
Je ziet bij het vergelijken van de twee figuren dat de akoestiek van de gemeten ruimte een enorme diffusie op de frequentie response heeft veroorzaakt. Verder zie je dat er geen aanzienlijk groot verschil is tussen verschillende frequenties wat misschien verklaarbaar is door de grote van de ruimte. Omdat de ruimte zo klein is en de galm zo kort is er misschien te weinig tijd om een verschil te veroorzaken in het verlies van energie van verschillende frequenties. Ik kan me voorstellen dat hoge frequenties in een grote ruimte sneller energie verliezen als in lage frequenties (zoals dat meestal ook hoorbaar is in galmende ruimtes). Maar vanwege de korte galm duur in mijn badkamer is er misschien niet genoeg tijd om dit verschil in energie verlies tussen verschillende frequenties hoorbaar te maken.
Conclusie Ik denk te kunnen concluderen dat mijn meting succesvol is verlopen. Wellicht was er een nog beter resultaat geweest als ik een compleet stille ruimte had opgenomen en wellicht wat betere apparatuur had gebruikt. Als ik luister naar het eindresultaat en naar convolutions van het eindresultaat met geluidsbestanden dan ben ik zeer tevreden over de gelijkheid tussen de akoestische eigenschappen van mijn badkamer en het convolvde geluidsbestand.
Referenties “Signals & Systems” door Stan Tempelaars http://www.koncon.nl/staff/pabon/IRM/IRMeasurementInstruction/assignment_IR_ExpSweep_MainPage.ht m
Resulterende signalen Sweep en omgekeerde versie met fade-in/out: ExpSweep(fade).aiff ExpSweepRev(fade).aiff Opname van de sweep in de gekozen ruimte: SweepResponse.aiff Sweep respons geconvuleerd met de omgekeerde sweep: ImpulseResponse.aiff Ge-edite versie van ImpulseResponse zonder vervorming: ImpulseResponse(edit).aiff Geluidsbestand geconvuleerd met de impuls respons en het droge geluidbestand zelf: noisy(convolved).aiff noisy(dry).aiff