基于遗传算法的双机器人加工中心布局优化
2016-07-06曹春平丁武学
王 军 曹春平 丁武学 孙 宇
基于遗传算法的双机器人加工中心布局优化
王军曹春平丁武学孙宇
南京理工大学,南京,210094
摘要:首先建立了面向大型仪表板的双机器人作业加工单元,为了保证机器人和工件不发生碰撞,提出了以双机器人的工作空间重合率最大为目标、基于遗传算法的双机器人加工中心优化布局方法,建立了空间约束的数学模型,利用MATLAB软件进行仿真分析,并从空间重合率、加工周期两个方面进行比较。结果表明:相对于公司现有状态,空间重合率提高了14.6%,加工周期缩短了1.2 min,验证了该方法的有效性和可行性。
关键词:机器人;加工中心;布局优化;遗传算法
0引言
近年来,机器人在工业领域已经被广泛应用,如焊接、钻孔、装配、运输、喷涂等,尤其是在汽车制造领域。在汽车内饰领域,仪表板属多型号小批量生产,不同型号仪表板上孔的位置、形状、大小分布都不同,甚至差距很大。越来越多的企业引进多机器人加工单元进行汽车仪表板的加工,以期在保证加工精度的前提下提高工作效率,缩短工作周期。多机器人加工中心布局优化问题一直是国内外学者关注的重点。
在多机器人布局优化领域,Chedmail等[1]通过修改机器人模型的D-H参数,并用八叉树表示机器人机器人工作空间和目标空间,同时引入避碰检测来确定加工中心的布局;Kats[2]利用优化算法来求解所有无碰撞路径的最小值,并以此为依据进行布局设计;Chittajallu等[3]用圆形外包的方式描述布局设备,这种简化方式便于设备之间的干涉检验,但布局空间不能得到合理有效的利用;Barral等[4]提出了基于模拟退火算法的布局方法,并在工业机器人软件平台IGRIP 上运用,由于模拟退火算法本身的特性使得计算时间较长,布局方案计算耗时较长;王召莉[5]研究了机器人关节空间和操作空间的特性,将机器人的关节轨迹距离作为评估指标,采用简单、高效的自适应差分进化算法对典型机器人作业单元的布局优化实例进行研究。
本文以某企业典型的汽车仪表板为加工对象,研究面向大型仪表板的双机器人加工中心的布局优化问题。目标为在考虑两个机器人和仪表板之间的位置关系基础上保证机器人和工件不发生碰撞的前提下,使两个机器人的工作空间重合率最大。通过对机器人、工件进行数学建模,并引入相关约束条件,利用遗传算法对双机器人加工中心的布局进行优化,最后采用MATLAB软件[6]进行仿真分析,并从空间重合率、加工周期两个方面进行比较。
1问题描述与建模
1.1问题描述
1.1.1仪表板的特点
汽车仪表板具有体积大、形状复杂等特点,一般需要在铣削中心上完成多个孔的加工。如图1所示,仪表板上孔的位置、形状、大小分布都不同,甚至差距很大。此外,仪表板两侧孔的数量不同,一侧孔多一侧孔少,且在加工过程中对象不能移动。若采用单个机器人加工则工作空间有限,不能独自完成所有的任务,因此,需要至少两个以上的机器人协调完成所有加工任务。
1.1.2加工中心的配置
根据汽车仪表板的加工特点,初步布置了双机器人加工中心。两个机器人分布在仪表板的两侧,通过电机带动机器人在导轨上左右移动,完成仪表板上所有工艺孔的加工,如图2所示。
1.1.3方案设计
在机器人布局设计中,在给定机器人型号、尺寸的前提下,通过合理布局机器人和仪表板的位置关系,提高两个机器人的空间重合率,使孔较少一侧的机器人在加工完本侧的孔后,能够加工少量对面的少量孔,从而提高加工效率,以达到缩短生产周期的目的[7]。
1.2建模
1.2.1机器人建模
一般来说,机器人前三个自由度可以使机器人的末端执行器到达其工作空间内指定的任意位置,因此,可以只考虑拥有前三个自由度的操作臂,至于末端姿态可以在工件外给定一个容许空间,用剩余三个自由度来调整。单个机器人的模型简图见图3。
如图4所示,当机械臂从点1运动到点2时,机械臂1一定会与工件发生碰撞,所以工件不能出现在半径为A1的半圆内,因此,机械臂有效工作空间为图3所示的阴影部分,数学模型为
(1)
1.2.2工件建模
将仪表板向其横截面上投影,如图5所示,加工对象所在的空间范围简称为目标空间,是由两个半径不同的扇形围成的区域。
目标空间在极坐标系中表示为
W={(ψ,ρ)|α≤ψ≤β,a≤ρ≤b}
(2)
式中,a、b分别为两个圆弧的半径;α、β分别为目标空间在极坐标系中角度的极值。
因为在进行孔铣削时机器人末端执行器必须垂直于工件表面,所以需要给定一容许空间让机器人调整末端姿态。因此,实际目标空间应当向外扩展一定距离,故目标空间中两个圆弧的半径分别为a+ΔL和b+ΔL。
1.2.3约束模型
要求两个机器人同时对仪表板进行孔加工,加工中必须满足两个基本原则:①工件必须完全在两个机器人的工作空间内;②必须提供足够的空间,让两个机器人避免碰撞。
为了满足上述两个原则,建立三个坐标系:两个机器人直角坐标系和一个工件极坐标系,通过三个坐标系建立两个机器人和工件之间的相对位置关系,如图6所示,目标坐标系原点在两个机器人的直角坐标系中的坐标分别为(x,y)和(u,v),ψ1和ψ2为描述机器人加工范围的角度值,其中仪表板在坐标系1一侧孔较多,在坐标系2一侧孔较少。
①A、B两点在坐标系1中的坐标:
A(x+acosβ,y+asinβ)、B(x+bcosβ,y+bsinβ)
②C、D两点在坐标系2中的坐标:
C(u+bcosα,v+bsinα)、D(u+acosα,v+asinα)
③E、F两点在坐标系1中的坐标:
E(x+bcos90°,y+bsin90°)
F(x+acos90°,y+asin90°)
④E、F两点在坐标系2中的坐标:
E(u+bcos90°,v+bsin90°)
F(u+acos90°,v+asin90°)
(1)约束一:目标空间必须在机器人工作空间内。
要满足约束一,点A、B必须在机器人1的加工范围内,点C、D必须在机器人2的加工范围内,即
(3)
(4)
式中,A1、A2为机器人1的两机械臂长度;B1、B2为机器人2的两机械臂长度。
同时,孔多一侧的机器人1可以加工所有本侧的孔,则点E、F必须在机器人1的加工范围内;孔少一侧的机器人2有能力加工对侧的孔,则点E、F必须在机器人2的加工范围内。即
(5)
(6)
(2)约束二:A点不应该在机器人2的工作空间内部。一是为避免空间浪费,二是会造成两个机器人距离太近,容易发生碰撞现象。
A点在机器人2坐标系里的坐标是A(u+acosβ,v+asinβ),则有
(u+acosβ)2+(v+asinβ)2≥(B1+B2)2
(7)
(3)约束三:为防止机器人在姿态调整过程中与工件发生图4所示的碰撞,工件的任一部分都不能出现在以A1为半径的圆弧内,故应满足如下条件:
(8)
(4)约束四:两机器人之间必须有足够的空间,以便两个机器人的安装、维修以及避碰等,即
(x-u)2+(y-v)2≥d2
(9)
其中,d需要设计者根据实际情况给出。
1.2.4目标函数
优化目标是在不发生碰撞的前提下,目标空间中两个机器人的空间重合率尽量大。即
max(ψ2-ψ1)
(10)
2布局优化算法
上述过程将双机器人加工中心的布局问题转变成非线性规划问题。传统的非线性规划算法的缺陷是计算烦琐且精度不高,稳定性差,对函数初值和函数性态要求较高,且容易陷入局部最优解。而遗传算法是一种全局搜索算法,可以克服传统的非线性规划算法容易陷入局部最优解的缺陷。因此,将遗传算法应用于双机器人布局优化问题以改善收敛效果,提高优化质量。
利用遗传算法进行布局优化的步骤[8]如下:
(1)编码。遗传算法的编码形式主要有二进制编码和实数编码,此处采用实数编码。个体长度为6,4个描述位置关系的坐标值,2个描述机器人加工范围的角度值。
(2)生成初始群体。利用constraint dependent创建函数随机地生成N=100个初始个体,每个个体组合在一起形成一个群体,遗传算法以这个群体作为初始种群进行迭代操作。
(3)适应度函数的确定。本文通过遗传算法求解两个机器人的最大空间重合率,相当于式(10)所示的目标函数。因MATLAB遗传算法工具箱要求目标函数为求最小值,且最小值需为正值,因此调整适应度函数为
f=ψ1-ψ2+π
(11)
继而利用工具箱提供的适应度的尺度变换函数排列(rank)来确定最终的适应度函数,以此为标准评价个体解的好坏来引导搜索,使适应度函数最小化。
(4)选择操作。本文采用轮盘赌选择法(roulette函数)实现,假定个体i的适应度值为fi,则其被选择的概率Pi为
(12)
(5)交叉操作。由于个体采用了实数编码方式,所以交叉操作也采用实数交叉法,这里采用基于实数编码的交叉算子为算数交叉(ArithmeticCrossover)。假设两个个体XA、XB之间进行算数交叉,则交叉后产生所产生的新个体为
(13)
其中,a∈(0,1)。新个体通过继承父代个体的优秀特征,可以产生使适应度值更小的较佳个体,提高搜索效率。
(6)变异操作。因为上文采用的是实数编码方式,此处采用均匀变异算子(uniform)进行变异操作。假设一个体为X=(X1,X2,X3,X4,X5,X6),Xk为其中要变异的基因,则变异操作如下:
(14)
其中,Xmax和Xmin分别为基因Xi的上界和下界。r为[0,1]区间的随机数。
(7)循环。重复步骤(2)至步骤(6)直到满足终止条件。
(8)以最好的染色体作为最优解。
3实例和结果分析
3.1仿真实例优化布局结果
以图1所示型号仪表板为加工对象,并取厂内某型号的两个机器人做实例分析,可得到两个机器人的机械臂尺寸及工件模型的相关参数。
(1)已知条件。机械臂1的长度:A1=682mm;A2=732mm;机械臂2的长度:B1=1023mm;B2=1145mm;工件模型:a=987mm;b=765;α=10°;β=170°。
(2)6个变量。极坐标系原点在两个直角坐标系里的坐标:(x,y)和(u,v)。描述机器人加工范围的角度值:ψ1,ψ2。
通过遗传算法进行优化求解,优化后的布局结果见表1。
根据表1的优化结果,可得到极坐标系原点在两个机器人坐标系中的坐标值,从而确定了两个机器人和工件的一个较优的位置关系:
(x,y)=(1393.337,-990.827)mm
(u,v)=(-493.45,-1996.91)mm
也可得到描述机器人加工范围的角度值:ψ1=1.55rad=88.8°,ψ2=2.77rad=158.709°。
因此,重合空间最大,即ψ2-ψ1=69.9°。实际布局如图7所示。
3.2仿真结果分析
根据仿真结果,对两机器人进行重新布局后,从机器人工作的重合空间和加工周期两个角度进行分析,验证了算法的有效性。
3.2.1重合空间大小的比较
由布局优化结果得出两机器人的加工范围(图8)及重合空间的大小。
重合空间最大即ψ2-ψ1=69.9°。与实际机器人加工中心作比较,结果见表2。
注:机器人1的加工范围为180°-ψ1=91.2°,机器人2的加工范围为ψ2=158.7°。
可以看出,在两个机器人能完成各自任务的前提下,仿真结果表明此方法可以显著提高两个机器人的空间重合率。
3.2.2加工周期的比较
(1)以图1所示型号仪表板为对象,以两个机器人加工时间相等为目标进行机器人加工任务的分配[9],如图9所示。
(2)在任务分配的基础上,以两个机器人的运动路径最短为原则确定铣削加工顺序。该问题是典型的TSP问题,因此采用蚁群算法[10]来实现路径优化仿真,得到的优化路径如图10所示。
基于MATLAB平台利用Robotics Toolbox工具箱实现对工业机器人的系统仿真。
为方便数据统计及实现自动输出,设计机器人加工中心控制器,如图11所示。根据上述路径规划结果以及时间最优轨迹规划,仿真得出机器人加工中心在加工过程中的总时间,并与现有的加工周期进行对比。
仿真后得到单个仪表板的加工时间t1与工厂实际加工周期t2作比较,结果见表3。
因此,t1 4结语 本文通过对双机器人加工中心建立数学模型,引入相关约束。结果表明,该数学模型可以准确描述两个机器人和仪表板之间的位置关系,为后续的仿真及布局奠定基础。 遗传算法是一种全局搜索算法,可以有效解决传统非线性算法容易陷入局部最优解的问题,成功求解双机器人加工中心的最佳布局。 从仿真结果可以看出,通过该数学模型和遗传算法的有效结合,可以显著提高两个机器人的空间重合率,为后续进行加工中心的任务分配及路径规划提供较大的灵活性,从而达到最小化加工周期的目标。 参考文献: [1]Chedmail P,Wenger P.Design and Positioning of a Robot in an Environment with Obstacles Using Optimal Research[C]//1989 IEEE International Conference on Robotics and Automation. Scottsdale,1989:1069-1074. [2]Kats V.Minimizing the Cycle Time of Multiple-product Processing Networks with a Fixed Operation Sequence, Setups, and Time-window Constraints[J].European Journal of Operational Research,2008,187:1196-1211. [3]Chittajallu S K,Sommer H J.Layout Design for Robotic Assembly Workcells[R].AD86-409,Technical Paper SME,1986:759-769. [4]Barral D, Perrin J P, Dombre E. Simulated Annealing Combined with a Constructive Algorithm for Optimizing Assembly Workcell Layout[J].Advanced Manufacturi ng Technology,2001, 17(8):593-602 . [5]王召莉.基于关节空间评估的机器人工作单元布局优化[D].上海:上海交通大学,2009. [6]栾颖.MATLAB R2013a工具箱手册大全[M].北京:清华大学出版社,2014. [7]Tao Long,Liu Zhigang.Optimization on Multi-Robot Workcell Layout in Vertical Plane[C]//Proceeding of the IEEE International Conference on Information and Automation.Shenzhen, 2011:744-749.[8]雷英杰,张善文.MATLAB遗传算法工具箱及应用[M].西安:西安电子科技大学出版社,2014. [9]张嵛,刘淑华.多机器人任务分配的研究与进展[J].智能系统学报,2008,3(2):115-120. Zhang Yu,Liu Shuhua.Research and Development of Multi-robot Task Allocation[J].Journal of Intelligent Systems,2008,3(2):115-120. [10]李成兵,郭瑞雪,李敏.改进蚁群算法在旅行商问题中的应用[J].计算机应用,2014,34(S1):131-132. Li Chengbing,Guo Ruixue,Li Min,et al.Improved Ant Colony Algorithm in the Application of the Traveling Salesman Problem[J].Journal of Computer Applications,2014, 34(S1):131-132. (编辑陈勇) Layout Optimization on Dual-robot Machining Center Based on Genetic Algorithm Wang JunCao ChunpingDing WuxueSun Yu Nanjing University of Science and Technology,Nanjing,210094 Key words:robot;machining center;layout optimization;genetic algorithm Abstract:First,a dual-robot operation processing unit for large dashboard was established.Under the premise of ensuring the robot and the workpiece working without collision, in order to maximize the sharing working space rate of two robots,a method to optimize the layout of the double robotic workcell was procesd based on genetic algorithm with MATLAB software simulation analysis.Besides,the sharing working space rate and the processing cycle were compared.The results show that:relative to the company’s existing state,the sharing working space rate is increased by 14.6 percent,and the cycle time is reduced by 1.2 min,which demonstrates the effectiveness and feasibility of the method. 收稿日期:2015-04-14 基金项目:江苏省科技厅产学研联合创新资金—前瞻性联合研究项目(BY2014004-02) 作者简介:王军,男,1991年生。南京理工大学机械工程学院硕士研究生。主要研究方向为机器人控制系统。曹春平(通信作者),女,1976年生。南京理工大学机械工程学院副教授、博士。丁武学,男,1966年生。南京理工大学机械工程学院副教授。孙宇,男,1964年生。南京理工大学机械工程学院教授、博士研究生导师。 中图分类号:TP242 DOI:10.3969/j.issn.1004-132X.2016.02.006