倍频带和分数倍频带滤波器
这个例子展示了如何设计倍频和分数倍频滤波器,包括滤波器组和倍频声压级计。倍频和分数倍频滤波器在声学中常用。例如,八度滤波器用于噪声控制的频谱分析。声学家使用八度或分数(通常是1/3)八度滤波器组,因为它提供了不同频段噪声功率的有意义的测量。
倍频带滤波器
一个八度是两个频率之间的间隔,其比例为2:1(或 以10为基数的八度比)。一个倍频带滤波器或分数倍频带滤波器是一个由其中心频率、阶数和带宽决定的带通滤波器。ANSI®S1.11-2004标准定义了三类滤波器的幅度衰减极限:0类、1类和2类。类0在通带中只允许+/-0.15 dB的纹波,而类1允许+/-0.3 dB,类2允许+/-0.5 dB。阻带衰减的级别从60到75 dB不等,这取决于滤波器的级别。
设计一个全倍频滤波器octaveFilter
.
BW =1倍频程的;%的带宽N = 8;过滤器顺序%F0 = 1000;%中心频率(Hz)Fs = 48000;采样频率(Hz)of = octaveFilter(“FilterOrder”N“CenterFrequency”F0,…“带宽”BW,“SampleRate”Fs);
可视化滤波器的幅值响应。
可视化(,“1级”)
可视化图形与对象同步,因此您可以在更改过滤器参数时看到幅度响应更新。如果滤波器符合ANSI S1.11-2004标准(包括在有效频率的中心),则震级响应周围的掩码为绿色,否则为红色。若要使用图形用户界面更改过滤器的规格,请使用parameterTuner.你也可以使用音频测试台应用程序快速设置一个测试台架的八度滤波器你设计。例如,运行audioTestBench(的)
发射一个带有八度滤波器的测试台架。
打开一个参数调谐器,使您能够实时修改筛选器。
parameterTuner(的)
打开频谱分析仪,显示由倍频滤波器过滤的白噪声。您可以在循环运行时使用参数调谐器修改筛选器设置。
Nx = 100000;Scope1 = dsp。简介(“SampleRate”Fs,“方法”,滤波器组的,…“AveragingMethod”,“指数”,“PlotAsTwoSidedSpectrum”假的,…“FrequencyScale”,“日志”,“FrequencySpan”,“启动和停止频率”,…“StartFrequency”,1,“StopFrequency”Fs / 2,“YLimits”-60年[10],…“RBWSource”,“属性”,“RBW”1);抽搐而Toc < 20运行20秒x1 = randn(Nx,1);Y1 = (x1);scope1(日元)结束
八度带滤波器组
许多应用程序需要一套完整的八度滤波器来形成一个滤波器组。要手动设计每个过滤器,您将使用getANSICenterFrequencies(的)
获取每个滤波器的中心频率列表。的方法要简单得多octaveFilterBank
对象。
创建一个octaveFilterBank
物体和绘制它的大小响应。
ofb = octaveFilterBank(1/3倍频程的Fs,“FilterOrder”N);freqz(富含,b“NFFT”2 ^ 16)增加FFT长度以获得更好的低频分辨率集(gca),“XScale”,“日志”)轴([20 Fs/2 -50 5])“1/3-八度滤波器组震级响应”)
用1/3-八度滤波器组对粉色噪声发生器的输出进行滤波,并计算每个滤波器输出的总功率。
pinkNoise = dsp。ColoredNoise (“颜色”,“粉红色”,…“SamplesPerFrame”Nx,…“NumChannels”1);Scope2 = dsp。简介(“SampleRate”Fs,“方法”,滤波器组的,…“AveragingMethod”,“指数”,“PlotAsTwoSidedSpectrum”假的,…“FrequencyScale”,“日志”,“FrequencySpan”,“启动和停止频率”,…“StartFrequency”, 20岁,“StopFrequency”Fs / 2,“YLimits”, 30 [-40],…“RBWSource”,“属性”,“RBW”10);centerOct = getCenterFrequencies(ofb);nbOct =数字(centerOct);bandPower = 0 (1, nbot);nbSamples = 0;抽搐而toc < 10 xp = pinkNoise();Yp = ofb(xp);bandPower = bandPower + sum(yp.^2,1);nbSamples = nbSamples + Nx;scope2 (yp)结束
粉色噪声在每个八度频带的总功率相同,因此5hz ~ 10hz之间的功率与5000hz ~ 10000hz之间的功率相同。因此,在频谱分析仪中,您可以观察到10 dB/ 10年的衰减,这是对数对数尺度上粉红色噪声的特征,以及该信号如何被分割成30个1/3-八度频带。较高频带的功率密度较小,但对数尺度意味着它们也更宽,因此它们的总功率是恒定的。
绘制功率谱以显示粉红色噪声具有平坦的八度谱。
B = 10^(3/10);%以10为基数的八度比计算功率(包括压力参考)octPower = 10*log10(bandPower/nbSamples/4e-10);栏(log (centerOct) / log (b), octPower);集(gca),“Xticklabel”甘氨胆酸、圆(b。^ (,“Xtick”), 2,“重要的”));标题(“1/3-八度谱”)包含(倍频频带(Hz)) ylabel (“权力(dB)”)
八度SPL
SPL Meter对象(splMeter
)也支持八度频金宝app带测量。实时重现相同的功率谱测量。使用一个dsp。ArrayPlot
对象以可视化每个波段的功率。使用z加权选项可以省略频率加权滤波器。
spl = splMeter(“带宽”,1/3倍频程的,…“OctaveFilterOrder”N…“SampleRate”Fs,…“FrequencyWeighting”,“Z-weighting”);Scope3 = dsp。ArrayPlot (“标题”,“粉红噪音SPL”,…“包含”,“八度频带数”,…“YLabel”,“权力(dB)”,“YLimits”100年[0]);抽搐而toc < 10 xp = pinkNoise();Yp = spl(xp);Ypm = mean(yp,1).';scope3 (ypm)结束