此示例显示了如何设计一种数字三通扬声器的简单模型。系统将音频输入分别分别对应于低音仪,中端驱动器和高音扬声器的低,中频和高频带。界定频段的归一化交叉频率的典型值 rad /样品和 Rad /样品。
创建低通,带通和高通滤波器,以产生低频,中频和高频带。指定频率。
lo = 0.136;嗨= 0.317;
为每个过滤器使用六阶切比雪夫I型设计。指定通频带纹波为1db,大于真实扬声器的值。的Cheby1.
功能使带通设计的顺序加倍。通过减少带通滤波器的顺序,使所有过滤器具有相同的顺序。返回每个过滤器的零,极点和增益。
ORD = 6;RIP = 1;[zw,pw,kw] = chby1(ORD,RIP,LO);[zm,pm,km] = chby1(ord / 2,rip,[lo hi]);[zt,pt,kt] = chby1(ORD,RIP,HI,'高的');
将滤波器的零点和极点形象化。
zplane([zw zm zt],[pw pm pt])lg =图例('低音喇叭'那'midrange'那'Teeter');lg.box =.'离开';
低音喇叭:零 抑制高频。杆子增强了幅度响应 和较低的交叉频率。
midrange:零 和 抑制高频和低频。极点增强了较低和较高的交叉频率之间的幅度响应。
高速扬声器:零 抑制低频。POLES增强了较高的交叉频率和频率之间的幅度响应 。
绘制单位圆上的幅度响应,以查看不同杆和零的效果。使用线性单位。将过滤器代表为二阶部分。
SW = ZP2SOS(ZW,PW,KW);SM = ZP2SOS(ZM,PM,KM);ST = ZP2SOS(ZT,PT,KT);nf = 1024;[HW,FW] = Freqz(SW,NF,'所有的');HM = Freqz(SM,NF,'所有的');ht = freqz(st,nf,'所有的');PLOT3(COS(FW),SIN(FW),[ABS(HW)ABS(HM)ABS(HT)])XLABEL('真实的') ylabel ('假想')查看(75,30)网格
用dB绘制幅值响应FVTool.
。
hfvt = fvtool(sw,sm,st);传奇(HFVT,'低音喇叭'那'中档'那'Teeter')
加载一个音频文件,其中包含以8192hz采样的汉德尔的“哈利路亚合唱”片段。通过滤波将信号分成三个频段。绘制乐队。
加载亨德尔%听到,键入soundsc(y,Fs)YW = SOSFILT(SW,Y);%听到,键入soundsc(YW,FS)ym = sosfilt (sm, y);%听到,键入soundsc(ym,fs)欧美= sosfilt(圣,y);%听到,键入soundsc(yt,fs)图((0:长度(Y)-1)/ FS,[YW YM YT])XLabel('时间'')
%听到所有的频率范围,键入soundsc(yw+ym+yt,Fs)
参考文献
Orfanidis,Sophocles J.信号处理概论。Englewood Cliffs,NJ:Prentice Hall,1996。