您现在的位置是:首页 > PLC技术 > PLC技术
S7-1500 PLC的CASE:创建多路分支指令
来源:艾特贸易2017-12-20
简介使用“创建多路分支”指令 CASE ,可以根据数字表达式的值执行多个指令序列中的一个。表达式的值必须为整数。执行该指令时,会将表达式的值与多个常数的值进行比较。如果表达式
使用“创建多路分支”指令CASE,可以根据数字表达式的值执行多个指令序列中的一个。表达式的值必须为整数。执行该指令时,会将表达式的值与多个常数的值进行比较。如果表达式的值等于某个常数的值,则将执行紧跟在该常数后编写的指令。常数可以为以下值:整数(例如5)、整数的范围(例如15~20)、由整数和范围组成的枚举(例如10、11、15~20)。
CASE分支结构语法:
CASE<表达式>OF
<常数1>:<指令1>;
<常数2>:<指令2>;
<常数X>:<指令X>;//X>=3
ELSE<指令0>;
END_CASE;
如果表达式的值等于常数1的值,则将执行紧跟在该常数后编写的指令1,然后程序将从END_CASE后继续执行;如果表达式的值不等于常数1的值,则会将该值与下一个设定的常数值进行比较,以这种方式执行CASE指令直至比较的值相等为止;如果表达式的值与所有设定的常数值均不相等,则将执行ELSE后编写的指令0。ELSE是一个可选的语法部分,可以省略。
例如:
CASE“Tag_Value”OF
0:“Tag_1”:=1;
1,3,5:“Tag_2”:=1;
6..10:“Tag_3”:=1;
16,17,20.. 25:“Tag_4”:=1;
ELSE“Tag_5”:=1;
END_CASE;
该程序段实现当变量“Tag_Value”=0时,对变量“Tag_1”赋值为1;当变量“Tag_Value”为1、3或5时,对变量“Tag_2”赋值为1;当变量“Tag_Value”为6~10中某一整数时,对变量“Tag_3”赋值为1;当变量“Tag_Value”为16、17、20~25中某一整数时,对变量“Tag_4”赋值为1;当变量“Tag_Value”不等于上述任一值时,对变量“Tag_5”赋值为1。
此外,CASE分支指令内部也可通过使用完整的CASE结构替换一个指令块来实现嵌套。
(部分原创文章应编辑稿费需求,每篇需要收取2元的稿费,如需查看全文请联系客服索取,谢谢理解!在线客服:)
点击排行
