Подготовка модели к продувке
Простыми словами. Аэротруба считает ровно ту поверхность, что лежит в
файле. Чтобы числа были про ваш самолёт, файл должен быть в миллиметрах,
модель — смотреть носом навстречу потоку и лежать на плоскости симметрии, а
обшивка — быть замкнутой. Большую часть этого труба проверяет и чинит сама:
мелкие дыры закрывает, повёрнутую модель предлагает развернуть, сдвинутую —
переносит на место. Сборку с крепежом и рулями загружайте как есть —
саморезы, отдельные рули, щели и уступы считаются такими, какие они есть, и
объединять тела в одно не нужно. Эта страница объясняет, что именно труба
делает с файлом и что остаётся на вас. Как запустить расчёт — на стартовой странице
раздела.
Что нужно подготовить
На странице этот список — в свёрнутом блоке «Каким должен быть файл модели»
под формой; нарушения форма показывает сама на шаге «Модель».
- Один STL-файл (ASCII или бинарный), до 500 МБ. Файл разбирается строго и
перед расчётом пересохраняется в «чистый» бинарный STL — расчёт никогда не
читает присланный файл как есть. Поэтому не примется: обрезанный бинарный
файл, нечисловые координаты (NaN, бесконечность), координаты дальше 100 м от
начала, а в ASCII — лишние строки и слова, бинарные байты внутри текста и
файл без завершающегоendsolid. Имя тела послеsolidможет быть на любом
языке и в любой кодировке — оно не используется. - Или один STEP-файл (
.step,.stp; AP203/AP214/AP242) до 100 МБ. Браузер
STEP не открывает, поэтому на шаге «Модель» файл сразу уходит серверу: он в
изолированном контейнере переводит точную геометрию STEP в треугольники —
хорда не больше 0.1 мм, угол между соседними гранями 0.5° (на сложной модели со скруглениями и сферами грубее,
чтобы треугольников было не больше 2 млн; выбранный допуск и измеренное отклонение названы на странице расчёта), —
переводит единицы файла (метры, дюймы) в миллиметры и отвечает лёгкой
поверхностью для предпросмотра — не больше 100 тысяч треугольников. Сразу
после выбора файла на месте сцены появляется пустая рамка с индикатором: «Загружаю файл
(N МБ, X %)» с растущим процентом, затем «Сервер разбирает STEP» — полоса без
процента (сервер этапов не присылает) и секунды, прошедшие с выбора файла, — и
«Читаю модель». Индикатор не гаснет до появления сцены. Если сервер отказал,
связь оборвалась или время вышло, в той же рамке стоит причина и кнопка
«Попробовать снова»: файл уйдёт заново без повторного выбора. Тот же индикатор
показывается и у STL на время чтения файла. Когда разбор закончен, появляется та
же сцена, что у STL: стрелка потока, оси, плоскость симметрии, выбор
ориентации (нос и верх — как у STL) и маркер центра масс. Рядом — число тел,
число треугольников расчётной поверхности, число треугольников предпросмотра
и наибольшее отклонение предпросмотра от расчётной поверхности в
миллиметрах (если у модели не больше 100 тысяч треугольников — предпросмотр
показывает расчётную поверхность как есть). Дальше модель проверяется и
считается как STL: те же правила ниже. Каждое твёрдое тело STEP становится
отдельной деталью со своим именем. В мастере рулей (шаг 2, у вошедшего) эти
имена стоят в подсказке под курсором и в списке назначенных деталей, а в
свёрнутом блоке «Деталь трудно нажать?» есть список «Имя детали (из файла
STEP)»: выбранная в нём деталь назначается рулём, как по клику. Номер детали —
тот же, что на странице результата в списке «Детали модели STEP по номерам»
и у ИИ-агента (MCP). Там же — допуск и измеренное отклонение треугольников от
поверхности STEP. Смена ориентации не отправляет файл на сервер заново: имена
и номера деталей пересчитываются на форме. Предпросмотр не заменяет проверку
при загрузке: цифры дефектов сетки и быстрая оценка по STEP на форме не
показываются — сервер проверит модель при приёме. Не примется: битый файл или
не STEP, файл без тел и поверхностей, слишком детальная модель (треугольников
больше 10 млн или обработка дольше двух минут) — каждый отказ называет
причину; если разборщик STEP остановился на этом файле (модель слишком сложна или файл дефектен — сообщение предлагает упростить модель или выгрузить STL) или сервис обработки STEP временно недоступен, загрузите STL. Если измеренное отклонение тесселяции больше 0.5 мм, на шаге «Модель» появляется предупреждение: руль с узкой щелью (около 1 мм) может слипнуться с крылом и не определиться как отдельная деталь — тогда выгрузите STL. Если
детальность такова, что лёгкая поверхность не получается (очень много мелких
деталей), предпросмотра и мастера рулей нет, но расчёт всё равно идёт.
Предпросмотр одного файла сервер запоминает на 15 минут: выбранный и сразу запущенный
файл не обрабатывается второй раз. Если нажать «Запустить», пока предпросмотр ещё
идёт, расчёт дождётся его конца и встанет в очередь — отказа не будет; если же сервер
занят чужим расчётом, предпросмотр откажет с понятным сообщением — выберите файл
снова или смените ориентацию. Предпросмотров — не больше 6 в минуту и 10 новых файлов в сутки на
аккаунт (гостю — на адрес); повтор того же файла не считается, суточный лимит запусков предпросмотр не расходует. - До 2 млн треугольников считается как есть. Модель гуще (бинарный STL
больше ≈ 100 МБ) при загрузке упрощается по деталям: в одной клетке размером
до 1.6 мм сливаются вершины, связанные рёбрами, — так тонкие стенки и разные
детали не склеиваются, а номера деталей (по ним назначены рули) остаются
прежними. Страница результата говорит, сколько треугольников осталось и на
сколько миллиметров сдвинулась поверхность (наибольший сдвиг вершины), —
расчёт идёт по упрощённой модели. Не удалось уложиться в 2 млн с шагом
до 1.6 мм — честный отказ: экспортируйте модель с более грубым разбиением. - Миллиметры. Модель в метрах в тысячу раз меньше нужного, и расчёт её не
примет (меньше 10 мм по наибольшему размеру — отказ). - Оси. Нос модели смотрит в −X (при угле атаки 0° поток идёт вдоль +X);
Z — вверх, размах — вдоль Y. Угол атаки модель не поворачивает — наклоняется
поток (см. «Параметры расчёта»). Модель,
экспортированная из CAD иначе (нос в +Y, верх в +X и т. п.), заново
экспортировать не нужно — поверните её на шаге «Модель» (см. «Ориентация
модели» ниже). - Плоскость симметрии y = 0. Считается половина модели (y ≥ 0), силы
удваиваются. Ось симметрии модели должна лежать на y = 0; целая
симметричная модель тоже подходит — вторая половина просто не участвует.
Если целый самолёт лежит в файле в стороне от плоскости (начало координат
CAD в углу модели — весь самолёт при Y ≥ 0), сдвигать его не нужно: труба
сама перенесёт его по Y на плоскость симметрии (см. «Симметрия модели» ниже). - Замкнутые детали. Сборка из отдельных деталей — нормально: саморезы,
рули, закрылки, щели и уступы считаются такими, какие они есть, объединять
тела в одно не нужно. Плохо другое — сквозная дыра в обшивке детали: сетка
может «протечь» сквозь неё внутрь тела, и тогда воздух идёт сквозь корпус.
Протекла ли сетка, расчёт проверяет по факту и пишет в результате. - Мелкие дефекты сетки чинятся сами — при загрузке, до расчёта (см.
«Починка модели при загрузке» ниже); закрытые крупные дыры страница
называет отдельно.
Починка модели при загрузке
Модели из CAD часто приходят с дефектами сетки треугольников: трещины между
гранями, дыры, лишние копии треугольников, перевёрнутые треугольники. Труба
чинит их при загрузке, ДО расчёта, и каждая деталь чинится отдельно — детали
сборки между собой не склеиваются, щели (в том числе щель руля) остаются
какими были, а номера деталей (по ним назначены рули) не меняются:
- трещины — вершины на краях трещины, разошедшиеся меньше чем на 0,01 мм,
соединяются (поверхность сдвигается не больше чем на 0,01 мм — страница
результата называет точный сдвиг); - лишние копии треугольников и стянутые в линию треугольники убираются.
Две детали, прижатые друг к другу гранью, — это не копия, а стык: они
остаются двумя деталями; - перевёрнутые треугольники разворачиваются наружу, как у соседей, а
деталь, вывернутая целиком, — наружу целиком; - дыры закрываются заплаткой из вершин самого края: плоская дыра (срез
крыла, отверстие в плоской стенке, щель вдоль задней кромки) — любого
размера, заплатка ложится ровно в её плоскость; дыра на кривой поверхности —
если она не больше 2 мм, иначе плоская заплатка срезала бы кривизну. Плоская
заплатка крупнее 2 мм могла закрыть и отверстие, которое в детали задумано
(воздухозаборник, сопло у детали без толщины стенки), поэтому страница
называет такие заплатки отдельной строкой — номер детали, длина и ширина:
проверьте, что среди них нет задуманного отверстия. Если починка не
укладывается в потолок граней расчёта или во время, заплатки (или вся
починка) не применяются, и страница говорит об этом.
Страница результата показывает блок о починке: сколько было и стало открытых
рёбер и дыр, что сделано и на сколько сдвинулась поверхность. Чего починка
сделать не может, она не делает: крупная дыра на кривой поверхности остаётся,
и тогда протекла ли сетка внутрь детали, покажет проверка после расчёта (см.
«О модели»). Файл, присланный в STEP, обычно замкнут и так — для него блок
появляется, только если сервер не смог покрыть треугольниками какую-то
грань.
Внутренний проток — охлаждение внутри фюзеляжа
По умолчанию починка закрывает плоские дыры любого размера заплатками, и модель с воздухозаборником и выходом
становится «глухой»: воздух обтекает её снаружи, а внутрь не идёт. Чтобы посмотреть движение воздуха ВНУТРИ
фюзеляжа (охлаждение электроники, мотор, аккумулятор), на шаге «Модель» отметьте «Считать проток через модель:
не закрывать отверстия»:
- отверстия крупнее 2 мм (вход, выход, воздухозаборник) остаются открытыми; мелкие трещины (до 2 мм) чинятся как
обычно. Страница результата называет «оставлено открытыми: N, наибольшее — … мм по диагонали габарита»; - нужен хотя бы один вход и один выход — иначе внутри будет застойный объём;
- проверка сетки в режиме работает наоборот: считается, есть ли внутри детали клетки сетки, связанные с внешним
воздухом. Нашлись — страница пишет «воздух идёт внутрь» и показывает расход; не нашлись (отверстие мельче клетки
сетки или вход без выхода) — честно: «внутренний объём не связан с потоком, расчёт как для глухого корпуса». Не
удалось проверить — «воздух внутрь не подтверждён». Силы на обшивке включают давление внутри — на силы всей модели
смотрите с этой оговоркой; - расход через отсек: для подтверждённой детали в блоке «О модели» — расход (л/с) и средняя скорость (м/с) в двух
сечениях, у входного и выходного края (на 25 % и 75 % длины детали вдоль оси x), и строка «вход ≈ выход»: сечения
расходятся не больше чем на 10 % — баланс сошёлся; больше — воздух ещё и входит или выходит где-то по пути (боковое
отверстие) либо расчёт не установился. Полумодель — расход всей модели (×2); - шаг 1 заранее показывает, что крупные дыры не закроются (прогноз по размеру отверстий);
- режим входит в ключ повтора (тот же файл с режимом и без — разные расчёты); перезапуск и серия на файле расчёта
наследуют режим (файл принят открытым — «закрыть» обратно форма не предлагает; другой режим — новая загрузка); - серия с новой загрузкой файла берёт режим из формы; серия и перезапуск на файле расчёта — у исходного расчёта
(файл принят открытым или закрытым — другой режим значит новую загрузку); - в MCP — аргумент
internal_flowуwind_tunnel_submit(task.internal_flowв ответе); вwind_tunnel_report—
leak_check(inside/sealed), у деталейconnected_to_flow, блокthrough_flow(расход и баланс).
Чего режим пока не умеет: картинки сечения через фюзеляж; расхода у кадров серии и через боковые отверстия;
internal_flow у MCP-серии с новым файлом; сам вход и выход не выбирает — режим включается явно. Поле скорости
внутри модели в расчёте есть — его видно в 3D-просмотре результата.
Ориентация модели
Поток в трубе всегда идёт вдоль +X, поэтому модель должна смотреть носом в
−X и верхом в +Z. CAD-программы часто сохраняют модель иначе — тогда поток
дует ей в бок или в хвост, и расчёт бессмыслен. Поворачивать модель в CAD не
нужно: на шаге «Модель», под выбором файла, два ряда кнопок осей:
- «Нос смотрит:» — в какую сторону в файле смотрит нос модели: −X (так
по умолчанию — модель уже лежит правильно), +X, −Y, +Y, −Z или +Z; - «Верх:» — куда в файле смотрит верх (кабина, киль). Ось вдоль носа
верхом быть не может — такие кнопки неактивны; если после смены носа
прежний верх стал недопустим, он сам перейдёт на +Z или на первую подходящую
ось.
Предпросмотр поворачивает модель сразу: белая стрелка потока всегда
приходит в нос, а размеры, предупреждения, быстрая оценка и детали рулей
пересчитываются уже для повёрнутой модели. Ровно так же, той же матрицей, её
поворачивает сервер при приёме — до всех проверок, поэтому «модель целиком
при Y < 0» у модели, лежащей носом в +X, после выбора «нос +X» исчезает.
Всего возможных положений 24 — любые повороты модели, без зеркала.
Ориентация видна в сводке перед запуском. Отметки рулей (шаг «Рули») ставятся
на уже повёрнутой модели; если сменить ориентацию после них, отметки
сбросятся — их оси были в прежних осях. Та же модель с другой ориентацией —
другой расчёт: готовый результат с прежней ориентацией вместо него не
откроется. У перезапуска («Изменить параметры и запустить заново») и серии со
своего расчёта ориентация — та же, что у исходного расчёта, менять её там
нельзя: файл расчёта уже повёрнут. Нужна другая — загрузите файл заново.
Симметрия модели
Полумодель считает половину Y ≥ 0 и дорисовывает вторую зеркалом по
плоскости Y = 0. Это верно, только если Y = 0 — ось симметрии самолёта.
Если модель лежит боком (размах вдоль X, фюзеляж вдоль Y), зеркало режет
фюзеляж поперёк, и считается «двухвостый» самолёт, обдуваемый сбоку; если
весь самолёт лежит при Y ≥ 0, считаются два самолёта крыло к крылу. Силы в
обоих случаях бессмысленны, поэтому труба проверяет симметрию сама — после
поворота по выбранной ориентации:
- Перенос на плоскость. Целый самолёт, симметричный относительно своей
середины по Y, но лежащий в стороне от плоскости (начало координат CAD в
углу), труба переносит по Y так, чтобы его ось симметрии легла на Y = 0.
Целым самолёт считается, когда фюзеляж (или центроплан с килём) стоит в
середине размаха; у полумодели он у края — её труба не переносит, даже если
консоль длинная, как у планёра.
Предпросмотр сразу показывает модель на новом месте и пишет, на сколько
миллиметров она сдвинута; на странице результата — та же строка. На силы
перенос не влияет. Сдвигается только по Y: по X и Z положение модели
расчёту не важно — область продувки строится вокруг неё. - Отказ «модель не симметрична относительно плоскости Y = 0». Модель не
симметрична относительно Y = 0 и переносом это не исправить — почти всегда
она повёрнута. Выберите ориентацию (куда смотрят нос и верх). Серии
элеронов и руля направления считают модель целиком, у них этой проверки
нет. Предпросмотр показывает этот отказ до загрузки. - Отказ «ось симметрии не на плоскости Y = 0». Модель симметрична поперёк
размаха, но лежит в стороне от плоскости, а понять, целый это самолёт или
половина, труба не смогла (например, крыло без фюзеляжа). Перенесите модель
так, чтобы середина размаха легла на Y = 0. - Подсказка ориентации. Если по форме модели видно, куда в файле смотрят
нос и верх (ось размаха — та, относительно которой модель симметрична;
фюзеляж — длинная из оставшихся; нос — со стороны крыла; верх — куда растёт
киль), под кнопками осей появляется «Похоже, нос модели смотрит в +Y, верх
— в +Z» и кнопка «Повернуть». Сама подсказка ничего не поворачивает —
нажмите кнопку или выберите оси вручную. Если уверенности нет (летающее
крыло, необычная схема, отдельная консоль), подсказки нет вовсе.
Половину самолёта (фюзеляж и одно крыло при Y ≥ 0) труба не переносит и не
отвергает: её ось симметрии по геометрии половины не проверить, поэтому
положение такой модели — на вашей совести.
Отметки рулей (шаг «Рули») ставятся на модели в том виде, как её показывает
предпросмотр, то есть уже перенесённой; переносить их самим не нужно.
Предпросмотр модели
Как только вы выбрали файл (кнопкой или перетащив его на форму), рядом с
шагами (на телефоне — над ними) появляется предпросмотр: модель в 3D прямо в браузере — файл при этом
никуда не отправляется. Модель вращается мышью или пальцем, колесом или
щипком приближается; кнопка «Сбросить вид» возвращает исходный ракурс.
Что на сцене и зачем:
- белая стрелка — набегающий поток: приходит спереди (из −X) и
наклоняется вместе с углом атаки — двигаете ползунок угла, стрелка
поворачивается. Стрелка должна упираться в нос модели; если она смотрит в
хвост или в бок, выберите ориентацию модели выше (см. «Ориентация модели»); - голубая плоскость — плоскость симметрии Y = 0: модель должна лежать на
ней осью симметрии (или целиком по одну сторону, Y ≥ 0); - оси в начале координат: X — красная, Y — зелёная, Z (вверх) — синяя;
- оранжевая сетка — панели быстрой оценки: крыло и
горизонтальное оперение так, как их увидела оценка. Если сетка не легла на
крыло или легла не туда — числам оценки не верьте. Сетка лежит на средней
линии профилей, то есть внутри обшивки, поэтому, пока она показана (её
включает и выключает кнопка сетки в правом верхнем углу сцены, рядом со
«Сбросить вид»), модель становится полупрозрачной: сетка
видна сквозь обшивку, а то, что за деталью, — тусклее того, что перед ней,
и по яркости понятно, где ближняя сторона. Скрыли сетку — модель снова
непрозрачная.
Над сценой — габарит в миллиметрах по трём осям (вдоль потока, поперёк,
высота) и число треугольников в файле. Если что-то не так, там же появится
предупреждение — тем же текстом, что сервер покажет после загрузки:
- модель меньше 10 мм — почти наверняка файл в метрах, сервер его не
примет: увеличьте модель в 1000 раз перед экспортом; - модель больше 20 м — проверьте единицы;
- вся модель при Y < 0 — сервер её не примет: отразите модель или
сдвиньте её на плоскость симметрии; - модель не симметрична относительно плоскости Y = 0 — сервер её не
примет как полумодель: выберите ориентацию или нажмите «Повернуть» у
подсказки (см. «Симметрия модели»).
Дефекты модели. Сразу после выбора файла шаг «Модель» показывает цифры о сетке — те же, что страница результата
назовёт «было» при починке: сколько дыр сервер закроет заплатками, сколько останутся открытыми (крупные дыры на
кривой поверхности и лист без толщины), есть ли вывернутые детали, лишние и стянутые треугольники. Две детали,
прижатые друг к другу гранью, — стык, а не дефект: строки о нём нет. Число закрытых дыр — прогноз по размеру и плоскости
каждой дыры; окончательное — на странице результата. Файл STEP и файл больше 64 МБ браузер не разбирает: вместо цифр
шаг пишет «проверим на сервере».
Риск утечки до расчёта. Если после починки у детали остаются открытые дыры, шаг «Модель» добавляет строку «Риск
утечки»: сетка может затечь внутрь корпуса, и расчёт тогда не про ваш самолёт. Это предупреждение, а не запрет: открытая
дыра утечки ещё не доказывает (лист без толщины ничего не охватывает), точный ответ даёт проверка по готовой сетке — её
итог называет страница результата. При «внутреннем протоке» строки нет: отверстия там оставлены
намеренно. Агенту то же число приходит в ответе постановки и статуса (leak_risk).
Если файл не разбирается (обрезан, мусор или лишние строки в ASCII,
координаты дальше 100 м), предпросмотр называет ту же причину, что сервер,
а не просто «файл не прочитан».
Предупреждение не мешает отправить форму — решает сервер. Файл до 64 МБ
разбирается в фоне и показывается упрощённой копией (не больше
200 тыс. треугольников) — на сервер уходит исходный файл целиком. Файл больше
64 МБ браузер для предпросмотра не открывает (на телефоне это сотни
мегабайт памяти вкладки): вместо модели — подпись «предпросмотр недоступен,
модель проверит сервер». Отметить рули без предпросмотра нельзя — для серии
отклонений загрузите более лёгкий экспорт модели. Пока файл отправляется,
под кнопкой виден процент загрузки, после неё — «сервер проверяет модель»
(крупная модель — до минуты). Если
браузер не умеет 3D (выключен WebGL), габарит и предупреждения всё равно
показываются; без JavaScript предпросмотра нет, а форма работает как обычно.