数字滤波器的设计实验

合集下载

IIR数字滤波器设计实验报告

IIR数字滤波器设计实验报告

实验三IIR数字滤波器设计实验报告一、实验目的:1.通过仿真冲激响应不变法和双线性变换法2.掌握滤波器性能分析的基本方法二、实验要求:1.设计带通IIR滤波器2.按照冲激响应不变法设计滤波器系数3. 按照双线性变换法设计滤波器系数4. 分析幅频特性和相频特性5. 生成一定信噪比的带噪信号,并对其滤波,对比滤波前后波形和频谱三、基本原理:㈠IIR模拟滤波器与数字滤波器IIR数字滤波器的设计以模拟滤波器设计为基础,常用的类型分为巴特沃斯(Butterworth)、切比雪夫(Chebyshev)Ⅰ型、切比雪夫Ⅱ型、贝塞尔(Bessel)、椭圆等多种。

在MATLAB信号处理工具箱里,提供了这些类型的IIR数字滤波器设计子函数。

(二)性能指标1.假设带通滤波器要求为保留6000hz~~7000hz频段,滤除小于2000hz和大宇9000hz频段2.通带衰减设为3Db,阻带衰减设为30dB,双线性变换法中T取1s.四、实验步骤:1.初始化指标参数2.计算模拟滤波器参数并调用巴特沃斯函数产生模拟滤波器3.利用冲激响应不变法和双线性变换法求数字IIR滤波器的系统函数Hd (z)4.分别画出两种方法的幅频特性和相频特性曲线5.生成一定信噪比的带噪信号6.画出带噪信号的时域图和频谱图6.对带噪信号进行滤波,并画出滤波前后波形图和频谱图五、实验结果模拟滤波器的幅频特性和相频特性:101010101Frequency (rad/s)P h a s e (d e g r e e s )1010101011010-5100Frequency (rad/s)M a g n i t u d e在本实验中,采用的带通滤波器为6000-7000Hz ,换算成角频率为4.47-0.55,在上图中可以清晰地看出到达了题目的要求。

冲击响应不变法后的幅频特性和相频特性:0.10.20.30.40.50.60.70.80.91Normalized Frequency (⨯π rad/sample)P h a s e (d e g r e e s )0.10.20.30.40.50.60.70.80.91Normalized Frequency (⨯π rad/sample)M a g n i t u d e (d B )双线性变换法的幅频特性和相频特性:0.10.20.30.40.50.60.70.80.91Normalized Frequency (⨯π rad/sample)P h a s e (d e g r e e s )00.10.20.30.40.50.60.70.80.91Normalized Frequency (⨯π rad/sample)M a g n i t u d e (d B )通过上图比较脉冲响应不变法双线性变换法的幅频特性和相频特性,而在在幅频曲线上几乎没有差别,都能达到相同的结果。

实验7 窗函数法设计FIR数字滤波器

实验7 窗函数法设计FIR数字滤波器

实验7窗函数法设计FIR数字滤波器一、实验目的掌握窗函数法设计F1R数字滤波器的原理和具体方法二、实验设备与环境计算机、Mat1ab软件环境三、实验基础理论1>基本原理窗函数设计法的基本思想为,首先选择一个适当的理想的滤波器Hd(,3),然后用窗函数截取它的单位脉冲响应%(九),得到线性相位和因果的FIR滤波器,这种方法的重点是选择一个合适的窗函数和理想滤波器,使设计的滤波器的单位脉冲响应逼近理想滤波器的单位脉冲响应。

2、设计步骤(1)给定理想滤波器的频率响应Hd("3),在通带上具有单位增益和线性相位,在阻带上具有零响应。

一个带宽为g(3c<Tr)的低通滤波器由下式给定h(e j^=(eW∣ω∣≤ωc虱)一1Oωc<∣ω∣<π其中α为采样延迟,其作用是为了得到因果的系统。

(2)确定这个滤波器的单位脉冲响应为了得到一个h(n)长度为N的因果的线性相位FIR滤波器,我们令N-Ia=-2-(3)用窗函数截取hd(τι)得到所设计FIR数字滤波器h(n)h(n)=h d(n)w(n)3、窗函数的选择常用的窗函数有矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗等。

Mat1ab提供了一些函数用于产生窗函数,如下表所示:在设计过程中我们需要根据给定的滤波器技术指标,选择滤波器长度N 和窗函数3(n)°表7.2列出了常用的窗函数的一些特性,可供设计时参考。

其中幻是修正的零阶贝塞尔函数,参数B 控制最小阻带衰减,这种窗函数对于相同的N 可以提供不同的过渡带宽。

由于贝塞尔函数比较更杂,这种窗函数的设计方程很难推导,然而幸运的是,有一些经验设计方程可以直接使用。

已知给定的指标叫Msc,Rp 和4,滤波器长度N 和凯瑟窗参数B 可以按如下凯瑟窗设计方程给出过渡带宽:∆ω=ωst -ωp入一7.95 2.285∆ω_(0.1102(4-8.7) ,P=iθ.5842(4-21)04+0.07886(4-21), 四、实验内容1、设计一个数字低通FIR 滤波器,其技术指标如下ωp =0.2τr,RP=0.25dBωst =0.3τr,A s =50dB分别采用矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗设计该滤波器。

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

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

实验四FIR数字滤波器的设计
FIR(有限冲击响应)数字滤波器是一种常见的数字信号处理器件,
可以用于滤波、降噪等应用。

下面是一种FIR数字滤波器的设计流程:
1.确定滤波器的需求:首先确定需要滤除的频率范围和滤波的类型,
例如低通、高通、带通、带阻等等。

2.设计滤波器的频率响应:根据滤波器的需求,设计其理想的频率响应。

可以使用窗函数、最小二乘法等方法获得一个理想的滤波器响应。

3.确定滤波器的阶数:根据设计的频率响应,确定滤波器的阶数。


数越高,滤波器的响应越陡峭,但计算复杂度也会增加。

4.确定滤波器的系数:根据滤波器的阶数和频率响应,计算滤波器的
系数。

可以使用频域窗函数或时域设计方法。

5.实现滤波器:根据计算得到的滤波器系数,实现滤波器的计算算法。

可以使用直接形式、级联形式、传输函数形式等。

6.评估滤波器的性能:使用所设计的FIR滤波器对输入信号进行滤波,评估其滤波效果。

可以使用频率响应曲线、幅频响应、群延时等指标进行
评估。

7.调整滤波器设计:根据实际的滤波效果,如果不满足需求,可以调
整滤波器的频率响应和阶数,重新计算滤波器系数,重新实现滤波器。

以上是FIR数字滤波器的基本设计流程,设计过程中需要考虑滤波器
的性能、计算复杂度、实际应用需求等因素。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

数字信号处理实验FIR数字滤波器的设计

数字信号处理实验FIR数字滤波器的设计

数字信号处理实验:FIR数字滤波器的设计1. 引言数字滤波器是数字信号处理的关键技术之一,用于对数字信号进行滤波、降噪、调频等操作。

FIR (Finite Impulse Response) 数字滤波器是一种常见的数字滤波器,具有线性相应和有限的脉冲响应特性。

本实验旨在通过设计一个FIR数字滤波器来了解其基本原理和设计过程。

2. FIR数字滤波器的基本原理FIR数字滤波器通过对输入信号的每一个样本值与滤波器的冲激响应(滤波器的系数)进行线性加权累加,来实现对信号的滤波。

其数学表达式可以表示为:y(n) = b0 * x(n) + b1 * x(n-1) + b2 * x(n-2) + ... + bN * x(n-N)其中,y(n)表示滤波器的输出,x(n)表示滤波器的输入信号,b0~bN表示滤波器的系数。

FIR数字滤波器的脉冲响应为有限长度的序列,故称为有限冲激响应滤波器。

3. FIR数字滤波器的设计步骤FIR数字滤波器的设计主要包括以下几个步骤:步骤1: 确定滤波器的阶数和截止频率滤波器的阶数决定了滤波器的复杂度和性能,而截止频率决定了滤波器的通带和阻带特性。

根据实际需求,确定滤波器的阶数和截止频率。

步骤2: 选择滤波器的窗函数窗函数是FIR滤波器设计中常用的一种方法,可以通过选择不同的窗函数来实现不同的滤波器特性。

常用的窗函数有矩形窗、汉宁窗、汉明窗等。

根据实际需求,选择合适的窗函数。

步骤3: 计算滤波器的系数根据选择的窗函数和滤波器的阶数,使用相应的公式或算法计算滤波器的系数。

常见的计算方法有频率采样法、窗函数法、最小二乘法等。

步骤4: 实现滤波器根据计算得到的滤波器系数,可以使用编程语言或专用软件来实现滤波器。

步骤5: 评估滤波器性能通过输入测试信号,观察滤波器的输出结果,评估滤波器的性能和滤波效果。

常见评估指标有滤波器的幅频响应、相频响应、群延迟等。

4. 实验步骤本实验将以Matlab软件为例,演示FIR数字滤波器的设计步骤。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

数字滤波器设计实验报告

数字滤波器设计实验报告

数字滤波器设计实验报告刘古城65100609一、实验目的研究数字滤波器的设计思想,理解数字频域,模拟频域的关系,掌握数字系统处理模拟信号的方法。

FIR数字滤波器设计:掌握窗函数设计FIR数字滤波器的方法,理解FIR的意义:线性相位。

二、实验原理1、FIR的特点(1)系统的单位冲击响应在有限个n值处不为零。

(2)对于稳定系统,系统函数在| z |>0处收敛,极点全部在z=0处。

(3)结构上主要是非递归结构,没有输出到输入的反馈,但在个别结构中(如频率抽样结构)也包含反馈的递归部分‘2、FIR滤波器的优点(1)即具有严格的线性相位,又具有任意的幅度’(2)FIR滤波器的抽样响应是有限长的,因而滤波器的性能稳定。

(3)只要经过一定的延时,任何非因果的有限长序列都能变成有限长的因果的序列,因而能用因果系统来实现。

(4)FIR滤波器单位冲击响应是有限长的,因而可以进行快速傅立叶变换,提高运算效率。

3、用窗函数设计FIR数字滤波器对函数加窗处理,实际是用一个有限长函数来逼近原函数。

常用的窗函数有矩形窗、三角窗,汉宁窗、海明窗、布莱克曼窗、凯撒窗等。

三、实验要求1、设计FIR数字低通滤波器,要求在不同窗口长度(N=15,33)下,分别求出h(n),画出相应的幅频特性和相频特性曲线,观察3dB带宽和20dB带宽,总结窗口长度N对滤波特性的影响。

2、对三个拟合三角函数进行滤波处理。

3、对含噪心电信号函数进行滤波处理。

四、实验内容1、不同窗函数长度对于滤波特性的影响fs=100,N=32;n=0:N-1;t=n/fs;f0=n*fs/N;y=exp(-2*t);z=fft(y);m=abs(z);w1=blackman(N);z1=w1'.*y;x1=fft(z1),mo1=abs(x1);subplot(1,2,1);plot(f0,m/fs);subplot(1,2,2);plot(f0,mo1/fs)运行结果改变N值,令N=14,得到结果2、对三个拟合三角函数进行滤波clear;fs=2000;t=(1:1000)/fs;x=10*cos(2*pi*30*t)+cos(2*pi*150*t)+5*cos(2*pi*600*t); L=length(x);N=2^(nextpow2(L));Hw=fft(x,N);figure(1);subplot(2,1,1);plot(t,x);grid on;title('滤波前信号x');xlabel('时间/s');% 原始信号subplot(2,1,2);plot((0:N-1)*fs/L,abs(Hw));% 查看信号频谱grid on;title('滤波前信号频谱图');xlabel('频率/Hz');ylabel('振幅|H(e^jw)|');%% x_1=10*cos(2*pi*30*t)Ap=1;As=60;% 定义通带及阻带衰减dev=[(10^(Ap/20)-1)/(10^(Ap/20)+1),10^(-As/20)];% 计算偏移量mags=[1,0];% 低通fcuts=[60,100];% 边界频率[N,Wn,beta,ftype]=kaiserord(fcuts,mags,dev,fs);% 估算FIR滤波器阶数hh1=fir1(N,Wn,ftype,kaiser(N+1,beta));% FIR滤波器设计x_1=filter(hh1,1,x);% 滤波x_1(1:ceil(N/2))=[];% 群延时N/2,删除无用信号部分L=length(x_1);N=2^(nextpow2(L));Hw_1=fft(x_1,N);figure(2);subplot(2,1,1);plot(t(1:L),x_1);grid on;title('x_1=10*cos(2*pi*30*t)');xlabel('时间/s');subplot(2,1,2);plot((0:N-1)*fs/L,abs(Hw_1));% 查看信号频谱grid on;title('滤波后信号x_1频谱图');xlabel('频率/Hz');ylabel('振幅|H(e^jw)|');%% x_2=cos(2*pi*150*t)Ap=1;As=60;% 定义通带及阻带衰减dev=[10^(-As/20),(10^(Ap/20)-1)/(10^(Ap/20)+1),10^(-As/20)];% 计算偏移量mags=[0,1,0];% 带通fcuts=[80,120,180,220];% 边界频率[N,Wn,beta,ftype]=kaiserord(fcuts,mags,dev,fs);% 估算FIR滤波器阶数hh2=fir1(N,Wn,ftype,kaiser(N+1,beta));% FIR滤波器设计x_2=filter(hh2,1,x);% 滤波x_2(1:ceil(N/2))=[];% 群延时N/2,删除无用信号部分L=length(x_2);N=2^(nextpow2(L));Hw_2=fft(x_2,N);figure(3);subplot(2,1,1);plot(t(1:L),x_2);grid on;title('x_2=cos(2*pi*150*t)');xlabel('时间/s');subplot(2,1,2);plot((0:N-1)*fs/L,abs(Hw_2));% 查看信号频谱grid on;title('滤波后信号x_2频谱图');xlabel('频率/Hz');ylabel('振幅|H(e^jw)|');%% x_3=5*cos(2*pi*600*t)Ap=1;As=60;% 定义通带及阻带衰减dev=[10^(-As/20),(10^(Ap/20)-1)/(10^(Ap/20)+1)];% 计算偏移量mags=[0,1];% 高通fcuts=[500,550];% 边界频率[N,Wn,beta,ftype]=kaiserord(fcuts,mags,dev,fs);% 估算FIR滤波器阶数hh2=fir1(N,Wn,ftype,kaiser(N+1,beta));% FIR滤波器设计x_3=filter(hh2,1,x);% 滤波x_3(1:ceil(N/2))=[];% 群延时N/2,删除无用信号部分L=length(x_3);N=2^(nextpow2(L));Hw_3=fft(x_3,N);figure(4);subplot(2,1,1);plot(t(1:L),x_3);grid on;title('x_3=5*cos(2*pi*600*t)');xlabel('时间/s');subplot(2,1,2);plot((0:N-1)*fs/L,abs(Hw_3));% 查看信号频谱grid on;title('滤波后信号x_3频谱图');xlabel('频率/Hz');ylabel('振幅|H(e^jw)|');运行结果3、对含噪心电信号函数进行滤波处理。

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数字滤波器来滤除信号中的特定频率成分。

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

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二IIR数字滤波器的设计实验内容及步骤:数字滤波器的性能指标:通带临界频率fp、阻带临界频率fr;通带内的最大衰减Ap;阻带内的最小衰减Ar;采样周期T;(1)、fp=0.3KHz,Ap=0.8dB, fr=0.2KHz,Ar=20dB,T=1ms;设计一Chebyshev高通滤波器;观察其通带损耗和阻带衰减是否满足要求。

程序如下:fp=300; fr=200;Ap=0.8; Ar=20;T=0.001;fs=1/T;wp=2*pi*fp*T;wr=2*pi*fr*T;Wp=2/T*tan(wp/2);Wr=2/T*tan(wr/2);[N,Wn]=cheb1ord(Wp,Wr,Ap,Ar,'s');[B,A] = cheby1(N,Ap,Wn,'high','s');[num,den]=bilinear(B,A,1/T);[h,w]=freqz(num,den);plot(w*fs/(2*pi),20*log10(abs(h))); %衰减及频率都用归一化的1为单位显示axis([0,500,-30,0]);title('Chebyshev高通滤波器');xlabel('频率');ylabel('衰减');grid on;根据下图知道通带损耗与阻带衰减满足要求(2)、fp=0.2KHz,Ap=1dB, fr=0.3KHz,Ar=25dB,T=1ms;分别用脉冲响应不变法及双线性变换法设计一Butterworth数字低通滤波器,观察所设计数字滤波器的幅频特性曲线,记录带宽和衰减量,检查是否满足要求。

比较这两种方法的优缺点。

程序如下:fp=200; fr=300;Ap=1;Ar=25;T=0.001;fs=1/T;wp=2*pi*fp*T;wr=2*pi*fr*T;Wp=2/T*tan(wp/2);Wr=2/T*tan(wr/2);[N,Wn]=buttord(Wp,Wr,Ap,Ar,'s');[B,A] = butter(N,Wn,'s');[num1,den1]=impinvar(B,A,1/T); %脉冲响应不变法得出设计的传递函数[num2,den2]=bilinear(B,A,1/T); %双线性变换法得出设计的传递函数[h1,w]=freqz(num1,den1);plot(w*fs/(2*pi),20*log10(abs(h2)),w*fs/(2*pi),20*log10(abs(h1)), 'r.');grid on; %衰减及频率都用归一化的1为单位显示axis([0,500,-30,0]);title('Butterworth低通滤波器(红线—脉冲响应不变法蓝线—双线性变换法)');xlabel('ƵÂÊ');ylabel('Ë¥¼õ');grid on;优缺点:采用脉冲响应不变法优点:1.h(n)完全模仿模拟滤波器的单位抽样响应时域逼近良好2线性相位模拟滤波器转变为线性相位数字滤波器缺点:1.对时域的采样会造成频域的“混叠效应”,故有可能使所设计数字滤波器的频率响应与原来模拟滤波器的频率响应相差很大2不能用来设计高通和带阻滤波器。

只适用于限带的低通、带通滤波器采用双线性变换法优点:1避免了频率响应的混迭失真现象2在特定数字滤波器和特定模拟滤波器处,频率响应是严格相等的,它可以较准确地控制截止频率的位置。

3它是一种简单的代数关系,设计十分方便。

缺点:1除了零频率附近,w与W之间严重非线性,即线性相位模拟滤波器变为非线性相位数字滤波器2要求模拟滤波器的幅频响应为分段常数型,不然会产生畸变3对于分段常数型AF滤波器,经双线性变换后,仍得到幅频特性为分段常数的DF.但在各个分段边缘的临界频率点产生畸变,这种频率的畸变,可通过频率预畸变加以校正(3)、利用双线性变换法分别设计满足下列指标的Butterworth型和Chebyshev型数字低通滤波器,并作图验证设计结果。

f p=1.2kHz, A p≤0.5dB, f r=2KHz, A r≥40dB, f s=8KHz程序如下:fp=1200;fr=2000; Ap=0.5; Ar=40;fs=8000; T=1/fs; wp=2*pi*fp*T; wr=2*pi*fr*T;Wp=2/T*tan(abs(wp/2));Wr=2/T*tan(abs(wr/2));[N,Wn]=buttord(Wp,Wr,Ap,Ar,'s');[B,A] = butter(N,Wn,'s');[num2,den2]=bilinear(B,A,1/T); %双线性变换法得到设计的传递函数[h2,w]=freqz(num2,den2);figure(1);subplot(2,1,1)plot(w/pi*fs/2,10*log10(abs(h2).^2));axis([0 fs/2 -50 0]);title('Butterworth低通滤波器');xlabel('频率 Hz');ylabel('衰减 dB');grid on;subplot(2,1,2)[N,Wn]=cheb1ord(Wp,Wr,Ap,Ar,'s');[B,A] = cheby1(N,Ap,Wn,'s');[num,den]=bilinear(B,A,1/T);[h1,w]=freqz(num,den);plot(w/pi*fs/2,10*log10(abs(h1).^2));axis([0 fs/2 -50 0]);title('chebyshev低通滤波器');xlabel('频率 Hz'); ylabel('衰减 dB');grid on;(4)、利用双线性变换法设计一Butterworth型数字带通滤波器,已知fs=30KHz,其等效的模拟滤波器指标为Ap<3dB, 2KHz<f≤3KHz, Ar≥5dB, f≥6KHz, Ar≥20dB, f≤1.5KHz程序如下:f1=2000; f3=3000;fsl=1500; fsh=6000;rp=3; rs=20;Fs=30000;wp1=2*pi*f1/Fs;wp3=2*pi*f3/Fs;wsl=2*pi*fsl/Fs;wsh=2*pi*fsh/Fs;wp=[wp1 wp3];ws=[wsl wsh];wap=2*Fs*tan(wp./2);was=2*Fs*tan(ws./2);[n,wn]=buttord(wap,was,rp,rs,'s');[z,p,k]=buttap(n);[bp,ap]=zp2tf(z,p,k);bw=wap(2)-wap(1);w0=sqrt(wap(2)*was(1));[bs,as]=lp2bp(bp,ap,w0,bw);[bz1,az1]=bilinear(bs,as,Fs);[h,w]=freqz(bz1,az1,256,Fs);plot(w,20*log10(abs(h)));axis([0 8000 -30 0]);title('Butterworth带通滤波器');xlabel('频率 Hz');ylabel('衰减 dB');grid on;1.双线性变换法中Ω和ω之间的关系是非线性的,在实验中你注意到这种非线性关系了吗?从哪几种数字滤波器的幅频特性曲线中可以观察到这种非线性关系?答:在双线性变换法中,模拟频率与数字频率不再是线性关系,所以一个线性相位模拟器经过双线性变换后得到的数字滤波器不再保持原有的线性相位了。

如以上实验过程中,采用双线性变化法设计的butter和cheby1数字滤波器,从图中可以看到这种非线性关系。

2.能否利用公式完成脉冲响应不变法的数字滤波器设计?为什么?答:不能,这样会使得H(z)中的z以对数形式出现,使H(z)的分子分母不再是z的有理多项式,这样会给系统的分析和实现带来很大的困难。

实验三、FIR数字滤波器的设计实验内容及步骤(1)N=15,。

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

N=45,重复这一设计,观察幅频和相位特性的变化,注意长度N变化的影响;程序如下:N1=15;w1=0.3;w2=0.5;wn=[w1,w2];b1=fir1(N1-1,wn,hanning(N1)); %用Hanning窗作为冲击响应的窗函数figure(1);freqz(b1,1);title('N=15 hanning窗幅频相频特性');N2=45;b2=fir1(N2-1,wn,hanning(N2));figure(2);freqz(b2,1);title('N=45 hanning窗幅频相频特性');由图可知:随着N值的增大,取样值增大,主瓣的宽度减小,但是幅频特性与相频特性曲线的波动频率会增加。

(2)分别改用矩形窗和Blackman窗,设计(1)中的带通滤波器,观察并记录窗函数对滤波器幅频特性的影响,比较三种窗的特点;程序如下:N1=15;w1=0.3; w2=0.5;wn=[w1,w2];b1=fir1(N1-1,wn,boxcar(N1)); %用boxcar作为冲击响应的窗函数figure(1);freqz(b1,1);title('N=15 boxcar窗幅频相频特性');N2=45;b2=fir1(N2-1,wn,boxcar(N2));figure(2);freqz(b2,1);title('N=45 boxca窗幅频相频特性');b3=fir1(N1-1,wn,blackman(N1)); %用blackman作为冲击响应的窗函数figure(3);freqz(b3,1);title('N=15 blackman窗幅频相频特性');N2=45;b4=fir1(N2-1,wn,blackman(N2)); figure(4);freqz(b4,1);title('N=45 blackman窗幅频相频特性');分析:由图可知,在三个窗函数中,Blackman窗的衰减性最好,矩形窗的衰减最差。

相关文档
最新文档