执行Stateflow图表
当一个状态流®图表被唤醒,图表遵循工作流并执行操作。状态流图被唤醒:
在每个时间步
当状态流图接收到事件时
当图表第一次被唤醒时,图表将被初始化并变为活动状态,如中所述输入图表或状态的工作流.当没有更多的操作要执行时,图表将进入睡眠状态,直到新的时间步骤或事件唤醒图表。
工作流程Stateflow表执行
此流程图显示statflow在执行图表或状态时所接受的事件的进展。在这个流程图中,当前状态是指决策或过程发生时的状态。
默认的转换
一个缺省转换是一个没有来源的过渡。在不包含任何状态的状态流图中,默认转换标志着流程图的开始。有关更多信息,请参见在statflow中创建流程图.
如果状态流图表不包含任何状态,则图表每次唤醒时都会计算默认的转换路径。在标记了用于计算的默认转换之后,图表遵循如下步骤评估转换的工作流.
请注意
图表仅在状态进入期间评估状态内的默认转换路径,而不是在图表每次唤醒时评估。
外过渡
一个外过渡退出源状态的转换。状态流图将评估的外部转换标记为执行状态的第一步。在标记外部转换以进行评估之后,图表遵循如下步骤评估转换的工作流.
在行动
一个在
动作是通过使用前缀在状态标签动作中定义的动作在
或杜
.有关更多信息,请参见定义状态中的动作.
一个国家执行在
当图表唤醒时,状态是活动的,并且没有有效的外部转换。
内心的转变
一个内心的转变是不退出源状态的转换。有关更多信息,请参见通过使用内部转换控制图表执行.
状态流图标记了在状态执行后进行评估的内部转换在
行动。在标记内部转换以进行评估之后,图表遵循如下步骤评估转换的工作流.
使用有效的转换执行图表
在本例中,状态流图已经初始化,并且条目
已执行的操作StateA
而且StateA1
.一个新的时间步长出现,图表被唤醒。
在这个时间步,X = 5
,Y = 2
,Z = 0
.
图表执行以下步骤:
这个图表有一个活跃的副状态,
StateA
.StateA
有一个外部过渡到StateB
.图表确定转换是有效的。图表显示
StateB
入境及StateA
标记为退出。退出
StateA
时,图表遵循的步骤如下所示退出状态工作流.进入
StateB
时,图表遵循的步骤如下所示输入图表或状态的工作流
没有有效转换的图表执行
在本例中,状态流图已经初始化,并且条目
已执行的操作StateA
而且StateA1
.一个新的时间步长出现,图表被唤醒。
在这个时间步,X = 3
,Y = 0
,Z = 0
.
图表执行以下步骤:
这个图表有一个活跃的副状态,
StateA
.StateA
有一个外部过渡到StateB
.图表确定转换无效。该图表执行
在
操作StateA
.现在Y = 1
.StateA
没有任何内部转换。的活动亚态
StateA
是StateA1
.StateA1
有一个外部过渡到StateA2
.图表确定转换无效。该图表执行
在
操作StateA1
.现在X = 4
.StateA1
没有任何活性基态。图表休眠了。