当一个Stateflow®图表被唤醒,图表遵循工作流并执行操作。状态流图将被唤醒:
在每个时间步进根据Simulink金宝app®解算器。
状态流图接收到事件时。
当图表第一次被唤醒时,该图表被初始化并变为活动的。看到表条目.一旦图表处于活动状态,但没有更多的操作可执行,图表将进入休眠状态,直到由新的时间步骤或事件触发。
此流程图显示了Stateflow为执行图表或状态所接受的事件的进展。在这个流程图中,当前状态是指一个决策或过程正在发生的状态。
在执行状态的操作期间,当:
状态是活动的,发生了一个新的时间步,并且没有到另一个状态的有效转换可用。
状态是活动的,发生了事件,并且没有到另一个状态的有效转换可用。
在动作之前有前缀在
或杜
,然后在后面加一个必需的冒号(:
),然后是一个或多个动作。用回车分号(分隔多个操作;
)或逗号(,
).如果没有为语句显式指定状态操作类型,则图表将该语句视为条目
,在
行动。
一个州执行它的在
唤醒图表时的操作(如果指定)。上面的流程图描述了状态执行的过程和时间在
行为发生。
如果您的Stateflow图表不包含状态,那么每次执行图表时,Stateflow总是计算默认的转换路径。
作为状态流图执行的一部分,状态流将出站转换标记为评估。一旦将传出转换标记为要进行评估,请遵循评估过渡的工作流程.有关Stateflow如何评估传出转换的更多信息,请参见评估转换.
状态流将内部转换作为状态流图执行的一部分进行标记。一旦将内部转换标记为要进行评估,请遵循评估过渡的工作流程.有关Stateflow如何计算内部转换的更多信息,请参见评估转换.
在此示例中,初始化了状态流图,并且条目
执行的操作为StateA
而且StateA1
.出现一个新的时间步长,图表苏醒。
在这个时间步,x = 5
,y = 2
,z = 0
.
按照状态流程图执行的工作流程,图表执行步骤依次为:
这个图表有一个活跃的次级状态,StateA
.
StateA
外向过渡到StateB
.按照评估过渡的工作流程,则确定转换是有效的。
StateB
被标记为条目
而且StateA
被标记为退出
.
要完成时间步骤,请遵循退出状态的工作流为StateA
和输入图表或状态的工作流程为StateB
.
在此示例中,初始化了状态流图,并且条目
执行的操作为StateA
而且StateA1
.出现一个新的时间步长,图表苏醒。
在这个时间步,x = 3
,y = 0
,z = 0
.
按照状态流程图执行的工作流程在图表进入睡眠状态之前,图表执行步骤的顺序如下:
步骤1到9发生在第二个时间步骤中。