
Полная версия
Осколки «Галилея»
— Почему заключение одобрили, если оговорка запрещала текущую конфигурацию? — спросил Платонов.
— Потому что текущей конфигурации не существовало. Полётные контроллеры должны были прийти чистыми. Шесть ключей должны были подтвердить условия заново. Стендовое состояние считалось непереносимым.
— Но его перенесли.
— Да.
Максим прислал в общее поле схему наследования сборок. Красные стрелки тянулись от учебного стенда к двум промежуточным версиям, потом к полётному контроллеру. На каждом переходе сохранялась таблица безопасных отказов. Вместе с ней, незамеченной, сохранялась незавершённая команда.
— Вы оценивали вероятность такого переноса? — спросил Саранов.
Лена могла ответить, что перенос нарушал регламент. Что его не должны были делать. Что ответственность лежала на тех, кто менял контроллер. Все три утверждения были верны и потому особенно удобны.
— Нет, — сказала она. — Я оценила его как недостижимый сценарий.
В канале стало тихо. Не пропал шум насосов, не остановились вентиляторы, не исчез треск повреждённой силовой шины. Исчезли реплики.
— Недостижимый физически? — уточнил Арсен.
— Организационно. В модели он был исключён процедурой очистки.
— Значит, не недостижимый.
— Значит, я назвала запрет свойством системы. Это была ошибка.
Саранов увеличил таблицу расчётных узлов.
— И цена ошибки — семь секций.
— Цена переноса — семь секций. Цена моей ошибки в том, что я разрешила системе зависеть от процедуры, которую она не проверяла сама.
— Различие утешительное.
— Нет. Проверяемое.
Лена открыла исходную модель. В ней безопасное раскрытие заканчивалось семью зелёными прямоугольниками. За пределами модели стояла единственная строка: «начальное состояние подтверждено». Ни датчика, ни контрольной суммы, ни отдельного ключа. Текст, замаскированный под измерение.
Ника подняла руку перед камерой, хотя никто не требовал формального порядка.
— На «Саде» при каждом обмене водой мы проверяем клапан, давление и состав. Если в инструкции написано, что бак чистый, мы всё равно берём пробу. Почему контроллеру разрешили поверить инструкции?
— Потому что проверка состояния требовала остановить загрузчик и потерять сертификационную цепочку, — ответил Максим. — После каждой замены пришлось бы повторять весь прогон.
— Дорого, — сказала Ника.
— Девять суток стенда на сборку.
— Теперь у нас нет стенда и почти нет суток.
Максим не стал спорить.
Саранов вернул разговор к Лене:
— Вы знали, что короткое заключение пойдёт в эксплуатационный пакет, а оговорка останется в приложении?
— Знала.
— И подписали.
— Да.
— Почему?
Вот этого вопроса она избегала с момента, когда увидела дату. Технический ответ закончился. Оставался тот, который нельзя было спрятать в единицах измерения.
— Испытание уже задерживали дважды. Третья задержка сдвигала стартовое окно. Руководитель сборки потребовал формулировку, относящую риск к обслуживанию, а не к конструкции. Я согласилась, потому что считала очистку состояния простой и обязательной операцией. И потому что хотела, чтобы «Галилей» полетел.
— Вас заставили?
— Нет.
— Вам скрыли переход на другую сборку?
— На тот момент перехода не было.
— Тогда не распределяйте подпись между отсутствующими людьми.
— Я не распределяю.
Саранов задержал взгляд на ней ещё секунду, затем убрал её доступ к манёвровой матрице.
Изображение изменилось без предупреждения. Семь расчётных узлов остались на месте, но поля коррекции перед Леной стали серыми. Система сообщила: ПРАВО ЕДИНОЛИЧНОГО МАНЁВРА ОТОЗВАНО КОМАНДИРОМ.
— До окончания независимой проверки вы не выдаёте импульс ни одной секции, — сказал Саранов. — Расчёты можете готовить. Исполнение — после двух подтверждений, одно из которых не ваше.
— Принято.
— Возражение?
— Есть. Но не против второго подтверждения.
— Формулируйте.
Лена вывела таймер окна. Сорок одна минута двенадцать секунд.
— Если каждый манёвр ждать через полный круг сети, крайние секции потеряют до двадцати двух секунд. Для обычной коррекции это допустимо. Для ухода от обломка — нет. Нужны заранее утверждённые коридоры, внутри которых локальные экипажи действуют сами.
— Вы только что доказали, чем заканчиваются заранее утверждённые коридоры.
— Нет. Я доказала, чем заканчивается условие, которое никто не измеряет. Коридор должен иметь наблюдаемые границы: импульс, остаток рабочего тела, минимальную дистанцию до расчётного узла и срок действия.
Арсен наложил на схему тонкие оболочки вокруг траекторий.
— Могу рассчитать по две области на секцию: сохранение жизни и сохранение измерительной базы. Первая шире. При конфликте локальный экипаж выбирает первую, а потеря базы сразу попадает в журнал.
— Кто проверяет расчёт? — спросил Саранов.
— Я, — сказал Тимур. — Не потому, что доверяю Лене. Потому что могу независимо пересчитать геометрию.
— «Сад» проверит расход и тепловой предел, — добавила Ника.
Чжоу запросила для своей секции отдельное ограничение по вибрации. Платонов — по перегрузке для трёх пациентов, которых нельзя было закрепить в штатных ложементах. Юна превратила реплики в таблицу условий. За несколько минут наказание перестало быть только запретом и стало устройством работы.
Саранов подтвердил новый порядок.
— Ветрова готовит расчёты. Асанов проверяет геометрию. Ремезова — ресурс. Исполняет командир каждой секции в утверждённом коридоре. За его пределами — мой ключ и один независимый. Срок — до конца первого окна.
— Вашу командную секцию кто подтверждает? — спросила Ника.
— Ветрова.
Лена подняла глаза.
— Вы только что лишили меня права.
— Единоличного. Не права проверки.
Это было не доверием и не прощением. Саранов оставил её расчёты в системе как опасный прибор: пользоваться можно, держать без присмотра нельзя.
Юна закрыла голосовой круг и включила журналирование изменений. Теперь каждое число получало автора, исходные данные и срок годности. Лена начала с «Ковчега». Его траектория уходила выше расчётного узла, зато позволяла снизить перегрузку. Платонов потребовал ещё две десятых метра в секунду запаса на уклонение. Тимур показал, что этот запас через двадцать семь минут превратится в недолёт к узлу.
— Тогда сократим срок коридора до двадцати минут, — сказала Лена.
— И пересчитаем после первого импульса, — ответил Тимур.
— Подтверждаю.
Они двигались от секции к секции. На «Саде» нельзя было долго держать боковую тягу: жидкость уходила от заборников. На «Игле» работал только один кластер ориентации. «Ферма» могла дать точный импульс, но её длинная конструкция входила в колебание, и Лена ограничила длительность включения. Командная секция имела лучший запас, зато прошла дальше расчётного положения и должна была возвращаться против собственного прежнего решения.
Каждый коридор уменьшал свободу и одновременно делал действие возможным. В этом была неприятная ясность: надёжность возникала не там, где кто-то получал всю власть, а там, где право на ошибку имело измеримый край.
На тридцать четвёртой минуте Юна разослала пакет. Шесть секций подтвердили получение. Седьмая, как прежде, молчала.
— Начинаем с «Фермы», — сказал Саранов.
Лена подготовила импульс и отправила Тимуру не команду, а исходные данные. Он пересчитал окно на собственном навигационном ядре. Разница составила четыре тысячных метра в секунду.
— В пределах, — сказал он. — Подтверждаю геометрию.
Ника проверила расход.
— Запас после исполнения — двадцать три целых одна десятая процента. Подтверждаю.
Лена передала пакет Максиму. Тот посмотрел на серое поле, где раньше появлялась её команда.
— Приятно знать, что теперь я сам отвечаю за собственную ошибку.
— Ты и раньше отвечал.
— Раньше можно было притвориться, что это приказ.
Он исполнил импульс. «Ферма» дрогнула; по продольной балке прошла волна, погасла на третьем узле и вернулась слабым эхом. Траектория легла внутрь оболочки.
Следом маневрировал «Сад». Ника разбила включение на три коротких толчка, между ними насосы возвращали воду к заборникам. Первый толчок оказался слабее расчёта на семь процентов.
— Останавливаю серию, — сказала она.
Саранов уже держал курсор над аварийным подтверждением, но не нажал.
— Причина?
— Пузырь в подающей линии или неверная оценка вязкости. Проверяю по давлению.
— Времени шесть минут.
— Поэтому не буду тратить его на неправильный второй импульс.
Через сорок секунд она нашла отклонение: после раскрытия температура резервного контура упала на три градуса ниже принятой в модели. Лена пересчитала длительность, Тимур проверил геометрию. Второй и третий толчки вывели «Сад» к краю коридора, не за него.
— Запишите, — сказала Лена. — Исходное состояние теплоносителя нельзя принимать из последней штатной телеметрии. Только текущее измерение.
— Уже, — ответила Юна.
Фраза ударила точнее упрёка. Они снова находили текст, который хотел притвориться фактом, и на этот раз не позволяли ему этого.
Для «Ковчега» Платонов выбрал мягкую траекторию. Она стоила дополнительного рабочего тела, но сохраняла допустимую нагрузку. Саранов попросил расчёт более экономного варианта. Платонов молча вывел медицинскую панель: у одного пациента внутреннее кровотечение было остановлено только временно.
— Вопрос снят, — сказал Саранов.
— Зафиксируйте основание, — потребовала Ника.
Юна записала: «приоритет жизни; дополнительные затраты — одна целая восемь десятых процента запаса командной коррекции в будущем обмене». Цена решения не исчезла, но получила имя.
Когда очередь дошла до командной секции, Саранов передал Лене расчёт без комментария. Она нашла в нём слишком узкий допуск по боковой скорости.
— Вы оставили себе коридор точнее, чем исполнительная ошибка ваших двигателей.
— Расширение уведёт нас от шестого узла.
— Узел можно потерять. Секцию — нельзя.
— Это решение командира.
— В пределах утверждённого правила — да. Но вы ещё не получили независимого подтверждения.
Саранов смотрел на неё через задержку. Лена не знала, что именно он проверяет: число или её готовность применить к нему то же ограничение.
— Ваш вариант, — сказал он.
Она расширила оболочку на три десятых метра в секунду и отметила область, где шестой узел становился недостижим. Потеря измерительной базы теперь была не скрытым следствием, а видимым выбором.
— Подтверждаю безопасный коридор, — сказала Лена. — Измерительный коридор не подтверждаю.
Саранов принял пакет и исполнил импульс по внутренней границе. Командная секция сохранила оба исхода, но запас между ними стал тоньше линии на экране.
Первое окно закрылось. Шесть секций остались обитаемыми. Пять удержали свои расчётные узлы; командная могла вернуть шестой при следующей коррекции. Седьмой узел по-прежнему пересекал пустая область «Линзы».
Юна собрала итоговый журнал и поставила рядом две подписи: Саранова — под новым порядком исполнения, Лены — под ограничениями модели. Подпись Лены больше не означала разрешение. Она означала перечень условий, при которых расчёт оставался правдой.
— Так следовало написать год назад, — сказал Арсен.
— Так следовало построить, — ответила Лена.
Она не почувствовала облегчения. Признание не возвращало корабль и не отменяло старую подпись. Оно только прекращало спор с фактом, а это оказалось необходимым для следующего расчёта.
На панели связи мигнул новый пакет.
Он пришёл не по общей частоте. Юна первой заметила короткий фронт и развернула антенну «Фермы» на источник. Сигнал повторился через две целых четыре десятых секунды — слишком быстро для дальней секции и слишком медленно для внутреннего эха.
— Направление? — спросил Саранов.
— Область седьмого узла, — ответила Юна. — Между расчётным положением «Линзы» и «Иглой».
Пакет состоял из девяти байтов. Первые четыре были номером локального медицинского контура. Следующие два — счётчиком живых датчиков. Последние три не проходили контрольную сумму, пока Максим не применил старую таблицу стендового состояния.
На общем экране появилась строка:
КОНТУР 7: ДВА БИОМАРКЕРА. ДАВЛЕНИЕ ПАДАЕТ.
Ника первой нарушила тишину:
— На седьмой секции есть живые.
Тимур уже строил обратный конус направления.
— Не на расчётной точке. Сигнал идёт со стороны «Иглы».
Лена посмотрела на закрытое поле манёвра. До второго окна оставалось девятнадцать минут. Её право отдавать команду было отозвано, но расчёт всё ещё принадлежал ей — пока его могли проверить другие.
Она раскрыла журнал принятого порядка и добавила к задаче четыре обязательных поля: время жизни сигнала, ошибку пеленга, цену ухода каждой секции от своего узла и имя независимого проверяющего. Потом отдельно запретила использовать старый номер медицинского контура как доказательство положения секции. Год назад она оставила подобное различие в приложении. Теперь вынесла его в саму команду, туда, где без него нельзя было начать исполнение.
— Подтвердите условия задачи, — сказала она.
Тимур прочёл поля вслух. Ника добавила предел, после которого оценка времени по давлению теряла смысл. Арсен потребовал считать не одну точку источника, а весь конус вероятных положений. Юна закрепила версии. Лишь после этого на экране появился статус «расчёт разрешён».
Саранов поставил второй ключ.
— Юна, сохраните сырой пакет. Тимур, три независимых решения по направлению. Ника, оцените время по падению давления, не принимая код контура за исправный датчик.
Саранов не прервал её.
— А вы? — спросил он.
— Я посчитаю, кто из нас может дотянуться до них и не разрушить геометрию остальных.
На этот раз она не назвала ни один исход недостижимым.
8. Дальний голос
Первое решение Тимура поместило источник в пустоту.
Конус пеленга пересекал расчётную точку «Иглы», но его вершина лежала на четыреста километров ближе к «Ферме». Там не было ни секции, ни крупного обломка.
— Второе решение? — спросил Саранов.
— Отличается на одиннадцать градусов.
— Третье?
— Я ещё считаю.
До закрытия второго манёврового окна оставалось шестнадцать минут. Лена видела напряжение Тимура по дрогнувшей линии спектра.
Юна развернула узкую антенну «Фермы» на расчётное положение «Иглы». Шум поднялся, затем в нём проступили три коротких импульса.
— Это не отражение, — сказала она. — У пакетов меняется счётчик.
— Но контрольная сумма не сходится, — возразил Максим.
— Потому что передатчик режет последние биты. Ему не хватает мощности или он перегрет.
Лена сняла с расчёта любую цифру, которую они знали только из заголовка пакета.
— Пока у нас есть источник радиосигнала и падение давления неизвестно где, — сказала она. — Не люди на «Игле».
Лицо Саранова осталось неподвижным.
— Там моя сестра.
— По списку экипажа — да. По измерению — ещё нет.
— Продолжайте.
Это прозвучало не как согласие, а как отсрочка спора.
Третье решение Тимура совпало с траекторией «Иглы», рассчитанной до раскрытия. При боковом импульсе секция могла уйти в кажущуюся пустоту. Для проверки требовалась вторая точка приёма, но остальные секции слышали лишь шум.
— Почему только мы? — спросил Максим. — У командной антенна мощнее.
Между предполагаемой «Иглой» и командной секцией проходило облако пластин бывшего радиатора. Для широкополосной связи оно было почти прозрачным, но глушило слабый одночастотный передатчик.
— Не мощность, — сказала Юна. — Геометрия. «Ферма» находится в боковом лепестке, остальные — за экраном. Если мы уйдём к своему узлу, тоже оглохнем.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.









