Блок MATLAB Discrete-Event System позволяет вам создать пользовательскую дискретно-событийную Системную object™ и использовать ее в SimEvents® модели. Чтобы создать управляемые событиями системы потока сущностей, блок использует дискретный системный объект System с matlab.DiscreteEventSystem класс, который наследует и расширяет matlab.System класс.

The matlab.DiscreteEventSystem класс предоставляет методы, которые позволяют вам работать с этими элементами массива системы дискретных событий:
Задайте свойства типов сущностей, портов и хранилища
getEntityPortsImpl - Задайте входные и выходные порты системы дискретных событий
getEntityStorageImpl - Определить элементы хранения сущностей системы дискретных событий
getEntityTypesImpl - Определить типы сущностей системы дискретных событий
Инициализация события
setupEvents - Инициализация событий генерации сущностей
Поведение объекта во время выполнения
blocked - Действие события, когда переадресация сущности прекращается
destroy - Событие действия при уничтожении сущности
entry - Действие события, когда сущность входит в элемент хранилища
exit - Действие события перед выходом сущности из хранилища
generate - Действие события при создании сущности
iterate - Действие события при итерации сущности
modified - Действие события при изменении сущности блоком Entity Find
resourceAcquired - Задайте действия события после успешного приобретения ресурса.
resourceReleased - Задайте действия события после успешного релиза ресурса.
testEntry - Действие события для принятия или отказа от сущности
timer - Действие события при завершении таймера
При реализации этих методов задайте тип сущности, хранилище сущностей, создайте, запланировайте и отмените события. Используйте следующие функции:
Задайте тип сущности
entityType - Задайте тип сущности
Определите хранилище сущностей
queueFIFO - Задайте устройство хранения очереди «первый в первом» (FIFO)
queueLIFO - Задайте устройство хранения последней очереди (LIFO)
queuePriority - Определить приоритетное хранилище очереди
queueSysPriority - Определить хранилище системной очереди приоритетов
Создание событий
eventGenerate - Создание события генерации сущностей
eventIterate - Создание события итерации сущности
eventTimer - Создание события таймера сущности
eventForward - Создание события переадресации сущности
eventDestroy - Создать событие уничтожения сущности
eventTestEntry - Создайте событие, чтобы указать, что политика приемки для хранилища изменилась и хранилище повторяет поступление сущностей
eventAcquireResource - Создайте событие приобретения ресурса
eventReleaseResource - Создайте событие, чтобы освободить ранее полученные ресурсы (этот метод позволяет частичный релиз ресурсов)
eventReleaseAllResources - Создайте событие, чтобы освободить все ресурсы, приобретенные сущностью
Отменить события
cancelDestroy - Отменить ранее запланированное событие уничтожения сущности
cancelForward - Отменить событие переадресации сущности
cancelGenerate - Отменить ранее запланированное событие генерации сущности
cancelIterate - Отменить ранее запланированное событие итерации
cancelTimer - Отмена ранее запланированного события таймера
cancelAcquireResource - Отменить ранее запланированное событие приобретения ресурса
Управление ресурсами
getResourceNamesImpl - Определение пулов ресурсов, из которых система дискретных событий получает ресурсы
resourceType - Укажите тип сущности и имя ресурсов, которые будут приобретены указанной сущностью
eventAcquireResource - Создайте событие приобретения ресурса
eventReleaseResource - Создайте событие, чтобы освободить ранее полученные ресурсы (этот метод позволяет частичный релиз ресурсов)
eventReleaseAllResources - Создайте событие, чтобы освободить все ресурсы, приобретенные сущностью
cancelAcquireResource - Отменить ранее запланированное событие приобретения ресурса
resourceSpecification - Укажите тип и количество ресурсов для eventAcquireResource или eventReleaseResource запросы
initResourceArray - Инициализация resourceSpecification массив, необходимый для генерации кода
resourceAcquired - Задайте действия события после успешного приобретения ресурса
resourceReleased - Задайте действия события после успешного релиза ресурса
matlab.System КлассНаследование matlab.DiscreteEventSystem класс также наследует подмножество matlab.System методы классов.
Заголовок для отображения системного объекта | |
Группы свойств для отображения системных объектов | |
Неактивное состояние свойства | |
Проверьте значения свойств | |
Действие при изменении настраиваемых свойств | |
Количество входов в метод шага | |
Имена входных портов системных блоков | |
Количество выходов от метода step | |
Имена выходных портов системных блоков | |
Значения дискретных свойств состояний | |
Инициализация системного объекта | |
Сброс состояний системного объекта | |
Релиз ресурсов | |
Загрузка Системного объекта из файла MAT | |
Сохраните системный объект в файле MAT | |
Информация о Системном объекте | |
Размеры выхода портов | |
Типы данных портов выхода | |
Комплексность выхода портов | |
Дискретный размер, тип данных и сложность | |
Имя для отображения в виде значка блока | |
Запрос шага расчета |
Дополнительные сведения об этих методах см. в разделе Настройка системных объектов для Simulink.
При ссылке на атрибуты сущности или системные свойства в Системном объекте дискретных событий используйте следующие форматы:
| Атрибут или свойство | Формат | Доступ |
|---|---|---|
признак |
| Чтение/запись |
свойство priority |
| Чтение/запись |
Свойство ID |
| Только для чтения |
Если сущность, который является частью блока MATLAB Discrete-Event System, запрашивается для извлечения, exit запускается способ блока. Когда exit вызывается метод, его destination аргумент устанавливается на extract. Посмотрите modified для изменения сущности.
matlab.DiscreteEventSystem | matlab.System