Ставьте в очередь сообщения и сущности
Simulink / сообщения & События
SimEvents
Этот блок хранит сущности или сообщения в очереди, на основе порядка прибытия или приоритета. Каждый элемент во главе очереди отбывает, когда нисходящий блок готов принять его. Блок Queue и блок Entity Queue являются теми же блоками с различными значениями по умолчанию для флажка Overwrite the oldest element if queue is full.
Можно задать способность очереди и политику, когда очередь полна. Блок поддерживает три различных сообщения или очередь, сортирующую политики, метод "первым пришел - первым вышел" (FIFO), метод "последним пришел - первым вышел" (LIFO) и приоритет. Приоритетная очередь может использоваться только, когда флажок Overwrite the oldest element if queue is full снимается.
Port_1
— Введите сущность или сообщениеВведите сущность или сообщение, которое несет скаляр, шину или векторные данные, чтобы ввести очередь.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| enumerated
| bus
| fixed point
Port_1
— Выведите сущность или сообщениеВыходной порт, который позволяет сущностям или сообщениям во главе очереди отбывать, когда нисходящий блок готов принять их.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| enumerated
| bus
| fixed point
Port_d
— Количество сущностей, которые отбыли из блокаКоличество сущностей, которые отбыли из блока.
Чтобы включить этот порт, установите флажок Overwrite the oldest element if queue is full, и кликните по вкладке Statistics и выберите поле, пометил Number of entities departed, d.
Типы данных: double
Port_n
— Количество сущностей, которые еще не отбыли из блокаКоличество сущностей, которые еще не отбыли из блока.
Чтобы включить этот порт, установите флажок Overwrite the oldest element if queue is full, и кликните по вкладке Statistics и выберите поле, пометил Number of entities in block, n.
Типы данных: double
Port_w
— Среднее время ожидания для сущностей в блокеСреднее время ожидания для сущностей в блоке.
Чтобы включить этот порт, установите флажок Overwrite the oldest element if queue is full, и кликните по вкладке Statistics и выберите поле, пометил Average wait, w.
Типы данных: double
Port_l
— Средняя длина очереди сущностиPort_l выводит среднюю длину очереди сущности.
Чтобы включить этот порт, установите флажок Overwrite the oldest element if queue is full, и кликните по вкладке Statistics и выберите поле, пометил Average queue length, l.
Типы данных: double
Port_ex
— Количество сущностей извлеченоКоличество сущностей, которые вытащены этого блока.
Чтобы включить этот порт, установите флажок Overwrite the oldest element if queue is full, и кликните по вкладке Statistics и выберите поле, пометил Number of entities extracted, ex.
Типы данных: double
Overwrite the oldest element if queue is full
— Задайте очередь, перезаписывающую политикуУстановите этот флажок, чтобы выбрать между двумя очередями, перезаписывающими политики.
Если вы устанавливаете флажок, входящее сообщение перезаписывает самое старое, если очередь полна.
Этот режим представляет простой буфер сообщения, который можно использовать, чтобы сгенерировать асинхронную связь между компонентами Simulink и производственным кодом.
Если вы снимаете флажок, блок не принимает новые сообщения, если очередь полна.
В этом режиме можно управлять действиями события использования данных сущности и визуализировать статистику.
Чтобы настроить действия, когда сущности или сообщения входят, выйдите, или блокируются, вводят MATLAB® код в Entry action
, Exit action
, или Blocked action
поле вкладки Event actions. Для получения дополнительной информации смотрите Действия События и События.
Для примера смотрите, Управляют Сущностями Используя Действия События.
Параметры блоков: QueueOverwriting |
Ввод: символьный вектор |
Значения: 'on' | 'off' |
Значение по умолчанию: 'on' (для Simulink) и 'off' (для SimEvents) |
Capacity
— Задайте способность очередиЗадайте способность очереди.
Параметры блоков: Capacity |
Ввод: символьный вектор |
Значения: '25' | скаляр |
Значение по умолчанию: '25' |
Queue type
— Выберите тип очередиFIFO
(значение по умолчанию) | LIFO
| Priority
Выберите тип очереди.
FIFO
— метод "первым пришел - первым вышел"
LIFO
— в обратном порядке
Priority
— сохраните элементы в порядке приоритета, смотрите, Обслуживают Высокоприоритетных Клиентов путем Сортировки Сущностей На основе Приоритета. Priority
может быть выбран, когда вы снимаете флажок Overwrite the oldest element if queue is full.
Примечание
Приоритетная очередь не поддерживает fixed point
тип данных.
Параметры блоков: QueueType |
Ввод: символьный вектор |
Значения: 'FIFO' | 'LIFO' | 'Priority' |
Значение по умолчанию: 'FIFO' |
Multicast tag
— Задайте тег при принятии широковещательной передачи сущностей через многоадресные источникиA
(значение по умолчанию) | вектор символовЗадайте тег при принятии широковещательной передачи сущностей через многоадресные источники. Блок Entity Multicast требует лицензии SimEvents.
Этот параметр отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full и устанавливаете Entity arrival source на Multicast
.
Параметры блоков: MulticastTag |
Ввод: символьный вектор |
Значения: 'A' | вектор символов |
Значение по умолчанию: 'A' |
Priority source
— Задайте, какой атрибут сущности определяет свой приоритет PriorityAttribute
(значение по умолчанию) | вектор символовЗадайте, какой атрибут сущности определяет свой приоритет.
Этот параметр отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full и устанавливаете Queue type на Priority
.
Параметры блоков: PrioritySource |
Ввод: символьный вектор |
Значения: 'PriorityAttribute' | вектор символов |
Значение по умолчанию: 'PriorityAttribute' |
Sorting direction
— Выберите направление сортировки на основе приоритетаAscending
(значение по умолчанию) | Descending
Выберите направление сортировки на основе приоритета.
Ascending
— Элементы с меньшими приоритетными значениями появляются перед очередью.
Descending
— Элементы с большими приоритетными значениями появляются перед очередью.
Этот параметр отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full и устанавливаете Queue type на Priority
.
Параметры блоков: SortingDirection |
Ввод: символьный вектор |
Значения: 'Ascending' | 'Descending'
|
Значение по умолчанию: 'Ascending' |
Entity arrival source
— Выберите источник прибытия для сущностейInput port
(значение по умолчанию) | Multicast
Выберите источник прибытия для сущностей.
Input port
— Input port является источником сообщений или сущностей.
Multicast
— блок Entity Multicast является источником сущностей. Блок Entity Multicast требует лицензии SimEvents.
Этот параметр отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full и устанавливаете Queue type на Priority
.
Параметры блоков: EntityArrivalSource |
Ввод: символьный вектор |
Значения: 'Input port' | 'Multicast'
|
Значение по умолчанию: 'Input port' |
Event action
— Задайте поведение сущности в определенных событияхEntry
(значение по умолчанию) | Exit
| Blocked
Задайте поведение сущности в определенных событиях. Задайте поведение в параметре Event action. Entry и действия Exit называются сразу после записи сущности и незадолго до выхода сущности. Действие Blocked называется после того, как сущность блокируется. Для получения дополнительной информации смотрите Действия События и События.
Примечание
Если действие события изменит сущность, связанное поведение блока, такое как обращение приоритетной очереди и перепланирования любых событий, произойдет после того, как действие события полностью закончилось и возвратилось.
Примечание
Действия события не поддерживают fixed point
тип данных.
Действия события отображаются, когда вы снимаете флажок Overwrite the oldest element if queue is full.
Параметры блоков: EntryAction, ExitAction, BlockedAction |
Ввод: символьный вектор |
Значения: КОД MATLAB |
Значение по умолчанию: '' |
Number of entities departed, d
— Выводит количество сущностей, которые отбыли из блокаoff
(значение по умолчанию) | on
Количество сущностей, которые отбыли из блока.
Number of entities departed, d отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full.
Параметры блоков: NumberEntitiesDeparted |
Ввод: символьный вектор |
Значения: 'on' | 'off' |
Значение по умолчанию: 'off' |
Number of entities in block, n
— Выводит количество сущностей, существующих в блоке, которые должны все же отбытьoff
(значение по умолчанию) | on
Количество сущностей, существующих в блоке, но которые должны все же отбыть.
Number of entities in block, n отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full.
Параметры блоков: NumberEntitiesInBlock |
Ввод: символьный вектор |
Значения: 'on' | 'off' |
Значение по умолчанию: 'off' |
Average wait, w
— Выводит среднее время ожидания off
(значение по умолчанию) | on
Сумма времени ожидания для сущностей, отбывая из блока, разделенного на их общее количество. Wait time является длительностью между элементом блока Entity Queue и выходом сущности. Для получения дополнительной информации смотрите, Интерпретируют Модели SimEvents Используя Статистический анализ.
Average wait, w отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full.
Параметры блоков: AverageWait |
Ввод: символьный вектор |
Значения: 'on' | 'off' |
Значение по умолчанию: 'off' |
Average queue length, l
— Выводит среднюю длину очереди сущностиoff
(значение по умолчанию) | on
Накопленный средневзвешенный временем размер очереди. Блок вычисляет это значение:
Умножение размера очереди ее длительностью, чтобы вычислить взвешенный временем размер очереди
Подведение итогов всех взвешенных временем размеров очереди и усреднение их за общее время
Для получения дополнительной информации смотрите, Интерпретируют Модели SimEvents Используя Статистический анализ.
Average queue length, l отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full.
Параметры блоков: AverageQueueLength |
Ввод: символьный вектор |
Значения: 'on' | 'off' |
Значение по умолчанию: 'off' |
Number of entities extracted, ex
— Количество сущностей извлечено из этого блокаoff
(значение по умолчанию) | on
Выводит количество извлеченных сущностей, которые вытащены из этого блока блоком Entity Find. Блок Entity Find требует лицензии SimEvents. Если извлеченная сущность является первой сущностью в очереди, следующая сущность собирается как незаконченная сущность оставить блок. Если атрибут сущности задает приоритет в приоритетной очереди, и это изменяется блоком Entity Find, очередь сортируется снова. Когда сущность извлечена, Number of entities departed, d, Number of entities in block, n, Average wait, w, и статистические данные Average queue length, l обновляются соответственно. Для получения дополнительной информации о нахождении и извлечении сущностей, смотрите, Находят и Сущности Извлечения в Моделях SimEvents.
Number of entities extracted, ex отображается, когда вы снимаете флажок Overwrite the oldest element if queue is full.
Параметры блоков: NumEntitiesExtracted |
Ввод: символьный вектор |
Значения: 'on' | 'off' |
Значение по умолчанию: 'off' |
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Генерация кода не поддерживается для действий события и статистики.
Entity Generator | Entity Server | Multicast Receive Queue | Entity Multicast | Message Send | Message Receive
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.