Простое и краткое введение в спутниковую телеметрию.
Краткое описание программной обработки телеметрической спутниковой информации - глазами рядового пользователя ПК, без погружения в сложный программный код и алгоритмы взаимодействия переменных функций ... Именно на это нацелена спутниковая программа для компьютера и недорогого радиоприёмника на основе цифровых SDR технологий, сводящая к минимуму сложность приёма сообщений радио спутников ... Дочитав до конца, многие читатели - смогут по новому взглянуть и оценить все прелести современных космических технологий, ставших доступными - на бытовом уровне ...
gr-satellites, модуль GNU Radio, инструкция онлайн, последняя версия ...
gr-satellites - это внешний модуль GNU Radio, с набором декодеров телеметрии - для любительских спутников ... Модуль поддерживает большинство популярных протоколов телеметрии, и несколько - специальных ... Кроме декодирования кадров, модуль умеет собирать - передаваемые файлы и изображения ... gr-satellites можно использовать, как набор строительных блоков - для реализации декодеров для других спутников или других решений наземных станций ... Некоторые из блоков низкого уровня, в gr-satellites - также полезны для других типов протоколов радиочастотной связи ...
На данный момент существует три основных способа установки gr-satellites ...
- Сборка из исходников ... Для Linux ...
- Установка с помощью Conda ... Многоплатформенный менеджер пакетов для работы в виртуальной среде - не конфликтующей с системной настройкой ОС ... Подходит для Windows, macOS и Linux без дистрибутива GNU Radio ...
- Использование PPA-репозитория Ubuntu ... Это самый простой и рекомендуемый способ, начиная с Ubuntu 20.10 ...
Модуль gr-satellites требует версии GNU Radio - не ниже 3.8 ... Даже, в этом случае - могут произойти известные проблемы с доустановкой зависимостей ... Блочный конструктор GNU Radio и модуль gr-satellites - необходимо установить в виртуальную среду Conda ... Работоспособность связей блоков, будет обеспечена - только в активной виртуальной среде ...
Основной и самый простой способ использования gr-satellites - командная строка ... Блок спутникового декодера, включаемый в блок схемы GNU Radio - позволяет больше настроек и гибкости, но рекомендуется пользователям - уже знакомым с инструментом командной строки ... Более сложные и запрещённые схемы - выстраиваются через блоки высокого уровня - компоненты, объединяющие мелкие цепочки задач ... Архитектура компонентов позволяет узнать, как работают декодеры телеметрии и научиться добавлять новые схемы декодирования ... Блоки низкого уровня - могут быть полезны во многих различных ситуациях, но их использование рекомендуется - только пользователям, уже знакомым с gr-satellites или GNU Radio ... Отдельно добавлено несколько утилит для работы со спутниками ...
В командной строке, главная команда gr_satellites - требует уточняющих аргументов, чтобы понимать план своих дальнейших действий ...
* Обратите внимание : первым аргументом всегда идет - спутник (имя / альтернативное имя / или NORAD ID), так как, именно от него - зависит дальнейшее ветвление алгоритмов команд и возможностей ...
* -h или --help = справка по команде ...
По умолчанию gr_satellites - сделает все возможное, чтобы показать пользователю выходные данные декодированных кадров или - отобразит необработанные кадры в шестнадцатеричном формате (для неизвестных систем связи) ... Декодирование файлов, изображений и другие специальные параметры вывода некоторых конкретных спутников - включены по умолчанию ...
Раскодированные кадры можно сохранить в файл формата KISS ... Это простой формат, который служит для разделения кадров, хранящихся в файле или передаваемых по последовательной шине, и часто используется для хранения кадров телеметрии ... Декодированные кадры внешних файлов в формате KISS, подаваемые на вход gr-satellites с опцией --kiss_in - отменяют все этапы предварительной демодуляции и выполняется - только разбор файла и извлечение полезных данных ...
В документации - особо отмечается различие поведения между обычным реальным одноканальным вводом данных, так и двуканальный ввод IQ (состоящий из синфазного и квадратурного) ... По умолчанию gr_satellites предполагает, что введенные данные - реальны и одноканальны, то есть - поток последовательных цифровых данных, например ...
+ Моно : выход обычного радиоприёмника, или SDR декодирование SSB, FM, а также одноканальные записи WAV звуковых файлов ...
+ Стерео : почти всегда IQ необработанные данные, двухканальный звуковой файл WAV, передача IQ через UDP ... Чередующийся IQ сигнал - это сумма I + Q, комплексные числа, которые часто предполагают векторные вычисления ...
Акцентируется влияние режима ключа IQ на распознавание модуляции ...
# FM, Frequency Modulation = ЧМ, частотная модуляция ...
# FSK - напрямую модулирует FM ... Никакого звукового сигнала при работе FSK - не поступает, только сдвиг частоты ... FSK - как выключатель, ON / OFF ... В FSK нет модуляции, есть манипуляция ...
# Выходной сигнал радиостанции или SDR, в режиме FM для FSK - на самом деле является сигналом NRZ / Not Return to Zero, невозвращаемый к нулю ... По умолчанию gr-satellites ожидает сигнал NRZ ; опция --iq заставляет ожидать сигнал FSK ...
# AFSK / Audio FSK - модулирует FM на звуковой несущей ... SSB + НЧ модулятор = AFSK с амплитудной модуляцией ... AFSK сдвигается на графике волны ...
# Радио или SDR в режиме FM для AFSK - на самом деле представляют собой сигнал FSK звуковой частоты, который и принимает gr-satellites ; опция --iq заставляет ожидать сигнал AFSK ... В большинстве случаев пользователь желает - простое поведение, но - невозможно напрямую работать с сигналом FSK / АFSK, который представлен на промежуточной частоте, как - реальный сигнал ... Это всего лишь один из многих нюансов цифровой связи, которые надо хотя бы поверхностно знать и учитывать поведение программы при работе со спутниковыми станциями ...
Поддерживается отправка принятой телеметрии на онлайн-сервер базы данных, такой как SatNOGS DB, однако следует выполнить условия требований и ограничений ...
# Требуется идентификация на сервере и некоторая конфигурация настроек ...
# Требуется точная установка времени на локальном ПК ...
# Для правильного использования передачи телеметрических данных должен декодироваться - прямой сигнал, а не - запись ...
Для описания свойств конкретного спутника используются .yml файлы описания, например, какие протоколы и форматы телеметрии он использует ... Файлы .yml стандарта YAML основаны на концепции компонентов ... Эти файлы указывают, какие компоненты необходимо объединить для декодирования конкретного спутника ...
В настоящее время gr-satellites поддерживает 55 форматов кадров, из них 25 - специальные ; 4 - нестандартные ; и 1 - индивидуальный ... AX.25 ... AX.25 G3RUH ... AX100 ASM+Golay ... AX100 Reed Solomon ... U482C ... AO-40 FEC ... CCSDS Uncoded ... CCSDS Reed-Solomon ... CCSDS Concatenated ... 3CAT-1 ... Astrocast FX.25 NRZ-I ... Astrocast FX.25 NRZ ... TT-64 ... ESEO ... Lucky-7 ... Reaktor Hello World ... Light-1 ... S-NET ... SALSAT ... Swiatowid ... NuSat ... K2SAT ... LilacSat-1 ... AAUSAT-4 ... NGHam ... SMOG ... MRC-100 ... OPS-SAT ... UA01 ... Mobitex + NX ... FOSSATSAT ... AISTECHSAT-2 ... AALTO-1 ... Grizu-263A ... IDEASSat ... YUSAT ... AX5043 ... USP СПУТНИКС ... DIY-1 ... BINAR-1 ... Endurosat ... SanoSat ... FORESAIL-1 ... HSU-SAT1 ... GEOSCAN ... SPINO ...
Блоки низкого уровня - это специальные блоки для реализации необходимых функций, недоступных в стандартных блоках GNU Radio ... Сейчас блоки низкого уровня - недостаточно классифицированы, документированы и проверены на устаревание, а их описание - не входит в формат знакомства с модулем gr-satellites ... Их можно исследовать самостоятельно внутри Python кода компонентов ...
Сколько же спутников поддерживается декодерами телеметрии gr-satellites ? ... На сентябрь 2023 года и согласно справочным данным - 315 идентифицированных спутника и ещё 6 - на временных номерах ... 99073 IRIS, ManitobaSat-1 ... 99142 AHMAT-1, RS41S ... 99320 EIRSAT-1 ... 99355 AzaadiSAT ... 99504 FOSSASAT-1B ... 99505 FOSSASAT-2 ... Это очень новые спутники ... При этом, 107 спутников - уже отсутствуют в TLE, и на ещё 56 - работоспособность не подтверждена ...
Считаем, 315 - 107 и - 56 = 152 ... Именно столько действующих космических аппаратов готов обработать внешний модуль GNU Radio - gr-satellites ... Даже, в половину меньше заявленного, это - весьма впечатляющий результат ... И, всё-таки, я бы - не спешил радоваться, и для большей вероятности, разделил бы, полученное число - ещё на 5, так как - не все спутники доступны в наблюдаемой местности, а также кандидаты могут быть отсеяны - из-за частотного диапазона, силы сигнала, поддержки оборудованием или иных причин ... 20 - 30 аппаратов - вот реальное число, на которое можно рассчитывать ...
Математически - малое число, оно - скрывает огромный труд и усилия по приёму радиограмм из космоса, и программный модуль gr-satellites - нацелен помочь достичь максимальной эффективности в этом, в целом - безнадёжном, мероприятии ))) ... Уже прямо сейчас вы можете попытаться принять спутниковые передачи, используя один из вариантов ...
= > Использовать подтверждённые, заведомо работоспособные спутники ...
= > Попытаться перепроверить список проблемных кубсатов, так как иногда, после многочасовых молчаний, они начинают работать - как ни в чём не бывало ...
= > Искать и подтверждать самые новейшие спутники, с номерами 99nxx, еще не включенные в самые распространённые каталоги ...
= > Не пытаться принимать сателлиты - исключённые из данных орбит TLE, как - разрушенные в космосе или вернувшиеся на Землю, отработав свой срок ...
= > Возможно, вам понадобиться сгенерировать собственный TLE файл для приёма избранных спутников ...
Связанные материалы продолжения исследования работы RTL SDR в составе системы радиосвязи компьютерных программ декодирования радио данных ... Windows ПК софт Linux цифровой обработки радио сигналов на Python ...
* Python, Anaconda, Windows, R ...
* Linux GNU Radio Windows ...
* Python 3 курс лекций с видео ...
* Программы RTL SDR проекты GitHub ...
* Программы RTL SDR проекты SourceForge ...
* Сайт выбрать список спутников ...
* Windows генератор собственного TLE ...
* Горизонт Linux Live CD ...
* Радиоконструктор GNU Radio ...
* SDR радио из блоков GNU Radio ...
Раздел database-satellite-list : список всех страниц ...