В этом примере показано, как изменить выбранный выходной порт блока Entity Output Switch, чтобы направить сущности вдоль различных путей, где путь является выбранным On базиса на сущность, не на предопределенном расписании.
Следующий пример иллюстрирует сценарий, в котором блоком Entity Output Switch управляет блок Simulink Function.
Дважды кликните функциональную подпись на блоке Simulink Function и введите SwitchCtrl()
.
Дважды кликните блок Simulink Function. Добавьте блок Repeating Sequence Stair и установите его параметр Sample time на -1
(наследованный), блок Message Send и блок Out1. Соедините блоки как показано.
В блоке Repeating Sequence Stair, набор Vector of output values к [3 2 1]
.
Когда блок Simulink Function выполняется, он выводит следующий номер от повторяющейся последовательности и блока Message Send, выходные параметры передают значения 3
, 2, или
1
на основе последовательности значений, заданных в блоке Repeating Sequence Stair.
В блоке Entity Server, в поле Exit action вводят этот код.
SwitchCtrl();
Когда сервис в блоке Entity Server завершен, сущность выходит из блока и переходит к блоку Entity Output Switch. Отъезд сущности от блока Entity Server вызывает SwitchCtrl()
функция, которая активирует блок Simulink Function. Затем выходной сигнал блока Simulink Function определяет, какой выходной порт сущность использует, когда это отбывает из блока Entity Output Switch.
Когда блок Entity Output Switch использует входной сигнал, блок может попытаться использовать сообщение перед своим первым хитом шага расчета. Если начальное значение сообщения вне области значений (например, это недоступно). Необходимо затем задать начальный выбор портов в диалоговом окне блока Entity Output Switch. Чтобы достигнуть этого, можно выполнить эти шаги.
В Entity Output Switch выберите From control port
как Switching criterion.
Установите Initial port selection на желаемый начальный порт. Значение должно быть целым числом между 1 и Number of output ports. Блок Entity Output Switch использует Initial port selection, пока первое сообщение порта управления не прибывает.
Entity Input Switch | Entity Output Switch | Entity Replicator | Entity Gate