基于MATLAB的FIR数字低通滤波器设计.doc
基于MATLAB实现FIR数字滤波器

科学技术学院NANCHANG UNIVERSITY COLLEGE OFSCIENCE AND TECHNOLOGY学士学位论文THESIS OF BACHELOR(2005— 2009 年)题目:基于MATLAB实现FIR数字滤波器学科部:信息学科部专业:电子信息工程班级:05电信(4)班学号:7020905167学生姓名:黎春涛指导教师:谢芳娟起讫日期:目录摘要 (I)ABSTRACT (II)第一章引言 (1)1.1 选题背景及意义 (1)1.2 MA TLAB概述 (1)1.3 滤波器的发展与现状 (1)1.4 滤波器的分类 (1)第二章FIR数字滤波器的概述 (3)2.1 FIR数字滤波器的概述 (3)2.2 FIR数字滤波器的特点 (3)2.3 FIR数字滤波器的优点 (3)2.4 FIR数字滤波器的缺点 (4)第三章FIR数字滤波器设计 (5)3.1 FIR数字滤波器的设计方法 (5)3.2 设计方法的选择 (5)3.2.1 窗函数法 (5)3.2.2 频率采样法 (5)3.2.3 等波纹逼近法 (5)3.2.4 方法比较 (6)3.3 滤波器阶数对切比雪夫滤波器的影响 (6)第四章切比雪夫实现FIR数字滤波器 (8)4.1 切比雪夫等波纹逼近准则 (8)4.2 等波纹最优化设计 (8)4.3 MA TLAB程序设计 (8)第五章结束语 (13)参考文献 (14)致谢 (15)基于MATLAB实现FIR数字滤波器专业:电子信息工程学号:7020905167 学生姓名:黎春涛指导教师:谢芳娟摘要:数字滤波是语音和图象处理、模式识别、频谱分析等应用中的一个基本处理算法,数字滤波技术是数字信号处理的一个重要组成部分。
从实现的网络方式上分为无限脉冲响应(IIR)滤波器和有限脉冲响应(FIR)滤波器。
MA TLAB软件在多个研究领域都有着广泛的应用。
传统的数字滤波器的设计过程复杂,计算工作量大,滤波特性调整困难,影响了它的应用。
基于MATLAB的FIR数字低通滤波器分析和设计

啪,=∽1/N为,O嚣主N。1.(N训,
z(以)=zI(n)一z2(行)=0.8sin(2耳·n·100·At)一0.2sin (2n·7/·1000·At),其中:At=0.0001s(即正=10 kHz),n为 整数,z(押)由100 Hz的z1(n)和1 kHz的z2(,1)两种频率 的信号组成,低通滤波的目的就是要尽可能地去掉z(九)中 的高频分量z2(竹),同时尽可能地保留z(挖)中的低频分量 zl(托).z(n)跟h(n)卷积结果如图1.从图1可看出,响应 Y(玎)中只剩下100 Hz的信号,相位右移了(N一1)/2=4。5 个抽样点的距离.
在时域,信号经过系统的响应y(挖)体现为激励z(咒) 跟系统单位抽样响应h(n)的卷积和
Y(挖)=z(押)*h(n)
N-I
=>:h(m)z(挖一卅)【l·2J.
I_。0
对于长度为N的FIR系统,h(咒)可以看成一个宽度 为.N点的固定窗口,而z(n)则看成一个队列以齐步走的 方式穿过h(1"1)窗口,。(n)每走一步,位于窗口中的z(咒) 部分的点跟h(1r1)的对应点的值相乘再求和(即加权平均), 所得结果构成此时系统的响应值Y(n),即Y(n)是h(行)对 位于其窗口中的z(挖)的加权求和.低通滤波要求窗口具有 波形平精作用,即利用窗口加权和使得变化缓慢的(即低 频)正弦分量保留(理想低通)或衰减幅度小(实际低通),而 变化快(即高频)的正弦分量正负抵消(理想低通)或衰减幅 度大(实际低通).
图4滤波前后的波形
还是用上例中设计的hl滤波器作频域低通,其m程序 如下:fs=22050;X=wavread(’leil.WflV’);n=length(x); Hw=fft(hl,n);Xw=fft(x,n);Yw=Hw’.*Xw’;Y=ifft (Yw,n);wavwrite(y,22050,’lei3.wav);
基于MATLAB的FIR低通滤波器设计

。
四 总结
从 各 个 图 的 特 性 曲线 中 可 以 看 出该滤 波器 的 性 能 基本达 到 了 要 求 滤波作 用 比 较 明 显 曲线 相 对 比 较平 稳 能 够满 足 微 弱 信 号 滤波器 的设 计
, ,
以 及带 通
。
限 脉冲 响 应 滤波器 以 及 无 限脉 冲 响应 滤波器
,
, , ,
,
,
则 需 要 对两 种滤 波器进行全 面 分析 后 才 可 判定 使 用 的 种 类
,
。
I R 滤波器 F
一 般情 况 下 是 通 过 迭 代 算 法 来 达到滤波 目 因 此在设 计 过 程 中 并 不存在
I R 滤波器设 计 过 程 中对 于硬 件设备具 有 现成 的 公 式 供其 使 用 因此 在 F l R 的 较好 要 求 而 滤波器仅仅 通过 模 拟 滤波器设 计参 数表 便 可 完成设
,
I 对 F
R
(3 )滤 波器 的 阶 数 i( f
b
e
lt e
r
。 r
r为 )
z。
1 5 ;# ) (
窗
口类型
(w i
n
d
叫为
K is
a
, e r
。
ta
.
为
0
。
5
:
数 字 滤 波 器 的概 述
,
(5 ) f
为
“
so M H s i
z
,
f
C
为
。
6o M H
Hale Waihona Puke e 点击 d,n i g l f
“
e t
厂 即可
。
基于MATLAB的FIR 数字低通滤波器设计DOC

毕业设计(论文)任务书题目:基于MATLAB的FIR 数字低通滤波器设计系名信息工程系专业电子信息工程学号 6009202371学生姓名马成指导教师李晓峰职称讲师2012年12 月15 日一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等。
)研究条件:在大学四年专业学习的基础上,阅读有关MATLAB软件使用方法以及数字滤波器设计等方面的书籍;掌握MATLAB编程语言,熟练利用计算机进行MATLAB仿真设计。
应用环境:数字滤波器在现实生活中与人们息息相关,广泛使用于各种声音、图像以及文字等处理系统中。
将MATLAB强大的运算处理能力有机融入数字滤波器设计中可实现对于数字滤波器的快速设计以及各种处理变换。
工作目的:本课题的主要任务就是利用MATLAB软件中的数字信号处理工具箱实现FIR低通数字滤波器的设计。
二、参考文献[1]徐明远,刘增力,《MATLAB仿真在信号处理中的应用》[M].西安:西安电子科技大学出版社,2007.11.[2]陈桂明,张明照,《应用MATLAB语言处理信号与数字图像》[M].北京:科学出版社,2000.5.[3]飞思科技产品研发中心.MATLAB基础与提高[M].北京:电子工业出版社,2005.[4]高西全,丁玉美.数字信号处理[M].西安:西安电子科技大学出版社,第三版,2008.[5]李亚奇,张雅琦.线性相位FIR数字滤波器[J].电子测量技术,2005(6):35-37.[6]郭德才.基于Matlab的FIR低通滤波器的设计与仿真[J].通化师范学院学报,2009, 30(8):38-41.[7]赵刚.基于数字滤波器设计的讨论[J].南开大学学报(自然科学版),2003(3):101-103.[8]陈明军.改进窗函数在FIR数字滤波器设计中的应用[J].继电器,2007(13):65-67.三、设计(研究)内容和要求(包括设计或研究内容、主要指标与技术参数,并根据课题性质对学生提出具体要求。
基于matlab的fir数字滤波器的设计

一、引言数字滤波器是数字信号处理中至关重要的组成部分,它能够对数字信号进行滤波处理,去除噪音和干扰,提取信号中的有效信息。
其中,fir数字滤波器作为一种常见的数字滤波器类型,具有稳定性强、相位响应线性等特点,在数字信号处理领域得到了广泛的应用。
本文将基于matlab软件,探讨fir数字滤波器的设计原理、方法和实现过程,以期能够全面、系统地了解fir数字滤波器的设计流程。
二、fir数字滤波器的基本原理fir数字滤波器是一种有限长冲激响应(finite impulse response, FIR)的数字滤波器,其基本原理是利用线性相位特性的滤波器来实现对数字信号的筛选和处理。
fir数字滤波器的表达式为:$$y(n) = \sum_{k=0}^{M}h(k)x(n-k)$$其中,y(n)为输出信号,x(n)为输入信号,h(k)为滤波器的系数,M为滤波器的长度。
fir数字滤波器的频率响应特性由其系数h(k)决定,通过设计合适的系数,可以实现对不同频率成分的滤波效果。
三、fir数字滤波器的设计方法fir数字滤波器的设计方法主要包括窗函数法、频率抽样法、最小最大法等。
在matlab中,可以通过信号处理工具箱提供的fir1函数和firls函数等来实现fir数字滤波器的设计。
下面将分别介绍这两种设计方法的基本原理及实现步骤。
1. 窗函数法窗函数法是fir数字滤波器设计中最为常见的方法之一,其基本原理是通过对理想滤波器的频率响应进行窗函数加权来满足设计要求。
在matlab中,可以使用fir1函数实现fir数字滤波器的设计,其调用格式为:h = fir1(N, Wn, type)其中,N为滤波器的阶数,Wn为滤波器的截止频率,type为窗函数的类型。
通过调用fir1函数,可以灵活地设计出满足特定要求的fir数字滤波器。
2. 频率抽样法频率抽样法是fir数字滤波器设计中的另一种重要方法,其基本原理是在频域上对理想滤波器的频率响应进行抽样,并拟合出一个最优的滤波器。
基于MATLAB的fir数字滤波器设计

例 1 要 求 设 计 一 个 最 小 阶 数 的 低 通 滤 波 器 , 样 频 率 厂 = 2 0 0 Hz 通 带 截 止 频 率 为 采 l 0 , 5 0 Hz 阻带 的截 至 频 率 为 6 0 Hz 阻带 最 小 衰 0 , 0 , 减 为 4 B, 带 的最大 衰减 为 3d 0d 通 B。 在设计 之前 , 先 要确 定 使 用 什 么 样 的 方法 首
下面 的实例 。
Malb命令 窗 口直接 键人 程 序 代码 , t a 即可 得 到所 设计 的滤波器 。程 序代码 Ⅲ及 注 释如 下 :
f=2 0 I s 0 0 r=3 p I 采 样 频 率 %通 带 波 纹
例 2 有 一 个 采 样 频 率 为 10 0 Hz的信 号 0
ict n 频 率 设 定 ) 项 中 , - ( 样 频 率 ) f ai ( i o 选 将 厂 采 l 、
。。
( 通带 截止 频率 ) 厂 ( 带截 止频 率 ) 、l 阻 中分 别
键 入 20 0Hz 5 0Hz 6 0Hz 0 ,0 ,0 。再 对 Ma ntd gi e u
V 12 . o 3 o. 7 N .
ห้องสมุดไป่ตู้S p2 0 e .0 6
文 章 编 号 :1 0 - 9 9 2 0 ) 30 5 - 4 0 6 2 3 ( 0 6 0 - 2 40
基 于 Malb的 F R数 字 滤 波器 的设计 t a I
-广
4
吉 姜 涛 口 , '
10 2 }2 长 春 工 业 大 学 机 电工 程 学 院 ,吉林 长 春 1 0 1 ) 30 2 . 3 0 2
po ( n . n ) ltz t z s
基于MATLAB设计FIR滤波器

基于MATLAB设计FIR滤波器FIR(Finite Impulse Response)滤波器是一种数字滤波器,它具有有限的冲激响应长度。
基于MATLAB设计FIR滤波器可以使用signal工具箱中的fir1函数。
fir1函数的语法如下:b = fir1(N, Wn, window)其中,N是滤波器的阶数,Wn是截止频率,window是窗函数。
要设计一个FIR低通滤波器,可以按照以下步骤进行:步骤1:确定滤波器的阶数。
阶数决定了滤波器的截止频率的陡峭程度。
一般情况下,阶数越高,滤波器的陡峭度越高,但计算复杂度也会增加。
步骤2:确定滤波器的截止频率。
截止频率是指在滤波器中将信号的频率限制在一定范围内的频率。
根据应用的需求,可以选择适当的截止频率。
步骤3:选择窗函数。
窗函数是为了在时域上窗口函数中心增加频率衰减因子而使用的函数。
常用的窗函数有Hamming、Hanning等。
窗函数可以用来控制滤波器的幅度响应特性,使得它更平滑。
步骤4:使用fir1函数设计滤波器。
根据以上步骤确定滤波器的阶数、截止频率和窗函数,可以使用fir1函数设计FIR滤波器。
具体代码如下:N=50;%设定阶数Wn=0.5;%设定截止频率window = hanning(N + 1); % 使用Hanning窗函数步骤5:使用filter函数对信号进行滤波。
设计好FIR滤波器后,可以使用filter函数对信号进行滤波。
具体代码如下:filtered_signal = filter(b, 1, input_signal);其中,input_signal是输入信号,filtered_signal是滤波后的信号。
以上,便是基于MATLAB设计FIR滤波器的简要步骤和代码示例。
根据具体需求和信号特性,可以进行相应的调整和优化。
用MAtlab实现FIR数字滤波器的设计

设计方法
• 一、窗函数设计法 • 二、频率抽样设计法 • 三、最小二乘逼近设计法
FIR 数 字 滤 波 器 的 文 件
一、fir1.m
• 本文件采用窗函数法设计FIR数字滤波器,其调用格式是
• 1)b=fir1(N ,W c)
• 2)b=fir1(N,W c ,’high’) • 3)b=fir1(N,W c ,’stop’)
实践课题
FIR 数 字 滤 波 器 的 设 计
实践目的
通过实践加深对Matlab软件的认识。 能熟练应用并基本掌握Matlab软件, 通过实践对课本以外的内容有初步的 了解。 通过设计FIR数字滤波器,对滤波器 的功能和原理有初步的认识和了解。
实践课题简介
在数字信号处理的许多领域中, 如图像处理、数字通信等领域,常 常要求滤波器具有线性相位。FIR数 字滤波器的最大优点就是容易设计 成线性相位特性,而且它的单位冲 激响应是有限长的,所以它永远是 稳定的。
•
Hale Waihona Puke 上式中N为滤波器的阶次,W c是通带截止频率,其值在0~1之间, 1对应采样频率的一半,b是设计好的滤波器系数(单位冲激响应序 列)其长度为N+1。
对于格式(1)若W c是一标量,则可用来设计低通滤波器;若W c 是 的向量,则用来设计带通滤波器。 格式(2)用来设计高通滤波器。 格式(3)用来设计带阻滤波器。
部分滤波器的例子(频率抽样法)
部分滤波器的例子(最小二乘逼近设计法)
Fircls1设计的低通滤波器,归一化截止频率 为0.3,通带波纹为0.02,阻带波纹为0.008。
实践总结
通过这次实践课题的设计与制作,使我 对Matlab这个软件有了进一步的了解,并且 加深了课本上的知识。与此同时,使我对 滤波器有了初步的认识。提高了我的理解 以及分析能力,理论和实践相结合,不仅 巩固了我的理论知识,同时更提高了我的 实践能力,使我受益匪浅。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于MATLAB的FIR数字低通滤波器设计
..基于MATLAB的FIR数字低通滤波器设计作者:
周龙刚(陕西理工学院物理与电信工程学院通信工程专业2011级4班,陕西汉中723003)指导老师:
井敏英[摘要]FIR数字滤波器是数字信号处理的一个重要组成部分,由于FIR数字滤波器具有严格的线性相位,因此在信息的采集和处理过程中得到了广泛的应用。
本文介绍了FIR数字滤波器的概念和线性相位的条件,分析了窗函数法、频率采样法和等波纹逼近法设计FIR滤波器的思路和流程。
在分析三种设计方法原理的基础上,借助Matlab仿真软件工具箱中的fir1实现窗函数法中的哈明窗设计FIR低通滤波器。
[关键词] FIR数字滤波器;线性相位窗函数;法哈明窗;MatlabDesigning FIR low-pass digital filter based on VHDL Zhoulonggang(Grade11,Class4,Major of Communication Engineering,School of Physics and Telecommunication Engineering , Shaanxi University of Technology,Hanzhong 723003,Shaanxi)Tutor:JingYingMinAbstract:FIR digital filter is an important part of digital signal processing,the FIR digitalfilter with linear phase, so it has been widely applied in the collection and processing of information in the course of. This paper introduces the concept of FIR digital filter with linear phase conditions, analysis of the window functionmethod and frequency sampling method and the ripple
approximation method ofFIR filter design ideas and processes. Based on analyzing the principle of three kinds of design method, using Matlab simulation software fir1 toolbox in design and implementation of FIR Hamming window window function method in the low pass filter.Keywords: FIR digital filter, linear phase,the window function method,Hamming window,Matlab 目录引言.................................................................................................................. ..........................................-省略部分-清华大学出版社,2008,1.112-114.[3] 郑国强,傅江涛,彭勃等.数字信号处理—理论与实践[M].西安:西安电子科技大学出版社,2009,8.78-87[4] 闫胜利. FIR 滤波器及设计原理[J]. 长春工程学院学报(自然科学版), 2003,23(6):30-33.[5] 杨永昌,李晨辉,王凯. FIR数字滤波器的设计方法[J]. 桂林航天工业高等专科院校学报, 2006,23(14):19-20.[6] 李寿柏, 胡业林. MATLAB在FIR滤波器设计中的应用[J]. 机电工程技术, 2007,23(14):19-20[7] 朱敏. MATLAB数字信号处理工具箱的开发和应用[J]. 信息与电脑, 2010,6(24):6 723 -6 724.[8] 张小虹, 黄忠虎, 邱正伦等. 数字信号处理[M].北京:机械工业出版社, 2008, 9.45-55word 教育资料..附录Af1=100;f2=200;%待滤波正弦信号频率fs=2000;%采样频率m=(0.3*f1)/(fs/2);%定义过度带宽M=round(8/m);%定义窗函数长度N=M-1;%定义滤波器的阶数b=fir1(N,0.5*f2/(fs/2));%使用fir1函数设计滤波器%输入参数分别为滤波器的阶数和截止频率figure(1)freqz(b);%输出滤波器的幅频和相频曲线
figure(2)[h,f]=freqz(b,1,512);%滤波器的幅频特性图%[H,W]=freqz(B,A,N)当N是一个整数时函数返回N点的频率向量和幅频响应向量plot(f*fs/(2*pi),20*log10(abs(h)))%参数分别是频率和幅值xlabel('频率/赫兹');ylabel('增益/分贝');title('滤波器的响应增益');figure(3)subplot(211)t=0:1/fs:0.5;%定义时间范围和步长s=sin(2*pi*f1*t)+sin(2*pi*f2*t);%滤波前信号plot(t,s);%滤波前的信号图像xlabel('时间/秒');ylabel('幅度');title('信号滤波前时域图');subplot(212)Fs=fft(s,512);%将信号变换到频域AFs=abs(Fs);%信号频域图的幅值f=(0:255)*fs/512;%频率采样plot(f,AFs(1:256));%滤波前的信号频域图xlabel('频率/赫兹');ylabel('幅度');title('信号滤波前频域图');figure(4)sf=filter(b,1,s);%使用filter函数对信号进行滤波subplot(211)plot(t,sf);%滤波后的信号图像xlabel('时间/秒');ylabel('幅度');title('信号滤波后时域图');axis([0.2 0.5 -2 2]);%限定图像坐标范围subplot(212)Fsf=fft(sf,512); AFsf=abs(Fsf); %滤波后的信号频域图及信号频域图的幅值f=(0:255)*fs/512;%频率采样plot(f,AFsf(1:256));%滤波后的信号频域图xlabel('频率/赫兹');ylabel('幅度');title('信号滤波后频域图');word教育资料达到当天最大量API KEY 超过次数限制。