[西门子] 使用SCL语言编程方法简介

[复制链接]
查看164 | 回复0 | 2024-5-6 19:24:04 | 显示全部楼层 |阅读模式


SCL:Structured Contorl Language,结构化控制语言。

在TIA博途软件中,默认支持SCL语言,在建立程序块时可以直接选择SCL语言。


SCL语言类似计算机高级语言,如果你有C、Java、C++、Python这种高级语言的学习经历,再学习SCL就会容易很多。

在用SCL语言编程时,主要用IF...THEN/FOR/WHILE语句去构造条件、循环、判断这样的结构,在这些结构中再次添加指令,去实现逻辑判断。所有程序的编写都是在纯文本的环境下编辑,不像梯形图那么直观。

最近两年使用SCL编程比较多,从使用体验上来说,通过SCL结合FB块,编程效率相对梯形图提高不少,特别是在数据处理方面。

1、新建SCL语言功能块


在TIA博途软件中能直接建立SCL语言的功能块,如下图所示,只需要在语言下拉列表中选择SCL即可。


|| 点击放大更清晰 ||


新建好程序块直接打开,会进入SCL的编辑环境,如下图所示



|| 点击放大更清晰 ||
2、SCL语言指令介绍
介绍指令之前先说一些,高级语言编写基础知识。


  • 一行代码结束后要添加英文分号,表示改行代码结束。
  • 所有代码程序都为英文字符,在英文输入法下输入字符。
  • 可以添加中文注释,注释前先添加双斜杠,即://。这种注释方法只能添加行注释,段注释要插入一个注释段。
  • 在SCL中变量需要在双引号内,定义好变量后软件能辅助添加。

每种高级语言的编写都有各自基础规则,建议大家多了解,不要在基础知识上犯错误。


1)、赋值指令
赋值是比较常见的指令,在高级编程语言中大多使用等号,即:”=”。

在SCL语言中赋值指令的格式是,一个冒号加等号,即:”:=”。




2)、位逻辑运算指令
在SCL语言中常用的为逻辑指令有:


  • 取反指令:NOT,与于梯形图中的NOT指令用法相同。
  • 与运算指令:AND,相当于梯形图中的串联关系。
  • 或运算指令:OR,相当于提醒图中的并联关系。
  • 异或运算指令:XOR,在梯形图中字逻辑运算中有异或运算指令,没有BOOL的异或指令。
与、或、非、异或这些逻辑运算是基本的逻辑数学概念,没有这方面知识的朋友,建议找相关资料看一下。
使用这些指令在SCL语言中的程序如下图所示:



为了方便大家理解,把上面的语句写成梯形图:



3)、数学运算指令
SCL语言中数学运算指令与梯形图中的用法基本相同,常用到了数学运算有:


  • 加法:用符号”+”运算
  • 减法:用符号”-”运算
  • 乘法:用符号”*”运算
  • 除法:用符号”/”运算
  • 取余数:用符号”MOD”运算
  • 幂:用符号”**”运算

下图是在博途中使用SCL语言的数学运算


以上简单介绍了SCL语言的基本用法,希望看了这篇教程的朋友,在感性上能对SCL有点认识。


SCL语言的资料比较少,学起来要比梯形图要困难。建议大家去学习一门高级语言,比如C/VB/C#。等掌握其中一门高级语言,回头再看SCL就会容易很多。

扩展阅读:
听前辈聊PLC编程语言

PLC编程原则:无规矩不成方圆。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则