加入收藏 在线留言 联系我们
关注微信
手机扫一扫 立刻联系商家
全国服务热线15267534595

SIEMENS呼伦贝尔市西门子(授权)中国总代理-西门子华北区一级总代理商

更新时间
2024-05-21 09:10:00
价格
请来电询价
变频器
西门子代理商
触摸屏
西门子一级代理
伺服电机
西门子一级总代理
联系电话
18126392341
联系手机
15267534595
联系人
梁涛
立即询价

详细介绍

(一)要点与应用

(1)SCL 编程语言

SCL(Structured Control Language,结构化控制语言)是一种基于 PASCAL 的gaoji编程语言。这种语言基于标准 DIN EN 61131-3(guojibiaozhun为 IEC 1131-3)。根据该标准,可对用于可编程逻辑控制器的编程语言进行标准化。SCL 编程语言实现了该标准中定义的 ST 语言 (结构化文本) 的 PLCopen 初级水平。S7-1200从V2.2版本开始支持SCL语言。

(2)语言元素

SCL 除了包含 PLC 的典型元素(例如,输入、输出、定时器或存储器位)外,还包含gaoji编程语言。

  • 表达式

  • 赋值运算

  • 运算符

  • (3)程序控制语句

    SCL 提供了简便的指令进行程序控制。例如,创建程序分支、循环或跳转。

    (4)应用

    因此,SCL 尤其适用于下列应用领域:

  • 数据管理

  • 过程优化

  • 配方管理

  • 数学计算 / 统计任务 

  • (二)表达式

    表达式将在程序运行期间进行运算,然后返回一个值。一个表达式由操作数(如常数、变量或函数调用)和与之搭配的操作符(如 *、/、+ 或 -)组成。通过运算符可以将表达式连接在一起或相互嵌套。

    (1)运算顺序:表达式将按照下面因素定义的特定顺序进行运算

  • 相关运算符的优先级,优先级数越小越优先

  • 同等优先级运算符的运算顺序按照从左到右的顺序

  • 赋值运算的计算按照从右到左的顺序进行

  • 括号优先级Zui高

  • (2)表达式类型:不同的运算符,分别可使用以下不同类型的表达式

  • 算术表达式

  • 关系表达式

  • 逻辑表达式

  • (三)算术表达式

    (1)算术表达式既可以是一个数字值,也可以是由带有算术运算符的两个值或表达式组合而成。算术运算符可以处理当前 CPU 所支持的各种数据类型。如果在该运算中有 2 个操作数,那么可根据以下条件来确定结果的数据类型:

  • 如果这 2 个操作数均为有符号的整数,但长度不同,那么结果将采用长度较长的那个整数数据类型(例如,Int + DInt = DInt)。

  • 如果这 2 个操作数均为无符号整数,但长度不同,那么结果将采用长度较长的那个整数数据类型(例如,USInt + UDInt = UDInt)。

  • 如果一个操作数为有符号整数,另一个为无符号整数,那么结果将采用另一个长度较大的有符号数据类型(其包含此无符号整数)(例如,SInt + USInt = Int)

  • 如果一个操作数为整数,另一个为浮点数,那么结果将采用浮点数的数据类型(例如,Int + Real = Real)。

  • 如果 2 个操作数均为浮点数,但长度不同,结果将采用长度较长的那个浮点数的数据类型(例如,Real + LReal = LReal)。

  • 对于操作数为"Time"和"日期和时间"数据类型组,运算结果的数据类型请参见表1。

  • (2)算术表达式的数据类型:下表列出了在算术表达式中可使用的数据类型

    图片

    (3)示例

    以下为一些算术表达式的示例:

    "MyTag1":= "MyTag2" * "MyTag3"; 

    (四)关系表达式

    (1)关系表达式将两个操作数的值或数据类型进行比较,然后得到一个布尔值。如果比较结果为真,则结果为 TRUE,否则为 FALSE。关系运算符可以处理当前 CPU 所支持的各种数据类型。结果的数据类型始终为 Bool。编写关系表达式时,请注意以下规则:

  • 以下数据类型组中的所有变量都可以进行比较:

  • 整数/浮点数

  • 位、位序列

  • 字符串

  • 对于以下数据类型,只能比较相同类型的变量:

  • TIME

  • 日期和时间

  • UDT

  • Array

  • Struct

  • Variant

  • String 比较是对于 Windows 字符集编码的字符进行比较;而 WSting比较则是对 UTF-16 编码的字符进行比较。在比较过程中,将比较变量的长度及各字符对应的数值。

  • Array 比较需要数组维度、数组元素数据类型与数量完全相同

  • UDT、Array、Struct、Variant等进行的比较只能使用S7-1200 V4.2及其以上的版本。

  • (2)关系表达式的数据类型:下表列出了在关系表达式中可使用的数据类型/数据类型组:

    图片

    (3)示例

    以下举例说明了一个关系表达式:

    IF a > b THEN c:= a;
    IF A > 20 AND B < 20 THEN C:= TRUE;
    IF A<>(B AND C) THEN C:= FALSE;


    相关产品

    联系方式

    • 电  话:18126392341
    • 联系人:梁涛
    • 手  机:15267534595
    • 微  信:15267534595