0 卖盘信息
BOM询价
您现在的位置: 首页 > 电子资讯 >技术信息 > fir滤波器的阶数和群延迟有关吗?matlab中想用filter函数实现IIR滤波器?哪个滤波器的阶数最高?

fir滤波器的阶数和群延迟有关吗?matlab中想用filter函数实现IIR滤波器?哪个滤波器的阶数最高?

来源:
2023-12-15
类别:技术信息
eye 43
文章创建人 拍明芯城

1、fir滤波器的阶数和群延迟有关吗?

fir滤波器的阶数和群延迟有一定的关联,阶数越高滤波反应越灵敏,延迟小,但不是越高越好,

FIR数字滤波器因其具有良好的线性特性而被广泛应用,但在利用FIR滤波器进行实际信号的滤波处理中,滤波后信号将会不可避免地产生明显的时延,影响滤波器的性能,从而限制了该滤波器在实际中的一些应用。

在程序里面,信号不是从第一个采样点就进入滤波器的,而是在滤波器阶数值后的第一个点进入滤波过程的;若要设计的滤波器的指标已确定,则根据指标要求的截止频率和衰减分贝代入公式即可确定。

FIR滤波器的时延相对好推测,应该是(FIR的点数减1)/2乘以采样时间间隔;在进入FIR滤波器前,首先要将信号通过A/D器件进行模数转换,把模拟信号转化为数字信号;为了使信号处理能够不发生失真。

image.png

2、matlab中想用filter函数实现IIR滤波器

说明:(1)为了使滤波器阶数尽可能低,每个滤波器的边界频率选择原则是尽量使滤波器过渡带宽尽可能宽。

(2)与信号产生函数mstg相同,采样频率Fs=10kHz。

(3)为了滤波器阶数最低,选用椭圆滤波器。(之后,再依次实现巴特沃斯、切比雪夫1、切比雪夫2数字滤波器)

按照程序框图编写的实验程序为exp1.m。

2、实验程序清单

%实验1程序exp1.m

% IIR数字滤波器设计及软件实现

Fs=10000;T=1/Fs;   %采样频率

%调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st

%低通滤波器设计与实现=========================================

wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60;   %DF指标(低通滤波器的通、阻带边界频)

[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord计算椭圆DF阶数N和通带截止频率wp

[B,A]=ellip(N,rp,rs,wp);      %调用ellip计算椭圆带通DF系统函数系数向量B和A

y1t=filter(B,A,st);     %滤波器软件实现

% 低通滤波器设计与实现绘图部分

myplot(B,A);  %调用绘图函数myplot绘制损耗函数曲线

tplot(y1t,T,yt); %调用绘图函数tplot绘制滤波器输出波形

%带通滤波器设计与实现====================================================

[N,wp]=ellipord(wp,ws,rp,rs);    %调用ellipord计算椭圆DF阶数N和通带截止频率wp

[B,A]=ellip(N,rp,rs,wp); %调用ellip计算椭圆带通DF系统函数系数向量B和A

y2t=filter(B,A,st);     %滤波器软件实现

% 带通滤波器设计与实现绘图部分

myplot(B,A);  %调用绘图函数myplot绘制损耗函数曲线

tplot(y2t,T,yt); %调用绘图函数tplot绘制滤波器输出波形

%高通滤波器设计与实现================================================

wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60;   %DF指标(低通滤波器的通、阻带边界频)

[N,wp]=ellipord(wp,ws,rp,rs);    %调用ellipord计算椭圆DF阶数N和通带截止频率wp

y3t=filter(B,A,st);     %滤波器软件实现

% 高低通滤波器设计与实现绘图部分

myplot(B,A);  %调用绘图函数myplot绘制损耗函数曲线

tplot(y3t,T,yt); %调用绘图函数tplot绘制滤波器输出波形

%时域离散系统损耗函数绘图

%B为系统函数分子多项式系数向量

%A为系统函数分母多项式系数向量

损耗函数曲线

%时域序列连续曲线绘图函数

% xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串)

% T为采样间隔

(a) s(t)的波形

image.png

3、滤波器的阶是怎么一回事,我看书上的:N就是这个IIR滤波器的阶。请问定义滤波器的阶是有什么作用。

简单的理解:滤波器的阶数,就是滤波几次的意思,一阶,就是对谐波过滤一次,两阶,就是对谐波过滤两次,如此往下推就好了……

滤波器的阶数越高,滤波效果越好,但是,成本也会成倍的增加,因此,选择合适的阶数是非常重要的。

4、哪个滤波器的阶数最高

有源滤波器传递函数分母中“S”的最高“方次”称为滤波器的“阶数”。阶数越高,滤波器幅频特性的过渡带越陡,越接近理想特性。一般情况下,一阶滤波器过渡带按每十倍频20dB速率衰减;二阶滤波器每十倍频40dB速率衰减。高阶滤波器可由低阶滤波器串接组成。

1.png

5、阶数对滤波器的那些性能有影响?

滤波器的阶数是指滤波器中的二阶滤波器(biquad)的数量。阶数越高,滤波器对输入信号的影响越强,也就是滤波器的频率响应曲线越陡峭,截止频率的过渡带越窄。因此,阶数越高,滤波器的性能越好,但是设计和实现也越复杂,同时计算量也会增加。在工程中,选择滤波器的阶数需要根据具体的应用需求来确定。通常来说,选择合适的阶数需要平衡滤波器性能和计算复杂度之间的关系。一般情况下,滤波器阶数可以根据以下几个因素来确定:带宽和截止频率:如果需要对高频噪声进行滤波,则需要选择高阶滤波器,以获得更好的性能。相反,如果需要对低频噪声进行滤波,则可以选择低阶滤波器。信号质量要求:如果要求输出信号的信噪比较高,则需要选择高阶滤波器。因为高阶滤波器可以提供更好的抑制,从而减少信号中的噪声。计算复杂度:高阶滤波器的计算复杂度更高,需要更多的计算资源和处理时间。因此,在工程中需要根据系统的计算资源和实时性要求来选择合适的滤波器阶数。滤波器稳定性:滤波器的阶数越高,越容易出现不稳定的情况。因此,在选择滤波器阶数时,需要注意滤波器的稳定性问题。总之,在选择滤波器的阶数时,需要综合考虑以上因素,根据具体的应用需求来确定最合适的阶数。通常可以通过试验和仿真来评估不同阶数的滤波器的性能,并选择最适合应用的滤波器。

工程中常见的滤波器分FIR和IIR, 也就是有限冲击响应的和无限冲击响应的滤波器,再说简单点就是FIR和历史值没关系,只和你设置的buf长度有关系,而IIR是一直和你的历史有关系,再简单点,就是你们所见到的滑动平均滤波和一阶低通滤波器,前者可以归类到FIR后者可以归类到IIR里面有了这些你就要再去看滤波器的伯德图,主要就是幅频和相频了再然后就有人会说FIR有线性相位延迟,说下去就没玩没了了,也会遇到杠精,不说这个相位特性了类比FIR和IIR我就拿滑动平均和一阶低通来说事,1.有经验的人都会发现,滑动平均感觉相位滞后的少啊,一阶低通要是滤波的很滞后很严重啊,好了,工程应用记住这个就够了,FIR和IIR的相位滞后问题就如同此类似;2.那世界总是不会十全十美的,有经验的人又会发现滑动平均要是做个100个buf的好像好蛋伤啊,尤其要是还是int类型的数据的时候,而达到类似平滑度的,一阶低通只要一个存储历史值的变量就好了,也就是一个int,如果是int类型变量,看到了把,类似的IIR就是占用的存储少,工程上记住这个也就行了,事实就是这样;在高阶的FIR和IIR上,上面的1,2这两点更加的凸显,所以其实滑动平均和一阶低通工程上最常用,为啥,因为总是那么的顺手呐,剩下的就看你自己选择了,一阶能满足的时候,干嘛要去用高阶的去干mcu呢,尤其运动控制中,延时好可怕的,别搞那么多的阶级了啊,就像这个社会,要是没有王健林和屌丝,大家都是屌丝,社会多美好!再另外运动控制中,滤波器和观测器,多走走观测器,会好不少吧,因为是看未来嘛


责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯