首页/文章/ 详情

窗函数的选择和应用

3年前浏览3215

来源:东华测试(ID:dhtest)

结合测试过程中的实际情况,今天聊一聊窗函数的选择和应用。


   1 频谱能量泄露    

数字信号处理的主要数学工具是傅里叶变换,而傅里叶变换是研究整个时间域和频率域的关系。连续的正弦波得到如图所示单一谱线。

图片

可实际测试时,我们看到的是这样:

图片

这是因为采用离散傅立叶变换 (DFT)——常常是增强的快速傅立叶变换算法 (FFT)——处理一个正弦采样信号时假定了时间信号是周期无限的。但在分析时,我们往往只截取其中的一部分,如果正弦信号在采样时截取的不是整周期采样,其结果由于边缘的不确定性,使得能量从本来的谱线处显著地泄漏至相邻频域。

图片

泄漏是伴随数字信号最严重的问题之一。泄漏可通过采取不同的激励技术和提高频率分辨率来削减,也可采用不同的截取函数对信号进行截断来缩小。截断函数称为窗函数,简称为窗。

图片


2  加窗是为了减少泄露  

在时间域中可采用不同的窗函数来截断信号,让两侧旁瓣的高度趋于零,而使能量相对集中在主瓣,就可以较为接近于真实的频谱。但是加窗本身也会增加误差,加不同的窗函数导致能量的不同分配,因此窗的选择依赖于输入信号的类型,以及测试人员感兴趣的问题属于哪个方面。


图片



   3 窗函数的特性    

窗函数有多种,它们中的多数可视为多个正弦分量的组合做幅值调制,可视为起到一种滤波器的作用,各种窗函数的性质可通过考察其在频域上滤波特性做出比较:


图片

各种窗的差别主要集中于主瓣的能量和两侧所有旁瓣的能量之比例。一般来讲,有效噪声频带越宽,频率分辨率越差,越难以分清有相同幅值的邻近频率,选择性(分辨出强分量频率邻近的弱分量的能力)的提高与旁瓣衰减率有关,通常有效噪声带宽窄的窗,其旁瓣衰减率较低。因此,窗的选择在二者之间权衡,其表如下:

图片

举例:矩形窗主瓣窄,旁瓣大,频率识别精度高,幅值识别精度较低;布莱克曼窗主瓣宽,旁瓣小,频率识别精度低,但幅值识别精度较高。



4 窗函数的主要类型  

矩形窗 (Rectangular)

矩形窗属于时间变量的零次幂窗。矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象。矩形窗可用于泄漏不成问题的情况下,常用于整周期正弦波、脉冲、瞬态信号等等,其采样周期的起端和末端的函数值在自然属性就等于零。


注意:对于采样周期与信号周期同步的情况,采用矩形窗优于任何其他窗函数;不能确定信号类型的情况下,矩形窗总是可取的方案之一。



汉窗 (Hann)

汉窗又称升余弦窗、汉宁窗,汉窗主瓣加宽并降低,旁瓣则显著减小,从减小泄漏观点出发,汉窗优于矩形窗。但汉窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降。汉窗是对随机信号做一般目地分析时最常采用的窗,但不适用于小信号的精确测量。


哈明窗 (Hamming)

又称海明窗,哈明窗也是余弦窗的一种,又称改进的升余弦窗。哈明窗与汉窗都是余弦窗,只是加权系数不同。哈明窗加权的系数能使旁瓣达到更小。分析表明,哈明窗比汉窗衰减速度慢。哈明窗与汉窗都是很有用的窗函数,最适用动态范围为50dB。


平顶窗 (Flat Top)

具有比较高的幅值精度,误差大约为1% (0.1dB)。然而其频率分辨率是比较低的,可用于纯音(单频)信号的精确幅值测量,特别适用于测量系统的标定。


三角窗 (Trangle)

三角窗亦称费杰 (Fejer) 窗,是幂窗的一次方形式。与矩形窗比较,主瓣宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。分析窄带信号,且有较强的干扰噪声,则选用旁瓣幅度小的三角窗。


布莱克曼窗 (Blackman)


布莱克曼窗主瓣宽,旁瓣小,频率识别精度较低,但幅值识别精度高,适合检测强信号中的弱分量。


力窗 (Force)

力窗常用于锤击法模态测试情况下瞬态信号分析,可削减激励通道信号的杂散噪声。


指数窗 (Exponential)

也用于瞬态信号分析,目的在于使信号在采样周期的终点衰减到零,适合锤击法模态测试的输出通道。

其他窗

除了以上几种常用窗函数以外,尚有多种窗函数,如高斯窗 (Gaussia)、切比雪夫窗 (Chebyshev)、帕仁窗 (Parzen)、凯塞窗 (kaiser) 等


5测试过程中窗函数的应用

图片



理论科普信号完整性电磁基础
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2021-09-10
最近编辑:3年前
仿真圈
技术圈粉 知识付费 学习强国
获赞 10107粉丝 21587文章 3547课程 219
点赞
收藏
作者推荐
未登录
1条评论
Q
签名征集中
1年前
大佬请问一下,使用了加窗函数,还要用A计权吗?
回复
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈