send

Широковещательное сообщение или событие

Описание

пример

send(message_name) отправляет локальное или выходное сообщение.

пример

send(event_name) отправляет локальное или выходное событие.

пример

send(local_event_name,state_name) транслирует локальное событие на state_name и любое потомство этого состояния в иерархии.

пример

send(state_name.local_event_name) транслирует локальное событие в его родительское состояние state_name и любое потомство этого состояния в иерархии.

Примеры

расширить все

Отправка локального или выходного сообщения M со значением данных 3.

M.data = 3;
send(M);

Stateflow chart that uses the send operator in a state.

Отправка выхода события E.

send(E);

Stateflow chart that uses the send operator in a state.

Отправка локального E_one события в состояние B и любого из его подсостояний.

send(E_one,B);

Stateflow chart that uses a directed event broadcast to synchronize the substates of two parallel (AND) states.

Отправка локального E_one события в его родительское состояние B и любого из его подсостояний.

send(B.E_one);

Stateflow chart that uses a directed event broadcast to synchronize the substates of two parallel (AND) states. The broadcast uses the qualified event name B.E_one.

Совет

  • Если график отправляет сообщение, которое превышает емкость очереди приема, происходит переполнение очереди. Результат переполнения очереди зависит от типа очереди приема.

    • Когда переполнение происходит во внутренней очереди, Stateflow® график отбрасывает новое сообщение. Можно управлять уровнем диагностического действия, задав свойство Queue Overflow Diagnostic для сообщения. См. Раздел «Диагностика переполнения очереди»

    • Когда переполнение происходит во внешней очереди, блок Queue (Simulink) либо отбрасывает новое сообщение, либо перезаписывает самое старое сообщение в очереди, в зависимости от строения блока. См. «Перезаписать самый старый элемент, если очередь полна» (Simulink). Переполнение внешней очереди всегда приводит к предупреждению.

  • Избегайте использования неориентированных локальных трансляций событий. Неориентированные локальные трансляции событий могут вызвать нежелательное рекурсивное поведение на графике. Вместо этого отправляйте локальные события с помощью ориентированных трансляций. Для получения дополнительной информации смотрите Широковещание локальных событий для синхронизации параллельных состояний.

  • Используйте send оператор для отправки событий в Редактор расписаний. Редактор расписаний позволяет вам планировать выполнение апериодических разделов. Для получения дополнительной информации об использовании send оператор с редактором расписаний см. раздел События в редакторе расписаний (Simulink).

Введенный в R2018b