具有分类统计功能的FB块编程--应用于物料管理

已锁定

HITIAR

西门子1847工业学习平台

  • 帖子

    817
  • 精华

    5
  • 被关注

    49

论坛等级:奇侠

注册时间:2011-10-08

黄金 黄金 如何晋级?

具有分类统计功能的FB块编程--应用于物料管理

1048

13

2021-11-15 20:10:47

一、 描述

  该功能块具有分类统计功能,统计数组中相同元素的个数,将数字内容及数量保存到另一数组中。

编写此数据块的目的是应用于物料管理的编程。生产设备旁的物料架最多可放置20种装配零部件,产线管理需要实时监测机台物料的消耗情况。机械手(或人工)每取料一次时做一次统计,当某一种物料达到下限值时给以缺料提醒(显示所缺物料编号和当前剩余数量)。

 二、 参数说明

  •   INPUT参数:

Calculation:统计开始。数据类型:BOOL;

amountMax:参与统计的数组的最大长度。数据类型:INT;

numBerArray:参与统计的数组队列。数据类型:INT型数组;

  • OUTPUT参数:

Total:统计数组内有效元素的总数。数据类型:INT;

PlantInfo:统计结果保存。数据类型:STRUCT型数组;

     CatID:统计元素内容;

CatNum:统计相同元素的数量;

三、   程序编写

1)编程思想:使用FOR循环嵌套,每次取出一个数,逐一向后比较,查找到相同数后累加。查找到的相同数后将其内容修改为“0”(在此程序中“0”为不参与比较的无效数,也可用“-1”或其它数代替)。

2)程序代码:


3)运行验证(举例)

待统计数组numberArray{11,22,33,0,44,33,33,22,11};

  •  FB块调用:

  • 统计结果:


后话:

此功能块虽不具有普适性,但在编写过程中也着实费了一些心思,加深了对FOR循环的理解。两个循环嵌套,若数组长度过大,可能会降低PLC的效率并延长循环扫描周期。各位老师能有更高效简捷的方法,给以指点。

具有分类统计功能的FB块编程--应用于物料管理 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有13035条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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