主要内容

利用消息建模分布式交通控制系统

这个例子展示了如何为一个单行道交叉路口的分布式控制系统建模。为了协调交通灯的状态,这两个图表通过消息相互通信。这两个图表的设计是相同的。

您可以通过MATLAB®UI与交通信号交互。要请求行人过街,请单击交通信号底部的深灰色请求按钮之一。

每条道路的控制器由交通灯控制器子系统traffic light 1和traffic light 2实现。

在每个子系统中,控制器图通过交通信号的各种状态来描述交通控制器的主要逻辑。

这个模型利用了消息的这些语义特征:

  • 如果消息没有被立即处理,则不会被丢弃。例如,在这个模型中,行人请求排队,直到当交通灯变红时控制器可以对请求作出反应。

  • 您可以在不同组件之间设置消息循环。这些循环不会在你的模型中导致代数循环。

  • 通常,输入消息在计算它们的时间步结束时销毁。但是,您可以通过临时将这些输入消息转发到本地“保存”队列来保留这些输入消息,以备以后使用。例如,当Controller图退出状态,它使用本地队列pedRequestLocal存储在另一条路上的行人请求。控件退出时,图表将检查这些请求PrepareToStop状态。

要改变模拟的速度,在模拟选项卡上,选择运行>模拟踱来踱去.在“模拟步调选项”对话框中,调整滑块设置。有关详细信息,请参见模拟踱来踱去(金宝app模型)

相关的话题