找回密码
 注册
Simdroid-非首页
查看: 766|回复: 12

【讨论】FFT分析相位

[复制链接]
发表于 2003-11-7 14:51:15 | 显示全部楼层 |阅读模式 来自 北京
我的信号含有基波和三次谐波,应该说只有基波和三次谐波相位,其他次谐波相位用FFT分析应为零。而得出的结果却不是这样。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2003-11-7 22:17:55 | 显示全部楼层 来自 新加坡

回复: 【讨论】FFT分析相位

Simdroid开发平台
首先,你说的其他的地方的相位为零应该是针对连续傅氏变换也就是用无穷积分形势表示的变换而讲的。那里要求信号是无限长的。
  
FFT作为DFT的一种,有其局限性。由于使用的数据并非无限,并非对称,FFT假设你的数据是因果的,也就是在负时间上数据为零,这些都会对FFT结果的相位信息造成破坏,以至于不能用。你如果还想试的话,在angle()后面,用
unwrap(au),关于unwrap请看帮助文件。
  
其实上次我说的那个方法倒是可以用(因为我知道有人这么用):因为你知道信号中的频率,所以可以用同频率的正弦和余弦分别和信号做相关,用得到的结果作为一个复数的实部和虚部,从而求得相位。我上次给你说过,不知你试了没有。

评分

1

查看全部评分

 楼主| 发表于 2003-11-8 17:25:21 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

对于单个信号可以这样相关分析,但是谐波信号不能这样相关分析把,因为谐波信号含有好几次谐波的叠加。
 楼主| 发表于 2003-11-8 20:01:47 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

关键我是要分析各次谐波的相位,用相关分析法不行呀
发表于 2003-11-8 21:08:05 | 显示全部楼层 来自 新加坡

回复: 回复: 【讨论】FFT分析相位

yanhuaguang wrote:
关键我是要分析各次谐波的相位,用相关分析法不行呀

  
可以的。
  
能否把你的例子贴出来(用相关分析)? 你可以多加上几个谐波。
 楼主| 发表于 2003-11-10 08:22:33 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

我还没有用相关分析做,我觉得相关分析只能用于单次信号,不能用于谐波信号
发表于 2003-11-18 21:01:57 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

taohe兄讲的很对,其实可以用相关分析,因为谐波信号各阶次是正交的,所以可以通过该方法获得各谐波分量,关键是你要知道确且的频率,m程序如下:
>> fs=1600;T=1/fs;fj=50;w=2*pi*fj;n=1:32;
>> u=0+10*sin(w*n*T+pi/6)+1*sin(3*w*n*T+pi/3);
>> ar=mean(u.*cos(w*n*T));   % 频率分量为50Hz的信号的实部
>> ai=mean(u.*sin(w*n*T));    % 频率分量为50Hz的信号的虚部
>> angle(ar-sqrt(-1)*ai)*180/pi
  
ans =
  
  -60.0000
  
>> br=mean(u.*cos(3*w*n*T));
>> bi=mean(u.*sin(3*w*n*T));
>> angle(br-sqrt(-1)*bi)*180/pi
  
ans =
  
  -30.0000

评分

1

查看全部评分

发表于 2003-11-18 21:27:48 | 显示全部楼层 来自 新加坡

回复: 回复: 【讨论】FFT分析相位

warner wrote:
taohe兄讲的很对,其实可以用相关分析,因为谐波信号各阶次是正交的,所以可以通过该方法获得各谐波分量,关键是你要知道确且的频率,m程序如下:
>> fs=1600;T=1/fs;fj=50;w=2*pi*fj;n=1:32;
>> u=0+10*sin(w*n*T+pi/6)+1*sin(3*w*n*T+pi/3);
>> ar=mean(u.*cos(w*n*T));   % 频率分量为50Hz的信号的实部
>> ai=mean(u.*sin(w*n*T));    % 频率分量为50Hz的信号的虚部
>> angle(ar-sqrt(-1)*ai)*180/pi
  
ans =
  
  -60.0000
  
>> br=mean(u.*cos(3*w*n*T));
>> bi=mean(u.*sin(3*w*n*T));
>> angle(br-sqrt(-1)*bi)*180/pi
  
ans =
  
  -30.0000

  
正解:D
 楼主| 发表于 2003-11-19 09:17:53 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

为什么要用MEAN这个平均函数呢
 楼主| 发表于 2003-11-19 09:20:33 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

TAOHE,WARNER
能解释以下这段程序吗,我有点看不太懂,好象并没有到相关分析函数呀,下面的代码不太懂
br=mean(u.*cos(3*w*n*T));  
>> bi=mean(u.*sin(3*w*n*T));  
>> angle(br-sqrt(-1)*bi)*180/pi
发表于 2003-11-24 20:45:57 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

不好意思,前面的帖子由于匆忙有一点错误:
>> ar=sum(u.*cos(w*n*T))*2/length(n); % 频率分量为50Hz的信号的实部  
>> ai=sum(u.*sin(w*n*T))*2/length(n); % 频率分量为50Hz的信号的虚部  
>> angle(ar-sqrt(-1)*ai)*180/pi  
  
ans =  
  
  -60.0000  
  
>> br=sum(u.*cos(3*w*n*T))*2/length(n); % 频率分量为150Hz的信号的实部
>> bi=sum(u.*sin(3*w*n*T))*2/length(n) ;% 频率分量为150Hz的信号的虚部
>> angle(br-sqrt(-1)*bi)*180/pi  
  
ans =  
  
  -30.0000  
  
其实确切地说上述过程并不是相关分析,而是正交分解获得各个频率分量的实部和虚部
发表于 2003-12-13 20:09:42 | 显示全部楼层 来自 山东青岛

回复: 【讨论】FFT分析相位

这里的angle(ar-sqrt(-1)*ai)*180/pi 和angle(br-sqrt(-1)*bi)*180/pi 就是要求的相位吧,那么,进一步想,如果求相应的频率啁啾该怎么办呢?
发表于 2003-12-18 21:19:41 | 显示全部楼层 来自 北京

回复: 【讨论】FFT分析相位

啁啾?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-5-24 00:01 , Processed in 0.070102 second(s), 19 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表