Основы модели - ссылки

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

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

Преимущества модели - ссылки

Как подсистемы, модели - ссылки позволяют вам организовывать большие модели иерархически. Как библиотеки, модели - ссылки позволяют вам задавать набор блоков однажды и неоднократно использовать его. Модели - ссылки обеспечивают несколько преимуществ, которые недоступны с подсистемами и библиотеками. Несколько из этих преимуществ следуют из моделей, на которые ссылаются, компилирующих независимый от контекста Блока модели, включая:

  • Модульная разработка

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

  • Образцовая защита

    С Simulink® Coder™license можно затенить содержимое модели, на которую ссылаются, позволив вам распределить модель, не показывая ее интеллектуальную собственность.

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

  • Включение ссылкой

    Можно сослаться на модель многократно, не сокращая копии, и многоуровневые модели могут сослаться на ту же модель.

  • Инкрементная загрузка

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

  • Ускоренное моделирование

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

  • Инкрементная генерация кода

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

  • Независимые конфигурации модели

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

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

Чтобы сравнить модели - ссылки, подсистемы и библиотеки, видят Инструкции по Компонентизации. Можно использовать несколько методов компонентизации в той же модели.

Иерархии модели

Модели, на которые ссылаются, могут содержать Блоки модели та ссылка модели низшего уровня. Топ-модель является самой верхней моделью в иерархии моделей, на которые ссылаются. Где только один уровень модели - ссылки существует, родительская модель и топ-модель являются тем же самым. Чтобы предотвратить циклическое наследование, Блок модели не может относиться прямо или косвенно к модели, которая превосходит его в иерархии модели. Эти данные показывают циклическое наследование.

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

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

Блок модели и интерфейс модели, на который ссылаются,

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

В образцовом sldemo_mdlref_basic каждый Блок модели имеет три входных параметра: два блока Константа и блок Pulse Generator. Каждому Блоку модели регистрировали один выходной сигнал к осциллографу. Поскольку входной сигнал от каждого блока Pulse Generator использует различную частоту дискретизации, выходной сигнал каждого Блока модели отличается для каждого образцового экземпляра.

Чтобы соединиться с родительской моделью, образцовый sldemo_mdlref_counter, на который ссылаются, включает три блока Inport (верхний, ниже, и входной параметр) и один блок Outport (вывод). Если вы изменяете порты в модели, на которую ссылаются, обновляете Блок модели, чтобы отразить эти изменения.

Атрибуты сигнала в модели, на которую ссылаются, независимы от контекста Блока модели. Например, размерности сигнала и типы данных не распространяют через контур Блока модели. Задавать атрибуты сигнала в модели, на которую ссылаются, блочных define параметрах для корневого уровня блоки Inport.

Для получения дополнительной информации смотрите Интерфейс Модели - ссылки.

Рабочие пространства модели и словари данных

Каждая модель имеет свою собственную рабочую область для хранения значений переменных. В иерархии модели каждое рабочее пространство модели действует как уникальное пространство имен. Поэтому можно использовать то же имя переменной в рабочих областях многоуровневой модели. Чтобы осуществлять обмен данными среди моделей, можно использовать словарь данных. Для получения дополнительной информации о том, где можно сохранить переменные и объекты, видеть, Определяют, Где Сохранить Переменные и Объекты для Моделей Simulink.

Образцовое выполнение, на которое ссылаются,

Чтобы использовать внешний сигнал управлять, выполняется ли Блок модели во время моделирования, смотрите, Изменяют Модели, на которые Ссылаются, для Условного Выполнения.

Различные блоки Подсистемы могут содержать Блоки модели как различные системы. Для получения информации о различных системах смотрите то, Что Является Вариантами и Когда Использовать Их.

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

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

Образцовое моделирование, на которое ссылаются,

Можно моделировать модель, на которую ссылаются, любой interpretively (в режиме normal mode) или путем компиляции модели, на которую ссылаются, в код и выполнения кода (в режиме Accelerator). Для получения дополнительной информации смотрите, Моделируют Иерархии модели.

Более быстрые моделирования Используя файлы кэша Simulink

Первый раз, когда вы моделируете или обновляете схему для модели, которая создает моделирование модели - ссылки (SIM) цель, процесс сборки, создает файл кэша Simulink. Файл кэша хранит артефакты сборки и ускоряет последовательные образцовые сборки. Для дополнительных выгод и рабочего процесса в качестве примера, смотрите Сборки Моделирования Доли для Более быстрых Моделирований.

Образцовая генерация кода, на которую ссылаются,

Чтобы узнать о факторах при генерации кода для модели, на которую ссылаются, смотрите Генерацию кода Моделей, на которые Ссылаются (Simulink Coder).

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

Блоки

Связанные примеры

Больше о

Была ли эта тема полезной?