二、状态机机的基本类型之标准状态机

      标准状态机是使最为广泛的状态机,也称为古典状态机或者经典状态机。LV的标准状态机VI模板用的就是这种。

我把标准型状态机理解成条件跳转型状态机,也就是在一个状态中,根据不同的条件,跳转到另一个状态。标准型状态机非常适合用图形方式来描述,PLC的SFC流程图就是我们说的标准状态机。

NI提供了一个状态机的组件,它就是典型的标准状态机。看看它的用法。
NI 状态图组件,提供一个状态图编辑器,在编辑器中,可以设计各种状态和状态之间的转换条件,如下图

上面是我模拟了提款机做的示意程序,根据我们绘制的状态图,LV可以自动生成状态机,可以选择两种方式.做为连续运行的VI和单次运行的子VI

上面的图是连续运行模式.

这是单步运行方式,可以做为一个子VI,由上一级VI调用

NI的状态图组件显得比较烦琐,比较适合状态很多,条件跳转比较复杂的情况.
常用的标准状态机,自己编写用的比较多.下面已常用方式演示一下这种类型的状态机

标准类型状态机使用非常广泛,它的状态和转换条件都是可以预期的,而不随机的,对于类似于WINDOWS消息驱动的情况,由于状态是不可预期的,比如我们预料和控制用户对人机交互界面操作的先后次序,这种情况下,使用队列状态机是最为合适的,后续文章将专门介绍队列状态机




Leave a Reply.