Космический сервер уже на орбите: как принять с него сигнал
27 июня с космодрома Восточный был запущен космический аппарат «Метеор-М» № 2–3 и 42 попутных спутника. Среди них и СтратоСат-ТК-1, который отвёз наш космический сервер на орбиту. 11 июля в 9:40 пико-спутник RUVDS был выведен из пускового контейнера и отправился в своё самостоятельное путешествие по орбите.
Сейчас расскажем, как же следить за нашим спутником и получать с него данные. К сожалению, в одной статье на Хабре не уместить всех нюансов работы с радиолюбительскими спутниками, поэтому мы разделим инструкцию на две части. Первая — если вы совсем не понимаете, о чём идёт речь и у вас нет никакого опыта работы с радио. И вторая — подразумевающая какой-то опыт или желание его приобрести. И мы очень надеемся, что более опытные радиолюбители будут делиться опытом с новичками и помогать нам с возможными вопросами.
Вариант для простого пользователя
«Просто скажите уже, какой домен ввести, чтобы увидеть страницу из космоса!», — скажет простой пользователь. Пожалуйста — sputnik.rucloud.host. На этой странице вы сможете следить за текущим состоянием аппарата, увидеть, какую веб-страницу он сейчас транслирует, где находится и как себя чувствует. Для этого вам не нужно никакого опыта.
Если же хочется чуть-чуть почувствовать себя радиолюбителем, то можно воспользоваться сервисом TinyGS.com (ссылки для дублирующих пико-спутников: раз, два). Это сеть радиолюбительских станций, которые принимают телеметрию с радиолюбительских спутников. Наш спутник можно будет отслеживать через неё.
Там же есть и инструкции по тому, как присоединиться к сети. Но это уже больше по части нашей второй половины инструкции.
И ещё можно запрашивать телеметрию в Telegram-боте сети радиостанций «Эфир».
Вариант для продвинутых пользователей
Принять телеметрию с радиолюбительских спутников не так уж сложно, как кажется. Для этого вам потребуются три составляющие:
- антенна;
- приёмник;
- программное обеспечение.
▍ Антенна
Все спутники космической миссии СтратоСат-ТК-1 вещают в радиолюбительском частотном диапазоне 435–438 МГц (435,87 МГц — СтратоСат-ТК-1, 436,26 — пико-спутники). Для приёма этого диапазона вам понадобится антенна на 70-сантиметровый участок. Для этих целей можно использовать большое количество разных вариантов антенн. Но мы для примера возьмём антенну УДА-ЯГИ с 5 элементами. Этой антенны вполне достаточно для приёма пакетов телеметрии с космических аппаратов. Она относительно проста в изготовлении, в интернете огромное количество инструкций по её созданию, да и можно купить готовое решение.
В разделе про антенну будет уместно сказать и о том, куда её направлять. Хотя формально это больше относится к программному обеспечению. Чтобы получить целеуказания, можно воспользоваться такими программами, как GPredict или Orbitron, а можно взять пролёты из той же базы TinyGS.com (доп. ссылки: раз, два).
▍ Приёмник
Конечно же, не обойтись и без приёмника. Для этого идеально подходит SDR. На данный момент существует достаточно большой выбор SDR-приёмников. Притом что приёмник — одна из важнейших частей всей затеи, не хотелось бы много про него здесь рассказывать, так как только на Хабре по ключевым словам RTL-SDR вы найдёте десяток статей.
В последнее время наиболее интересный по цене/качеству RTL.SDR v3 не поставляется в Россию, и всё же купить его несколько дороже можно на торговых площадках OZON или Авито. Также можно купить радиолюбительские станции «под ключ», вместе с антенной и всем необходимым оборудованием, например, в магазине SpaceJunk.
Есть и ещё один вариант SDR-приёмника, это так называемый виртуальный SDR. Перечень таких станций есть на странице websdr.org.
WebSDR — это программно-определяемый радиоприёмник, подключённый к интернету, позволяющий слушать и настраивать его одновременно многим слушателям. Используя его, вы можете пропустить сразу часть и с антенной, и с приёмником. Просто выбирайте подходящий приёмник с нужным частотным диапазоном. Приём при этом не гарантируется, но попробовать можно не выходя из дома.
▍ Программное обеспечение
Получив сигнал с приёмника, его нужно обработать должным образом. Это самая сложная тема, поэтому тут дадим слово опытным радиолюбителям. На сайте Дмитрия Пашкова (r4uab) очень много информации о том, как принимать телеметрию со спутников. Он же один из участников сети радиолюбительских станций «Эфир».
▍ Расшифровка телеметрии
После того как вы разобрались с декодированием радиосигнала, самое время разобраться, что же вы получили и как это стоит понимать.
Пико-спутники передают телеметрию попеременно в двух модуляциях: Lora и FSK.
Настройки режима LORA: SF 10, CR 5, 436.26 МГц, полоса 250 кГц, пакет по 102 байта.
Настройки режима FSK: 2-fsk, скорость 1.2, 436.26 МГц, полоса 30 кГц, пакет по 62 байта.
Lora как модуляция изначально придумана для интернета вещей и больше приспособлена к передаче коротких сообщений. И вообще, строго говоря, требует отдельного приёмника. Об этом подробно можно почитать на странице GitHub проекта TinyGS.
Поэтому штатно порядок передачи выглядит следующим образом: сначала идёт пакет телеметрии LoRa, после этого передаётся пакет с коротким сообщением в 210 байт, затем — пакет телеметрии в FSK, и уже потом передаётся текущий файл космического сервера. После этого повторяется передача телеметрии в LoRa и так далее.
▍ Формат пакета в модуляции Lora
- 0) «R» — символ в ASCII кодировке.
- 1) «S» — символ в ASCII кодировке.
- 2) »5» — символ в ASCII кодировке.
- 3) »2» — символ в ASCII кодировке.
- 4) «S» — символ в ASCII кодировке.
- 5) «D» — символ в ASCII кодировке. Для дублирующих пико-спутников «F» и «E». Уникальный идентификатор спутника.
- 6–9) 4 байта СИСТЕМНОГО ТАЙМЕРА в формате float (самый старший, старший, младший, самый младший).
- 10–13) 4 байта ОСНОВНОГО НАПРЯЖЕНИЯ в формате float (самый старший, старший, младший, самый младший).
- 14–17) 4 байта ТЕМПЕРАТУРЫ БЦВМ в формате float (самый старший, старший, младший, самый младший).
- 18–21) 4 байта УГЛОВОЙ СКОРОСТИ ПО ОСИ Х в формате float (самый старший, старший, младший, самый младший).
- 22–25) 4 байта УГЛОВОЙ СКОРОСТИ ПО ОСИ Y в формате float (самый старший, старший, младший, самый младший).
- 26–29) 4 байта УГЛОВОЙ СКОРОСТИ ПО ОСИ Z в формате float (самый старший, старший, младший, самый младший).
- 30–33) 4 байта МАГНИТНОГО ПОЛЯ ПО ОСИ Х в формате float (самый старший, старший, младший, самый младший).
- 34–37) 4 байта МАГНИТНОГО ПОЛЯ ПО ОСИ Y в формате float (самый старший, старший, младший, самый младший).
- 38–41) 4 байта МАГНИТНОГО ПОЛЯ ПО ОСИ Z в формате float (самый старший, старший, младший, самый младший).
- 42–45) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ А в формате float (самый старший, старший, младший, самый младший).
- 46–49) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ Б в формате float (самый старший, старший, младший, самый младший).
- 50–53) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ В в формате float (самый старший, старший, младший, самый младший).
- 54–57) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ Г в формате float (самый старший, старший, младший, самый младший).
- 58–61) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ Д в формате float (самый старший, старший, младший, самый младший).
- 62–65) 4 байта ДАВЛЕНИЕ в формате float (самый старший, старший, младший, самый младший).
- 66–69) 4 байта ТОК РАЗРЯДА в формате float (самый старший, старший, младший, самый младший).
- 70–73) 4 байта ТЕМПЕРАТУРА СОЛНЕЧНОЙ ПАНЕЛИ А в формате float (самый старший, старший, младший, самый младший).
- 74–77) 4 байта ТЕМПЕРАТУРА СОЛНЕЧНОЙ ПАНЕЛИ Б в формате float (самый старший, старший, младший, самый младший).
- 78–81) 4 байта ТЕМПЕРАТУРА СОЛНЕЧНОЙ ПАНЕЛИ В в формате float (самый старший, старший, младший, самый младший).
- 82–85) 4 байта ТЕМПЕРАТУРА СОЛНЕЧНОЙ ПАНЕЛИ Г в формате float (самый старший, старший, младший, самый младший).
- 86–89) 4 байта ТЕМПЕРАТУРА СОЛНЕЧНОЙ ПАНЕЛИ Д в формате float (самый старший, старший, младший, самый младший).
- 90–93) 4 байта НАПРЯЖЕНИЕ ЗАРЯДА в формате float (самый старший, старший, младший, самый младший).
- 94–97) 4 байта СЧЁТЧИК ПЕРЕЗАГРУЗОК в формате float (самый старший, старший, младший, самый младший).
- 98–101) 4 байта ИНДЕКС ПЕРЕДАЧИ в формате float (самый старший, старший, младший, самый младший).
▍ Формат пакета короткого сообщения LoRa
- 0) «R» — символ в ASCII кодировке.
- 1) «S» — символ в ASCII кодировке.
- 2) »5» — символ в ASCII кодировке.
- 3) »2» — символ в ASCII кодировке.
- 4) «S» — символ в ASCII кодировке.
- 5) «D» — символ в ASCII кодировке. Для дублирующих пико-спутников «F» и «E». Уникальный идентификатор спутника.
- 6) Количество байт в пакете для сообщения. Не превышать 210 байт.
- 7) Далее — байты данных сообщения.
▍ Формат пакета в модуляции FSK
- 0) «R» — символ в ASCII кодировке.
- 1) «S» — символ в ASCII кодировке.
- 2) »5» — символ в ASCII кодировке.
- 3) »2» — символ в ASCII кодировке.
- 4) «S» — символ в ASCII кодировке.
- 5) «D» — символ в ASCII кодировке. Для дублирующих пико-спутников «F» и «E». Уникальный идентификатор спутника.
- 6–9) 4 байта СИСТЕМНОГО ТАЙМЕРА в формате float (самый старший, старший, младший, самый младший).
- 10–13) 4 байта ОСНОВНОГО НАПРЯЖЕНИЯ в формате float (самый старший, старший, младший, самый младший).
- 14–17) 4 байта ТЕМПЕРАТУРЫ БЦВМ в формате float (самый старший, старший, младший, самый младший).
- 18–21) 4 байта УГЛОВОЙ СКОРОСТИ ПО ОСИ Х в формате float (самый старший, старший, младший, самый младший).
- 22–25) 4 байта УГЛОВОЙ СКОРОСТИ ПО ОСИ Y в формате float (самый старший, старший, младший, самый младший).
- 26–29) 4 байта УГЛОВОЙ СКОРОСТИ ПО ОСИ Z в формате float (самый старший, старший, младший, самый младший).
- 30–33) 4 байта МАГНИТНОГО ПОЛЯ ПО ОСИ Х в формате float (самый старший, старший, младший, самый младший).
- 34–37) 4 байта МАГНИТНОГО ПОЛЯ ПО ОСИ Y в формате float (самый старший, старший, младший, самый младший).
- 38–41) 4 байта МАГНИТНОГО ПОЛЯ ПО ОСИ Z в формате float (самый старший, старший, младший, самый младший).
- 42–45) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ А в формате float (самый старший, старший, младший, самый младший).
- 46–49) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ Б в формате float (самый старший, старший, младший, самый младший).
- 50–53) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ В в формате float (самый старший, старший, младший, самый младший).
- 54–57) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ Г в формате float (самый старший, старший, младший, самый младший).
- 58–61) 4 байта МОЩНОСТЬ СОЛНЕЧНОЙ ПАНЕЛИ СТОРОНЫ Д в формате float (самый старший, старший, младший, самый младший).
▍ Формат пакета с файлом FSK
- 0) «R» — символ в ASCII кодировке.
- 1) «S» — символ в ASCII кодировке.
- 2) »5» — символ в ASCII кодировке.
- 3) »2» — символ в ASCII кодировке.
- 4) «S» — символ в ASCII кодировке.
- 5) «D» — символ в ASCII кодировке. Для дублирующих пико-спутников «F» и «E». Уникальный идентификатор спутника.
- 6) Количество байт в пакете для ретрансляции.
- 7) Номер пакета, старший байт.
- 8) Номер пакета, младший байт.
- 9) Далее — байты данных для ретрансляции.
Вместо заключения
На этом пока всё. Просим прощения, что инструкция похожа на знаменитую картинку.
У нас был выбор:
- написать предельно простую инструкцию «Делай раз, делай два», ведущую к результату, но совершенно непонятно, как он был достигнут, и что делать, если на каком-то этапе что-то пошло не так;
- или написать обширно и дать направления для дальнейшего поиска с объяснениями, что и как работает.
Мы постарались пойти по второму пути. Но надеемся, что более опытные ловцы спутников помогут новичкам. А сами опытные ловцы найдут всю необходимую для расшифровки телеметрии информацию.
Ждём вас на страничке нашего космического спутника.
Другие статьи про наш спутник
- Космические системы становятся персональными, а серверы — космическими. Зачем RUVDS свой пико-спутник
- Сложности проектирования своего пико-спутника. Или спутник разработать — не блинов напечь
- В космос на попутке. Как спутник RUVDS попадёт в космос
- Предполётные испытания космического сервера. Спутник «ушёл на золото»
Выиграй телескоп и другие призы в космическом квизе от RUVDS. Поехали?