减少图表的编译时间
此示例展示了在测试Stateflow®图表中的一系列更改时,如何使用原子子图来减少编译时间。在MATLAB®的独立状态流图中不支持原子子图。金宝app有关更多信息,请参见使用原子子图创建可重用的子组件.
没有原子子图的原始模型
这个模型包含两个正弦波(金宝app模型)块:一个频率为每秒1弧度,另一个频率为每秒2弧度。
在图表中,每种状态都使用饱和器逻辑将输入正弦波转换为相同频率的输出方波。
因为这个示例没有使用原子子图表,所以每次对图表进行更改并开始模拟时,整个图表都会重新编译。
相反,您可以转换状态一个
原子子图。修改原子子图时,只会对子图进行重新编译,而不会对整个图进行重新编译。因此,用于模拟的增量构建需要更少的时间来重新编译。
编辑模型以使用原子子图
步骤1:将状态转换为原子子图
右键单击状态一个
并选择组和子图>原子子图.状态一个
更改为原子子图并显示标签原子在左上角。
步骤2:启动模拟
在模拟之前,对整个图表进行编译。
步骤3:修改原子子图
双击原子子图
一个
.子图的内容出现在状态流编辑器中。在这个州
Pos
,将输入动作更改为Y1 = 2;
在这个州
负的
,将输入动作更改为y = -2;
步骤4:重新启动模拟
在更改为一个
,重新编译只发生在原子子图,而不是整个图。
另请参阅
正弦波(金宝app模型)