实验四___数字滤波器设计及应用综合实验学案.doc

实验四___数字滤波器设计及应用综合实验学案.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 数字滤波器设计及应用综合实验 班级:电子121班 姓名:李金恩 学号:122114 实验目的 1.熟悉IIR数字滤波器的设计原理及方法。 2.熟悉FIR数字滤波器的设计原理及方法。 3. 掌握利用Matlab实现数字滤波器的方法 4. 掌握利用数字滤波器进行信号处理的方法。 5. 了解基于Simulink的动态仿真实现信号滤波的基本方法。 实验内容及要求 综合运用数字滤波器设计的相关知识,根据给定设计方法要求,用脉冲响应不变法和双线性变换法设计IIR数字滤波器;利用窗函数设计法设计FIR数字滤波器。根据实际信号的频谱特性,分析、确定滤波器设计技术指标,实现对信号的滤波。 1.IIR数字滤波器设计 (1)用脉冲响应不变法设计巴特沃斯数字滤波器。 (2)用双线性变换法设计切比雪夫数字滤波器。 (3)用双线性变换法设计巴特沃斯数字滤波器。并将直接型结构转换成级联型结构。 实验所需程序及函数 %butterworth低通滤波器原型设计函数,要求Ws﹥Wp﹥0,As﹥Rp﹥0。 function [b,a]=afd_butt(Wp,Ws,Rp,As); N=ceil((log10((10^(Rp/10)-1)/(10^(As/10)-1)))/(2*log10(Wp/Ws))); %上条语句为求滤波器阶数,函数ceil 朝正无穷大方向取整; fprintf(\n Butterworth Filter Order=%2.0f\n,N); OmegaC=Wp/((10^(Rp/10)-1)^(1/(2*N))); %求对应于N的3db截止频率; [b,a]=u_buttap(N,OmegaC); %非归一化Butterworth模拟低通滤波器原形设计函数 %得到的b,a分别为传输函数分子、分母多项式系数; function [b,a]=u_buttap(N,Omegac); [z,p,k]=buttap(N); %归一化巴特沃思模拟低通滤波器原形 %传输函数用极点形式表示 p=p*Omegac; %将代入上式,相当于分子乘以,极点乘以 k=k*Omegac^N; B=real(poly(z)); %poly为构造具有指定根的多项式 real为求实部 b=k*B; a=real(poly(p)); %利用脉冲响应不变法从模拟到数字滤波器变换函数 function [b,a]=imp_invr(c,d,T) [R,p,k]=residue(c,d); %部分分式展开 p=exp(p*T); %从模拟到数字极点对应关系,部分分式系数相同 [b,a]=residuez(R,p,k); %将部分分式的形式变换成多项式之比的形式 b=real(b); %求出数字滤波器系数 a=real(a); %非归一化切比雪夫I型模拟低通滤波器原型设计 function [b,a]=u_chb1ap(N,Rp,Omegac) [z,p,k]=cheb1ap(N,Rp); %归一化切比雪夫1型模拟低通滤波器原形 a=real(poly(p)); %以下步骤实际上与求巴特沃思滤波器的原理 aNn=a(N+1); %一样,只是所用方法稍有不同。 p=p*Omegac; a=real(poly(p)); aNu=a(N+1); k=k*aNu/aNn; B=real(poly(z)); b=k*B; %频率响应函数freqz的修正,此函数可获得滤波器的幅值响应、相位响应及群延迟响应 function [db,mag,pha,w]=freqz_m(b,a); [H,w]=freqz(b,a,1000,whole); %在0-2*pi之间选取N个点计算频率响应 H=(H(1:501)); %频率响应 w=(w(1:501)); %频率 mag=abs(H); %响应幅度 db=20*log10((mag+eps)/max(mag)); %增益 pha=angle(H); %相位 %变直接形式为级联形式 function [b0,B,A]=dir2cas(b,a) b0=b(1);b=b/b0;a0=a(1);a=a/a0;b0=b0/a0; %以上步骤求出系数 M=length(b); N=length(a)

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档