1.一种加窗插值FFT谐波检测算法,其特征在于步骤为:
设单一频率信号x(t)的频率为f0,幅值为A,初相位为θ,则用fs的采样频率对它进行采样,则得到如下离散信号:
xn=A sin(2πf0n/fs)+θ);
为上述离散信号进行加窗检测,设所加窗的时域为ω(n),其连续频谱为W(2πf),则加窗后该离散信号连续傅立叶变换为:
忽略负频点-f0处频峰的旁瓣影响,则在正频点f0附近的连续频谱为:
对上式进行离散抽样,得到离散傅立叶变换表达式:
上式中离散频率间隔为Δf=fs/N,N为采样点数;
设距离峰值点最近的两根谱线为第k1和第k2条谱线,显然这两条谱线是峰值点附近最大的和次最大的谱线,并且一条在k0的左侧,一条在k0的右侧;在离散频谱中找到这两条谱线,从而可确定k1和k2;
令第k1和第k2条谱线的幅值分别是y1=|X(k1Δf)|,y2=|X(k2Δf)|;设f0=(k1+λm)Δf,|λm|≤0.5,λm为不同步度;k1通过寻找谱峰实现,为了确定不同步度λm,令k1与k2谱线值之比为:
由上式计算出同步偏差λm,修正后的频率、幅值和相位的校正公式分别为:
频率校正公式:f0=(k1+λm)Δf;
幅值校正公式:A=2|X(ki)|/|W(2π·|λm|)/N)|;
相位校正公式:θ=arg|X(ki)|+π/2-λmπ;
幅值校正公式和相位校正公式中的i选1或2。