内心的转变
一个内心的转变是一个过渡,不退出源状态。内部转换为超级大国定义时强大的独家(或)分解。使用内部转换可以极大地简化Stateflow®下面的示例图,如图所示:
使用前一种内在的转变
这个图表是如何简化逻辑的一个例子使用一个内在的转变。
任何事件发生时,唤醒Stateflow图表。默认连接过渡连接是有效的。的目的地是由过渡(c1 > 0)
和(c2 > 0)
。如果(c1 > 0)
是真的,过渡到吗A1
是真的。如果(c2 > 0)
是真的,过渡到吗A2
是有效的。如果既不(c1 > 0)
也不(c2 > 0)
是真的,过渡到吗A3
是有效的。之间的转换A1
,A2
,A3
是由E
,(c1 > 0)
,(c2 > 0)
。
在使用内部过渡连接词连接
这个例子简化了前面的示例使用一个内部过渡连接词连接。
一个事件发生时,唤醒了图表。默认连接过渡连接是有效的。的目的地是由的转换(c1 > 0)
和(c2 > 0)
。
可以通过使用一个简化的图表内过渡的转变在所有美国原始的例子。如果状态一个
已经活跃,内部转换用于评估亚态的状态一个
是活跃的。当事件E
发生时,内心的转变可能是有效的。如果(c1 > 0)
是真的,过渡到吗A1
是有效的。如果(c2 > 0)
是真的,过渡到吗A2
是有效的。如果既不(c1 > 0)
也不(c2 > 0)
是真的,过渡到吗A3
是有效的。这个图表设计比以前更简单。
请注意
当您使用一个内部过渡连接结,一个活跃的亚态可以退出并重新加入亚态的过渡条件时是有效的。例如,如果亚态A1
是活跃的,(c1 > 0)
是真的,过渡到吗A1
是有效的。在这种情况下:
退出操作
A1
执行和完成。A1
变得不活跃。A1
变得活跃。入口的行为
A1
执行和完成。
看到流程的第一个事件内部过渡连接结更多信息的语义符号。
使用一个内部连接过渡到一个历史
这个例子显示了一个内在的过渡到一个历史结。
状态Power_on.High
最初活跃。当事件重置
发生,内部转换到历史结是有效的。因为内心的转变是有效的,目前活动状态,Power_on.High
是退出。当内部转换到历史结处理,最后活动状态,Power_on.High
变得活跃(进来)。如果Power_on.Low
活跃在相同的情况下,Power_on.Low
将退出再进来。内部转换在这个例子中相当于在吸引外部自身环过渡Power_on.Low
和Power_on.High
。
看到历史上的例子连接另一个例子使用结历史。
看到内心的过渡到一个历史结更多信息的语义符号。