Интерфейс модели - ссылки

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

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

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

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

Чтобы настроить журналирование сигнала, смотрите, что Данные сигнала Экспорта Используют Журналирование Сигнала. Чтобы регистрировать подмножество сигналов, отмеченных для входа в систему иерархии модели, смотрите Сигнал Переопределения Регистрировать Настройки. Для примера, который использует Моделирование Data Inspector с моделями, на которые ссылаются, смотрите Сигналы Просмотра в Экземплярах Модели - ссылки.

Обновите блоки модели

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

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

Если изменения в интерфейсе модели, на который ссылаются, не влияют, как интерфейсы модели, на которые ссылаются, к его родительскому элементу, вы не должны обновлять Блок модели.

Чтобы обновить определенный Блок модели, из контекстного меню Блока модели, выбирают Subsystem & Model Reference> Refresh Selected Model Block.

Чтобы обновить все Блоки модели в модели (включая соединенные блоки в библиотеке или модели), в Редакторе Simulink, выбирают Diagram> Refresh Blocks. Моделирование или генерация кода для модели также обновляют все Блоки модели в модели.

Распространение сигнала

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

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

Поскольку шина сигнализирует, что перекрестные контуры модели - ссылки, используйте тот же объект шины задать свойства шины в родительской и модели, на которую ссылаются. Смотрите, что Данные Шины Пересекают Контуры Модели - ссылки. Для примера иерархии модели, которая использует шины, смотрите sldemo_mdlref_bus.

Модель, на которую ссылаются, может обеспечить входной параметр или выводиться только для пользовательских типов данных, которые являются фиксированной точкой или который задают Simulink.DataType или объекты Simulink.Bus.

Требования частоты дискретизации

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

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

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

Совместно использовать часть данных между всеми экземплярами (например, аккумулятор или индикатор отказа), моделируют данные как хранилище данных.

  • Чтобы ограничить доступ к данным так, чтобы только блоки в модели, на которую ссылаются, могли читать из и записать в него, используйте Блок памяти Хранилища данных в модели и выберите Share через образцовый параметр экземпляров. Для примера смотрите, Осуществляют обмен данными Хранилище Между Экземплярами Допускающего повторное использование Алгоритма.

  • Чтобы предоставить доступ к данным вне модели, на которую ссылаются, используйте хранилище глобальных данных, которое является объектом Simulink.Signal в базовом рабочем пространстве или словаре данных. Данные вне модели, на которую ссылаются, могут быть в родительской модели или в других моделях, на которые ссылаются.

Для получения дополнительной информации о хранилищах данных, смотрите Образцовые Глобальные данные путем Создания Хранилищ данных.

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

Блоки

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

Больше о

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