Добрый день, дорогие Хабровчане!

Давно хотел разобраться и понять, хотя бы примерно, на качественном уровне, что есть траектория космической ракеты? Какую траекторию закладывают для того, чтобы точно попасть в заданную орбиту? Какая должна быть траектория для оптимального использования энергетического ресурса ракеты-носителя? Из этого, как быстро нужно наклонять ракету в процессе полёта? В этой статье поделюсь с Вами своими соображениями и вычислениями.

За основу я взял видео с официального Ютуб-канала Роскосмоса с временной линейкой параметров полёта. С этими параметрами и буду сравнивать свои вычисления. Параметры ракеты-носителя взяты с Википедии, со страницы с описанием для РН Союз-2 (несмотря на то что на видео представлен запуск РН Союз-ФГ, энергетические и тяговые параметры у них одинаковые)

Заранее оговорю, что сопротивление воздуха в расчётах учтено не будет. За физическую модель космической ракеты принимается материальная точка, то есть физические размеры ракеты в расчётах не участвуют. Форма планеты Земля принимается за шар, место старта - точка на поверхности этого шара. Прямоугольная система координат привязана к плоскости, касательной шару в точке запуска с началом координат в точке запуска (далее - плоскость запуска). Также принимается, что траектория полёта есть плоская кривая, поэтому для расчётов будут использованы только две координаты: горизонтальная координата X - дальность, вертикальная координата Y - высота полёта относительно плоскости запуска.

Запуск космического объекта производится на НОО - низкую околоземную орбиту, в данном случае это примерно 200 км над поверхностью Земли, поэтому параметр g - ускорение свободного падения принимается величиной постоянной, равной значению на поверхности Земли: 9,8 м/с^2. Также будем считать для упрощения расчётов, что вектор силы тяжести направлен вертикально вниз на всём промежутке траектории полёта (хотя он разумеется несколько поворачивается вследствие движения ракеты по окружности относительно центра Земли). Расход топлива принимается постоянным для каждой ступени. Чего нельзя сказать для тяги двигателей первой и второй ступеней на начальном участке полёта (до отделения первой ступени). Тяга двигателей существенно зависит от давления внешней атмосферы: чем оно меньше, тем больше тяга. Об этом нам говорит разница в тяге конкретного двигателя на уровне моря и в вакууме, например: РД-107А - двигатель первой ступени, тяга на уровне моря - 85,6 ТС, тяга в вакууме - 104 ТС. Точка запуска принимается за уровень моря, на высоте отделения первой ступени считается вакуум. Я не нашёл нигде информацию о том, как зависит тяга двигателя от внешнего давления атмосферы, а соответственно и от высоты, поэтому в расчётах будет использована линейная зависимость.

Процесс полёта будет разделён на три этапа, по числу ступеней ракеты. Расчёт будет произведён для каждого этапа полёта отдельно и затем суммирован в единую траекторию. Первый этап - с момента старта до отделения первой ступени, второй этап - с момента отделения первой ступени до момента отделения второй ступени, третий этап - с момента отделения второй ступени до момента отделения третьей ступени. В процессе полёта ракета поворачивается (наклоняется), или, как говорят, ложится в горизонт. Угол наклона управляется программным автоматом или бортовым компьютером. Закон изменения этого угла мне тоже найти не удалось, поэтому также буду менять его линейно, но с разной скоростью для разных этапов полёта ракеты. Угол наклона будем считать от вертикали, то есть вертикальному положению ракеты будет соответствовать 0 градусов, горизонтальному - 90 градусов. За основу расчётов будет использована динамика свободной материальной точки и будет решаться вторая задача динамики, то есть, по известным массе точки и силам, действующим на неё, будут вычислены законы её движения. Основное уравнение динамики:

m\overrightarrow{w} = \sum_{i = 1}^n \overrightarrow{P_i}

где m- масса точки, \overrightarrow{w}- вектор ускорения, \overrightarrow{P_i}- векторы приложенных к точке сил. С учётом действующих на ракету сил уравнение примет вид:

m\overrightarrow{w} = \overrightarrow{P_T} + \overrightarrow{G}

где \overrightarrow{P_T}- суммарная тяга двигателей, \overrightarrow{G}- сила тяжести. Ускорение свободного падения принято постоянным, равным \overrightarrow{g}у поверхности Земли, тогда

\overrightarrow{G}=m\overrightarrow{g}

И уравнение примет вид:

m\overrightarrow{w}=\overrightarrow{P_T} + m\overrightarrow{g}

Разделим обе части уравнения на m:

\overrightarrow{w}=\frac{\overrightarrow{P_T}}{m}+\overrightarrow{g}

Космическая ракета - это тело переменной массы, топливо сгорает, масса ракеты уменьшается. Будем называть расход топлива расходом массы. Поэтому mв знаменателе первого слагаемого правой части будет представляться некоторой линейной (так как расход топлива принят постоянным) функцией зависимости массы от времени m=f(t). Обозначим начальную массу ракеты M_0, массу ракеты после выработки топлива M. Тогда M_0-M есть масса топлива. Обозначим время работы двигателей T. Тогда

k=\frac{M_0-M}{T}

есть расход массы в единицу времени и уравнение расхода массы примет вид:

m(t)=M_0-kt

Подставим это уравнение в уравнение динамики:

\overrightarrow{w}=\frac{\overrightarrow{P_T}}{M_0-kt}+\overrightarrow{g}

Как было сказано выше, тяга двигателя зависит от внешнего давления, это актуально для двигателей первой и второй ступеней до отделения первой ступени, пока ракета летит в плотных слоях атмосферы. Поэтому числитель первого слагаемого правой части уравнения тоже должен быть представлен в виде линейной функции (выше оговаривалось, что за неимением реального закона изменения тяги в зависимости от давления будет использована линейная зависимость). P_{1_{min}}- тяга на старте, P_{1_{max}}- тяга в вакууме, T - время работы двигателей до отделения первой ступени. Тогда коэффициент возрастания тяги будет

\sigma=\frac{P_{1_{max}}-P_{1_{min}}}{T}

Уравнение тяги

P_1(t)=P_{1_{min}}+\sigma{t}

Для каждого этапа полёта это уравнение будет считаться отдельно. P_1- суммарная тяга двигателей первой и второй ступеней на старте, M_1- стартовая масса ракеты, P_2- тяга двигателя второй ступени, M_2- масса ракеты в момент после отделения первой ступени, P_3- тяга двигателя третьей ступени, M_3- масса ракеты в момент после отделения второй ступени. Теперь распишем эти уравнения по осям координат, заранее задав линейный закон изменения угла наклона ракеты.

\alpha(t)=\alpha +\beta{t}

Для первого этапа полёта:

w_x=\frac{(P_{1_{min}}+\sigma{t})sin(\alpha_1+\beta{_1}t)}{M_1-k_1t}w_y=\frac{(P_{1_{min}}+\sigma{t})cos(\alpha_1+\beta{_1}t)}{M_1-k_1t}-g

Для второго и третьего этапов полёта:

w_x=\frac{P_2sin(\alpha_2+\beta{_2}t)}{M_2-k_2t}w_y=\frac{P_2cos(\alpha_2+\beta{_2}t)}{M_2-k_2t}-gw_x=\frac{P_3sin(\alpha_3+\beta{_3}t)}{M_3-k_3t}w_y=\frac{P_3cos(\alpha_3+\beta{_3}t)}{M_3-k_3t}-g

Теперь заменим в этих уравнениях все ускорения на вторую производную от перемещения:

\ddot{x_1}=\frac{(P_{1_{min}} + \sigma{t})sin(\alpha_1+\beta{_1}t)}{M_1-k_1t}\ddot{y_1}=\frac{(P_{1_{min}}+\sigma{t})cos(\alpha_1+\beta{_1}t)}{M_1-k_1t}-g\ddot{x_2}=\frac{P_2sin(\alpha_2+\beta{_2}t)}{M_2-k_2t}\ddot{y_2}=\frac{P_2cos(\alpha_2+\beta{_2}t)}{M_2-k_2t}-g\ddot{x_3}=\frac{P_3sin(\alpha_3+\beta{_3}t)}{M_3-k_3t}\ddot{y_3}=\frac{P_3cos(\alpha_3+\beta{_3}t)}{M_3-k_3t}-g

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

Распишем подробно параметры ракеты.

Первая ступень (один боковой блок из четырёх)

  • Стартовая масса: 44 413 кг

  • Сухая масса: 3784 кг

  • Тяга: 85,6 тс / 104 тс

  • Время работы: 118 с

Вторая ступень:

  • Стартовая масса: 99 765 кг

  • Сухая масса: 6545 кг

  • Тяга: 80,8 тс / 94 тс

  • Время работы: 300 с

Третья ступень:

  • Стартовая масса: 27 755 кг

  • Сухая масса: 2355 кг

  • Тяга: 30,38 тс

  • Время работы: 224 с (на видео третья ступень отключается на 524-й секунде полёта, 524 - 300 = 224)

  • Масса на старте: M1 = 313 т Тяга на старте: 423,2 тс

  • Расход массы первой ступени: (44413 - 3784)/118 = 344,3 кг/с * 4 = 1377,3 кг/с

  • Расход массы второй ступени: k2 = (99765 - 6545)/300 = 310,7 кг/с

  • Суммарный расход массы до отделения первой ступени: k1 = 1377,3 + 310,7 = 1688 кг/с

  • Масса после отделения первой ступени: M2 = 96752 кг

  • Масса после отделения второй ступени: M3 = 30693 кг

  • Расход массы третьей ступени: k3 = (27755 - 2355)/300 = 84,7 кг/с

Вычисление

Программа расчёта траектории написана на языке Java. Для визуализации траектории на плоскости использована библиотека awt. Решение дифференциальных уравнений произведено с помощью уточнённого метода Эйлера, подробное описание можно найти, например, в книге В. М. Вержбицкий "Численные методы". Код программы расчёта доступен по ссылке.

Для того чтобы отобразить траекторию полёта относительно плоскости к траектории применена поправка кривизны (кривизна Земли линеаризована).

Результаты вычислений

Траектория с поправкой кривизны:

Траектория без поправки кривизны:

Сравнение результатов

В момент перед отстыковкой первой ступени

Параметры телеметрии

Расчёты программы

Высота, км

45

48

Дальность, км

48

52

Скорость, км/ч

6312

6702

Перегрузка, g

4

4

В момент перед отстыковкой второй ступени

Параметры телеметрии

Расчёты программы

Высота, км

154

164

Дальность, км

452

527

Скорость, км/ч

13732

14480

Перегрузка, g

2,3

2,27

В момент перед отстыковкой третьей ступени

Параметры телеметрии

Расчёты программы

Высота, км

202

200

Дальность, км

1675

1738

Скорость, км/ч

26737

27019

Перегрузка, g

2,9

2,61

Вероятно, зная точные топливо-заправочные характеристики ракеты-носителя перед стартом, можно более точно посчитать параметры траектории.

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

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


  1. sshikov
    06.02.2022 14:29
    +10

    Заранее оговорю, что сопротивление воздуха в расчётах учтено не будет.

    Ну вообще говоря, при выборе программы тангажа такие допущения не очень оправданы. Аэродинамические силы — это нижняя часть траектории. Чем она «вертикальнее» — тем быстрее вы проходите плотные слои атмосферы. И наоборот. С другой стороны, скорость лучше набирать не вертикально, так как меньше потери на преодоление силя тяготения. Так что тут напрашивается наличие какого-то оптимума.

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


    1. Konstantin_receiver Автор
      06.02.2022 23:30
      +1

      Да, всё правильно. Разумеется, сопротивление воздуха играет роль, на самом раннем участке полёта, в самых плотных слоях. Этот участок ракета проходит довольно быстро. Самый плотный слой (пусть это будет первые 10 км) ракета преодолевает за примерно 60 с, в этот момент вертикальная скорость составляет 371 м/с (из расчётов). Можно будет обновить алгоритм и добавить сопротивление. Просто несколько упростил расчёты.


      1. sshikov
        07.02.2022 07:49

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


      1. Bedal
        07.02.2022 09:36
        +3

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


    1. Konstantin_receiver Автор
      07.02.2022 00:19

      Насчёт вертикальности. Насколько я знаю, такие тяжёлые ракеты, как РН Союз, запускаются вертикально, и уже в полёте наклоняются. Да, чем "вертикальнее ракета" на начальном участке полёта, тем она быстрее пройдёт плотные слои. Но в конечном итоге цель - набрать всё-таки горизонтальную скорость, чтобы с заданной её величиной выйти на необходимой высоте на нужную орбиту. А затраты на преодоление высоты будут уже гравитационными потерями полёта, вроде так это называется в литературе. Вообще, я конечно же игрался с параметрами полёта, в основном задавал разные скорости наклонения ракеты на различных участках полёта и понял, что эта скорость есть разумный компромисс между "поскорее пройти плотные слои", "не вылететь выше чем надо", и "центробежные силы при повороте никто не отменял (центробежные относительно ракеты)".

      Ещё интересное наблюдение при расчётах.

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

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


    1. BigBeaver
      07.02.2022 08:42
      +1

      С другой стороны, скорость лучше набирать не вертикально, так как меньше потери на преодоление силя тяготения.
      Так это как раз хорошо — чем меньше скорость, тем меньше сопротивление, а гравитационные потери не зависят от траектории. Идеально было бы бесконечно медленно подняться за пределы атмосферы, развернуться на нужный угол и дальше уже набирать орбитальную скорость=) Но проблема в том, что при бесконечно медленном подъеме расход топлива не будет бесконечно малым.


      1. sshikov
        07.02.2022 15:20

        Так я об этом в общем-то — что в зависимости от траектории гравитационные и аэродинамические потери меняются по разному закону, и где-то там посредине возможно есть оптимум. Причем искать его стоит с учетом не только программы тангажа, но и начальной тяговооруженности.

        >Идеально было бы бесконечно медленно подняться за пределы атмосферы
        Ну выж понимаете, как только вы сожрали скажем половину топлива, у вас тяговооруженность стала сильно больше, и чтобы продолжить подниматься медленно, придется еще и движок дросселировать… в разы.

        >расход топлива не будет бесконечно малым
        Конечно не будет. Все равно тяга будет хотя бы равна весу, или чуть больше.


        1. BigBeaver
          07.02.2022 15:53

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


          1. sshikov
            07.02.2022 17:51

            >одинаковые в любом случае
            А, блин, я написал что они меняются… имелось в виду что аэродинамические, конечно.


  1. sshikov
    06.02.2022 14:57
    +1

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

    Так она и есть почти линейная же? БОльшая часть тяги ЖРД вообще представляет из себя простое произведение давления в камера на площадь критического сечения. На выходе из сопла — примерно атмосферное давление (недо- и пере-расширение приводят лишь к потерям). Ну т.е. где-то примерно площадь среза сопла * давление атмосферы на этой высоте, чисто интуитивно и будет довольно близко описывать эти потери. Поскольку параметры двигателя на старте и в вакууме опубликованы, можно на всякий случай это предположение перепроверить.

    Кстати, если вам интересно, то почему бы не взять простой учебник для этой специальности? Одним из моих преподавателей и руководителем дипломного проекта был Дмитрий Николаевич Щеверов, который как раз хорошо умел описывать подобные варианты выбора параметров практически «на пальцах». И его книги вполне себе можно найти, в магазинах или на сайтах.


    1. Konstantin_receiver Автор
      06.02.2022 23:37

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


      1. sshikov
        07.02.2022 07:47

        Да, естественно, это касается только первой ступени.


  1. evasilenko
    06.02.2022 15:34
    -13

    Ракета находится на малой высоте по отношеню к радиусу Земли. 200 против 6400.

    Я правильно понимаю, что и вы не стали учитывать изменение гравитации при подьеме? То есть g - постоянная.

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

    Там дальше будет интереснее.

    Если вы учтете изменение гравитации по Энштейну, то есть с учетом, что вас притягивают все частички Земли, то получете полную херню вместо параметров орбит, которые много раз публиковали. Поскольку притяжение от частиц находящихся в горизонте имеют малую вертикальную составляющую, а горизонтальное тяжение взаимно-компенсируется. Более того, частицы на противоположной стороне Земли уже мало влияют, поскольку убывание по квадрату. Достаточно очевидно, что такая модель дает меньшую гравитацию. Правда придется брать тройной интеграл чтобы суммировать притяжение от всех частиц Земли.

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

    Разница обозначенных моделей притяжения даёт 50% ошибки гравитации на однородном шаре, и 30% на текущей модели Земли, где внутри железо ужато в 2 раза по плотности (уже смешно). Причем от введения постоянной гравитации эту ошибку можно трактовать как ошибку для любой высоты. Ну то есть выберем другую G, получим совпадение распределенной и центральной моделей гравитации Земли на нужной высоте. Расходится будут на других высотах. 30% или 50% ошибки - это максимум между поверхностью и бесконечность, если предположить G назначенным для одной из этих крайностей.

    Раз уж у Вас есть столько любопытства, то можете подтвердить мои расчеты. Я их показывать специально не буду для чистоты эксперимента. Считать взлёт не нужно. Просто сравнимаем g по одной из моделей указанных выше с g реальных спутников. Публиковались высоты и периоды обращения, рассчитать g из этого дело легкое. Если потратитесь и получите результат - напишите мне в личку. Мне интересно знать, что я нигде не ошибся.

    Как же так получилось, что специальная теория относительности - чистейшая туфта. И что же тогда на самом деле обьясняет гравитацию?


    1. ClearAirTurbulence
      06.02.2022 17:15
      +11

      Ваши выкладки такой же бред, как у Энштейна, ведь Земля - плоская (как и все остальные планеты и спутники, собственно), а координаты GPS нам шлют из-за пределов небесного купола ящерки. </s>


    1. BigBeaver
      07.02.2022 08:45

      Разница обозначенных моделей притяжения даёт 50% ошибки гравитации на однородном шаре
      Возможно, дело в
      Правда придется брать тройной интеграл
      Подучите математику, и всё сойдётся.


  1. xtremespb
    06.02.2022 17:12

    Константин, отличная статья. Хотелось бы для наглядности иметь возможность задавать параметры различных ракет, желательно с пресетами. И сборку для тех, кто не хочет возиться с установкой IDE.

    Сложно ли реализовать возможность учёта всех опущенных параметров?


    1. Konstantin_receiver Автор
      06.02.2022 23:45

      Приветствую, майн Фроинд! Спасибо за хорошую оценку.

      Специально прокачивать программу в планы не входит. Я выложил её лишь для того, чтобы любой читатель мог убедиться, что свои расчёты я взял не с потолка, а посчитал таким-то методом, с такими-то параметрами. При желании параметры можно подставить другие, напихать ступеней и т. д.

      Единственное, можно было бы усложнить расчёты, добавив, например, сопротивление атмосферы. Только вот я думаю чисто интуитивно, что сильно на результаты это не повлияет. На форму траектории так точно незначительно.


  1. Andrey_IRON
    06.02.2022 23:46

    Хотелось бы увидеть подобную статью про движение той же ракеты уже в открытом космосе.


    1. Konstantin_receiver Автор
      06.02.2022 23:51

      Здравствуйте,

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


  1. alexander222
    07.02.2022 08:03

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


    1. citius
      07.02.2022 10:53

      Почему не делают? Делают конечно. Но так можно запустить только что-то сравнительно небольшое.


    1. siberiano
      07.02.2022 11:02
      +1

      Вес ракеты, которую получится поднять на самолёте на высоту 10-12 км -- по-прежнему велик, потребуется очень большой самолёт, и возникнут сложности с тем, как подвешивать, как разделяться и так далее. Экономии на скорости тоже мало: самолёт летит со скоростью 0.8-0.85 Маха, а орбитальная скорость -- около 31 Мах. И всё равно потребуется более половины первой ступени (которая отделяется на высоте 50-100 км). В общем, очень много сложностей ради небольшой экономии, проще поставить ещё пару ракетных двигателей и побольше бак.


      1. alexander222
        07.02.2022 11:57

        Спасибо за объяснение, что-то такое и предполагал.


    1. sshikov
      07.02.2022 15:23
      +1

      Таких проектов было вагон. И дело не только в высоте и сопротивлении, а и в том, что пока вы в атмосфере, вы можете использовать кислород из воздуха, а не тащить с собой окислитель в баке.

      Но вообще говоря, сделать такой самолет — далеко не тривиальная задача. Посмотрите хоть данные автора, если взять их за базу — то отделение первой ступени это 45 км. А теперь покажите мне хоть один самолет с таким потолком?