Сущности являются дискретными элементами интереса к дискретно-событийной симуляции. По определению эти элементы называются entities в программном обеспечении SimEvents®. Сущности могут пройти через сеть очередей, серверов, логических элементов и переключателей во время симуляции. Сущности могут нести данные, известные в программном обеспечении SimEvents как attributes.
Модели SimEvents обычно содержат по крайней мере один исходный блок, который генерирует сущности. Другой SimEvents блокирует в образцовом процессе сущности, которые генерирует исходный блок.
Сущности не являются тем же самым как событиями. События являются мгновенными дискретными инцидентами, которые заменяют переменную состояния, вывод и/или вхождение других событий. Смотрите Роль Событий в Модели SimEvents для деталей.
Вы определяете то, что сущность показывает, на основе того, что вы моделируете. Таблица приводит представления сущности в качестве примера в различных приложениях.
Контекст примера приложения | Сущности |
---|---|
Аэропорт с очередью для доступа к взлетно-посадочной полосе | Самолеты, ожидающие доступа к взлетно-посадочной полосе |
Коммуникационная сеть | Пакеты, кадры или сообщения, чтобы передать |
Банк лифтов | Люди, перемещающиеся в лифтах |
Ленточный конвейер для сборки частей | Части, чтобы собраться |
Операционная система компьютера | Вычислительные задачи или задания |
Одна модель может использовать сущности, чтобы представлять различные виды элементов. Например, если вы моделируете фабрику, что процессы два различных видов частей, вы можете:
Используйте два блока Генератора Сущности, чтобы создать два вида частей.
Используйте один блок Entity Generator и впоследствии присвойте атрибут, чтобы указать, какую часть каждая сущность представляет и другой атрибут, чтобы представлять свойство.
Сущности SimEvents являются существенно тем же самым как сообщениями Stateflow®.
Сущности не появляются явным образом в окне модели. Графический блок может представлять компонент, что сущности процессов, но сами сущности не имеют графического представления. Однако можно собрать информацию о сущностях с помощью осциллографов Simulink®. Вы не можете перейти строка связи сущности. Если ваше приложение требует, чтобы сущность прибыла в несколько блоков, используйте блок Entity Replicator, чтобы создать копии сущностей.
Можно опционально присоединить данные к сущностям. Такие данные хранятся в одном или нескольких attributes сущности. Вы задаете имена и числовые значения для атрибутов. Например, если ваши сущности представляют сообщение, что вы передаете через коммуникационную сеть, вы можете присвоить данные под названием length
, который указывает на длину каждого конкретного сообщения. Можно считать или изменить значения атрибутов во время симуляции.
Можно опционально задать структуру сущности с помощью объекта шины Simulink. Эта возможность полезна при определении комплексных структур сущности, которые должны задаваться однажды, но использоваться в нескольких местоположениях в модели. Кроме того, Дискретная Система событий MATLAB и Дискретные блоки Схемы событий требуют, чтобы вы задали сущности, когда шина возражает. Для получения дополнительной информации об объектах шины смотрите, Когда Использовать Объекты Шины (Simulink).
Блок Entity Generator может использоваться, чтобы сгенерировать сущности. По умолчанию блок создает основанные на времени сущности. Можно изменить параметр Time Source, чтобы выбрать источник времени для генерации сущности. Можно создать основанное на времени использование сущностей:
Значение параметров Period. Для получения дополнительной информации смотрите, Создают Основанные на времени Сущности.
Порт сигнала. Можно затем соединить исходный блок Simulink, такой как блок Repeating Sequence, к порту сигнала. Временная стоимость не может быть отрицательным числом. Для получения дополнительной информации смотрите, Задают Времена Межгенерации для Сущностей.
Код MATLAB®. Для получения дополнительной информации смотрите, Создают Рандомизированные Сущности.
Используйте блок Entity Generation, чтобы создать основанные на времени сущности. Генерация Сущности позволяет вам задать период, в который она создает сущности.
Откройте библиотеку блоков SimEvents. Можно использовать браузер Simulink или ввести simevents
в Окне Команды MATLAB.
Создайте новую модель.
От библиотеки SimEvents перетащите блок Entity Generator к новой модели.
От библиотеки SimEvents перетащите блок Entity Queue к новой модели.
Соедините блок Entity Generator с входом Очереди Сущности.
В блоке Entity Queue выберите Number of entities departed, d.
От библиотеки Simulink Sinks перетащите блок Scope к новой модели. Соедините блок Scope с d портом блока Entity Queue.
От библиотеки SimEvents перетащите блок Entity Terminator к новой модели. Соедините вывод блока Entity Queue к входу блока Entity Terminator.
После симуляции осциллограф отображает сущности, которые отбывают из очереди.
Вы не можете соединить осциллограф со строкой SimEvents, как обозначено толстой строкой двойной стрелки.
Используйте блок Entity Generation, чтобы создать основанные на времени сущности. Генерация Сущности позволяет вам задать операцию рандомизации (такую как функция rand
MATLAB), чтобы создать сущности наугад времена.
Откройте библиотеку блоков SimEvents. Можно использовать браузер Simulink или ввести simevents
в Окне Команды MATLAB.
Создайте модель.
От библиотеки SimEvents перетащите блок Entity Generator к новой модели.
Дважды кликните блок и установите параметр Time source на MATLAB action
.
В параметре Intergeneration time action введите вызов функции randomizer, такой как rand
. Например:
dt = rand(1,1);
От библиотеки SimEvents перетащите блок Entity Queue к новой модели.
Соедините блок Entity Generator с входом Очереди Сущности
В блоке Entity Queue выберите Number of entities departed, d.
От библиотеки Simulink Sinks перетащите блок Scope к новой модели. Соедините блок Scope с d портом блока Entity Queue.
От библиотеки SimEvents перетащите блок Entity Terminator к новой модели. Соедините вывод блока Entity Queue к входу блока Entity Terminator.
После симуляции осциллограф отображает сущности, которые отбывают из очереди.
Составной создатель сущности | Составной разделитель сущности | Дискретная схема событий | Логический элемент сущности | Генератор сущности | Входной переключатель сущности | Многоадресная передача сущности | Переключатель сущности Вывод | Очередь сущности | Репликатор сущности | Сервер сущности | Терминатор сущности | MATLAB дискретная система событий | Многоадресно передайте принимают очередь | Получатель ресурса | Пул ресурсов | Ресурс Releaser