S7-SCL 结构化控制语言编程入门教程

2022-03-29 21:21:49 浏览数 (2)

概述

SCL-Structured Contorl Language(结构化控制语言)是一种用于S7自动化系统的高级文本编程语言。

借助SCL,可以简化控制技术领域复杂的计算、算法、数据管理和数据组织等编程工作。

代码语言:javascript复制
 #tTimeout(IN := #Data.iState[0] = 1,
         PT := #tOut);
IF #tTimeout.Q THEN
   //#Data.iState[0] := 2;
   #Data.LAST_MSG.LST_RESPONSE_ERROR[0] := 3002;
END_IF;

编程标准

SCL符合语言标准DIN EN-61131 Part3(国际标准IEC1131-3)。

DIN EN-61131 Part3(国际标准IEC1131-3)对可编程控制器

的编程语言实现了标准化。SCL的基础是该标准中的ST“结构化文本”

部分。

SCL类似于Pascal,具备高级标称语言的所有优势。SCL除了有

清晰的控制结构和丰富的数据概念,还拥有例如过程和函数等重要

内容。因此采用了SCL,可以编制结构清洗,易读性好的程序。

应用领域

Ø复杂的数学函数功能,例如:调节器Ø数据管理Ø配方管理Ø具有大量分支和循环结构的程序

特点

Ø易于掌握Ø可短时间开发易读性更好的程序Ø可间接地描述复杂的算法Ø支持S7中的块和数据类型等概念Ø与S7语言(LAD、FBD、STL)实现系统集成

概述

一个SCL程序块可以包含任意个块:如OB块、FB块、FC块、DB块和UDT块。

TIA Portal中SCL程序里可以任意拖拽FC、FB块在程序中调用,然后给相关引脚赋值。

指令部分

程序段(OB、FB、FC)被调用后,块的指令部分包含的指令将

被执行。这些指令的作用是处理数据和地址。对于数据块,指令还

可以将某些值保存在数据块中。

各种指令可以归纳为赋值、控制指令、逻辑运算三类:

Ø赋值:用来将某个表达式或某个值赋给某个变量;Ø控制指令:用来在程序中实现分支或重复执行指令;Ø逻辑运算:用来调用函数和功能。

指令部分注意事项

采用指令进行编程时,需要注意:

ØØ每一个指令都以一个分号为结束;Ø指令使用时的格式应该严格注意,空格,符号不能错误。

控制指令

概述

借助控制指令,可以改变正常的指令执行顺序。控制指令大致分为三类,分别是条件指令、循环指令和跳转指令。

Ø采用条件指令(IF和CASE指令)可以选择不同的程序执行路径;Ø循环指令(FOR、WHILE和REAPEAT指令)用于重复地执行指令;Ø跳转指令(CONTINUE、EXIT)可以中断执行顺序并跳转至某个点继续执行。

0 人点赞