本发明涉及路径规划方法。更具体地,涉及一种自动焊接中清洁烙铁头的路径规划方法。
背景技术:
随着机器人技术的不断发展,焊接作业中使用机器人进行自动焊接的业务场景越来越多。与人工焊接相比,机器人焊接的质量高且一致性好,可以大大降低焊接成本。特别地,近期出现了利用计算机视觉技术确定焊点位置的自动焊接机器人,该机器人可以通过对焊盘拍照来确定焊盘的位置和焊接的角度从而实现无人化焊接。
不管是人工焊接还是机器人焊接,为了保证焊接的质量,在焊接的过程中都需要及时清理烙铁头,这一流程消耗的时间较长。对于机器人焊接,为了提高焊接的速度,需要在焊接的过程中对清洁烙铁头的路径进行优化。这样,在焊锡量较大的工作场景中快速清洁烙铁头显得尤为重要。
目前,在实际应用中并没有考虑对清洁烙铁头步骤进行优化,只是简单地在焊接时根据需要对烙铁头进行清洁,而且根据人工经验判断什么时候应该清洁烙铁头并不准确,浪费了大量的时间。随着计算机科学的发展,最新的自动焊接机器人已经可以利用计算机视觉技术计算焊盘的位置和大小,进而根据焊盘的大小可以估计需要的焊锡量,这样就具备了自动判断何时清理烙铁头的技术基础。
当前自动清洁烙铁头的装置多为毛刷式清洁器,该装置可以固定在工作台上,在清理烙铁头时需要把烙铁头按照固定的角度放入清洁器中,在清理烙铁头时,焊接机器人也需要完成机械臂的平移、旋转、下降和抬起动作。其中,平移和旋转动作与焊接路径上相邻的两个焊点之间的相对位置关系有关,其消耗的时间是和每次焊接时焊点的位置和姿态相关的变量。
在对含有清洁步骤的焊接路径进行规划时,目前常用的方法是搜索式算法。搜索式算法的思想是先构造一系列的解,然后对所得的解不断进行改进,直到得到满足要求的可行解。在求解大规模问题时,搜索式算法可以保证在有限的时间内找到一个次优解,应用范围广泛。但是,由于没有明确的数学模型和严格的数学方法,其优化的效果往往不好而且在不同的焊接任务中表现不稳定。
因此,在对清洁烙铁头的路径进行优化时,需要一种能够把具体问题转化为准确的数学模型,并且能够精确稳定求解的方法,即需要提供一种自动焊接中清洁烙铁头的路径规划方法。
技术实现要素:
为了克服上述问题至少之一,本发明的目的在于提供一种自动焊接中清洁烙铁头的路径规划方法,以实现快速准确的自动化路径规划,从而节约焊接中清洁烙铁头的时间。
为达到上述目的,本发明采用下述技术方案:
一种自动焊接中清洁烙铁头的路径规划方法,该路径规划方法包括:
基于焊盘照片计算每个焊盘的坐标和焊接角度;
基于焊盘直径计算每个焊盘所需焊锡量;及
基于焊盘的坐标、焊接角度和所需焊锡量规划焊接路径,焊接路径包括清洁烙铁头过程。
本发明中,将清洁烙铁头和焊接融合在一起规划路径,利用计算机视觉实现了焊盘的定位和焊锡量的估计问题,利用启发式方法快速计算出路径的近似最优解,以实现快速准确的自动化路径规划,从而节约焊接中清洁烙铁头的时间。
可选地,基于焊盘照片计算每个焊盘的坐标和焊接角度包括:
建立直角坐标系,其中天线阵面的最左下方的一点为直角坐标系的坐标原点,天线阵面基于焊盘照片确定,并定义x轴方向的角度为0;
基于公式xi=δ×wi计算照片中焊盘pi的横坐标xi;
基于公式yi=δ×hi计算照片中焊盘pi的纵坐标yi;及
基于公式ai=arctan(yi/xi)计算照片中焊盘pi的焊接角度ai;
其中,i为大于等于1的整数,δ为经过标定后照片中相邻两个像素点之间的距离,wi为焊盘照片中焊盘pi的中心像素点在x轴方向上到原点所间隔的像素数量,hi为焊盘照片中焊盘pi的中心像素点在y轴方向上到原点所间隔的像素数量。
进一步可选地,基于焊盘直径计算每个焊盘所需焊锡量包括:
统计历史数据,获取多组已知焊盘直径d和对应焊锡量z的历史数据;
基于历史数据,对焊锡量关于焊盘直径的多项式函数进行拟合;
根据焊盘照片获得每个焊盘的实际焊盘直径;及
根据实际焊盘直径和多项式函数,计算每个焊盘所需的焊锡量。
进一步可选地,该路径规划方法中,使用5次多项式函数拟合焊盘直径d和焊锡量z之间的函数关系如下:
进一步可选地,基于焊盘的坐标、焊接角度和所需焊锡量规划焊接路径包括:
建立待规划焊接路径为加权无向完全图g=(v,e);
基于以下公式计算损失矩阵c:
基于损失矩阵c规划焊接路径;
其中,v={vii=0,1,…,n}表示g中所有顶点的集合,v0表示烙铁头清洁器,v’={vii=1,1,…,n}表示所有焊盘的集合,qi表示vi需要的焊锡量,q表示需要清洁烙铁头时的累计焊锡量,e={eiji,j=0,1,…,n,i≠j},eij表示连接点vi和vj的边,eij=eji,损失矩阵c={ciji,j=0,1,…,n,i≠j},cij表示eij的权值,dij表示vi和vj之间的欧式距离,δij表示vi和vj的角度差,v表示机械臂的平移速度,ω表示机械臂的旋转角速度,ri={{r0,r1,…,rt+1,rj∈v,r0=rt+1=v0},{e01,…,et,t+1}}表示第i次清洁烙铁头和第i+1次清洁烙铁头之间的焊接路径。
进一步可选地,基于损失路径c规划焊接路径包括:
构建规划焊接路径的数学模型如下:
基于savings算法求解数学模型;
其中,当rk中包括eij时,
其中,目标函数是使路径的花费之和最小;
其中,约束条件(1)表示vi在且只在某一条路径上;约束条件(2)和约束条件(3)表示当rk包括eij时,rk也要包括焊盘vi和vj;约束条件(4)表示每个焊盘只被焊接一次;约束条件(5)表示清洁烙铁头的次数不能超过阈值;约束条件(6)表示整个路径没有子回路;约束条件(7)表示每两次清洁烙铁头之间的累计焊锡量不能超过q;约束条件(8)和约束条件(9)为取值限制。
进一步可选地,基于savings算法求解数学模型包括:
计算节约矩阵s,包括:
对于i,j=1,…,n,计算sij=ci0+c0j-cij;
初始化n条路径{ri=(0,i,0),i=1,…,n};及
按照递减的顺序对sij排序;
合并可行路径,按照排序后sij的顺序依次进行以下步骤,直到无法找到可以合并的路径,包括:
对于sij找到一条以(i,0)结尾和一条以(0,j)开始的两条路径;及
如果两条路径中所有节点对应的di之和不大于q,则将(i,0)和(0,j)改为(i,j),从而将两条路径连接起来;及
将以上所得所有路径首尾依次连接,获得包含清洁烙铁头步骤的焊接路径。
可选地,在路径规划方法中,并行执行步骤基于焊盘照片计算每个焊盘的坐标和焊接角度和步骤基于焊盘直径计算每个焊盘所需焊锡量。
可选地,路径规划方法还包括:更新历史数据。
本发明的有益效果如下:
本发明中将清洁烙铁头和焊接融合在一起规划路径,利用计算机视觉实现了焊盘的定位和焊锡量的估计问题,利用启发式方法快速计算出路径的近似最优解。本发明实现了快速准确的自动化路径规划方法,大大节约了焊接中清洁烙铁头的时间。另外,本发明可以适用于位置随机的各种大小和不同数量的焊盘,通用性强,可以在焊接机器人的控制计算机上实现,无需增加其他硬件设备,速度快,维护成本低。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明。
图1示出本发明实施例中一种自动焊接中清洁烙铁头的路径规划方法流程图;
图2示出本发明实施例中基于savings算法求解数学模型的流程图。
具体实施方式
为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
在清理烙铁头时,焊接机器人也需要完成机械臂的平移、旋转、下降和抬起动作,这和焊接时的动作顺序和类型是完全一致的。因此可以同焊接路径一起规划清洁烙铁头的路径,以减少机器人完成焊接任务所需的时间。
本发明中提供一种自动焊接中清洁烙铁头的路径规划方法,该路径规划方法包括:基于焊盘照片计算每个焊盘的坐标和焊接角度;基于焊盘直径计算每个焊盘所需焊锡量;及基于焊盘的坐标、焊接角度和所需焊锡量规划焊接路径,焊接路径包括清洁烙铁头过程。
本发明中将清洁烙铁头和焊接融合在一起规划路径,利用计算机视觉实现了焊盘的定位和焊锡量的估计问题,利用启发式方法快速计算出路径的近似最优解,实现了快速准确的自动化路径规划方法,大大节约了焊接中清洁烙铁头的时间。另外,本发明可以适用于位置随机的各种大小和不同数量的焊盘,通用性强,可以在焊接机器人的控制计算机上实现,无需增加其他硬件设备,速度快,维护成本低。
下面结合具体实施例进行介绍
如图1所示,首先根据焊盘的照片计算每一个焊盘的坐标和焊接角度。
根据焊接机器人拍摄的阵面照片,选取整个天线阵面的左下角为坐标原点,建立直角坐标系,x轴方向的角度为0,计算每一个焊盘vi的坐标(xi,yi)和角度ai。
其中,用δ表示经过标定后照片中相邻两个像素点之间的距离,wi,hi分别表示照片中焊盘pi中心像素点在x轴和y轴方向上到原点所间隔的像素数量则焊盘pi的坐标和角度可以按照公式(1)~公式(3)计算。
xi=δ×wi(1)
yi=δ×hi(2)
ai=arctan(yi/xi)(3)
其次,估计每个焊盘需要的焊锡量。
统计焊盘直径和对应的焊锡量的历史数据,使用5次多项式函数拟合焊盘直径d和焊锡量z之间的函数关系。
根据照片计算出每个焊盘的直径,把焊盘直径代入拟合的函数中可以求得每个焊盘所需要的焊锡量。
最后,规划清洁烙铁头的路径。
待规划焊盘的数学模型可以表示为一个加权无向完全图g=(v,e),v={vii=0,1,…,n}表示g中所有顶点的集合,v0表示烙铁头清洁器,v’={vii=1,1,…,n}表示所有焊盘的集合,qi表示vi需要的焊锡量,q表示需要清洁烙铁头时的累计焊锡量,e={eiji,j=0,1,…,n,i≠j},eij表示连接点vi和vj的边,eij=eji。损失矩阵c={ciji,j=0,1,…,n,i≠j},cij表示eij的权值,dij表示vi和vj之间的欧式距离,δij表示vi和vj的角度差,计算公式如式(4)~(6)所示。其中,v表示机械臂的平移速度,ω表示机械臂的旋转角速度。
ri={{r0,r1,…,rt+1,rj∈v,r0=rt+1=v0},{e01,…,et,t+1}}表示第i次清洁烙铁头和第i+1次清洁烙铁头之间的焊接路径。
则本发明中清洁烙铁头的路径优化问题可以被描述为一个如问题1所示的带能力约束的车辆路径(capacitatedvehicleroutingproblem,cvrp)问题。
问题1:路径规划问题的数学模型
当rk中包括eij时,
当rk中包括焊盘vi时,
其中,目标函数是使路径的花费之和最小。
约束条件(1)表示vi在且只在某一条路径上;
约束条件(2)(3)表示当rk包括eij时,rk也要包括焊盘vi和vj;
约束条件(4)表示每个焊盘只被焊接一次;
约束条件(5)表示清洁烙铁头的次数不能超过阈值;
约束条件(6)表示整个路径没有子回路;
约束条件(7)表示每两次清洁烙铁头之间的累计焊锡量不能超过q;
约束条件(8)(9)为取值限制。
vrp问题是一个组合优化和整数规划问题,根据现有的数学理论,问题1是一个np难问题,目前还没有能够在多项式复杂度条件下找到最优解的算法,即在大规模问题中精确算法不能满足实时性的要求。
本发明实施例使用savings算法求解问题1的近似最优解。
如图2所示,使用savings算法求解问题1共需要执行下面2个步骤:
s1:计算节约矩阵s。
1、对于i,j=1,…,n,计算sij=ci0+c0j-cij;
2、初始化n条路径{ri=(0,i,0),i=1,…,n};
3、按照递减的顺序对sij排序;
s2:合并可行路径,按照排序后sij的顺序依次进行以下步骤,直到无法找到可以合并的路径:
1、对于sij找到一条以(i,0)结尾和一条以(0,j)开始的两条路径;
2、如果两条路径中所有节点对应的di之和不大于q则将(i,0)和(0,j)改为(i,j)从而将两条路径连接起来。
将s2后得到的所有路径首尾依次连接起来就得到了最终的包含清洁烙铁头步骤的焊接路径。
应注意的是,为了提高方法的运算速度,本发明实施例中,将焊盘位置和大小的计算程序可以部署在gpu上并行运行,同时使用启发式算法以保证路径规划的速度和精度。为了增强方法的通用性,本发明实施例中,使用计算机视觉的方法计算焊盘的直径并估计焊盘所需的焊锡量,可以适应各种大小的焊盘。
应说明的是,本发明实施例中规划出的路径可以满足多个焊接机器人并行工作的需要。
本领域技术人员可知,本发明提出的方法可以在焊接机器人的控制计算机上实现,无需额外增加硬件设备,维护成本低。进一步地,焊盘直径和焊锡量之间的函数可以随着数据积累在线更新,便于升级维护。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。