APP下载

基于ABB机器人工作站芯片产品排序实现方法研究

2019-05-31嵇朋朋窦艳艳

焦作大学学报 2019年2期
关键词:空位数目排序

嵇朋朋 窦艳艳

(江苏联合职业技术学院南京分院,江苏 南京210019)

1.背景

1.1 相关工作介绍

从20世纪70年代开始,工业机器人应用技术不断发展,带来了很多便利,同时也面临着更多的技术挑战。随着大批量、高效率的工业机器人自动化生产系统的不断推广和工业4.0时代的到来,对其应用技术提出智能化、低成本、高可靠性和易于集成控制等要求[1]。工业机器人在包装流水线上应用广泛,例如进行分拣、码垛、上下料等作业,由此对于工业机器人实现产品自动分拣功能的技术也应运而生[2-5],但是利用ABB工作站对于芯片产品排序方面的研究还未出现。本文工作主要针对的是全国职业院校技能大赛集训工作,目的是为了提高学生工作效率和培养高技能人才,从而进一步提高学生的职业能力[6]。

1.2 本文工作

职业院校技能大赛“工业机器人技术应用”赛项以ABB工业机器人为核心部件,融合了工具快换、PLC、气动技术、限位传感器、视觉检测、触摸屏等先进应用技术;以工业机器人在异形芯片插件工序的应用为背景,主要考核基础维护、涂胶、码垛、分拣、装配等工作任务,以促进工业机器人编程、系统调试以及现场维护等岗位技术技能型人才的培养,切实解决工业机器人产业人才严重短缺的问题[7]。本文通过研究分拣环节的产品排序实现方法,为提高产品排序实现效率、培养高素质技能人才提供有力的技术和理论支撑。

工作站提供4种不同形状的模拟芯片,每类两种颜色,如图1所示。在初始时,按照芯片料库中的指定料槽摆放各类芯片,如图2所示。根据任务要求,需从芯片料库中剔除所有掺杂或探出所有空位,剩余芯片产品留在芯片料库原位。在此基础上将剩余芯片产品进行排序,芯片产品排序实现方法主要有芯片产品简单排序实现法、芯片产品交替排序实现法、芯片产品混合排序实现法这3类产品排序实现方法。为了方便研究,假设剔除所有掺杂或探出所有空位后,芯片料库中剩余芯片产品个数如表1所示,并给出一种特殊的排列方式,如图3所示(图3只是表1所列芯片产品的其中一种形式)。

图1 4种不同形状的模拟芯片

图2 芯片料盘芯片摆放位置

表1 芯片料库中剩余芯片数量

图3 芯片产品数量的一种特殊初始排列方式

2.芯片产品排序实现方法研究

2.1 芯片产品简单排序实现方法

将芯片料库中剔除所有掺杂或探出所有空位,利用芯片料库中的空位将所有剩余芯片产品按颜色进行排序,具体产品排序要求如下:排序位置要求如图2所示,三极管芯片,A类芯片从14号位置开始依次往后摆放,B类芯片从19号位置开始依次往前摆放;电容芯片,A类芯片从21号位置开始依次往后摆放,B类芯片从26号位置开始依次往前摆放;集成电路芯片,A类芯片从5号位置开始依次往后摆放,B类芯片从12号位置开始依次往前摆放;CPU芯片,A类芯片从1号位置开始依次往后摆放,B类芯片从1号位置开始依次往前摆放。

若对4种芯片按要求进行排序,假设XN{i}为4种芯片产品数目,KA{4}为A类芯片数目,KB{4}为B类芯片数目,KC{4}为空位数目,K{4}为4种芯片产品的过渡位置,PX{4,8}为芯片产品料库各位置所存放芯片的状态,0表示空位,1表示A类芯片产品,2表示B类芯片产品,具体算法流程如下。

此算法流程较为简单,参数及步骤较冗余,但可以完成芯片产品排序任务,将图3所示例子用此算法完成,完成效果如图4。

图4 简单排序实现法的效果示意图

2.2 芯片产品交替排序实现法

将芯片料库中剔除所有掺杂或探出所有空位,利用芯片料库中的空位将所有剩余芯片产品按颜色进行排序,具体产品排序要求如下:A类芯片产品从前往后放置奇数位置,B类芯片产品从前往后放置偶数位置。

与芯片产品简单排序实现方法一样,对4种芯片按要求进行排序,假设XN{i}为4种芯片产品数目,KA{4}为A类芯片数目,KB{4}为B类芯片数目,KC{4}为空位数目,K{4}为4种芯片产品的过渡位置。PA{4,8}为芯片产品料库各位置所存放芯片的状态,0表示空位,1表示A类芯片产品,2表示B类芯片产品,PM{4,8}为芯片产品料库各位置所存放芯片的状态,0表示空位,1表示A类芯片产品,2表示B类芯片产品。与简单排序实现方法最大的不同就是,在排序之前首先人为地将PM{4,8}设定为排序后的目标状态,排序实现方法就是将现状态与目标状态相比较,与目标状态相同的位置芯片保持不动,与目标状态不同的位置芯片需互换位置,并记录新的状态,具体算法流程如下。

FOR X FROM 1 TO 4 DO

FOR A FROM 1 TO KA{X}DO

FOR B FROM KA{X}+1 TO XN{X}DO

IF PA{X,A}<>PM{X,B}THEN

Get X,1,A,15;

Put X,1,K{X},15;

Get X,1,B,15;

Put X,1,A,15;

Get X,1,K{X},15;

Put X,1,B,15;

PA{X,A}:=PA{X,B};

PK:=PA{X,B};

PA{X,B}:=PA{X,A};

ENDIF

ENDFOR

ENDFOR

ENDFOR

虽然芯片产品交替排序实现法与简单排序实现法有些区别,但是根据题目要求都可以完成两种不同的排序任务。交替排序实现法在编程及逻辑上更简洁、有效,可根据题意对目标状态进行预先设定,并与现状态进行对比,此方法鲁棒性更强,根据要求完成的排序实现如图5。

图5 交替排序实现法的效果示意图

2.3 芯片产品混合排序实现法

在简单排序实现法、交替排序实现法基础上,本文思考用人机交互界面设定每个位置的芯片颜色及状态,此类排序实现法叫做混合排序实现方法。在研究过交替排序实现算法后,可知芯片产品的目标位置状态可通过人为设定。而混合排序实现方法就是要通过人机交互界面代替人为设定的目标位置状态,使得排序状态更加随机,更加不确定,难度更大。同理,假设XN{i}为4种芯片产品数目,KA{4}为A类芯片数目,KB{4}为B类芯片数目,KC{4}为空位数目,K{4}为4种芯片产品的过渡位置,PA{4,8}为芯片产品料库各位置所存放芯片的状态,0表示空位,1表示A类芯片产品,2表示B类芯片产品。人机交互界面设定PM{4,8}为芯片产品料库各位置所存放芯片的状态,0表示空位,1表示A类芯片产品,2表示B类芯片产品。与交替排序实现法最大的不同就是,用人机交互界面设定排序后的目标状态PM{4,8},排序实现方法就是将现状态与目标状态相比较,与目标状态相同的位置芯片保持不动,与目标状态不同的位置芯片需互换位置,并记录新的状态。具体算法流程与交替排序实现法一致。

假设人机交互界面设定排序后的目标状态PM{4,8}={{1,0,1,0,1,2,2,NON},{1,2,1,2,1,0,1,NON},{1,0,1,0,1,2,0,2},{1,2,0,1}},则排序结果如图6所示。

图6 混合排序实现法的效果示意图

2.4 产品排序方法的比较

基于ABB工业机器人工作站芯片产品排序实现方法是通过ABB工业机器人手臂位置装有吸盘工具实现芯片产品按要求搬运,以致完成最终的芯片产品排序。

芯片产品简单排序实现方法是最简单的排序方法,利用穷举法搜索需要交换的芯片。如图3所示,集成电路芯片的位置为1、3、4号位置红色芯片,2、5号位置灰色芯片,6、7、8号位置为空位置,现需按要求将红色芯片产品放置1、2、3号位置,灰色芯片产品放置7、8号位置,中间为空位。首先,通过从前往后搜索1号位置红色芯片,产品不动,2号芯片产品为非红色,搬运至空位,再从后往前搜索5号位置不动,4号位置芯片产品为红色,将4号芯片产品搬运至2号位置,最后将原先搬运至空位的原2号位置芯片搬运至4号位置,重复循环此操作即可完成简单排序。

芯片产品交替排序实现方法,如图3所示,集成电路芯片的位置为1、3、4号位置红色芯片,2、5号位置灰色芯片,6、7、8号位置为空位置,现需按要求将红色芯片产品放置1、3、5号位置,灰色芯片产品放置2、4号位置,中间为空位。与芯片产品简单排序方法不同,芯片产品交替排序有产品目标状态变量,只要将现状态与目标状态相对比,例如通过搜索会发现4、5号位置芯片产品状态均与目标状态不同,则需利用空位对4、5号位置不同状态的芯片产品进行互换。

芯片产品混合排序实现方法,如图3所示,集成电路芯片的位置为1、3、4号位置红色芯片,2、5号位置灰色芯片,6、7、8号位置为空位置,现通过人机交互按要求将红色芯片产品放置1、3、5号位置,灰色芯片产品放置6、8号位置,其余位置为空位。与芯片产品交替排序方法类似,通过人机交互所有产品目标状态,只要将现状态与目标状态相对比,例如通过搜索会发现2、4、5、6、8号位置芯片产品状态均与目标状态不同,逐步将2、5号位置芯片产品分别搬运至6、8号位置,再将4号位置芯片产品搬运至5号位置即可完成产品排序。

如图3所示,集成电路芯片的位置为1、3、4号位置红色芯片,2、5号位置灰色芯片,6、7、8号位置为空位置。对于这种排序任务,3种方法均能够有效实现,但是对于交替排序和混合排序任务,简单的排序程序不仅会产生程序冗余现象,还有可能出现完不成任务,甚至程序报错。如表2所示,对于完成集成电路芯片简单排序任务所需搬运次数也有所不同,简单排序方法需要5次搬运才能完成任务,交替排序和混合排序方法仅需要3次就能完成任务。相比而言,后两种排序方法更加简洁、灵活,尤其是混合排序方法能够实现各种产品排序任务。

表2 完成集成电路芯片简单排序任务所需搬运次数

3.总结

本文根据技能大赛实际要求和约束条件,完成并实现芯片产品排序,并给出3种不同的芯片产品排序实现方法,即产品简单排序实现法、产品交替排序实现法、产品混合排序实现法。比较研究之后,产品混合排序实现法性能更加鲁棒,适应性更强。通过对芯片产品排序实现法的研究,加快了技能训练的效率,也提升了学生及老师的技能水平。

猜你喜欢

空位数目排序
富锂锰基三元材料Li1.167Ni0.167Co0.167Mn0.5O2中的氧空位形成*
排序不等式
移火柴
恐怖排序
Zn空位缺陷长余辉发光材料Zn1-δAl2O4-δ的研究
节日排序
《哲对宁诺尔》方剂数目统计研究
牧场里的马
空位
探索法在数学趣题中的应用