主要内容

执行Stateflow图表

当一个状态流®图表被唤醒,图表遵循一个工作流并执行操作。一个状态流程图唤醒了:

  • 在每个时间步骤根据Simulink金宝app®解算器。

  • 当状态流图接收到事件时。

当一个图表第一次被唤醒时,该图表被初始化并变为活动的。看到表条目.一旦图表被激活,但没有更多的动作要采取,图表就会进入休眠状态,直到它被一个新的时间步骤或一个事件触发。

工作流程Stateflow表执行

此流程图显示Stateflow执行图表或状态所需的事件进程。在此流程图中,当前状态指决策或过程发生的状态。

在行动

在执行状态操作期间:

  • 状态是活动的,出现一个新的时间步长,并且不能有效地转换到另一个状态。

  • 状态是活动的,事件发生,并且不能有效地转换到另一个状态。

在动作之前有前缀,然后后跟一个必需的冒号(),然后是一个或多个操作。使用回车符分号分隔多个操作(),或逗号().如果您没有为语句显式指定状态操作类型,则图表将该语句视为条目行动。

国家履行其职责当图表唤醒时的操作(如果指定)。上面的流程图描述了状态执行的过程,并显示了何时执行行为发生。

如果您的状态流程图不包含状态,则每次执行该图表时,statflow总是计算默认的转换路径。

即将离任的过渡

statflow将用于评估的传出转换标记为状态流图执行的一部分。一旦一个离职的过渡被标记为评估,遵循评估过渡的工作流程.有关Stateflow如何计算传出转换的更多信息,请参见评估转换

内心的转变

Stateflow将内部转换标记为评估,作为Stateflow图表执行的一部分。标记内部转换以进行评估后,请按照评估过渡的工作流程. 有关Stateflow如何计算内部转换的更多信息,请参阅评估转换

使用有效转换执行图表

在本例中,状态流图被初始化,并且条目执行的操作是StateAStateA1.一个新的时间步长出现,图表被唤醒。

在这个时候,,x = 5y = 2,z = 0

按照状态流程图执行的工作流,图表执行步骤如下:

  1. 图表有一个活动的子状态,StateA

  2. StateA有一个外向的过渡到StateB.按照评估过渡的工作流程,则确定过渡是有效的。

  3. StateB被标记为条目StateA被标记为退出

要完成时间步骤,请遵循退出状态的工作流StateA输入图表或状态的工作流StateB

没有有效转换的图表执行

在本例中,状态流图被初始化,并且条目执行的操作是StateAStateA1.一个新的时间步长出现,图表被唤醒。

在这个时候,,x = 3y = 0,z = 0

按照状态流程图执行的工作流在图表进入休眠状态之前,图表执行步骤的顺序如下:

  1. 图表有一个活动的子状态,StateA

  2. StateA有一个外向的过渡到StateB.按照评估过渡的工作流程,则认定过渡无效。

  3. 执行操作StateA.现在y = 1

  4. StateA没有任何内部转换。

  5. 的活动状态StateAStateA1

  6. StateA1有一个外向的过渡到StateA2.按照评估过渡的工作流程,则认定过渡无效。

  7. 执行操作StateA1.现在x = 4

  8. StateA1没有任何活动子状态。

  9. 图表睡着了。

步骤1到步骤9发生在第二个时间步骤中。

相关话题