Есть ли способ отслеживать изменения сигнала в GNU Radio? - PullRequest
0 голосов
/ 21 февраля 2011

Я пытаюсь отслеживать и анализировать изменения в принимаемом сигнале из-за изменений в канале с помощью GNU Radio (также с использованием USRP Ettus). Я хотел бы написать программу с использованием GNU Radio, чтобы иметь возможность отслеживать изменения в принимаемом сигнале.

Вещи, которые я хотел бы отследить, включают (но не ограничиваются ими):

  • изменения центральной частоты
  • изменения в принимаемой мощности
  • изменения пропускной способности
  • скачки мощности

В конечном счете, я бы хотел отслеживать очень маленькие изменения (даже самые маленькие).

Кто-нибудь знает, возможно ли это? Если так, как я могу начать, и где я могу найти информацию об этом? Кроме того, будет ли этот тип информации доступен на базовом уровне C ++ или я могу получить ее через верхний уровень python?

Спасибо.

1 Ответ

1 голос
/ 24 февраля 2011

Если вы хотите выполнить анализ в gnuradio, вам нужно сделать это, объединив блоки обработки сигналов.Список доступных блоков дан в http://gnuradio.org/doc/doxygen/modules.html.

. Для простого случая принятой мощности есть блок rms_cf, который выглядит так, как будто он преобразует поток комплексных чисел в поток с плавающей запятой, представляющий среднеквадратичную мощность.Затем вы можете суммировать их с помощью блока integrate_ff и затем выводить в файл.

например,

from gnuradio import gr

incoming_signal = ???
alpha = ???
signal_to_power = gr.rms_cf(alpha) # I have no idea what alpha means here :(.
sumup = gr.integrate_ff(10000) # Decimate by factor of 10000
dst = gr.file_sink_f(gr.sizeof_float, "the_file_name")
tb = gr.top_block()
tb.connect(incoming_signal, signal_to_power, sumup, dst)
tb.run()

Для центральной частоты и полосы пропускания, возможно, вы могли бы собрать кучу полосовых фильтрови посмотрите на мощность, содержащуюся в различных участках частотного диапазона, представляющего интерес, а затем отбросьте нужную информацию.Посмотрите список доступных блоков.

...