ПОТОКИ
Все потоки
Разработка
Администрирование
Дизайн
Менеджмент
Маркетинг
Научпоп
DmitrySpb79 12 января
Привет, Хабр.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
В предыдущей части мы рассмотрели прием сигналов спутников Inmarsat. Сейчас мы рассмотрим
не менее интересную систему — спутниковую систему связи Iridium, принять сигналы которой
также может у себя дома любой желающий.
Для тех, кому интересно как это работает, продолжение под катом.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Примечание: ничего секретного в приведенных ниже данных нет, описанные в статье декодеры
лежат на github уже не один год. Частоты и сигналы также доступны любому желающему, кто готов
потратить 35$ на антенну и высунуть её в форточку. Тем не менее, система связи Iridium является
действующей, поэтому некоторые данные не выкладываются из юридических соображений.
Данный материал предназначен исключительно для ознакомления, публикация или хранение
принятых сообщений могут быть не разрешены по законодательству тех или иных стран.
Железо
Тут ничего нового нет, все было описано в предыдущей статье. Я использовал антенну «Active L-
Band 1525-1637 Patch Antenna», купить которую можно за 35$, и приемник SDRPlay, вместо
которого можно использовать RTL SDR V3, стоимостью также около 35$. Таким образом, все
обойдется в сумму дешевле 100$, что вполне доступно.
Весь комплект для приема выглядит так (коробок спичек для масштаба):
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Далее, открываем окно (стекло глушит радиоволны этого диапазона), направляем антенну в небо,
и можно принимать сигнал. Важно не забыть включить в настройках приемника bias-tee, т.к.
антенна является активной и без подачи питания работать не будет. Если все было сделано
правильно, на частоте примерно 1.6ГГц мы должны увидеть такую картинку:
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Кстати, если посмотреть спектр с большей детализацией, то хорошо виден наклон линий из-за
эффекта Допплера — спутники движутся по орбите, и частота меняется.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
И во-вторых, в Iridium используется принципиально другая схема передачи данных — вместо
постоянных дата-линков на постоянной частоте используются короткие burst-пакеты, которые
можно видеть на картинке.
На этом мы закончим «теоретическую» часть, если все работает, то пора переходить к софту.
Софт
С софтом для декодирования есть одна «небольшая» сложность — он написан под Linux.
Возможно, есть секретный способ скомпилировать Gnu Radio проекты под Windows, но у меня ни
разу, кроме огромного числа ошибок, так ничего на выходе и не получилось. С Linux все просто и
работает «из коробки», но я исхожу из того, что у большинства читателей все же установлен
Windows. Так что мы пойдем обходным путем — запишем сигналы в HDSDR, а декодер для их
обработки запустим из под Ubuntu в Windows 10. Благо что 10ка штатно предоставляет такую
возможность.
Для начала необходимо загрузить в App Store Ubuntu и установить туда GNU Radio.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig
Для работы декодера необходим модуль gr-osmosdr. Его компиляция делается по такому же
принципу, с одной лишь разницей — нам необходимо отключить ненужные на этом шаге
приемники, иначе получим ошибки компиляции.
Тут есть забавный подводный камень. Запустив make, я получил странные ошибки типа «c++: error:
/wd4251: No such file or directory». Поиск в гугле показывает, что эти ошибки относятся к Windows-
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
версии, что при компиляции под Ubuntu никак не может быть. Оказалось, может — выведя
подробный лог командой «make -n», я обнаружил что диски Windows по умолчанию
подмонтированы в Ubuntu, и cmake «подхватил» эти файлы:
Тут все просто — открываем HDSDR, выбираем участок где сигналов побольше, делаем IQ-запись.
Сигналы в Iridium идут не постоянно, а «пакетами», так что возможно придется немного подождать.
Недостаток лишь один — большой объем записи, одна минута с шириной полосы 2МГц занимает
порядка 500Мбайт.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Еще раз повторюсь, что под «нормальной» Linux это не нужно, и можно запустить gr-iridium сразу с
SDR-приемником без промежуточной записи, но в Windows это не сработало — lsusb не видит
подключенных устройств.
Шаг-3. Обработка
Если пакетов не видно, идти дальше бесполезно, нужно выяснять в чем ошибка. Если записи
видны, повторяем команду еще раз, сохраняем результаты в файл и обрабатываем файл с
помощью iridium-parser.py:
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Теперь мы можем извлечь информацию из сохраненного файла output.parsed. «Достать» оттуда
можно различные данные, например текстовые или даже голосовые сообщения. Из юридических
соображений я делать это здесь не буду, желающие могут подробнее прочитать описание на
странице проекта. Там есть интересные моменты, например в Iridium могут передаваться не только
текстовые или голосовые, но и GSM-данные, т.е. Iridium-терминал может предоставлять услуги
GSM-связи в тех местах, где обычного покрытия нет — спутник и терминал тут вероятно, работают
лишь как «удлиннитель» для стандартных GSM-пакетов.
Координаты несложно импортировать в Google Maps и увидеть, что во время записи спутник
пролетал где-то над Осло (красная линия):
Заключение
Как можно видеть, процесс приема сигналов со спутников не так уж сложен, и с точки зрения
изучения систем связи, достаточно интересен.
Для желающих изучить Iridium более подробно, пара видео (на английском):
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Iridium Satellite Hacking - HOPE XI 2016
Watch later Share
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Надеюсь, для лучшего понимания этого вполне достаточно.
Хабы: Программирование, Разработка систем связи, Космонавтика, DIY или Сделай сам,
Электроника для начинающих
Редакторский дайджест
Присылаем лучшие статьи раз в месяц
Электропочта
@DmitrySpb79
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Python/IoT developer
Комментарии 20
ПОХОЖИЕ ПУБЛИКАЦИИ
18 апреля
Делаем модем: передаем цифровые данные по воздуху с помощью OFDM и GNU Radio
+45 8,3k 77 16
10 апреля 2017
2 мая 2016
КУРСЫ
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Python для анализа данных
14 октября 2020 · 24 900 ₽ · SkillFactory
вчера в 14:09
Меня перевезли в другую страну и через две недели выставили на мороз — потому что
передумали нанимать
вчера в 11:36
+52 18,1k 24 53
сегодня в 07:02
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Как ядерное топливо путешествует по городам России. Короткий комментарий
+36 4k 12 1
вчера в 13:23
Ловим баги на клиенте: как мы написали свою систему для сбора клиентских ошибок
+28 2,7k 26 7
вчера в 17:32
МИНУТОЧКУ ВНИМАНИЯ
Разместить
Мегапост
Интересно
Мегапост
СПОНСОРЫ СООБЩЕСТВА
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
ВТБ
Huawei
Авито
Главные по объявлениям в
России. Укрощают высокие
нагрузки.
ЧИТАЮТ СЕЙЧАС
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Смешные собеседования: истории ИТ-
рекрутеров (часть 1)
30,6k 48
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Войти Публикации Устройство сайта Реклама
Конфиденциальность
Настройка языка
Техническая поддержка
© 2006–2020 «Habr»
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD