Information Security
Open source
Global Positioning Systems
Geoinformation services
Development for AR and VR
August 2017 5

Охота на рыжего демона или пеленгатор помех спутниковой навигации

Tutorial


Не подумайте, что я какой-нибудь преступный элемент, параноик или неверный муж, но как-то раз я решил купить глушилку GPS. Во-первых, был интересен сам процесс. Ведь дело вроде нелегальное, продавец как будто рискует. Хотелось в этом поучаствовать, а не просто послушать или почитать. Во-вторых, чисто технически и чисто экономически было интересно — как сделано и сколько стоит.

К чему это привело читайте дальше.

Эпиграф
У нас потерялся робот. Работы прекратились и должны стоять, пока мы его
не обнаружим.
А. Азимов, «Как потерялся робот»

Ко дню рождения одного товарища
И. Царик, «Пользуясь случаем»


Зачем нужны GPS-глушилки и GPS-спуферы особо рассказывать не нужно. Сегодня все знают, что даже «новая аристократия» их использует для пущей безопасности. Особенно это знают жители Москвы. Что уж тогда говорить о простых людях. Ну когда у нас кому было какое дело до мелких неудобств соседа? «Если „Им“ наплевать, то мне тем более. Если мне нужно — врубил и поехал».

Но мир серьезно увяз в технике. Сегодня навигатор является продолжением мозга немалого числа водителей, особенно «светловолосых» их представительниц. Можно улыбаться и сетовать, но этот процесс развивается. И что будет, если им всем отрубить навигацию?

А теперь представьте себе робо-водителя будущего…

Не то чтобы я лично призывал не использовать глушилки. Напротив, мне лично без них было бы менее интересно заниматься техникой, описанной ниже. Кому война, а кому…

Резюме — врага надо знать в лицо. Я знаю, что глушилка — вещь мелкая и что есть работа профессора Эбинумы по более «тонкой настройке» спутниковой навигации, но простейший метод противника тоже мне интересен.

Самый дешевый способ вырубить навигацию стоил мне 2500 рублей.


Вещь простая, но в упаковке, вид которой отдает болезнями мозга. Я, по крайней мере, сразу заразился. Вот, думаю, хороший саркофаг для любимой мышки (скорая!). И стоит, наверное, столько же, сколько и само устройство внутри.

А какой богатый у него спектр (видео)!


Далее эта зараза во мне прогрессировала в деструктивные действия и я разобрал его:


Все очень просто и со вкусом, почти по-деревенски. И теперь вы все понимаете, почему демон рыжый. (Хотя и «История рыжего демона» мне тоже нравится.)

Но каково оно в действии!


Разящий огонь инквизиции! Теперь каждый пацан, сэкономив на пиве 30 раз, может «сжечь» всю навигацию на районе. Здесь хочу заметить, что запускал я эту штуку за городом. Ни один автолюбитель не пострадал.

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

NT1065 содержит четыре радио-тракта, которые можно настроить на использование одного гетеродина. Это видно по структурной схеме:


Тогда все четыре канала будут синфазны с точностью до неидентичностей радио-трактов. На рисунке ниже показан спектр разностей фаз.


Видно, что разности фаз стабильны, таким образом, возможно создание на базе NT1065 четырехканального фазового пеленгатора.

Берем плату из предыдущей статьи, добавляем к ней четыре антенны с малошумящими усилителями (МШУ). Можно было и без МШУ, но хотелось немного поднять сигнал в диапазонах, где антенна согласована плохо.


ВЧ-фильтры, рекомендуемые к установке на входе NT1065, для простоты и для гибкости пеленгатора, опускаем. Антенны настроены только на верхний навигационный диапазон (L1), но, закрыв глаза на чувствительность, можно будет попробовать использовать пеленгатор и на нижних диапазонах (L2, L3, L5 и т.д.). Позже посмотрим, что получится.

Вот такая получилась железяка:


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

А сейчас — софт (видео).



Исходники — здесь.

Вкратце софт работает так: берем сколько-то непрерывных отсчетов, делаем их БПФ (с окном, естественно), усредняем частотные отсчеты БПФ (бины) в выбранной пользователем полосе и вычисляем пеленг. Все это операции стандартные, которые скучно описывать образованной публике, кроме вычисления пеленга.

Здесь все сделано по-простому: алгоритм можно назвать «формирование диаграммы направленности», по-английски наверное будет beamformer — находим направление основного лепестка диаграммы направленности, наиболее соответствующее принятому антенной решеткой сигналу. Формула будет такая:


Конкретный код смотрите в GitHub'е, кому интересно.

Далее от максимума диаграммы направленности откладываем 1 процент и делаем срез. Получаем угловую область, некоторое «облако» углов, на которых вероятнее всего находится источник сигнала. Эту область углов затеняем на реальном видео с камеры планшета. В целом железяка выглядит так (как обычно смонтирована на задней стенке планшета):



И работает так: (видео).

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

Если сравнивать такой фазовый пеленгатор с моим предыдущим амплитудным для WiFi, то этот принципиально более чувствителен. Ну и он уже не ручной, а автоматический. То есть в принципе им уже вращать не обязательно. Но все еще желательно это делать, так как точность лучше всего в фокусе. И с обратной стороны он не работает тоже. Там меньше всяких внутренних антенных искажений.

Но, как показывает видео, интерференцию никто не отменял. Если нет прямого луча, искажения могут быть значительными. И поляризационная зависимость тоже некоторая есть.

Вот на это я и хочу направить дальше свои усилия.

P.S.: На нижнем диапазоне, в навигационной формулировке L2, L3, L5 и т.д., пока работает не очень. Надо курить калибровку.
+51
31.7k 102
Support the author
Comments 34
Top of the day