FFT后看不到直流量

[复制链接]
3110|3
 楼主| samssm 发表于 2007-8-29 23:23 | 显示全部楼层 |阅读模式
t=0.1:1/1846220:(10/500000+0.1);&nbsp;&nbsp;%simple&nbsp;rate&nbsp;T=1/1846220&nbsp;sec,means&nbsp;that&nbsp;sample&nbsp;four&nbsp;point&nbsp;in&nbsp;a&nbsp;circle!<br />yt=0.25*sin(2*500000*pi*t)+0.950;&nbsp;&nbsp;&nbsp;&nbsp;%f=500KHz&nbsp;&nbsp;,create&nbsp;37&nbsp;sample&nbsp;point<br />figure<br />stem(yt);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;%&nbsp;the&nbsp;figure&nbsp;that&nbsp;have&nbsp;four&nbsp;3.**?&nbsp;per&nbsp;circle<br />title('37&nbsp;sample&nbsp;point')<br />sp=fft(yt);<br />figure<br />stem(sp);<br />title('|X(k)|&nbsp;of&nbsp;yt')<br /><br />变换本在频域应用有0.95*37=35.15(yt=0.25*sin(2*500000*pi*t)+0.950;&nbsp;)的直流分量的,但看不到,请赐教,如图:
 楼主| samssm 发表于 2007-8-29 23:36 | 显示全部楼层

同上

t=0.173:1/1846220:(128/1846220+0.173);&nbsp;&nbsp;%simple&nbsp;rate&nbsp;T=1/1846220&nbsp;sec,means&nbsp;that&nbsp;sample&nbsp;four&nbsp;point&nbsp;in&nbsp;a&nbsp;circle!<br />yt=0.25*sin(2*500000*pi*t)+0.950;&nbsp;&nbsp;&nbsp;&nbsp;%f=500KHz&nbsp;&nbsp;,create&nbsp;37&nbsp;sample&nbsp;point<br />figure<br />stem(yt);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;%&nbsp;the&nbsp;figure&nbsp;that&nbsp;have&nbsp;four&nbsp;3.**?&nbsp;per&nbsp;circle<br />title('128&nbsp;sample&nbsp;point')<br />sp=fft(yt);<br />figure<br />stem(sp);<br />title('|X(k)|&nbsp;of&nbsp;yt')<br /><br />改为采128点还是看不到直流量..而且怎么多出了一些额外的理论上没有的谐波分量!本来只有一个基波分量的..但基波旁显示有点其它谐波分量..为什么会导致这样的?谢谢指点
wowow 发表于 2007-8-30 09:39 | 显示全部楼层

采样率太低

虽然理论上fs&gt2f就可以,但要有好的处理效果,fs至少&gt10f.<br /><br />fft的辩率=fs/N,N为fft长度。基波旁边的不是谐波,谐波频率总会是基波的倍数的。数据只有一段相当对加了一个矩形窗函数,那是窗函数的频谱引起的。<br /><br />建议:先用较大的fs和N来仿真以达到好的效果,如果实际系统有限制,再想办法。
 楼主| samssm 发表于 2007-8-30 16:08 | 显示全部楼层

谢谢wowow老大

谢谢wowow老大:<br />你这样一提关那么基波旁的分量恍然大悟了..<br />那直流分量也解决了,..是MATLAB没把它画出来..有变量区能看到的...现在程序用C来实现也可以:)<br /><br />还有我想问下,FFT后的结果为a+bj的复数形式,已经知道其对应的幅度为sqrt(a*a+b*b)了,那相位也应该就是-arctan(b/a)了吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

29

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部