Этот пример показывает, как смоделировать распределённую систему управления для пересечения односторонних дорог. Чтобы скоординировать состояние светофора, два графика связываются друг с другом при помощи сообщений. Проект двух графиков идентичен.
Можно взаимодействовать с сигналами трафика через MATLAB® UI. Чтобы запросить пешеходный переход, нажмите одну из темно-серых кнопок запроса в нижней части сигнала трафика.
Контроллер для каждой дороги реализован Светофором подсистем контроллера светофора 1 и Светофором 2.
В каждой подсистеме график Контроллера описывает основную логику диспетчера через различные состояния сигнала трафика.
Эта модель использует в своих интересах эти семантические функции сообщений:
Сообщения не отбрасываются, если на них сразу не реагируют. Например, в этой модели, пешеходные запросы ставятся в очередь вплоть до контроллера, может реагировать на запрос, когда светофор покраснел.
Можно настроить циклы сообщения между различными компонентами. Эти циклы не приводят к алгебраическим циклам в вашей модели.
Обычно, входные сигналы уничтожаются в конце временного шага, в котором они оценены. Однако можно сохранить эти входные сигналы для использования в более позднее время путем временной передачи им локальной очереди "содержания". Например, когда график Контроллера выходит из состояния Go
, он использует локальную очередь pedRequestLocal
, чтобы сохранить пешеходные запросы, выполненные на другой дороге. График проверяет на те запросы позже, когда он выходит из состояния PrepareToStop
.
Чтобы изменить скорость симуляции, выберите Simulation> Pacing Options. В Окне параметров Следующего Симуляции настройте установку ползунка. Для получения дополнительной информации смотрите, что Симуляция Следует (Simulink).