Как стать автором
Обновить

Определяем направление на аэропорт с помощью RTL-SDR и GNU Radio

Время на прочтение4 мин
Количество просмотров18K
Всего голосов 70: ↑70 и ↓0+70
Комментарии49

Комментарии 49

Спасибо! Всегда было интересно, как на самолетах с фиксированной антенной ориентировались по радио-маякам.


Но, в целом… Это очередная история о том, как аналоговую задачу, "решаемую на двух операционных усилителях", решить используя вычислительную мощность, которая превышает всю вычислительную мощность, доступную человечеству на тот момент…
(Утрирую, конечно. Скорее всего, задачу тогда решали на трех операционных усилителях.)

А как эта задача решается с помощью операционных усилителей?

Пример фазового детектора на ОУ

К122УД1

Мда, зачем спросил, все равно не понимаю

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

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

Кстати, да

Была гораздо более продвинутая машина. МИР-2.
Там можно было на языке высокого уровня программу писать. Но при этом можно было "одной командной ассемблера" посчитать "интеграл по контуру", загрузив в соответствующие "регистры" начальные условия, формулу и формулу контура...


Но, говорят, та машина пугала людей тем, что умела в аналитическом виде сложные дифуры решать… Из-за этого сейчас в более-менее живом виде есть, кажется, ровно один экземпляр. Я его видел в Политехе в 1986-м году. Он тогда еще работал.


По слухам — там программа и данные хранились в цифре, но некоторые вычисления производились через "ЦАП-ОУ-АЦП".

История развивается по спирали, возможно с квантовыми компьютерами опять будет так же :)
Я в живую видел аналоговую ЭВМ. Мне её работу продемонстрировали на вычислении колебаний многоэтажного здания при землетрясении. Показали формулу с кучей интегралов и потом запустили машину с помощью установки начальных коэффициентов через ISA плату в ПК Поиск. До сих пор помню шок при виде скачущих стрелок в «реальном времени» — в численном виде я решал интегралы в Пентиум2 300МГц и представлял как медленно считается интеграл с приемлемой точностью. А тут в реальном времени считает кучу интегралов, и результат оказывался в файле на ПК Поиск.
К122УД1 не ОУ, а дифференциальный усилитель. В данной схеме он используется для перемножения двух сигналов, один из которых подается на один из дифференциальных входов, а второй управляет током дифференциального каскада и, следовательно, его коэффициентом усиления.
Разница призрачна кмк. У операционного усилителя также дифференциальный вход, и из него можно получить дифференциальный усилитель добавлением нескольких резисторов. Да и маркировка намекает на схожесть, к примеру К140УД1 был самым распространённым операционным усилителем.
У операционного усилителя также дифференциальный вход, и из него можно получить дифференциальный усилитель добавлением нескольких резисторов.
Да, это так, причем его характеристики будут гораздо ближе к характеристикам идеального диффусилителя. Впрочем, чтоб приблизиться к идеалу, понадобится 3 (классический измерительный усилитель) или хотя бы 2 ОУ. Но попробуйте построить на ОУ аналоговый перемножитель, аналогичный приведенной Вами схеме, и без какого-либо внешнего нелинейного элемента у Вас это не получится. Дело в том, что ОУ предназначен для применения в схемах, характеристики которых полностью определяются цепями обратной связи и не зависят от параметров самого ОУ. Для этого ОУ выполняется с коэффициентом усиления с разорванной цепью обратной связи, который можно принять за бесконечность (реальные значения 500000 и более). Дифференциальный же усилитель, наподобие К122УД1, представляет собой лишь один усилительный каскад, коэффициент усиления которого небольшой и вполне конечен и определяется параметрами самого усилителя, а не цепями обратной связи. К тому же значением коэффициента усиления можно управлять, изменяя общий ток, протекающий через дифференциальную пару, что и используется в приведенной Вами схеме.
к примеру К140УД1 был самым распространённым операционным усилителем
— только до тех пор, пока не появилось ничего более приличного, потому как характеристики оставляли желать лучшего. Если уж говорить о самом популярном ОУ «всех времен и народов», то это скорее уж 741 (отечественный аналог 140УД7) — он был выпущен не намного позже, но выпускается и используется и по сей день.
> Утрирую, конечно. Скорее всего, задачу тогда решали на трех операционных усилителях

Почему нет, вполне интересный проект для радиокружка. Только сравнение фаз тут лишь 1/10 от схемы, сначала нужен приемник на 113МГц, АМ детектор, ФНЧ, ФВЧ, ФМ-детектор, только потом можно фазы сравнивать и на стрелочный индикатор выводить :)
На АМ детектор и фильтры кмк одного ОУ должно хватить ;)

В Перми приводной маяк ПЬ вещает на частоте 707 кГц. Я его на приемник прямого усиления уверенно принимаю.

NDB != VOR, это разные маяки и разные протоколы

В "тёплом ламповом" Ли-2 (Douglas DC-3), в обтекателе над кабиной — поворотная рамочная антенна радиокомпаса. Искать, например, по "радиополукомпас РПК-2".


Поворотная антенна используется для ADF маяков NDB. Там сигнал не содержит информации об относительном азимуте самолета, а просто определяется направление в котором сигнал самый сильный.

Азимут на север узнавать не надо, он равен нулю.

Что отнюдь не помешало написанию как минимум одного интересного фантастического
произведения
Иэн Бэнкс, «Алгебраист»
Действительно интересно, спасибо.
Подходящая для Flipper Zero задачка.
На Zero поддерживается SDR? Я думал, там ESP32, но может ошибаюсь.

Cудя по их сайту, не поддерживается. И там вроде STM32, а не ESP32

Зачем это нужно?

Я люблю исследовать все вокруг и постоянно таскаю с собой разные инструменты для этого. У меня в рюкзаке: WiFi-адаптер, NFC-ридер, SDR, Proxmark3, HydraNFC, Raspberry Pi Zero (из-за этого бывают проблемы в аэропорту). Всеми этими приборами не так просто воспользоваться на бегу, когда у тебя в одной руке чашка с кофе или ты едешь на велосипеде. Нужно сесть, разложиться, достать компуктер — это не всегда удобно. Я мечтал об устройстве, которое бы реализовывало типичные сценарии атак, было всегда в боевой готовности и при этом не представляло из себя пачку разваливающихся плат, смотанных изолентой.

А что помешает сделать поддержку любого нового устройства через USB либо беспроводные интерфейсы?
Если все равно Raspberry Pi с собой брать, зачем тогда Zero? Ну разве что по принципу из анекдота «какой же ты хакер без Zero» :)

Запустить нативно RTL-SDR и цифровые фильтры прямо на STM32 может не хватить ресурсов, но тут хз, я в их архитектуру не вникал.
Ну там всё-таки упор на желание обойтись без основного компонента — изоленты.
Но идея завести компактное устройство (меньше ноутбука/планшета/смартфона), которое можно использовать как хаб для любых имеющихся устройств, свежа.
Идея-то полезная, да. Только сегодня искал корпус для Raspberry Pi с ЖК-экраном, кнопками и литиевой батареей, чтобы сделать портативный IF-рекордер для трансивера, пока не нашел. Есть отдельно экраны, отдельно кнопки, отдельно powerbank, но сматывать все это синей изолентой вместе совершенно неохота.
сматывать все это синей изолентой вместе совершенно неохота.
вроде бы сейчас двусторонний разный скочт для этого?
Ну вот, как осенит, можно тоже на Кикстартер выкатывать — «больше товаров, хороших и разных».
Запустить нативно RTL-SDR и цифровые фильтры прямо на STM32 может не хватить ресурсов
Китайцы как то умудряются
Там стоит радиочип от Mirics прямо на плате, такой же как в приемниках SDRPlay, и он читается процом напрямую без USB. Разработчик девайса кстати русский, ветка с описанием есть на cqham, китайцы уже позже склонировали.
Я про то, что топовых STM32 на цифровые фильтры уже вполне хватает, ведь MSi001 осуществляет на борту только широкополосную фильтрацию (полоса 200...1536 кГц), а дальнейшая обработка на ПЧ ложится на процессор.
Это да. Там правда возможности уже на пределе — широкую полосу обзора не добавить, записи на SD (вроде) нет, новых декодеров не планируется. Я бы предпочел чтобы внутри был Nano Pi или Raspberry Pi, расширение возможностей в разы больше. Но вероятно было бы больше проблем с внутренними помехами и временем автономной работы.

Ниша портативных SDR давно актуальна, дома помех все больше, но хороших и законченных устройств с расширяемыми возможностями пока так и нет, даже странно, вроде 10 лет прошло с момента первых sdr. Не зря этот Malahit стал хитом как только появился, хотя он не идеален конечно, зато дешевый (что для большинства похоже ключевой момент:).
Тут уже зависит от того, что у нас в приоритете — автономность и портативность законченного изделия или желание иметь некий программный конструктор, гибкий и с невысоким порогом вхождения. Совместить эти два направления в одном устройстве вряд ли получится.

Если в приоритете первое, то Pi видится не лучшим решением — проблемы Вы сами расписали, а при желании можно добавить еще. Возможно, при острой нехватке производительности, можно посмотреть в сторону разделения DSP и GUI частей на разные однокристаллки. Да даже хотя бы вертикальное расположение дисплея на ILI9488 и использование для водопада аппаратного скроллинга части изображения уже позволило бы сэкономить часть вычислительных ресурсов. Но гибкости, наподобие gnuradio, тут не получится.

Если второе, то действительно нужно что-то мощное и с Linux, да еще и с GUI на борту, но придется заплатить габаритами и автономностью. Но мы действительно получим хороший и простой в использовании конструктор, что на мой взгляд является одним из основных преимуществ SDR.

Короче, я бы предпочел иметь оба варианта в виде «игрушек» на разные случаи. Но это так, мечтательная «болтовня с дивана», в реальной жизни пользуюсь китайским Tecsun PL-660 и «на поиграть» его мне хватает (хотя нет, сейчас начну мечтать увидеть на нем еще и водопад :)
C водопадом поиск станций гораздо эффективнее и приятнее, как давний пользователь SDR, могу подтвердить. На китайские приемники у меня вообще аллергия, всерьез их не могу воспринимать :) Как почитаешь ветку радиолюбителей об их доработках, там косяк на косяке. Там фактически все фильтры и всю приемную часть надо перебрать с недешевыми приборами, тогда оно заработает более-менее нормально. В Радио за последние годы цикл публикаций вроде был. Зато дешево конечно.

Портативный приемник с Linux иметь было бы действительно классно, да и GUI под Linux в принципе есть — GQRX, CubicSDR. Но понятно что продукт нишевый и специфический, вкладываться в разработку все боятся, может не окупится.

Кстати, SDR на базе Raspberry Pi недавно появился, но без экрана, клон KiwiSDR, рассчитан на web-интерфейс и удаленный доступ:
hackaday.com/2020/09/30/kiwisdr-vs-raspberrysdr-a-tale-of-two-sdrs
Там фактически все фильтры и всю приемную часть надо перебрать с недешевыми приборами, тогда оно заработает более-менее нормально.
С бытовухой так всегда было, что раньше с отечественной, что теперь с китайской. Вся радиолюбительская юность прошла в процессе создания «идеального приемника» и «идеального катушечного магнитофона». Причем, поскольку все делалось непременно «идеальным», то в приоритете был не результат, а сам процесс, поэтому ни одного полностью законченного изделия на том жизненном этапе я так и не создал, хотя было несколько вполне рабочих прототипов. Но на этапе, когда весь этот «ворох плат и проводов» надо было уже как-то упихать в корпус, приходили новые идеи и все начиналось с начала.

А сейчас у меня уже нет никакого энтузиазма что-то делать — проблем и по работе хватает выше крыши и ни сил, ни желания на что-то другое уже не остается. Просто иногда просыпаются приятные ностальгические воспоминания, когда я слышу шумы эфира, вот и слушаю изредка китайца (что-что, а шумы он принимает очень даже неплохо, хотя и шумы раньше были «лучше» и приятнее, как и трава зеленее).
В этом плане чем и хорош SDR — все в цифре, шанс накосячить при сборке в разы меньше :)
Меньше шанс что-то спалить в результате косяка, а уж где накосячить — это всегда найти можно, что в железе, что в софте.
Это они у Георгия RX9CIM позаимствовали…
Не хватит. Но тут rtl-sdr с его полосой в несколько МГц, которую бОльшая часть STM32 всё равно не сумеет обработать, да ещё и usb, под который требуется поддержка хоста в контроллере — большой перебор.
Требуется что-то попроще, с полосой поуже. Возможно даже сойдёт аналоговый однополосный приёмник, АЦП в контроллере есть.
там стоит чип CC1101, а он работает только в нескольких диапазонах, выше 300 мгц. Так что наверное, услышать этот сигнал не удастся никак.
«Пять копеек из амфоры археологии»:
Фраза "Вероятно, когда-то давно, штурман действительно слушал эти сигналы в наушниках и отмечал направления линейкой и циркулем на карте." должна быть заменена на «Когда-то давно, штурман, настроившись на частоту радиомаяка, ОБЯЗАТЕЛЬНО проверял соответствие позывных морзянкой и информации на карте, потому что радио — оно такое: на расстоянии 100 км ничего не слышно из-за грозы, зато „ловится“ какая-нибудь другая станция с другой стороны глобуса.
Круто! Теоретически значит можно подключить SDR к телефону/планшету и запустить на нем программу для радионавигации. Практическая ценность сомнительная, но поиграться было бы интересно.
Хорошая статья. Интересно что на территории некоторых стран военные решили, что VOR недостаточно точен и не может передать расстояние до маяка. Вместо того что бы добрать VOR, просто развернули параллельно систему TACAN и на многих военных самолетах НАТО теперь есть обе системы. Кроме того, на ВПП есть ILS, для точной посадки даже при нулевой видимости, а на самих самолетах установлен передатчик АЗН-В, который транслирует координаты и данные о полете воздушного судна. Эти данные собирает небезызвестный Flightradar24. Так что, на случай отказа спутников наземных систем хватает)
Тащем-та, DME зачастую стоит вместе с VOR.
На фото не VOR а DVOR. VOR использует вращающуюся антенную систему, в DVOR применяется электронное сканирование элементов кольцевой антенной системы, имитирующее сигнал VOR.

Более современный принцип передачи угла внедрить уже не получится, потому что все борты оборудованы приемниками VOR и приходится подстраиваться под них.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории