Ещё двадцать лет назад радиолюбитель, желающий принимать сигналы разных диапазонов, собирал под каждую задачу отдельную схему: гетеродины, смесители, фильтры промежуточной частоты, детекторы под конкретный вид модуляции. Сегодня для той же задачи достаточно копеечного USB-донгла размером с флешку и ноутбука. Разница объясняется не чудом, а сменой подхода: там, где раньше сигнал обрабатывали десятки согласованных деталей на плате, теперь всё делает программа, а на плате остаётся минимальный аналоговый тракт, который лишь готовит сигнал к оцифровке.

Что скрывается за аббревиатурой SDR и почему это не просто ещё один приёмник

Software defined radio, программно определяемое радио, - это архитектура, в которой большинство функций классического приёмника перенесены из аппаратной части в программный код. В обычном супергетеродине фильтрация, демодуляция и выделение полезного сигнала выполняются физическими катушками, конденсаторами и специализированными микросхемами, рассчитанными под конкретный вид модуляции. В SDR-приёмнике аналоговая часть сведена к минимуму: она принимает сигнал из эфира, переносит его на низкую частоту и как можно быстрее превращает в поток цифровых чисел. Всё остальное, от фильтрации соседнего канала до распознавания конкретного вида модуляции, выполняет процессор компьютера или встроенный сигнальный процессор по алгоритмам, записанным в виде программного кода, а не в виде физической схемы.

Из этого вытекает главное практическое следствие. Чтобы принять другой вид сигнала классическим приёмником, обычно нужно менять или перестраивать аппаратную часть. В SDR-приёмнике для перехода от приёма радиовещательного ЧМ к приёму авиационной связи, цифровых пакетов метеозондов или сигналов спутников погоды достаточно запустить другую программу или изменить параметры существующей, оставив железо нетронутым. Один и тот же кусок аппаратуры превращается в анализатор спектра, в сканер, в декодер цифровых протоколов и в обычный радиоприёмник в зависимости от того, какой софт сейчас работает с потоком данных с антенны.

Квадратурная демодуляция и зачем сигналу нужны две составляющие I и Q

Ключевая идея, без которой SDR не мог бы работать, - квадратурная демодуляция, то есть представление радиосигнала не одним числом на каждый момент времени, а парой чисел, которые принято обозначать буквами I и Q. Первая составляющая, синфазная, получается путём смешивания входного сигнала с колебанием местного гетеродина. Вторая составляющая, квадратурная, получается точно так же, но гетеродинное колебание для неё предварительно сдвигают по фазе на девяносто градусов. В результате на выходе смесителей появляются два потока, которые вместе полностью описывают и амплитуду, и фазу исходного радиосигнала в каждый момент времени, тогда как один поток дал бы только часть этой информации и не позволил бы однозначно отличить сигнал выше частоты гетеродина от сигнала ниже неё.

Практическая польза пары I и Q в том, что имея оба потока, дальнейшая обработка сигнала превращается в задачу обычной математики: демодуляция амплитудной, частотной или однополосной модуляции, вычисление спектра через быстрое преобразование Фурье, подавление зеркального канала приёма и любая другая операция выражается через сложение, умножение и другие операции над двумя числовыми рядами. Именно поэтому квадратурное представление сигнала стало стандартом де-факто во всей современной цифровой радиотехнике, от бытовых радиоприёмников до базовых станций сотовой связи.

Роль АЦП и теоремы Котельникова в оцифровке радиосигнала

Аналого-цифровой преобразователь превращает непрерывное электрическое напряжение сигнала в последовательность чисел, беря отсчёты через равные промежутки времени. Чтобы по этой последовательности можно было безошибочно восстановить исходный сигнал, частота взятия отсчётов должна как минимум вдвое превышать ширину полосы частот принимаемого сигнала - это требование известно как теорема Котельникова, за рубежом чаще упоминаемая как теорема Найквиста и Шеннона. Если частота дискретизации окажется ниже нужной, в оцифрованном сигнале появятся паразитные ложные частоты, неотличимые от настоящих, и никакая программная обработка задним числом это не исправит, потому что информация теряется уже на этапе оцифровки.

Разрядность АЦП определяет другой параметр - динамический диапазон, то есть способность приёмника одновременно различать очень слабый и очень сильный сигналы без искажений. Чем больше бит в каждом отсчёте, тем точнее описывается амплитуда сигнала и тем шире диапазон уровней, которые прибор способен обработать без перегрузки на одном конце шкалы и без потери слабых станций на другом. Именно баланс между частотой дискретизации, разрядностью АЦП и скоростью канала передачи данных в компьютер определяет реальную полосу обзора и качество приёма конкретного SDR-устройства.

Как обычный телевизионный тюнер превратился в широкополосный радиоприёмник

История RTL-SDR началась не с разработки специализированного радиоприёмника, а с массового чипа RTL2832U компании Realtek, предназначенного для дешёвых USB-приставок цифрового телевидения стандарта DVB-T. Первые попытки использовать этот чип для смежных задач относятся к 2008 году, когда программист Эрик Флай написал софт для нестандартного применения чипа. Настоящий прорыв случился позже, когда разработчики Антти Палосаари и Стив Маркграф в рамках проекта Osmocom обнаружили, что чип умеет отдавать через USB-интерфейс не готовый декодированный телесигнал, а сырой поток квадратурных отсчётов I и Q с частотой дискретизации до нескольких мегагерц. Этой недокументированной возможности оказалось достаточно, чтобы копеечная телевизионная приставка ценой в несколько долларов превратилась в полноценный широкополосный радиоприёмник, доступный любому желающему без паяльника и специальных знаний.

Типичный донгл на чипе RTL2832U с тюнером Rafael Micro R820T перекрывает диапазон примерно от 24 мегагерц до 1766 мегагерц, содержит два восьмиразрядных аналого-цифровых преобразователя и способен отдавать в компьютер поток с частотой дискретизации до 3,2 мегагерца, хотя стабильную работу без потери отсчётов производители обычно гарантируют на уровне около 2,4-2,8 мегагерца. Такой ширины полосы обзора достаточно, чтобы одновременно видеть на экране целую пачку соседних радиостанций или каналов связи, а не только ту частоту, на которую настроен приёмник в конкретный момент.

Приём длинных и средних волн через прямую оцифровку без тюнера

У бюджетных тюнеров вроде R820T есть нижняя граница рабочего диапазона около 24 мегагерц, потому что сама микросхема тюнера физически не рассчитана на более низкие частоты. Радиолюбители нашли способ обойти это ограничение через режим прямой оцифровки, когда сигнал с антенны подаётся не через штатный тракт тюнера, а напрямую на вывод самой микросхемы RTL2832U, минуя усилительные и смесительные каскады. В таком режиме чип оцифровывает сигнал прямо на его исходной частоте без предварительного переноса, что открывает доступ к диапазону длинных, средних и части коротких волн вплоть примерно до 14-28 мегагерц в зависимости от конкретной реализации. Плата за это - заметно худшая чувствительность и повышенная восприимчивость к помехам, поэтому режим прямой оцифровки годится скорее для экспериментов и любительского приёма, чем для профессиональной связи.

Программное обеспечение, которое превращает поток чисел в звук и картинку спектра

Само по себе устройство RTL-SDR - это просто источник потока квадратурных отсчётов, поэтому без софта на компьютере оно бесполезно. За долгие годы вокруг чипа сложилась целая экосистема программ: одни показывают панораму эфира в виде водопадной диаграммы и позволяют кликом мыши переключаться между станциями, другие декодируют конкретные цифровые протоколы вроде сигналов авиационных транспондеров, метеорологических спутников или пакетной связи. Библиотека GNU Radio даёт возможность собирать собственные цепочки обработки сигнала из готовых блоков без написания кода с нуля, а специализированные проекты вроде декодеров сигналов спутников позволяют получать изображения облачности прямо на домашний компьютер с обычной комнатной антенной.

Отдельного внимания заслуживает динамический диапазон дешёвых тюнеров: поскольку АЦП оцифровывает сразу всю широкую полосу, а не одну выбранную станцию, на его вход попадает суммарная энергия множества сигналов одновременно, включая мощные близлежащие передатчики. Из-за этого при работе рядом с сильными источниками, например городскими FM-станциями, приёмник может терять чувствительность к слабым сигналам на других частотах - эту особенность приходится учитывать при выборе усиления и при установке дополнительных фильтров на входе антенны.

Практическое применение RTL-SDR от авиации до метеорологических спутников

Широкая полоса обзора и доступная цена сделали донглы на RTL2832U универсальным инструментом для самых разных задач приёма, и вот основные направления, где эта технология прижилась особенно прочно:

  1. слежение за воздушным трафиком через приём сигналов автоматического зависимого наблюдения ADS-B, которые самолёты передают на фиксированной частоте 1090 мегагерц, что попадает прямо в рабочий диапазон бюджетного тюнера;
  2. приём изображений с метеорологических спутников, передающих картинки облачности в диапазоне около 137 мегагерц, которые декодируются специализированным софтом прямо во время пролёта спутника над домом наблюдателя;
  3. мониторинг любительской и служебной радиосвязи, включая приём сигналов цифровых видов модуляции, пакетной телеметрии и данных с метеозондов, запускаемых метеослужбами дважды в сутки.

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

Ограничения бюджетных SDR-приёмников и способы их обхода

При всех достоинствах дешёвый донгл остаётся сильно упрощённым устройством по сравнению с профессиональной аппаратурой, и у этого есть конкретные технические причины. Восьмиразрядный АЦП даёт ограниченный динамический диапазон, поэтому мощная близкая станция способна забить весь тракт и заглушить слабые сигналы на соседних частотах даже без прямого совпадения по частоте настройки. Опорный генератор в дешёвых моделях обычно нестабилен по температуре, из-за чего частота настройки слегка плывёт при нагреве корпуса, что особенно заметно при приёме узкополосных цифровых сигналов, требовательных к точности частоты.

Производители и энтузиасты нашли рабочие решения для большинства этих проблем. Улучшенные версии донглов комплектуют термостабилизированным кварцевым генератором TCXO с точностью около одного ppm вместо обычного дешёвого кварца, что резко снижает уход частоты при нагреве. Для приёма коротких, средних и длинных волн поверх ограничения тюнера по нижней частоте используют внешние конвертеры-апконвертеры, которые сдвигают весь низкочастотный диапазон вверх в рабочую зону тюнера, либо переключают устройство в упомянутый режим прямой оцифровки. Против перегрузки мощными станциями помогают внешние полосовые и режекторные фильтры перед антенным входом, которые физически отсекают заведомо ненужный диапазон частот ещё до того, как сигнал попадёт на вход усилителя и АЦП.

Экономика этой технологии объясняет её массовое распространение лучше любых технических аргументов. Специализированный аналоговый приёмник под каждый вид сигнала требует отдельной разработки, отдельной платы и отдельного корпуса, поэтому его себестоимость и цена всегда выше. Чип RTL2832U и подобные ему производятся миллионными тиражами для совершенно другой массовой индустрии - цифрового телевидения, поэтому цена самого кристалла минимальна, а вся гибкость достигается программным путём практически бесплатно. Именно поэтому донгл ценой в десять-пятнадцать долларов способен заменить сразу несколько узкоспециализированных приёмников, а обновление функциональности сводится к скачиванию новой версии программы, а не к покупке нового аппарата.