Сущности в модели SimEvents

Сущности являются дискретными элементами интереса к дискретно-событийной симуляции. По определению эти элементы называются entities в программном обеспечении SimEvents®. Сущности могут пройти через сеть очередей, серверов, логических элементов и переключателей во время симуляции. Сущности могут нести данные, известные в программном обеспечении SimEvents как attributes.

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

Примечание

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

Значение сущностей в различных приложениях

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

Контекст примера приложенияСущности
Аэропорт с очередью для доступа к взлетно-посадочной полосеСамолеты, ожидающие доступа к взлетно-посадочной полосе
Коммуникационная сетьПакеты, кадры или сообщения, чтобы передать
Банк лифтовЛюди, перемещающиеся в лифтах
Ленточный конвейер для сборки частейЧасти, чтобы собраться
Операционная система компьютераВычислительные задачи или задания

Отличайтесь интерпретация сущностей

Одна модель может использовать сущности, чтобы представлять различные виды элементов. Например, если вы моделируете фабрику, что процессы два различных видов частей, вы можете:

  • Используйте два блока Генератора Сущности, чтобы создать два вида частей.

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

Примечание

Сущности SimEvents являются существенно тем же самым как сообщениями Stateflow®.

Визуализируйте сущности

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

Данные и роль атрибутов сущности

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

Можно опционально задать структуру сущности с помощью объекта шины Simulink. Эта возможность полезна при определении комплексных структур сущности, которые должны задаваться однажды, но использоваться в нескольких местоположениях в модели. Кроме того, Дискретная Система событий MATLAB и Дискретные блоки Схемы событий требуют, чтобы вы задали сущности, когда шина возражает. Для получения дополнительной информации об объектах шины смотрите, Когда Использовать Объекты Шины (Simulink).

Создайте сущности в модели SimEvents

Блок Entity Generator может использоваться, чтобы сгенерировать сущности. По умолчанию блок создает основанные на времени сущности. Можно изменить параметр Time Source, чтобы выбрать источник времени для генерации сущности. Можно создать основанное на времени использование сущностей:

Создайте основанные на времени сущности

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

  1. Откройте библиотеку блоков SimEvents. Можно использовать браузер Simulink или ввести simevents в Окне Команды MATLAB.

  2. Создайте новую модель.

  3. От библиотеки SimEvents перетащите блок Entity Generator к новой модели.

  4. От библиотеки SimEvents перетащите блок Entity Queue к новой модели.

    • Соедините блок Entity Generator с входом Очереди Сущности.

    • В блоке Entity Queue выберите Number of entities departed, d.

  5. От библиотеки Simulink Sinks перетащите блок Scope к новой модели. Соедините блок Scope с d портом блока Entity Queue.

  6. От библиотеки SimEvents перетащите блок Entity Terminator к новой модели. Соедините вывод блока Entity Queue к входу блока Entity Terminator.

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

Примечание

Вы не можете соединить осциллограф со строкой SimEvents, как обозначено толстой строкой двойной стрелки.

Создайте рандомизированные сущности

Используйте блок Entity Generation, чтобы создать основанные на времени сущности. Генерация Сущности позволяет вам задать операцию рандомизации (такую как функция rand MATLAB), чтобы создать сущности наугад времена.

  1. Откройте библиотеку блоков SimEvents. Можно использовать браузер Simulink или ввести simevents в Окне Команды MATLAB.

  2. Создайте модель.

  3. От библиотеки SimEvents перетащите блок Entity Generator к новой модели.

    1. Дважды кликните блок и установите параметр Time source на MATLAB action.

    2. В параметре Intergeneration time action введите вызов функции randomizer, такой как rand. Например:

      dt = rand(1,1);

  4. От библиотеки SimEvents перетащите блок Entity Queue к новой модели.

    • Соедините блок Entity Generator с входом Очереди Сущности

    • В блоке Entity Queue выберите Number of entities departed, d.

  5. От библиотеки Simulink Sinks перетащите блок Scope к новой модели. Соедините блок Scope с d портом блока Entity Queue.

  6. От библиотеки SimEvents перетащите блок Entity Terminator к новой модели. Соедините вывод блока Entity Queue к входу блока Entity Terminator.

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

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

| | | | | | | | | | | | | | | |

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

Больше о

Для просмотра документации необходимо авторизоваться на сайте