【问题标题】:Gnuradio: How to Detect a FFT Plot's Peak?Gnuradio:如何检测 FFT 图的峰值?
【发布时间】:2017-12-21 17:39:57
【问题描述】:

我正在使用连接到 Gnuradio 的 hackRF 来收集来自一键遥控器的信号。我只需要估计遥控器和接收器之间的距离 (HackRF)。

我设计了以下 grc 文件来过滤我感兴趣的领域。我需要找到峰值(FFT 接收器提供的 FFT 图的最大值),如果该值高于阈值(例如,-50db),我需要将该值写入文件(例如,一个文本文件)。

总而言之,我想要一个包含所有大于阈值的 FFT 峰值的输出文件。比如附图中,这个值在-22db左右。

【问题讨论】:

  • 将时域信号通过 fft 块传递到自定义的树外模块接收器,该接收器读取样本并将它们与阈值进行比较。

标签: gnuradio gnuradio-companion


【解决方案1】:

在您的流程图中,如果您想避免 HackRF 的 DC 偏移,则 FFT 接收器的基带频率应设置为 917MHz-340kHz。

您可以将 rtl_power 与 rtl 加密狗(校准到 900 MHz 频段中的已知频率)一起使用,它会输出 CSV 文件。

【讨论】:

  • DC 真的很痛苦 ;-)
【解决方案2】:

这在 GNU Radio 中非常简单。下面的流程图可能是一个很好的起点。但是,您必须注意Log Power FFT block 的参数。请注意,对于低于阈值的样本,流程图将存储 0,这是不太正确的。如果您只存储高于阈值的值,您有两个选择。

  1. 您可以正确使用 ValveSignal Probe 块,但取决于采样率可能会影响您的性能。
  2. 您实现了一个仅在触发器打开时才输出样本的自定义块。

祝你好运!

【讨论】:

  • 我构建了这个精确的图表,使用范围接收器而不是文件接收器,并且我没有得到任何样本超出最大值。我尝试了很多东西,但似乎最大块在 Ubuntu 16.04.2 上的 3.7.9 中有一些问题。有其他人看过吗?
  • @portforwardpodcast 你确定吗?也许它们都是零。
猜你喜欢
  • 1970-01-01
  • 2019-02-14
  • 2021-12-21
  • 2021-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-29
  • 1970-01-01
相关资源
最近更新 更多