文档

比较和合并包含状态流的Simulin万博1manbetxk模型

这个例子向您展示了如何使用Simulink®模型比较比较两个Simulink万博1manbetx模型。您可以在结果报告中查看并合并Simulink和stat万博1manbetxflow®的差异。

这个例子向您展示了如何使用Simulink模型比较来理解在两种不同的设计之间万博1manbetx发生了什么变化。一些开发工作为转换逻辑添加了一个新的“kickdown”模式。您可以使用Simulink模型比万博1manbetx较来比较两个模型,并生成一个报告来探索和合并差异。

比较模型

运行以下命令设置示例文件。

slxmlcomp.internal.examples.setupstateFlowExample();%然后使用visdiff来比较模型。visdiff ('slxml_sfcar_1'“slxml_sfcar_2”);

理解结果

比较工具显示的报告只包括两个模型之间的差异,而不是完整的模型层次结构。

颜色表示项目是否被修改(紫色项目),插入(蓝色项目),或删除(黄色项目)。

步进通过差异

使用Comparison选项卡上的“Next”和“Previous”导航按钮来逐步遍历报表中的更改组。当您这样做选择一个项目:

  • 报告突出显示另一个树中相应的项(如果它存在)

  • 两个模型都显示在报表旁边。如果可能,报告会突出显示Simulink模型中相应的项。万博1manbetx

您可以在高亮工具条部分控制高亮显示。

突出显示Simulink模型的差异万博1manbetx

点击选中右侧树的树节点“Out1”。观察报告中突出显示的“Out1”,以及模型中对应的块“slxml_sfcar_2”。

突出显示状态流程图中的差异

现在浏览树以找到报告中的状态溢图。请遵守“Shift_Logic”节点旁边的StateFlow Chart图标。单击右侧树中的“kickdown”。该报告显示“Shift_Logic”stateflow图表。观察到新的“bickdown”功能已添加到其中一个图表中。

筛选结果

可以使用过滤器来控制比较报告所显示的更改类型。要查看可用的筛选器,以及它们是否已应用于当前报告,请单击筛选器工具条部分中的Filter按钮。

例如,Simulink模型中的一些信息被定义为“非功能性”。万博1manbetx这些变化不太可能改变设计的行为。默认情况下,非功能项是隐藏的,可以通过取消选择“过滤器”工具条下拉菜单中的“隐藏非功能更改”项来显示。

合并包含状态流的模型中的更改

通过单击工具条中的“合并”按钮,可以合并两个Simulink和statflow模型之万博1manbetx间的更改。这将创建第三个文件“targetFile”,它可以包含来自左模型或右模型的更改。使用报表右侧的单选按钮来选择您希望在目标文件中进行的更改。

一旦在目标模型中选择了想要的更改,就可以使用“save File”工具条按钮在正确的模型(slxml_sfcar_2)上保存这些更改。

请注意,为了让工具自动连接合并的转换,您必须在转换之前合并状态和连接。

进一步的信息

比较Simuli万博1manbetxnk模型

这个话题有用吗?