Интеграция с моделями, выполненными в среде анализа многокомпонентных механических
систем Euler.
Для осуществления моделирования совместно с программным комплексом Euler, на рабочей станции
кроме SimInTech должна быть установлена лицензионная версия ПК Euler версии не ниже 10.24.
Кроме того, разрядность версий SimInTech и Euler должна совпадать.
Следует создать новый проект "Модели общего вида" и разместить на схеме блок 4_vneshnie_modeli/3089.dita#, расположенный в палитре блоков на вкладке
"Внешние модели".
Рисунок 1. Блок интеграции с Euler на схеме общего вида
Прим.: в данном руководстве не будет описываться процесс создания моделей в ПК Euler, а
будет затрагиваться только процесс подключения уже готовой модели.
Для совместного моделирования с ПК Euler необходимо открыть окно свойств
блока (пункт
Свойства контекстного меню блока), в котором в первую
очередь следует указать:
- Имя файла DLL кода Euler - можно выбрать версию программы (если
их несколько);
- Имя файла проекта - файл проекта с расширением
.elr - выберем к примеру файл, расположенный по адресу
C:\SimInTech64\Demo\Интеграция со сторонним ПО\3D механика
EULER\Груз\Груз.elr;
- Шаг обмена данными - можно задать произвольный шаг обмена данными
между SimInTech и Euler, если задан 0, то обмен происходит на каждом расчетном шаге.
Рисунок 2. Заполненные свойства блока
После этого при двойном щелчке мышью на блоке будет происходить открытие выбранного
проекта в ПК Euler.
Рисунок 3. Проект "Груз.elr" открытый в ПК Euler из SimInTech
Это означает что налажена связь между SimInTech и Euler. Теперь необходимо снабдить блок
входными и выходными портами, то есть обозначить какие данные будут поступать из модели
механической системы в SimInTech, а какие будут передаваться обратно. Для этого, на стороне ПК
Euler следует добавить объекты типа "Датчик" и включить для них опции "Выходной параметр DLL"
или "Входной параметр DLL":
Рисунок 4. Опция "Выходной параметр DLL" для датчика
Рисунок 5. Опция "Входной параметр DLL" для датчика
После этого соответствующие датчики пометятся значками "out" или "in", а у блока в
SimInTech появятся соответствующие входные и выходные порты
Рисунок 6. Выходные порты блока
При этом свойства
Имена выходных датчиков и
Имена
выходных датчиков заполнятся автоматически списками имен соответствующих
датчиков.
Рисунок 7. Списки входных и выходных датчиков в свойствах блока
Прим.: списки имен датчиков можно изменять и вручную прямо из SimInTech, однако при этом
необходимо чтобы все указанные датчики имелись в загружаемом проекте
(.elr файле).
Еще одним необходимым условием совместного
моделирования является задание имени расчетной команды для модели механической системы.
Расчетная команда определяет конфигурацию расчета проекта в ПК Euler. Список расчетных команд
модели механической системы доступен через пункт главного меню ПК Euler
Анализ →
Команды исследования.
Рисунок 8. Список команд исследования проекта Груз.elr
Имя выбранной команды необходимо задать в блоке SimInTech, в свойстве с именем
Имя расчетной команды.
Совокупности упомянутых выше настроек блока интеграции с Euler будет достаточно для запуска
совместного моделирования. Конфигурация свойств блока представлена ниже:
Рисунок 9. Конфигурация блока интеграции с ПК Euler
Осталось присоединить входное воздействие, установить графики для вывода результатов
расчета и запустить модель на расчет. В качестве входного воздействия будем использовать блок
Istochniki/0015.dita#.
Прим.: если во время выполнения
совместного расчета выполнить двойной щелчок по блоку интеграции с ПК Euler в SimInTech, то
откроется окно Euler, где можно в реальном времени наблюдать изменение модели и всех ее
параметров под действием управляющих сигналов, поступающих из SimInTech.
Рисунок 10. Результат расчета модели
В полученном результате можно отметить дискретный характер изменения сигнала. Это
происходит из-за того, что шаг интегрирования в SimInTech существенно меньше, чем шаг расчета
модели в ПК Euler либо чем шаг обмена данными (смотря какой из двух последних больше). То есть
значение сигналов в SimInTech успевает обновиться несколько раз на одном и том же уровне, пока
придет новое значение от ПК Euler. Устранить этот эффект можно приблизив значения шагов
расчета и обмена данными. Если это невозможно, то можно использовать дополнительное свойство
Экстраполяция результатов на промежуточных шагах, которое позволяет
линейно экстраполировать последние полученные данные на промежуточных шагах в SimInTech.
Однако использовать его стоит с осторожность, так как в местах перемены знака производной
получаемого сигнала возможно возникновение импульсных искажений.
Рисунок 11. Возможные последствия линейной экстраполяции на промежуточных шагах
Полученные данные совместного моделирования можно не только наблюдать и обрабатывать в
реальном времени, но и сохранить для дальнейшего исследования в ПК Euler. Для этого у блока
существуют дополнительные свойства для сохрания файла результатов в формате ПК Euler.
Рисунок 12. Свойства для сохранения файла результата в формате ПК Euler