2

我最近开始试验 SDR 并一直在使用 GNU Radio 平台。

更具体地说,“gnuradio-companion”图形界面。

我需要确定一个 4 象限 arcTangent 函数并且遇到了一些麻烦。在“GRC”文件中,我已经能够成功评估 ATAN 函数,但是,虽然 python 支持 ATAN2,但我无法弄清楚如何实现这个函数。

我读过 GNU Radio 中包含一个名为 fast_atan2f 的查找表函数,但我不知道这是否可以从标准 gnuradio-companion 设置中包含的块中访问。我能够从常量源块中访问 python 表达式'math.atan2(arg1,arg2)',但我不需要它作为常量值,我正在寻找一个具有两个浮点输入的块(或单个复杂输入)将适合流程图以正确评估 ATAN2 函数。

我已经包含了一个示例“GRC”文件,如果我的描述不清楚,它可能有助于说明问题。

指向 GNU Radio 配套示例文件的链接

流程图的屏幕截图

4

1 回答 1

4

gnuradio.blocks.complex_to_arg( GRC 中的Complex to Arg)是一个 atan2 操作。

如果您需要两个单独的浮点输入,如您所述,则只需在其前面添加一个Float To Complex模块。

根据您的具体应用,您可能还对gnuradio.analog.quadrature_demod(GRC中的正交解调)感兴趣。该块基本上产生 atan2 的导数,但在 180° 或 360° 处没有任何不连续性。这适用于例如解调 FM 信号。

于 2015-10-16T03:49:12.770 回答