欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

ST触点指令

最编程 2024-06-08 14:08:27
...

ST 语言是类似于  C 语言的语法的文本程序。可以通过语句记述条件判断及重复等控制。

例如用 ST 语句实现起保停控制程序如下:

    IF X0 THEN

         Y:=1;

     END_IF;

常用的注释用 (*  *)方式来进行注释

常用语句解析

输出指令解析

OUT(BOOL_EN,    ANY_BOOL_d);

(*EN 表示使能条件,也是导通条件*)

(*BOOL表示,这个条件的数据类型是布尔变量【位变量】*)

(*d 表示目标操作数*)

(*ANY表示数据变量类型*)

点动程序实例

OUT(X0,Y0);  (*X0表示的是常开触点,一般常开触点都是默认的*)

起保停实例

OUT ((X0 OR Y0) AND NOT X1,Y0);  (*ST 语句中没用常闭指令,所以,只能使用 NOT 指令取反操作,来表示常闭*)

OUT ((X0 OR Y0) & NOT X1,Y0);  (*效果同上*)

置位复位批量复位解析

SET(BOOL_NE,ANY_BOOL_d);    (*置位*)

RST(BOOL_EN,ANY_ELEMENTARY_d);     (*复位*)

ZRST(BOOL_EN,AY_ELEMENTARY_d1,,AY_ELEMENTARY_d1);    (*ELEMENTARY是基本数据类型*)

程序实例 (置位复位实现正反转控制电路)

SET(X0,Y0); (*当 X0 接通,置位正转*)

RST (X0,Y1);(*当 X0 接通,复位反转*)

SET(X1,Y1);(*当 X1 接通,置位反转*)

RST(X1,Y0);(*当 X1 接通,复位正转*)

ZRST(X2,Y0,Y1);(*当 X2 接通,成批复位从 Y0 开始,到 Y1 结束,全部复位 *)

沿操作解析【上升沿和下降沿】

LDP(BOOL_EN,ANY_BOOL_s);  (*EN 为上升沿导通条件,一般都为1,S 为操作条件*)

LDF(BOOL_EN,ANY_BOOL_s);  (*下降沿导通条件,S 为操作条件*)

点动控制程序实例

SET(LDP(1,X0),Y0);   (*上升沿置位Y0*)

RST(LDF(1,X0),Y0); (*下降沿复位Y0*)

赋值语句解析

:=     赋值语句,把右边的数值复制给左边的变量

利用沿操作实现但按钮程序控制

TOU(LDP(1,X0),M0);

OUT((M0 AND NOT Y0) OR (NOT MO AND Y0),Y0);

利用赋值语句进行书写

M0 := LDP(1,X0);

Y0 := (M0 AND NOT Y0) OR (NOT M0 AND Y0);

反转语句解析

FF(LDP(1,X0),Y0);

带上升沿的反转语句解析

ALTP(X0,Y0);