技术论坛

 【推荐文档】通用函数库 (LGF)中LGF_FIFO的应用

返回主题列表
作者 主题
HITIAR
奇侠

经验值:7332
发帖数:817
精华帖:5
楼主    2020-09-11 08:07:56
主题:【推荐文档】通用函数库 (LGF)中LGF_FIFO的应用 精华帖 

        FIFO(FirstInputFirstOutput)先进先出功能之前应用是根据原理自己编写了一个功能块,最近发现原来LGF中就有现成的功能块,功能强大好用。

  1.   项目描述:自动煮面条设备具备自动煮面、捞面、通知取餐的功能,无需人工干预;


2、设备描述:设备可同时煮制多份面。有新订单时,机械臂自动将生面条投入到空面篓中;煮制时间到后,机械臂将煮面蒌提出将面倒入到面碗中,出面完成后通知该订单的顾客前来取餐。

3、项目中要解决如下问题:

l 识别煮面蒌的状态(空闲、在煮);

l 跟踪每份面的煮制时长(先入先出);

l 记录每份面的订单号(不同订单会有粗细宽窄和大小份的差异);

4、设计思想

     定义一个数组队列,数据类型为包含订单号(INT)、位号(INT)及煮制时长(TIME)的结构体变量;每接收到新订单时,新数据加入到队列中;监视队列中最后一个数据内的时长到达设定值后将数据取出。

      数据内位号用于指导机械手捞面,根据订单号通知点餐顾客取餐。队列的长度即为在制面的数量,超出最大制餐数量拒绝接收订单。

5、利用LGF_FIFO功能块编程,

execute:当有新订单时或出餐时执行;

mode:有新订单加入时值为True,出餐时此值为False;

initialValue:用于初始化缓冲区的值(数据类型与缓冲区数据类型一致)

resetBuffer: 用于初始化缓冲区的指令;

item:制餐时待加入的新订单数据,出餐时取出的新订单数据;

buffer:队列缓冲区;

len:修改功能块,增加统计在制数量的参数(加入数据次数-取出次数);

5、推荐理由:

l 快捷高效,满足工艺需求

l 数据接口,不限制输入的数据类型;

l 功能块的代码公开,可以按照项目需求增减;




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