Проблема с ракетой "Suicide Burn" [закрыта]

ЭТО НЕ ДОМАШНЕЕ ЗАДАНИЕ.

На самом деле я занимаюсь физикой, и я заядлый игрок в космическую программу Kerbal. Я надеюсь написать магистерскую диссертацию по информатике через несколько лет, что-нибудь связанное с космосом. Но все это не имеет значения.

Вы находитесь в ракете, и только что вы вращались вокруг прекрасной луны (без атмосферы), волшебным образом вся ваша горизонтальная скорость исчезла, и теперь вы падаете прямо на луну со скоростью g (которая технически является функцией высота).

Ваша ракета волшебным образом указывает прямо вверх (с двигателем вниз) для вас, в какой-то момент вы знаете, что хотите запустить двигатель, чтобы вы могли приземлиться в пределах некоторого приемлемого порога, чтобы ваш корабль не взорвался при ударе, убивая вас.

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

Это известно как «самоубийственный ожог».

Проблема в том, что в тот момент, когда вы начинаете гореть (допустим, вы сжигаете 100% или 0%), вы немедленно начинаете увеличивать время, которое вы проводите над планетой, которое меняется, когда вы должны были начать.

Давайте также предположим, что ваш корабль имеет максимальную тягу, которая больше, чем g, но определенно не бесконечна.

Так что, чтобы быть ясным, мы ищем время, чтобы начать гореть так, чтобы вы приземлились не сильнее, чем xm/s.

У меня вопрос, как бы я подошел к такой проблеме?

Я задал этот вопрос своему профессору физики, и он сказал, что «подумает об этом», поэтому я решил спросить в Интернете, спасибо!

Вы предполагаете (почти) постоянную массу или вам нужно учитывать потерю массы транспортного средства из-за ожога?
Уравнения для реальной версии этой задачи хорошо задокументированы в техническом отчете НАСА об алгоритме посадки для посадки на Луну Аполлона. У меня нет ссылки, но вы должны быть в состоянии откопать ее. Вы должны принять это... он благополучно доставил двенадцать человек на Луну, так что он достаточно проверен экспериментально.
Вот: hq.nasa.gov/alsj/ApolloDescentGuidnce.pdf . Так делали настоящие мужчины. :-)
Общая теория для таких задач, кстати, называется «оптимальное управление» и начать можно здесь en.wikipedia.org/wiki/Optimal_control .
Маргарет Гамильтон руководила командой программистов в этой миссии;)
@CuriousOne - Как видно из предоставленной вами ссылки, настоящие мужчины делали это с компьютерами даже в 1960-х годах. Настоящие мужчины делают это с компьютерами. Я не могу играть в KSP по этой причине. Это слишком нереально, слишком упрощенно, слишком глупо.
Re Но вы понятия не имеете, сколько у вас топлива . В таком случае вам нечего делать в космосе. Абсолютно никаких. Вы должны это знать, потому что это меняет решение.
@DavidHammen: Настоящие мужчины сделали это с крошечным компьютером в космическом корабле и чуть побольше на земле. Вся магия в математике, физике и... дисциплине. Многие из этих переключателей в этих космических кораблях имели только одну функцию, и их можно было использовать только один раз. Используйте их в неподходящее время, и вы были мертвы, как космонавт, не было секунд и переделок. Я восхищаюсь этими парнями за то, что у них хватило мужества забраться туда и полететь.
Просто чтобы добавить к тому, что написал @CuriousOne, встроенный компьютер в современной микроволновой печи имеет больше памяти и большую вычислительную мощность, чем бортовой компьютер Apollo.
Привет, Коди Смит. Если вы еще этого не сделали, пожалуйста, найдите минутку, чтобы прочитать определение того, когда использовать тег « домашняя работа и упражнения» , и политику Phys.SE для проблем, подобных домашней работе.
@DavidHammen, это обманчиво. Бортовой компьютер «Аполлон» требовал гораздо большей вычислительной мощности, чем требуется микроволновой печи. Если микроволновая печь обладает большей вычислительной мощностью, то это потому, что готовый чип стоимостью тридцать пять центов обладает большей вычислительной мощностью, а разработчики печи не видели причин тратить миллионы долларов на разработку полностью специализированной ASIC, которая точно соответствовала бы потребностям печи. когда чип за тридцать пять центов можно было запрограммировать на выполнение этой работы.

Ответы (2)

Есть принятый ответ; Мне это не совсем нравится, так что я приму удар.

Предположим, что для начала вы не совсем знаете пустую массу транспортного средства, количество топлива в топливных баках, удельный импульс или массовый расход. (Пустой вес транспортного средства должен быть очень хорошей оценкой. В противном случае мы прогорим.) В космосе есть радиолокационный высотомер, который измеряет дальность и скорость дальности. Эти измерения, конечно, ложь. Они шумные и могут быть предвзятыми.

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

Нам также нужна система наведения. Оптимальным управлением в этом случае является релейное управление. Транспортное средство немного падает баллистически (двигатели выключены), а затем зажигает двигатели. Затем двигатели работают непрерывно, пока транспортное средство не коснется земли с нулевой относительной скоростью. Выкл, вкл, выкл. ПИФ-паф.

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

г м г т "=" м ˙ Ф "=" м ˙ ты г в г т "=" Ф м мю ( р + час ) 2 г час г т "=" в ( т )

Ни одна реалистичная система управления не использует чистое оптимальное управление. Оптимальное управление не оставляет места для ошибок, а вам всегда нужно место для ошибок. Датчики врут, фильтр Калмана врет, все врет. Нам нужна мертвая зона. В этом случае зона нечувствительности задается скоростью, которую транспортное средство и его содержимое (включая людей) могут выдержать при контакте с землей. Если транспортное средство запускает свои двигатели до земли, но скорость в точке контакта с землей меньше, чем этот предел в точке контакта с землей, все в порядке. Если транспортное средство достигает нулевой скорости в какой-то точке над землей, а затем баллистически падает и ударяется со скоростью меньше этого предела, это тоже нормально.

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

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

Я предположу, что вы падаете совершенно вертикально и что небесное тело не вращается.

Если вы предполагаете, что масса ракеты остается постоянной, то вы можете определить, когда начать самоубийственный поджог, используя обращение времени . А именно, вы «запускаете» поверхность с желаемой конечной скоростью, в ф , и толкайте вверх до тех пор, пока ваша (конкретная) орбитальная энергия не совпадет с вашей текущей траекторией. Вы можете смоделировать это как функцию времени, однако в этом случае будет проще использовать закон сохранения энергии,

в ф 2 2 мю р ф + Ф час м "=" в я 2 2 мю р я ,

где мю - гравитационный параметр небесного тела, р ф конечный радиус (поверхности) относительно центра масс небесного тела, час высота над поверхностью, на которой вы должны начать самоубийственный ожог, Ф количество тяги, которое может обеспечить ракета, м масса ракеты, в я начальная скорость ракеты и р я начальный радиус ракеты относительно центра масс небесного тела.

Чтобы найти время, Т , требуется, чтобы выполнить этот прожиг, вам нужно будет вычислить интеграл,

Т "=" 0 час ( в ф 2 2 мю Икс р ф ( р ф + Икс ) + 2 Ф Икс м ) 1 / 2 г Икс ,

однако для этого нет общего решения, поэтому его придется рассчитывать численно. Используемый Δ в можно найти с Δ в "=" Ф м Т .

Если вы хотите принять во внимание переменную массу ракеты, вы также можете использовать обращение времени и «старт» с вашим конечным радиусом и скоростью и вернуться во времени, пока ваша конкретная орбитальная энергия не совпадет с вашей начальной траекторией. Для этого вам нужно будет сначала угадать, какова будет ваша конечная масса, чтобы в начале вашего сжигания ваша общая масса была равна м .