1、BZ,AZ= impinvar,2,sqrt(2,1。num1,den1=impinvar(num,den2)双线性变换法bilinear格式一:Zd,Pd,Kd= bilinear(Z,P,K,Fs把模拟滤波器的零极点模型转换成数字滤波器的零极点模型,Fs是采样频率格式二:numd,dend= bilinear(num,den,Fs把模拟滤波器的传递函数模型转换为数字滤波器的传递函数模型。一个三阶的模拟Butterworth模拟低通滤波器的系统函数如下:,试用双线性变换法求出数字Butterworth数字低通滤波器的系统函数。den=1,sqrt(3,sqrt(2num1,den1=bili
2、near(num,den,13) IIR数字滤波器的频率变换实现步骤:1 按一定的规则将数字滤波器的技术指标转换为模拟低通滤波器的技术指标2 根据转换后的技术指标使用滤波器阶数函数,确定滤波器的最小阶数N和截止频率Wc3 利用最小阶数N产生模拟低通原型4 利用截止频率Wc把模拟低通滤波器原型转换为模拟低通、高通、带通、带阻滤波器5 利用冲激响应不变法或双线性变换法把模拟滤波器转换为数字滤波器表一 IIR滤波器阶次估计函数名功能说明buttord计算Butterworth滤波器的阶次及截止频率cheb1ord计算Chebyshev滤波器的阶次cheb2ord计算Chebyshev滤波器的阶次el
3、lipord计算椭圆滤波器的最小阶次表二 模拟低通滤波器原型设计buttapButterworth模拟低通滤波器原型设计cleb1apChebyshev模拟低通滤波器原型设计cheb2apChebyshev模拟低通滤波器原型设计ellipap椭圆模拟低通滤波器原型设计表三 模拟滤波器变换函数lp2bp模拟低通转换为带通lp2bs模拟低通转换为带阻lp2hp模拟低通转换为高通lp2lp改变模拟低通的截止频率三)、数字滤波器的设计1 数字滤波器的设计参数滤波器的4个重要的通带、阻带参数为:通带截止频率Hz) 阻带起始频率Hz)通带内波动dB),即通带内所允许的最大衰减;阻带内最小衰减设采样速率即奈
4、奎斯特速率)为,将上述参数中的频率参数转化为归一化角频率参数:通带截止角频率rad/s) ,; 阻带起始角频率的分子分母系数,MATLAB提供的命令如下:(a巴特沃斯低通滤波器系数计算:b,a=butter(n,Wn,其中b为H(z的分子多项式系数,a为H(z的分母多项式系数(b巴特沃斯高通滤波器系数计算:b,a=butter(n,Wn,High(c巴特沃斯带通滤波器系数计算:b,a=butter(n,W1,W2,其中W1,W2为截止频率,是2元向量,需要注意的是该函数返回的是2*n阶滤波器系数。(d巴特沃斯带阻滤波器系数计算:b,a=butter(ceil(n/2,W1,W2,stop,其中
5、W1,W2为截止频率,是2元向量,需要注意的是该函数返回的也是2*n阶滤波器系数。三、巴特沃斯滤波器设计实例:例题1:采样速率为8000Hz,要求设计一个低通滤波器, =2100Hz, =2500Hz, =3dB, =25dB。1、采样速率为10000Hz,要求设计一个巴特沃斯带阻滤波器, =1000Hz,1500Hz, =1200Hz,1300Hz, =30dB。用直接设计法程序如下:fn=8000。%采样频率 fp=2100。 %通带截止频率fs=2500。 %阻带起始频率Rp=3。 %通带最大衰减Rs=25。%阻带最小衰减Wp=fp/(fn/2。%计算归一化角频率Ws=fs/(fn/2n
6、,Wn=buttord(Wp,Ws,Rp,Rs%计算阶数和截止频率b,a=butter(n,Wn%计算H(z分子、分母多项式系数H,F=freqz(b,a,1000,8000的幅频响应,freqz(b,a,计算点数,采样速率subplot(2,1,1plot(F,20*log10(abs(H %画出幅频特性图xlabel(Frequency(Hz ylabel(Magnitude(dBtitle(低通滤波器axis(0 4000 -30 3grid onpha=angle(H*180/pi。subplot(2,1,2plot(F,phagrid on %画出相频特性图ylabel(phase用
7、双线性变换法wp=2100*2*pi。 %利用ws=2500*2*pi。Fs=8000。Ts=1/Fs。%选择滤波器的最小阶数N,Wn=buttord(wp,ws,Rp,Rs,s%创建butterworth模拟滤波器Z,P,K=buttap(N%把滤波器零极点模型转化为传递函数模型Bap,Aap=zp2tf(Z,P,K%把模拟滤波器原型转换成截至频率为Wn的低通滤波器b,a=lp2lp(Bap,Aap,Wn%用双线性变换法实现模拟滤波器到数字滤波器的转换bz,az=bilinear(b,a,Fs%绘制频率响应曲线H,W=freqz(bz,azplot(W*Fs/(2*pi,abs(Hgrid频
8、率/Hz幅度例题2:模拟原型直接变换法设计数字滤波器:已知四阶归一化低通巴特沃斯模拟滤波器系统函数为,编写MATLAB程序实现从设计3dB截止频率为,设采样周期为T=1,的四阶低通巴特沃斯数字滤波器。步骤一:将设计内容题所给归一化巴特沃斯低通滤波器以3dB截止频率为进行去归一化。步骤二:用双线性变化法将低通模拟滤波器变换为低通数字滤波器3、已知四阶归一化低通巴特沃斯模拟滤波器系统函数为的四阶高通巴特沃斯数字滤波器。设计程序如下:clear。T=1。 fs=1/T。 N=4。wc=pi/2。omegach=2*tan(wc/2/T。%模拟滤波器的截止频率M=1。 N=1,2.6131,3.414
9、2,2.6131,1。h,w=freqs(M,N,512 %模拟滤波器的幅频响应plot(w,20*log10(abs(haxis(0,10,-90,0,grid on。Hz title(归一化模拟低通滤波器Ms,Ns=lp2lp(M,N,omegach %对低通滤波器进行频率变换hs,ws=freqs(Ms,Ns,512plot(ws,20*log10(abs(hsgrid。去归一化模拟低通滤波器Mz,Nz=bilinear(Ms,Ns,1/T %对模拟滤波器双线性变换h1,w1=freqz(Mz,Nz %数字滤波器的幅频响应figureplot(w1/pi,20*log10(abs(h1
10、grid。/幅度(dB数字低通滤波器axis(0,1,-160,0四、实验内容程序:fn=10000。fp=1000,1500。fs=1200,1300。Rs=30。b,a=butter(n,Wn,stop带阻滤波器提示:b,a=butter(N,Wc,2、 采样速率为10000Hz,要求设计一个带通滤波器, =600Hz,1900Hz, =20dB。fs=600,1900。Rs=20。带通滤波器wc=pi/4。 N=1,sqrt(5 %模拟滤波器的幅频响应 %数字滤波器的幅频响应4、设计低通滤波器,把输入信号中的三个信号分离出来。要求:画出滤波前后信号的波形及频谱及低通滤波器的幅频响应。y=
11、filter(b,a,x%对输入的信号进行滤波fn=2000。%采样频率N=2000。%数据点数n=0:N-1。t=0:1/fs:200/fs。%采样时间序列f0=100。%信号频率x=cos(2*pi*f0*t+cos(2*pi*200*t+cos(2*pi*400*tsubplot(3,1,1plot(t,xtsin(2*pi*100*t时域信号Y=fft(x,N%对信号进行FFT变换magY=abs(Y%求得FFT变换后的幅度f=n*fs/N。%频率序列subplot(3,1,2plot(f(1:N/2,magY(1:%画出幅频响应fN=2000%滤波器fp=90。fs=110。H,F=freqz(b,a,1000,2000subplot(3,1,3axis(0,1000,-200,3figure。plot(t,y
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1