基于ACO_PSO的机器人路径规划和ROBCAD运动仿真
2017-05-25冯超钰张梦超
冯超钰,王 杰,张梦超
(四川大学 制造科学与工程学院,成都 610065)
基于ACO_PSO的机器人路径规划和ROBCAD运动仿真
冯超钰,王 杰,张梦超
(四川大学 制造科学与工程学院,成都 610065)
汽车焊装是汽车生产中的重要环节,目前生产人员主要依靠经验进行焊点路径规划,导致工作量大、效率低。针对这一问题,提出了用ACO_PSO混合算法计算得出合理的焊接路径,并与实际工人规划的传统路径进行比较,再与ACO算法和PSO算法的实验结果比较,从而证明该算法更优。然后在ROBCAD中建立三维仿真模型,解决了可达性、干涉等实际生产过程中的常见问题,最后计算出焊接过程所需的时间。研究结果表明,ACO_PSO混合算法对改善机器人节拍和提高生产效率有一定的帮助,进一步提出了焊接路径规划的研究重点和发展方向。
ACO_PSO;焊接路径;ROBCAD;仿真
0 引言
焊装作为汽车四大生产工艺之一,其质量的好坏直接影响整车的性能。为了稳定地保证焊接质量,提高生产率,改善工人的劳动条件,轿车白车身装焊单元中大多采用机器人来完成点焊工作。传统的点焊机器人路径规划多采用在线示教方法,为了完成工作任务、避免碰撞,需要用实际的机器人反复调试,导致路径规划工作量大、效率低,且不便于优化、无法并行工作[1]。焊点路径的规划是TSP(旅行商)问题,针对这一问题,Dorigo等[2]提出了的ACO(蚁群)算法,Kennedy博士与Eberhart博士[3]共同提出了PSO(粒子群优化)算法,目前国内外学者利用这两种算法在TSP问题的求解上取得了一系列的成果。而在机器人路径规划的应用上,胡小兵等[4]于2004年提出了基于蚁群算法的三维空间机器人路径规划,利用ACO较强的鲁棒性,较快地得到机器人最优路径。王学武等[5]于2014年提出基于分区粒子群算法的焊接机器人路径规划,将大规模焊接路径优化转化为小规模计算,大大减少了计算复杂度和提高了搜索精度。高尚[6]等于2006年提出了ACO_PSO混合算法,可以显著提高计算效率,然而对于这一算法的研究和应用还很少。
本文以汽车轮罩的焊接过程为研究对象,基于ACO_PSO混合算法进行路径规划,再通过ROBCAD模拟汽车轮罩的焊接过程,通过仿真解决路径规划中出现的干涉等问题,并对机器人路径进一步规划,确立最终规划方案。
1 轮罩焊接路径规划及数学模型
(1)
其中,x,y,z为点的坐标值,(1≤i,j≤n),由上式的结果构成n×n的矩阵D,目标总路径长度:
(2)
其中∏ (1),∏ (2),…∏ (n),是1,2,…,n的全排列。选取总长度最短的路径为最优路径。
2 ACO算法和PSO算法
2.1ACO算法
ACO算法是通过人工模拟蚂蚁搜索食物的过程(即通过个体之间的信息交流与相互协作找到从蚁穴到食物源的最短距离)来求解复杂优化问题[7]。
(3)
τij(t+n)=(1-ρ)τij(t)+Δτij(t)
(4)
(5)
2.2 PSO算法
PSO算法的基本思想是通过粒子群中各粒子之间的协作和信息共享来寻找最优解。
vk+1=c0vk+c1(pbestk-xk)+c2(gbestk-xk)
(6)
xk+1=xk+vk+1
(7)
式中:vk是粒子的速度向量,xk是当前粒子的位置,pbestk单个粒子的最优位置,gbestk是整个种群实时的最优位置。c0,c1,c2表示群体认知系数,c0一般取介于(0,1)之间的随机数,c1,c2取(0,2)之间的随机数。vk+1是vk,pbestk-xk和gbestk-xk矢量的和,表示粒子速度的更新受到当前速度、认知模式和群体信息的影响。
2.3ACO算法与PSO算法的混合
2.3.1 改进的ACO算法
传统蚁群算法的问题是在各个变量初始化的时候,信息素是相同的,从而导致单个蚂蚁选择不同路径的概率相同,加大了寻优的难度,反映在结果上就是减慢了收敛速度和可能导致局部最优解。如果在初始化之前通过某种启发式算法就筛选出一些好的路径,并且在这些路径上留下信息素,将蚁群算法的正反馈原理和启发式算法有机地结合。具体做法是:随机生成150条路径并将它们按照路径长短排序,只选择22条最短路径留下信息素(其强度与路径长度成反比),以此来帮助蚂蚁选择路径。
2.3.2 改进的PSO算法
传统PSO算法是粒子通过相互间的竞争和合作寻找最优解,但是当粒子群都聚集在某个局部解周围时,不能通过交叉、变异等进化措施跳出局部最优,也就导致了“早熟”。如果引入遗传算法的交叉和变异机制,对每一次迭代得到的优化路径先进行交叉和变异:随机选择一个交叉区域j1~j2,用全局极值位置的元素替换优化路径的元素,完成交叉;随机选择一个变异元素j3,将交叉后的路径的j3和j3+1互换,形成变异后的路径。通过交叉变异,尽量避免“早熟”现象。
2.3.3 混合算法
ACO算法通过感知路径上的信息素进行通信,而PSO算法利用了本身信息、个体极值信息和全局极值三个信息,来指导粒子下一步迭代位置。将两者混合,让“粒子”跟随信息素完成一次遍历,再通过交叉变异获得优化后路径,将其与以max(t^a·d^(-b))为依据找到的优化路径相比较,从而得到最优路径。
3 程序设计与计算
3.1 程序设计
基于ACO_PSO的原理,在MATLAB中程序的结构图如图1所示。
图1 程序结构图
3.2MATLAB计算结果分析
以汽车轮罩的焊接工位为例,共22个焊点。由规划人员凭借经验规划的优化前路径的总长为2753.4mm,各焊点间的平均距离为119.713mm,均方差为161.412mm。优化后路径总长为2215.2mm,各焊点间的平均距离为96.313mm,均方差为119.716mm。通过比较,相对误差率ψ=19.5%,也就是优化后路径减少19.5%,相对波动率φ=25.8%。焊接路径优化前后的图形如图2和图3所示,优化前的路径虽然已经非常平滑,但是图中表明优化后的路径要明显优于优化前的路径。
图2 优化前的路径
图3 优化后的路径
表1列出了ACO_PSO算法、ACO算法和PSO算法的10次实验结果对比情况,前两者的迭代次数是50次,而PSO算法则是迭代100次才可收敛,且最好解不理想。前两者最优解均是全局最优,但ACO_PSO算法在10次实验中均达到了最优值,而ACO则只有两次。
表1 10次实验结果对比
4 ROBCAD仿真
4.1 建立三维模型与导入仿真数据
将在CATIA中建立的轮罩模型导入ROBCAD中。在ROBCAD建立三维仿真环境,如图4所示。
图4 汽车轮罩焊接工位
本文采用的是外部TCP,所以需要在MOTION中定义外部TCP,确定为外部焊枪的坐标系。通过Path Editor规划焊点顺序如图5和图6所示,分别为优化前路径和优化后的路径。
图5 优化前的路径
图6 优化后的路径
4.2 可达性分析
因为焊点自身的坐标系是随机生成的,考虑到机器人关节运动范围,而且在焊接时焊点坐标系的x方向最好指向焊枪的枪膛,所以必须通过ROBCAD进行可达性分析,如图7所示,蓝色区域为可达区域,红色区域为不可达区域,在ROBCAD中将焊点自身坐标系依次调整到合适的位置,从而保证机器人的正常运动。
图7 可达性分析
4.3 干涉检测
路径规划中的干涉也是不可避免的,需要通过ROBCAD中Collison Setup自动检测发生干涉的位置,有些地方通过调整机器人的姿态就可以避免干涉,但是有些地方需要通过设置过渡焊点来解决问题。焊接汽车轮罩时,有3个焊点处在轮罩的左侧,机器人需要实现一定角度的翻转和避障,所以在这里需要添加过渡焊点。具体做法是通过motion放慢运动速度,在必要的地方设置过渡焊点。
4.4 节拍分析
本文的路径优化标准是以路径最短为主,而对工位节拍进行分析有助于进一步提高焊接效率,这里通过ROBCAD的Spot_simulation进行仿真时间计算。对比路径优化前后的耗时分别为71.18 s和69.58 s,优化后路径耗时缩短了1.6 s。
5 结束语
ACO_PSO算法让蚂蚁具有“粒子”的特性,蚂蚁根据信息素遍历焊点得到优化路径,再根据局部最优和全局最优进行交叉、变异。比较优化后的路径与优化前的路径的两个参数(相对误差率ψ和相对波动率φ),可以明显看出缩短了路径长度。再通过实验结果表明ACO_PSO在求解TSP问题上比ACO和PSO更加具有优越性。之后联系理论和实际,在ROBCAD中仿真焊接过程,解决干涉和可达性等相关问题,最后计算出焊接时间,可以看出焊接效率也得到了一定程度的提高。
[1] 张勇智,韩赞东.白车身装焊单元点焊机器人路径规划研究[J]. 机械设计与制造,2006(2):72-74.
[2]DORIGOM,VITTORIOM,ALBERTOC.TheAntSystem:OptimizationbyaColonyofCooperatingAgents[J].IEEETransactionsonSystems,Man,andCybernetics,PartB, 1996, 26(1): 1-13.
[3]KENNEDYJ,EBERHARTR.ParticleSwarmOptimization[C]//ProceedingsoftheIEEEInternationalConferenceonNeuralNetworks. [S.l]:IEEEPress, 1995(4): 1942-1948.
[4] 胡小兵,黄席樾.基于蚁群算法的三维空间机器人路径规划[J].重庆大学学报(自然科学版), 2004,27(8): 132-135.
[5] 王学武,时应盼,顾幸生.基于分区粒子群算法的焊接机器人路径规划[J]. 华东理工大学学报(自然科学版), 2014(5):95-101.
[6] 高尚,蒋新姿,汤可宗,等.蚁群算法与粒子群优化算法的混合算法[C]. 哈尔滨:第25届中国控制会议,2006.
[7]ColoniA,DorigoM,ManiezzoV.Distributedoptimizationbyantcolonies[C]//Proceedingofthe1stEuropeanConferenceonArtificialLife.Parris,France:Elsevier, 1991.
[8]GOMEZO,BANANB.ReasonsofACOsSuccessinTSP[J].LectureNotesinComputerScience, 2004, 3172: 226-237.
[9] 林巨广,陈甦欣,戴淮初,等, 蚁群算法在白车身底板焊接路径规划中的应用[J]. 焊接学报, 2015,36(1): 5-9,113.
[10]倪庆剑,邢汉承,张志政,等, 蚁群算法及其应用研究进展[J]. 计算机应用与软件, 2008,25(8): 12-16.
(编辑 李秀敏)
Path Planning of Robot Based on ACO_PSO and Movement Simulation by ROBCAD
FENG Chao-yu, WANG Jie, ZHANG Meng-chao
(School of Manufacturing Science and Engineering, Sichuan University Chengdu,610065, China)
Automobile welding is a significant part of automobile manufacturing,the workers relied mainly on experience to plan paths of welding points currently, which led to heavy workload and low efficiency. To solve this problem, the reasonable welding path was obtained through ACO_PSO and which was compared with the traditional path that workers have planned, which also was compared with ACO and PSO, thus proving that the algorithm is better. Furthermore, the three-dimensional simulation model, which was built in ROBCAD, solved the reachability, interference and common problems in actual manufacturing,also calculated the time of the welding process. The research results show that the ACO_PSO made a good contribution to the improving of the robot cycle and the productivity, further put forward research priorities and developing direction of the path planning.
ACO_PSO; welding path; ROBCAD; simulation
1001-2265(2017)05-0111-03
10.13462/j.cnki.mmtamt.2017.05.029
2016-06-08;
2016-08-31
冯超钰(1992—),男,山西吕梁人,四川大学硕士研究生,研究方向为计算机辅助设计与制造,(E-mail)fengchychn@foxmail.com。
TH166;TG659
A