您可以阅读这个问题,我在其中询问有关机器应用程序的最佳架构的小背景故事,尽管这对于帮助我解决这个问题并不是完全必要的。
我对有限状态机的理解(尤其是实现)有点年轻,可能还有些欠缺,但我正在将这个应用程序作为一个应用程序来实现,而且我有一个地方需要嵌套 FSM。基本上机器有一些高级状态(冷[又名刚开始],归位,设置,准备运行,运行,报告,重置)但是当机器运行时,它需要有它自己的小 FSM 实现(加载镜头、定位边缘、测量楔形、测量圆度和完整 [可能还有更多内容])。
我的问题是:我是否应该建立具有“嵌套状态”的能力,其中状态可以具有子状态列表并且系统可以进入这些子状态并且这些子状态可以返回到父状态?或者我应该将 FSM 实现放在 Running 状态中,并将它们保持为两个不同的 FSM?还是您认为我在做或在想一些愚蠢的事情,应该重新考虑?
欢迎大家提出想法、建议、批评和建议。