LabVIEW设计模型——事件状态机
扫描二维码
随时随地手机看文章
上一篇文章说了说标准状态机,这种模型在自动测试系统(ATS)和自动控制系统(ACS)的编程应用中应用非常方便。因为在ATS和ACS系统运行的过程中几乎不需要与用户互动,只要按照事先设定好的逻辑来判断程序的走向,直到程序结束。但是,在大部分桌面应用和部分工业应用中,程序都需要和用户互动。比如说,需要用户输入参数、下达命令甚至判断程序走向。 如果程序的用户互动环节比较多,用标准状态机来实现就回比较困难,即使实现了也会使程序代码臃肿、结构混乱。 那么如何来方便的实现状态机与用户互动的完美结合呢?那就要用到状态机的一个变种——事件状态机。 与标准状态机相比,事件状态机要稍微复杂一些。他们都包含一个While循环,所不同的是移位寄存器和条件结构换成了用户定义事件和事件结构。 下面这个黑白棋的小程序就使用了这种事件状态机的设计模型。程序界面:主VI:注册状态事件子VI: