声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 6880|回复: 26

[FFT] 对一组数据进行FFT变换,不知道变换的结果是否正确

  [复制链接]
发表于 2011-4-20 15:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
本帖最后由 微微05 于 2011-4-20 15:23 编辑

大家好!
     我对一个系统以采样频率2000采集了200个数,我想对这200个数做FFT变换,然后观察系统的共振频率点。我在MATLAB中主要程序如下:
fs=2000;
N=256;
f=n*fs/N;
P=load('data.txt');
PF=fft(P,N);
mag=abs(PF);
subplot(121),plot(t,PF);
subplot(122),plot(f(1:N/2),mag(1:N/2)*2/N);
    结果图如下:
速度误差.png 频谱图.png
不知道设置的采样频率和采样点数的结果对不对?频谱泄露是怎么一回事?如何防止频谱泄露的发生?我想把FFT变换的结果的纵坐标转换成dB单位该如何处理。我的200数据已上传,请高手帮我看看,我的结果对不对,谢谢! data.txt (1.49 KB, 下载次数: 39)

回复
分享到:

使用道具 举报

发表于 2011-4-20 17:34 | 显示全部楼层
本帖最后由 hcharlie 于 2011-4-20 17:39 编辑

你的数据从时域和频域本身没有什么问题。
问题在于,你的信号是随机振动性质,因此采样数据200个点太少太少。应该采样20~50帧,每帧256点,就需要5120~12800点,将它们按20~50帧去平均值再FFT以后,取绝对值平方平均再开方,才能得到频域比较平缓的曲线,才是你需要的结果。
为了避免功率泄漏,对随机信号可以加hanning窗。
此问题我在论坛上已说了多遍,搜索一下吧。

评分

1

查看全部评分

发表于 2011-4-20 18:00 | 显示全部楼层
对不起,你左边的图与你给的数据好像不是一回事:
它是256点而不是200点,数据量级也不对;
它好像以中点处左右对称,是怎么回事?
 楼主| 发表于 2011-4-20 22:33 | 显示全部楼层
回复 3 # hcharlie 的帖子

呵呵,我发完才看到,我对原数据画图时画错了。那就只看FFT变化后的图吧,谢谢你!
 楼主| 发表于 2011-4-20 22:41 | 显示全部楼层
回复 2 # hcharlie 的帖子

实际上我对一个系统采了三组数,每组200个数据,我想的是一个系统的共振频率点应该不变啊,所以我理解的这三组数据做FFT变换后应该有一个相同的共振频率点,但是现在我变换后的结果不是这样的,我首先想的就是我的FFT变换是否正确。
 楼主| 发表于 2011-4-20 22:49 | 显示全部楼层
回复 2 # hcharlie 的帖子

不好意思,你说的平均后再FFT变换,平均是什么意思啊?有点不懂,呵呵!
发表于 2011-4-21 07:02 | 显示全部楼层
本帖最后由 hcharlie 于 2011-4-21 07:45 编辑

回复 6 # 微微05 的帖子

我说的是先求时域平均值,各点数据减去平均值,去直流分量,再做FFT,这样另谱线变成另。
然后在频域各谱线平均。后一个平均可以强化确定性数据而淡化随机干扰,随机数据变得平稳些。

 楼主| 发表于 2011-4-21 14:17 | 显示全部楼层

RE: 对一组数据进行FFT变换,不知道变换的结果是否正确

回复 7 # hcharlie 的帖子

今天有点事,没办法实践一下您的方案,明天再试试,先谢谢您的耐心指教!
有没有相关资料可以给我看一下,对于在频域各谱线平均,不大懂,那最后频域谱线不就变成一条直线了?还有FFT变换后我想让幅值单位变成dB,怎么来处理啊?取对数,我不知道该怎么具体处理。
 楼主| 发表于 2011-4-21 14:25 | 显示全部楼层
回复 7 # hcharlie 的帖子

我在看您发过的一些帖子,我先学习一下,好像有点明白,不懂再请教您,谢谢!
 楼主| 发表于 2011-4-21 15:33 | 显示全部楼层
回复 7 # hcharlie 的帖子

您好!我发现,您的帖子大家讨论很深入,一时看不懂,反应不过来。因为我对这方面了解也不多,我就只有根据我的这个数据来问您了。首先,您说我的属于随机振动信号?我这个数据是在电机驱动负载做往返运动时,其中一段路程会产生共振,我对这段路程提取的速度数据,这个不属于随机振动信号吧?
发表于 2011-4-21 16:02 | 显示全部楼层
从时域曲线和频域谱图看,你这个信号随机性很强,也许内含有确定性信号,但淹没在随机信号中了,所以建议你要做多次谱平均,3次恐怕少了。
发表于 2011-4-23 22:56 | 显示全部楼层
幅值你也用dB啊,直接10*log10(abs(fft(x))/N)

点评

20*log10(abs(fft(x))/N)  发表于 2011-4-24 06:59
发表于 2011-4-24 00:46 | 显示全部楼层
回复 2 # hcharlie 的帖子

请教一下帧数和每帧采样点数一般如何选择或设置合适呢?
发表于 2011-4-24 06:57 | 显示全部楼层
回复 13 # hhtnwpu 的帖子

采样点数和频率分辨率有关
平均次数与统计精度有关
发表于 2011-4-24 12:44 | 显示全部楼层
回复 14 # hcharlie 的帖子

有常用的要求规范么?对这个不太了解,求指教
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-29 06:02 , Processed in 0.081067 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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