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

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

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

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

    В первый раз, когда вы нажимаете OK или Apply, блок идентифицирует, которым обменивается режим FMU установить ваш FMU на, co-симуляция или модель.

    Блок также создает 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

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

Вкладка параметров

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

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

Позволяет регистрировать и сопоставленные индивидуальные настройки.

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

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

  • Чтобы позволить регистрировать, выберите Enable FMU Debug Logging.

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

    • File, сохраненный в slprj \_ fmu \_ logs_modelname\modelname_blocknametxt

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

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

  • В 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, могут или не могут произвести ошибку во время выполнения, в зависимости от ее реализации.

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

Если существуют проблемы с использованием FMU:

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

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

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

Смотрите также

Похожие темы

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