14 ноября 2023 года «Вояджер-1» начал говорить бессмыслицу. Зонд, запущенный в 1977 году и уже больше десяти лет летящий в межзвёздном пространстве, по-прежнему принимал команды с Земли и выполнял их. Но вместо научных и инженерных данных присылал повторяющийся набор нулей и единиц. Связь вроде бы была, а понять, что происходит на борту, стало невозможно.
«Вояджер» в полёте. Рисунок NASA
Условия для ремонта были почти фантастическими. Зонд находится более чем в 24 миллиардах километров от Земли. Радиосигнал идёт до него около 22,5 часа, и столько же возвращается ответ. Каждая попытка что-то проверить означала ожидание длиной почти в двое суток.
Компьютер из 1970-х
Чтобы понять масштаб задачи, надо представить, на чём работает «Вояджер». У него три бортовых компьютера. Проблема оказалась в одном из них, подсистеме полётных данных FDS. Её работа в том, чтобы собирать сведения с научных приборов и датчиков, упаковывать их и готовить к отправке на Землю. Если FDS ошибается, на Землю уходит мусор, даже когда все приборы исправны.
По современным меркам эти машины выглядят музейными экспонатами. Программы для них пишут на ассемблере, с 16-битными словами. Памяти у каждого компьютера всего 69,63 килобайта, меньше, чем занимает одна фотография в телефоне. При этом в своё время «Вояджер» был передовым: это первый космический аппарат с компьютерами, которые можно перепрограммировать прямо в полёте, и с энергозависимой памятью на КМОП-микросхемах. Скорость передачи данных за десятилетия упала со 115,2 килобита в секунду у Юпитера до 40 бит в секунду сейчас.
«Вояджер-1» в головном обтекателе ракеты на космодроме Кеннеди перед запуском в 1977 году
Диагностика вслепую
Сначала команда действовала методом исключения: включала и выключала разные приборы, проверяя, не в них ли дело. Это не помогло. Тогда в марте 2024 года инженеры отправили на зонд команду, которую прозвали «тычком», по-английски poke. Она заставила FDS пройти по другим ветвям своей программы. И это сработало: компьютер прислал полную распечатку своей памяти.
Теперь инженеры смогли увидеть, что именно не так. Отказал один чип, хранивший часть памяти FDS вместе с частью её программы. Испорченным оказался участок в 256 бит, и в нём один бит «залип», то есть навсегда застыл в одном значении. Для компьютера, где каждая ячейка на счету, этого хватило, чтобы сломать упаковку данных.
Заменить чип на расстоянии в 24 миллиарда километров, разумеется, невозможно. Отремонтировать его командами с Земли тоже не получалось. Значит, оставалось одно: научить компьютер обходиться без него.
Переезд программы по частям
Идея была такой: взять код, который хранился на испорченном чипе, и перенести его в другие участки памяти FDS. На словах просто, но в памяти объёмом меньше 70 килобайт свободного места почти нет. Ни одного участка, куда поместился бы весь нужный фрагмент целиком, не нашлось. Научный руководитель проекта Линда Спилкер назвала это «самой большой трудностью» всей аномалии.
Поэтому код разделили на части и разложили по разным местам памяти. Чтобы освободить место, инженеры перезаписали режимы сбора данных, которые зонду больше не нужны. Делать это приходилось очень аккуратно: некоторые фрагменты программы использовались сразу в нескольких режимах, и стереть их значило сломать что-то ещё. После переноса нужно было переписать все ссылки внутри программы, чтобы разбросанные части снова работали как одно целое.
Документация к компьютеру создавалась почти полвека назад. Спилкер описывала работу как «археологические раскопки» по старым служебным запискам. Помогло то, что некоторые ветераны, когда-то работавшие с этой аппаратурой, были ещё доступны для консультаций. Любую ошибку исправить быстро было бы невозможно: каждая новая попытка стоила бы ещё двух суток ожидания.
Сорок пять часов ожидания
18 апреля 2024 года команду на перенос первой части кода отправили через сеть дальней космической связи NASA. Сигналу предстояло лететь до зонда около 22,5 часа. Ещё столько же должен был идти ответ. 20 апреля инженеры получили его: изменение сработало, и «Вояджер-1» впервые за пять месяцев прислал читаемые инженерные данные о состоянии своих систем.
70-метровая антенна DSS43 сети дальней космической связи NASA в Канберре (Австралия). Через сеть таких антенн с «Вояджерами» поддерживают связь
Первая часть была самой важной, но не единственной. В следующие недели команда переносила и подстраивала остальные затронутые фрагменты программы, в том числе тот, что отвечает за передачу научных данных. В мае 2024 года зонду дали команду возобновить научную работу. Плазменно-волновой прибор и магнитометр откликнулись сразу. Датчикам космических лучей и заряженных частиц низких энергий понадобилась дополнительная настройка. К середине июня все четыре действующих прибора «Вояджера-1» снова передавали пригодные данные.
Мелкие хлопоты остались и после этого. Нужно было заново синхронизировать программы отсчёта времени на трёх бортовых компьютерах, чтобы команды выполнялись в нужный момент, и обслужить цифровой магнитофон, который записывает часть данных плазменного прибора и раз в полгода передаёт их на Землю.
Сколько ещё он протянет
Ремонт 2024 года не сделал «Вояджер-1» вечным. Источники энергии зонда постепенно слабеют, и инженерам приходится один за другим отключать второстепенные системы, чтобы растянуть оставшуюся мощность. Рано или поздно аппарат замолчит окончательно.
Но эта история показала, что инженерное решение не обязательно требует нового оборудования. Иногда достаточно досконально разобраться в старой машине, найти в 70 килобайтах место для спасительного кода и терпеливо ждать ответа, который летит почти двое суток со скоростью света.

Комментарии (0)