ST语言(结构化文本/结构式文件编程语言(英语:Structured text))是一种PLC设计语言。
结构化文本是IEC
61131-3标准支持的五种语言之一,专为可编程逻辑控制器(PLC)设计。它是一种块结构的高级语言,在语法上类似于它所基于的Pascal。所有语言都共享IEC61131公共元素。变量和函数调用由公共元素定义,因此可以在同一程序中使用IEC
61131-3标准中的不同语言。
结构式文件编程语言支持复杂的叙述及指令:
循环语句(REPEAT-UNTILWHILE-DO)
条件式执行(IF-THEN-ELSECASE)
函数(SQRT(), SIN())
ST 是结构化文本语言。IF --“如果”,条件语句开始。
NOT -- 逻辑运算符 "非“。
AND -- 逻辑运算符 "与“。
AND NOT M02 -- "与" ( "非 " M02) , 这里非 运算优先于AND。
OR -- 逻辑运算符 "或“。
THEN -- 条件语句中的 "则”,条件为真,"则“ 执行 .....
END_IF -- 条件语句结束。
TRUE -- 布尔值 "真"。
FALSE-- 布尔值 "假"。
INT_TO_WORD -- INT型转换为WORD型。
INT_TO_TIME -- INT型转换为时间型。
注意运算符优先级。
下面是一个用ST结构化文本语言编程实现的例子:css
PROGRAM Example
VAR
X0: BOOL
Y0: BOOL
a: INT
END_VAR
a := 0
WHILE TRUE DO
IF X0 THEN
a := a + 1
END_IF
IF a = 3 THEN
Y0 := TRUE
ELSE
Y0 := FALSE
END_IF
IF a >= 5 THEN
a := 0
END_IF
// 延时,防止程序过快执行
DELAY 100ms
END_WHILE
这个程序首先定义了三个变量X0、Y0和a,其中X0表示按键输入,Y0表示输出信号,a表示按键按下的次数。然后通过一个无限循环来不断检测X0输入是否为真,并根据条件判断和计数来实现功能。
具体来说,程序先将a初始化为0,然后在循环中不断执行以下 *** 作:
判断X0是否为真,如果为真则将a加1;
如果a等于3,则将Y0输出为真,否则输出为假;
如果a大于等于5,则将a重置为0,重新开始计数;
延时一段时间,防止程序过快执行。
需要注意的是,ST语言中的循环语句使用WHILE DO和END_WHILE来表示,IF语句的条件判断需要用THEN和END_IF来限定,变量赋值可以使用:= *** 作符。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)