新闻中心NEWS

December 01.2023

M PLC——ST语言介绍

 
M  PLC 支持多种编程語言

支持LD / ST / FBD / STP / MF等编辑语言
多种语言可在同一项目中混合搭配使用
可根据不同应用选择最合适的语言进行开发

结构式文件编程语言(英语:Structured text)也称为ST语言,是为可编程逻辑控制器(PLC)设计的编程语言,是相关的IEC 61131-3标准中支援几种语言之一。
 



赋值语句


 
 赋值语句使用形式如下,其中“:=”为赋值操作符,且要用“;”结尾。
                                                                      范例:

 
 
IF语句
 
此节将介绍IF语句使用方式以及范例。 
IF语句是选择语句的一种,其根据条件
决定执行哪些语句。判断 一个指定的条件
是否为真,若真,则执行之后的语句;
若假,则 执 行ELSIF或者ELSE之后的语句。
一条标准的IF语句如图:

注意:条件表达式可以是一个表达式,也可以是一个变量,其结果 或者类型必须为布尔类型。一个IF语句中可以有多个ELSIF,但是 只能有一个IF,一个ELSE和END_IF。语句组中可以包含其他IF语句。
 
  
简单IF语句 
最简单的IF语句只包含IF和END_IF,不包含
ESLIF和ELSE。 当表达式满足时,执行IF语句
的语句组,否则不执行该语句组。
程序执行流程图如下: 
范例: 
 
 
带ELSE的IF语句 
当表达式满足时,执行语句组1;
不满足时,则执行语句组2;
程序执行流程图如下: 
范例: 
 
 
带ELSEIF的IF语句 
当表达式1满足时,执行语句组1;如果表达1
不满足且表达式2满 足时,则执行语句组2; 如
果表达1和表达2均不满足,则执行与语句组3;
程序执行流程图如下: 
范例: 
 
 
带IF的嵌套语句 
IF语句中可嵌套IF语句,
但IF与END_IF需成对出现;
 
 
程序执行流程图如下: 
范例:
 
 
单次执行IF语句 
搭配R_TRIG语句可实现单次执行的IF语句,
不必每次扫描周期均 执行。
程序执行流程图如下: 
范例: 
 
 
CASE语句

 
  
此节将介绍case语句如何使用以及使用范例。 
CASE语句是选择语句的一种,在CASE语句中,
控制变量与几个 值作比较,如果表达式的
结果与其中一个值相同,那么就执 行相应的
语句;如果表达式的结果与任何一个值都不
相同,那么就执 行ELSE后面的程序:
“表达式”是一个变量,其数据类型必须为
整数(16bit-INT)。
 
程序执行流程图如下: 
范例: 
 
 
循环语句


 
FOR语句  
FOR循环语句格式中,控制变量是在
循环过程中不断变化的变量 ,在每次
循环执行后,该变量的的值增加增值,
即控制变量:=控制 变量+增值。初值是
控制变量起始值,终值是控制变量终止值,增 值是控制变量的每次增量。
每次循环执行后控制变量的值变化,如果其值没有超过终止值,则继续
执行循环,反之,如果超过终止 值或执行过程中执行到EXIT或BREAK
语句,则循环执行终止。
 
程序执行流程图如下: 
范例: 
 
 
WHILE语句  
先判断表达式条件是否为真(满足),
如果为真才执行循环有关语 句,反之
则不执行。适合循环次数不确定,且需
要先判断条件再确 定是否执行。执行
过程中执行到EXIT或BREAK语句,
则立即终止 循环。
程序执行流程图如下: 
范例: 
 
 
REPEAT语句  
REPEAT语句先执行循环有关语句,再判断
条件表达式条件是否 为真(满足),如果为
真则结束循环,反之如果为假,则执行循环
有 关语句。适用循环次数不确定,且需要先
执行,再判断条件。
程序执行流程图如下: 
范例: 
 


 
EXIT/BREAK 语句  
EXIT/BREAK语句通常在执行循环有关
语句的过程中立即中断循 环语句的执行。
当EXIT/BREAK位于嵌套循环语句内时,其
执行时 ,其所在的循环回路立即中断,但
更外层的循环不受其影响。