PLC结构化文本(ST)——隐式枚举(implicit enum)
PLC Structured Text Object Oriented Programming
PLC结构化文本(ST)——隐式枚举(implicit enum)
什么是隐式枚类型
在POU内部声明的枚举类型称为implicit enum。
如何创建隐式枚举类型
PROGRAM MAIN
VAR
state : (IDLE , SEND_REQUEST,WAIT_FOR_RESPONSE,READ_RESPONSE,ERROR);
END_VAR
在POU内部声明一个枚举类型,该枚举只作用于声明的POU内部,外部程序无法重新声明定义。Main程序中只有内部成员可以访问state枚举类型。
PROGRAM MAIN
VAR
state : (IDLE := 0, SEND_REQUEST,WAIT_FOR_RESPONSE,READ_RESPONSE,ERROR)INT;
step : INT;
END_VAR
CASE step OF
state.IDLE :
;// dosomething
state.SEND_REQUEST :
;// dosomething
state.WAIT_FOR_RESPONSE :
;// dosomething
state.READ_RESPONSE :
;// dosomething
state.ERROR :
;// dosomething
END_CASE
与我们经常定义的全局枚举类型一样,可以定义枚举成员的值和数据类型。
使用场景
只有当前POU需要使用这个枚举,其它地方永远不会使用到,就可以把该枚举定义在POU本地。
总结
这样定义枚举,简单,方便。根据个人需求和项目需求定义即可。

浙公网安备 33010602011771号