3

受信信号が復調器ブロックに渡される前に、信号の強度/dBレベルを測定するのを手伝ってくれませんか?

信号の dB レベルをユーザー定義の「しきい値」レベルと比較する必要があります。以下にその理由を説明する。

GNU Radio Companion (およびかなり基本的な python) を使用して、ユーザーが 2 種類のスキャンを作成し、それらのスキャンを実行できるようにするプログラムを作成しました。

バンド スキャンにより、ユーザーは開始周波数、停止周波数、およびステップ周波数を指定できます。Python で記述された関数は、SDR (HackRF One) に開始周波数 (たとえば 90MHz) に合わせてから、停止周波数 (たとえば 110MHz) に達するまですべてのステップを順番に調整するように指示します。ステップ周波数は、各チューニング ステップの周波数距離を定義します。したがって、ステップ周波数が 50KHz で、開始周波数と停止周波数が上記のとおりである場合、スキャンは停止周波数に達するまで 90MHz、90.05MHz、90.10MHz、90.15MHz などで開始されます。これはうまくいきます。

チャネル スキャンでは、スキャンする離散周波数をいくつでも指定できます。たとえば、88.4MHz、98.9Mhz、102.5Mhz、103.8Mhz です。繰り返しになりますが、Python で記述された関数は、SDR に各「チャネル」に順番にチューニングするよう指示します。これもうまくいきます。

ユーザー定義の「しきい値」値を格納する変数を作成しました。ユーザーは、GNU RC で生成された wxGUI FFT シンクを使用してスペクトルを見て、ノイズ フロアが垂直軸 (パワー dB) のどこにあるかを観察し、dB の読み取り値 (-45 など) をテキスト ボックスに入力することで、適切なしきい値を定義できます。ボタンをクリックしてしきい値を設定します (テキスト ボックスの値をしきい値変数に格納します)。シンプルな..

私がする必要があるのは、FFT シンクに入る信号の dB レベルを測定することです。これにより、少しの Python を使用して、SDR が現在調整されている周波数の RF エネルギーが、定義されたしきい値を上回っているか下回っているかを確認できます。比較を行うことができれば、その周波数をアクティブな周波数のリストに追加する、またはユーザーが信号を聞くことができるようにスキャンを停止するなど、スキャンに特定の結果を持たせることができます。

私はウェブのダックダックゴーイングを何度も行ってきましたが、解決策が見つかりません。GNU RC のさまざまなブロックも試してみましたが、必要なことを実行できる 1 つまたは組み合わせが見つかりません。

私は GNU RC / SDR の初心者なので、単純なもの (それほどではない) が欠けていることを願っています..

ありがとう。

4

0 に答える 0