实验五 FIR 数字滤波器的设计

合集下载

fir滤波器设计实验报告

fir滤波器设计实验报告

fir滤波器设计实验报告fir滤波器设计实验报告引言:滤波器是数字信号处理中常用的工具,它能够对信号进行去噪、频率分析和频率选择等处理。

其中,FIR(Finite Impulse Response)滤波器是一种常见的数字滤波器,具有线性相位和稳定性等优点。

本实验旨在设计一个FIR滤波器,并通过实际测试验证其性能。

一、实验目的本实验的目的是通过设计一个FIR滤波器,掌握FIR滤波器的设计方法和性能评估。

具体包括以下几个方面:1. 了解FIR滤波器的基本原理和特点;2. 学习FIR滤波器的设计方法,如窗函数法、最小二乘法等;3. 掌握MATLAB等工具的使用,实现FIR滤波器的设计和性能评估;4. 通过实际测试,验证所设计FIR滤波器的性能。

二、实验原理FIR滤波器是一种非递归滤波器,其输出仅依赖于当前和过去的输入样本。

其基本原理是将输入信号与一组滤波器系数进行卷积运算,得到输出信号。

FIR滤波器的频率响应由滤波器系数决定,通过调整滤波器系数的值,可以实现不同的滤波效果。

在本实验中,我们采用窗函数法设计FIR滤波器。

窗函数法是一种常见的FIR滤波器设计方法,其基本思想是通过对滤波器的频率响应进行窗函数加权,从而实现对信号频率的选择。

常用的窗函数有矩形窗、汉宁窗、布莱克曼窗等。

三、实验过程1. 确定滤波器的要求:根据实际需求,确定滤波器的截止频率、通带衰减和阻带衰减等参数。

2. 选择窗函数:根据滤波器的要求,选择合适的窗函数。

常用的窗函数有矩形窗、汉宁窗、布莱克曼窗等,不同窗函数有不同的性能特点。

3. 计算滤波器系数:根据所选窗函数的特性,计算滤波器的系数。

这一步可以使用MATLAB等工具进行计算,也可以手动计算。

4. 实现滤波器:使用MATLAB等工具,将计算得到的滤波器系数应用于滤波器的实现。

可以使用差分方程、卷积等方法实现滤波器。

5. 评估滤波器性能:通过输入不同的信号,观察滤波器的输出,并评估其性能。

实验5 FIR滤波器设计与实现

实验5 FIR滤波器设计与实现

实验5 FIR滤波器设计与实现以下为参考中文实验指导,原文请参见:\GuideSlide\DSP_Primer\chinese\print下:Xilinx_DSP_workbook_A4.pdf5.FIR滤波器在这一部分中,我们将利用多种不同方法实现FIR滤波器。

为了说明问题,首先来看一下如下图所示的简单的四抽头FIR滤波器:滤波器的系数按如下选择:w0= -10,w1= 20,w2= 50,w3= 80 [5.1] 这些系数并不是针对某个具体的频率响应而设计的,如此选择只是为了说明问题。

5.1.字长增长为了说明字长效应的影响,我们当然只能选择有限精度的信号。

在本例中,我们让输入信号为2位整数。

因此信号x[k]的范围在-2和1之间。

在下面各实验中,我们将考虑滤波器系数为8位的情况,即w的范围在-128和+127之间实验 5.1简单FIR滤波器打开以下系统:\filter\cut_set\FIR1\FIR1.mdl(a)在上图中画出关键路径,并回答在关键路径上共有多少乘法单元和加法单元。

答:(b)运行该系统并在示波器中观察其冲激响应。

(c) 观察加法链上的字长变化并验证字长由8位增长到10位。

(d) 使用System Generator 模块生成所需ISE 工程文件。

打开ISE 工程,对该设计经行时序模拟以及布局与布线(Place & Route ),然后完成下列表格。

(注意在本例中并没有使用到内嵌乘法器)实验 5.2 时序变更(Retiming)打开以下系统:\filter\cut_set\FIR2\FIR2.mdl对图中上面的系统应用cut sets 分割得到的割集进行适当变换便得到了下面的系统。

变换后的系统的关键路径长度被大大缩减。

但同时需要注意的是,系统的延迟增加了。

(a) 运行该系统并在示波器中观察其冲激响应。

可以看出该系统与之前的系统相比其关键路径大大缩短。

新系统的关键路径长度是多少? 答:(b) 使用System Generator 模块生成所需ISE 工程文件。

实验五FIR数字滤波器的设计

实验五FIR数字滤波器的设计

实验五FIR数字滤波器的设计FIR数字滤波器(Finite Impulse Response)是一种数字滤波器,它的输出仅由有限数量的输入样本决定。

设计FIR数字滤波器的步骤如下:1.确定滤波器的要求:首先需要明确滤波器的频率响应、截止频率、通带和阻带的幅频响应等要求。

2.选择滤波器类型:根据实际需求选择合适的滤波器类型,如低通滤波器、高通滤波器、带通滤波器或带阻滤波器等。

3.确定滤波器的阶数:根据滤波器类型和要求,确定滤波器的阶数。

通常情况下,滤波器的阶数越高,能够实现更陡峭的频率响应,但会引入更多的计算复杂度。

4.设计滤波器的理想频率响应:根据滤波器的要求和类型,设计滤波器的理想频率响应。

可以使用常用的频率响应设计方法,如窗函数法、最小最大法或线性相位法等。

这些方法可以实现平滑的频率响应或者良好的阻带衰减。

5.确定滤波器的系数:根据设计的理想频率响应,通过反变换或优化算法确定滤波器的系数。

常用的优化算法包括频域方法、时域方法、最小二乘法或最小相位法等。

6.实现滤波器:将所得的滤波器系数转化为滤波器的差分方程形式或直接计算滤波器的频域响应。

7.评估滤波器性能:使用合适的测试信号输入滤波器,并对滤波器的输出进行评估。

可以使用指标,如频率响应曲线、幅度响应误差、相位响应误差或阻带衰减等指标来评估滤波器性能。

8.优化滤波器性能:根据评估结果,进行必要的修改和优化设计,以满足滤波器的要求。

通过以上步骤,可以设计出满足需求的FIR数字滤波器。

需要注意的是,FIR数字滤波器设计的复杂度和性能需要权衡与平衡,以满足实际应用的要求。

实验五FIR数字滤波器的设计

实验五FIR数字滤波器的设计

实验五FIR数字滤波器的设计
FIR数字滤波器的设计可以分为以下几个步骤:
1.确定滤波器的类型和规格:根据实际需求确定滤波器的类型(如低通、高通、带通等)以及滤波器的截止频率、通带衰减以及阻带衰减等规格。

2.选择滤波器的窗函数:根据滤波器的规格,选择合适的窗函数(如矩形窗、汉宁窗、布莱克曼窗等)。

窗函数的选择会影响滤波器的频率响应以及滤波器的过渡带宽度等特性。

3.确定滤波器的阶数:根据滤波器的规格和窗函数的选择,确定滤波器的阶数。

通常来说,滤波器的阶数越高,滤波器的性能越好,但相应的计算和处理也会更加复杂。

4.设计滤波器的频率响应:通过在频率域中设计滤波器的频率响应来满足滤波器的规格要求。

可以使用频率采样法、窗函数法或优化算法等方法。

5. 将频率响应转换为差分方程:通过逆Fourier变换或其他变换方法,将频率响应转换为滤波器的差分方程表示。

6.量化滤波器的系数:将差分方程中的连续系数离散化为滤波器的实际系数。

7.实现滤波器:使用计算机编程、数字信号处理芯片或FPGA等方式实现滤波器的功能。

8.测试滤波器性能:通过输入一组测试信号并观察输出信号,来验证滤波器的性能是否符合设计要求。

需要注意的是,FIR数字滤波器的设计涉及到频率域和时域的转换,以及滤波器系数的选择和调整等过程,需要一定的信号处理和数学背景知识。

FIR数字滤波器设计

FIR数字滤波器设计

FIR数字滤波器设计
设计FIR数字滤波器的一般步骤包括:确定系统响应要求、选择滤波器类型、选择滤波器规格、设计滤波器的幅频特性、设计滤波器的相频特性、选择适当的窗函数、计算滤波器系数、计算滤波器结构。

1.确定系统响应要求:确定需要滤波的信号类型、滤波器的通带、阻带、过渡带以及相应的增益要求。

2.选择滤波器类型:根据系统响应要求选择合适的滤波器类型,例如低通滤波器、高通滤波器、带通滤波器或带阻滤波器等。

3.选择滤波器规格:确定滤波器的阶数和截止频率,阶数越高,滤波器的截止频率越陡峭。

4.设计滤波器的幅频特性:根据系统响应要求,设计滤波器的幅频特性,包括通带增益、阻带抑制、过渡带宽度等。

5.设计滤波器的相频特性:根据系统响应要求,设计滤波器的相频特性,主要考虑滤波器的群延迟。

6.选择适当的窗函数:为了减小频率响应的波动,通常会使用窗函数来设计滤波器。

7.计算滤波器系数:根据滤波器的幅频特性和窗函数,通过数学计算来得到滤波器的系数。

8.计算滤波器结构:根据滤波器的系数,选择合适的滤波器结构来实现数字滤波器。

以上是设计FIR数字滤波器的一般步骤,具体的设计方法会根据实际情况而有所不同。

FIR数字滤波器设计实验_完整版

FIR数字滤波器设计实验_完整版

FIR数字滤波器设计实验_完整版本实验旨在设计一种FIR数字滤波器,以滤除信号中的特定频率成分。

下面是完整的实验步骤:材料:-MATLAB或其他支持数字信号处理的软件-计算机-采集到的信号数据实验步骤:1.收集或生成需要滤波的信号数据。

可以使用外部传感器采集数据,或者在MATLAB中生成一个示波器信号。

2. 在MATLAB中打开一个新的脚本文件,并导入信号数据。

如果你是使用外部传感器采集数据,请将数据以.mat文件的形式保存,并将其导入到MATLAB中。

3.对信号进行预处理。

根据需要,你可以对信号进行滤波、降噪或其他预处理操作。

这可以确保信号数据在输入FIR滤波器之前处于最佳状态。

4.确定滤波器的设计规范。

根据信号的特性和要滤除的频率成分,确定FIR滤波器的设计规范,包括滤波器的阶数、截止频率等。

你可以使用MATLAB中的函数来帮助你计算滤波器参数。

5. 设计FIR滤波器。

使用MATLAB中的fir1函数或其他与你所使用的软件相对应的函数来设计满足你的规范条件的FIR滤波器。

你可以选择不同的窗函数(如矩形窗、汉宁窗等)来平衡滤波器的频域和时域性能。

6. 对信号进行滤波。

将设计好的FIR滤波器应用到信号上,以滤除特定的频率成分。

你可以使用MATLAB中的conv函数或其他相应函数来实现滤波操作。

7.分析滤波效果。

将滤波后的信号与原始信号进行比较,评估滤波效果。

你可以绘制时域图、频域图或其他特征图来分析滤波效果。

8.优化滤波器设计。

如果滤波效果不理想,你可以调整滤波器设计参数,重新设计滤波器,并重新对信号进行滤波。

这个过程可能需要多次迭代,直到达到最佳的滤波效果。

9.总结实验结果。

根据实验数据和分析结果,总结FIR滤波器设计的优点和缺点,以及可能的改进方向。

通过完成以上实验步骤,你将能够设计并应用FIR数字滤波器来滤除信号中的特定频率成分。

这对于许多信号处理应用都是非常重要的,如音频处理、图像处理和通信系统等。

FIR数字滤波器的设计报告

FIR数字滤波器的设计报告

一、实验名称:FIR 数字滤波器的设计 二、实验内容:1. 分别用矩形窗和哈明窗设计FIR 低通滤波器,设窗宽11=N ,截止频率rad c πω2.0=,要求绘出两种窗函数设计的滤波器幅频曲线。

程序代码:N=11;h1=fir1(N-1,0.2,boxcar(N)); h2=fir1(N-1,0.2,hamming(N)); w=0:0.01:pi; H1=freqz(h1,1,w);H1db=20*log10(abs(H1)/max(abs(H1))); H2=freqz(h2,1,w);H2db=20*log10(abs(H2) /max(abs(H1))); subplot(1,2,1)plot(w/pi,abs(H1),'-.',w/pi,abs(H2)) legend('矩形窗','哈明窗'); xlabel('w/pi');ylabel('幅频响应'); subplot(1,2,2)plot(w/pi,H1db,'-.',w/pi,H2db) xlabel('w/pi');ylabel('dB'); legend('矩形窗','哈明窗'); 图形:0.510.20.40.60.811.2w/pi幅频响应0.51-120-100-80-60-40-2020w/pid B2. 设计一个线性相位FIR 低通滤波器,通带截止频率为rad p πω2.0=,阻带截止频率为rad s πω4.0=,阻带最小衰减为dB s 50=α。

要求分别绘制理想脉冲响应曲线,哈明窗曲线,实际脉冲响应曲线,FIR 低通滤波器的幅频曲线(分贝形式)。

程序代码:wp=0.2*pi;ws=0.4*pi;tr_width=ws-wp; %计算过渡带的带宽N=ceil(8*pi/tr_width); %计算滤波器的阶次 n=0:N-1;wc=(ws+wp)/2; %计算3 dB 截止频率 alpha=(N-1)/2; %单位响应的对称中心m=n-alpha;hd=sin(wc*m)./(pi*m); %理想低通滤波器的单位响应 w_ham=(hamming(N))';h=hd.*w_ham; %实际滤波器的单位响应 w=0:0.01:pi;H=freqz(h,1,w); %实际滤波器的幅频特性 dbH=20*log10(abs(H)/max(abs(H)));subplot(221);stem(n,hd,’.’);title('理想单位响应'); xlabel('n');ylabel('hd(n)');subplot(222);stem(n,w_ham,’.’);title('哈明窗'); xlabel('n');ylabel('w(n)');subplot(223);stem(n,h,’.’);title('实际单位响应'); xlabel('n');ylabel('h(n)');subplot(224);plot(w/pi,db);title('幅频响应'); xlabel('w/pi');ylabel('分贝数'); 图形:102030理想单位响应nh d (n)哈明窗n w (n )nh (n )0.20.41-120-100-505幅频响应w/pi分贝数3. 利用频率采样法设计线性相位低通滤波器,要求3 dB 截止频率rad c 2/πω=,采样点数取33=N ,选用)1()(n N h n h --=的情况。

实验五.用窗函数法设计FIR数字滤波器

  实验五.用窗函数法设计FIR数字滤波器

实验六 用窗函数法设计FIR 数字滤波器 6.1 实验目的1.掌握用窗函数法设计FIR 数字滤波器的原理及具体方法;2.深入理解吉布斯现象,理解不同窗函数的特点。

6.2实验原理例6.1 利用firl 函数和矩形窗设计一个N=51,截止频率wc=0.5pi 的低通滤波器,画出幅频特性。

解: clearN=51;wc=0.5;h=fir1(50,wc,boxcar(N)) [H,W]=freqz(h,1) plot(W/pi,abs(H));title('矩形窗振幅特性/dB'); xlabel('相对频率');ylabel('H(w)')0.10.20.30.40.50.60.70.80.9100.20.40.60.811.21.4矩形窗振幅特性/dB相对频率H (w )说明:用fir1函数设计FIR 滤波器,h=fir1(M,wc,‘ftype ’,Window):h 为FIR 数字滤波器的系数构成的矩阵;M 为FIR 数字滤波器的阶数;Wc 是滤波器的截止频率,ftype 指定滤波器类型,默认情况下为低通,而带通、带阻分别用‘bandpass ’、‘stop ’表示;Window 指定窗函数,若不指定,默认为汉明窗。

[H,W]=freqz(h,1)表示数字滤波器频谱数据。

boxcar(N)表示N 点矩形窗函数。

例6.2 利用firl 函数和布莱克曼窗设计一个N=51,截止频率wp1=0.3pi wp2=0.4pi 的带通滤波器。

解: clearN=51;wc=[0.3,0.4];h=fir1(50,wc,'bandpass',blackman(N)) [H,W]=freqz(h,1) plot(W/pi,abs(H));title('布莱克曼窗振幅特性/dB'); xlabel('相对频率');ylabel('H(w)')00.10.20.30.40.50.60.70.80.910.10.20.30.40.50.60.70.80.91布莱克曼窗振幅特性/dB相对频率H (w )说明:用fir1函数设计FIR 滤波器,h=fir1(50,wc,'bandpass',blackman(N)):h 为FIR 数字滤波器的系数构成的矩阵;50+1为FIR 数字滤波器的阶数;Wc 是滤波器的截止频率,‘bandpass ’表示带通,blackman(N):表示N 点布莱克曼窗函数。

FIR数字滤波器的设计

FIR数字滤波器的设计

FIR 数字滤波器的设计一、实验内容:设计一个FIR 滤波器。

其中窗函数选用凯赛窗,滤波器的长度可变(NF=2M )。

分别设计低通、高通、带通、带阻4种滤波器。

二、FIR 数字滤波器:1、FIR 数字滤波器的特点:是选择有限还是无限长的滤波器主要取决于每种类型滤波器的优点在设计问题中的重要性。

对于FIR 滤波器不存在完整的设计方程。

虽然可以直接用窗函数法,但是为了满足预定的技术指标有可能需要作一些迭代。

用完整的公式来设计IIR 滤波器只限于低通、高通、带通、带阻少数几种滤波器。

而且,这些逼近方法通常没有考虑滤波器的相位响应。

所以,虽然我们可以用相当简单的计算方法来得到幅度响应很好的椭圆低通滤波器,但是群延迟响应将会非常差,特别是在频带边缘处。

而FIR 滤波器可以有精确的线性位移。

而且,窗函数法和大多数算法设计法都有可能逼近比较任意的频率响应特性,但所遇到的困难要比在低通滤波器设计中遇到的稍大一些。

另外,FIR 滤波器的设计问题要比IIR 的有更多的可控之处。

2、窗函数的基本思想与特点:它是设计FIR 滤波器的最简单的方法、它的频率响应()[]j j nd dn H e h n eωω∞-=-∞=∑式中,[]d h n 是对应的冲激响应序列,它可以借助()j d H e ω表示为[]()12jj nd dh n H e e d πωωπωπ-=⎰。

这种系统具有非因果的和无限长的冲激响应。

得到这种系统的因果FIR 滤波器的最直接的方法是使用“窗口”截短该理想冲激响应。

通过在截短时保留冲激响应的中间部分,可以得到线性相位的FIR 滤波器。

3、凯赛窗简介: 它定义为其他,00,)(])]/)[(1([{][02/120Mn I n I n ≤≤--=βααβω 式中)(,∙=02/I M α表示第一类零阶修正贝赛尔函数。

凯赛窗有两个参数:β参数是0.40.1102(8.7),500.5842(21)0.07886(21),50210,21ααβαααα->⎧⎪=-+-≥≥⎨⎪<⎩其中,20log αδ=-是以分贝形式表示的阻带衰减。

第五章FIR数字滤波器设计和实现

第五章FIR数字滤波器设计和实现
n 0 n 0
N 1
N 1
h( n)cos( n ) 0
n 0
N 1
可以证明,当
N 1 且 h( n) h[( N 1) n] (0 n N-1) 2
上式成立,此时
N 1 g ( ) 2
北京邮电大学信息与通信工程学院
15
FIR 滤波器的最重要特点是能实现线性相位。具有线性 相移特性的 FIR 滤波器是 FIR 滤波器中应用最广泛的 一种。
北京邮电大学信息与通信工程学院
6
概述:相位失真
信号通过线性滤波器时,其幅度和相位可能会发生改变, 滤波器幅频特性 |H(ω)|和相频特性 θ(ω) 可能会随频率 的变化而改变。
H (e j ) Hr ( )e j ( ) h( n)e jn h( n)[cos n j sin n]
n 0 n 0 N 1 N 1
θ(ω)
2
0
ω

N 1 h ( n )sin n j n 0 ( ) arg[ H (e )] arctan N 1 2 h ( n )cos n n 0
于是有:
tan cot 2
北京邮电大学信息与通信工程学院
h( n)sin n
N 1
h( n)cos n
n 0
n 0 N 1
cos( ) sin( )
14
线性相移FIR DF 约束条件:恒群延时

h(n)cos n cos h( n)sin n sin
北京邮电大学信息与通信工程学院
2
概述:IIR 和 FIR 比较

实验五FIR数字滤波器的设计

实验五FIR数字滤波器的设计

实验五FIR数字滤波器的设计一:实验目的(1)掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的原理及方法,熟悉响应的matlab编程;(2)熟悉线性相位FIR滤波器的幅频特性和相频特性;(3)了解各种不同窗函数对滤波器性能的影响。

二:实验原理:(一)线性相位实系数FIR滤波器按其N值奇偶和h(n)的奇偶对称性分为四种:1、h(n)为偶对称,N为奇数;H(e jω)的幅值关于ω=0,π,2π成偶对称。

2、h(n)为偶对称,N为偶数;H(e jω)的幅值关于ω=π成奇对称,不适合作高通。

3、h(n)为奇对称,N为奇数;H(e jω)的幅值关于ω=0,π,2π成奇对称,不适合作高通和低通。

=0,不适合作低通。

4、h(n)为奇对称,N为偶数;H(e jω)ω=0、2π(二) 窗口法窗函数法设计线性相位FIR 滤波器步骤确定数字滤波器的性能要求:临界频率{ωk },滤波器单位脉冲响应长度N ;根据性能要求,合理选择单位脉冲响应h(n)的奇偶对称性,从而确定理想频率响应H d (e jω)的幅频特性和相频特性;求理想单位脉冲响应h d (n),在实际计算中,可对H d (e jω)按M(M 远大于N)点等距离采样,并对其求IDFT 得h M (n),用h M (n)代替h d (n);选择适当的窗函数w(n),根据h(n)= h d (n)w(n)求所需设计的FIR 滤波器单位脉冲响应; 求H(e jω),分析其幅频特性,若不满足要求,可适当改变窗函数形式或长度N ,重复上述设计过程,以得到满意的结果。

窗函数的傅式变换W(e jω)的主瓣决定了H(e jω)过渡带宽。

W(e jω)的旁瓣大小和多少决定了H(e jω)在通带和阻带范围内波动幅度,常用的几种窗函数有:(1)矩形窗(Rectangle Window))()(n R n w N =(2)汉宁(Hanning)窗,又称升余弦窗)()]12cos(1[21)(n R N n n w N --=π (3)汉明(Hamming)窗,又称改进的升余弦窗)()]12cos(46.054.0[)(n R N n n w N --=π(4)布莱克曼(Blankman)窗,又称二阶升余弦窗 )()]14cos(08.0)12cos(5.042.0[)(n R N n N n n w N -+--=ππ(5)凯塞(Kaiser)窗 10,)())]1/(21[1()(020-≤≤---=N n I N n I n w ββ其中:β是一个可选参数,用来选择主瓣宽度和旁瓣衰减之间的交换关系,一般说来,β越大,过渡带越宽,阻带越小衰减也越大。

FIR滤波器设计与实现实验报告

FIR滤波器设计与实现实验报告

FIR滤波器设计与实现实验报告实验报告:FIR滤波器设计与实现一、实验目的本实验旨在通过设计和实现FIR滤波器来理解数字滤波器的原理和设计过程,并且掌握FIR滤波器的设计方法和实现技巧。

二、实验原理1.选择滤波器的类型和阶数根据滤波器的类型和阶数的不同,可以实现不同的滤波效果。

常见的滤波器类型有低通滤波器、高通滤波器、带通滤波器和带阻滤波器。

选择适当的滤波器类型和阶数可以实现对不同频率分量的滤波。

2.确定滤波器的系数在设计FIR滤波器时,系数的选择对滤波器的性能有重要影响。

通常可以使用窗函数法、最小二乘法、频率采样法等方法来确定系数的值。

常见的窗函数有矩形窗、汉明窗和布莱克曼窗等。

三、实验步骤1.确定滤波器的类型和阶数根据实际需求和信号特点,选择合适的滤波器类型和阶数。

例如,如果需要设计一个低通滤波器,可以选择实验中使用的巴特沃斯低通滤波器。

2.确定滤波器的频率响应根据滤波器的类型和阶数,确定滤波器的频率响应。

可以通过matlab等软件来计算和绘制滤波器的频率响应曲线。

3.确定滤波器的系数根据频率响应的要求,选择合适的窗函数和窗长度来确定滤波器的系数。

可以使用matlab等软件来计算和绘制窗函数的形状和频率响应曲线。

4.实现滤波器的功能将滤波器的系数应用于输入信号,通过加权求和得到输出信号的采样点。

可以使用matlab等软件来模拟和验证滤波器的功能。

四、实验结果在实际实验中,我们选择了一个4阶低通滤波器进行设计和实现。

通过计算和绘制滤波器的频率响应曲线,确定了窗函数的形状和窗长度。

在实际实验中,我们通过实现一个滤波器功能的matlab程序来验证滤波器的性能。

通过输入不同频率和幅度的信号,观察滤波器对信号的影响,验证了设计的滤波器的功能有效性。

五、实验总结通过本实验,我们深入了解了FIR滤波器的设计原理和实现方法。

通过设计和实现一个具体的滤波器,我们掌握了滤波器类型和阶数的选择方法,以及系数的确定方法。

FIR数字滤波器的设计

FIR数字滤波器的设计

四、实验内容
2、fir2函数:设计具有任意频率特性的FIR滤波器 b=fir2(n,f,m): 设计一个n阶滤波器,幅频响应向量由
输入参数f,a决定。 f频率向量,取值范围为(0.0,1.0),1对应0.5fs. f的元
素以升序排列。 2 、b=fir2(n, f,m,window): window: 指定所使用的窗函数的类型,其长度为n+1,默
四、实验内容
subplot(2,2,3); plot(rad,20*log(abs(mag3))); grid on; subplot(2,2,4); plot(rad,20*log(abs(mag4))); grid on;
四、实验内容
1、fir1函数:设计具有标准频率特性的FIR滤波器 (1)b=fir1(n,wn): 返回所设计的阶的低通FIR滤波器,
2、根据性能要求,合理选择单位脉冲响应h(n)的奇偶对称性,从而确定 理想频率响应 H d (的e jw幅) 频择适当的窗函数w(n),根据 h(n) hd (n) 求w所N (需n)设计
的FIR滤波器单位脉冲响应
5、求 H d (e分jw )析其幅频特性,若不满足要求,可适当改变窗函数形式 或长度N,重复上述设计过程,以得到满意的结果。
三、实验原理
分别用以上函数生成n=50的窗函数,并观察其频率特性 (使用归一化的幅值和频率)
三、实验原理
n=51; window=boxcar(n); [h,w]=freqz(window,1); subplot(2,1,1) stem(window); subplot(2,1,2) plot(w/pi,20*log(abs(h)/abs(h(1))));
三、实验原理
n=51; window=triang(n); [h,w]=freqz(window,1); subplot(2,1,1) stem(window); subplot(2,1,2) plot(w/pi,20*log(abs(h)/abs(h(1))));

实验项目名称FIR数字滤波器设计及软件实现

实验项目名称FIR数字滤波器设计及软件实现

实验项目名称 FIR数字滤波器设计及软件实现一、实验目的(1)掌握用窗函数法设计FIR数字滤波器的原理和方法。

(2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。

(3)掌握FIR滤波器的快速卷积实现原理。

(4)学会调用MA TLAB函数设计与实现FIR滤波器。

二、实验内容及步骤(1)认真复习第七章中用窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理.(2)调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及其频谱.(3)请设计低通滤波器,从高频噪声中提取xt中的单频调幅信号,要求信号幅频失真小于0.1dB,将噪声频谱衰减60dB。

先观察xt的频谱,确定滤波器指标参数。

(4)根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MA TLAB函数fir1设计一个FIR低通滤波器。

并编写程序,调用MA TLAB快速卷积函数fftfilt实现对xt的滤波。

绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。

三、实验程序及结果分析选择滤波器指标参数:通带截止频率fp=120Hz,阻带截至频率fs=150Hz。

代入采样频率Fs=1000Hz,换算成数字频率,通带截止频率p 20.24pfωπ=T=π,通带最大衰为0.1dB,阻带截至频率s 20.3sfωπ=T=π,阻带最小衰为60dB。

所以选取blackman窗函数。

与信号产生函数xtg相同,采样频率Fs=1000Hz。

(1)生成具有加性噪声的信号xtfunction xt=xtg(N)N=1000;Fs=1000;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;fc=Fs/10;f0=fc/10;mt=cos(2*pi*f0*t);ct=cos(2*pi*fc*t);xt=mt.*ct;nt=2*rand(1,N)-1;fp=150; fs=200;Rp=0.1;As=70;fb=[fp,fs];m=[0,1];dev=[10^(-As/20),(10^(Rp/20)-1)/(10^(Rp/20)+1)];[n,fo,mo,W]=remezord(fb,m,dev,Fs);hn=remez(n,fo,mo,W);yt=filter(hn,1,10*nt);xt=xt+yt;fst=fft(xt,N);k=0:N-1;f=k/Tp;subplot(2,1,1);plot(t,xt);grid;xlabel('t/s');ylabel('x(t)');axis([0,Tp/5,min(xt),max(xt)]);title('(a) 信号加噪声波形')subplot(2,1,2);plot(f,abs(fst)/max(abs(fst)));grid;title('(b) 信号加噪声的频谱')axis([0,Fs/2,0,1.2]);xlabel('f/Hz');ylabel('幅度')00.020.040.060.080.10.120.140.160.180.2-10-5510t/sx (t )(a) 信号加噪声波形05010015020025030035040045050000.51(b) 信号加噪声的频谱f/Hz 幅度图一(2)窗函数法设计低通滤波器clear all;close all;N=1000;xt=xtg(N);fp=120; fs=150;Rp=0.2;As=60;Fs=1000;wc=(fp+fs)/Fs;B=2*pi*(fs-fp)/Fs;Nb=ceil(11*pi/B);hn=fir1(Nb-1,wc,blackman(Nb));Hw=abs(fft(hn,1024));ywt=fftfilt(hn,xt,N);H=abs(fft(ywt,1024));f=[0:1023]*Fs/1024;figure;subplot(3,1,1)plot(f,20*log10(Hw/max(Hw)));grid;title('(a) 低通滤波器幅频特性')axis([0,Fs/2,-120,20]);xlabel('f/Hz');ylabel('幅度')t=[0:N-1]/Fs;Tp=N/Fs;subplot(3,1,2)plot(t,ywt);grid;axis([0,Tp/2,-1,1]);xlabel('t/s');ylabel('y_w(t)');title('(b) 滤除噪声后的信号波形')subplot(3,1,3)plot(f,20*log10(H/max(H)));grid;title('(c) 滤波输出信号幅频特性')axis([0,Fs/2,-120,20]);xlabel('f/Hz');ylabel('幅度')050100150200250300350400450500-100-50(a) 低通滤波器幅频特性f/Hz幅度00.050.10.150.20.250.30.350.40.450.5-101t/sy w (t )(b) 滤除噪声后的信号波形050100150200250300350400450500-100-50(c) 滤波输出信号幅频特性f/Hz 幅度图二分析:由图一知信号频谱在100Hz 左右,其中掺杂了一些高频噪声。

最新实验5FIR数字滤波器设计与软件实现

最新实验5FIR数字滤波器设计与软件实现

信息院 14电信(师范)1实验五:FIR数字滤波器设计与软件实现23一、实验指导41.实验目的5(1)掌握用窗函数法设计FIR数字滤波器的原理和方法。

6(2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。

7(3)掌握FIR滤波器的快速卷积实现原理。

8(4)学会调用MATLAB函数设计与实现FIR滤波器。

92.实验内容及步骤1011(1)认真复习第七章中用窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理;1213(2)调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及14其频谱,如图1所示;1516图1 具有加性噪声的信号x(t)及其频谱如图17程序代码:(信号产生函数xtg程序清单)18function xt=xtg(N)19%ʵÑéÎåÐźÅx(t)²úÉú,²¢ÏÔʾÐźŵķùƵÌØÐÔÇúÏß20%xt=xtg(N)21²úÉúÒ»¸ö³¤¶ÈΪN,ÓмÓÐÔ¸ßƵÔëÉùµÄµ¥Æµµ÷·ùÐźÅxt,²ÉÑùƵÂÊ22Fs=1000Hz23%Ôز¨ÆµÂÊfc=Fs/10=100Hz,µ÷ÖÆÕýÏÒ²¨ÆµÂÊf0=fc/10=10Hz.24N=1000;Fs=1000;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;2526fc=Fs/10;f0=fc/10; %Ôز¨ÆµÂÊfc=Fs/10£¬µ¥Æµµ÷ÖÆÐźÅƵÂÊΪf0=Fc/10;2728mt=cos(2*pi*f0*t); %²úÉúµ¥ÆµÕýÏÒ²¨µ÷ÖÆÐźÅmt£¬ÆµÂÊΪf 29ct=cos(2*pi*fc*t); %²úÉúÔز¨ÕýÏÒ²¨ÐźÅct£¬ÆµÂÊΪfc3031xt=mt.*ct; %Ïà³Ë²úÉúµ¥Æµµ÷ÖÆÐźÅxt32nt=2*rand(1,N)-1; %²úÉúËæ»úÔëÉùnt33%=======Éè¼Æ¸ßͨÂ˲¨Æ÷hn,ÓÃÓÚÂ˳ýÔëÉùntÖеĵÍƵ³É·Ö, 34Éú³É¸ßͨÔëÉù=======35fp=150; fs=200;Rp=0.1;As=70; % Â˲¨Æ÷Ö¸±êfb=[fp,fs];m=[0,1]; %3637¼ÆËãremezordº¯ÊýËùÐè²ÎÊýf,m,dev38dev=[10^(-As/20),(10^(Rp/20)-1)/(10^(Rp/20)+1)];[n,fo,mo,W]=remezord(fb,m,dev,Fs); %3940È·¶¨remezº¯ÊýËùÐè²ÎÊý41hn=remez(n,fo,mo,W); %42µ÷ÓÃremezº¯Êý½øÐÐÉè¼Æ,ÓÃÓÚÂ˳ýÔëÉùntÖеĵÍƵ³É·Ö43yt=filter(hn,1,10*nt); %Â˳ýËæ»úÔëÉùÖеÍƵ³É·Ö£¬Éú44³É¸ßͨÔëÉùyt45%======================================================= 46=========47xt=xt+yt; %ÔëÉù¼ÓÐźÅ48fst=fft(xt,N);k=0:N-1;f=k/Tp;subplot(3,1,1);plot(t,xt);grid;xlabel('t/s');ylabel('x(t4950)');51axis([0,Tp/5,min(xt),max(xt)]);title('(a)52ÐźżÓÔëÉù²¨ÐÎ')53subplot(3,1,2);plot(f,abs(fst)/max(abs(fst)));grid;title 54('(b) ÐźżÓÔëÉùµÄƵÆ×')55axis([0,Fs/2,0,1.2]);xlabel('f/Hz');ylabel('·ù¶È')56输出波形:5758(3)请设计低通滤波器,从高频噪声中提取xt中的单频调幅信号,要求信号幅频失真小于0.1dB,将噪声频谱衰减60dB。

FIR数字滤波器课程设计报告

FIR数字滤波器课程设计报告

FIR数字滤波器课程设计报告数字滤波器是一种通过数字信号处理来实现滤波的设备,主要用于去除信号中的噪声或不需要的频率成分。

在本次课程设计中,我们将设计一个FIR(有限冲激响应)数字滤波器,用于对输入信号进行滤波处理。

一、设计目标设计一个离散时间FIR数字滤波器,具有以下特点:1.滤波器类型:低通滤波器2.滤波器阶数:10阶3.截止频率:2kHz4.采样频率:4kHz二、设计步骤1.确定滤波器系数:根据滤波器类型、阶数和截止频率,利用滤波器设计工具进行计算,得到滤波器的系数。

2.实现滤波器:将滤波器系数作为滤波器的输入,通过算法实现滤波器的功能。

3.验证滤波器性能:使用信号发生器生成一组测试信号,将其输入到滤波器中,并通过示波器观察滤波后的信号波形。

三、滤波器系数计算1.选择滤波器类型为低通滤波器,即希望通过滤波器的信号为低频信号,而将高频信号滤除。

2.选择滤波器阶数为10阶,即滤波器具有10个延迟单元。

3.选择截止频率为2kHz,即希望2kHz以下的信号通过滤波器,2kHz以上的信号被滤除。

四、滤波器实现采用直接型FIR滤波器结构来实现该低通滤波器。

具体算法如下:1.输入信号x(n)和滤波器系数h(n),其中n表示时刻。

2.延时单元:将输入信号每次延迟一个单位,即x(n)→x(n-1)。

3.权重系数:将延时后的信号与对应的滤波器系数相乘得到权重系数,即a(n)=x(n-1)×h(n)。

4.累加求和:将所有的权重系数相加求和得到输出信号,即y(n)=∑a(n)。

五、滤波器性能验证使用信号发生器产生频率为1kHz,幅度为1V的正弦波信号作为输入信号,将其输入到滤波器中,并通过示波器观察滤波后的信号波形。

同时,使用频谱分析仪观察滤波前后信号的频谱图,并比较滤波效果。

六、总结与改进通过本次课程设计,我们成功设计并实现了一个FIR数字滤波器。

滤波器具有低通特性,能够有效滤除高频信号,保留低频信号。

FIR滤波器设计与实现实验报告

FIR滤波器设计与实现实验报告

FIR滤波器设计与实现实验报告目录一、实验概述 (2)1. 实验目的 (3)2. 实验原理 (3)3. 实验设备与工具 (4)4. 实验内容与步骤 (6)5. 实验数据与结果分析 (7)二、FIR滤波器设计 (8)1. 滤波器设计基本概念 (9)2. 系数求解方法 (10)频谱采样法 (11)最小均方误差法 (14)3. 常用FIR滤波器类型 (15)线性相位FIR滤波器 (16)非线性相位FIR滤波器 (18)4. 设计实例与比较 (19)三、FIR滤波器实现 (20)1. 硬件实现基础 (21)2. 软件实现方法 (22)3. 实现过程中的关键问题与解决方案 (23)4. 滤波器性能评估指标 (25)四、实验结果与分析 (26)1. 实验数据记录与处理 (27)2. 滤波器性能测试与分析 (29)通带波动 (30)虚部衰减 (31)相位失真 (32)3. 与其他设计方案的对比与讨论 (33)五、总结与展望 (34)1. 实验成果总结 (35)2. 存在问题与不足 (36)3. 未来发展方向与改进措施 (37)一、实验概述本次实验的主要目标是设计并实现一个有限脉冲响应(Finite Impulse Response,简称FIR)滤波器。

FIR滤波器是数字信号处理中常用的一种滤波器,具有线性相位响应和易于设计的优点。

本次实验旨在通过实践加深我们对FIR滤波器设计和实现过程的理解,提升我们的实践能力和问题解决能力。

在实验过程中,我们将首先理解FIR滤波器的基本原理和特性,包括其工作原理、设计方法和性能指标。

我们将选择合适的实验工具和环境,例如MATLAB或Python等编程环境,进行FIR滤波器的设计。

我们还将关注滤波器的实现过程,包括代码编写、性能测试和结果分析等步骤。

通过这次实验,我们期望能够深入理解FIR滤波器的设计和实现过程,并能够将理论知识应用到实践中,提高我们的工程实践能力。

本次实验报告将按照“设计原理设计方法实现过程实验结果与分析”的逻辑结构进行组织,让读者能够清晰地了解我们实验的全过程,以及我们从中获得的收获和启示。

实验五 FIR数字滤波器的设计共24页

实验五 FIR数字滤波器的设计共24页
实验五 FIR数字滤波器的设 计
41、实际上,我们想要的不是针对犯 罪的法 律,而 是针对 疯狂的 法律。 ——马 克·吐温 42、法律的力量应当跟随着公民,就 像影子 跟随着 身体一 样。— —贝卡 利亚 43、法律和制度必须跟上人类思想进 步。— —杰弗 逊 44、人类受制于ຫໍສະໝຸດ 律,法律受制于情 理。— —托·富 勒
45、法律的制定是为了保证每一个人 自由发 挥自己 的才能 ,而不 是为了 束缚他 的才能 。—— 罗伯斯 庇尔
41、学问是异常珍贵的东西,从任何源泉吸 收都不可耻。——阿卜·日·法拉兹
42、只有在人群中间,才能认识自 己。——德国
43、重复别人所说的话,只需要教育; 而要挑战别人所说的话,则需要头脑。—— 玛丽·佩蒂博恩·普尔
44、卓越的人一大优点是:在不利与艰 难的遭遇里百折不饶。——贝多芬
45、自己的饭量自己知道。——苏联
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五FIR 数字滤波器的设计.一. 实验目的(1)掌握用窗函数法,频率采样法及优化设计法设计FIR 滤波器的原理及方法。

(2)熟悉线性相位FIR 滤波器的幅频特性和相频特性。

(3)了解各种不同窗函数对滤波器性能的影响。

.二. 实验内容(1) N=45,计算并画出矩形窗、汉明窗、布莱克曼窗的归一化的幅度谱,并比较各自的主要特点。

clear all;N=45;wn1=kaiser(N,0);wn2=hamming(N);wn3=blackman(N);[h1,w1] = freqz(wn1,N);[h2,w2] = freqz(wn2,N);[h3,w3] = freqz(wn3,N);plot(w1/pi,20*log10(abs(h1)),'-',w2/pi,20*log10(abs(h2)),'--',w3/pi,20*log10(abs(h3)),':');axis([0,1,-120,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('三种窗口函数');legend('矩形窗','汉明窗','布莱克曼窗',3);分析:(2) N=15,带通滤波器的两个通带边界分别是ω1=0.3π,ω2=0.5π。

用汉宁窗设计此线性相位带通滤波器,观察它的实际3dB 和20dB 带宽。

N=45,重复这一设计,观察幅频和相位特性的变化,注意长度N 变化的影响。

clear all;N=15;h= fir1(N-1,[0.3 0.5],'bandpass',hanning(N));figure(1)freqz(h,1)title('N=15,汉宁窗');N=45;h= fir1(N-1,[0.3 0.5],'bandpass',hanning(N));figure(2)freqz(h,1)title('N=45,汉宁窗');分析:(3) 分别改用矩形窗和布莱克曼窗,设计(2)中的带通滤波器,观察并记录窗函数对滤波器幅频特性的影响,比较三种窗的特点。

clear all;%矩形窗N=15;h= fir1(N-1,[0.3 0.5],'bandpass',kaiser(N,0));[h1,w1]=freqz(h,1);subplot(2,1,1); plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('N=15,矩形窗');N=45;h= fir1(N-1,[0.3 0.5],'bandpass',kaiser(N,0));[h1,w1]=freqz(h,1);subplot(2,1,2); plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('N=45,矩形窗');clear all;%布莱克曼窗N=15;h= fir1(N-1,[0.3 0.5],'bandpass',blackman(N));[h1,w1]=freqz(h,1);subplot(2,1,1);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('N=15,布莱克曼窗');N=45;h= fir1(N-1,[0.3 0.5],'bandpass',blackman(N));[h1,w1]=freqz(h,1);subplot(2,1,2);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('N=45,布莱克曼窗');分析:(4) 用Kaiser 窗设计一专用线性相位滤波器,N=40,当β=4、6、10 时,分别设计、比较它们的幅频和相频特性,注意β取不同值时的影响。

clear all;N=40;f = [0 0.2 0.2 0.4 0.4 0.6 0.6 0.8 0.8 1];a = [0 0 1 1 0 0 1 1 0 0];beta=4;h = fir2(N-1,f,a,kaiser(N,beta));[h1,w1]=freqz(h,1);subplot(3,1,1);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('beta=4 时凯塞窗专用线性相位滤波器');beta=6;h = fir2(N-1,f,a,kaiser(N,beta));[h1,w1]=freqz(h,1);subplot(3,1,2);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('beta=6 时凯塞窗专用线性相位滤波器');beta=10;h = fir2(N-1,f,a,kaiser(N,beta));[h1,w1]=freqz(h,1);subplot(3,1,3);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi'); ylabel('幅度/dB');title('beta=10 时凯塞窗专用线性相位滤波器');分析:(5) 用频率采样法设计(4)中的滤波器,过渡带分别设一个过渡点,令H(k)=0.5。

比较两种不同方法的结果。

clear all;N=40;Hk=[zeros(1,3) 0.5 ones(1,5) 0.5 zeros(1,1) 0.5 ones(1,5) 0.5 ...zeros(1,5) -0.5 -ones(1,5) -0.5 zeros(1,1) -ones(1,5) -0.5 zeros(1,3)];k=0:N-1;hn=real(ifft(Hk.*exp(-j*pi*(N-1)*k/N)));[H w]=freqz(hn, 1);plot(w/pi, 20*log10(abs(H)));axis([0 1 -80 10]);grid;xlabel('归一化频率/\pi')ylabel('幅度/dB')title('频率采样法设计专用线性相位滤波器');(5)的分析归入(6)中,将三种滤波器一起对比(6) 用雷米兹(Remez)交替算法设计(4)中的滤波器,并比较(4)、(5)、(6)三种不同方法的结果。

clear all;N=40;f=[0 0.15 0.2 0.4 0.45 0.55 0.6 0.8 0.85 1];a=[0 0 1 1 0 0 1 1 0 0];wt=[2 1 2 1 2];b=remez(N-1,f,a,wt);[h,w]=freqz(b,1);plot(w/pi,20*log10(abs(h)));axis([0 1 -70 10]);grid;xlabel('归一化频率/\pi')ylabel('幅度/dB')title('雷米兹交替算法设计专用线性相位滤波器');分析:(7) 利用雷米兹交替算法,设计一个线性相位高通FIR 数字滤波器,其指标为:通带边界频率f c=800Hz,阻带边界频率f r=500Hz,通带波动δ=1dB,阻带最小衰减At=40dB,采样频率f s=5000Hz。

clear all;fedge=[500 800];mval=[0 1];dev=[0.01 0.109];fs=5000;[N,fpts,mag,wt]=remezord(fedge,mval,dev,fs);b=remez(N,fpts,mag,wt);[h,w]=freqz(b,1);plot(w*2500/pi,20*log10(abs(h)));axis([0 2500 -80 10]);grid;xlabel('频率/Hz')ylabel('幅度/dB')title('雷米兹交替算法设计线性相位高通FIR 数字滤波器');.三. 思考题(1)定性地说明用本实验程序设计的FIR 滤波器的3dB 截止频率在什么位置?它等于理想频率响应H d (e jω)的截止频率吗?(2)如果没有给定h(n)的长度N,而是给定了通带边缘截止频率ωc 和阻带临界频率ωp,以及相应的衰减,能根据这些条件用窗函数法设计线性相位FIR 低通滤波器吗?.四. 实验总结。

相关文档
最新文档