在体系结构模型中使用序列图
您可以编写序列图,将预期的系统行为描述为system Composer™体系结构模型组件之间的交互序列。生命线对应于体系结构模型中的组件,而消息对应于组件之间的连接器。您可以创建多个序列图来表示系统的不同操作场景。序列图集成到建筑观景廊在系统作曲家。
有关序列图主题的路线图,请参见使用序列图描述系统行为.
这个红绿灯的例子将告诉你如何:
创建一个序列图。
在序列图中添加子生命线。
使用门与序列图中的根体系结构端口交互。
共同创建组件并保持架构模型和序列图同步。
在序列图中创建消息。
使用模型浏览器添加组件。
请注意
本例使用Stateflow®块。如果没有Stateflow许可,则可以打开并模拟模型,但只能进行基本更改,例如修改块参数。
交通灯的例子与层次序列图
这个交通灯示例包含描述行人穿过十字路口的序列图。该模型描述了以下步骤:
交通信号由红到黄再到绿循环。
当行人过路按钮被按下时,如果交通信号是绿色的,交通信号将在限定的时间内由黄色转换为红色。
行人过马路时,步行信号是有效的。
打开包含序列图的System Composer模型。
systemcomposer.openModel(“TrafficLight”);
打开Architecture Views Gallery以查看序列图。
openViews(模型)
本例中的序列图表示架构模型中的操作场景。
1.InputPollNested
序列图:当轮询器
将信号事件识别为inValue
上升到1
,按下行人过路按钮。接下来,开关
生命线识别到的信号事件lampcontroller
作为switchPed
上升到1
,从而启动行人过路信号。
2.PedLoop
顺序图:交通灯变化trafficColor
从绿色(3.
)至黄色(2
)改为红色(1
).在每次交通颜色变化后tSwitch
价值就0
,表示交通灯已更换。在按下人行横道按钮之前,循环重复几次。
模拟体系结构模型
您可以在设置这些变量之后执行模型。
createWorkSpaceVar (“SwitchInputs”,[0 11 18],[-1 1 -1]);createWorkSpaceVar (“inhibitFlag”1 0);
创建序列图
使用System Composer中的架构模型来表示交通灯示例。
导航到建模>序列图中打开序列图建筑观景廊.
要创建一个新的序列图,单击新>序列图.
在元素的属性在右侧输入名称
PedLoop
.选择组件>添加的生命线菜单上的。带有垂直虚线的方框出现在画布上。这是新的生命线。
单击生命线上的向下箭头查看可用选项。选择命名为
lampSubsystem
由生命线表示。
将子生命线添加到序列图中
您可以将子生命线添加到序列图中,以表示模型层次结构并描述生命线之间的交互。
从菜单中选择组件>添加的生命线.从出现的列表中选择
控制器
组件。子组件名为
lampcontroller
而且控制器
都位于lampSubsystem
而且控制器
组件,分别。选择
lampSubsystem
生命线。导航到组件>添加的生命线>添加儿童生命线.选择lampcontroller
.的lampcontroller
儿童救生索现位于下方lampSubsystem
在层级中。重复这些步骤
控制器
生命线来添加控制器
孩子的生命线。
创建序列图门
选择
lampcontroller
生命线,然后单击并拖动它到排水沟区域。开始键入tSwitch
到来方框并选择tSwitch
从名单上。看,有一扇门在叫tSwitch
已使用来自lampcontroller
港口救生索tSwitch
.返回到架构图。观察到
tSwitch
根体系结构端口是否连接到lampcontroller
组件在层次结构中的lampSubsystem
组件。
共同创造组件
当您对序列图进行更改时,序列图和体系结构模型之间的共同创建工作流使模型保持同步。在序列图中同时添加生命线和消息会导致对体系结构模型的更新。这个例子展示了组件的共同创建。
从工具条菜单中选择组件>添加的生命线.另一个带有垂直虚线的方框出现在画布上,表示生命线。在该框中,输入名为
机
.观察到
机
组件是在体系结构图中共同创建的。
同步序列图和模型
删除
机
组件从体系结构图。返回到序列图并选择Synchronize >一致性检查.看
机
生命线突出显示,因为它不对应于组件。若要恢复一致性,可以删除
机
生命线或按撤销在体系结构模型中恢复机
组件。点击检查的一致性一次。
有关高级序列图同步技术,请参见同步序列图和体系结构模型.
在序列图中创建消息
您可以从现有连接创建消息。
画一条线从
控制器
生命线lampcontroller
生命线。开始打字交通
在来框,在您输入时自动填充。填充文本后,选择交通
.自
trafficColor
港口和交通
端口在模型中被连接时,消息从交通
端口到trafficColor
序列图中的端口。您可以在创建消息后修改消息的源和目标。单击
trafficColor
消息结束时选择它。单击并拖动
trafficColor
的消息结束。控制器
父生命线,然后选择trafficColor
端口。一旦
trafficColor
端口选择后,消息端从控制器
儿童生命线控制器
父母的生命线。还可以通过双击消息结束的名称来重命名消息结束和关联的端口。
使用模型浏览器修改序列图
位于画布左下角的视图库模型浏览器被称为模型组件.单击并拖动
开关
子组件到序列图中。序列图使用新的生命线进行更新。
单击并拖动以重新排序
lampSubsystem
和控制器
生命线。
从视图创建序列图
在MATLAB中®命令窗口,输入
scKeylessEntrySystem
.体系结构模型在Simulink编辑器中打开。金宝app打开建筑观景廊对于模型,导航到建模>的观点>体系结构视图.
右键单击
音响系统供应商故障
查看并选择新序列图.使用视图中的所有组件创建了一个新的生命线序列图。