首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

椭圆滤波器的设计

2021-10-22 来源:华拓网
燕 山 大 学 课 程 设 计 说 明 书

目 录

第1章 摘要 ...................................................... 2 第2章 引言 ...................................................... 2 第3章 基本原理 .................................................. 3 第4章 设计过程 .................................................. 4 4.1椭圆滤波器设计结构图 .......................................... 4 4.2设计椭圆数字滤波器的步骤 ...................................... 4 第5章 MATLAB的应用 .............................................. 4 5.1MATLAB语言简介 ................................................ 4 5.2一些函数及指令简介 ............................................ 5 第6章程序和仿真图 ............................................... 7 6.1高通滤波器设计程序 ............................................ 7 6.2 MATLAB信号仿真图 ............................................. 9 第7章 结语 ..................................................... 12 心得体会 ........................................................ 13 参考文献 ........................................................ 14

共15页 第 1 页

燕 山 大 学 课 程 设 计 说 明 书

第一章 摘要

本文叙述了高通椭圆滤波器的基本原理,详细介绍了MATLAB的发展和个别函数的功能以及波器设计在MATLAB上的实现。利用MATLAB滤波器设计函数直接实现椭圆滤波器的设计,介绍了椭圆型滤波器的基本理论和设计思想,给出了基于MATLAB设计高通椭圆型滤波器的具体步骤和利用MATLAB产生一个包含低频、中频、高频分量的连续信号,并实现对信号进行采样。文中还对采样信号进行频谱分析和利用设计的椭圆滤波器对采样信号进行滤波处理,观察滤波后的信号频谱,并对仿真结果进行分析和处理。并且详细介绍了在基于MATLAB设计椭圆滤波器过程中常用到的函数和命令。MATLAB的信号处理工具箱的两个基本组成就是滤波器的设计与实现以及频谱分心。该工具箱提供了丰富而简便的设计、实现滤波器设计方法,使原来繁琐的程序设计简化成函数的调用,特别是滤波器的表达式和滤波器形式之间的相互转换显得十分简便,为滤波器设计和实现开辟了一片开阔的天地。

关键词:数字滤波器;MATLAB;椭圆滤波器

第二章 引言

MATLAB的功能越来越强大,应用范围越来越广泛,如今它几乎覆盖了所有的科学和工程计算领域,如仿真技术、自动控制、数字信号处理、数字图像处理、系统识别、神经网络、小波分析等等。因此,掌握这一工具,具有十分重要的意义。数字滤波器的滤波过程是一个计算过程,实现对信号的运算处理,它将输入信号的序列数字按照预定的要求转换成输出序列。因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为一台计算机。数字滤波器在各种数字信号处理中发挥着十分重要的作用,其设计一直是信号处理领域的重要研究课题。椭圆滤波器(Elliptic filter)又称考尔滤波器(Cauer filter),是在通带和阻带等波纹的一种滤波器。它比切比雪夫方式更进一步地是同时用通带和阻带的起伏为代价来换取过渡带更为陡峭的特性。椭圆滤波器相比其他类型的滤波器,在阶数相同的条件下有着最小的通带和阻带波动。它在通带和阻带的波动相同,这一点区别于在通带和阻带都平坦的巴特沃斯滤波器,以及通带平坦、阻带等波纹或是阻带平坦、通带等波纹的切比雪夫滤波器,其选择性相对三种是最好的。

共15页 第 2 页

燕 山 大 学 课 程 设 计 说 明 书

数字滤波器按单位脉冲响应的性质可分为无限长单位脉冲响应滤波器IIR和有限长单位脉冲响应滤波器FIR两种。其中IIR数字滤波器因具有结果简单、占用存储空间少、运算速度快、较高的计算精度和能够用较低的阶数实现较好的选频特性等特点,得到了广泛应用。

第三章 基本原理

考尔在1931年提出了采样有限零点设计的滤波器,能更好地逼近理想的高通滤波器的特性。由于这种方法在确定零点的位置时与椭圆函数的许多特性有关,所以称之为椭圆高通滤波器。幅值响应在通带和阻带内都是等波纹的,对于给定的阶数和给定的波纹要求,椭圆滤波器能获得较其它滤波器为窄的过渡带宽,就这点而言,椭圆滤波器是最优的,其振幅平方函数为

Ha(j)21212R(N/p)

其中RN(x)是雅可比(Jacobi) 椭圆函数,ε为与通带衰减有关的参数。 特点:

1、椭圆低通滤波器是一种零、极点型滤波器,它在有限频率范围内存在传输零点和极点。

2、椭圆低通滤波器的通带和阻带都具有等波纹特性,因此通带,阻带逼近特性良好。

3、对于同样的性能要求,它比其它两种滤波器所需用的阶数都低,而且它的过渡带比较窄。

共15页 第 3 页

燕 山 大 学 课 程 设 计 说 明 书

第四章 设计过程

4.1椭圆滤波器设计结构图

椭圆滤波器设计结构图如图所示:

连续混合 信号 采样 (100HZ)

图4.1结构框图

高通滤波器 输出 4.2设计椭圆数字滤波器的步骤

1.确定数字滤波器的性能指标:

p、

s、p、s。

2. 将数字滤波器的性能指标转化成相应模拟滤波器的性能指标。 3.设计满足指标要求的模拟滤波器Ha(s)。 4.通过变换将模拟滤波器转换成数字滤波器 4.数字滤波器的MATLAB实现和频谱分析

第5章 MATLAB的应用

5.1 MATLAB语言简介

MATlAB是在20世纪80年代初期,由美国的MathWorks软件开发公司正式推出的一种数学工具软件。它以矩阵运算为基础,把计算、可视化、程序设计有机地融合到了一个简单易学的交互式工作环境中,其出色的数值计算能力和强大的图形处理功能得到了广大科研人员和工程技术人员的垂青。它拥有功能全面的函数库,他把大量的函数封装起来,让用户脱离了繁琐复杂的程序设计过程,只需要将精力集中到模型的建立和工作上即可,大大提高了工作效率。利用MATLAB可以实现科学计算、符号运算、算法研究、数学建模和仿真、数据分析和可视化、科学工程绘图以及图形用户界面设计等强大功能。

共15页 第 4 页

燕 山 大 学 课 程 设 计 说 明 书

更重要的是,MATLAB提供了图形用户界面(GUI)设计功能,用户可以自行设计别具风格的人机交互界面。此外,MATLAB提供了与C语言或Fortran语言的交互操作,是用户能通过程序接口很方便地进行程序间的调用和转换。

5.2一些函数及指令简介

MATLAB的信号处理工具箱提供了设计椭圆滤波器的函数:ellipord函数、ellip函数、filter函数、freqz函数、fft函数和abs函数。

1. ellipord函数的功能是求滤波器的最小阶数,其调用方式为: [n,wp]=ellipord(wp,ws,rp,rs) n-椭圆数字滤波器最小阶数; wp-椭圆滤波器通带截止角频率; ws-椭圆滤波器阻带起始角频率; rp-通带最大衰减量也即通带波纹(dB); rs-阻带最小衰减量(dB);

这里wp、ws都是归一化频率,即0wp(或ws)1,1对应弧度。 2. ellip函数的功能是用来设计椭圆滤波器,其调用方式为: (1)[b,a]=ellip(n,rp,rs,wp) rp用来指定通带内波纹的最大衰减; rs用来指定阻带内波纹的最小衰减;

在这里,wp的取值范围是(0.0,1.0),其中1对应于0.5Fs,Fs为采样频率。 (2)[b,a]=ellip(n,rp,rs,wp,'high'):设计高通椭圆滤波器。上述返回的向量b和a的维数都是n+1,而不是n。

filter函数功能:利用IIR滤波器和FIR滤波器对数据进行滤波,其调用方式为:

共15页 第 5 页

燕 山 大 学 课 程 设 计 说 明 书

y=filter(b,a,x):计算输入信号X的滤波输出,向量b和a分别是所采用的滤波器的分子系数向量和滤波器的分母系数向量。

[y,zf]=filter(b,a,x,zi):参数zi指定滤波器的初始条件值,其大小为zi=max(length(a),length(b))-1。

y=filter(b,a,x,[],dim)或y=filter(b,a,x,zi,dim):参数dim指定滤波的维数。 filter采用数字滤波器对数据进行滤波,其实现采用移位直接Ⅱ型结构,因而适用于IIR和FIR滤波器。滤波器的系统函数为 b0b1z1b2z2b3z3bmzmH(Z)123n1azazazaz123n

即滤波器系数a=[a0 a1 a2 ...an],b=[b0 b1 ...bm],输入序列矢量为x。这里,标准形式为a0=1,如果输入矢量a时,a0≠1,则MATLAB将自动进行归一化系数的操作;如果a0=0,则给出出错信息。

4. freqz函数功能:求解数字滤波器频率响应,其调用方式为:

(1)[h,w]=freqz(b,a,n):返回数字滤波器的n点复频率响应,输入参数b和a分别是滤波器系数的分子和分母向量;输出参数h是复频率响应,w是频率点。输入参数n的默认值为512。

(2)h=freqz(b,a,w):计算由向量w(单位为rad/sample,范围为[0,])指定的频率点的复频率响应。

(3)[h,f]=freqz(b,a,n,Fs):同时输出实际频率点。用于对H(ejω)在[0,Fs/2]上等间隔采样n点,采样点频率及相应频响值分别记录在f 和h中。由用户指定FS(以HZ为单位)值。

(4)h=freqz(b,a,f,Fs):计算由向量f指定的频率点的复频率响应。 5. Abs函数 调用方式为:

Y=abs(x):计算x各元素的绝对值。当x为一个复数的时候,则计算x的复数模。

共15页 第 6 页

燕 山 大 学 课 程 设 计 说 明 书

第6章 程序和仿真图

6.1高通滤波器设计程序

%连续信号的产生及采样 clear Fs=100; t=(1:100)/Fs; s1=sin(2*pi*t*5); s2=sin(2*pi*t*15); s3=sin(2*pi*t*30); s=s1+s2+s3; figure(1); plot(t,s) xlabel('时间(s)') ylabel('幅值') grid;

%椭圆高通滤波器的设计

[b,a]=ellip(4,0.1,40,30*2/Fs,'high'); [h,w]=freqz(b,a,512); figure(2);

plot(w*Fs/(2*pi),abs(h));

xlabel('频率(Hz)');ylabel('频率响应图'); grid;

%对滤波后的信号进行分析和变换 sf=filter(b,a,s);

共15页 第 7 页

燕 山 大 学 课 程 设 计 说 明 书

figure(3); plot(t,sf); xlabel('时间 (s)'); ylabel('幅值'); axis([0 1 -1 1]); S=fft(s,512); SF=fft(sf,512); w=(0:255)/256*(Fs/2); figure(4); Subplot(2,1,1) plot(w,abs(S(1:256))); grid;

Subplot(2,1,2)

plot(w,abs( SF(1:256))); xlabel('频率(Hz)'); ylabel('傅立叶变换图'); grid;

共15页 第 8 页

燕 山 大 学 课 程 设 计 说 明 书

6.2 MATLAB信号仿真图

1.产生连续信号,包含低频,中频,高频分量的仿真图,如下图所示:

图6.1 连续信号时域图

该图显示出输入的连续信号幅值与时间的关系,其中包含低频,中频,高频分量,从而共采样用。

共15页 第 9 页

燕 山 大 学 课 程 设 计 说 明 书

2.设计椭圆高通滤波器所得幅频特性图,如图所示:

图6.2高通滤波器幅频特性图

如上图所示,所设计的高通滤波器当频率高于截止频率时,可以通过,低于截止频率则不能通过,并且有衰减的部分,符合设计要求。

共15页 第 10 页

燕 山 大 学 课 程 设 计 说 明 书

3.连续信号经过滤波器滤波之后输出的波形如下图所示:

图6.3滤波后输出信号时域图

该图说明将包含低频、中频、高频分量的连续信号中低于截止频率的信号滤掉之后的幅值与时间的关系。

共15页 第 11 页

燕 山 大 学 课 程 设 计 说 明 书

4.滤波前后频率幅值关系对比如下图所示:

图6.4滤波前后频域图对比图

该图鲜明的显示出了滤波前后的变化,低频呗滤掉,只保留了高频信号,几乎没有衰减,达到了设计的要求.

第7章 结语

共15页 第 12 页

燕 山 大 学 课 程 设 计 说 明 书

数字滤波器的应用十分广泛,利用Matlab语言,很容易地设计地设计出数字椭圆高通滤波器,数字椭圆高通滤波器可以用较少的阶数获得很高的选择特性,在相位要求不敏感的场合,如语音信号处理等,适合用数字椭圆滤波器。在设计过程中可以对比滤波器的特性,随时更改参数,已达到滤波器设计的最优。

心得体会

通过一周的课程设计,让我感受最深的就是学习是一种乐趣。在这次课程设计中,我们接触了一种新鲜的的语言,MATLAB,其功能之强大,激发了我们去学子它,进而掌握它的兴趣。从拿到任务书,开始充分利用网络及图书馆等资源,查询资料,了解了滤波器的功能,分类。在之前专业课理论知识的基础上,我们又从模糊到熟悉逐渐了解了什么是椭圆滤波器。然后面对我们的首要任务,我们的想法,我们的思路是什么?顺着这个方向开始我们的工作,因此我觉得,目标和计划都是很重要的,我们要时刻保持大脑的清醒。在整个过程中,我发现自己的理论知识的不足,同时所学的知识掌握不牢固,就是通过这次课程设计,不仅拓宽了我的知识面,还巩固和夯实了所学的理论知识,同时纠正了一些知识点上的错误认识和理解。其次,有一些问题,当我们一个人面对的时候可能怎么都想不明白,可是当我们跟其他人一起探讨时,好多时候,问题都迎刃而解,可见团队合作的重要性,而且我们要养成谨慎,认真,踏实,有耐心,坚持的作风,尤其是要亲自动手去做,没有付出是不会有回报的。回顾这一周的课设,我学会了MATLAB的一些功能的使用,但只是一小部分而已,我此后将继续研究这么一个强大的工具。对于仿真软件的使用,非常有成就感,极大的激发了我们对新鲜事物学习的兴趣,从而以积极的心态去面对这次课程设计。最后,我通过这次课程设计,使我对高通滤波器有了更深刻的认识。

总之,在这一周的时间,一直是有条不紊的进行着,到最后看到我们的努力得到收获的时候,我们满怀欣慰。在这次课设中,我们看到了自己的进步,看到了学院领导和老师们对工作的认真负责和对学生的耐心和热情,所以在以后的课程设计中,我将满怀

共15页 第 13 页

燕 山 大 学 课 程 设 计 说 明 书

激情,更加努力去面对。

参考文献

[1] 程佩青.数字信号处理(第2版)清华大学出版社 2003

[2] 薛年喜 MATLAB在数字信号处理中的应用 清华大学出版社 2007 [3] 罗建军 杨琦.MATLAB教程 电子工业出版社 2007

[4] 林雪松 周婧 林德新 MATLAB 7.0应用集锦 机械工业出版社 2006 [5] 飞思科技产品研发中心 数字信号处理实践方法 电子工业出版社 2003

共15页 第 14 页

燕 山 大 学 课 程 设 计 说 明 书

燕山大学课程设计评审意见表

指导教师评语: ①该生学习态度 (认真 较认真 不认真) ②该生迟到、早退现象 (有 无) ③该生依赖他人进行设计情况 (有 无) 平时成绩: 指导教师签字: 2011 年 7 月 9 日 图面及其它成绩: 答辩小组评语: ①设计巧妙,实现设计要求,并有所创新。 ②设计合理,实现设计要求。 ③实现了大部分设计要求。 ④没有完成设计要求,或者只实现了一小部分的设计要求。 答辩成绩: 组长签字: 2011 年 7 月 9 日 课程设计综合成绩: 共15页 第 15 页

燕 山 大 学 课 程 设 计 说 明 书

答辩小组成员签字: 2011年 7 月 9 日

共15页 第 16 页

因篇幅问题不能全部显示,请点此查看更多更全内容