PLC论坛-全力打造可编程控制器专业技术论坛

 找回密码
 注册哦

QQ登录

只需一步,快速开始

微信扫码登录

查看: 126|回复: 0

[西门子] 全网最详细:西门子PLC 结构化控制语言SCL

[复制链接]
发表于 2024-8-16 21:11:23 | 显示全部楼层 |阅读模式
>
结构化控制语言SCL,全称为Structured Control Language,它与计算机的高级语言颇为相似。如果你已经有过学习C、Java、C++、Python等高级语言的经历,那么再学习SCL将会变得轻松许多。TIAPortal软件天生就支持SCL语言,这意味着在创建功能块(FB)或功能(FC)等程序块时,你可以直接选择使用SCL语言进行编程。在SCL的编程世界里,IF…THEN、CASE…OF…、FOR、WHILE…DO、REPEAT…UNTIL等语句是构建条件判断、循环控制等逻辑结构的得力助手,它们能够帮助你实现各种复杂的逻辑判断。与直观的梯形图编程方式不同,SCL编程更像是纯文本编辑,虽然看起来不那么一目了然,但应用起来却极其灵活。如今,SCL已成为主流PLC支持的编程语言,并且符合IEC61131-3标准规范。在接下来的内容中,我们将详细介绍如何使用SCL进行编程,包括POKE写存储器地址、POKE_BOOL写存储器位、POKE_BLK写存储区、PEEK读存储器地址、PEEK_BOOL读存储器位等间接寻址技巧,以及时钟和报警功能的SCL编程方法。
 SCL语言指令的概述
SCL是Structured Contorl Language的简称,即结构化控制语言。TIA Portal软件默认支持SCL语言,在建立FB、FC等程序块时可以直接选择SCL语言。SCL语言类似计算机的高级语言,如果有C、Java、C++、Python等高级语言的学习经历,则再学习SCL就会容易很多。
SCL语言编程主要用IF…THEN、CASE…OF…、FOR、WHILE…DO、REPEAT…UNTIL等语句去构造条件、循环、判断这样的结构,在这些结构中再添加指令即可实现逻辑判断。所有程序的编写都是在纯文本的环境下进行编辑的,不像梯形图那么直观,但应用起来非常灵活。SCL是目前主流PLC支持的编程语言和IEC61131-3规范。
1.SCL输入/输出的定义
SCL有Input、Output、InOut、Static、Temp及Constant等输入/输出变量需要定义,数据类型如下。
①布尔型:bool,1位。
②字节:byte,1个字节。
③整数:int,2个字节。
④长整数:dint,4个字节。
⑤字:word,2个字节。
⑥长字:dword,4个字节。
⑦浮点数:real,4个字节。
⑧字符:char,1个字节。
⑨字符串:string[XX],XX+2个字节。
⑩数组定义:array[X..X]of类型。
2.SCL指令的规范
①一行代码结束后要添加英文分号,表示改行代码结束。
②所有的代码程序都为英文字符,在英文输入法下输入字符。
③可以添加中文注释,注释前先添加双斜杠,即//。这种注释方法只能添加行注释。段注释要插入一个注释段。
④SCL中的变量需要在双引号内,定义好变量后软件能辅助添加。
每种高级语言的编写都有各自的基础规则,建议读者多了解,不要在基础知识上犯错误。
3.SCL赋值指令
赋值是比较常见的指令。在SCL语言中,赋值指令的格式是一个冒号加等号,即“:=”。
从梯形图到SCL指令,具体的赋值变化见表1-1。





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

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|PLC技术网-PLC论坛 ( 粤ICP备17165530号 )|网站地图

GMT+8, 2024-9-27 06:50 , Processed in 0.045411 second(s), 26 queries .

快速回复 返回顶部 返回列表