数字滤波器实现概论.docx
- 文档编号:7104463
- 上传时间:2023-01-17
- 格式:DOCX
- 页数:17
- 大小:58.47KB
数字滤波器实现概论.docx
《数字滤波器实现概论.docx》由会员分享,可在线阅读,更多相关《数字滤波器实现概论.docx(17页珍藏版)》请在冰豆网上搜索。
数字滤波器实现概论数字滤波器实现概论实验八数字滤波器实现实验室名称:
信息学院2204实验时间:
2015年11月26日姓名一、实验目的1、通过逼近给定的频率响应指标而得到数字传输函数G(z),并通过软件实现。
2、利用MATLAB来研究冲激响应或有限冲激响应数字滤波器结构的软件实现。
3、并联型实现、并联II型实现、直接II型仿真滤波器的验证仿真。
二、实验内容Q8.1程序P8.1设计了什么类型的滤波器?
其指标是什么?
滤波器的阶数是多少?
为了检验仿真,需要计算多少个冲激响应样本?
仿真是正确的吗?
Q8.2用转置的直接II型仿真滤波器,修改程序P8.1并运行修改后的程序。
仿真是正确的吗?
Q8.3生成Q8.1中产生的传输函数的一个级联实现,并编写一个程序来仿真它。
其中每个单独的部分用一个直接型实现。
验证仿真。
Q8.5生成Q8.1中传输函数的一个并联型实现,并编写一个程序来仿真它。
每一个单独的部分用直接型实现。
验证仿真。
Q8.6生成Q8.1中传输函数的一个并联II型实现,并编写一个程序来仿真它。
每一个单独的部分用直接型实现。
验证仿真。
Q8.7运行程序P8.2并产生被仿真的级联格型结构的传输函数。
该传输函数与式(8.35)中的相同吗?
Q8.9程序设计了什么类型的滤波器?
其指标是什么?
滤波器的阶数是多少?
形成输入的正弦序列的频率是多少?
Q8.10运行P8.3并产生两个图形。
哪种输入成分会在滤波器输出出现?
为什么输出序列的开始部分不是一种理想的正弦曲线?
修改P8.3,以便纸过滤序列X2n。
产生的输出序列和预料的是一样的吗?
证明你的答案。
Q8.14程序P8.4设计了什么类型的滤波器?
其指标是什么?
滤波器的阶数是多少?
为了验证仿真,需要多少个冲激响应样本?
仿真是正确的吗?
Q8.15修改程序P8.4,用直接II型仿真该滤波器,运行修改后的程序。
仿真是正确的吗?
Q8.16使用程序P8.4生成在习题Q8.4中产生的传输函数的一个级联实现,写出对其仿真的一个程序。
其中每一个部分以直接II型实现。
验证仿真。
三、实验器材及软件1.微型计算机1台2.MATLAB7.0软件四、实验原理1、可调数字滤波器的设计基础是复变量的z谱变换,通过z替换为F(z),将具有给定截止频率的数字滤波器的实现调整为具有不同截止频率的另一个实现。
2、利用全通结构代替每一个延时块,可能会导致实现Gnew(z)时具有不能被实现的无延时环结构。
3、设计可调有限冲激响应滤波器的一种简单方法是基于加窗的傅里叶级数方法。
4、通常情况下,复数乘法和复数加法总数量是N(log2N),通使用Wn的对称性质,可进一步简化计算得复杂性。
五、实验步骤1、打开计算机中的MATLAB2、在MATLAB中新建一个M-file,在其中输入实验要求的相关代码3、输入代码后调试代码,代码无误后可以得到相应的实验结果4、观察实验结果回答相关问题5、记录实验结果,将图形等截图粘贴,完成实验报告六、实验记录(数据、图表、波形、程序等)Q8.1%ProgramP8_1clearall;clc;Wp=0.40.5;Ws=0.10.8;Rp=1;Rs=30;N1,Wn1=buttord(Wp,Ws,Rp,Rs)num,den=butter(N1,Wn1);disp(分子系数是);disp(num);disp(分母系数是);disp(den);impres=direct2(num,den,1zeros(1,4*N1);p,d=strucver(impres,2*N1);disp(实际分子系数是);disp(p);disp(实际分母系数是);disp(d);运行结果:
N1=2Wn1=0.36080.5421分子系数是0.05710-0.114300.0571分母系数是1.0000-0.50991.2862-0.33500.4479实际分子系数是0.0571-0.0000-0.11430.00000.0571实际分母系数是1.0000-0.50991.2862-0.33500.4479Q8.2%ProgramP8_1clearall;clc;Wp=0.40.5;Ws=0.10.8;Rp=1;Rs=30;N1,Wn1=buttord(Wp,Ws,Rp,Rs)num,den=butter(N1,Wn1);disp(分子系数是);disp(num);disp(分母系数是);disp(den);impres=filter(num,den,1zeros(1,4*N1);p,d=strucver(impres,2*N1);disp(实际分子系数是);disp(p);disp(实际分母系数是);disp(d);运行结果N1=2Wn1=0.36080.5421分子系数是0.05710-0.114300.0571分母系数是1.0000-0.50991.2862-0.33500.4479实际分子系数是0.05710.0000-0.114300.0571实际分母系数是1.0000-0.50991.2862-0.33500.4479Q8.3%ProgramP8clearall;clc;Wp=0.40.5;Ws=0.10.8;Rp=1;Rs=30;N,Wn=buttord(Wp,Ws,Rp,Rs)num,den=butter(N,Wn);z,p,k=tf2zp(num,den)sos=zp2sos(z,p,k)num1=sos(1,1)sos(1,2)sos(1,3);den1=sos(1,4)sos(1,5)sos(1,6);disp(第一级的分子系数是);disp(num1);disp(第一级的分母系数是);disp(den1);num2=sos(2,1)sos(2,2)sos(2,3);den2=sos(2,4)sos(2,5)sos(2,6);disp(第二级的分子系数是);disp(num2);disp(第二级的分母系数是);disp(den2);impres1=direct2(num1,den1,1zeros(1,2*N);p1,d1=strucver(impres1,N);disp(第一级的实际分子系数是);disp(p1);disp(第一级的实际分母系数是);disp(d1);impres2=direct2(num2,den2,1zeros(1,2*N);p2,d2=strucver(impres2,N);disp(第二级的实际分子系数是);disp(p2);disp(第二级的实际分母系数是);disp(d2);运行结果N=2Wn=0.36080.5421sos=0.05710.11430.05711.00000.08770.66011.0000-2.00001.00001.0000-0.59760.6785第一级的分子系数是0.05710.11430.0571第一级的分母系数是1.00000.08770.6601第二级的分子系数是1.0000-2.00001.0000第二级的分母系数是1.0000-0.59760.6785第一级的实际分子系数是0.05710.11430.0571第一级的实际分母系数是1.00000.08770.6601第二级的实际分子系数是1.0000-2.00001.0000第二级的实际分母系数是1.0000-0.59760.6785Q8.5clearall;clc;Wp=0.40.5;Ws=0.10.8;Rp=1;Rs=30;N,Wn=buttord(Wp,Ws,Rp,Rs)num,den=butter(N,Wn);r1,p1,k1=residuez(num,den);disp(并联I型)disp(留数是);disp(r1);disp(极点是);disp(p1);disp(常数);disp(k1);numI1=2*real(r1
(1)-2*(real(r1
(1)*real(p1
(1)+imag(r1
(1)*imag(p1
(1);denI1=1-2*real(p1
(1)real(p1
(1)2+imag(p1
(1)2;numI2=2*real(r1(3)-2*(real(r1(3)*real(p1(3)+imag(r1(3)*imag(p1(3);denI2=1-2*real(p1(3)real(p1(3)2+imag(p1(3)2;disp(并联I型的常数是);disp(k1);disp(并联I型的第一级的分子系数是);disp(numI1);disp(并联I型的第一级的分母系数是);disp(denI1);disp(并联I型的第二级的分子系数是);disp(numI2);disp(并联I型的第二级的分母系数是);disp(denI2);impresI1=direct2(numI1,denI1,1zeros(1,2*N);pI1,dI1=strucver(impresI1,N);disp(并联I型的第一级的实际分子系数是);disp(pI1);disp(并联I型的第一级的实际分母系数是);disp(dI1);impresI2=direct2(numI2,denI2,1zeros(1,2*N);pI2,dI2=strucver(impresI2,N);disp(并联I型的第二级的实际分子系数是);disp(pI2);disp(并联I型的第二级的实际分母系数是);disp(dI2);运行结果如下N=2Wn=0.36080.5421并联I型留数是-0.0235+0.1978i-0.0235-0.1978i-0.0117-0.2132i-0.0117+0.2132i极点是0.2988+0.7676i0.2988-0.7676i-0.0438+0.8113i-0.0438-0.8113i常数0.1276并联I型的常数是0.1276并联I型的第一级的分子系数是-0.0470-0.2897并联I型的第一级的分母系数是1.0000-0.59760.6785并联I型的第二级的分子系数是-0.02340.3448并联I型的第二级的分母系数是1.00000.08770.6601并联I型的第一级的实际分子系数是-0.0470-0.2897-0.0000并联I型的第一级的实际分母系数是1.0000-0.59760.6785并联I型的第二级的实际分子系数是-0.02340.34480.0000并联I型的第二级的实际分母系数是1.00000.08770.6601Q8.6%ProgramP8clearall;clc;Wp=0.40.5;Ws=0.10.8;Rp=1;Rs=30;N,Wn=buttord(Wp,Ws,Rp,Rs)num,den=butter(N,Wn);r2,p2,k2=residue(num,den);disp(并联II型)disp(留数是);disp(r2);disp(极点是);disp(p2);disp(常数是);disp(k2);numII1=02*real(r2
(1)-2*(real(r2
(1)*real(p2
(1)+imag(r2
(1)*imag(p2
(1);denII1=1-2*real(p2
(1)real(p2
(1)2+imag(p2
(1)2;numII2=02*real(r2(3)-2*(real(r2(3)*real(p2(3)+imag(r2(3)*imag(p2(3);denII2=1-2*real(p2(3)real(p2(3)2+imag(p2(3)2;disp(并联II型的常数是);disp(k2);disp(并联II型的第一级的分子系数是);disp(numII1);disp(并联II型的第一级的分母系数是);disp(denII1);disp(并联II型的第二级的分子系数是);disp(numII2);disp(并联II型的第二级的分母系数是);disp(denII2);impresII1=direct2(numII1,denII1,1zeros(1,2*N);pII1,dII1=strucver(impresII1,N);disp(并联II型的第一级的实际分子系数是);disp(pII1);disp(并联II型的第一级的实际分母系数是);disp(dII1);impresII2=direct2(numII2,denII2,1zeros(1,2*N);pII2,dII2=strucver(impresII2,N);disp(并联II型的第二级的实际分子系数是);disp(pII2);disp(并联II型的第二级的实际分母系数是);disp(dII2);运行结果N=2Wn=0.36080.5421并联II型留数是-0.1589+0.0411i-0.1589-0.0411i0.1734-0.0002i0.1734+0.0002i极点是0.2988+0.7676i0.2988-0.7676i-0.0438+0.8113i-0.0438-0.8113i常数是0.0571并联II型的常数是0.0571并联II型的第一级的分子系数是0-0.31780.0319并联II型的第一级的分母系数是1.0000-0.59760.6785并联II型的第二级的分子系数是00.34690.0155并联II型的第二级的分母系数是1.00000.08770.6601并联II型的第一级的实际分子系数是0-0.31780.0319并联II型的第一级的实际分母系数是1.0000-0.59760.6785并联II型的第二级的实际分子系数是00.34690.0155并联II型的第二级的实际分母系数是1.00000.08770.6601Q8.7%ProgramP8_2clearall;clc;x1=1zeros(1,6);%产生单位冲激序列q3old=0;q2old=0;q1old=0;%初始条件%输入滤波器系数D1=0.357377;D2=0.27083;D3=-0.2;alpha1=0.02;alpha2=0.352;alpha3=0.276533;alpha4=-0.19016;%计算前七个冲激响应样本forn=1:
7w3=x1(n)-D3*q3old;w2=w3-D2*q2old;q1new=w2-D1*q1old;q2new=D1*q1new+q1old;q3new=D2*w2+q2old;y1=D3*w3+q3old;yo(n)=alpha1*y1+alpha2*q3new+alpha3*q2new+alpha4*q1new;q3old=q3new;q2old=q2new;q1old=q1new;endnum,den=strucver(yo,3);disp(分子系数);disp(num);disp(分母系数);disp(den);运行结果分子系数-0.00000.44000.36000.0200分母系数1.00000.40000.1800-0.2000Q8.9%ProgramP8_3%一个无限冲激响应滤波器滤波的说明clearall;clc;clf;%产生输入序列k=0:
50;w2=0.7*pi;w1=0.2*pi;x1=1.5*cos(w1*k);x2=2*cos(w2*k);x=x1+x2;%确定滤波器传输函数N,Wn=ellipord(0.25,0.55,0.5,50)num,den=ellip(N,0.5,50,Wn);%产生输出序列y=filter(num,den,x);%画出输入及输出序列subplot(2,2,1);stem(k,x1);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输入序列中的低频成分);subplot(2,2,2);stem(k,x2);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输入序列中的高频成分);subplot(2,2,3);stem(k,x);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输入序列);subplot(2,2,4);stem(k,y);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输出序列);运行结果N=4Wn=0.2500%ProgramP8_3%一个无限冲激响应滤波器滤波的说明clearall;clc;clf;%产生输入序列clearall;clc;clf;k=0:
50;w2=0.7*pi;w1=0.2*pi;x1=1.5*cos(w1*k);x2=2*cos(w2*k);x=x1+x2;%确定滤波器传输函数N,Wn=ellipord(0.55,0.25,0.5,50)num,den=ellip(N,0.5,50,Wn,high);%产生输出序列y=filter(num,den,x);%画出输入及输出序列subplot(2,2,1);stem(k,x1);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输入序列中的低频成分);subplot(2,2,2);stem(k,x2);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输入序列中的高频成分);subplot(2,2,3);stem(k,x);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输入序列);subplot(2,2,4);stem(k,y);grid;axis(050-44);xlabel(时间序列n);ylabel(振幅);title(输出序列);运行结果N=4Wn=0.5500Q8.14%ProgramP8_4clearall;clc;num=remez(9,00.30.51,1100);disp(滤波器系数是);disp(num);impres=filter(num,1,1zeros(1,9);disp(滤波器实际系数是);disp(impres);程序运行结果滤波器系数是-0.0209-0.09260.00640.19320.37210.37210.19320.0064-0.0926-0.0209滤波器实际系数是-0.0209-0.09260.00640.19320.37210.37210.19320.0064-0.0926-0.0209Q8.15%ProgramP8clearall;clc;num=remez(9,00.30.51,1100);disp(滤波器系数是);disp(num);impres=direct2(num,1,1zeros(1,9);disp(滤波器实际系数是);disp(impres);运行结果滤波器系数是-0.0209-0.09260.00640.19320.37210.37210.19320.0064-0.0926-0.0209滤波器实际系数是-0.0209-0.09260.00640.19320.37210.37210.19320.0064-0.0926-0.0209Q8.16%ProgramP8clearall;clc;num=remez(9,00.30.51,1100);den=1zeros(1,length(num)-1);z,p,k=tf2zp(num,den);sos=zp2sos(z,p,k)%size(sos,1)为sos的行数,代表级数%size(sos,2)为sos的列数N=length(num)/size(sos,1)fori=1:
size(sos,1)num1=sos(i,1)sos(i,2)sos(i,3);disp(第,num2str(i),级滤波器的系数是);disp(num1);impres=direct2(num,1,1zeros(1,N);disp(第,num2str(i),级滤波器的实际系数是);disp(impres);end运行结果sos=-0.0209-0.087001.0000001.0000-0.9623-1.96231.0000001.0000-0.2695-0.12231.0000001.00001.29701.00001.0000001.00000.20021.00001.000000第1级滤波器的系数是-0.0209-0.08700第1级滤波器的实际系数是-0.0209-0.08700第2级滤波器的系数是1.0000-0.9623-1.9623第2级滤波器的实际系数是1.0000-0.9623-1.9623第3级滤波器的系数是1.0000-0.2695-0.1223第3级滤波器的实际系数是1.0000-0.2695-0.1223第4级滤波器的系数是1.00001.29701.0000第4级滤波器的实际系数是1.00001.29701.0000第5级滤波器的系数是1.00000.20021.0000第5级滤波器的实际系数是1.00000.20021.0000七、实验思考题及解答八、实验结果分析与总结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字滤波器 实现 概论