找回密码
 请使用中文注册
查看: 34|回复: 0

数据的存和取SCL

[复制链接]
阅读字号:

43

主题

197

回帖

474

积分

入门维修师

积分
474
发表于 2 小时前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?请使用中文注册

×
数据的存和取SCL
  今天公司同事又过来和我说,想让我给流水线添加一个小程序,用于工厂产品流水线上的产品做检测判断,通过判断后来确认是那一条分支流水线过来的产品,方便现场操作员做出及时调整设备工艺。
  从公司同事那里大概了解了该流水线的大致情况,是由5~6条分支生产线过来的产品,集中在该处分拣,分拣后分别输送到各自的流水线上分别加工,由于目前工艺原因,需要在流水线上提前判断每一条流水线过来产品的大致情况,及早做出产品的判断,方便与上道工序的工艺修改和匹配。
这样的控制程序我想应该需要如下几个功能:
1)  具备流水线产品数量的记录,即通过工业相机和扫描枪、激光测高仪等工具检测到的数据,需要记录,相当于需要创建应该数据表格之类的;
2)  进这个表格,需要一个记录条件,可以利用流水线上的光电开关的下降沿;
3)  判断后移出表格的数据,需要在表格上减去,实际上就是一个典型的先进先出的应用例子,仍然是以流水线上检测判断工位的光电下降沿作为判断依据;
4)  表格记录不需要员工干预,只在合适的媒介上显示表格空和满,两种绝端的情况及数据存入表格的数量(产品个数);
5)  现场操作员根据数据取出的数据,现场判断分析,知道是那一条流水线下来的产品。
程序:
测试项目创建10个int,实际现场数据为12个字符长度的字符串数据,为方便测试,样例用10个int数据存储区验证。
1)  新建一个测试项目,用S7-1214C作为样例程序,创建一个FB1,图示:
创建一些必要的接口参数。
程序架构非常简单,分3部分内容。
第一部分:判断数据存入的“光电开关信号”是否为1,如果是1,则数据记录加1的同时,将数据存入的数据传送给“index”(相当于数据的一个索引),完成后,关闭“光电开关信号”为0。
第二部分:判断数据取出的“光电开关信号”是否为1的同时,判断数据存储器“index”有已经存储的数据后,取出已经存放的数据,同样完成后关闭取出的“光电开关信号”为0。
第三部分:判断数据存储的状态,当index = 0时,数据空指示灯亮,当index = 10时,数据满指示灯亮,其余的状态指示灯均灭。
2)  新建一个数据块DB2,用于子程序接口的实参,图示:
3)  在OB1调用的情况,图示:
4)  新建一个监控表,写入需要测试的变量地址,将验证程序下载到cpu,图示:
数据空的指示灯亮起。

说明判断数据空的程序没有问题。
5)  分别将数据11、12、13、14输入给数据存入变量,图示:监控FB1的背景数据块。
数据能够正常存储到数据数组中,记录部分基本正常。
6)  直接给index写大于10的数据,看数据满的指示灯是否会亮起:
数据满指示灯显示也正常。
7)  最后,测试取出数据部分程序,使能启动取出按钮,图示:
取出数据的程序也正常,此,程序的框架基本引成,把这个验证程序通过微信发送给公司同事作为参考,同时也分享给论坛的朋友们。

您需要登录后才可以回帖 登录 | 请使用中文注册

本版积分规则

QQ|手机版|家电维修论坛 ( 蜀ICP备19011473号 川公网安备51102502000164号 )|网站地图|网站地图

GMT+8, 2026-8-28 12:13 , Processed in 0.101871 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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