回复 29楼 zhwang554 的帖子
您指导的方法真好!对不同的单频正弦信号,具有通用性了!以下是我求得的结果:F1 N 相位 相位误差 振幅 测量频率
50.00 240.00 30.83 0.83 1.01 50.33
50.00 256.00 30.83 0.83 1.02 50.29
50.00 512.00 30.67 0.67 0.98 50.04
50.00 1024.00 30.70 0.70 1.02 49.99
50.00 2048.00 30.31 0.31 0.99 50.00
100.00 240.00 30.82 0.82 1.00 133.21
100.00 256.00 30.75 0.75 1.00 99.90
100.00 512.00 30.79 0.79 0.98 99.94
100.00 1024.00 30.53 0.53 0.98 100.02
100.00 2048.00 30.66 0.66 0.97 100.00
150.00 240.00 30.04 0.04 0.98 150.46
150.00 256.00 30.07 0.07 0.97 150.38
150.00 512.00 30.45 0.45 0.95 150.07
150.00 1024.00 30.37 0.37 0.96 149.99
150.00 2048.00 30.50 0.50 0.95 149.98
200.00 240.00 28.06 -1.94 1.01 233.29
200.00 256.00 27.86 -2.14 1.02 199.97
200.00 512.00 28.04 -1.96 0.95 199.97
200.00 1024.00 27.93 -2.07 1.00 200.00
200.00 2048.00 28.11 -1.89 0.95 200.01
250.00 240.00 28.07 -1.93 0.95 250.79
250.00 256.00 28.58 -1.42 0.96 250.31
250.00 512.00 28.93 -1.07 0.92 250.01
250.00 1024.00 28.77 -1.23 0.97 257.78
250.00 2048.00 28.66 -1.34 0.96 253.90
那么:
系统对不同频率的相位偏移,可以选择:
(1)选择使得min(测量频率-F1)的那个相位值
(2)选择min(相差)的相位值
根据不同的选择标准,有不同的结果
:victory: :lol
[ 本帖最后由 yycc2006 于 2009-4-23 15:55 编辑 ]
回复 31楼 yycc2006的帖子
下二行计算频率的公式应用fff1(133.21和233.29错)100.00 240.00 30.82 0.82 1.00 133.21
200.00 240.00 28.06 -1.94 1.01 233.29
F1=200 F2=250
的相延达1-2度,正常吗?是系统在频率高时相延增大?上次600Hz的相延迟只有0.1度!是系统对不同频率相延不同?
为什么(2)选择min(相差)的相位值, 那是认为系统没有相延,全是计算测量误差,所以选误差min的一个. 这误差太大了.要找原因. 你将上次600赫附近的各个频率的相延也做出来
[ 本帖最后由 zhwang554 于 2009-4-23 20:23 编辑 ]
回复 32楼 zhwang554 的帖子
zhwang554:您好!您真敏锐,一针见血地指出了我的问题!1、频率133.21和233.29出错的问题,我已经按您的指导加了判断语句进行了修改。因为我是按相差最小的相位值作为选择标准的,因此先选相差,再判断频率,如果频差>1,就改用fff1.
=min(abs(d_p));
ifabs(f1-fff(n))>1 fff(n)=fff1(n);end
2、F1=200 F2=250的相延达1-2度,我也觉得有点问题。先把50-3500Hz的全部相移和振幅贴上来。
3、从上面两个图来看,基本符合我对黑箱系统的预测:该系统在0-1500Hz左右近似等效为一个加噪声的低通滤波器。
只是还有些疑问:
在相移图上,F1=200,250,300频率处,相移的值有疑问。F1=200时的数据如下(middle=2048)
在振幅图上,F1=1300处振幅偏移也太大。
[ 本帖最后由 yycc2006 于 2009-4-25 10:00 编辑 ] 受教了。。。。 ~~~~{:{20}:} 精华帖 对学习apfft受用了 学习学习! yangzj 发表于 2007-5-7 10:44 static/image/common/back.gif
呵呵,请教一个问题:
你这里说得到的是中间点的相位,那如果想得到起始点的相位怎么办呢?
大牛啊,杨老师你好,我买了你写的书,正在看第四章,编程序逐个实现书中的各种校正方法,效果不错, 学习APFFT
为了找答案,来研究一下此帖