2

私は最近 SDR の実験を始め、GNU Radio プラットフォームを使用しています。

具体的には、'gnuradio-companion' グラフィカル インターフェイスです。

4 象限の arcTangent 関数を決定する必要があり、問題が発生しました。「GRC」ファイル内で ATAN 関数を正常に評価できましたが、Python は ATAN2 をサポートしていますが、この関数を実装する方法を理解できませんでした。

fast_atan2f と呼ばれる GNU Radio に含まれるルックアップ テーブル関数があることを読みましたが、これが標準の gnuradio-companion セットアップに含まれるブロック内からアクセスできるかどうかはわかりません。定数ソース ブロック内から Python 式 'math.atan2(arg1,arg2)' にアクセスできましたが、これを定数値として必要としません。2 つの浮動小数点入力 (またはATAN2 関数を適切に評価するために、フロー グラフ内に収まる単一の複雑な入力)。

説明が不明確な場合に備えて、問題を説明するのに役立つサンプルの「GRC」ファイルを含めました。

GNU Radio コンパニオン サンプル ファイルへのリンク

フロー グラフのスクリーンショット

4

1 に答える 1

4

ブロックgnuradio.blocks.complex_to_arg( GRC のComplex to Arg ) は atan2 操作です。

説明したように 2 つの個別の浮動小数点入力が必要な場合は、その前にFloat To Complexブロックを配置します。

gnuradio.analog.quadrature_demod特定のアプリケーションによっては、 ( GRC のQuadrature Demod )にも関心がある場合があります。このブロックは基本的に atan2 の導関数を生成しますが、180° または 360° での不連続はありません。これは、FM 信号の復調などに適しています。

于 2015-10-16T03:49:12.770 に答える