fft幅度校正_fft滤波器

fft幅度校正_fft滤波器振动信号处理目录1 振动数据来源2 信号处理基本概念3 FFT变换及PSD估算3.1 能量泄露3.2 窗函数3.3 加窗带来的幅值校正和能量修正3.4 功率谱密度函数估计(PSD估计)1.振动数据来源采用特殊固件用one X2相机采集一段视频,解析出视频数据中的IMU数据。图1.骑行数据2.信号处

振动信号处理   目录   1 振动数据来源   2 信号处理基本概念   3 FFT变换及PSD估算   3.1 能量泄露   3.2 窗函数   3.3 加窗带来的幅值校正和能量修正   3.4 功率谱密度函数估计(PSD估计)   1.振动数据来源   采用特殊固件用one X2相机采集一段视频,解析出视频数据中的IMU数据。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图1.骑行数据   2.信号处理的基本概念   信号处理的基本概念推荐谭祥军老师在模态空间的文章。   2.1模拟信号与数字信号   模拟信号:连续的物理量;   数字信号:离散的物理量;   2.2时间分辨率(采样时间间隔)
\Delta t   相邻两个时域数据点的采样时间差,称为时间分辨率或者采样时间间隔
\Delta t ,等于采样频率
f_{s} 的倒数,单位为s(秒)。时间分辨率越小,采样率越高,采样越密集,信号越接近真实信号。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图 2.采样时间间隔   2.3采样频率
f_{s}   采样频率是表示每秒钟采集多少个样本点(或数据点),记为
f_{s} ,单位为Hz。采样率越高,相邻的样本点时间间隔越短,采集到的信号越发接近真实信号。   2.3.1采样频率对幅值的影响   理论上讲,采样频率越高越好,由采样率带来的幅值误差会越小,但这并不现实。因为,采样率受采集设备最高采样频率限制;另一方面,采样率越高,会导致采样的数据容量大增,出现更大的数据文件。问题来了:采样频率设置为多大时,采集到的时域信号的幅值才不失真或失真很小。   下面将以一个频率为10Hz,幅值为1的单频正弦信号为例来进行说明。如下图所示:   第一条曲线采样频率为30Hz,3倍于信号频率(即一个周期内只能采集到3个样本点),波形显示为三角波信号,幅值为0.866(真实幅值为1);   第二条曲线采样频率为50Hz,5倍于信号频率,曲线形状仍有明显折线段,幅值为0.9511;   第三条曲线采样频率为100Hz,10倍于信号频率,信号形状非常接近正弦信号,幅值为0.9511;   第四条曲线采样频率为150Hz,15倍于信号频率,信号形状为正弦信号,幅值为0.9945;   第五条曲线采样频率为200Hz,20倍于信号频率,信号形状为正弦信号,幅值为1。   从下图可以看出,不同采样率下信号的幅值是不同的,采样率越高信号幅值失真越小,采样频率大于5倍的信号频率时,幅值不会引起明显的失真。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图3.不同采样率对幅值的影响   2.3.2混叠   采样定理要求采样率至少是关心的最高频率的2倍,才能保证信号频率不失真。若是采样频率过低,采集的信号变会发生混叠现象。   如下图所示,原始信号为10Hz的单位正弦信号,采用200Hz采样时得到图中红色曲线,若是采样频率过低,比如15Hz采样,得到如下图蓝色曲线,此时蓝色信号周期为0.2s,混叠后频率约为5Hz。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图4.混叠现象   对于混叠现象可以通过如下计算公式得到混叠后的计算频率:
f_{d}=min\left|f_{a}-Kf_{s} \right| 其中,
f_{a} 为实际信号频率,
f_{s} 为采样频率,
f_{d} 为混叠后频率,K取整数,从0开始适当取值使得
f_{d} 最小。   比如,采样频率为500Hz,采集不同频率的信号,如下表所示:   表 1.采样混叠频率
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图5.混叠计算   在实际采样过程中,信号的频率成分并不明确(不清楚采集的信号是否受到高频噪声的干扰),另一方面采样频率极高可以一定程度上避免混叠,这样会导致较大的数据文件,不利于数据的实时传输和存储(数据带宽和存储设备有限),同时最高采样频率也受到采集仪的限制。因此,信号在采样记录前会进行抗混叠滤波(低通滤波器),以减少混叠现象的发生。   2.4频率分辨率
\Delta f   频率分辨率=采样频率/FFT分析点数(等于2的N次方,近似等于采样点数)。对时域信号进行FFT变换时得到一些列离散点,比如对1000Hz的信号选择1s时间段分析(采样点数是N=1000,但是FFT分析的点数是Nfft=2^10=1024),FFT分析点数是1024,那么分析后得到的频率分辨率是0.97Hz(1000Hz/1024)。   FFT计算得到的结果只位于频率分辨率的整数倍处,也就是谱线处,谱线之间无结果。频谱的这种离散现象,称为栅栏效应。如下图所示,对信号进行频谱分析就像通过栅栏认识外面的世界一样,我们只能通过栅栏缝隙看到外面的世界,栅栏的缝隙如同频谱中的谱线一般,我们也只能通过谱线认识系统的频率特性。   如下图所示,绿色曲线表示系统理论的频域特性, 进行频谱分析后,只有谱线上才有计算结果,最后的生成的频谱曲线是根据这些谱线上的点连成,红色虚线相邻谱线间距就是频率分辨率。同时,FFT分析时截取的时间段越长其频率分辨率数值越小,精度越高。   
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图6.栅栏效应   3FFT变换   傅里叶变换的核心思想是:任意一个波形信号,我们都可以表述成无穷多正弦波叠加,对信号进行傅里叶分析可以将信号分解成一系列得正(余)弦。如下图 所示,方波信号就可以分解为一系列正弦波的形式。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图7.信号分解   一次FFT分析只能分析有限长度的时域信号,实际采集的信号很长,需要将因此,需要将采样时间很长的时域信号截断成一帧一帧长度的数据块,这个截取过程叫做信号截断。   信号截断分为周期截断和非周期截断,周期截断是指截断后的信号为周期信号,而非周期截断是指截断后的信号不再是周期信号,哪怕原始信号本身是周期信号。实际进行FFT分析时多数情况为非周期阶段,非周期截断往往产生能量泄露,加窗目的就是为减少能量泄露。   3.1周期截断   周期信号是连续信号,最明显的特征是信号的起始和结束时刻的幅值相等。假设采样时间很长的信号为单频正弦波(周期信号),若1帧的时间长度等于这个正弦波周期的整数倍,那么,截断后的信号仍为周期信号,如下图 8所示,假设原始信号幅值为10,频率为10Hz。对截断的一帧信号重构能得到原始数据,对截断的这一帧信号做FFT分析,得到它的频谱如下图 9所示。   从图 9中可以看出,得到的频率成分为原始信号的真实频率,并且幅值与原始信号的幅值相等(100%幅值)。假设原始信号频率成分是f,采样率为fs,截取的信号时间长度T为信号周期的整数k倍。原始信号周期T0=1/f,周期截断时一帧信号的时间长度为T=k*T0=k/f,采样点数(数据块大小)N=fs*T=fs*k/f,信号分析时的分辨率∆f=fs/N=f/k,即信号的频率成分为频率分辨率∆f的整数倍,也就是说频谱图中有一条谱线与信号的频率成分相同,这也就是所谓的信号“压谱线”,那么FFT的结果刚好能反应真实的频谱特性。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图8.周期截断
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图9.周期截断FFT分析   3.2非周期截断   现实世界中,我们进行FFT分析时,绝大多数情况都是非周期截断,如图 10。非周期截断的正弦波,在截断时间长度内没有捕捉到整数倍个周期正弦波,导致波形发生了失真(重构的信号并不连续)。这就解释了为什么FFT分析的结果会产生如图 11所示的“拖尾”现象。   实质是非周期截断后信号频率不是分辨率的整数倍,这样会导致原始信号频率能量会分散到周边形成“拖尾”现象,如图 11。对比周期截断的频谱,可以看出,非周期截断的频谱在整个频带上发生“拖尾”现象:峰值处的频率与原始信号的频率相近,但并不相等;另一方面,幅值的其他部分则分布在整个频带的其他谱线上。   由于信号的非周期截断,导致频谱在整个频带内发生了拖尾现象,这种非常严重的误差,称为泄漏,是数字信号处理所遭遇的最严重误差。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图10.非周期截断
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图11.信号非周期截断FFT分析   3.3信号加窗   一次FFT分析只能分析有限长度的时域信号,对于需要分析的信号来讲,哪怕原始信号是无限长的,每一次分析只能截取一定长度。因此,好像是用一个“窗”(确切地说更像个“框”)去作这样的截取了,如图 12,原始信号是周期信号,时间很长,截取时用红色的“窗”去截取这个周期信号,截取得到的信号如图 12中下部所示。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图12.加窗截断   从数学角度看“窗”函数本质是一个加权函数,图中的红色方框是单位权重的加权函数(w(t)=1),称为“矩形窗”,也就是说,每次截段信号时默认增加矩形窗。加权的方式不同,窗函数的类型不同,常用的窗函数有矩形窗、汉宁窗、平顶窗、指数窗等。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图13.窗函数表达式
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图14.窗函数时域特性及频域特性   信号截断时,大部分情况为非周期截断,信号首尾不相等,构建新信号时不连续,有能量泄露信号加窗的目的为了通过加窗的模拟成周期截断减少能量泄露。加窗过程是用一个窗函数与原始的时域信号作乘积的过程(当然加窗也可以在频域进行,但时域更为普遍),使得相乘后的信号似乎更好地满足傅立叶变换的周期性要求,如下图15所示(图片来源于谭祥军老师在模态空间中的文章)。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图15.信号加窗过程   图16所示,若周期截断,则FFT频谱为单一谱线。若为非周期截断,则频谱出现拖尾,可以看出泄漏很严重()。为了减少泄漏,给信号施加一个窗函数(如图中红色曲线所示),原始截断后的信号与这个窗函数相乘之后得到的信号为右侧上面的信号。可以看出,此时,信号的起始时刻和结束时刻幅值都为0,也就是说在这个时间长度内,信号为周期信号,但是只有一个周期。对这个信号做FFT分析,得到的频谱如图 21右侧下边所示。相比较之前未加窗的频谱,可以看出,泄漏已明显改善,但并没有完全消除泄漏。因此,窗函数只能减少泄漏,不能消除泄漏。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图16.加窗的效果   关于窗函数的特征,我本人也没有理解透彻。照搬如下(若是有误也恳请大家指正),窗函数的一般特征如下图 17,各种窗函数的主要频谱特征在于:主瓣宽度(也称为有效噪声带宽,ENBW)、幅值失真度、最高旁瓣高度和旁瓣衰减速率等参数。   加窗的主要想法是用比较光滑的窗函数代替截取信号样本的矩形窗函数,也就是对截断后的时域信号进行特定的不等计权,使被截断后的时域波形两端突变变得平滑些,以此压低谱窗的旁瓣。因为旁瓣泄露量最大,旁瓣小了泄露也相应减少了。不同的窗函数具有不同的频谱特征,下图18列出了一些常用窗函数的特征。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图17.窗函数一般频谱规律
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图18.常用窗函数特征参数   主瓣宽度主要影响信号能量分布和频率分辨能力。信号的实际分辨能力为有效噪声带宽乘以频率分辨率,因此,主瓣越宽,有效噪声带宽越宽,在频率分辨率相同的情况下,频率的分辨能力越差。如下图 19所示,红色曲线为增加平顶窗后的信号频谱,黑色曲线为增加汉宁窗后的频谱,蓝色曲线为矩形窗信号频率。可以明显地看出,主瓣越窄,频率分辨越准确。对于窗函数宽的主瓣而言,如果有邻近的小峰值频率,则越难辨别出来。旁瓣高低及其衰减率影响能量泄漏程度(频谱拖尾效应)。旁瓣越高,说明能量泄漏越严重,衰减越慢,频谱拖尾越严重。个人比较推荐汉宁窗。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图19.不同窗函数的主瓣宽度及拖尾   3.4FFT变换幅值修正   信号加窗可以减少泄漏,增加窗函数本身会使数据在两个方面失真:幅值失真和能量失真。可使用窗函数的修正因子去补偿这方面的影响,如下图20(窗函数来源于matlab)。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图20.Matlab中幅值和能量修正系数   用如下图所示的函数y=1*sin(2*pi*5*t)+2*sin(2*pi*10*t)+1.5*sin(2*pi*15*t)示意幅值校正因子的作用。分别在原函数上增加矩形窗、汉宁窗和平顶窗,取2.5秒的时间长度,如下图21所示。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图21.时域信号   不考虑幅值修正系数进行FFT计算,结果如下图 29所示。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图22.直接计算(未加修正系数)   增加幅值修正因子后,如下图23,增加幅值修正因子后,频谱的幅值能反映出信号幅值的大小。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图23.增加幅值修正系数   3.5FFT变换进行能量修正   真实的信号频谱是一根线的形式,即只有在频点处有响应。而图23中在目标频谱附近都有响应,比如10±0.25Hz存在幅值,这样会导致一个结果:整体的能量并不守恒,也就是说幅值修正后频谱的能量要高于实际的信号能量。也就是对这些信号进行能量谱或者功率谱分析时不能直接采用修正后的幅值谱进行计算,需要使用能量修正系数进行校核计算。   关于能量定义:信号幅度平方的积分,如果是数字信号,能量就是各点信号幅度值平方后的求和。有限上序列x{k}的离散fourier变换是正交变换,满足Parseval能量守恒定理,反映了序列在时域的能量等于其变换域的能量。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器时域能量等于频域能量   时域能量=有效值的平方*采样时间=时域幅值的平方和*采样时间间隔;   频域能量=频域幅值的平方和/分析点数*采样时间间隔=功率谱密度和*频率分辨率*总时间;   举例说明使用给定的能量系数可以准确计算信号的能量。如下图,给定一个信号频率y=2*sin(2*pi*10*t),如下图 24所示,对该信号取0~3s的时间段,并进行加(汉宁)窗。参考公式(6)进行能量计算,汉宁窗能量系数为1.63时能量计算误差约为-0.0008%。如下图所示,代码如下,能量修正系数直接乘以加窗后的时域信号。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图25.窗函数能量修正因子和误差   3.6功率谱密度估计(PSD估计)   功率谱是功率谱密度函数的简称,它定义为单位频带内的信号功率。它表示了信号功率随着频率的变化情况,即信号功率在频域的分布状况。功率谱曲线所覆盖的面积在数值上等于信号的总功率(能量):频域能量=功率谱密度和*频率分辨率*总时间。matlab中有直接法periodogram和周期法pwelch估算信号功率谱密度,通过定义发验证两种方法是否准确,计算结果显示其时域能量一致。
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图26.PSD估算
fft幅度校正_fft滤波器
fft幅度校正_fft滤波器图27.PSD

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/37985.html

(0)
上一篇 2024年 9月 8日 下午9:14
下一篇 2024年 9月 8日

相关推荐

关注微信