精华内容
下载资源
问答
  • 实验五:FIR 数字滤波器设计与软件实现一、实验目的(1)掌握用窗函数法设计FIR 数字滤波器的原理和方法。(2)掌握用等波纹最佳逼近法设计FIR 数字滤波器的原理和方法。(3)掌握FIR 滤波器的快速卷积实现原理。(4)学会...

    实验五:FIR 数字滤波器设计与软件实现

    一、实验目的

    (1)掌握用窗函数法设计FIR 数字滤波器的原理和方法。

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

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

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

    二、实验内容及步骤

    (1)调用信号产生函数xtg 产生具有加性噪声的信号xt ,并显示xt 及其频谱。观察xt 的频谱,确定滤波器指标参数,设计低通滤波器,从高频噪声中提取xt 中的单频调幅信号,要求信号幅频失真小于0.1dB ,将噪声频谱衰减60dB 。

    (2)根据滤波器指标选择合适的窗函数,计算窗函数的长度N ,调用MATLAB 函数fir1设计一个FIR 低通滤波器,调用函数fftfilt 实现对xt 的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。

    (3)改用等波纹最佳逼近法重新设计滤波器。

    (4)采样频率Fs=1000Hz ,采样周期T=1/Fs , p 20.24p f ωπ=T =π,αp=0.1dB , s 20.3s f ωπ=T =π,αs=60dB 。

    三、实验程序框图:如图一所示

    四、实验程序及实验结果

    c10b043c76c291a3b8f70b42cf855a25.png

    144a995758bd9dac46e58a5290ac59f6.png

    图一 实验程序流程图

    f92215bc455dc4bc9da1bf456bcfda5a.png

    cf6d317245e327eb5cb521b112b74c39.png

    图二 stg 信号与噪声

    展开全文
  • 基于MATLAB的IIR和FIR滤波器设计-实验4 FIR数字滤波器设计.doc IIR:在MATLAB中,可以用下列函数辅助设计IIR数字滤波器:1)利用buttord和cheb1ord可以确定低通原型巴特沃斯和切比雪夫滤波器的阶数和截止频率;2)...
  • 实验6 基于MATLAB 的FIR 数字滤波器设计一、 实验目的(1) 加深对数字滤波器的常用指标理解。 (2) 学习数字滤波器设计方法。 二、 实验原理 低通滤波器1()1()P P P SS H H δδδπ?-≤Ω≤+Ω≤Ω??Ω≤Ω≤Ω≤??...

    实验6 基于MATLAB 的FIR 数字滤波器设计

    一、 实验目的

    (1) 加深对数字滤波器的常用指标理解。 (2) 学习数字滤波器的设计方法。 二、 实验原理 低通滤波器

    a6fe2b6e67f16c29319b7645bfe88151.png

    1()1()P P P S

    S H H δδδπ?-≤Ω≤+Ω≤Ω??

    Ω≤Ω≤Ω≤??

    低通滤波器的常用指标:

    1、 通带边缘频率P Ω,

    2、 阻带边缘频率S

    Ω ,

    3、 通带起伏

    P δ,

    4、

    通带峰值起伏

    ]

    )[1(log

    2010

    dB p p

    δα

    --=,

    5、

    阻带起伏

    s

    δ,最小阻带衰减

    ]

    )[(log 2010dB s S δα-=。

    数字滤波器有IIR 和FIR 两种类型,它们的特点和设计方法不同。

    在MATLAB 中,可以用[b ,a]=butter (N,Wn )等函数辅助设计IIR 数字滤波器, 也可以用b=fir1(N,Wn,’ftype ’) 等函数辅助设计FIR 数字滤波器。 实验内容

    利用MATLAB 编程设计一个数字带通滤波器,指标要求如下:通带边缘频率:

    ,通带峰值起伏:

    ]

    [1dB p

    ≤α

    阻带边缘频率:

    e58a7294a5fef3d53b2fa358584f854a.png

    ,最小阻带衰减: ]

    [40dB S ≥α。

    分别用IIR 和FIR 两种数字滤波器类型进行设计。

    8f1ceaab4040cfb19e6d8d9af902cf50.png

    实验要求:给出IIR 数字滤波器参数和FIR 数字滤波器的冲激响应,绘出它们的幅度和相

    位频响曲线,讨论它们各自的实现形式和特点。 程序:(1)

    wp1=0.4*pi; wp2=0.6*pi; ws1=0.3*pi; ws2=0.7*pi;

    [N,wn]=buttord([wp1 wp2],[ws1 ws2],1,40,'s'); [B,A]=butter(N,wn,'s'); [num,den]=bilinear(B,A,1);

    [h,w]=freqz(num,den);

    S Ω-P

    Ω-P S

    ΩPassband Stopband

    Transition

    band

    Fig 1 Typical magnitude

    specification for a digital LPF

    展开全文
  • 数字信号处理实验FIR数字滤波器设计及软件实现.docx
  • fir数字滤波器设计及matlab使用.doc 数字信号处理课程设计数字信号处理课程设计报告FIR数字滤波器设计及MATLAB实现专业通信工程班级通信1101班组次第9组姓名及学号姓名及学号数字信号处理课程设计第1页组员承担任务...

    41528d3028836879cd698677c3999917.giffir数字滤波器设计及matlab使用.doc

    数字信号处理课程设计数字信号处理课程设计报告FIR数字滤波器设计及MATLAB实现专业通信工程班级通信1101班组次第9组姓名及学号姓名及学号数字信号处理课程设计第1页组员承担任务负责编写基于MATLAB的时域采样理论研究及实现源程序,进行仿真实验,调试、运行,截取实验图形,对实验结果进行分析。深入理解课题含义及设计要求,注意材料收集与整理,对课程设计要求进行最后审核。负责上网查阅或者去图书馆查阅有关课题的资料,并且撰写及修改课程设计的报告,对实验结论的总结,制作课程设计答辩的PPT。指导教师评价意见数字信号处理课程设计第2页目录一、设计目的3二、设计任务3三、设计原理331窗函数法332频率采样法433最优化设计5331等波纹切比雪夫逼近准则5332仿真函数6四、设计过程7五、收获与体会13参考文献13数字信号处理课程设计第3页FIR数字滤波器设计及MATLAB实现一、设计目的FIR滤波器有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。滤波器设计是根据给定滤波器的频率特性,求得满足该特性的传输函数。二、设计任务FIR滤波器设计的任务是选择有限长度的,使传输函数满足一HNJWHE定的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。设计过程一般包括以下三个基本问题(1)根据实际要求确定数字滤波器性能指标;(2)用一个因果稳定的系统函数去逼近这个理想性能指标;(3)用一个有限精度的运算去实现这个传输函数。三、设计原理FIR滤波器设计的任务是选择有限长度的,使传输函数满足一HNJWHE定的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。设计过程一般包括以下三个基本问题(1)根据实际要求确定数字滤波器性能指标;(2)用一个因果稳定的系统函数去逼近这个理想性能指标;(3)用一个有限精度的运算去实现这个传输函数。31窗函数法设计FIR数字滤波器的最简单的方法是窗函数法,通常也称之为傅立叶级数数字信号处理课程设计第4页法。FIR数字滤波器的设计首先给出要求的理想滤波器的频率响应,设计JWDHE一个FIR数字滤波器频率响应,去逼近理想的滤波响应。然而,JWHEJ窗函数法设计FIR数字滤波器是在时域进行的,因而必须由理想的频率响应推导出对应的单位取样响应,再设计一个FIR数字滤波器的单位取JWDHEDHN样响应去逼近。设计过程如下HNDN(3IDTFWNDTFJJDEHE1)加窗的作用是通过把理想滤波器的无限长脉冲响应乘以窗函数来DHNWN产生一个被截断的脉冲响应,即并且对频率响应进行平滑。DHNWMATLAB工具箱提供的窗函数有矩形窗RECTANGULARWINDOW、三角窗TRIANGULARWINDOW、布拉克曼窗BLACKMANWINDOW、汉宁窗HANNINGWINDOW、海明窗HAMMINGWINDOW、凯塞窗KAISERWINDOW、切比雪夫窗CHEBYSHEVWINDOW。窗函数主要用来减少序列因截断而产生的GIBBS效应。但当这个窗函数为矩形时,得到的FIR滤波器幅频响应会有明显的GIBBS效应,并且任意增加窗函数的长度(即FIR滤波器的抽头数)GIBBS效应也不能得到改善。为了克服这种现象,窗函数应该使设计的滤波器(1)频率特性的主瓣宽度应尽量窄,且尽可能将能量集中在主瓣内;(2)窗函数频率特性的旁瓣Ω趋于Π的过程中,其能量迅速减小为零。32频率采样法频率采样法是从频域出发,根据频域采样定理,对给定的理想滤波器的频率响应加以等间隔的抽样,得到JWHEDHKK0,1,,N12KNJWDDKHE(32)再利用可求得FIR滤波器的系统函数及频率响应。DHZJWE而在各采样点间的频率响应则是其的加权内插函数延伸叠加的结果。但数字信号处理课程设计第5页对于一个无限长的序列,用频率采样法必然有一定的逼近误差,误差的大小取决于理想频响曲线的形状,理想频响特性变换越平缓,则内插函数值越接近理想值,误差越小。为了提高逼近的质量,可以通过在频率相应的过渡带内插入比较连续的采样点,扩展过渡带使其比较连续,从而使得通带和阻带之间变换比较缓慢,以达到减少逼近误差的目的。选取W∈0,2Π内N个采样点的约束条件为(3HKKMM01N3)(1)增大阻带衰减三种方法1)加宽过渡带宽,以牺牲过渡带换取阻带衰减的增加。2)过渡带的优化设计利用线性最优化的方法确定过渡带采样点的值,得到要求的滤波器的最佳逼近(而不是盲目地设定一个过渡带值)。3)增大N。如果要进一步增加阻带衰减,但又不增加过渡带宽,可增加采样点数N。代价是滤波器阶数增加,运算量增加。直接从频域进行设计,物理概念清楚,直观方便;适合于窄带滤波器设计,这时频率响应只有少数几个非零值,但是截止频率难以控制。典型应用用一串窄带滤波器组成多卜勒雷达接收机,覆盖不同的频段,多卜勒频偏可反映被测目标的运动速度;33最优化设计最优化设计方法是指采用最优化准则来设计的方法。在FIRDF的最优化设计中,最优化准则有均方误差最小化准则和等波纹切比雪夫逼近也称最大误差最小化准则两种。实际设计中,只有采用窗函数法中的矩形窗才能满足前一种最优化准则,但由于吉布斯GIBBS效应的存在,使其根本不能满足设计的要求。为了满足设计的要求,可以采用其它的窗函数来消除吉布斯效应,但此时的设计已经不能满足该最优化准则了。因此,要完成FIRDF的最优化设计,只能采用后一种优化准则来实现。数字信号处理课程设计第6页331等波纹切比雪夫逼近准则在滤波器的设计中,通常情况下通带和阻带的误差要求是不一样的。等波纹切比雪夫逼近准则就是通过对通带和阻带使用不同的加权函数,实现在不同频段通常指的是通带和阻带的加权误差最大值相同,从而实现其最大误差在满足性能指标的条件下达到最小值。尽管窗函数法与频率采样法在FIR数滤波器的设计中有着广泛的应用,但两者不是最优化的设计。通常线性相位滤波在不同的频带内逼近的最大容许误差要求不同。等波纹切比雪夫逼近准则就是通过通带和阻带使用不同的加权函数,实现在不同频段通常指的是通带和阻带的加权误差最大值相同,从而实现其最大误差在满足性能指标的条件下达到最小值,即使得和之JWDHEJWE间的最大绝对误差最小。等波纹切比雪夫逼近是采用加权逼近误差,它可以表示为JWEE34JWJWJJDEEWEH其中,为逼近误差加权函数在误差要求高的频段上,可以取较大的J加权值,否则,应当取较小的加权值。尽管按照FIR数字滤波器单位取样响应HN的对称性和N的奇、偶性,FIR数字滤波器可以分为4种类型,但滤波器的频率响应可以写成统一的形式3512JNWJKJWHEEH其中,K∈{0,1},HΩ为幅度函数,且是一个纯实数,表达式也可以写成统一的形式36JWDEQP其中,为Ω的固定函数,为M个

    展开全文
  • FIR数字滤波器设计(下)

    千次阅读 2020-06-27 11:23:23
    今天给大侠带来FIR数字滤波器设计,由于篇幅较长,分三篇。今天带来第三篇,FIR数字滤波器设计,包括窗函数法设计FIR滤波器、频率采样法设计FIR滤波器以及基于firls函数和remez函数的最优化方法设计FIR滤波器。话不...

    今天给大侠带来FIR数字滤波器设计,由于篇幅较长,分三篇。今天带来第三篇,FIR数字滤波器设计,包括窗函数法设计FIR滤波器、频率采样法设计FIR滤波器以及基于firls函数和remez函数的最优化方法设计FIR滤波器。话不多说,上货。

    这里也超链接了上、中两篇,方便参考学习。

    FIR数字滤波器设计(上)

    FIR数字滤波器设计(中)

     

     

    数字滤波器的输入输出均为数字信号,信号通过数字滤波器后,可以改变频率成分的相对比例或滤除某些频率成分。数字滤波器可以分为IIR数字滤波器和FIR数字滤波器。

    本篇只介绍FIR数字滤波器的设计,可以根据所给定的频率特性直接设计FIR数字滤波器。FIR数字滤波器在保证幅度特性满足要求的同时,能够做到严格的线性特性。

    本篇采用了窗函数法、频率采样法以及基于firls函数和remez函数的最优化方法设计FIR滤波器。对FIR滤波器进行了详细的理论分析,并且对应于每种方法都给出了设计实例。通过编写MATLAB语言程序,运行程序,得到幅频和相频特性图。

    对于窗函数和firls函数设计的滤波器,还通过建立Simulink系统模块进行仿真,观察滤波器滤波情况。

     

     

    FIR数字滤波器设计

     

     FIR数字滤波器的设计方法有窗函数法、频率采样法和基于firls函数和remez函数的最优化方法。MATLAB语言中的数字信号处理工具箱,提供了一些滤波器的函数,使FIR滤波器的运算更加方便和快捷。

    在MATLAB中提供的滤波函数有fir1(),此函数以经典的方法实现加窗线性相位FIR数字滤波器设计,可以设计出低通、高通、带通和带阻滤波器;fir2函数设计的FIR滤波器,其滤波的频率特性由矢量f和m决定,f和m分别为滤波器的期望幅频响应的频率相量和幅值相量。

    Firls()和remez()的基本格式用于设计I型和II型线性相位FIR滤波器,I型和II型的区别是偶函数还是奇函数。freqz()用于求数字滤波器的频率响应。并且提供了各种窗函数的函数,比如,hamming()是海明窗函数,hanning()是汉宁窗函数,kaiser()是凯泽窗函数,使在设计的过程中,不用自己重新设计窗函数。

    Simulink是MATLAB众多工具包中的一员,对于建模,Simulink提供了一个图形化的用户界面(GUI)。Simulink包括一个复杂的由接收器、信号源、线性和非线性组件以及连接件组成的模块库。定义完一个模型后,就可以通过Simulink的菜单或者在MATLAB的命令窗口输入命令对它进行仿真。使用Scopes或者其他的显示模块,可以在运行仿真时观察到仿真的结果。另外,还可以在仿真时改变参数,并且立即就可看到变化。

     

     

     

     

     

    一、窗函数法设计FIR滤波器

     

     

    设我们所要设计的FIR滤波器的传输函数是  是与其对应的单位脉冲响应,因此

             

    (3-1)

                     

     (3-2)

     

    如果我们能够在已知的情况下,求出,经过Z变换可得到滤波器的系统函数。通常情况下理想数字滤波器的单位脉冲相应是无限长的,且是非因果序列。获得有限脉冲响应滤波器的一种可能方法是对截取一段来近似代替,可是这样会改变原来的滤波器指标,出现吉布斯效应误差。

    窗函数法就是用被称为窗函数的有限加权序列w(n)来修正式(1)的傅里叶基数以求得要求的有限脉冲响应序列,即:

                              (3-3)

    w(n)是有限长序列,当n<0或n>N-1时,w(n)=0。

    这种方法的重点在于选择某种合适的窗函数。要求窗函数主瓣宽度尽可能窄,以获得最小的过渡带;旁瓣相对值尽可能小,以使得通带波纹小,并且阻带衰减大。

     

    下面介绍几种常用的窗函数:

    1、矩形窗(Rectangle Window)

     

                                (3-4)

     

    其频率函数为:

    (3-5)

     

    2、三角形窗(Bartlett Window)

                  

    (3-6)

    其频率函数为:

                  

    (3-7)

     

    3、汉宁(Hanning)窗,又称升余弦窗

                      

    (3-8)

     

    利用傅里叶变换得到频率函数为:

    (3-9)

     

    当  时,,所以窗函数的幅度函数为:

                 (3-10)

     

    4、汉明(Hamming)窗,又称改进的升余弦窗

     

    (3-11)

    其幅度函数为:

            

    (3-12)

     

    5、布莱克曼(Blankman)窗,又称二阶升余弦窗

           

    (3-13)

     

    其幅度函数为:

     

     (3-14)

     

    6、凯泽(Kaiser)窗

                    

    (3-15)

     

    其中:β是一个可自由选择的参数,是第一类修正零阶贝塞尔函数。

    上述窗函数的基本参数如下表:

     

    窗函数法设计滤波器的步骤:

    1)根据技术要求确定等待求值滤波器的单位取样响应

    2)根据对过渡带和阻带衰减的要求,选择窗函数的形式,并估计窗口长度N。

    3)计算滤波器的单位取样响应

                                (3-16)

    上式中, 是前面所选择好的窗函数。

    4)检验技术指标是否满足要求。根据下式计算:

     

    (3-17)

     

    如果不满足要求,根据具体情况重复步骤(2)(3)(4)步,直到满足要求为止。

     

    本篇以一个FIR滤波器的设计为例说明如何使用MATLAB设计数字滤波器。

    设计实例:用窗函数法设计线性相位FIR低通数字滤波器,要求通带截止频率Wp=0.4*,阻带截止频率Ws=0.5*, 通带衰减不大于3db,阻带衰减不小于40db。

    1、程序如下:

    Wp=0.4*pi;Ws=0.5*pi;Wdel=Ws-Wp;N=ceil(8*pi/Wdel);Wn=(0.4+0.5)*pi/2;window=hanning(N+1);b=fir1(N,Wn/pi,window);freqz(b,1,512)

     

     

    程序执行后所得幅频和相频如下图所示:

     

    2、用Simulink仿真对窗函数设计的低通滤波器进行滤波:

    FIR低通滤波器的Simulink仿真模块图如下所示:

     

    输入信号:s(t)=sin(30πt)+sin(56πt)+sin(70πt)

     

    数字滤波器参数设置:已知滤波器的阶数n=80。

     

    首先在Filter Type中选择lowpass;

    在Design Method选项中选择FIR Window,接着在Window选项中选取hann;指定Filter Order项中的Specify order为80;

     

    采样频率Fs=100Hz,截止频率Fc=22.5HZ。

     

    设置完以后点击窗口下方的Design Filter,在窗口上方就会看到所设计滤波器的幅频响应和相频响应曲线。

     

    设计界面如下图所示:

     

    信号源参数设置:三个信号源的频率分别是15Hz、28Hz、35Hz :

     

    运行仿真,得波形如下图所示:

    15HZ信号波形如下:

         

    28HZ信号波形如下:           

     

    35HZ信号波形如下:

     

    滤波前的叠加波形如下:         

     

    滤波后波形如下:   

     

    由上图可知,15Hz、28Hz、35Hz叠加后通过截止频率为22.5HZ的FIR低通滤波器,输出与15Hz信号波形相似,其它的高频被阻隔。

     

     

     

     

     

    二、频率采样法设计FIR滤波器

     

    1、对理想滤波器的系统函数进行频率采样以得到系统的理想频响的等间隔采样值H(k)。

    H(k)实际上是所要求的滤波器的单位采样响应(h(n))的离散傅里叶变换(DFT),如下关系式:

     (3-18)

      (3-19)

     

    为了减小H(k)的通带边缘由于抽样点的变化而引起的起伏振荡,可以增加过渡点,加宽过渡带以减小通带的起伏。

     

    每一个抽样值产生一个与 成正比,并位移的频率响应,而H(k)与内插函数的线性组合就是FIR滤波器的频率响应,增加一点过渡可以使阻带衰减提高到-44~54dB,二点过渡衰减-65~75,三点过渡衰减-85~95dB。

     

    如果不能使过渡带太宽,同时要求增大阻带衰减,可以增加取样点数N,但这样会增加计算量、延时和误差。

     

    频率取样型FIR滤波器设计步骤:

    (1)给定理想滤波器频率响应

    (2)根据过渡带宽和阻带衰减确定过渡点数和h(n)的长度N。

     (3-20)

    (3)由IFFT计算IDFT得到:             

     (3-21)

     

    设计实例:

    频率采样法设计一个带通滤波器,

    满足:低阻带边缘:w1s=0.2*;低通带边缘:w1p=0.35*;高通带边缘:w2p=0.65*;高阻带边缘:w2s=0.8*。设计过渡带中的频率样本值为t1和t2,取t1=0.109021,t2=0.59417456。

      设计程序如下:

    M=40;al=(M-1)/2;l=0:M-1;t1=0.109021;t2=0.59417456;Hrs=[zeros(1,5),t1,t2,ones(1,7),t2,t1,zeros(1,9),t1,t2,ones(1,7),t2,t1,zeros(1,4)];k1=0:floor((M-1)/2);k2=floor((M-1)/2)+1:M-1;angh=[-al*(2*pi)/M*k1,al*(2*pi)/M*(M-k2)];H=Hrs.*exp(j*angh);h=real(ifft(H,M));freqz(h,1,512,1000)

     

     

    实验得幅频相频特性如下图所示:

     

     

     

     

     

     

    三、最优化方法设计FIR数字滤波器

     

    MATLAB信号处理工具箱提供了通用的工具函数firls和remez,采用不同的优化方法可以设计最优滤波器和多频带滤波器。

     

    firls是fir1和fir2函数的扩展,其基本设计准则是利用最小二乘法使期望的频率响应和实际的频率响应之间的整体误差最小。

     

    Remez函数则利用Parks-McClellan算法设计线性相位FIR滤波器。

     

    该算法能使期望频率响应和实际频率响应之间的最大误差最小。Firls函数设计的滤波器在频率响应上出现等波纹,因此也叫等波纹滤波器。

     

    函数firls、remez调用的语法规则相同。

     

    1) firls。

    其调用格式为:

    b=firls(n,f,a)

    b=firls(n,f,a,w)

    b=firls(n,f,a,’ftype’)

    b=firls(n,f,a,w,’ftype’)

     

    该函数用于设计n阶FIR滤波器,其幅频特性由f和a向量确定,f是频率点向量,其范围为0~1,是递增向量;a是指定频率点的幅度响应,与f必须同长度;b为函数返回的滤波器系数,长度为n+1,且具有偶对称关系:b(k)=-b(n+2-k),  k=1,2,…,n+1;

     

    b=firls(n,f,a,w)则使用权系数w给误差加权。

     

    b=firls(n,f,a,w,’ftype’)调用形式中,参数’ftype’用于指定所设计的滤波器类型,ftype=Hilbert,为奇对称的线性相位滤波器。

     

    返回的滤波器系数满足b(k)=-b(n+2-k),  k=1,2,…,n+1;ftype=differentiator,则采用特殊加权技术,生成奇对称的线性相位滤波器,使低频段误差大大小于高频段误差。

     

    2) 函数remez的基本调用格式为:b=remez(n,f,a)。

     

    其中各项意义同函数firls所述。

     

    设计实例:

    分别使用函数firls和remez函数设计20阶带通滤波器,阻带频率为ws1=0.3*,ws2=0.7*,通带频率为wp1=0.4*,wp2=0.6*,并画出幅频特性曲线。

     

    1、程序如下所示:

    f=[0 0.3 0.4 0.6 0.7 1];m=[0 0 1 1 0 0];n=20;b=firls(n,f,m);       %firls函数设计FIR数字滤波器[h,w]=freqz(b);     bb=remez(n,f,m);     %remez函数设计FIR数字滤波器[hh,w]=freqz(bb);axes('position',[0.2 0.2 0.5 0.5]); plot(w/pi,abs(h),'b:',w/pi,abs(hh),'r-');xlabel('frequency');ylabel('magnitude');grid on;

     

     

    实验得幅频相频特性如下图所示:

     

    2、用Simulink仿真对用firls函数设计的带通滤波器进行滤波:

    仿真模块如下:

     

    输入信号:s(t)=sin(20πt)+sin(50πt)+sin(90πt)

     

    数字滤波器参数设置:已知滤波器的阶数n=20。

     

    首先在Filter Type中选择bandpass;

     

    在Design Method选项中选择FIR least-squares;

     

    指定Filter Order项中的Specify order为20;

     

    采样频率Fs=100Hz,Fstop1=15HZ,Fpass1=20HZ,Fpass2=30HZ,Fstop2=35HZ。

    设置完以后点击窗口下方的Design Filter,在窗口上方就会看到所设计滤波器的幅频响应曲线。

     

    设计界面如下图所示:

     

    信号源参数设置:三个信号源的频率分别是10Hz、25Hz、45Hz :

     

    运行仿真,得波形如下图所示:

    (1)10HZ信号波形如下所示:

       

    (2) 25HZ信号波形如下所示:        

     

    (3)45HZ信号波形如下所示:

     

    (4)滤波前波形如下所示:

     

    (5)滤波后波形如下所示:

     

    由以上波形可知,10Hz、25Hz、45Hz叠加后通过通频带为20Hz~30Hz的FIR带通滤波器,输出与25Hz信号相似,低频和高频部分被阻隔。

     

     

    第三篇就到这里,本篇在数字滤波器的设计过程中,采用的设计方法是基于MATLAB的数字滤波器的设计。设计过程中充分发挥了MATLAB语言编程效率高的特点以及Simulink仿真能力强的特点,完成各种计算与图形绘制工作,使得数字滤波器的设计变得简便快捷。通过FIR数字滤波器的设计实例,说明如何利用MATLAB来完成数字滤波器的设计,设计结果的各项性能指标均达到指定要求,Simulink仿真验证了设计方法的正确性。本篇所述设计过程简便易行,具有很好的实际运用意义。

     

     

    END

     

    后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。

    大侠们,江湖偌大,继续闯荡,愿一切安好,有缘再见!

     

    往期推荐

    展开全文
  • FIR数字滤波器设计

    2012-09-18 19:51:42
    FIR数字滤波器设计 一、实验目的: ㈠ 了解一个FIR数字滤波器DSP程序的设计、编写和建立的过程。 ㈡ 学习使用simulator调试滤波器程序的方法。了解使用simulator进行程序调试,如何输入测试信号,观察输出结果。
  • 一、实验目的 (1)加深对频率采样法设计FIR数字滤波器的基本原理的理解。 (2)掌握在频域优化设计FIR数字滤波器的方法。 (3)学习使用MATLAB语言提供的fir2子函数设计FIR数字滤波器。 二、实验涉及的MATLAB子函数 ...
  • 有关滤波器的设计,用双线性变换法设计IIR数字滤波器,用窗函数法设计 FIR数字滤波器
  • 项目名称:冷杉(fir) 开发与验证环境 Ubuntu 20.04 其他环境下能否正常运行,未测试过。 介绍 本项目是LuaLaTeX辅助工具集,目前包含封面生成工具。 使用方法 克隆本项目文件后,建议在LaTeX默认宏包、类搜索...
  • 数字信号处理实验报告-(4)-FIR数字滤波器设计,有代码,几乎每行都有注释,高清原图,完全能看得懂的那种
  • 过程详细,有截图有总结。数字信号处理的fir 数字滤波器实验报告!
  • 毕设:基于FPGA的FIR数字滤波器设计

    千次阅读 2020-06-28 10:07:14
    今天给大侠带来在毕业设计之基于FPGA的FIR数字滤波器设计,仅供大侠参考,话不多说,上货。 本篇介绍基于FPGA的FIR数字滤波器设计,针对毕业设计要做的基本工作有如下几点: (一)掌握有限冲击响应FIR...
  • 数字信号处理:FIR数字滤波器设计及软件实现

    千次阅读 多人点赞 2020-06-02 23:04:06
    数字信号处理:FIR数字滤波器设计及软件实现 一、实验目的 (1)掌握用窗函数法设计FIR数字滤波器的原理和方法。 (2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。 (3)掌握FIR滤波器的快速卷积实现...
  • 1.掌握用窗函数法设计FIR数字滤波器的原理和方法。 2.掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。 3.掌握FIR滤波器的快速卷积实现原理。 4.学会调用MATLAB函数设计与实现FIR滤波器。 二、实验原理与方法...
  • 1.实验目的 (1)掌握用窗函数法设计 FIR 数字滤波器的原理和方法。 (2)熟悉线性相位 FIR 数字滤波器特性。 (3)了解各种窗函数对滤波特性的影响。
  • 实验八 用 MATLAB 设计 FIR 数字滤波器二 一实验目的 1加深对窗函数法设计 FIR 数字滤波器的基本原理的理解 2学习用 MATLAB 语言的窗函数法编写设计 FIR 数字滤波器的程序 3了解 MATLAB 语言有关窗函数法设计 FIR ...
  • 以FPGA为硬件平台,利用FPGA的DSP开发工具DSP Builder对数字滤波器进行建模设计及系统模型仿真,生成VHDL工程...实验结果表明,该设计很好地达到了FIR滤波器的性能,为数字滤波器设计与实现提供了新的途径和方法。
  • (三)FIR数字滤波器的FPGA实现-并行FIR滤波器设计 文章目录(三)FIR数字滤波器的FPGA实现-并行FIR滤波器设计1 FIR滤波器基本原理   对于FIR滤波器主要涉及到滤波器的设计和滤波器的实现,设计和实现的区别如下...
  • 数字信号处理 课程设计报告 FIR 数字滤波器设计及 MATLAB 实现 专 业 通信工程 班 级 通信 1101 班 组 次 第 9 组 姓名及学号 姓名及学号 组 员 承 担 任 务 负责编写 基于matlab 的时域采样理论研究及实现 源程序...
  • (1)掌握用窗函数法设计FIR数字滤波器的原理和方法。 (2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。 (3)掌握FIR滤波器的快速卷积实现原理。 (4)学会调用MATLAB函数设计与实现FIR滤波器。
  • 基于MATLAB的数字信号处理 FIR数字滤波器设计及软件实现
  • 实验4 FIR数字滤波器设计.doc FIR: (1)在MATLAB中,熟悉函数fir1、kaiserord 、remezord、remez的使用; B = fir1设计滤波器; [n,Wn,beta,ftype] = kaiserord估计滤波器阶数; [n,fo,...
  • 介绍了杂交粒子群算法的原理,...通过高通和带通两个实例进行仿真实验,并与Parks-McClellan算法设计的滤波器进行对比,结果表明,采用杂交粒子群算法设计FIR数字滤波器具有更好的通带和阻带特性,是一种有效的方法。
  • 提出FIR敷字滤波器设计方案,并基于Matlab实现滤波仿真。通过使用Matlab信号处理工具箱提供的函数,选择适当的窗函数编写程序,其中窗函数按照实际信号的处理需求,参数折中选择。实验获得了比较理想的滤波器特性...
  • (二)FIR数字滤波器的FPGA实现-串行FIR滤波器设计 文章目录(二)FIR数字滤波器的FPGA实现-串行FIR滤波器设计0 串行FIR滤波器基本原理1 基于移位寄存器的串行 FIR 滤波器1.1 基本理论1.2 设计实现   对于FIR...
  • 任务书,开题报告,中期检查表,外文翻译,论文15500字,程序,答辩PPT)摘要:本文以数字滤波器设计与应用为背景,研究了基于MATLAB的IIR滤波器和FIR滤波器的设计,提出了基于滤波器的OFDM雷达回波信号解调方法,并分析...
  • 简述FIR数字滤波器的结构和特点,及其在DSP上实现的过程。首先使用 MATLAB设计一个FIR低通滤波器系数,然后利用filter( )函数进行仿真,最后对一个混合信号用TM S320LF2407芯片实现低通滤波处理。本文所编写的滤波器...
  • 数字信号处理实验,包含代码跟实验截图,注释清晰明了,实验结果正确
  • FIR数字滤波器的FPGA实现(二)-串行FIR滤波器设计(1)

    千次阅读 多人点赞 2018-11-26 17:41:08
    (二)FIR数字滤波器的FPGA实现-FIR滤波器基本原理 文章目录(二)FIR数字滤波器的FPGA实现-FIR滤波器基本原理1 FIR滤波器基本原理   对于FIR滤波器主要涉及到滤波器的设计和滤波器的实现,设计和实现的区别如下...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,078
精华内容 431
关键字:

fir数字滤波器的设计实验