有限状态机是否应该具有"嵌套"有限状态机?

Max*_*ing 5 c# finite-automata c#-3.0

你可以在我询问有关机器应用程序的最佳架构的情况下阅读这个问题,虽然对于帮助我解决这个问题并不是完全必要的.

我对有限状态机的理解(特别是对于实现)有点年轻,可能缺乏一点,但我正在实现这个应用程序,我有一个地方需要有一个嵌套的FSM.基本上这台机器有一些高级状态(冷[又刚启动],归位,设置,准备运行,运行,报告,重新设置)但是当机器运行时,它需要有自己的小FSM实现(加载Lense,定位边缘,测量楔形,测量圆度和完整[可能在那里更多]).

我的问题是:我是否应该建立具有"嵌套状态"的能力,其中状态可以有一个子状态列表,系统可以进入这些子状态,那些子状态可以返回到父状态?或者我应该将FSM实现放在Running状态中,并将它们保存为两个不同的FSM?或者你认为我在做什么或者在想某些愚蠢的东西并且应该重新思考它?

欢迎提出想法,建议,批评和建议.

Dan*_*ker 7

嵌套状态机是UML中的标准概念,因此这不一定是愚蠢的.更多细节在这里.