FFT求频谱和相位的问题
如果用Matlab自带的FFT,可以很容易的画出频谱图,但怎么求出信号的相位?如果用自己写的FFT程序,可以很容易的求出幅值跟相位,但怎么去画不是整数频率的频谱图?
[ 本帖最后由 zhlong 于 2007-11-4 20:48 编辑 ] http://forum.vibunion.com/forum/thread-22289-1-1.html
http://forum.vibunion.com/forum/thread-8492-1-2.html
楼主看看上面两个帖子是否有帮助。 自己写的话就是求复数的相位,用反正切求,不过求完后还要根据实部和虚部的符号把相位调整到相应的象限 如果不是整周期采样,根据最高谱线的atan2(RealPart,ImagPart)来求相位是不准确的。 当频率在两条谱线中间时,无论采用何种窗函数,误差都是90度。 为此必须采用所谓的校正算法 自己写的FFT我当然知道怎么求幅值和相位,但是怎么求幅值所对应的频率,
回复 #5 libobo2000 的帖子
请搜索本版相关帖子请教大哥用Simulink的FFT建模做频谱分析方法
我的SIMULINK建模把时域图形做出来了,但是做FFT变换后仿真的时候示波器显示错误,请教各位高手指点,[ 本帖最后由 zhangnan3509 于 2008-5-20 17:07 编辑 ] 回复 4 # VibrationMaster 的帖子
入行较晚,刚刚看到您关于相位误差的帖子,您是否可以给个建议,如何采取校正算法,我现在计算的感觉就是刚刚好查了90度,搜了些文献没有找到合适的。多谢了!
页:
[1]