频率转换函数列表 频率转换 低通到低通s??s/?0 转换函数 [numt,dent]=lp2lp(num,den,w0) [numt,dent]=lp2hp(num,den,w0) 2低通到高通s???0/s ?0(s/?0)?1B?B?[numt,dent]=lp2bp(num,den,w0) 低通到带通s??s/?0s/?02[numt,dent]=lp2bs(num,den,w0) 低通到带阻s???0(s/?0)?1
例:设计一个数字信号处理系统,他的采样频率Fs=100HZ,希望在该系统中这几一个Butterworth型高通型数字滤波器,使其通带中允许的最大衰减RP=0.7db,阻带内的最小衰减Rs=50db,通带上的临界频率为Wp=30HZ,阻带的下限临界频率为Ws=60HZ。 MATLAB源程序设计如下: Fs=100; Wp=30*2*pi; Ws=60*2*pi; rs=50; rp=0.7;
[N,Wc]=buttord(Wp,Ws,rp,rs,'s'); [Z,P,K]=buttap(N); [A,B,C,D]=zp2ss(Z,P,K);
[AT,BT,CT,DT]=lp2hp(A,B,C,D,Wc); [num1,den1]=ss2tf(AT,BT,CT,DT);
%运用双线性变换法把模拟滤波器转化为数字滤波器 [num2,den2]=bilinear(num1,den1,Fs); [H,W]=freqz(num2,den2);
subplot(2,1,1);
plot(W*Fs/(2*pi),abs(H));grid; xlabel('频率/HZ');ylabel('幅值');
%运用冲激响应不变法把模拟滤波器转化为数字滤波器 [num3,den3]=impinvar(num1,den1,Fs); [H,W]=freqz(num3,den3); subplot(2,1,2);
plot(W*Fs/(2*pi),abs(H));grid; xlabel('频率/HZ');ylabel('幅值'); 实验结果如下:
1.51幅值0.5001020频率/HZ30405014.514幅值13.51312.501020频率/HZ304050
五 结束语
滤波是信号处理的基础,滤波运算是信号处理中的基本运算,滤波器的设计也就相应成为数字信号处理的最基本问题之一。信号带有噪声或无用信号,滤波器的作用是将这些干扰成分滤除,也就是让特定频段的信号通过达到对信号筛选的效果。对于设计巴特沃斯数字滤波器来说,冲激响应不变法会发生频率响应的混叠现象,而双线性可以避免这种情况,但会
发生非线性变换的问题,设计者应该根据实际需要来确定运用哪种方法。 参考文献
[1]程佩青.《数字信号处理教程》.清华大学出版社(第三版).2007.2 [2]陈怀琛.《MATLAB及在电子信息类课程中的应用》.电子工业出版社. 2006.1 [3]刘纪文;徐金梧.《IIR数字滤波器的计算机设计方法》.北京科技大学学报.1999/01 [4]张合全;张奎.《基于MATLAB的IIR数字滤波器设计》.科技信息(学术研究).2008/12 [5]刘彬《MATLAB换记下IIR滤波器设计、仿真与验证,电子测量技术》.2011/04 [6]丁玉美;高西全.《数字信号处理【M】》.西安:西安电子科技大学出版社,2000. [7]胡广书; 《数字信号处理:理论、算法与实现『M]》.北京:清华大学出版社,l997. [8]罗军辉.《MATLAB7.0在数字信号处理中的应用【M】》.北京:机械工业出版社,2005.
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于MATLAB的IIR数字滤波器的设计及DSP实现12(2)在线全文阅读。
相关推荐: