基于双线性变换法设计切比雪夫II型IIR数字低通滤波器.docx
《基于双线性变换法设计切比雪夫II型IIR数字低通滤波器.docx》由会员分享,可在线阅读,更多相关《基于双线性变换法设计切比雪夫II型IIR数字低通滤波器.docx(10页珍藏版)》请在冰点文库上搜索。
基于双线性变换法设计切比雪夫II型IIR数字低通滤波器
课程设计
课程设计名称:
基于双线性变换法设计C-
hebyshev-II型IIR数字低通滤波器
专业班级:
电信
学生姓名:
星空
学号:
指导教师:
课程设计时间:
2021年6月30日
数字信号处理专业课程设计任务书
学生
星空
专业班级
电信
学院名称
信息科学与工程学院
题目
基于双线性变换法设计Chebyshev-II型IIR数字低通滤波器
课题性质
工程技术研究
课题来源
自拟
指导教师
同组
主要容
设计一个具有如下性能指标的Chebyshev-II型IIR数字低通滤波器:
=0.25
,
=0.4
,
=0.01,
=0.001;分析最后设计结果性能。
任务要求
1.掌握双线性变换法设计数字滤波器的根本流程;
2.掌握Chebyshev-II型模拟低通原型滤波器;
3.求出所设计滤波器的传输函数;
4.绘制所设计滤波器的幅频特性图。
参考文献
[1]胡广书.数字信号处理—理论、算法与实现[M].:
清华大学,1997.
[2]R.Lyons.UnderstandingDigitalSignalProcessing[M].2nded.PrenticeHallPTR.,2004.
[3]A.V.奥本海姆,R.W.弗andJ.R.巴克.离散时间信号处理[M].第二版.交通大学,2001.
[4]S.K.Mitra.DigitalSignalProcessing:
AComputer-BasedApproach[M].3rded.McGraw-Hill,2005.
审查意见
指导教师签字:
教研室主任签字:
2021年6月23日
说明:
本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计〔论文〕首页
1需求分析
在本次课程设计中,我做的是基于双线性变换法设计Chebyshev-II型IIR数字低通滤波器,看到这个题目,我们很快就能联系到数字信号处理中的IIR数字滤波器的设计,根据以前学习的东西我们知道,要想设计一个数字低通滤波器,我们可以把所给的数字指标转换为模拟参数,通过设计一个模拟低通的滤波器,对设计好的模拟低通滤波器进展数字化就可以得到一个数字低通滤波器。
在本次实验中,我们首先将所给的滤波器数字指标转换为模拟指标,利用Chebyshev-II型函数设计一个Chebyshev-II型低通模拟滤波器,然后对所设计好的Chebvshev-II型低通模拟滤波器进展参数分析,接下来利用双线性变化法将此模拟低通滤波器转变为数字低通滤波器。
2概要设计
图1滤波器设计流程方框图
IIR滤波器的设计包括三个步骤:
①给出所需要的滤波器的技术指标;②设计一个H(z)使其逼近所需要的技术指标:
③实现所设计的H(z),IIR数字滤波器设计的最通用的方法是借助于模拟滤波器的设计方法。
所以IIR数字低通滤波器的设计步骤是:
①按一定规那么将给出的数字滤波器的技术指标转换为模拟低通滤波器的技术指标;②根据转换后的技术指标设计模拟低通滤波器G(s):
③再按一定规那么将G(s)转换成H(z)。
在此过程中,我们用到了很多MATLAB中的函数,如设计切比雪夫低通滤波器的函数afd_chebl、由直接型转换为级联型的函数dir2cas、双线性变换的函数bilinear等。
其中afd_chebl用于实现用模拟指标设计一个低通模拟滤波器,bilinear用于利用双线性变换法将模拟低通滤波器转换为数字低通滤波器。
3运行环境
硬件环境:
PC机,windows2000及其以上,CPU,存,硬盘
软件环境:
Windows7操作系统Matlab软件
4开发工具和编程语言
MATLAB软件,编程语言为DSP设计语言
5详细设计
在本次课程设计中,我们用到了很多关于函数调用的程序,下面我将详细的介绍一下本次课程设计中用到的局部程序。
实验源程序代码:
%归一化低通滤波器的技术指标
clc;
clearall
Ap=0.08;%通带最大衰减由AP=-20lg(1-
)得
As=60;%阻带最小衰减由AP=-20lg(
)得
Wp=0.25*pi;%通带截频
Ws=0.4*pi;%阻带截频
wp=tan(Wp/2);
ws=tan(Ws/2);
ws1=1%归一化
wp1=wp/ws
%用MTALAB算法设计归一化切比雪夫II型低通模拟滤波器
[N,Wn]=cheb2ord(ws1,wp1,Ap,As,'s');%估计滤波器的阶数〔N:
阶数,wn:
阻带截止频率〕
wn1=Wn/pi;
[BT,AT]=cheby2(N,60,Wn,'s');%计算低通滤波器系统函数多项式系数
subplot(2,2,1);
[Z,P,K]=cheby2(N,0.08,Wn,'s');
[H,W]=zp2tf(Z,P,K);
figure
(1);
[P,Q]=freqs(H,W);
freqs(H,W);
figure
(2);
subplot(1,1,1);
fk=0:
12000/512:
12000;wk=2*pi*fk;
Hk=freqs(BT,AT,wk);
plot(fk/1000,20*log10(abs(Hk)));gridon
xlabel('Frequency(Hz)')
ylabel('MagnitudeResponse')
%用双线性变换法将
转换成数字滤波器
,即
[num,den]=bilinear(BT,AT,0.5)%复变量映射s-z
[z,p,k]=tf2zp(num,den);
%显示传输函数
disp('分子系数:
');disp(num);
disp('分母系数:
');disp(den);
%计算增益响应
w=linspace(0,pi,2048);
%w=0:
pi/255:
pi;
h=freqz(num,den,w);
g=20*log10(abs(h)/max(abs(h)));%绘制增益响应
figure;
plot(w/pi,g);gridon;%绘制切比雪夫低通滤波器幅频特性
axis([01-1001]);
xlabel('\omega/\pi');
ylabel('增益/dB');
title('切比雪夫2型低通滤波器幅频响应曲线');
figure;
zplane(z,p);%绘制传输函数零极点
title('传输函数的零极点');
subplot(1,1,1),plot(w/pi,angle(h)/pi);grid;
xlabel('Normalizedfrequency');
ylabel('相位响应');
axis([01-11]);
6调试分析
编写程序有一定难度,起初是不会编写,经查找资料最终一步步编写出来,调试是不断出错,更多的错误是:
函数未定义,函数功能调用错误,好几次因为输入法错误而导致运行失败,不过经过耐心的学习,最终还是调试出了比拟理想的结果。
7测试结果
图二代码运行结果
图三切比雪夫2型模拟低通滤波器幅频曲线和相频曲线
图四切比雪夫2型模拟低通滤波器幅值相应
图五切比雪夫2型数字低通滤波器幅频相应曲线
图六切比雪夫2型数字低通滤波器相位相应曲线
8参考文献
[1]程佩青著,?
数字信号处理教程?
,清华大学,2001
[2]?
数字信号处理实验指导书〔MATLAB版〕?
SanjitK.Mitra著,电子工业,2005年1月
[3]郭仕剑等,?
MATLAB7.x数字信号处理?
,人民邮电,2006年
[4]胡广书,?
数字信号处理理论算法与实现?
,清华大学,2003年
[5]泉,阙大顺编数字信号处理原理与实现,电子工业,2005年6月
[6]金明,王永利编Matlab7.0使用指南,电子工业,2004年11月
[7]薛定宇编基于matlab/simulink的系统仿真技术与应用,清华大学2002年
心得体会
本次课程设计中,我的任务是用双线性变换法设计切比雪夫2型低通数字滤波器,并应用MATLAB软件进展仿真分析。
这是数字信号处理的知识与软件应用相结合的一次训练,我受益匪浅。
通过本次课程设计,我对平时所学的知识有了更深入的了解,对MATLAB的应用也较以前熟练,知识与应用相结合提高了我的学习热情,在实验中,我确实遇到了一些问题,但通过我们的共同努力,最终还是解决了问题,收获了珍贵的经历。
我相信,在下一阶段的学习中,我会取得更优异的成绩。
教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。
教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。