技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 西门子PLC > 利用西门子博途SCL语言简化编程实例

利用西门子博途SCL语言简化编程实例

王曾 发布于2023-05-06 09:50 180 3 标签:西门子博途,西门子PLC,西门子PLC编程

导读:

西门子结构化编程可将不同的控制任务划分为不同的控制区域,相同控制功能数量众多的设备可利用具备多重背景的FB功能块重复调用来解决,使程序简洁、清晰、合理,易读性强,更改方便,为以后系统的升级改造提供了极大的便利。SCL语言的应用,更是大大减小了程序代码的占用空间,使西门子PLC能容纳更大的程序,控制更大的系统。下面就举一实例加以说明。点击免费试学西门子PLC精品教程

一、 所需软件及硬件

博途V15编程软件及仿真软件、西门子1215CPU一台、网线一条。注:如无PLC实物,可用仿真软件做测试

二、 项目描述

顺丰、京东、邮政等大型物流企业的中转场的输送分拣系统大都是由数量众多、结构各异的皮带机再加上数台高效分拣机组成。因输送分拣的路向繁多,皮带机往往分为不同的线体,每条线体包含若干条皮带以应对不同的路向或最终汇集到分拣机以满足其大处理量的要求,因此皮带机的自动控制是中转场控制系统极其重要的一环。下面的例子以控制一条线体为例加以说明。该实例为利用SCL语言编写的控制程序,控制一条线体当中的5条皮带启停。说明:

1、此例主要的目的是使大家掌握编程的方法,不是控制的逻辑,因此每条皮带的控制与起保停类似。具体的控制逻辑要根据实际的需求编写;

2、实际现场一条线体往往不止5条皮带,这里为了测试监控方便只用5条,但利用SCL语言编写控制再多数量的皮带,再多的线体,代码并不会增加,只是改下数量而已,后面会有描述;

3、这个例子可使大家借一斑而窥全豹,初步认知具有多重背景FB块的使用魅力。

三、 程序编写

1. 创建新项目

实际生产中配方的数据已经定好,打开博途V15软件,创建一个名为“SCL循环调用电机”的项目,组态一台固件版本为4.21215CPU,如下图1所示

1

2. 创建自定义数据类型

将默认的SBR0子程序重命名为配方处理,创建自定义数据类型可把我们从编写大量符号表变量的工作中解脱出来,变量越多,效果越明显。在这个项目中我们创建一个名为“motordata”数据类型的变量,如下图2所示。该数据类型包含4个布尔变量,分别是皮带电机的启动、停止、故障和运行变量。

2

3. 创建全局DB

创建全局DB块的目的是为了给五台皮带电机FB块的形参赋实参,而DB块建了个符号名为motor的数组变量,数组元素5个,每个元素的类型为“motordata”,即我们一开始自定义的数据类型,这样我们就不必在DB块里去一个个的输5台电机的变量。节省了时间,提高了效率。图中显示了电机1Motor0】)展开的变量,如下图3所示:

3

4. 编写电机启停程序

该程序编写相对简单,这里为了测试或仿真方便,只写了简答的类似起保停的控制逻辑,实际的控制要根据具体要求来编写。新建名为Mrun”的块FB1,该段程序用SCL编写,如下图4所示:

4

5. 编写电机调用程序

这是该例子的核心部分,在项目中新建FB块,命名为DYMrun,程序的变量表与代码如下图5示:

5

创建全局DB块的目的是为了给五台皮带电机FB块的形参赋实参,在静态参数中分别建立dymrun”和“i”两个变量,“dymrun”为数组变量,用FB1作为数组元素的数据类型,对应5台电机;“i”为循环调用指针,整数类型,分别指向不同的皮带电机。如程序所示,i04,如果电机数量更多,比如12台,那么把4改为11即可。代码很简单,就是一个FOR循环语句,重要的是把全局DBDB1的数组变量正确赋值到FB1Mrun)各形参管脚。要理解上述程序需要掌握UDTSCL、数组、结构化编程等等知识点。

四、 测试效果

在主程序中调用FB2为照顾没有实体PLC的学员,我们用仿真进行演示。新建一个监控表,监控表输入了Motor0Motor2两个电机的变量。主程序及测试的结果如下图6所示:

6

7

8

9

7Motor0的启动信号为true,其运行信号也为true,证明程序导通,如两个红框内容所示,Motor2也是一样,如两个蓝色框内容所示;图8为复位启动信号后,Motor0Motor2因已自锁仍继续运行;图9Motor0按下停止信号,其运行也停止,而Motor2因为发生故障使电机停止运行。其余的几台请有兴趣的学员自行测试。

总结:SCL语言类似高级语言,因其代码简单易用,占存储空间少以及强大的数据处理能力,成为未来编程语言的首选,想成为编程高手一定要熟练掌握。本案例抛砖引玉,希望能对大家学习SCL有所帮助。

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

西门子博途 西门子PLC 西门子PLC编程

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签