EULER Cosimulation
Передача данных в ЭЙЛЕР и получение результатов косимуляции из ЭЙЛЕР. Перед началом обмена блок устанавливает связь между Engee и ЭЙЛЕР.
Тип: EngeeFunction
|
Путь в библиотеке:
|
Описание
| Для работы с блоком установите/обновите пакет поддержки оборудования. |
Блок EULER Cosimulation предназначен для организации косимуляции между Engee и ЭЙЛЕР. На каждом шаге моделирования блок передает входные сигналы из Engee в ЭЙЛЕР и принимает от ЭЙЛЕР рассчитанные выходные значения, которые подаются на выход блока.
Конфигурация косимуляции
Параметры блока — это основной источник конфигурации косимуляции со стороны Engee: состав и имена сигналов, адрес и порт ЭЙЛЕР, таймауты, шаг расчета и прочее. Эти значения используются Engee непосредственно при обмене сигналами с ЭЙЛЕР.
Чтобы те же настройки стали доступны ЭЙЛЕР, используется команда Сгенерировать конфигурационный файл по кнопке в блоке: Engee извлекает параметры блока и формирует файл settings.cfg в каталоге, указанном в параметре Путь к Эйлер:.
Настройки блока в Engee и содержимое файла settings.cfg должны быть согласованы между собой. Если после изменения параметров блока заново не сгенерировать settings.cfg, ЭЙЛЕР будет работать с устаревшими именами сигналов, портами или таймаутами, и косимуляция может завершиться ошибкой.
|
Параметры
Параметры
# IP адрес Эйлер: — IPv4-адрес, на котором находится сервер ЭЙЛЕР
Details
IPv4-адрес узла, на котором запущен экземпляр ЭЙЛЕР. По умолчанию — локальный адрес 127.0.0.1, что соответствует запуску ЭЙЛЕР и подсистеме Engee.Интеграции на одной машине. Для связи между разными машинами укажите нужный IPv4-адрес.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Порт приёма Эйлер: — порт передачи данных из ЭЙЛЕР в Engee
Details
Порт, по которому ЭЙЛЕР передает данные в Engee. В проектах с несколькими блоками косимуляции для каждой пары Engee ↔ ЭЙЛЕР выбирается уникальный порт.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Порт передачи Эйлер: — порт передачи данных из Engee в ЭЙЛЕР
Details
Порт, по которому ЭЙЛЕР принимает данные от Engee. Не должен совпадать с портом приема того же блока и с портами других активных экземпляров ЭЙЛЕР.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Имена входных сигналов: — имена сигналов во входной шине
Details
Имена входных сигналов блока, то есть сигналов, передаваемых из Engee в ЭЙЛЕР. Задаются как NamedTuple.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Единицы измерения входных сигналов: — единицы измерения входных сигналов
Details
Единицы измерения входных сигналов в квадратных скобках через пробел, например "[N] [N] [m]". Используются для отображения в интерфейсе ЭЙЛЕР. Количество единиц должно соответствовать количеству входных сигналов.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Имена выходных сигналов: — имена сигналов в выходной шине
Details
Имена выходных сигналов блока, то есть сигналов, возвращаемых ЭЙЛЕР в Engee. Формат записи аналогичен именам входных сигналов.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Единицы измерения выходных сигналов: — единицы измерения выходных сигналов
Details
Единицы измерения выходных сигналов в том же формате, что и во входном. Количество единиц должно соответствовать количеству выходных сигналов.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Максимальное время ожидания соединения, мс: — время ожидания установления связи с ЭЙЛЕР
Details
Время ожидания установления связи с ЭЙЛЕР при старте косимуляции. По умолчанию 120 000 мс (2 минуты) — этого достаточно для ручного запуска ЭЙЛЕР после Engee.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Максимальное время ожидания приёма данных Эйлер, мс: — время ожидания очередного пакета данных от ЭЙЛЕР
Details
Время ожидания очередного пакета данных от ЭЙЛЕР во время обмена данных. Если за отведенное время пакет не пришел, расчет завершается с ошибкой обмена по времени ожидания.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Максимальное время ожидания приёма данных Engee, мс: — время ожидания пакета данных от Engee на стороне ЭЙЛЕР
Details
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Размер буфера приёма данных, байт: — размер буфера приема ЭЙЛЕР
Details
Размер буфера приема ЭЙЛЕР. Увеличение может потребоваться при большом количестве сигналов.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Размер буфера передачи данных, байт: — размер буфера передачи ЭЙЛЕР
Details
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Путь к Эйлер: — путь к установленному исполняемому файлу или каталогу ЭЙЛЕР
Details
Каталог проекта ЭЙЛЕР, в который будет генерироваться файл settings.cfg.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Шаг расчёта, с: — шаг расчета блока
Details
Шаг расчета блока в секундах. Должен совпадать с параметром FixedStep модели Engee. Несогласованность значений приводит к ошибке «Invalid setting for fixed-step size» при запуске расчета. Не может принимать значение −1 (Inherited).
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Включить профилирование — сбор данных о производительности и параметрах исполнения косимуляции
Details
Включает диагностическое логирование обмена в процессе косимуляции. При true рядом с settings.cfg создается файл engee_logs.txt, в который записываются текущее модельное время ЭЙЛЕР и Engee, значения принятых и отправленных сигналов, а также диагностические сообщения. Файл перезаписывается при последующих запусках.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Сгенерировать конфигурационный файл — генерирует файл settings.cfg для косимуляции
Details
Формирует конфигурационный файл settings.cfg на основе параметров блока (имя модели, состав и имена входных/выходных сигналов, параметры и режим логирования). Полученный файл используется ЭЙЛЕР для чтения конфигурации косимуляции. Сохранение производится в каталог, указанный в параметре Путь к Эйлер:.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Нет |
Пример
Пример минимального settings.cfg для пары Engee ↔ ЭЙЛЕР. Полный набор полей описан в статье Пакет поддержки ЭЙЛЕР.
MODEL_NAME multicosim_parent
INPUT_SIGNAL_COUNT 1
INPUT_SIGNAL_NAMES e_out
INPUT_MEASURE_UNITS [m/s]
OUTPUT_SIGNAL_COUNT 1
OUTPUT_SIGNAL_NAMES e_in
OUTPUT_MEASURE_UNITS [N]
IP 127.0.0.1
RCV_PORT 7479
SND_PORT 7959
MAX_RCV_BUFFER_SIZE 4096
MAX_SND_BUFFER_SIZE 4096
SRVCIO_TIMEOUT 200000.0
HANDSHAKE_TIMEOUT 120000.0
SAMPLE_TIME 0.001
DIAGNOSTIC 0
Имена в INPUT_SIGNAL_NAMES / OUTPUT_SIGNAL_NAMES трактуются со стороны ЭЙЛЕР: e_out — это выход ЭЙЛЕР (ЭЙЛЕР отдает его в Engee), e_in — вход ЭЙЛЕР (ЭЙЛЕР принимает от Engee). В файле settings.cfg эта подмена уже учтена.
