【问题标题】:Frequency analysis of very short signal in GNU OctaveGNU Octave中极短信号的频率分析
【发布时间】:2016-04-03 03:37:27
【问题描述】:

我有一些来自示波器的非常短的信号(50k-200k 样本)记录了大约 2ms​​ 的时间长度。这些是带有 ESD(静电放电)火花的记录信号的声音信号。 我想获得该信号的一些频率数据,在接近声学的频率范围内(最高约 30kHz),具有尽可能高的时间分辨率。

我尝试绘制频谱图(八度音阶中的频谱图)来查看信号,但输出并不是很有用。使用specgram( x, N, fs );,其中x 是我的fs 采样率信号,对于低N 值,我会收到从大约500MHz 的非常高频率开始的绘图,对于大N 值(如2^12),我会获得更好的频率分辨率-13) 但窗口太宽,我在整个信号长度上只收到 2 个频谱值。

我知道这可能是specgram函数可能使用的傅里叶变换的限制(实际上我对信号分析了解不多)。

有没有其他方法可以获得这种信号的一些频率(作为时间的函数)信息?我读过一些关于小波的东西,但是当我尝试使用信号包的dwt 函数时,我收到了这个错误:

error: 'wfilters' undefined near line 51 column 14
error: called from
    dwt at line 51 column 12

即使这可行,我也不确定我是否知道如何实际使用这些小波函数的输出...

【问题讨论】:

    标签: signal-processing fft octave wavelet


    【解决方案1】:

    要从如此高的采样率中获取音频信息,您需要获得一个足够长的样本向量,以包含至少几个完整的音频周期,例如许多 10 毫秒的连续样本,这可能超过也可能不超过您的示波器可以收集的范围。为了合理地处理这些数据量,您可以对样本数据进行低通滤波,使其仅包含音频频率,然后将其重新采样到较低的采样率,但高于该滤波器截止频率的两倍。然后你会得到一个更短的样本向量来为你的音频频谱分析提供 FFT。

    【讨论】:

    • 似乎过滤可能是最好的选择,即使我无法获得如此短信号的频谱作为时间的函数(最大 2÷4ms,实际火花信号约为 1 ms 长),也许我将能够过滤掉所有较低的频率(对我来说,这些只是噪声),在示波器上看起来更像是接近恒定的值,并对过滤后的信号做一些事情。附言这里没有周期;)在理想情况下,ESD会产生N波,这对应于正弦波的1个周期(只是不同的形状),实际上有1个周期和4-5个非常小的(幅度)“重复" 之后
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-27
    • 1970-01-01
    • 2013-06-23
    • 1970-01-01
    • 1970-01-01
    • 2012-02-23
    相关资源
    最近更新 更多