Аэродинамические нагрузки по FAR 23

Я недавно занимался расчетом аэродинамических нагрузок на небольшой самолет в соответствии с FAR23. Было очень много ручной рутины и мне не понравилось лазить по документам вдоль и поперек в поисках верных определений. Я решил, что в состоянии этот процесс автоматизировать. И вот что у меня получилось:

Много скриптов на MATLAB и мой любимый FLOW5 (панельный метод) из ручного аэродинамического инструмента стал аэродинамическим ядром воспроизводимого расчётного процесса для задач расчета нагрузок в соответствии с FAR23.

Что уже реализовано:
  • автоматическая обработка расчётных случаев FAR 23;
  • определение балансировочных точек;
  • расчёт распределенных и интегральных нагрузок на крыло, горизонтальное и вертикальное оперение;
  • отдельный расчёт нагрузок на элероны, рули высоты и руль направления;
  • расчёт нормальной нагрузки, перерезывающей силы, изгибающего момента и шарнирного момента;
  • построение огибающих нагрузок по всем расчётным случаям;
  • поддержка симметричных, несимметричных и боковых случаев обтекания;
  • сравнение шарнирных моментов с результатами FLOW5 (защита от сбоев);
  • генерация воспроизводимого DOCX/PDF отчёта на русском или английском языке с таблицами и графиками;
  • сохранение всех исходных данных, CSV-таблиц, графиков, trace-файлов и manifest-файла в каталоге расчёта.
Идея такова – нужно только создать и протестировать модель самолета в FLOW5 включающую в себя все плоскости и органы управления, и сгенерировать и отредактировать JSON файл с целью задания ограничений, типа предельных углов отклонения органов управления, их разметку и некоторые настройки запуска. MATLAB скрипт, в полном автомате, формирует расчётные случаи, запускает FLOW5 в batch-режиме, собирает экспортированные результаты, интегрирует нагрузки и формирует отчёт со ссылками на соответствующие параграфы FAR23
Пока нет учета инерционной разгрузки. (нужна? или в запас?)

Полный pdf отчет, включающий ВСЕ расчетные случаи и графики распределения нагрузок и моментов по всем плоскостям может занимать более 800 страниц)

Я проводил работу по расчету аэродинамических нагрузок для конкретного самолета и тестировал скрипт на этих данных, и теперь я заинтересован в проведении более масштабного бетатестирования на предложенных вами компоновках. Я не уверен, что такой софт сможет заменить аэродинамика нагрузочника, но то что он может сильно облегчить ему жизнь - это точно.
Пишите, если есть вопросы предложения или вам нужно посчитать нагрузки на вашем легком самолете, мне интересно довести программу до требований людей из промышленности))
Снимок2 экрана 2026-06-30 233453.jpg
vn_envelope_detailed.png
Снимок экрана 2026-07-01 180711_rus.jpg
Снимок экрана 2026-07-01 180806_rus.jpg
Снимок экрана 2026-07-01 180906_rus.jpg
 
Выглядит серьёзно. Интересно, что на этот счет думает lapshin?

Большим (Boeing, Airbus, Сухой) это не нужно, там десятилетиями крутятся внутренние громоздкие комплексы (часто на базе Nastran, Fluent/CFD и кучи самописного Fortran/C++/Python кода).

В вот для малой авиации, дельталётов, планеров, БПЛА - недорогой софт с такими возможностями это прям - ОГОНЬ! Маленькие КБ и независимые разработчики не могут позволить себе дорогие тяжелые комплексы и штаты автоматизаторов. Сделать для них готовый «комбайн», который «из коробки» закрывает требования FAR-23- это прямо очень кстати, продукт может быть востребован на международном уровне.
 
Последнее редактирование:
Работа безусловно весомая. Уважение.

Но.. если позволите несколько комментариев.
Для людей из промышленности, если они проявят интерес (наверно таки проявят - т.к. тему топчут и таки будут разбрасывать работы малой авиации по частникам) - первый камень в огород - это Matlab (Он как минимум недешевый даже для Запада, тем более если вы задействовали AeroToolBox). Доступность и минус начисляемые баллы фондов - за неотечественное ПО в ядре. Как вариант - Python / Jupiter - дает возможность в т.ч. достраивать код дальше. Возможно "отечественный" Engy на базе Julia, но как там сейчас с аналогами Jupiter / Matlab Live - непонятно. Решатель... Наверное все же не XFLR а VSPAero/OPenVSP - как дающий больше возможностей для последующего анализа вариантов в т.ч., ну и.. вопросам к нему наверное будет все же меньше. Лучше бы конечно тот около ЦАГИевский код который в сети лежит, но он конечно модульный и свести его в целостную систему наверное не сильно правильно будет.
Вывод поля давления - в т.ч. в применимом CFD совместимом *.csv формате, или например карте PLOAD нагрузок NASTRAN
У вас указана как база FAR-23, но методика распределения давления по размаху в CS-23 например указывается как по Шрэнку. Желательно получить и эту таблицу в т.ч. для сравнения с XFLR
 
Последнее редактирование:
Работа безусловно весомая. Уважение.

Но.. если позволите несколько комментариев.
Для людей из промышленности, если они проявят интерес (наверно таки проявят - т.к. тему топчут и таки будут разбрасывать работы малой авиации по частникам) - первый камень в огород - это Matlab (Он как минимум недешевый даже для Запада, тем более если вы задействовали AeroToolBox). Доступность и минус начисляемые баллы фондов - за неотечественное ПО в ядре. Как вариант - Python / Jupiter - дает возможность в т.ч. достраивать код дальше. Возможно "отечественный" Engy на базе Julia, но как там сейчас с аналогами Jupiter / Matlab Live - непонятно. Решатель... Наверное все же не XFLR а VSPAero/OPenVSP - как дающий больше возможностей для последующего анализа вариантов в т.ч., ну и.. вопросам к нему наверное будет все же меньше. Лучше бы конечно тот около ЦАГИевский код который в сети лежит, но он конечно модульный и свести его в целостную систему наверное не сильно правильно будет.
Вывод поля давления - в т.ч. в применимом CFD совместимом *.csv формате, или например карте PLOAD нагрузок NASTRAN
У вас указана как база FAR-23, но методика распределения давления по размаху в CS-23 например указывается как по Шрэнку. Желательно получить и эту таблицу в т.ч. для сравнения с XFLR
Спасибо за отзыв!
MATLAB или Python... в целом согласен. матлаб выбран потому, что я его лучше знаю) с другой стороны есть возможность превратить скрипт в исполняемый файл, не требующий установки лицензируемого ПО matlab. и да, сейчас прикидываю возможность переписать на python - но это довольно времязатратно (AI в помощь). Engee - ну это шляпа, GNU Octave - возможно, но у меня используется matlab report generator. aerotoolbox не использую. Наверное самое трудоемкое - сгенерировать понятный человеку и удобный для редактирования docx файл.
Решатель. FLOW5 - это крутое развитие XFLR5, а я его старый фанат. под эту задачу я досконально изучил работу и возможности OpenVSP и мне он понравился меньше для решения именно этой задачи. он больше заточен под параметрическую работу с геометрией - с его помощью можно реализовать оптимизацию аэродинамики и компоновочных решений, но он не дает каких то особенных возможностей именно в аэродинамическом расчете.
А про какой ЦАГИ код вы говорите? вообще я еще в институте написал свой код "панельщины" и лет 7 после его развивал, доведя до очень приличного функционала - например там была реализована возможность расчета стационарных аэроупругих задач (дивергенция), но в данном случае решил не заниматься некрофилией, а опереться на красивую и удобную софтину.
Ну а поля давления у меня выводятся в csv файлы - в процессе отладки я это реализовал, для каждого расчетного случая они сохраняются, но интересно то, что по опыту общения с прочнистами, они обычно хотят распределение по размаху нагрузки, линию ее приложения (точка на хорде), а то и вообще суммарную силу и точку ее приложения, а распределение по поверхности (не дай бог по двум!) хотят в исключительных случаях. а для этих исключительных случаев я для них решал CFD задачу.
 
А про какой ЦАГИ код вы говорите?
Вот этот - BLWF-AERO Вернее это набор тулов.
По поводу OpenVSP - в сравнении с FLOW наверняка вы знаете что говорите, но я больше обращаю внимание на первоисточник - он все же авторитетнее только исходя их этих соображений. И конечно да вы верно отметили что он больше характерен для поиска компоновки. Ну так это ведь тоже исходники для общей оценки - те же нагрузки они нужны не только финализированные, но и приближения. Но это, не позиция - разумеется..

По поводу прочнистов.. возможно им так проще, или они ручной расчет по классике так делают - Брюн, Флабель. Мне проще сделать маппинг давления на аэродинамические поверхности в FEM - и жахнуть все сразу для общей оценки.
 
Последнее редактирование:
Назад
Вверх