Реализуйте блок FMU

Реализуйте блок и присвойте ему функциональный модуль макета (FMU). Затем можно исследовать блок, чтобы увидеть FMU. Этот пример использует блок FMU с FMU транспортного средства.

  1. Создайте модель и добавьте FMU блок.

  2. В диалоговом окне блока введите имя пути для файла FMU в параметре FMU name и нажмите OK или Apply. Расширение файла .fmu опционально.

    При первом нажатии OK или Apply блок определяет, какой режим FMU установить на FMU, совместное моделирование или обмен моделями.

    Блок также создает slprj/_fmu/fmu_name папка и распаковка содержимого файла FMU в эту папку, которая опционально включает:

    • binaries - двоичные файлы FMU

    • documentation - HTML-файлы документации FMU

    • resources - Исходные файлы FMU

    • sources - Исходные файлы FMU

    • Другие вспомогательные файлы, такие как маска блока и файлы описания

Значок блока FMU и метки портов обновляются до меток соответствующего FMU. После связи блока с FMU, если необходимо изменить FMU, щелкните правой кнопкой мыши блок FMU, выберите Block Parameters и введите новое имя FMU в FMU name. Раздел в этой теме использует FMU из Using Bus Signals и Structure Parameters в примере Import Block FMU.

Исследуйте блок FMU

Дважды кликните блок. Предположим, что вы ввели FMU с именем fmuVehicAOB.fmu из текущей папки. FMU диалогового окна блока отражает параметры FMU, определенные в fmuVehicAOB.fmu файл.

Вкладка « параметры»

Список параметров блоков FMU. Отредактируйте значения по мере необходимости. Можно править элементы массива параметра структуры, развернув древовидное представление.

Вкладка симуляции

Включает ведение журнала и связанные индивидуальные настройки.

  • Чтобы ввести относительную погрешность, выберите Enable FMU tolerance и установите его.

  • Чтобы определить шаг расчета блока в модели, установите Communication step size. Чтобы наследовать размер шага от Simulink® решатель, значение -1. Эта опция доступна, только если FMU является FMU ко-симуляции.

  • Чтобы включить ведение журнала, выберите Enable FMU Debug Logging.

  • В Redirect debug logs to выберите пункт назначения для журналов.

    • File, сохранен в slprj\_ fmu\_ журналы _ modelname\modelname_blockname.txt

    • Display, отображается в MATLAB® Командное окно.

    Если установлен флажок Enable FMU Debug Logging, и для параметра Redirect debug logs to задано значение Display, вы не можете использовать блок FMU для ко-симуляции. Для получения дополнительной информации о совместном моделировании и нескольких ядрах смотрите Запуск компонентов ко-симуляции на нескольких ядрах

  • В Filter logs by return status установите флажок для требуемого статуса возврата.

Входная и выходная вкладки шины

На этих двух вкладках перечислены входы и выходные объекты шины, которые задает блок.

В параметре Bus Object Name можно изменить имена объектов шины так, чтобы они совпадали с объектами шины, определенными в рабочей области.

Чтобы создать объект шины в рабочей области:

fmudialog.createBusType(gcb)

Изменение входных, выходных и параметрических структур блоков

Вы можете изменить размещение входных портов блоков FMU, выходных портов и параметров с этими параметрами:

ПараметрДействиеНастройки
FMUInputMappingИзменение иерархии входа портов.

'Flat' - Разделяет вход на отдельные сигналы.

'Structured' - Объединяет вход в структуру сигналов (шина).

FMUOutputMappingИзменение иерархии выхода портов.

'Flat' - Разделяет выход на отдельные сигналы.

'Structured' - Объединяет вывод в структуру сигналов (шина).

FMUParamMappingИзменение иерархии параметров.

'Flat' - Разделяет параметры на отдельные параметры, перечисленные по имени и значению параметра.

'Structured' - Объединяет параметры в структуру значений параметров (struct).

Используйте get_param и set_param функций, чтобы задать эти значения. Например, предположим, что вкладка параметров блоков с конструкцией структуры:

Параметры содержатся в struct. Чтобы перечислить параметры по отдельности, установите FMUParamMapping свойство к 'Flat':

set_param(gcb,'FMUParamMapping', 'Flat')

Факторы о синхронизации

Можно задать шаг расчета для блока FMU с параметром Communication step size. Этот шаг расчета блока, tC, как и все блоки Simulink, должны быть целым числом, кратным времени расчета модели, tM. Simulink генерирует ошибку, если tC размера шага связи не является произведением tM размера шага модели.

Локальный размер шага tL FMU, с другой стороны, является частью спецификации FMU и известен FMU только внутри. Для правильной операции, размер шага связи, tC также должен быть целым числом, кратным tL. Если образцовый шаг расчета tM или шаг расчета блока tC несовместимы с местным размером шага FMU tL, FMU может или может не произвести ошибку во время, которым управляют, в зависимости от его реализации.

Поиск и устранение проблем с FMU

При возникновении проблем с использованием FMU:

  • Проверить податливость FMU стандарту FMI. Используйте проверку податливости FMU.

  • Установите флажок Enable FMU Debug Logging на вкладке FMU block Simulation.

  • Свяжитесь с поставщиком FMU.

См. также

|

Похожие темы

Внешние веб-сайты