logo desc

Moving Body Controller (MBC) – новинка релизной версии FlowVision 3.11.02. Это функционал для управления подвижными телами, позволяющий моделировать движение объекта под действием разнообразных, заданных пользователем, факторов. МВС даёт свободу выбора в построении физической модели движения объекта с учётом деформаций. Убедитесь в этом сами!

На видео представлен результат моделирования движения самолёта во FlowVision. Источником нашего вдохновения стало воплощение этого изделия «в металле».

Что такое Moving Body Controller

MBC – сторонний функционал, позволяющий FlowVision взаимодействовать в рамках расчёта проекта с программой, созданной пользователем. Взаимодействие FlowVision и Abaqus при проведении FSI расчётов является частным случаем применения MBC.

Ранее во FlowVision изменение положения тел в процессе расчёта достигалось двумя способами:

  1. С помощью внутренних средств FlowVision – модификатор "Подвижное тело". В этом случае в окне свойств модификатора задаются параметры движения тел и действующие на них внешние силы.
    Однако главное ограничение такого подхода в том, что подвижные тела не деформируются, а только перемещаются по расчётной области.
  2. С помощью внешнего взаимодействия с программным пакетом Abaqus (FSI). Для обеспечения этого взаимодействия Подвижное тело задаётся в качестве поверхности обмена. Так можно настроить полную замену геометрии FlowVision на геометрию, полученную из Abaqus – таким образом реализуется деформация тела в процессе расчёта.

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

Как устроен Moving Body Controller

В основе МВС лежит протокол, по которому FlowVision взаимодействует с Abaqus, но изменённый под конкретную задачу пользователя. 
MBC состоит из двух блоков:

  • Коммуникационный - обеспечивает обмен данными с FlowVision по сетевому каналу. Коммуникационный модуль, представленный в виде динамической библиотеки MbcConnector, уже разработан и не требует никаких модификаций в дальнейшем. Файл MbcConnector.dll можно найти в инсталляционной директории FlowVision: Fvlib64 > MbcConnector.dll.
  • Расчётный – выполняет расчёт указанных пользователем величин по данным, получаемых от FlowVision (например, нагрузкам в узлах сетки). Расчётный модуль - отдельная программа, которая представляет из себя набор кодов С++ и программируются пользователем самостоятельно.

Как использовать возможности Moving Body Controller

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

Как результат - в начале шага обмена FlowVision передаёт данные об исходном «каркасе» подвижного тела на данный момент и принимает в ответ от МВС указанные параметры, например, деформированную геометрию поверхности обмена.

Для каких задач применять Moving Body Controller

  1. Моделирование очень сложных движений нескольких объектов. Пользовательский модуль может рассчитывать законы движения элементов конструкции с учетом столкновений, контактов и т.п., а также под действием гидродинамических сил из FlowVision.
  2. Моделирование с учетом теплового расширения. Например, в задаче винтового компрессора, можно с помощью MBC изменять величину зазора между роторами, связанную с температурой поверхности роторов.
  3. Аппроксимация изменения геометрической модели в последовательности моделей (когда временной интервал между двумя состояниями геометрии много больше шага по времени во FlowVision). См. подробнее о замене геометрии в статье.