Работа с SimEvents и Simulink

Вы можете обмениваться данными между SimEvents® и Simulink® окружения. Однако основанные на времени сигналы и сигналы SimEvents имеют другие характеристики.

Обмен данными между SimEvents и Simulink

Используйте блоки Simulink Function в моделях SimEvents:

  • Чтение или запись атрибутов сущностей.

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

  • Для обмена данными между разделами модели, посвященными событиям и временным интервалам.

Используйте блоки Message Send и Receive для отправки и приема сообщений между блоками Simulink и SimEvents.

Основанные на времени сигналы и SimEvents блокируют переходы

Основанные на времени сигналы и сигналы SimEvents имеют различные характеристики. Вот некоторые признаки того, что основанный на времени сигнал автоматически преобразуется в сигнал SimEvents, или наоборот:

  • Вы хотите подключить основанный на времени сигнал к входу порту блока SimEvents.

  • Вы используете данные из блока SimEvents, чтобы повлиять на динамику на основе времени.

  • Вы хотите выполнить расчет, включающее как основанные на времени сигналы, так и выход SimEvents.

Когда происходит переход, на линии появляется E капитала.

Поддержка SimEvents для подсистем Simulink

Можно использовать блоки SimEvents (блоки дискретных событий) без ограничений в Simulink Virtual Subsystems и в Simulink® Невиртуальные подсистемы, соблюдающие некоторые конкретные рекомендации.

Для получения дополнительной информации о подсистемах Simulink смотрите Подсистему, Атомарную подсистему, Невиртуальную Подсистему, Подсистему CodeReuse.

Блоки дискретных событий в виртуальных подсистемах

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

Блоки дискретных событий в невиртуальных подсистемах

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

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

  • Если вы хотите соединить две или более атомарных подсистем, которые содержат блоки дискретных событий, каждая атомарная подсистема должна удовлетворять всем предыдущим условиям.

Для получения дополнительной информации об атомарных подсистемах смотрите Подсистему, Атомную Подсистему, Невиртуальную Подсистему, Подсистему CodeReuse.

Блоки дискретных событий в вариантных подсистемах

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

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

Программное обеспечение SimEvents не поддерживает установку параметра Variant activation time на code compile для этих блоков:

  • Variant Subsystem

  • Variant Sink

  • Variant Source

Сохранение данных моделирования

Поведение блока To Workspace

Блок To Workspace записывает основанные на событийных сигналах в MATLAB® рабочая область, когда симуляция останавливается или паузы. Один из способов приостановить выполняемую симуляцию - выбрать Pause под вкладкой Debug.

Отправка длины очереди в рабочую область

Пример показывает один способ записи времени и значений сигналов в рабочее пространство MATLAB. В этом случае сигнал является n выходом из блока Entity Queue, который указывает, сколько сущности удерживает очередь.

Для отображения данных можно использовать различные форматы времени в блоке To Workspace.

Чтобы записать сущности и их атрибуты, проходящие вдоль линии сущности, рассмотрите соединение To Workspace блока с этой линией сущности.

Логгирование данных

Логгировать данные из модели SimEvents можно с помощью Simulink. Для получения дополнительной информации смотрите Сохранить данные во время выполнения из симуляции.

См. также

| |

Похожие примеры

Подробнее о