faisnow 发表于 2008-6-13 09:42

求传递函数的离散傅立叶变换

做一个信号恢复的问题。
正问题:y(n)=x(n)×h(n)   y(n)为采样信号,h(n)为传感器传递函数,x(n)为原始信号。
因为DP低频振动传感器对0.5Hz以下的信号采集有失真,需要采用信号恢复技术才能得到更为真实的测试信号X(n)。

反问题:X(k)=Y(K)/H(k)。X(k)、Y(K)、H(k)分别是y(n)、x(n)、h(n)的离散傅立叶变换。最后恢复信号x(n)=IDFT(X(k))。

请教:
(1)Y(k)好求,因为采样输出信号就是一个离散的时间序列,直接FFT可以得到;
(2)H(k)如何求?已知传感器H(s)的传递函数形式,如H(s)=s^2/(s^2+bs+c),如何求H(k)
         曾经将H(s)Z变换,即c2d(H(s),Ts, 'zoh')-->H(z),得到的是一个Z表达式,如何得到离散的H(k)呢?

本人需要处理部分测试数据,对信号处理不熟悉,望大家指点。谢谢。

yangzj 发表于 2008-6-13 10:41

把S变换转换成傅立叶变换,即令s=jw,然后把w按FFT的频率分辨率离散化得到H(K)

faisnow 发表于 2008-6-13 14:55

二楼处理与采样频率无关了,可行吗?

先谢谢二楼。

这种处理方法我也想过,但这里处理与采样频率无关了,是直接在对连续系统取间格值。

所以我使用此 c2d(H, Ts, zoh)就是这个考虑,他获得的Z表达式与传递函数S表达式是不一样的。
我现在尝试将Z表达式中Z使用e^(Ts)-->e^(Tjw)代替,不知这样处理是否正确。

songzy41 发表于 2008-6-13 18:32

我认为可以用激冲不变法,把模拟变成数字:
=impinvar(b,a,fs)
freqz(bz,az)
得到了H(k)

hustmingsl 发表于 2009-3-23 17:29

该问题解决了吗?
页: [1]
查看完整版本: 求传递函数的离散傅立叶变换