Онлайн-журнал «Юный киберфизик»

Центр управления полетами. Как использовать компьютерную игру Kerbal Sрace Program в космическом образовании

Живи играючи
Прошлым летом двадцать ребят управляли космическим кораблём «Союз-МС» в его полёте к МКС, а в соседней комнате работал виртуальный ЦУП. Технический директор Летней Космической Школы Сергей Лемещенко рассказывает о том, как игра превратилась в полноценную инженерную симуляцию. Пилоты сидели за компьютерами с имитацией кабины, получали команды по рации, выполняли работы по циклограмме и докладывали о готовности. Баллистики в соседнем помещении считали траектории, загружали рассчитанные манёвры на борт и следили за телеметрией.
Ракета «Союз-2» на старте. Скриншот из игры
Полёт проходил виртуально, но все операции, выполненные участниками, были частью настоящей работы.
Платформа, на которой проходила симуляция, — игра Kerbal Space Program с набором бесплатных модификаций. О том, как она устроена, как её освоить и как выстроить на её основе учебные проекты — от простых запусков до исследовательских работ, которые защищают в МАИ, — дальше.
Участники во время симуляции. Фото из архива автора

Что такое Kerbal Space Program?

KSP придумал бразилец Фелипе Фаланже: в детстве он с друзьями мастерил ракеты из фейерверков и сажал в них фигурки из фольги — их и прозвали «кербалами». Игра вышла в 2011 году; за пятнадцать лет вокруг неё сложилось большое сообщество — любители и инженеры, студенты и исследователи. Два основных режима: конструктор и симуляция.

В конструкторе собирают технику из деталей — от двухступенчатой ракеты до орбитальной станции. Каждая деталь имеет настраиваемые характеристики: тяга, удельный импульс, масса, прочность. Собранную конструкцию — крафт (от англ. spacecraft) — запускают в режиме симуляции.
Собранная ракета в сборочном цехе. Скриншот из игры
В симуляции крафт появляется на стартовой площадке в виртуальной Солнечной системе с семью планетами и восемью спутниками. Физика — настоящая. На занятиях мы осваиваем её через пробы и ошибки: неверная траектория — аппарат сгорает в атмосфере, кончилось топливо — дрейфует в пустоте. Уравнение Циолковского мы не объясняем на доске — участники открывают его сами. Добавили огромный бак: ΔV выросло, но не настолько. Разбили на две ступени — задача решилась. Понимание тяговооружённости приходит, когда ракета едва отрывается от стола: двигатели сжигают топливо, только чтобы компенсировать собственный вес.
Уравнение Циолковского
ΔV = Isp · g₀ · ln(m₀/m₁)
Связывает прирост скорости (ΔV) с удельным импульсом двигателя и отношением начальной массы к конечной.

Добавить топливный бак — прибавка ΔV с убывающей отдачей.
Разбить на ступени — каждый раз сбрасывать пустой бак и лететь дальше.
Это то, что участники открывают сами после второй или третьей попытки.
Порог входа здесь высокий — и это часть педагогической ценности: достижение стоит усилий, и участники это чувствуют.

Как организовать обучение

Дальше — то, что мы выработали в ЛКШ за несколько лет и что работает.

Прежде чем учить других, педагогу нужно самому уверенно освоить KSP: интерфейс, конструктор, базовые манёвры. Хорошая точка входа — наш бесплатный курс «Основы KSP»: space-school.org. Есть внутриигровая энциклопедия и большой выбор видео. На уверенное освоение уходит несколько недель. Это увлекательный процесс — и в итоге он заметно расширит ваши возможности в преподавании.

Оснащение для занятий. Оптимально — один компьютер на участника, допустимо — один на двоих. Базовый модуль — 2–3 занятия по 2 часа (1 час лекция + демонстрация, 1 час самостоятельная работа). На каждое занятие нужна презентация, подготовленный рассказ и 2–3 задания с пошаговыми инструкциями.

Схема работы: «смотри, слушай и делай как я». Педагог показывает, объясняет логику, вместе с группой делает задание, потом участники повторяют самостоятельно.

Хорошо работает система волонтёров — бывших участников, уже прошедших курс. Волонтёр наблюдает за группой и сразу помогает тому, кто застрял, не прерывая общее занятие. Оптимальное соотношение: 1 волонтёр на 5–6 участников.

Как выглядит первое занятие. Несколько готовых кораблей уже на орбитах — участники управляют ими: переключают виды камеры, читают показания приборов, совершают витки. Задача первого занятия — понять, где что находится, и освоиться с интерфейсом. Это снижает тревогу перед незнакомой программой.

Второе занятие — крупноблочная сборка: например, РН «Союз» собирается из 20 деталей за 10–15 минут по инструкции. Участники видят, что это выполнимо.

Третье занятие — первый самостоятельный запуск. В ЛКШ вводный модуль KSP занимает около 8–10 часов в рамках смены: три-четыре занятия. К третьему занятию у участников появляются содержательные вопросы — почему включить двигатель нужно именно сейчас и именно на столько? Они хотят выйти на орбиту точно, попасть в манёвр, написать скрипт. Фокус смещается от освоения интерфейса к решению задач — и вот тут начинается физика.

KSP естественно связывает предметы: физика — законы движения, аэродинамика, орбитальная механика; программирование — скрипты kOS или Python через kRPC; математика — уравнение Циолковского, баллистика, траектории. Роль педагога здесь — навигатор: ставит задачи, направляет рефлексию, задаёт вопросы «почему сработало» и «почему нет».

Что участники умеют после курса. После базового модуля участник умеет: рассчитать бюджет delta-V для миссии по ступеням; самостоятельно вывести аппарат на заданную орбиту; выполнить орбитальные манёвры (перигей, апогей, плоскость). После продвинутого — написать скрипт автономного выведения на kOS; подключить внешнюю программу через kRPC и управлять аппаратом из Python; спланировать перелёт между планетами с оптимальным окном запуска.

Применение: от летней школы до университетского проекта

Летняя Космическая Школа: командная симуляция полёта

Участники делятся на два направления: баллистики и пилоты. Баллистики учатся рассчитывать и оптимизировать траектории с помощью KSPTOT. Пилоты осваивают пилотирование, выполнение циклограмм, ручную стыковку и правила радиообмена.

Во время симуляции пилоты занимают отдельное помещение «космического корабля» — за компьютером с модами ASET и kOS, которые создают кабину с реалистичными приборами. Они управляют кораблём «изнутри», не видя внешней картинки. Баллистики образуют ЦУП в другом помещении: получают телеметрию через KSPTOT, рассчитывают манёвры, загружают их на борт. Связь между командами — по рации.

Сценарии — любые: двухвитковая схема «Союза-МС» к МКС, высадка на Луне, экспедиция к Марсу. Выбор зависит от задачи педагога.
KSP Trajectory Optimization Tool (KSPTOT): автономный программный комплекс на базе MATLAB для опытных пилотов KSP
Виктор Булыбенко: от игрового скрипта к реальному ПО

Виктор — главный конструктор в компании RST, проектирует ракеты с 13 лет. Работая с kOS, он поставил конкретную задачу: управлять ракетой так, чтобы не превысить максимальный угол атаки при подъёме и не разрушить конструкцию от аэродинамической нагрузки.

В kOS задача решается через обратную связь от датчиков и условные управляющие воздействия: если угол атаки растёт сверх нормы — уменьшить тягу или скорректировать тангаж. Алгоритм сработал в KSP. Виктор перенёс его логику в профессиональное ПО для баллистического анализа носителей: обратную связь, условные воздействия, работу с телеметрией.

Из игрового скрипта выросла рабочая программа.
Пример скрипта в kOS
Артемий Мурадов: нештатные ситуации на «Орле»

Для магистерской работы в МАИ Артемий моделировал перспективный пилотируемый корабль «Орёл» на носителе «Ангара» — в точности по реальным массогабаритным характеристикам.

Задача: что происходит при отказе случайного бортового элемента на этапе выведения? Сколько времени нужно оператору, чтобы выровнять ракету вручную и спасти экипаж?

Мод имитировал случайные отказы систем. Артемий управлял вручную, записывал видео каждой попытки, собирал статистику по времени реакции. Описательную часть взял из открытых данных по системе управления «Союза» — документации по ПТК «Орёл» на тот момент в открытом доступе практически не было. Работа успешно защищена.

KSP здесь выступает средой для статистического анализа действий экипажа в нештатных ситуациях. Мурадов вынес из симуляции методологию — применимую к любому кораблю, без привязки к конкретным цифрам «Орла».
Артемий Мурадов

С чего начать

Те двадцать ребят за ЦУПом прошлым летом начинали с нуля и за несколько занятий прошли от незнакомого интерфейса до командной симуляции с рацией и реальными манёврами.
Такой путь открыт для любого кружка.
KSP с набором бесплатных модов — готовая среда для проектного обучения: от первого самостоятельного запуска до исследовательской работы, которую можно защитить. Порог входа есть, и он ощутимый. Но сообщество большое, материалов много — и мы в ЛКШ готовы помочь тем, кто только начинает.
◆ Курс «Основы KSP» — бесплатно в Телеграме
◆ Сообщество — официальный форум KSP
◆ Моды — бесплатно через форум KSP, SpaceDock и GitHub
◆ Управление модами — пакетный менеджер CKAN: один набор на все машины класса за одну операцию