Какое усилие производят рули?

Контекст:

Для некоторого контекста, я разработчик игр, и я создаю авиасимулятор. Моя цель — реалистичная, а не аркадная физика. Игра находится в Юнити. Unity обрабатывает фактическое приложение сил — я просто вычисляю числа.

К плоскости приложены силы:

  • Ф Т "=" Толкать применительно к обоим двигателям, направленным вперед относительно самолета
  • Ф л "=" Поднимать приложенный к центру подъемной силы, направленный перпендикулярно скорости
  • Ф р р "=" Сопротивление качению приложена к центру масс и направлена ​​против скорости
  • Ф Вт "=" Масса приложена к центру масс
  • Ф А р "=" Сопротивление воздуха приложена к центру масс и направлена ​​против скорости

Центр масс расположен немного впереди задней стойки шасси. Центр подъемной силы находится немного позади и выше центра масс.

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

Мой самолет основан на A320 с использованием множества фигурок, найденных в Интернете. Масса 72 , 000 к г , размах крыла около 35 м , площадь крыла около 122 м , тяга двигателя 110 , 000 Н каждый, коэффициент трения качения 0,04 . Коэффициент подъемной силы берется из таблицы в зависимости от угла атаки. Это выглядит примерно как показанный здесь график Cessna . Коэффициент аэродинамического сопротивления рассчитывается на основе коэффициента подъемной силы (формула показана здесь ).

Вот скриншот самолета и сил. Представьте, что это A320 — пока это просто заполнитель. В момент скриншота самолет летел по 150 к н .Силы, приложенные к самолету

Проблема:

Когда я даю полный газ двигателям, самолет разгоняется как обычно. Однако при достижении типичной для авиалайнера скорости вращения 150 к н , точно ничего не происходит. Самолет не отрывается от земли почти до 300 к н где Ф л наконец преодолевает Ф Вт . Как я понимаю, есть две возможные причины. Во-первых, моя математика лифта неверна, а во-вторых, сила, обеспечиваемая лифтами, неверна. Я рассчитал подъем, как показано здесь , в моем другом вопросе.

Возникает вопрос, какое усилие обеспечивают рули? В частности, лифты. Я знаю, что горизонтальный стабилизатор действует как перевернутое крыло, где рули высоты действуют как закрылки/спойлеры. Я пытался использовать то же уравнение подъемной силы, но сила была слишком велика, и самолет неконтролируемо вращался на месте. Я также попытался рассчитать (оценить) вручную крутящий момент, необходимый для преодоления подъемной силы крыла из-за того, что центр подъемной силы находится позади центра масс, а затем немного больше, чтобы сделать крутящие моменты неуравновешенными, вызывающими вращение. Однако этой силы было недостаточно.

Точно так же, как мне рассчитать, какое усилие создается элеронами, закрылками и интерцепторами — как мне смоделировать это математически? Это просто изменяет коэффициенты подъемной силы/сопротивления или я применяю совершенно новую силу?

Какую верность вы хотите получить? Похоже, вы рассматриваете самолет как точечную массу, поэтому вам не хватает трех степеней свободы вращения.
Вот в чем дело. Я рассматриваю его только как точечную массу, прикладывая силы к ЦУ, потому что я не знаю, куда еще их приложить...
Похоже, вы пытаетесь разработать что-то похожее на FSX, которое моделирует на основе значений силы и расположения осей и т. д. Xplane делает это совершенно по-другому, рассчитывая аэродинамические силы на каждый квадратный дюйм всего тела и получая поведение от что. Xplane считается гораздо более реалистичным симулятором жизни и используется производителями сверхлегких и легких спортивных автомобилей как «аэродинамическая труба для бедняков».
@JohnK Интересно! Где я могу найти математику, связанную с этим? Я не совсем уверен, что искать.
Попробуйте кодирование Xplane или моделирование Xplane, разработку Xplane или что-то в этом роде. Просто вставьте различные слова после Xplane. Вероятно, в конце концов вы наткнетесь на форум разработчиков или что-то в этом роде.
Я попробую. Спасибо за предложение!
Я предлагаю вам взглянуть на jsbsim jsbsim.sourceforge.net/download.html Это с открытым исходным кодом и может моделировать динамику самолета. Есть даже модель a320, с которой можно начать: github.com/JSBSim-Team/jsbsim/tree/master/aircraft/A320 . Это также основная модель динамики полета для Flightgear.org и симулятора полета с открытым исходным кодом.
@Adam Хотя это выглядит очень хорошо, это в cpp, и было бы очень сложно реализовать его в Unity. Я пытался читать исходный код, но я просто не понимаю его.
@ mr-matt Я предлагаю вам использовать исполняемый файл jsbsim для расчета некоторых пробных усилий. Что касается их интеграции, похоже, это уже было сделано раньше: forum.unity.com/threads/…

Ответы (1)

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

Есть несколько вещей, которые вы можете сделать.

  1. Вы можете продолжать считать точечную массу. Можно предположить некоторую упрощенную параметрическую модель для взлетного вращения. То есть траектория представляет собой параметрическую зависимость воздушной скорости, времени и высоты. Это не физическая модель, и она не будет точной для применения в лифтах, но ее может быть достаточно. Находясь в воздухе, вы можете сделать то же самое с разворотом на вираж для применения элеронов и изменением воздушной скорости с помощью руля высоты. По сути, вы работаете с моделью производительности ( см. уравнения движения производительности ) с искусственными отношениями для управляющих поверхностей.

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

  2. Вы можете перемещаться до шести степеней свободы. В этом случае вам потребуется больше, чем просто подъем, перетаскивание и тяга; вам также понадобятся моментальные отношения. Я рекомендую вам прочитать Etkins , Dynamics of Flight. Вы можете сразу перейти к главе 4. Вы окажетесь в очень хороших руках, если прочитаете главы 4 и 5.
"Эткинс, Динамика полета" Выглядит очень хорошо. Я буду читать!