博途TIA portal SCL编程基础入门:1-点动与自锁

360影视 动漫周边 2025-03-12 14:59 2

摘要:相对于西门子 PLC 的其它类型编程语言,S7-SCL 与计算机高级编程语言有着非常相近的特性,只要使用者接触过 PASCAL 或者 VB 编程语言,实现 S7-SCL 的快速入门是非常容易的。

一、S7-SCL编程语言简介

相对于西门子 PLC 的其它类型编程语言,S7-SCL 与计算机高级编程语言有着非常相近的特性,只要使用者接触过 PASCAL 或者 VB 编程语言,实现 S7-SCL 的快速入门是非常容易的。

1.S7-SCL(Structured Control Language 结构化控制语言) 具有以下特点:

是一种类似于PASCAL的高级编程语言符合国际标准IEC 61131-3PLCopen基础级认证适用于 S7-300 (推荐CPU314以上), S7-400,S7-1200,S7-1500, C7 and WinAC

S7-SCL 为 PLC 做了优化处理,它不仅仅具有 PLC 典型的元素(例如 输入/输出,定时器,计数器,符号表),而且具有高级语言的特性, 例如:循环, 选择,分支,数组 ,高级函数。

2.S7-SCL 的安装与使用

STEP7 标准版并不包括 S7-SCL 软件包及授权,需单独购买,STEP7 Professional 版包括了S7-SCL 的软件包及授权,安装即可。在 S7 程序中,S7-SCL 块可以与其它STEP7 编程语言生成的块互相调用。S7-SCL 生成的块也可以作为库文件被其它语言引用。由于 S7-SCL 程序由 ASCII 文本构成,所以它非常容易被导入或导出。

3.S7-SCL 软件兼容性

X表示兼容 - 表示不兼容

4.SCL在博途软件中的适用性

TIA portal中不同型号PLC使用SCL的可行性:

博途软件本身已经集成SCL语言包。因为V11以上才支持S7-300/400,V12以上支持S7-1500,根据软件的产品发布通知总结如下:

S7-300/400从STEP 7 Professional V11开始支持使用SCL语言S7-1200从STEP 7 V11 SP2开始支持使用SCLS7-1500从STEP 7 Professional V12开始支持使用SCL

在STEP7 V5.5以下编程软件中,更多内容请参考S7-SCL 编程语言的详尽手册

在安装 S7-SCL 软件包后,通过点击 Windows 菜单 开始->Simatic->Documentation->English 可以阅读到名为"S7-SCL for S7-300 and S7-400 "的 PDF 手册。此手册共分为 16 个章节,其详细地讲解了 S7-SCL 编程语言。一切关于 S7-SCL 使用的问题请以此手册为准。

博途软件请参考软件的帮助信息

SCL 是西门子公司弄出来的一种 PLC 编程语言(也就是 Structured Control Language 结构化控制语言),它是一种依照 PASCAL 的高级编程语言。这种语言是依据标准 DIN EN 61131-3(国际标准是 IEC 61131-3)来的。

IEC 61131-3 把 PLC 的编程语言、语法、程序结构、数据类型、指令、函数等等跟编程有关的各个方面都讲清楚了,给 PLC 编程给出了清楚明白、能实际操作的指导。

IEC 61131-3制定了5种PLC编程语言,包括:

● 梯形图(Ladder Diagram,LD);

● 功能块图(Function Block Diagram,FBD);

● 顺序功能图(Sequential Function Chart,SFC);

● 指令表(Instruction List,IL);

● 结构化文本(Structured Text,ST)。

二、SCL语言特点:

● 符合 IEC61131-3 这个国际编程标准,SCL 编程语言达到了该标准里说的 ST 语言(结构化文本)的 PLC open 初级水平;
● 支持像 BOOL、BYTE、WORD、DWORD、REAL 这些基本数据类型(比如说:布尔型、字节、字、双字、整数、浮点数等等);
● 支持像 Date、ARRAY[0…7] of INT、UDT 这样的复杂数据类型(比如说:日期时间、字符串、数组、指针、用户自定义类型等等);
● 支持算术表达式,像加、减、乘、除、模运算、幂运算(比如说:Variable A := Variable B * Variable C);
● 支持关系表达式,比如大于、小于、等于、不等于、大于等于、小于等于(比如说:Variable A Variable B + Variable C);
● 支持逻辑表达式,像与 AND、或 OR、非 NOT、异或 XOR(比如说:”PumpData”.M1.DeviceOK := “PumpData”.M1.Power AND “PumpData”.M1.”Remote” AND NOT “PumpData”.M1.Fault);
● 支持像加+、减-、乘*、除/、模运算 MOD、幂运算**这样的运算符(比如说:#isLeapYear := (#Year MOD 4 = 0 AND #Year MOD 100 0) OR (#Year MOD 400 = 0););
● 支持像 IF…THEN、CASE…OF…、FOR…TO…DO…这样的程序控制指令(比如说:IF #isLeapYear THEN#leapYearsCount := #leapYearsCount + 1;ELSE#commonYearsCount := #commonYearsCount + 1;END_IF;);
● 支持对 CPU 的各种存储区进行读写(比如说:输入/输出映像区、定时器、计数器、位存储器等等);
● 支持基本指令、扩展指令、工艺指令以及通信指令等等;

三、SCL适用于下列应用领域:

● 数据管理;

● 过程优化;

● 配方管理;

● 数学计算/统计任务;

● 通信处理;

复杂运算功能复杂数学函数数据管理过程优化

程序片段

程序片段

四、SCL编程小实例:(点动与自锁)

1、电机点动控制:

编写程序

下载测试

2、电机自锁控制:

LAD编程

SCL编程方法1

SCL编程方法2

S7-1200-1500 SCL编程入门基础(一) PLC论坛-全力打造可编程控制器专业技术论坛 -

来源:PLC技术玩

相关推荐