1.本发明属于机器人示教纠偏领域,特别是涉及一种多光刀视觉辅助的机器人检测系统示教自动纠偏方法。
背景技术:2.机器人辅助在线检测系统在进行特征测量前需要完全系统示教的工作。系统示教的工作主要是针对待测特征的位置确定机器人末端测量位姿,进而确定机器人运动轨迹,以便测头完成对特征的测量,其中确定机器人末端测量位姿是决定示教效果的关键。传统的示教手段是人工手持示教盒,根据拍摄到的光刀图像和处理结果,不断修正机器人末端位姿,使测头达到理想的测量方位。这种方法首先耗时耗力,由于测头相机视场较小,机器人末端的微小变化有可能导致被测特征不能被拍摄到,给示教工作带来困难;另外,由于缺少明确的光刀图像评价指标,使得示教工作需要由专业的人员来完成,人为干预多。
技术实现要素:3.为解决上述问题,本发明提供了如下方案:一种多光刀视觉辅助的机器人检测系统示教自动纠偏方法,包括:
4.确定初始示教位姿,将机器人置于所述初始示教位姿,基于光刀图像的示教纠偏技术对所述初始示教位姿进行修正,获得目标示教位姿。
5.优选地,将机器人置于所述初始示教位姿包括,通过设置激光扫描侧头相对于待测特征的位置以及方向,以满足所述激光扫描侧头能够拍摄到被测特征。
6.优选地,所述基于光刀图像的示教纠偏技术对所述初始示教位姿进行修正包括,
7.通过处理光刀图像,获得机器人的位姿修正参数;基于所述位姿修正参数实现所述初始示教位姿的示教纠偏。
8.优选地,所述示教纠偏过程包括,
9.(1)调整机器人末端姿态,使图像光刀线水平;
10.(2)调整机器人末端位置,使被测特征位于图像中央;
11.(3)再次调整机器人末端姿态,使被测特征满足特定的扫描方向。
12.优选地,所述示教纠偏过程还包括,
13.s1.拍摄光刀图像,判断所述光刀图像中是否包含测量特征,若包含特征进行下一步判断,否则提示操作人员调整机器人测量位姿;
14.s2.判断所述图像光刀线是否为水平方向,若光刀线水平进行下一步判断,否则计算测量坐标系下x、y轴方向的调整角度,并向机器人发送调整指令,机器人调整完成后,返回s1;
15.s3.判断所述测量特征是否位于图像中心,若所述测量特征位于图像中心进行下一步判断,否则计算测量坐标系下x、y、z轴方向的平移距离,并向机器人发送调整指令,机器人调整完成后,返回s1;
16.s4.判断扫描方向是否满足要求,若满足,示教纠偏结束,否则计算测量坐标系下z轴调整角度,并向机器人发送调整指令,机器人调整完成后,返回s1。
17.优选地,所述使被测特征满足特定的扫描方向包括,
18.所述被测特征为腰槽孔,扫描方向为与腰槽孔直线段垂直;
19.所述被测特征为方孔,扫描方向为与方孔对角线方向平行。
20.优选地,调整机器人末端姿态,使所述图像光刀线水平通过将激光扫描侧头的xoy平面调整为与测量平面平行。
21.优选地,将所述激光扫描侧头的xoy平面调整为与测量平面平行包括,
22.绕测量坐标系o
c-xcyczc的ocyc方向转动得到坐标系
23.绕坐标系的方向转动得到坐标系使得方向与测量平面法向平行,其中,被测平面法向量为(m,n,p)。
24.本发明公开了以下技术效果:
25.示教一个特征的测量位姿,传统的由专业人员进行调整大约需要3~5分钟,而通过本发明提供的一种多光刀视觉辅助的机器人检测系统示教自动纠偏方法,可将时间缩短为30~60秒,示教效率相较于现有技术提高5倍。同时,本发明只需要由操作人员将机器人移动到初始位姿,示教纠偏过程实现了计算机控制机器人自动完成,减少了人为干预。整个示教过程可由一线工人完成操作,大大提高了示教效率。
附图说明
26.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.图1为本发明实施例的方法流程图;
28.图2为本发明实施例的坐标系调整示意图。
具体实施方式
29.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
30.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
31.如图1所示,本发明提供了一种多光刀视觉辅助的机器人检测系统示教自动纠偏方法,首先人工确定一个初始示教位姿,该初始示教位姿只需要满足测头能够拍摄到被测特征即可,由于本系统使用的是协作机器人,所以可以很快速将机器人末端移动到相应初始位姿;然后设计相应算法,通过处理光刀图像,获取机器人位姿修正参数,将相关指令发
送给机器人实现自动示教纠偏,达到理想示教位姿。
32.基于光刀图像的示教纠偏;
33.通常情况下,操作人员将末端移动到能够扫描到特征的初始位姿,此位姿与最佳的拍摄位姿有一定差距。为达到上述示教目标,需要对初始位姿进行纠偏,到达最佳测量位姿。本发明将纠偏工作分为三个步骤进行:
34.(1)调整机器人末端姿态,使得光刀线水平;
35.光刀线中心点提取是使用改进的灰度质心法按列计算,由于光刀线有一定的宽度,为保证光刀线中心点准确提取,图像光刀线应水平。
36.(2)调整机器人末端位置(不改变姿态,平移操作),使测量特征位于图像中央;
37.测头的视场有限,为保证能够拍摄到完整的光刀图像且方便特征点提取,被测特征应位于图像中央;
38.(3)再次调整机器人末端姿态,使得满足被测特征特定的扫描方向;
39.当被测特征为腰槽孔特征,需要利用左右两侧圆弧拟合得到的圆心进而求得腰槽孔的中心。当扫描方向不理想,提取的特征点并不会全部在圆弧上,有一部分位于直线边上,虽然拟合算法中会排除这部分点,但是拟合点变少,会造成拟合不准确。因此腰槽孔的扫描方向应与腰槽孔直线段垂直;
40.当被测特征为方孔特征,需要利用四条边求取方孔的中心。为保证提取的特征点在四条边上均匀分布,方孔的扫描方向应与方孔对角线方向平行。
41.机器人能够识别通过网络通信传递给它的控制指令,给机器人设定好已经标定好的机器人本体参数和手眼关系参数,通过给机器人发送相机坐标系在机器人基坐标系下的位姿关系,机器人即可自动移动到该设定位姿。获取初始位姿下各轴转角值,可获得在该位姿下相机坐标系在机器人基坐标系下的位姿关系为:
[0042][0043]
进一步地,调整光刀线水平的方法(以下推导均在相机坐标系下);
[0044]
由测头的设计可以假设出射激光平面均经过点(0,b,c)且与x轴方向平行,则可设出射激光平面方程:
[0045]
y-b+k(z-c)=0(3-2)
[0046]
一次扫描图像有23条光刀线,每条光刀线对应的出射激光平面不同,对应不同的k值。设被测平面法向量为(m,n,p),可设被测平面方程为:
[0047]
mx+ny+pz+q=0
ꢀꢀ
(3-3)
[0048]
联立式和式可得被测平面上光刀线方程:
[0049][0050]
对于反射激光平面,经过测量平面光刀线,且经过相机焦点(0,0,0),因此反射激光平面方程可表示为:
[0051]
[0052]
相机ccd平面方程为:
[0053]
z+f=0
ꢀꢀ
(3-6)
[0054]
联立可得相机ccd平面光刀线方程为:
[0055][0056]
可得ccd平面上光刀线方向为(n+k
′
,m,0)。其与ccd面水平方向(1,0,0)夹角为θ:
[0057][0058]
则由上式可知,当m=0时,θ=0,即测量平面平行于测量坐标系x轴方向时,光刀线在图像中为水平方向。为了后续步骤调整方便,我们将测头xoy平面调整为于测量平面平行,也就是测头z轴方向与测量平面法向平行。具体调整方法为,如图2所示,
[0059]
绕测量坐标系o
c-xcyczc的ocyc方向转动得到坐标系
[0060]
绕坐标系的方向转动得到坐标系使得方向与测量平面法向平行。
[0061]
按照上述调整过程,调整后的相机坐标系与机器人基坐标系位姿关系为:
[0062][0063]
初始位置拍摄的光刀线图像,光刀线并不是水平方向,根据提取特征点在测量坐标系下的坐标可以拟合出被测特征所在平面的法向,带入式(3-9)中求得坐标系转换关系,控制机器人运动到相应位姿,再进行一次拍摄,光刀线被调整为水平。
[0064]
调整特征位置的方法;
[0065]
调整后拍摄到的特征并没有位于图像中心,因此需要调整测末端位置以满足要求。已知相机坐标系与图像坐标系的转换关系如式:
[0066][0067]
其中s为比例系数且s≠0;mi为单目摄像机内参数矩阵;a
l
,b
l
,c
l
为出射激光平面方程参数;ps=(xs,ys,zs,1)
t
为对应光刀上特征点在相机坐标系下的坐标,pu=(xu,yu,0,1)
t
为特征点在图像坐标系下的坐标。当p
u-center
=(x
u-center
,y
u-center
,0,1)
t
为图片中心像素点坐标,a
l
,b
l
,c
l
为第12条激光线平面方程参数时,由式可以解出图片中心在相机坐标系下的坐标p
s-center
=(x
s-certer
,y
s-center
,z
s-center
,1)
t
。经过上一步的调整,相机坐标系的xoy面平行于被测特征所在平面,设在此位姿下测量拟合得到的特征点坐标为p0(x0,y0,z0)。因此只需要在调整后的相机坐标系下分别沿x轴方向平移δx=x
s-center-x0,沿y轴方向平移δy=ys-center-y0,沿z轴方向平移δz=z
s-center-z0。经过本次机器人末端平移调整后可得:
[0068][0069]
通过求得此时拟合特征点在相机坐标系下三维坐标与图片中心点在相机坐标系下三维坐标的差值,控制机器人移动。
[0070]
调整扫描方向的方法;
[0071]
对于某些特殊的特征(腰槽孔、方孔),由于拟合特征点算法的设计,需要调整机器人末端姿态以满足特定的扫描方向。由以上两步的调整,已经确定了机器人末端的位置以及x轴与y轴方向的姿态,接下来就是调整扫描方向,以确定z轴方向的姿态。
[0072]
对于腰槽孔扫描方向的调整,首先要找到圆弧段与直线段的分割点。分割点具体方法为:计算第一个特征点与第二个点的在测量坐标系下投影到相机坐标系的xoy平面上的斜率k1,再计算第一个点与下一个点的斜率k2,如果k2与k1相差不大,说明该点位于直线段上,如果与k1有较大偏差,说明该点即为分割点。对于相反的倾斜方向同理。在检测到分割点后求出直线段与x轴方向的夹角y,则需要绕z轴转动的角度δ为:
[0073]
δ=-γ=-tan-1
k1ꢀꢀ
(3-12)
[0074]
转换到机器人基坐标系下的转换关系为:
[0075][0076]
另外,当检测到特征外轮廓高度大于宽度时,可先将测头绕z轴旋转90
°
再进行调整。
[0077]
对于方孔特征,扫描方向是沿其对角线方向是最佳的。通过拟合方孔特征边的斜率为k,该边与x轴方向的夹角y,则需要绕z轴转动的角度δ为:
[0078]
δ=45
°‑
γ=45
°‑
tan-1kꢀꢀ
(3-14)
[0079]
转换到机器人基坐标系下的转换关系为:
[0080][0081]
实验验证
[0082]
根据前文介绍的示教方法,设计实验进行验证,主要验证示教纠偏的效果。分别针对圆孔、腰槽孔、方孔三类特征,每类特征从不同初始位姿进行两次实验。整个示教纠偏过程均通过处理光刀图像来计算调整参数,并发送相关运动指令控制机器人移动到指定位置,不存在人为干预,因此可编写相关软件来自动完成示教纠偏工作,如图1为软件实现的示教纠偏流程图。具体流程为:
[0083]
s1.将机器人调整至某一初始示教位姿,开始示教纠偏;
[0084]
s2.拍摄一组扫描图像,并判断图像中是否包含特征,若包含特征则进行下一步判断,否则提示操作人员调整机器人测量位姿;
[0085]
s3.判断图像光刀线是否为水平方向,若光刀线水平则进行下一步判断,否则计算测量坐标系下x、y轴方向的调整角度,并向机器人发送调整指令,机器人调整完成后,返回s2);
[0086]
s4.判断测量特征是否位于图像中心,若测量特征位于图像中心则进行下一步判断,否则计算测量坐标系下x、y轴方向的平移距离,并向机器人发送调整指令,机器人调整完成后,返回s2);
[0087]
s5.判断扫描方向是否满足要求,如果满足则示教目标已经达到,示教纠偏结束,否则计算测量坐标系下z轴调整角度,并向机器人发送调整指令,机器人调整完成后,返回s2)。
[0088]
实验结果与分析
[0089]
为方便对示教结果进行描述,设定如下评价指标(设以图像左下角为原点,以水平向右为x轴方向,以竖直向上为y轴方向,建立图像坐标系):
[0090]
光刀图像第12条光刀线与图像x轴方向夹角a,a越接近0
°
,光刀线越水平。
[0091]
光刀图像特征中心与图像中心的偏差[δx,δy],δx与δy的绝对值越小,特征中心越接近图像中心。
[0092]
对于腰槽孔特征,假设位于圆弧段特征点与全部特征点的比值为r,其值越接近1,用于拟合圆弧的点越多。
[0093]
对于方孔特征,假设特征点分布最多的边特征点个数与特征点分布最少的边特征点个数的差值为r,其值越接近0,说明特征点在四条边上分布越均匀。
[0094]
针对不同特征在不同初始示教位姿进行示教纠偏,得到的结果如表1所示。按照上述的评价指标,经过示教纠偏,相较于初始测量位姿,机器人末端可以达到较为理想的测量位姿。
[0095]
表1
[0096][0097]
针对目前机器人辅助在线检测系统示教效率低,人为干预多的问题,本发明提出了一种多光刀视觉辅助的机器人检测系统示教自动纠偏方法。该方法首先由操作人员移动机器人到达可以拍摄到特征的初始测量位姿,然后采用基于光刀图像的示教纠偏技术对初始位姿进行修正,达到较为理想的测量位姿。本发明使用的是协作机器人,操作人员能非常快速地确定初始测量位姿;且示教纠偏过程可以由计算机控制机器人自动进行。实验验证表明,本章提出的方法效率高,效果好,减少了人为干预,可方便一线工人完成示教工作。
[0098]
以上所述的实施例仅是对本发明的优选方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。