APP下载

汽车白车身点焊作业多机器人路径规划研究*

2024-03-01张邦成单玉升尹晓静

组合机床与自动化加工技术 2024年2期
关键词:焊点精英蚂蚁

张邦成,单玉升,赵 航,董 雷,尹晓静

(1.长春工业大学机电工程学院,长春 130012;2.长春工程学院机电工程学院,长春 130103;3.一汽模具制造有限公司焊装开发部,长春 130013)

0 引言

在汽车制造领域,焊接机器人在焊装生产线上起着至关重要的作用。对于焊接任务比较繁重的焊接工位,为了缩短焊接时间和提高生产效率,通常会应用多机器人系统协同合作共同完成焊接任务。

多机器人系统比单机器人系统具有更强的处理复杂大规模任务的能力和更强的容错能力,焊接作业更加复杂。相比于单机器人焊接系统具有更多的约束条件,需要考虑各个机器人的工作区域、协同性,避免碰撞、相互干涉等问题。因此,越来越多的专家和学者开始投入研究焊接机器人关键技术,其中焊接路径规划显得尤为重要。

采用智能算法对焊接路径进行合理规划,替代人工手动规划方式,可以提高机器人的工作效率、减少工作时间以及降低生产成本[1]。李国奎等[2]提出了一种改进蝗虫优化算法的车身焊接机器人路径规划,提高了机器人的工作效率。在机器人避障方面,姚江云等[3]提出了一种改进蜂群算法的机器人避障策略,为解决机器人焊接避障提供了新方法。针对大规模焊接任务的路径规划问题,聂芬、张加波等[4-6]通过建立合适的模型,设计相关算法来优化焊接路径。其中,蚁群算法的优化效果相对比较显著,王春华、王学武等[7-8]通过引入改进策略来优化蚁群算法性能,以更好的解决单焊接机器人的路径规划问题。在双机器人的焊接路径规划方面,汤彬等[9]采用栅格法建立同步焊接模型,分别通过蚁群和粒子群算法来实现机器人与工件之间的避障以及焊点之间的路径规划。而对于多机器人,侯仰强等[10]采用蚁群粒子群混合算法,来实现多机器人的焊点分配及路径规划。上述研究表明,通过智能算法来优化机器人的焊接路径已成为一种有效的焊接路径规划方法[2]。在单焊接机器人路径规划方面的研究已相对比较成熟,而在多机器人大规模复杂焊接任务路径规划方面的研究并不深入,其方法也相对较少。

本文以白车身焊装主拼工位的焊接工作为例,研究了复杂三维焊接任务的多机器人协同路径规划问题。针对三维焊接任务的特殊性以及多机器人焊接作业的复杂性,将多机器人的焊接路径规划问题视为多旅行商问题。在此基础上,考虑机器人的安全距离干涉、焊接任务均衡等约束条件,将实际焊接任务与MTSP模型相结合,提出了一种基于自适应精英蚁群算法的多机器人焊接路径规划新方法。建立多机器人焊接路径规划数学模型,通过优化焊接序列的方式,实现焊钳末端在焊点之间的路径规划,最后,以某车型焊装主拼工位的多机器人焊接作业为例,验证了本文方法的有效性和可行性。

1 问题描述

1.1 焊接路径规划任务描述

焊接机器人的路径规划本质是在焊点之间找到一条遍历所有焊点的最优焊接路径。根据不同的准则和约束来规划出符合要求的路径,如倾向于耗能最少或者焊接变形最小等[1],本文旨在研究使规划路径最短的问题,通过缩短焊接路径,来减少焊接时间,以提高工作效率。

由于智能算法对路径的优化是理论上的,实际中往往还需要对优化结果进行调整,且为了提高计算速度,所以对路径规划问题进行了简化,焊接过程中焊钳和工件或夹具的干涉问题通过增加虚焊点修正的方法来解决[1,6,8,11],机器人的起点坐标看做一个虚拟焊点。这样,焊接路径规划问题就可以转化为TSP问题,即找到一条从起始点出发,遍及所有焊点,最后回到起始点的最短路径。而对于多焊接机器人的路径规划问题就转化成了MTSP问题。具体而言,即从不同的起始点出发,最终回到各自的起始点,并且所有机器人所遍历的焊点相加为全部焊点,各机器人所遍历的焊点不重复。

1.2 焊接路径规划数学模型

对于单机器人的焊接任务可以描述为:有N个焊点的任务C={c1,c2,…,cn},每两个焊点间的距离为d(ci,cj)≥0,其中ci,cj∈C(1≤i,j≤N),求使目标函数式(1)总路径长度达到最小的N个焊点的排列顺序:

(1)

式中:φ(1),φ(2),…,φ(N)为1,2,…,N的全排列。

多机器人的焊接路径规划不同于单机器人,需要在单机器人的基础上考虑机器人之间的互相干扰,以及焊点分配的问题,路径优化更加复杂。

多机器人的焊接工作应保证机器人焊接区域不重复、不交叉的原则,确保焊接机器人之间没有重叠的工作区域,以避免碰撞[12-14]。同时,焊点的分配尽量做到相对均衡,以使得机器人的工作量接近[20]。结合实际焊接工况,本文采用4个机器人来完成焊接工作。要求4个机器人所遍历的焊点相加为全部焊点,且4个机器人所遍历的焊点不重复。于是,4个焊接机器人路径规划的数学模型可描述为:

设焊点个数为n,焊点分配模型为H,则:

(2)

式中:dik表示机器人k到焊点i的距离,为保证可达性应设置其极限在机器人活动区域内[11]。

xik∈{0,1}

(3)

这里xik用来判断焊点与机器人的归属,xik为1时,焊点i属于机器人k,xik为0时,焊点i不属于机器人k。

(4)

式(4)表示每个焊点有且仅有一个机器人对其焊接。

(5)

式(5)表示每个机器人所焊接的焊点数量相对均衡,其中φk表示机器人k焊接的焊点数目。

dik∈Rk,Rk∈[Rrmin,Rrmax]

(6)

式(6)表示焊点应该在机器人的可达范围内,其中,Rk为机器人的活动半径,而Rrmax、Rrmin分别表示机器人可达范围的最大和最小半径。

除此之外,还需要实时监测路径,以确保焊钳之间保持一定的安全距离[13]。当距离小于安全距离时,离焊点较远的机器人将等待一段时间,以确保焊钳之间不会相互影响。

D(Ru,Rv)-Ssafe≥0

(7)

式中:Ru、Rv表示任意两个机器人,Ssafe表示两个机器人的安全距离。

综上所述,4个焊接机器人的路径规划问题可描述为:

(8)

(9)

(10)

(11)

满足约束条件式(2)~式(7)。

式中:n为焊点总个数,s1、s2、s3、s4分别表示4个机器人的焊接路径长度,φ(1),φ(2),…,φ(n)是1,2,…,n的全排列。

2 改进蚁群算法

蚁群算法具有高精度、正反馈、强鲁棒性及易与其他智能方法相结合等优点[15],尤其针对旅行商问题,有着很好的优化效果。在蚁群算法的基础上,对算法核心参数进行调整,用较小的计算负担来优化算法性能。引入精英蚂蚁系统加快算法的收敛速度,引入自适应更新策略增强算法全局搜索能力,避免算法早熟。

2.1 参数优化

(1)蚂蚁数目m。实际应用中,增大m会增加算法的全局搜索能力,但m过大,也会减弱了信息正反馈作用,使收敛速度变慢。反之,算法随机搜索性降低,搜索能力减弱,容易陷入局部最优[16]。根据文献[21],当蚂蚁数目远远大于城市数量即m≥n时,再增加蚂蚁量对算法性能的提高不是很明显。一般情况下,当城市规模小于100时,m∈[0.85n,1.20n](其中n为城市数量),当大于100时,m∈[0.70n,n][21]。结合焊点数量和机器人数量,又考虑到参数的设置还主要依赖于仿真实验的统计数据和经验值[16],本文蚂蚁数目初步取为m=50。

(2)信息素挥发系数ρ。ρ表示信息素的挥发速度,则1-ρ表示路径上剩余的信息素浓度,ρ值的大小间接了反映蚂蚁个体之间协作关系的强弱。对于信息挥发素系数ρ,本文不取固定值,而是采用信息素自适应更新策略,使算法在迭代多次且较优解没有变化时自动更新,调整信息素挥发速度,增大全局搜索性,具体在2.2节中做详细阐述。

(3)启发因子α和期望启发因子β。信息素启发因子α和期望启发因子β是一对关联性很强的参数。α反映的是信息素对蚂蚁选择路径的指导强度,β反映的是启发信息在蚂蚁选择路径时的相对重要程度,考虑到β过大时蚂蚁可能会在某个局部点上选择最短路径,而忽略了全局性,因此初步选取β=6,同时,取α=1。

2.2 算法设计步骤

步骤1:路径点选择。蚂蚁根据各路径点上的信息素等参数来选择下一个路径点,从i点转移到临近j点的转移概率为:

(12)

即启发函数:

(13)

式中:τij(t)为t时刻从i转移到j路径上的信息素,ak为蚂蚁k下一步能选择的点。

步骤2:设置禁忌表。将蚂蚁已选择并走过的路径点保存到禁忌表中,避免形成环形路径或者重复访问某些节点。

步骤3:重复步骤1~步骤2,直至所有未退出循环的蚂蚁达到终止点,计算达到终止点的各个蚂蚁的路径距离,计算最短路径距离及平均距离并保存。

步骤4:信息素更新。对信息素的挥发系数ρ作自适应调节[9],每10次迭代,解质量没有更新时,改变挥发系数ρ的值。在路径搜索前期,ρ取较小值,增强正反馈作用,提高算法初期收敛速度;后期随着路径的搜索循环,ρ取值逐渐增大,增强全局搜索能力,防止算法早熟。其信息素挥发系数的计算公式为:

(14)

式中:ρmax为ρ的最大值,它可以防止信息素挥发过多而降低收敛速度。本文令ρ=0.1,ρmax=0.3。

在每次循环结束后,对所有已经发现的最优解,人工释放额外的信息素。使其在下一次循环中对蚂蚁更具有吸引力[18],来增强正反馈效果。相应的信息素增量的计算公式为:

(15)

(16)

式中:Tbs为已发现的最好解,Lbs为已知最优路径的长度。

(17)

式中:Lk表示蚂蚁k在本次循环过程中所走的路径长度,Q为信息素强度,是个常数,而e应该比信息素强度Q要小。本文将参数设置为e=3,Q=10。

因此,当蚁群完成一次循环后,路径上信息素浓度更新的公式可表达为:

(18)

满足式(14)~式(17)。

步骤5:选择本次循环中的最优路径并保存,当达到最大迭代次数时,输出最优路径,否则重复步骤3、步骤4。

2.3 算法流程

本文将精英蚂蚁系统与自适应更新策略加入到经典蚁群算法中,形成自适应精英蚁群算法。提高全局搜索的能力,同时加快算法搜索效率,使算法有更好的性能。

根据上述对蚁群算法参数调整及算法设计的介绍。最终算法参数选取如表1所示,算法流程如图1所示。

图1 自适应精英蚁群算法流程图

表1 自适应精英蚁群算法参数

2.4 算法有效性验证

机器人焊接路径规划类似于以路径长度为准则设置的旅行商(TSP)问题,因此,可以通过TSP模型测试和验证改进后算法的性能[12],在这里,以37个城市的TSP问题为例,分别通过3种改进策略的蚁群算法进行优化,验证本文改进后算法的性能是否提高。本文算法参数如表1所示,分别设置其余两种算法的参数,最大迭代次数均设置为200,具体参数设置和城市坐标如表2、表3所示,仿真结果如图2所示。

(a) 自适应蚁群算法优化结果 (b) 精英蚁群算法优化结果

表2 对比算法具体参数

表3 城市坐标 (mm)

图2a和图2b显示了自适应蚁群算法和精英蚁群算法的优化结果,路径中都存在交叉,从收敛曲线可以看出自适应蚁群算法有较好的优化结果,但收敛速度较慢,而精英蚁群算法收敛速度较快,但其搜索结果不佳,这显然都不是最佳解决方案。图2c显示了自适应精英蚁群算法优化结果,收敛速度较快,且无路径交叉,显然优于前两种算法。

为了进一步验证本文所提算法的性能,在TSPLIB标准库中选择Oliver30、att48、eil51和st70四个样本,使用本文所提算法与麻雀算法、灰狼优化算法和帝国竞争算法进行比较,验证本文算法优势,收敛曲线和实验结果如图3和表4所示。

(a) Oliver30收敛曲线比较 (b) att48收敛曲线比较

表4 测试样本10次试验结果

根据实验结果发现,对于Oliver30优化问题,不同算法的优化结果差别不大。随着城市数量的增加,本文所提算法的优势更加明显,其优化结果明显优于其它算法。融合两种改进策略后的蚁群算法,其寻优效果更好,搜索路径更短,收敛速度更快,不但拥有精英蚁群算法的收敛速度,同时保留了自适应蚁群算法更容易跳出局部最优的能力。

3 算法应用实例

以白车身焊装生产线某车型主拼工位的实际焊接作业为例,运用MATLAB进行焊接路径规划仿真实验,其主拼工位补焊焊点共192个,采用4台点焊机器人进行焊接,具体焊点分布如图4所示。

图4 焊点分布图

为了区分4台机器人各自的焊接路径,分别对四台焊接机器人进行编号,即1号、2号、3号和4号机器人。建立多机器人焊接路径规划数学模型,采用第2节设计的自适应精英蚁群算法对焊接路径进行优化,最大迭代次数设置为200,MATLAB的焊接路径仿真规划结果和收敛曲线如图5和图6所示。

(a) 三维图

图6 收敛曲线

本文设置焊钳之间的安全距离为Ssafe=200 mm,机器人之间焊钳末端间距变化大致曲线如图7所示。

图7 机器人焊钳末端间距变化曲线

图8 机器人焊接作业调试

从仿真结果可以观察到,4个机器人的焊接路径不相交,机器人之间不会相互影响,焊接过程中始终满足预设的安全距离,机器人的焊接任务也相对均衡,焊接路径在每个区域都是最优或次优的,焊接路径总长为2.451×104mm。

完成白车身主拼工位点焊作业的路径规划后,利用西门子Tecnomatix数字化制造解决方案下的PD/PS离线规划软件,模拟白车身焊装主拼工位虚拟生产环境,对上述规划结果进行仿真实验,来生成精确的机器人离线控制指令,然后导入现场实际运行的机器人进行调试,调试后的机器人运行轨迹符合焊接作业要求,验证本文所提的路径规划方案的可行性。

4 结论

本文以白车身焊装主拼工位的焊接工作为例,针对多机器人焊接工作量大、耗时长、规划任务复杂等问题,对其路径规划问题进行研究。其中,优化后的算法,在一定程度上解决了传统蚁群算法在大规模搜索空间中很容易陷入局部最优,在焊点较多时难以收敛到全局最优解的问题。自适应更新策略增加了蚁群算法后期搜索的随机性,精英蚂蚁系统提高了蚁群算法正反馈效果。研究结果表明,从算法本身来看,融合两种方法后的蚁群算法在面临大规模搜索的寻优问题时表现出很大的改善。从实验结果来看,规划的焊接路径不相交,机器人之间不会相互影响,符合机器人的工作要求,为实际车间的焊接路径规划提供了一定的指导作用。

猜你喜欢

焊点精英蚂蚁
它们都是“精英”
精英2018赛季最佳阵容出炉
我们会“隐身”让蚂蚁来保护自己
蚂蚁
当英国精英私立学校不再只属于精英
昂科威28T四驱精英型
焊盘尺寸对SMT焊点可靠性的影响
DH36钢摩擦叠焊焊点分布规律研究
基于特征聚集度的FCM-RSVM算法及其在人工焊点缺陷识别中的应用
蚂蚁找吃的等