当前位置:首页检测中心基础知识 │ 频谱泄露的分析及处理方法

频谱泄露的分析及处理方法

  • 浏览次数:6858次
  • 发布时间:2015/10/15 16:52:31
  • 作者:量值溯源

频谱泄露产生原因

  在现代信号处理中,由于信号的频域分析比时域分析具有更加清晰的物理概念和深刻含义,因而在信息技术领域中,FFT运算和频谱分析是一种常用的分析手段。对信号进行频谱分析首先需要通过信号的傅里叶变换计算出信号对应的频谱函数,但是由于实际应用中接触到的大量非周期连续信号x(t)的频谱函数X(jω)是连续函数,利用计算机对其进行频谱分析时往往需要对信号进行离散化处理以近似分析相应的频谱。在离散化处理过程中,由于被处理信号的有限记录长度和时域、频域的离散性往往造成在频谱分析中会出现一些特殊的效应,例如混叠现象、泄露现象以及栅栏现象,频谱泄露就是这样出现的。

频谱泄露的分析方法

  所谓频谱泄露,就是信号频谱中各谱线之间相互影响,使测量结果偏离实际值,同时在谱线两侧其他频率点上出现一些幅值较小的假谱,导致频谱泄露的原因是采样频率和信号频率的不同步,造成周期采样信号的相位在始端和终端不连续。

  设X(t)为实际信号,T0为信号周期,f0=1/T0为信号频率,Ts为采样周期,fs=1/Ts为采样频率,L是截取的周期数,N是采样点数,L、N均为正整数,X(t)经过长度为LT0的时间窗后得到离散序列X(n),必须满足采样频率和信号频率同步,即同步采样的要求: LT0/Ts=Nfs/f0。

  当信号X(t)的频率f0是fs/N的整数倍时,这说明在处理长度NT内有信号的K个整周期。这时由X(t)构成的以NT为周期的周期性信号是连续的。当信号X(t)的频率f0不是fs/N的整数倍时,则在NT的处理长度内,就不是恰好为信号周期的整数倍,有X(t)以NT为周期进行周期延拓所得到的周期性信号就出现了不连续点,造成了频谱分量从其正常频谱扩展开来,就这样形成了频谱泄露现象。

  在对信号做FFT分析时,如果采样频率固定不变,由于被采样信号自身频率的微小变化以及干扰因素的影响,就会使数据窗记录的不是整数个周期。从时域来说,这种情况在信号的周期延拓时就会导致其边界点不连续,使信号附加了高频分量;从频域来说,由于FFT算法只是对有限长度的信号进行变换,有限长度信号在时域相当于无限长信号和矩形窗的乘积,也就是将这个无限长信号截短,对应频域的傅里叶变换是实际信号傅里叶变换与矩形窗傅里叶变换的卷积。

  当信号被截短后的频谱不同于它以前的频谱。例如,对于频率为fs的正弦序列,它的频谱应该只是在fs处有离散谱。但是,在对它的频谱做了截短后,结果使信号的频谱不只是在fs处有离散谱,而是在以fs为中心的频带范围内都有谱线出现,它们可以理解为是从fs频率上泄露出去的,这种现象就是频谱泄露。泄露现象对功率谱估计及正弦分量的检测均带来有害的影响,因为弱信号的主瓣很容易被强信号泄露到邻近的副瓣所淹没及畸变,从而造成谱的模糊与失真。 通过LABVIEW信号处理实验室可以看到当边界点不连续时出现的频谱泄露的情况如下图1所示:

信号边界点不连续时

图1 信号边界点不连续时

  接下来举例说明以上的情况。假设连续信号X(t)的周期为T,现在对它进行采样,采样时间为t,采样N个点,那么T=N*t,因为f(t)的频率f0=2*pi/T,同时又有T=N*t、fs=2*pi/t,则有f0=2*pi/N*t=fs/N。接着我们假设对一个周期采样N=32个点,则有f0=fs/N;当对一个周期采样N1=64个点,那么N1=2*N,有f0=fs/N=fs/N1/2,即f0=2*fs/N1;同理当N2=128,f0=4*fs/N2…

  也就是说如果采样的不是整数倍的信号周期,那么这32个点、64个点、128个点....就不是在一个整周期内采到的,那么上面的等式也就不成立了,因此也就发生了频谱泄露。如果原始信号的频谱成份与FFT中的谱线完全一致,这种情况下采样数据的长度为信号周期的整数倍,频谱中只有主瓣,没有出现旁瓣的原因是旁瓣正处在窗函数主瓣两侧采样频率间隔处的零分量点。如果时间序列的长度不是周期的整数倍,窗函数的连续频谱将偏离主瓣的中心,频率偏移量对应着信号频率和FFT频率分辨率的差异,这个偏移导致了频谱中出现旁瓣,所以窗函数的旁瓣特性直接影响着各频谱分量向相邻频谱的泄露宽度。下图2是信号边界连续时的频谱图,可以看到此时频谱未发生泄露。

信号边界点连续时

图2 信号边界点连续时

  因此,综上所述,当采样同步时,窗口宽度等于整数个信号周期,矩形框的过零点与离散频点正好对齐,没有泄露。采样不同步时,窗口宽度不是整数个信号周期,谐波频谱分布不再是一条谱线而是在整个频域内分布,频谱之间相互干扰,出现频谱泄露。

  由以上分析可以看出,采样不同步是造成频谱泄露的根本原因,减少采样的同步误差是抑制频谱泄露的根本措施。

消除频谱泄露的处理方法

01选择合适的窗函数

  为减少频谱能量泄露,可采用不同的截取函数对信号进行截断,截断函数称为窗函数。泄露与窗函数频谱的两侧旁瓣有关,如果两侧旁瓣的高度趋于零,而使能量相对集中在主瓣,就可以较为接近于真实的频谱,为此,在时间域中可采用不同的窗函数来截断信号,应用在谐波测量中的窗函数很多,不同的窗函数对谐波测量的影响各不相同,即使同一个窗函数,参数选择不一样,影响也不一样,以下是6种常用的窗函数及特性:

矩形窗与汉宁窗(Hanning)

                                    矩形窗                                                                    汉宁窗(Hanning)

汉明窗(Hamming)与布莱克曼窗(Blackman)

                                     汉明窗(Hamming)                                                       布莱克曼窗(Blackman)

Bartlett窗(三角窗)与凯泽窗(Kaiser)

                              Bartlett窗(三角窗)                                                        凯泽窗(Kaiser)

  选择合适的窗函数对于减少频谱能量泄露非常有效,以下是窗函数的选择建议:

  如果在测试中可以保证不会有泄露的发生,则不需要用任何的窗函数;

  如果测试信号有多个频率分量,频谱表现的十分复杂,且测试的目的更多关注频率点而非能量的大小。在这种情况下,需要选择一个主瓣够窄的窗函数,汉宁窗是一个很好的选择;

  如果测试的目的更多的关注某周期信号频率点的能量值,那么其幅度的准确性则更加的重要,可以选择一个主瓣稍宽的窗;

  如果检测两个频率相近幅度不同的信号,用布莱克曼窗;

  如想要灵活的通过窗函数的形状来控制频谱波纹或阻带衰减指标,则选择凯泽窗;

  如果被测信号是随机或者未知的,选择汉宁窗。

02加长傅里叶时间窗长度

  傅里叶时间窗长度就是参与傅里叶变换的数据点数,参与变换的数据点数越多,频谱泄露越小。对于快速傅里叶变换FFT,要求数据点数必须为2的N次幂,而对于普通离散傅里叶变换DFT则无此限制。

  以下是不同采样次数和窗宽对应的频谱泄露,从对比图上可以看出,当采样次数N和窗宽L同时增大时,频谱泄漏减小。

不同采样次数和窗宽对应的频谱泄露

不同采样次数和窗宽对应的频谱泄露

03利用频率同步装置减少频谱泄露

  利用硬件装置实现频率同步的装置很多,其中下图3所示的是利用数字式锁相器(DPLL)实现频率同步的框图。图中带通滤波器用来滤除噪声干扰,数字式相位比较器把取自系统电压信号的相位和频率与锁相环输出的同步反馈信号进行相位比较。当失步时,数字式相位比较器输出与两者相位差和频率差有关的电压,经滤波后控制并改变压控振荡器的频率,直到输入的频率和反馈信号的频率同步为止。一旦锁定,便将跟踪输入信号频率变化,保持两者的频率同步,输出的同步信号去控制对信号的采样和加窗函数。

频率同步数字锁相装置框图

图3 频率同步数字锁相装置框图

  此种采用锁相环技术实现硬件同步采样的方法尽管可以在一定程度上减小频谱泄露,但其加大了硬件复杂度。

04利用采样频率自适应软件算法来减少频谱泄露

  对于实际的电力信号,其频率的变化一般是比较缓慢的,相邻的几个周波的频率变化很小,在对其进行频谱分析时,针对电力信号这个特点,采用软件采样频率自适应算法。首先以基波频率50HZ为采样基点,然后通过软件算法得到信号的实际频率,用实际频率自动的调整采样时间,可以减小同步误差,提高精度。

  对于实际电力信号,软件采样频率自适应算法如下:

  (1)设定采样间隔为Ts=78.125us(采样频率fs=12.8kHz),采样2×512+256点;

  (2)根据采样序列和采样间隔,利用改进的过零修正法计算信号的实际频率f0;

  (3)由实际频率f0调整新的采样时间间隔,可使新的采样时间窗是T0=1/f0的整数倍,并采样2×512+256点;

  (4)利用过采样法进行FFT运算得到64点(N=512而只计算64点)结果,输出基波以及各次谐波数据;

  (5)将2×512+256点采样序列和新的采样间隔作为参数,返回第(2)步。

  本算法主要有以下特点:

  (1)在第2步中采用数字滤波过零修正法。仅仅采用一般的过零线性化来计算采样频率所得到f0的误差还是较大的,由于干扰或者某些因素影响,有时甚至会出现错误。为了解决这个问题,对采样序列进行数字滤波,一般来说基频信号最强,受其他谐波泄露的影响也最小,通过数字滤波器除基频以上的频率成分,保证基波附近频率通过,并采用16位A/D转换芯片,可明显降低频率计算误差。

  (2)在第3步中通过软件实现对采样时间间隔(采样频率)的调整,在实际应用中,采用DSP芯片对采样时间的确定可以精确到0.01us,有很好的精度保证。

  (3)第4步中利用过采样法进行FFT运算,可以减小混叠误差,或降低对混叠滤波器的要求。如果进行FFT运算的序列不是充分的,其fs/2以上的频率成分就会折叠到0~fc段内。对于电力信号,要求分析的最高为64次的谐波,fc=3.2kHz,则fs~fc,2fs~3fc,3fs~5fc,4fs~7fc段频谱会折叠到0~fc段内引起折叠误差。并且在fs/2附近折叠误差最大;但当fc一定时,提高fs会减小误差,因此,在进行信号分析时,可用过采样方法减小混叠误差。

结语

  综上所述,采样不同步产生的同步误差是造成频谱泄露的重要原因,上述的基于采样频率自适应技术的软件算法通过采样数据计算得到信号较为准确的实际频率,并根据实际频率动态调整采样的时间间隔,实现采样频率的自适应,从而减小同步误差,降低频谱泄露的影响。WP4000变频功率分析仪通过频率测量和同步电路,保证了信号的整周期截断,傅里叶时间窗包含一个或整数个信号周期,有效的避免了频谱泄露。