我正在处理一个问题,我需要对 100 微秒以下的 500khz 信号做出决定。信号嘈杂,我正在检测输入信号中的峰值。目前,我做了一个 7 步均值滤波器(将样本降低 7 个),然后是 8 个抽头的移动平均值。这会延迟我的信号 56 个样本大约 112 微秒。(2 微秒* 7 * 8)如果我减少过滤器抽头,噪音开始混淆我的检测器并开始失败。噪声是高斯白噪声,噪声中没有主频。
我不仅对峰值的存在感兴趣(那将是一个更简单的问题),而且我对峰值的上升和下降时间也很感兴趣。峰值基本持续时间可能在 50 个样本 (100uSec) 到 5,000 个样本 (10msec) 之间。在缓慢的情况下,决策速度无关紧要,但在高速情况下,决策速度确实会产生影响。
我目前的检测器很粗糙但非常有效。我基本上会及时回顾过滤后的信号,看看是否满足某些阈值,如果有峰值则不做出决定。一旦我怀疑有一个高峰,我就会找到上升和下降的时间。整个操作耗时不到 50 微秒,并且非常优化。由于过滤器内存,我在时间上又松了 100 微秒,我想看看我是否可以获得更好的检测器设计。
我已经考虑了几个选项,例如信号的导数(由于噪声而放弃)、匹配滤波器(由于频率范围宽、难以设计一个可以很好工作的滤波器等)
我正在寻找通过减少滤波器延迟但不影响滤波器质量来优化我的决策时间从 150 微秒到 100 微秒范围的想法。