среда, 17 февраля 2016 г.

Проблема обнаружения кратковременной передачи на спектре.

Все мы привыкли определять наличие или отсутствие сигнала в эфире с помощью анализатора спектра. Есть пик на спектрограмме – есть сигнал, нет пика – нет сигнала. Но вот в случае, если передатчик работает с перерывами уже не так все просто. Совсем становиться не просто, если передатчик большую часть времени ничего не передает и включается только на очень короткий период времени. Такой короткий по времени сигнал анализатор спектра, скорее всего, просто не увидит. Шанс обнаружения зависит это от вычислительных возможностей анализатора и от ширины полосы наблюдаемых частот.
Почему это происходит.

Попробуем разобраться на примере блока FFT_sink из состава GnuRadio, но все ниже приведенное справедливо для младших моделей анализаторов спектра.
Блок FFT_sink получает на вход последовательность отсчетов квадратурного сигнала в количестве sample_rate (отсчетов в секунду). Для формирования изображения спектра входного сигнала нужно вывести на график N точек, соответствующие N коэффициентам, полученным в результате Быстрого Фурье Преобразования. Для того, чтобы получить N коэффициентов алгоритму БПФ нужно скормить N отсчетов входного сигнала. Изображение на графике меняется с частотой, определяемой параметром frame_per_second (кадров в секунду).
Что получается? Возьмем параметры по умолчанию N=1024 точки и frame_per_second=15 кадров в секунду. Количество отсчетов пусть будет sample_rate=2*10^6 отсчетов в секунду, что соответствует полосе в 2MГц.
За 1/15 секунды  (это 66667 мкс) проходит 133 333 отсчета. Из них анализируются только 1024, что соответствует отрезку времени примерно в 34мкс. 
Выходит, что из каждых 66667 мкс анализируется только кусочек в 34мкс , а остальные 66633мкс проходят в холостую. Это соотношение можно изменить, увеличив frame_per_second, но это увеличит нагрузку на процессор. Например, для моего старенького ноутбука предел 30 кадров в секунду. Еще можно количество точек уменьшить до 512, но не особо помогает.
Итак, если длительность передачи меньше 66633мкс, то есть шанс, что она целиком попадет в слепую зону и на спектре никакого пика мы не зафиксируем.
А какова длительность передачи? Возьмем, к примеру, микросхему СС1101, которая передает короткую кодограмму, длинной 16 байт на скорости 9600 бит в секунду. Известно, что там в начале еще передается два байта синхроимпульсов. Итого 18. Получается длительность одной кодограммы 18*8/9600 =15000мкс. А если скорость 115200 бит/сек, то получается уже 1250мкс.
Заметим мы эту кодограмму или нет? Можете посчитать сами, я в тервере не силен.



1 комментарий:

  1. Borgata Hotel Casino & Spa - JTR Hub
    Located in Atlantic City, Borgata Hotel Casino & Spa offers the finest in casino-roll.com amenities and entertainment. www.jtmhub.com It wooricasinos.info also provides a mens titanium wedding bands seasonal outdoor swimming septcasino.com

    ОтветитьУдалить