XIVN1987 发表于 2012-4-26 17:17:41

求教:波形的FFT与低通滤波截至频率。。。


如下图所示,是我通过ADC采集热敏电阻分压得到的电压值值:



从图上可知,信号中存在较多的干扰,所以需要一个低通滤波器进行,,可是我该把低通滤波器的截至频率设为多少呢???

为了知道信号的频谱,我参考网上的一个Python脚本对上面的波形进行了FFT,求的的频谱分布如下所示:




但是,我不知道这种方法是不是可行,,如果可行的话,那低通滤波器的截至频率是不是应该设为10Hz左右啊???如果这种方法不可行,那要怎样确定低通滤波器的截止频率呢???


还有,最上面那个波形到底可不可以用FFT进行频谱分析啊???

NemoGu 发表于 2012-4-26 17:28:29

滤波前分析信号的频谱是必然的
而且Matlab做FFT很简单
不过从给出的频谱看 10Hz左右信号强度比起低频信号(0Hz)附近的非常弱啊

gzhuli 发表于 2012-4-26 17:36:34

FFT点数明显不够啊。

eduhf_123 发表于 2012-4-26 17:49:16

对楼主的这种情况,用频谱分析法已经不使用了。

假设使用简单一阶RC低通滤波器:
我们知道其对阶跃输入的响应为O(t)=1-e^(-t/τ),误差为E(t)=e^(-t/τ),式中τ=R*C,为电路的时间常数。
如果系统要求在5秒内采集到与实际值误差在5%以内的数据,那么:
e^(-5/τ)<0.05
两边同时取倒数得:
e^(5/τ)>20
两边取对数得:
5/τ>ln(20)≈3
即:
R*C=τ < 5/3≈1.667

XIVN1987 发表于 2012-4-26 17:50:06

gzhuli 发表于 2012-4-26 17:36 static/image/common/back.gif
FFT点数明显不够啊。

您具体指什么“明显不够”???我不太懂。。。

你是想要下面这样子吗???




忘了说了:我的ADC采样频率是100Hz,

XIVN1987 发表于 2012-4-26 17:53:46

eduhf_123 发表于 2012-4-26 17:49 static/image/common/back.gif
对楼主的这种情况,用频谱分析法已经不使用了。

假设使用简单一阶RC低通滤波器:



谢谢指教,,,
这个我不太懂,我先研究研究。。。

eduhf_123 发表于 2012-4-26 17:59:40

按照上述方法取参数,则:
f。= 1/(2*π*R*C) ≈ 0.1Hz、

值得注意的是,此时RC滤波电路中的R取值在百KΩ量级,无法驱动ADC,需要再加一级缓冲。

XIVN1987 发表于 2012-4-26 18:06:27

eduhf_123 发表于 2012-4-26 17:59 static/image/common/back.gif
按照上述方法取参数,则:
f。= 1/(2*π*R*C) ≈ 0.1Hz、




谢谢,0.1Hz截止频率的话,那好像真的跟FFT的方法确定的频率不太一样了,,


您能具体讲解一下,为什么针对这种情况FFT已经不适用了吗???{:smile:}

gzhuli 发表于 2012-4-26 18:54:41

直流分量太大了,去掉再出曲线看看。
初步看5Hz附近有一个小峰,截止频率多少就要看滤波器特性了。
4楼是按1阶RC低通来算的,截止点当然低了,既然你都ADC采回来了,最理想的当然是DSP处理了。

wear778899 发表于 2012-4-26 21:47:51

既然都 matlab 了直接用 matlab做一个数字滤波 套到程序里就好

XIVN1987 发表于 2012-4-26 22:09:04

wear778899 发表于 2012-4-26 21:47 static/image/common/back.gif
既然都 matlab 了直接用 matlab做一个数字滤波 套到程序里就好

程序中的数字滤波当然是不可或缺的,但是对输入信号在进入ADC之前进行适当的硬件滤波也是必要的吧。。。

loohoo0302 发表于 2012-4-26 22:29:09

ADC采集看:主信号不是周期函数用FFT效果不明显,干扰比主信号频率高很多
最简单的滤波算法:采集256点总和再移8位,之后总和-ADC0+ADC256
总和=总和-ADC(N)+ADC(N+256)
A(N)=(总和)>>8
计算可以达到很快速度

gzhuli 发表于 2012-4-27 11:06:07

XIVN1987 发表于 2012-4-26 22:09 static/image/common/back.gif
程序中的数字滤波当然是不可或缺的,但是对输入信号在进入ADC之前进行适当的硬件滤波也是必要的吧。。。 ...

只要干扰信号不超出ADC量程范围,可以不需要额外的硬件滤波。
移动平均法就是最简单的FIR滤波器,而且相位特性是线性的,没有过冲,特别适合这种阶跃信号。

无级电工 发表于 2012-4-27 11:14:25

随便搞个滑动平均就会改善很多。
页: [1]
查看完整版本: 求教:波形的FFT与低通滤波截至频率。。。