数据的存和取SCL

已锁定

WWCWWC

西门子1847工业学习平台

  • 帖子

    8041
  • 精华

    145
  • 被关注

    1338

论坛等级:至圣

注册时间:2008-07-26

钻石 钻石 如何晋级?

数据的存和取SCL

873

8

2022-11-18 17:26:46

数据的存和取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)  最后,测试取出数据部分程序,使能启动取出按钮,图示:

 取出数据的程序也正常,此,程序的框架基本引成,把这个验证程序通过微信发送给公司同事作为参考,同时也分享给论坛的朋友们。


数据的存和取SCL 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有13055条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。