在statflow中创建流程图
一个Stateflow®流程图是一种图形化构造,它对逻辑模式(如决策树和迭代循环)建模。流程图表示一种组合逻辑,其中一个结果不依赖于先前的结果。您可以通过仅结合连接连接和过渡来构建流程图。连接提供了不同转换路径之间的决策分支。执行流程图开始于默认转换,结束于终止结,这是一个没有外向跃迁的结。有关更多信息,请参见结合过渡和连接创建分支路径.
请注意
如果状态流图表只包含一个流程图,则图表每次唤醒时都会对流程图进行计算。相反,图表只在状态进入期间评估状态内的任何流程图。
最佳实践是将流程图封装在图形化函数中,以创建可在图表中的任何位置调用的模块化和可重用逻辑。有关图形化函数的详细信息,请参见通过定义图形化函数重用逻辑模式.
例如,这个流程图模型简单如果
-其他的
逻辑:
流程图为这段代码建模:
如果U > 0 y = 1;其他的Y = 0;结束
画一个流程图
您可以通过使用连接连接作为交替转换路径之间的分支点来绘制流程图。绘制流程图:
打开一个新的图表。
向流程图开始执行的连接处添加默认转换。在对象面板中,单击Default转换图标.然后,在图表画布上,单击转换的位置。状态流编辑器将添加一个新的连接连接作为转换的目的地。
若要添加新的过渡,请指向连接的边界。然后,点击并拖动离开交界处。状态流编辑器提供图形提示,允许您添加连接或状态。
要在过渡的末端放置一个结,请单击圆形提示。
若要将转换连接到现有连接,请将指针拖动到所需目标。
若要向图表添加连接结,请在对象调色板中单击“连接”图标.然后,在图表画布上单击新连接点的位置。
请根据需要重复执行上述步骤。
中所描述的标记转换定义转换中的动作.
创建流程图的最佳实践
在创建流程图时,请遵循以下最佳实践。
只使用一个默认转换
流程图只有一个入口点。
只提供一个终端连接
多个终端连接降低了流程图的可读性。
将所有过渡路径收敛到终止结点
流程图的执行总是到达终止点。
提供从除终止结以外的每个结的无条件转换
如果在模拟过程中发生意外回溯,则会出现警告消息。
若要控制意外回溯的诊断操作级别,请打开“配置参数”对话框,并在诊断>Stateflow窗格中,设置意想不到的回溯参数没有一个
,警告
,或错误
.默认设置为警告
.有关更多信息,请参见意想不到的回溯(万博1manbetx模型).
在以下情况下,可能会在路口发生意外的倒退:
结没有到状态或终止结的无条件过渡路径。
多条过渡路径都通向这个结点。
要处理更新,请使用条件操作而不是转换操作
流程图测试转换,但不执行它们。因此,流程图永远不会执行转换操作。此外,在图表中使用MATLAB®作为操作语言,在图形化函数中使用转换操作会导致编译时错误。