|
回复 楼主kevin19821 的帖子
用一般校正方法频谱间隔3 以上才好. 频谱靠得太近,有二个解决方法:
一是降低采样频率fs, 你的程序中fs=N, 频谱中每间隔fs/N=1Hz, 若fs=N/3, 频谱中每间隔fs/N=1/3Hz, 就可以区分你的频率为60/9和60/8两个信号了. 程序改动处如下
在N=600 后 加 fs=N/3
s=A1*sin(2*pi*t*f1/N+ph1*pi/180)+A2*sin(2*pi*t*f2/N+ph2*pi/180);
改为 s=A1*sin(2*pi*t*f1/fs+ph1*pi/180)+A2*sin(2*pi*t*f2/fs+ph2*pi/180);
rr=round(sf(si)) 改为 rr=round(sf(si)*N/fs);
fff(si)=rr+g; 改为 fff(si)=(rr+g)*fs/N;
运行结果:
ppp= 6.666603562848446e+000 7.500000006453633e+000
aaa = 1.000000223099778e+000 1.001110712113026e+000
ppp =3.300340760618933e+002 5.999999651428831e+001
二是采用密集频谱校正法, 可校正在1个频率间隔内的两个频率成份, 方法复什些. 参见
方体莲,洪一:"利用FFT校正两个密集信号的频率和相位", 雷达科学与技术,Vol.3,No,6 p378-382, 2005
[ 本帖最后由 zhwang554 于 2010-1-27 19:24 编辑 ] |
评分
-
1
查看全部评分
-
|