滤波器设计与信号滤波课程设计报告_第1页
滤波器设计与信号滤波课程设计报告_第2页
滤波器设计与信号滤波课程设计报告_第3页
滤波器设计与信号滤波课程设计报告_第4页
滤波器设计与信号滤波课程设计报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、中北大学信息与通信工程学院课程设计报告 题目:滤波器设计与信号滤波专 业: 电子信息科学与技术 班 级: 12050142 姓名: 周先涛 时 间:2015.06.282015.07.10 指导教师: 王小燕 完成日期:2015年07月 10日 18课 程 设 计 任 务 书1设计目的:通过本课程设计, 主要训练和培养学生综合应用所学过的信号及信息处理等课程的相关知识,独立完成信号仿真以及信号处理的能力。包括:查阅资料、合理性的设计、分析和解决实际问题的能力,数学仿真软件Matlab和C语言程序设计的学习与应用,培养规范化书写说明书的能力。2设计内容和要求(包括原始数据、技术参数、条件、设计要

2、求等):设计题目:设有一个信号,包含两个频率的正弦分量:F1=5Hz,F2=50Hz。现受到一个频率为40Hz的信号干扰,设计一个数字滤波器,要求滤掉干扰噪声。设计要求:3设计工作任务及工作量的要求包括课程设计计算说明书(论文)、图纸、实物样品等:1 熟悉有关的滤波器设计理论知识,选择合适的滤波器技术指标和类型设计滤波器,得到滤波器参数。2 实现信号产生和滤波等有关Matlab函数。3 写好总结报告,写出基本原理,有关程序,得到的图表,结果分析,总结。 课 程 设 计 任 务 书4主要参考文献:l 要求按国标GB 771487文后参考文献著录规则书写,例:1 傅承义,陈运泰,祁贵中.地球物理学

3、基础.北京:科学出版社,1985 5设计成果形式及要求:毕业设计说明书仿真结果6工作计划及进度:2015年7月1日 7月4日 了解设计题目及熟悉资料; 7月5日 7月6日 确定各题目要求计算相关参数; 7月7日 7月7 日 结合各题目确定具体设计方案; 7月8日 7月9 日 结合要求具体设计并仿真、整理报告; 7月10日 答辩。系主任审查意见: 签字: 年 月 日 目录 1 设计背景 32 matlab33 滤波器性能分析和比较.94 滤波器的程序及参数设定. 155 滤波器处理结果及分析186 实验总结与体会207 主要参考文献 .201.设计背景 滤波器是一种能使有用信号顺利通过而同时对无

4、用频率信号进行抑制(或衰减)的电子装置。随着大功率电子器件的出现,谐波干扰已经是工业生产和科研事业发展的巨大的障碍,应运而生的滤波器产品也就派上用场,滤波器的发展前景是不可小视的,可以说凡有电子产品的地方必有滤波器产品。在近代电信设备和各类控制系统中,滤波器应用极为广泛,在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣及整个系统的性能。所以,对滤波器的研究和生产历来为各国所重视。 工程上常用滤波器来做信号处理、数据传送和抑制干扰等。以往主要采用无源元件R、L和C组成模拟滤波器,六十年代以来, R、C组成的有源滤波器,具有不用电感、体积小、重量轻等优点,随

5、着微电子学的发展,基于放大器和R、C构成的有源滤波器应用日益广泛。人们已经可以把一些电阻和电容与运放集成在一块芯片上构成通用有源滤波器。这种芯片集成度高,片内集成了设计滤波器所需的电阻和电容,在应用中只需极少数外部器件就可以很方便地构成一个有源滤波器。到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用。80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。因此滤波器的发展对于一个国家的经济产业起到很重要的作用。因此滤波器的设计显得尤为重要。2. matlab2.1 开发算法和应用程序MATLAB 提供了

6、一种高级语言和开发工具,使您可以迅速地开发并分析算法和应用程序。2.1.1 MATLAB 语言MATLAB 语言支持向量和矩阵运算,这些运算是工程和科学问题的基础。这样使得开发和运行的速度非常快。使用 MATLAB 语言,编程和开发算法的速度较使用传统语言大大提高,这是因为无须执行诸如声明变量、指定数据类型以及分配内存等低级管理任务。在很多情况下,MATLAB 无须使用 "for" 循环。因此,一行 MATLAB 代码经常等效于几行 C 或 C+ 代码。同时,MATLAB 还提供了传统编程语言的所有功能,包括算法运算符、流控制、数据结构、数据类型、面向对象编程 (OOP)

7、以及调试功能。利用 MATLAB,无须执行编译和链接即可一次执行一个或一组命令,这样就可以迅速迭代到最佳解决方案。为快速执行大量的矩阵和向量计算,MATLAB 使用了处理器经过优化的库。对于通用的标量计算,MATLAB 使用其 JIT(即时)编译技术生成机器代码指令。这一技术可用于大多数平台,它提供了可与传统编程语言相媲美的执行速度。2.1.2 开发工具MATLAB 包含一些有助于高效实施算法的开发工具。这些工具如下:MATLAB 编辑器 - 提供标准的编辑和调试功能,如设置断点及单步执行M-Lint 代码检查器 - 对代码进行分析并提出更改建议,以提高其性能和可维护性MATLAB 事件探查器

8、 - 记录执行各行代码所花费的时间目录报表 - 扫描目录中的所有文件,并报告代码效率、文件差异、文件相关性和代码覆盖2.2 分析和访问数据2.2.1 分析和访问数据MATLAB 对整个数据分析过程提供支持,该过程从外部设备和数据库获取数据,通过对其进行预处理、可视化和数值分析,最后到生成质量达到演示要求的输出。2.2.2 数据分析MATLAB 提供了一些用于数据分析运算的交互式工具和命令行函数,包括: 1.内插和抽取 2.抽取数据段、缩放和求平均值 3.阈值和平滑处理 4.相关性、傅立叶分析和筛选 5.一维峰值、谷值以及零点查找 6.基本统计数据和曲线拟合 7.矩阵分析 2.2.3 数据访问M

9、ATLAB 是一个可高效地从文件、其他应用程序、数据库以及外部设备访问数据的平台。您可以从各种常用文件格式(如 Microsoft Excel)、ASCII 文本或二进制文件、图像、语音和视频文件以及诸如 HDF 和 HDF5 等科学文件中读取数据。借助低级二进制文件 I/O 函数,可以处理任意格式的数据文件。而其他函数可使您从 Web 页面和 XML 中读取数据。2.3 数据可视化 2.3.1 实现数据可视化MATLAB 中提供了将工程和科学数据可视化所需的全部图形功能。这些功能包括二维和三维绘图函数、三维卷可视化函数、用于交互式创建图形的工具以及将结果输出为各种常用图形格式的功能。可以通过

10、添加多个坐标轴、更改线的颜色和标记、添加批注、LATEX 方程和图例以及绘制形状,对图形进行自定义。2.3.2 二维绘图可以通过使用二维绘图函数将数据向量可视化,创建以下图形: 1.线图、区域图、条形图以及饼图 2.方向图及速率图 2.3.3 三维绘图和卷可视化MATLAB 提供了一些用于将二维矩阵、三维标量和三维向量数据可视化的函数。可以使用这些函数可视化庞大的、通常较为复杂的多维数据,以帮助理解;还可以指定图形特性,如相机取景角度、透视图、灯光效果、光源位置以及透明度等等。三维绘图函数包括: 1.曲面图、轮廓图和网状图 2.成像图 3.锥形图、切割图、流程图以及等值面图 2.3.4 交互式

11、创建和编辑图形MATLAB 提供了一些用于设计和修改图形的交互式工具。在 MATLAB 图形窗口中,可以执行以下任务: 1.将新的数据集拖放到图形上 2.更改图形上任意对象的属性 3.缩放、旋转、平移以及更改相机角度和灯光 4.添加批注和数据提示 5.绘制形状 6.生成可供各种数据重复使用的 M 代码函数 2.4 执行数字运算MATLAB 包含了各种数学、统计及工程函数,支持所有常见的工程和科学运算。这些由数学方面的专家开发的函数是 MATLAB 语言的基础。这些核心的数学函数使用 LAPACK 和 BLAS 线性代数子例程库和 FFTW 离散傅立叶变换库。由于这些与处理器相关的库已针对 MA

12、TLAB 支持的各种平台进行了优化,因此其执行速度比等效的 C 或 C+ 代码的执行速度要快。MATLAB 提供了以下类型的函数,用于执行数学运算和数据分析: 1.矩阵操作和线性代数 2.多项式和内插 3.傅立叶分析和筛选 4.数据分析和统计 5.优化和数值积分 6.常微分方程 (ODE) 7.偏微分方程 (PDE) MATLAB 可对包括双精度浮点数、单精度浮点数和整型在内的多种数据类型进行运算。附加的工具箱(单独提供)提供了专门的数学计算函数,用于包括信号处理、优化、统计、符号数学、偏微分方程求解以及曲线拟合在内的各个领域。2.5 发布结果和部署应用程序MATLAB 提供了很多用于记录和分

13、享工作成果的功能。可以将 MATLAB 代码与其他语言和应用程序集成,并将 MATLAB 算法和应用程序部署为独立程序或软件模块。2.5.1 发布结果 利用 MATLAB,可以将结果导出为图形或完整的报表。您可以将图形导出为各种常用的图形文件格式,然后将图形导入到诸如 Microsoft Word 或 Microsoft PowerPoint 等其他软件包中。使用 MATLAB 编辑器,可以用 HTML、Word、LATEX 和其他格式发布 MATLAB 代码。2.5.2 部署应用程序可以在 MATLAB 中创建算法并将其作为 M 代码分发给其他 MATLAB 用户。使用 MATLAB 编译器

14、(单独提供),可以将算法作为项目中的独立应用程序或软件模块部署给未使用 MATLAB 的用户。借助其他产品,可以将算法转换为能从 COM 或 Microsoft Excel 调用的软件模块。3.滤波器性能分析和比较3.1切比雪夫滤波器介绍在巴特沃兹滤波器中,幅度响应在通带和阻带内都是单调的。因此,若滤波器的技术要求是用最大通带和阻带的逼近误差来给出的话,那么,在靠近通带低频端和阻带截止频率以上的部分都会超出技术指标。一种比较有效的途径是使逼近误差均匀地分布于通带或阻带内,或同时在通带和阻带内都均匀分布,这样往往可以降低所要求的滤波器阶次。通过选择一种具有等波纹特性而不是单调特性的逼近方法可以实

15、现这一点。切比雪夫型滤波器就具有这种性质:其频率响应的幅度既可以在通带中是等波纹的,而在阻带中是单调的(称为I型切比雪夫滤波器),也可以在通带中是单调的,而在阻带中是等波纹的(称为II型切比雪夫滤波器)。I型切比雪夫滤波器的幅度平方函数是 = (3.1)式中为N阶切比雪夫多项式,定义为: (3.2)从切比雪夫定义式可以直接得出由和求的递推公式。将三角恒等式代入 (3.2)式,得 (3.3)切比雪夫滤波器的极点在S平面上呈椭圆分布。他们的直径分别等于椭圆短轴和长轴。为了求切比雪夫滤波器在椭圆上极点的位置,我们首先要这样确定,在大圆和小圆上以等角度 等间隔排列的那些点:这些点对于虚轴呈对称分布,并

16、且没有一个点落在虚轴上;但当N为奇数时要有一个点落在实轴上,而当N为偶数时,就都不会落在实轴上。切比雪夫滤波器的极点落在椭圆上,起纵坐标由相应的大圆上点的纵坐标来表示,起横坐标由相应的小圆上点的横坐标来表示。3.2滤波器原理滤波器作用是对输入信号起到滤波的作用。对图4-1所示的LSI系统,其时域输入关系是: y(n)=x(n)*h(n) 图3-1 LSI系统若y(n)、x(n)的傅立叶变换存在,则输入输出的频域关系是: (3.4)若滤波器的输入、输出都是离散时间信号,那么该滤波器的单位冲激响应h(n)也必然是离散的,这种滤波器称为为数字滤波器(DF, Digital Filter)。当用硬件实

17、现一个DF时,所需的元件是延迟器、乘法器和加法器:而利用MATLAB软件时,它仅需线性卷积程序便可以实现。众所周知,模拟滤波器(AF, Analog Filer)只能用硬件来实现,其元件是电阻R,电感L,电容C及运算放大器等。因此DF的实现要比AF容易得多,且更容易获得较理想的滤波性能。3.3滤波器的种类滤波器的种类很多,分类方法也不同,可以从功能上分,也可以从实现方法上分,或从设计方法上分等。但总的来说,滤波器可分为两大类,即经典滤波器和现代滤波器。经典滤波器是假定输入信号x(n)中的有用成分和无用成分(如噪声)各自占有不同的频带,当x(n)通过滤波器后可将无用成分有效滤去。如果信号中的有用

18、成分和无用成分的频带相互重叠,那么经典滤波器将无法滤除信号中的无用成分。现代滤波器理论研究的主要内容是从含有噪声的数据记录(又称为时间时间系列)中估计出信号的某些特性或信号本身。一旦信号被估计出,那么估计出的信号与原信号相比较高的信噪比。现代滤波器把信号和噪声都视为随机信号,利用它们的统计特征(如自相关函数、功率谱等)推导出一套最佳的估值算法,然后用硬件或软件予以实现。现在滤波器理论源于维纳在20世纪40年代及其以后的工作,因此维纳滤波器便是这一类滤波器的典型代表。此外,还有卡尔曼滤波器、线性预测滤波器、自适应滤波器等。经典滤波器从功能上可分为四种,即低通(LP, Low Pass)、高通(H

19、P,High Pass)、带通(BP,Band Pass)和带阻(BS, Band Stop)滤波器,每一种又有模拟滤波器(AF)和数字滤波器(DF)两种形式。图1-2和图1-3分别给出了AF及DF的四种滤波器的理想幅频响应。图中所给的滤波器的幅频特性都是理想情况,在实际应用中,这是难以实现的。例如对于低通滤波器,其抽样响应h(n)(或冲击响应h(t)是sinc函数,在-+有值,因此该滤波器是非因果的。在实际工程中,所设计的滤波器都是在某些准则下对理想滤波器的近似,但这保证了滤波器的物理可实现性和稳定性。 图3-2 模拟滤波器四种类型的理想幅频响应 图3-3 数字滤波器四种类型的理想幅频响应数

20、字滤波器按照单位取样响应h(n)的时域特性可分为无限脉冲响应(IIR, Infinite Impulse Response)系统和有限脉冲响应(FIR, Finite Impulse Response)系统。数字滤波器按照实现的方法和结构形式分为递归型或非递归型两类。递归型数字滤波器的当前输出y(n)是x(n)的当前和以前各输入值x(n-1),x(n-2),及以前各输出值y(n-1),y(n-2),的函数。一个N阶递归数字滤波器(IIR滤波器)的差分方程为: (3.5)由递归术语的含义,式(4-2)中的系数至少有一项不为零。0说明必须将延时的输出系列y(n-i)反馈回来。因此,从结构上看递归系

21、统必须有反馈环路。递归系统的传递函数定义为: (3.6)递归系统的传递函数()在平面上不仅有零点,而且有极点。非递归型数字滤波器当前的输出值()仅为当前的和以前的输入序列的函数,而与以前的各个输出值无关,因此从结构上看非递归系统没有反馈环路。一个N阶非递归型数字滤波器(FIR滤波器)的差分方程为: (3.7)系数等于单位取样响应序列值h(n)。其系统函数H(Z)可以表示为以下形式: (3.8)H(Z)是的多项式,因此它的极点只能在平面的原点上。3.4 采样频率由于在数字滤波器设计中w是用弧度表示的,而实际上给出的频率要求往往是实际频率f,单位为HZ,因此在数字滤波器的设计中还应给出采样频率。3

22、.5 滤波器设计的步骤不论是IIR滤波器还是FIR滤波器的设计都包括三个步骤:按照实际任务的要求,确定滤波器的性能指标。用一个因果、稳定的离散线性是不变系统的系统函数去逼近这一性能指标。根据不同的要求可以用IIR系统函数,也可以用FIR系统函数去逼近。利用有限精度算法实现系统函数。这里包括结构的选择、字长选择等。IIR数字滤波器设计的最通用的方法是借助于模拟滤波器的设计方法。模拟滤波器设计已经有了一套相当成熟的方法,它不但有完整的公式,而且有较为完整的图标供查询,因此充分利用这些已有的资源将会给数字滤波器的设计带来很大的方便。IIR数字滤波器的设计步骤是:按一定规则将给出的数字滤波器的设计指标

23、转换为模拟低通滤波器的技术指标。根据转换后的技术指标设计模拟低通滤波器G(s)。再按一定规则将G(s)转换成H(z)。若所设计的数字滤波器是低通的,那么上述设计工作可以结束,若所设计的是高通、带通或带阻滤波器,那么还需进行步骤4),将高通、带通或带阻数字滤波器的设计指标先转换为低通模拟滤波器的技术指标,然后按上述步骤2)设计出低通G(s),再将G(s)转换为所需的H(z)。设计高通、带通、带阻等数字滤波器时,有两种方法:先设计一个相应的高通、带通或带阻模拟滤波器,然后通过脉冲响应不变法或双线性变换法转换为数字滤波器。 变换方法的选用:(1)脉冲响应不变法:对于高通、带阻等都不能直接采用,或只能

24、在加了保护滤波器后才可用。因此,使用直接频率变换,对脉冲响应不变要许多特殊考虑,它一般应用于第一种方法中。(2)双线性变换法:基于双线性变换法的高通滤波器的设计:在模拟滤波器的高通设计中,低通到高通的变换就是S变量的倒置,这一关系同样可应用于双线性变换,只要将变换式中的S代之以1/S,就可以得到数字高通滤波器。由于倒数关系不改变模拟滤波器的稳定性,因此,也不会影响双线性变换后的稳定条件,而且j轴仍映射在单位圆上,只是方向颠倒了。所谓高通DF,并不是高到,由于数字频域存在折叠=对于实数响应的数字滤波器,由部分只是由的镜像部分,因此有效的数字域是,高通也仅指这一段的高端,即到为止的部分。高通变换的

25、计算步骤和低通变换一样。4.滤波器的程序及参数设定脚本文件1:function hua_fft(y,fs,style,varargin)nfft= 2nextpow2(length(y); y=y-mean(y);y_ft=fft(y,nfft);y_p=y_ft.*conj(y_ft)/nfft;y_f=fs*(0:nfft/2-1)/nfft;if style=2 plot(y_f,y_p(1:nfft/2); else subplot(211);plot(y_f,2*abs(y_ft(1:nfft/2)/length(y); ylabel('幅值');xlabel(

26、9;频率');title('信号幅值谱'); subplot(212);plot(y_f,y_p(1:nfft/2); ylabel('功率谱密度');xlabel('频率');title('信号功率谱');endend脚本文件2:function y=bands(x,f1,f2,f3,f4,rp,rs,Fs)wp1=2*pi*f1/Fs;wp3=2*pi*f2/Fs;wsl=2*pi*f3/Fs;wsh=2*pi*f4/Fs;wp=wp1 wp3;ws=wsl wsh;n,wn=cheb1ord(ws/pi,wp/pi,rp,rs);bz1,az1=cheby1(n,rp,wp/pi,'stop');h,w=freqz(bz1,az1,256,Fs);h=20*log10(abs(h);figure;plot(w,h);title('所设计滤波器的通带曲线');grid on;y=filter(bz1,az1,x);End主要参数及计算: 通带左边界fl=38hz通带右边界f2=42h

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论