Model

Ссылка на другую модель для создания иерархии модели

  • Библиотека:
  • Simulink / Ports & Subsystems

    HDL Coder / Ports & Subsystems

  • Model block

Описание

Блок Model ссылается на заданную модель. Это отображает порты ввода и вывода, которые соответствуют портам ввода и вывода верхнего уровня модели, на которую ссылаются. Эти порты позволяют вам соединять модель, на которую ссылаются, с другими блоками в родительской модели.

Чтобы определить, подходит ли блок Model лучше для вашей цели, чем другой блок со схожей функциональностью, смотрите, Выбирают Among Types of Model Components и Compare Capabilities of Model Components.

Для получения инструкций по тому, как сослаться на модель с блоком Model, см. Ссылочные Существующие Модели.

По умолчанию блок Model отображает представление содержимого модели, на которую ссылаются. Для получения дополнительной информации смотрите Содержимое Предварительного просмотра Компонентов модели. Чтобы видеть содержимое модели, на которую ссылаются, дважды кликните блок Model.

Если у вас есть Simulink® Лицензия Coder™, можно скрыть детали реализации модели, на которую ссылаются, путем защиты модели. Чтобы защитить модель, смотрите, Защищают Модели, чтобы Скрыть Содержимое (Simulink Coder). Чтобы сослаться на защищенную модель, см. Ссылочные Защищенные Модели от Третьих лиц.

Порты

Входной параметр

развернуть все

Блок Model имеет входной порт для каждого входного порта модели, на которую это ссылается. Входные порты моделей, на которые ссылаются, заданы блоками In Bus Element и Inport. Имя порта блока Model совпадает с именем соответствующего порта в модели, на которую ссылаются. Входной сигнал для каждого порта блока Model должен быть допустимым для соответствующего порта в модели, на которую ссылаются. Для получения дополнительной информации смотрите Интерфейс Модели - ссылки и Контур.

Вызовы функции, соединенные с входным портом, передают в модель, на которую ссылаются. Чтобы условно выполнить основанное на модели, на которое ссылаются, на вызове функции, смотрите Function Call.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
Поддержка комплексного числа: Да

Вывод

развернуть все

Блок Model имеет выходной порт для каждого выходного порта модели, на которую это ссылается. Выходные порты моделей, на которые ссылаются, заданы блоками Out Bus Element и Outport. Имя порта на блоке Model совпадает с именем соответствующего порта в модели, на которую ссылаются. Выходные сигналы блока Model являются сигналами, соединенными с Outport и блоками Out Bus Element в модели, на которую ссылаются. Смотрите Интерфейс Модели - ссылки и Контур.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
Поддержка комплексного числа: Да

Управление

развернуть все

Условное выполнение

Разрешать порт появляется наверху блока Model. Метка порта является значком, который представляет разрешать сигнал.

Enable port on Model block

Управляющий сигнал, который соединяется с портом, определяет, когда выполнить модель, на которую ссылаются. Для получения дополнительной информации смотрите, Условно Выполняют Модели, на которые Ссылаются.

Зависимости

Чтобы включить этот порт, добавьте блок Enable в верхний уровень модели, на которую ссылаются.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Триггерный порт появляется наверху блока Model. Метка порта является значком, который представляет триггерный сигнал.

Trigger port on Model block

Управляющий сигнал, который соединяется с портом, определяет, когда выполнить модель, на которую ссылаются. Для получения дополнительной информации смотрите, Условно Выполняют Модели, на которые Ссылаются.

Зависимости

Чтобы включить этот порт, добавьте блок Trigger в верхний уровень модели, на которую ссылаются, и установите ее Trigger type на rising, falling, или either.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Порт вызова функции появляется наверху блока Model. Метка порта отображает имя модели, на которую ссылаются, как функция.

Function-call port on Model block

Управляющий сигнал, который соединяется с портом, определяет, когда выполнить модель, на которую ссылаются. Для получения дополнительной информации смотрите, Условно Выполняют Модели, на которые Ссылаются.

Зависимости

Чтобы включить этот порт, добавьте блок Trigger в верхний уровень модели, на которую ссылаются, и установите ее Trigger type на function-call.

Симуляция Событий модели

Инициализировать порт события обеспечивает управляющий сигнал, который инициировал модель, инициализируют событие, которое инициализирует состояния модели, на которую ссылаются.

Модель, на которую ссылаются, может содержать блок Initialize Function, который соответствует модели, инициализируют событие. Для получения дополнительной информации смотрите Используя, Инициализируют, Сброс и Оконечные Функции.

Зависимости

Чтобы включить этот порт, выберите Show model initialize port.

Порт события сброса обеспечивает управляющий сигнал, который инициировал событие сброса модели, которое сбрасывает состояния модели, на которую ссылаются.

Модель, на которую ссылаются, должна содержать блок Reset Function, который соответствует каждому событию сброса модели. Для получения дополнительной информации смотрите Используя, Инициализируют, Сброс и Оконечные Функции.

Чтобы задать имя порта, используйте параметр Event name блока Event Listener в блоке Reset Function.

Зависимости

Чтобы включить этот тип порта, выберите Show model reset ports.

Оконечный порт события обеспечивает управляющий сигнал, который инициировал оконечное событие модели, которое читает и сохраняет состояния модели, на которую ссылаются.

Модель, на которую ссылаются, может содержать блок Terminate Function, который соответствует оконечному событию модели. Для получения дополнительной информации смотрите Используя, Инициализируют, Сброс и Оконечные Функции.

Зависимости

Чтобы включить этот порт, выберите Show model terminate port.

Периодические порты события обеспечивают управляющие сигналы, которые задают, когда выполнить модель. Для примера смотрите Тест Основанная на уровне Симуляция модели Используя Генераторы Вызова функции.

Каждая метка порта отображает информацию о периодическом событии, таком как шаг расчета соответствующего блока Inport. Например, блок Model в этом изображении отображает периодические порты события и ссылается на модель с двумя дискретными уровнями: 0.01 и 0.1.

A Model block has ports labeled D1[0.01] and D2[0.1].

Зависимости

Чтобы включить этот тип порта, установите Schedule rates with на Ports.

Параметры

развернуть все

Чтобы в интерактивном режиме изменить параметры блоков Model, выберите блок Model. Затем в Панели инструментов Simulink, на вкладке Model Block, нажимают Block Parameters.

Основной

Укажите основную информацию для блока Model.

Задайте имя файла модели, на которую ссылаются. Именем файла должен быть допустимый MATLAB® идентификатор для модели, как задано в Именах модели. Расширение файла является дополнительным.

Чтобы выбрать модель, на которую вы хотите сослаться, нажмите Browse. Чтобы просмотреть заданную модель, нажмите Open Model.

Программируемое использование

Можно запросить имя модели, на которую ссылаются, в различных форматах:

  • ModelFile — Имя модели с расширением файла. Когда вы не задаете расширение файла, первое соответствие, которое Simulink находит на пути MATLAB, определяет расширение файла.

  • ModelNameDialog — Имя модели с или без расширения файла, в зависимости от того, задаете ли вы расширение файла.

  • ModelName — Имя модели без расширения файла. Если вы задаете имя модели с расширением файла для ModelName, Simulink сохраняет расширение файла установкой ModelNameDialog и ModelFile.

Параметр: ModelNameDialog
Ввод: символьный вектор
Значение: '' | '<filename>'
Значение по умолчанию: ''

Задайте режим симуляции для блока Model. Режим симуляции для блока Model может отличаться, чем режим симуляции ее модели, на которую ссылаются, и других моделей в иерархии модели.

  • Accelerator — Создайте файл MEX для модели, на которую ссылаются, и затем выполните модель, на которую ссылаются, путем выполнения S-функции.

  • Normal — Выполните модель, на которую ссылаются, путем интерпретации, как будто модель, на которую ссылаются, является атомарной подсистемой, реализованной непосредственно в родительской модели.

  • Software-in-the-loop (SIL) — Эта опция требует Embedded Coder® лицензия. Сгенерируйте производственный код на основе установки параметра Code interface. Код скомпилирован для и выполнен на серверной платформе.

  • Processor-in-the-loop (PIL) — Эта опция требует лицензии Embedded Coder. Сгенерируйте производственный код на основе установки параметра Code Interface. Этот код скомпилирован для и выполнен на целевой платформе. Целевой API возможности соединения поддержка внедрения обмен данными между хостом и целью на каждом временном шаге во время PIL симуляции.

Углы блока Model указывают на режим симуляции блока Model. Для режима normal mode углы имеют пустые треугольники. Для режима Accelerator угловые треугольники заполнены в. Для режимов SIL и PIL углы заполнены в и слово (SIL) или (PIL) появляется на значке блока.

Несмотря на то, что можно задать любой режим симуляции для модели, когда вы ссылаетесь на ту модель, блок Model задает режим симуляции экземпляра модели, на который ссылаются. Режим симуляции родительской модели может заменить режим симуляции блока Model.

Для получения дополнительной информации смотрите, Выбирают Simulation Modes for Model Hierarchies.

Программируемое использование

Параметр: SimulationMode
Ввод: символьный вектор
Значение: 'Normal' | 'Accelerator' | 'Software-in-the-loop' | 'Processor-in-the-loop'
Значение по умолчанию: 'Normal'

Задайте, сгенерировать ли код от топ-модели или модель, на которую ссылаются, для режимов PIL симуляции и SIL симуляции. Чтобы развернуть сгенерированный код как часть объемного приложения, которое использует модель, на которую ссылаются, задайте Model reference. Чтобы развернуть сгенерированный код как автономное приложение, задайте Top model.

  • Model reference — Код сгенерирован из модели, на которую ссылаются, как часть иерархии модели. Генерация кода использует slbuild ('model', 'ModelReferenceCoderTarget') команда.

  • Top model — Код сгенерирован от топ-модели с автономным интерфейсом кода. Генерация кода использует slbuild ('model') команда.

Зависимости

Чтобы включить этот параметр, установите Simulation mode на любой Software-in-the-loop (SIL) или Processor-in-the-loop (PIL).

Программируемое использование

Parameter: CodeInterface
Ввод: символьный вектор
Значение: 'Model reference' | 'Top model'
Значение по умолчанию: 'Model reference'

Симуляция Событий модели

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

Выберите этот параметр, чтобы отобразить инициализировать порт события. Очистите этот параметр, чтобы удалить порт.

Зависимости

Чтобы включить этот параметр, сошлитесь на модель, которая не сконфигурирована для условного выполнения.

Программируемое использование

Параметры блоков: ShowModelInitializePort
Ввод: символьный вектор
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Выберите этот параметр, чтобы отобразить порты события сброса. Очистите этот параметр, чтобы удалить порты.

Зависимости

Чтобы включить этот параметр, сошлитесь на модель, которая не сконфигурирована для условного выполнения и содержит блок Reset Function.

Программируемое использование

Параметры блоков: ShowModelResetPorts
Ввод: символьный вектор
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Выберите этот параметр, чтобы отобразить оконечный порт события. Очистите этот параметр, чтобы удалить порт.

Зависимости

Чтобы включить этот параметр, сошлитесь на модель, которая не сконфигурирована для условного выполнения. Затем выберите Show model initialize port.

Программируемое использование

Параметры блоков: ShowModelTerminatePort
Ввод: символьный вектор
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Управляйте выполнением модели, на которую ссылаются, с периодическими событиями.

В зависимости от значения уровней Расписания параметром, выбирая этот параметр или отобразит периодические порты события на блоке Model или создаст разделы, чтобы использовать с Schedule Editor. Когда параметр Schedule rates with не отображается, его значение по умолчанию (Ports) применяется.

Очистка этого параметра скрывает периодические порты события и не создает разделы.

Зависимости

Чтобы включить этот параметр, сошлитесь на модель с дискретными шагами расчета, которая не сконфигурирована для условного выполнения и не является моделью экспорта функций. Когда родительская модель является базирующимся уровнем, и модель, на которую ссылаются, является моделью экспорта функций, Schedule rates автоматически выбран.

Программируемое использование

Параметры блоков: ScheduleRates
Ввод: символьный вектор
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Создайте порты или разделы.

  • Ports — Отобразите периодические порты события для дискретных уровней в модели, на которую ссылаются.

    Чтобы вручную задать скорости порта, используйте set_param функционируйте, чтобы установить AutoFillPortDiscreteRates параметр блока Model к 'off'. Затем задайте скорости порта с PortDiscreteRates параметр.

  • Schedule Editor — Создайте разделы для модели, на которую ссылаются, чтобы использовать с Schedule Editor.

Зависимости

Включить этот параметр:

  • Родительская модель не должна быть моделью экспорта функций.

  • Родительская модель не должна использовать решатель фиксированного шага и однозадачный режим.

  • Выберите уровни Schedule. Когда родительская модель является базирующимся уровнем, и модель, на которую ссылаются, является моделью экспорта функций, Schedule rates автоматически выбран.

  • Модель Clear Show инициализирует порт и порты сброса модели Show.

Программируемое использование

Параметры блоков: ScheduleRatesWith
Ввод: символьный вектор
Значение: 'Ports' | 'ScheduleEditor'
Значение по умолчанию: 'Ports'

Параметры экземпляра

Задайте специфичные для экземпляра значения для аргументов модели.

Отобразите параметры экземпляра и задайте специфичные для экземпляра значения. Instance parameters является параметрами блоков, которые были сконфигурированы в модели, на которую ссылаются, чтобы использовать различное значение для каждого экземпляра модели.

Чтобы задать специфичные для экземпляра значения, используйте столбец Value в таблице. Чтобы указать, что значение параметров может быть заменено родительской моделью, установите флажок Argument. Для получения дополнительной информации о конфигурировании параметров экземпляра в модели, на которую ссылаются, и определении специфичных для экземпляра значений в блоке Model, смотрите, Параметрируют Экземпляры Допускающей повторное использование Модели, на которую Ссылаются.

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

Программируемое использование

Параметры блоков: ParameterArgumentValues
Ввод: структура
Значение: структура
Значение по умолчанию: структура без полей
Параметры блоков: InstanceParameters
Ввод: массив структур
Значение: структура с полями: NameЗначениеpath, и Argument.

Примеры модели

Характеристики блока

Типы данных

Boolean[a] | шина[a] | дважды[a] | перечислимый[a] | фиксированная точка[a] | половина[a] | целое число[a] | один[a] | строка[a]

Прямое сквозное соединение

no

Многомерные сигналы

ограниченный[a]

Сигналы переменного размера

ограниченный[a]

Обнаружение пересечения нулем

no

[a] Фактическая поддержка типа данных или возможности зависит от реализации блока.

Советы

Чтобы программно определить, ссылается ли блок Model на защищенную модель, используйте get_param функционируйте, чтобы запросить ProtectedModel только для чтения параметр блока Model. Если модель, на которую ссылаются, защищена, функция возвращает 'on'. Если модель, на которую ссылаются, незащищена, функция возвращает 'off'.

Вопросы совместимости

развернуть все

Предупреждает запуск в R2019a

Расширенные возможности

Представлено до R2006a