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