icola 发表于 2010-4-5 17:55

一个信号处理问题

我用640Hz采集了一段加速度时程,采用FFT分析时只需分析到250Hz而不是320Hz,下面方法正确的有:

方法1:采用matlab的FFT命令分析得到分析频率为250Hz的频谱后,直接截取250Hz以下的频谱数据;

方法2:采用matlab的FFT命令分析得到分析频率为250Hz的频谱后,采用低通滤波器滤掉250Hz~320Hz的频率成份;

方法3:采用matlab的resample命令以500Hz为采样频率对时程数据进行重采样,再用FFT命令得到分析频率为250Hz的频谱。

哪种方法是正确的?

hcharlie 发表于 2010-4-5 20:02

回复 楼主 icola 的帖子

方法2是最理想的。
但要修改一下:在数据采集时就要采用截止频率250Hz的低通滤波器,主要在(640-250)=390Hz以上要滤干净(衰减50~60dB以上),而250~390Hz之间不可能滤干净,但这部分数据被扔掉,而对250Hz以下的信号可能有混淆干扰的390以上的信号被滤干净了。这是最正宗的方案。
如果用数字滤波的方法,需要大大提高采集速度才行,不是已经用640Hz采集的数据就能滤掉你所说的250Hz~320Hz的频率成份的。你可以在FFT以后扔掉250~320的数据,但你不能防止混淆干扰。

marinew 发表于 2010-4-5 21:24

当然是方法2.

不过不明白为什么楼上的老师要说:
“如果用数字滤波的方法,需要大大提高采集速度才行”
为什么要大大提高采集速度呢

另外楼主是用AD采集板卡,还只是用软件仿真的方式去采集数据呢

icola 发表于 2010-4-6 02:29

回三楼:我是采用AD采集板卡采集的信号,但数据采集时没有采用截止频率250Hz的低通滤波器。

icola 发表于 2010-4-6 02:34

关于二楼hcharlie 主任的答案,还有不太明白的地方:
1.由于我是采用AD采集板卡采集的信号,但数据采集时没有采用截止频率250Hz的低通滤波器。对于这种已经发生的情况,我只能采用数字滤波而不是硬件滤波来滤掉不需要的频率成份,但数据已经采集完毕,采样频率也确定了,怎样才能既滤掉250~320Hz的数据,又防止混淆干扰呢?

hcharlie 发表于 2010-4-6 07:42

本帖最后由 wdhd 于 2016-9-20 13:57 编辑

原帖由 icola 于 2010-4-6 02:34 发表
1.由于我是采用AD采集板卡采集的信号,但数据采集时没有采用截止频率250Hz的低通滤波器。对于这种已经发生的情况,我只能采用数字滤波而不是硬件滤波来滤掉不需要的频率成份,但数据已经采集完毕,采样频率也确定了,怎样才能既滤掉250~320Hz的数据,又防止混淆干扰呢?
这是不可能的。
数字滤波有局限的。数字滤波本身是不能防止频率混淆的。正宗的数字滤波技术需要用很高的采集频率,比如20000Hz,我们感兴趣的频率250Hz,混淆频率为20000-250=19750以上,所以可以配一个10K的硬件低通滤波器,带外衰减不必太高,再采用250Hz的数字滤波,这样才是有效的,我们知道设计制造10K的简易滤波器比250Hz的高效滤波器要简单得多,但绝不是不要硬件滤波器。

[ 本帖最后由 hcharlie 于 2010-4-6 10:26 编辑 ]
页: [1]
查看完整版本: 一个信号处理问题