CN115752295A - 一种线激光轮廓仪自动手眼标定方法 - Google Patents

一种线激光轮廓仪自动手眼标定方法 Download PDF

Info

Publication number
CN115752295A
CN115752295A CN202211504583.2A CN202211504583A CN115752295A CN 115752295 A CN115752295 A CN 115752295A CN 202211504583 A CN202211504583 A CN 202211504583A CN 115752295 A CN115752295 A CN 115752295A
Authority
CN
China
Prior art keywords
calibration
hand
laser
eye
line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211504583.2A
Other languages
English (en)
Inventor
王青
唐艺鹏
刘博锋
罗文旭
罗群
李江雄
柯映林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN202211504583.2A priority Critical patent/CN115752295A/zh
Publication of CN115752295A publication Critical patent/CN115752295A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)

Abstract

本发明公开了一种线激光轮廓仪自动手眼标定方法,包括采用预标定的方法获得设备与线激光轮廓仪大致手眼关系后,利用获得的数据自动生成设备标定扫描姿态,同时针对手眼标定过程中需要依靠人眼判断标定球球心正负位置这一容易引入错误的手动流程,建立了相关的姿态自动生成模型,可以通过设备离线编程的方法实现正负区域覆盖自动化预先判定,同时引入点云语义分割方法实现球区域激光点自动快速准确提取,大大降低人工操作介入。该方法能够大大提升手眼标定效率并促使手眼标定这一强依赖人工经验的工序变得流程化、自动化,同时能够有效提升手眼标定精度,对于研究手眼标定过程中误差传递规律以及优化手眼标定方法也具有重要意义。

Description

一种线激光轮廓仪自动手眼标定方法
技术领域
本发明涉及手眼标定技术领域,具体涉及一种线激光轮廓仪自动手眼标定方法。
背景技术
线激光轮廓仪在工业三维测量,缺陷和异常检测等三维视觉扫描领域有重要作用。线激光轮廓仪本身可以提供精度较高的二维测量轮廓线数据,但如果需要获得精度较高的三维扫描点云数据则依赖于执行机构的运动精度以及线激光轮廓仪与执行机构末端之间的刚体变换关系,即需要获得手眼关系。
在线激光轮廓仪手眼标定时需要依据扫描数据获得空间中一个固定点,并构建扫描数据与被测点的空间位置运算矩阵来求解手眼变换矩阵。目前求解手眼变换矩阵分为分步求解法、同步求解法与迭代求解法。这三类方法各有优劣,然而无论采用哪种方法去求解手眼变换矩阵,目前都是采用手动调整机器人或机床至若干个姿态进行数据采集。
手动调整姿态时容易出现两两位置姿态之间差异性不大以及超出线激光扫描仪测量范围的问题,同时难以更全面覆盖机器人或机床的运动范围,并且采用手动调整姿态的方式需要耗费大量时间。此外标定时需要扫描一个特定对象,常见的被扫描对象包括哑光陶瓷标定球,标定圆锥和标其他形状的标定块。
采用标定球可以利用多个扫描点的数据,最大限度减少扫描随机误差,然而利用标定球标定需要用肉眼判断拟合圆心在线激光轮廓仪测量坐标系下的正负,这给标定人员提出了较高要求。此外,需要从扫描得到的轮廓线中分割出扫描在球上的区域进行圆拟合,由于轮廓线上有大量点位于标定球区域以外,需要手工选点,这大大降低了标定效率。同时对于线激光轮廓仪进行再次标定时,需要将以上繁琐的步骤重新重复,这要求标定人员具有丰富和熟练的机器人和机床操作经验以及点云数据处理经验。并且在一次标定中需要处理如此大规模的数据,难免出错,从而影响标定结果。
随着工业4.0时代的到来与人工智能技术的发展,给设备智能化与自动化增添了更多可能。针对手眼标定过程中大规模手工数据的处理以及扫描姿态靠经验选择的局面应该被改变,因此十分有必要采用一套自动处理方法与装置以实现线激光轮廓仪手眼标定自动化和少人化甚至无人化。
发明内容
本发明的目的在于提供一种线激光轮廓仪自动手眼标定方法,该方法能够实现线激光轮廓仪采集点云数据的自动化处理以及设备标定扫描姿态的自动生成,解决机器人手眼标定过程中大量人为干预带来的标定效率低,精度差的问题。
一种线激光轮廓仪自动手眼标定方法,包括以下步骤:
步骤1:将标定球放置线激光轮廓仪测量视场内,通过手动调节设备姿态,确保线激光轮廓仪激光线能够覆盖标定球面中心区域,确认此时标定球球心在激光轮廓仪测量坐标系下的正负,即依据标定球球心在线激光轮廓仪测量坐标系Y轴正方向还是负方向上来判断标定球球心的正负,采集此时激光线的数据和设备的姿态;
步骤2:手动调整设备至若干个姿态,重复步骤1,记录相应的数据;
步骤3:对采集得到的激光线数据进行批量圆拟合处理,获得拟合圆的圆心和半径,并根据标定球的半径Rno计算球心此时在激光轮廓仪测量坐标系下的球心坐标;
步骤4:依据步骤1采集得到的设备的位置数据与步骤3计算得到的球心坐标,算得预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp
步骤5:依据步骤4计算得到的预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp,以及线激光轮廓仪的横向和纵向扫描范围,自动计算获得多组设备的具有差异的平移扫描姿态(保证轮廓仪的中心区域范围覆盖标定球,以及在轮廓仪测量精度较好的视场范围内进行扫描),并反解得到设备的运动关节参数,确保姿态不具有奇异性以及激光线覆盖球面区域的正确性;
步骤6:依据步骤4计算得到的预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp,以及线激光轮廓仪的横向和纵向扫描范围,计算多组设备的具有差异的旋转平移扫描姿态,并反解得到设备的运动关节参数,确保姿态不具有奇异性以及激光线覆盖球面区域的正确性;
步骤7:将步骤5和步骤6计算得到的设备姿态输入运动控制装置,驱动设备运动至目标位置并在各个姿态下采集激光线数据;
步骤8:重复步骤3,分别计算每个姿态下激光轮廓仪测量坐标系下的球心平均坐标,并计算线激光轮廓仪的平移手眼关系矩阵与旋转手眼关系矩阵,并将二者合并获得最终的设备与线激光轮廓仪的手眼关系矩阵MF,同时计算各扫描姿态对应标定球中心PF,评价标定误差。
作为优选,步骤1中在每个姿态下采集多根激光线数据,并在步骤3中利用多根激光线数据计算平均球心坐标。该方案以减小非接触测量中的测量点随机噪声误差。
作为优选,步骤2中所述若干个姿态之间的平移量与旋转量存在差异。
两两姿态之间的应该确保平移量与旋转量有显著差异。由于步骤1~2是为了预标定手眼关系以及标定球的球心位置,因此往往只需要移动5~6个具有显著差异的姿态,这对于操作人员而言比较简便快捷。
作为优选,步骤3具体为:对每一根采集得到的激光线,用训练好的点云语义分割网络去除采集的激光线非球区域激光点,对剩余的点进行圆拟合,获得拟合圆的圆心和半径,并根据标定球的半径Rno计算球心此时在激光轮廓仪测量坐标系下的球心坐标。
分割方法包括对线激光轮廓仪采集得到的激光点数据进行标注,其中在球区域的激光点标注为标签1,非球区域的激光点标注为标签0,将扫描激光线样本送入点云语义分割深度学习网络进行训练。将训练得到的神经网络进行部署,可用于对采集得到的轮廓线数据进行批量圆拟合处理以及预览当前激光线覆盖的球面圆半径。
进一步地,采用最小二乘法拟合圆,对于所有用于拟合圆的点PF={pi=(xi,zi)|i=1,2,...,n},最终拟合圆的方程为R2=(x-A)2+(y-B)2,拟合公式为:
Figure BDA0003967712820000041
Figure BDA0003967712820000042
采用RANSAC法实现最小二乘圆拟合,每次从PF={pi=(xi,zi)|i=1,2,...,n}抽取s个数据点采用上述圆拟合方法进行圆拟合,将拟合得到的圆来计算所有待拟合点到其的距离,若距离小于t则为内点,大于t则为外点。所有的内点构成一致性集合Si,选取点数最多的一致性集合Si并基于上述的最小二乘圆拟合法获得拟合的圆。
进一步地,所述球心坐标(xb,yb,zb)计算公式如下,
Figure BDA0003967712820000043
其中球心坐标正负号判断依据步骤1所示方法判断。
进一步地,对任意一个采集姿态,往往采集多条轮廓线进行圆拟合,对最终算得的球心坐标集合Sc={pi=(xbi,ybi,zbi)|i=1,2...,n}球圆中心点均值,即:
Figure BDA0003967712820000044
进一步地,线激光轮廓仪在采集数据时,往往有大量数据点在标定球区域以外,而覆盖在标定球上边缘的激光点测量精度往往也不高,需要去除。传统方法采用人工框选的方法去除标定球区域以外的点,这样的方法效率低,且准确性不高。本发明利用点云数据语义分割网络,预先对球区域轮廓点进行标注。对于一条激光轮廓线包含的轮廓点PT={pi=(xi,zi)|i=1,2,...,m}。在标定过程中,由于部分区域超过激光轮廓仪量程,因此采集的每条轮廓线包含的激光点数目都不同,在训练时,需要将所有轮廓线补齐为同样数目的点,补齐点的标签都标注为0,由于补齐点需要参与归一化,因此补齐点的坐标值不可太偏离平均值,否则会把整体数据偏移至一个非常小的范围,影响网络收敛,所以补齐点坐标均设置为(-199,-1)。补齐后的轮廓线包含的轮廓点以及标注标签可表示为:
PT={pi=(xi,zi,li)|i=1,2,...,m;pi=(-199,-1,0)|i=m+1,...,m0},m<m0,li=0或1,
其中m0为逐条轮廓线上轮廓点的数目。
在训练前,需要轮廓线上的点进行归一化,对于一个样本内的点云数据PT={pi=(xi,yi,zi)|i=1,2,...,m},则归一化后的点云数据为:
Figure BDA0003967712820000051
在推理时,部署的深度神经网络可以输出逐条轮廓线逐点的语义标签。其中语义标签为1的点即为球区域的点。
进一步地,采用深度学习语义分割的方法提取球区域点运算速度高,处理1280个点用时小于10ms,可用于轮廓线球区域提取实时预览,便于在标定过程中观察采集姿态是否合理。同时对于球区域点分割准确率高达99.5%,满足基于轮廓线提取球区域激光点的工程需求。
作为优选,步骤4中具体采用同步最小二乘标定法或分步最小二乘标定法算得预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp
同步最小二乘标定法数据采集简单,但也有可能引入正则化误差,采用同步最小二乘标定法进行标定公式如下:
对于机器人或机床在扫描标定球时,其末端工具坐标系姿态为Poi=[Rfi Tfi]与标定球球心为Obi=[xbi ybi zbi]T,设Mt=[r1,r2,r3,Ts]令:
Figure BDA0003967712820000052
b=[Tf2-Tf1 ... Tfn-Tf1],
则:
Mt=(ATA)-1ATb,
Figure BDA0003967712820000053
步骤4也可以利用分步最小二乘标定法,这种方法需要首先保持机器人或机床旋转姿态不变,平移机器人或机床到若干位置,采集若干组数据,用于计算手眼关系的旋转姿态矩阵。再将机器人采用类似步骤1的同步最小二乘法移动至若干有显著差异的姿态。相比于同步最小二乘标定法,这种方法不需要去正交化矩阵,不会引入正交误差,同时对于姿态的选择没有同步最小二乘法要求苛刻。但这种方法需要采集两组数据,操作上更复杂。在实际标定过程中可以依据标定人员习惯选择相应的方法。分步最小二乘标定法公式如下。首先平移扫描标定球,获得姿态Poi=[Rfi Tfi]与标定球球心为Obi=[xbi ybi zbi]T。其中由于是平移扫描,所有姿态的Rfi都相同,设Ro=Rfi,设A=[Ob1-Ob2 Ob1-Ob3 ... Ob1-Obn],
Figure BDA0003967712820000065
设UΛVT=ABT,那么手眼标定旋转矩阵可计算为:
Rs=VUT
接下来改变任意姿态进行扫描,获得姿态Poi=[Rfi Tfi]与标定球球球心坐标Obi=[xbi ybi zbi]T
设:
C=[Rf1-Rf2 Rf1-Rf3 ... Rf1-Rfn],
D=[RBE2RsOb2-Rf1RsOb1+Tf2-Tf1 Rf3RsOb3-Rf1RsOb1+Tf3-Tf1 ... RfnRsObn-Rf1RsOb1+Tfn-Tf1]
则:
Ts=(CTC)-1CTD,
Figure BDA0003967712820000061
进一步地,计算出手眼关系矩阵Mp后,可以进一步计算所有扫描姿态对应的标定球球心在机床坐标系下的位置Ppi,计算公式如下:
Figure BDA0003967712820000062
其中还可以计算所有姿态对应的Pp的标准差,计算公式如下:
Figure BDA0003967712820000063
其中,
Figure BDA0003967712820000064
根据工程经验,如果标准差Ep<2,可以用于后续的计算,否则说明记录的数据存在错误或选择的机器人或机床姿态不正确。
作为优选,步骤5中计算超过50组设备的具有差异的平移扫描姿态,步骤6中计算超过50组设备的具有差异的旋转平移扫描姿态。
进一步地,平移扫描姿态生成方法,包括利用步骤4获得的Pp为原点,平行于设备基坐标系建立标定球坐标系XpYpZp,并选择若干组激光线与标定球相交圆的半径Rsc={ri|i=1,2,...,n},以ri为半径构建以Pp为圆心的球并在球上任选一点Psi,根据线激光轮廓仪测量范围沿Zp轴将点Psi平移至Qsi,以Qsi为原点,
Figure BDA0003967712820000071
Figure BDA0003967712820000072
为Y轴构建一个笛卡尔坐标系XiYiZi,其姿态可表示为Csi,并可以依据线激光轮廓仪的测量范围将XiYiZi沿其Xi,Zi轴平移至Xi'Yi'Zi'(Csi')与Xi”Yi”Zi”(Csi”)并确保坐标系之间具有显著差异。之后依据步骤4算得的预标定手眼关系矩阵Mp,可计算得到机器人末端工具坐标系姿态Poi=CsiM-1 p。依据算得的姿态Po和机器人或机床的D-H参数即可反解得到相应运动关节参数。
旋转平移扫描姿态生成方法,包括以步骤4获得的Pp为原点,平行于设备基坐标系建立标定球坐标系XpYpZp,并选择若干组激光线与标定球相交圆的半径Rsc={ri|i=1,2,...,n},以ri为半径构建以Pp为圆心的球并在球上任选一点Psi,根据线激光轮廓仪测量范围沿Zp轴将点Psi平移至Qsi,以Qsi为原点,
Figure BDA0003967712820000073
Figure BDA0003967712820000074
为Y轴构建一个笛卡尔坐标系XiYiZi,其姿态可表示为Csi,为了获得与Csi在旋转姿态上有显著差异的姿态,可以将PpPs1以Pp为圆心绕Xp,Yp,Zp轴旋转以获得
Figure BDA0003967712820000075
并可以依据线激光轮廓仪的测量范围将XiYi Zi沿其Xi,Zi轴平移至Xi'Yi'Zi'(Csi')与Xi”Yi”Zi”(Csi”)并确保坐标系之间具有显著差异。之后依据步骤4算得的预标定手眼关系矩阵Mp,可计算得到机器人末端工具坐标系姿态Poi=CsiM-1 p。依据算得的姿态Po和机器人或机床的D-H参数即可反解得到相应运动关节参数。
作为优选,步骤7在实施过程中若不能保证步骤5和步骤6中激光线覆盖球面区域的正确性,则按照步骤1~4进行再次预标定。
在实施步骤7过程中,需要保证步骤5和步骤6中激光线覆盖球面区域的正确性,包括应该确保激光线实际覆盖球面区域的正负性与步骤5和步骤6的计算结果一致,并保证激光线覆盖在球面区域。如果覆盖球面区域正负性不能保证,则说明步骤4中计算的Mp和Pp与真实值偏差较大,则说明有数据记录错误或姿态选择不合适,应该按照步骤1~4进行再次预标定。
进一步地,步骤7具体通过离线编程的方式将步骤5和步骤6计算得到的设备姿态输入运动控制装置,在驱动设备运动至目标位置时,由于运动控制装置存在定位误差,采用离线编程方法驱动机器人或机床移动到的位置与目标位置往往有轻微差异,此时应该重新读取机床或机器人当前工具坐标系姿态。
作为优选,若线激光轮廓仪需要重新标定时,依据步骤7将设备挪至目标位置,并调整标定球位置,重复步骤5~8实现线激光轮廓仪自动手眼快速重标定。
当线激光轮廓仪位置改变不大但需要重新标定时,只需依据步骤7将设备通过离线编程的方式挪至目标位置,并调整标定球位置,确保当前激光线与标定球相交圆直径与计算值接近且正负性一致,即可重复步骤5~8实现线激光轮廓仪快速重标定。
进一步地,步骤8中具体采用分步最小二乘法计算线激光轮廓仪的平移手眼关系矩阵与旋转手眼关系矩阵,计算球心平均坐标以及分步最小二乘法公式与步骤4公式类似。
进一步地,步骤8完成后计算各扫描姿态对应标定球中心PF,评价标定误差。标定误差评价往往会采用测试集进行验证,即抽取部分姿态不参与最小二乘计算,而用来验证标定球中心偏差。类似步骤4计算球中心点标准差来评价标定准确率。
本发明的有益效果:
本发明能够实现线激光轮廓仪采集点云数据自动化处理以及设备标定扫描姿态的自动生成,有效解决机器人手眼标定过程中需依靠人眼判断扫描区域正负的问题,能够降低数据记录错误率,提升标定效率。同时能够快速生成大量有显著性差异的标定姿态,可以让标定误差下降60%以上。
附图说明
图1为线激光轮廓仪扫描标定球的装置图;
图2为本发明自动手眼标定方法流程图;
图3为点云分割网络训练部署与圆分割拟合球心计算流程图;
图4(a)为平移扫描姿态生成原理图,图4(b)为旋转平移扫描姿态生成原理图;
图5为本发明方法标定偏差与扫描次数关系图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明所提出的方法可用于六自由度工业机器人1以及六自由度数控机床4的末端执行装置5,如图1所示,哑光陶瓷标定球3放置于线激光轮廓仪2视场范围内,在选择摆放位置时可以通过调节六自由度工业机器人1或六自由度数控机床5来调节哑光陶瓷标定球3的位置。在整个标定过程中应该保证哑光陶瓷标定球3位置固定不变。
如图2所示,该标定方法分为预标定阶段(步骤1~4)与自动标定阶段(步骤5~8)。其中预标定阶段是通过手动移动机器人或机床至少量姿态来获得一个精度不太高的但可以用于后续计算机器人或机床姿态的标定结果,而自动标定阶段则利用预标定结果生成的大量姿态去采集更多数据以实现标定结果的优化。在自动标定阶段,由于采集姿态以及球中心点的正负性可通过计算获得,因此不需要类似预标定阶段依靠人眼判断球中心点正负性以及考虑下一个姿态应该如何移动,这可以大大提高标定效率。但是在自动标定前应该依靠仿真或预走姿态的方法判断检查确保姿态不具有奇异性以及激光线覆盖球面区域的正确性,若有异常则应该再次进行预标定。各步骤如下:
步骤1:将哑光陶瓷标定球放置线激光轮廓仪测量视场内,通过手动调节机器人或机床姿态,确保线激光轮廓仪激光线能够覆盖哑光陶瓷标定球面中心区域,确认此时标定球球心在激光轮廓仪测量坐标系下的正负,即依据标定球球心在线激光轮廓仪测量坐标系Y轴正方向还是负方向上来判断标定球球心的正负。采集此时激光线的数据和机器人或机床工具坐标系的姿态。
步骤2:手动调整机器人或机床至较少个差异较大姿态,重复步骤1,记录相应的数据。差异较大的姿态即姿态之间的平移量与旋转量差异较大。
步骤3:对每一根采集得到的激光线,用训练好的点云语义分割网络去除采集的激光轮廓线非球区域激光点,对剩余的点进行圆拟合,获得拟合圆的圆心和半径,并根据哑光陶瓷标定球的名义半径Rno计算球心此时在激光轮廓仪测量坐标系下的球心坐标。分割方法包括对线激光轮廓仪采集得到的激光点数据进行标注,其中在球区域的激光点标注为标签1,非球区域的激光点标注为标签0,将扫描激光线样本送入点云语义分割深度学习网络进行训练。将训练得到的神经网络进行部署,可用于对采集得到的轮廓线数据进行批量圆拟合处理以及预览当前激光线覆盖的球面圆半径。
如图3所示,点云分割网络训练部署与圆分割拟合球心计算包括网络训练阶段与推理阶段。在训练阶段,首先需要进行S400步骤,轮廓线数据标注。对所有采集到的有效数据,标注其中位于标定球上的激光点为标签1,非球区域的激光点标注为标签0。对于一条激光轮廓线包含的轮廓点PT={pi=(xi,zi)|i=1,2,...,m},在标定过程中,由于部分区域超过激光轮廓仪量程,因此采集的每条轮廓线包含的激光点数目都不同,在训练时,需要将所有轮廓线补齐为同样数目的点,补齐点的标签都标注为0,坐标均为(-199,-1),由于补齐点需要参与归一化,因此补齐点的坐标值不可太偏离平均值,否则会把整体数据偏移至一个非常小的范围,影响网络收敛。补齐后的轮廓线包含的轮廓点以及标注标签可表示为:
PT={pi=(xi,zi,li)|i=1,2,...,m;pi=(-199,-1,0)|i=m+1,...,m0},m<m0,li=0或1,
其中m0为逐条轮廓线上轮廓点的数目。
在训练前,需要轮廓线上的点进行归一化,对于一个样本内的点云数据PT={pi=(xi,yi,zi)|i=1,2,...,m},则归一化后的点云数据为:
Figure BDA0003967712820000101
在完成数据前处理后即可执行S402步骤,将带标签的轮廓点数据送入点云语义分割深度神经网络中进行训练。此处推荐采用轻量化的PointNet,由于该任务是二分类任务,可以采用轻量化的深度神经网络进行训练。训练好的网络需要进行S404网络部署,可将其采用Libtorch,TensorRT等框架部署至本地、终端或服务器。
在推理阶段,即在标定过程中首先执行S406步骤采集轮廓线数据,接下来类似训练阶段的对轮廓线数据进行补齐与归一化操作对每一根采集得到的激光线进行S408步骤补齐与前处理。之后执行S410步骤进行球区域点提取,即用部署的点云语义分割网络去除采集激光轮廓线非球区域激光点,对剩余的点进行S412步骤圆拟合与球心计算,获得拟合圆的圆心和半径。对于所有用于拟合圆的点PF={pi=(xi,zi)|i=1,2,...,n},最终拟合圆的方程为(x-A)2+(y-B)2=R2,拟合公式为:
Figure BDA0003967712820000111
Figure BDA0003967712820000112
采用RANSAC法进行圆拟合,每次从PF={pi=(xi,zi)|i=1,2,...,n}抽取s个数据点采用上述圆拟合方法进行圆拟合,将拟合得到的圆来计算所有待拟合点到其的距离,若距离小于t则为内点,大于t则为外点。所有的内点构成一致性集合Si,选取点数最多的一致性集合Si采用上述的最小二乘圆拟合公式获得拟合的圆。
根据哑光陶瓷标定球的名义半径Rno计算球心此时在激光轮廓仪测量坐标系下的球心坐标。球心坐标(xb,yb,zb)计算公式如下,
Figure BDA0003967712820000113
其中球心坐标正负号在预标定阶段需要依据人眼判断,在自动标定阶段则依据离线编程计算结果预判。
步骤4:依据步骤1采集得到的机器人或机床的位置数据与步骤3计算得到的激光轮廓仪测量坐标系下的球心坐标,采用同步标定最小二乘法算得预标定手眼关系矩阵Mp与哑光陶瓷标定球在机器人坐标系下的中心位置Pp
步骤5:依据步骤4计算得到的预标定手眼关系矩阵Mp与哑光陶瓷标定球在机器人坐标系下的中心位置Pp,以及线激光轮廓仪的横向和纵向扫描范围,计算尽可能多(大于50)组机器人或机床的平移扫描姿态(保证轮廓仪的中心区域范围覆盖标定球,以及在轮廓仪测量精度较好的视场范围内进行扫描),并反解得到机器人或机床的运动关节参数,确保姿态不具有奇异性以及激光线覆盖球面区域的正确性。
如图4(a)所示,首先利用图2步骤4获得的Pp为原点,平行于机器人或机床基坐标系建立标定球坐标系XpYpZp,并选择若干组激光线与哑光陶瓷标定球相交圆的半径Rsc={ri|i=1,2,...,n}(图4(a)中以r1,r2为例),以ri为半径构建以Pp为圆心的球并在球上任选一点Psi,根据线激光轮廓仪测量范围沿Zp轴将点Psi平移至Qsi,以Qsi为原点,
Figure BDA0003967712820000121
Figure BDA0003967712820000122
为Y轴构建一个笛卡尔坐标系XiYi Zi,其姿态可表示为Csi,并可以依据线激光轮廓仪的测量范围将XiYi Zi沿其Xi,Zi轴平移至Xi'Yi'Zi'(Csi')与Xi”Yi”Zi”(Csi”)并确保坐标系之间具有显著差异,平移关系可表达为:
Figure BDA0003967712820000123
Cs'i=Trans(x1,0,z1)Csi,
Cs”i=Trans(x2,0,z2)Csi,
其中|x1|,|x2|,|z1|,|z2|>0,且依据线激光轮廓仪的纵向和横向测量范围选择合适的值。
之后依据步骤4算得的预标定手眼关系矩阵Mp,可计算得到机器人末端工具坐标系姿态,即:
Figure BDA0003967712820000124
其中Po1,Po2对应的姿态扫描得到的轮廓线解算出来的圆心Y坐标为负,以Po3,Po4对应的姿态Poi扫描得到的轮廓线解算出来的圆心Y坐标为正。依据算得的姿态Po和机器人或机床的D-H参数即可反解得到相应运动关节参数。
值得注意的是,在选择Qsi时,应该根据线激光轮廓仪的量程范围确保Csi扫描标定球时保证标定球位于量程正中心,在后续对Csi进行平移时能够最大限度保证标定球依然位于轮廓仪高精度扫描范围内。
步骤6:依据步骤4计算得到的预标定手眼关系矩阵Mp与哑光陶瓷标定球在机器人坐标系下的中心位置Pp,以及线激光轮廓仪的横向和纵向扫描范围,计算尽可能多(大于50)组机器人或机床的平移旋转扫描姿态,并反解得到机器人或机床的运动关节参数,确保姿态不具有奇异性以及激光线覆盖球面区域的正确性。
如图4(b)所示,以步骤4获得的Pp为原点,平行于机器人或机床基坐标系建立标定球坐标系XpYpZp,并选择若干组激光线与哑光陶瓷标定球相交圆的半径Rsc={ri|i=1,2,...,n}(图4(b)中以r1为例),以ri为半径构建以Pp为圆心的球并在球上任选一点Psi,根据线激光轮廓仪测量范围沿Zp轴将点Psi平移至Qsi,以Qsi为原点,
Figure BDA0003967712820000131
Figure BDA0003967712820000132
为Y轴构建一个笛卡尔坐标系XiYi Zi,其姿态可表示为Csi,为了获得与Csi在旋转姿态上有显著差异的姿态,可以将图中
Figure BDA0003967712820000133
以Pp为圆心绕Xp,Yp,Zp轴旋转以获得
Figure BDA0003967712820000134
可表示为:
Figure BDA0003967712820000135
Figure BDA0003967712820000136
Figure BDA0003967712820000137
其中|α2|,|α3|,|β2|,|β3|,|γ2|,|γ3|>0,且依据线激光轮廓仪的纵向和横向测量范围选择合适的值。
此外可以依据线激光轮廓仪的测量范围将XiYi Zi(Csi)沿其Xi,Zi轴平移至Xi'Yi'Zi'(Csi')与Xi”Yi”Zi”(Csi”)并确保坐标系之间具有显著差异。平移关系可表达为:
Figure BDA0003967712820000138
Cs'i=Trans(x1,0,z1)Csi,
Cs”i=Trans(x2,0,z2)Csi,
其中|x1|,|x2|,|z1|,|z2|>0,且依据线激光轮廓仪的纵向和横向测量范围选择合适的值。
之后依据步骤4算得的预标定手眼关系矩阵Mp,可计算得到机器人末端工具坐标系姿态,即:
Figure BDA0003967712820000141
其中Po1,Po2对应的姿态扫描得到的轮廓线解算出来的圆心Y坐标为正,Po3对应的姿态扫描得到的轮廓线解算出来的圆心Y坐标为负。依据算得的姿态Po和机器人或机床的D-H参数即可反解得到相应运动关节参数。
值得注意的是,在选择Qsi时,应该根据线激光轮廓仪的量程范围确保Csi扫描标定球时保证标定球位于量程正中心,在后续对Csi进行平移和旋转时能够最大限度保证标定球依然位于轮廓仪高精度扫描范围内。
步骤7:通过离线编程的方式将步骤5和步骤6计算得到的机器人或机床姿态输入运动控制装置,驱动机器人或机床运动至目标位置并在各个姿态下采集激光线数据。
步骤8:重复步骤3,分别计算每个姿态下激光轮廓仪测量坐标系下的球心平均坐标,并使用分步最小二乘法计算线激光轮廓仪的平移手眼关系矩阵与旋转手眼关系矩阵,并将二者合并获得最终的机器人或机床与线激光轮廓仪的手眼关系矩阵MF。同时计算各扫描姿态对应标定球中心PF,并评价标定误差。
如图5所示,相比于只进行预标定(扫描次数为10),采用自动化标定方法大量生成扫描姿态,最终标定误差可以下降60%以上,表明自动化标定方法可以大大提升标定效率的同时,也能大大提升手眼标定精度。
尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种线激光轮廓仪自动手眼标定方法,其特征在于,包括以下步骤:
步骤1:将标定球放置线激光轮廓仪测量视场内,通过手动调节设备姿态,确保线激光轮廓仪激光线能够覆盖标定球面中心区域,确认此时标定球球心在激光轮廓仪测量坐标系下的正负,采集此时激光线的数据和设备的姿态;
步骤2:手动调整设备至若干个姿态,重复步骤1,记录相应的数据;
步骤3:对采集得到的激光线数据进行批量圆拟合处理,获得拟合圆的圆心和半径,并根据标定球的半径Rno计算球心此时在激光轮廓仪测量坐标系下的球心坐标;
步骤4:依据步骤1采集得到的设备的位置数据与步骤3计算得到的球心坐标,算得预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp
步骤5:依据步骤4计算得到的预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp,以及线激光轮廓仪的横向和纵向扫描范围,自动计算获得多组设备的具有差异的平移扫描姿态,并反解得到设备的运动关节参数;
步骤6:依据步骤4计算得到的预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp,以及线激光轮廓仪的横向和纵向扫描范围,计算多组设备的具有差异的旋转平移扫描姿态,并反解得到设备的运动关节参数;
步骤7:将步骤5和步骤6计算得到的设备姿态输入运动控制装置,驱动设备运动至目标位置并在各个姿态下采集激光线数据;
步骤8:重复步骤3,分别计算每个姿态下激光轮廓仪测量坐标系下的球心平均坐标,并计算线激光轮廓仪的平移手眼关系矩阵与旋转手眼关系矩阵,并将二者合并获得最终的设备与线激光轮廓仪的手眼关系矩阵MF
2.根据权利要求1所述的线激光轮廓仪自动手眼标定方法,其特征在于,步骤1中在每个姿态下采集多根激光线数据,并在步骤3中利用多根激光线数据计算平均球心坐标。
3.根据权利要求1所述的线激光轮廓仪自动手眼标定方法,其特征在于,步骤2中所述若干个姿态之间的平移量与旋转量存在差异。
4.根据权利要求1所述的线激光轮廓仪自动手眼标定方法,其特征在于,步骤3具体为:对每一根采集得到的激光线,用训练好的点云语义分割网络去除采集的激光线非球区域激光点,对剩余的点进行圆拟合,获得拟合圆的圆心和半径,并根据标定球的半径Rno计算球心此时在激光轮廓仪测量坐标系下的球心坐标。
5.根据权利要求1所述的线激光轮廓仪自动手眼标定方法,其特征在于,步骤4中具体采用同步最小二乘标定法或分步最小二乘标定法算得预标定手眼关系矩阵Mp与标定球在设备坐标系下的中心位置Pp
6.根据权利要求1所述的线激光轮廓仪自动手眼标定方法,其特征在于,步骤5中计算超过50组设备的具有差异的平移扫描姿态,步骤6中计算超过50组设备的具有差异的旋转平移扫描姿态。
7.根据权利要求1所述的线激光轮廓仪自动手眼标定方法,其特征在于,步骤7在实施过程中若不能保证步骤5和步骤6中激光线覆盖球面区域的正确性,则按照步骤1~4进行再次预标定。
8.根据权利要求1所述的线激光轮廓仪自动手眼标定方法,其特征在于,若线激光轮廓仪需要重新标定时,依据步骤7将设备挪至目标位置,并调整标定球位置,重复步骤5~8实现线激光轮廓仪自动手眼快速重标定。
CN202211504583.2A 2022-11-28 2022-11-28 一种线激光轮廓仪自动手眼标定方法 Pending CN115752295A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211504583.2A CN115752295A (zh) 2022-11-28 2022-11-28 一种线激光轮廓仪自动手眼标定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211504583.2A CN115752295A (zh) 2022-11-28 2022-11-28 一种线激光轮廓仪自动手眼标定方法

Publications (1)

Publication Number Publication Date
CN115752295A true CN115752295A (zh) 2023-03-07

Family

ID=85339802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211504583.2A Pending CN115752295A (zh) 2022-11-28 2022-11-28 一种线激光轮廓仪自动手眼标定方法

Country Status (1)

Country Link
CN (1) CN115752295A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117073582A (zh) * 2023-09-12 2023-11-17 梅卡曼德(北京)机器人科技有限公司 线激光轮廓仪系统的标定方法、装置和电子设备
CN117073581A (zh) * 2023-09-12 2023-11-17 梅卡曼德(北京)机器人科技有限公司 线激光轮廓仪系统的标定方法、装置和电子设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117073582A (zh) * 2023-09-12 2023-11-17 梅卡曼德(北京)机器人科技有限公司 线激光轮廓仪系统的标定方法、装置和电子设备
CN117073581A (zh) * 2023-09-12 2023-11-17 梅卡曼德(北京)机器人科技有限公司 线激光轮廓仪系统的标定方法、装置和电子设备
CN117073582B (zh) * 2023-09-12 2024-01-26 梅卡曼德(北京)机器人科技有限公司 线激光轮廓仪系统的标定方法、装置和电子设备
CN117073581B (zh) * 2023-09-12 2024-01-26 梅卡曼德(北京)机器人科技有限公司 线激光轮廓仪系统的标定方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN111775146B (zh) 一种工业机械臂多工位作业下的视觉对准方法
CN110370286B (zh) 基于工业机器人和单目相机的定轴运动刚体空间位置识别方法
CN115752295A (zh) 一种线激光轮廓仪自动手眼标定方法
CN110421562B (zh) 基于四目立体视觉的机械臂标定系统和标定方法
CN110238845B (zh) 最优标定点选取和误差自测量的自动手眼标定方法及装置
CN111775152B (zh) 基于三维测量引导机械臂抓取散乱堆叠工件的方法及系统
CN110014426B (zh) 一种利用低精度深度相机高精度抓取形状对称工件的方法
CN110103217B (zh) 工业机器人手眼标定方法
CN107214703B (zh) 一种基于视觉辅助定位的机器人自标定方法
CN107175660B (zh) 一种基于单目视觉的六自由度机器人运动学标定方法
CN106091922A (zh) 一种对工件进行检测的方法及装置
CN110936378B (zh) 一种基于增量补偿的机器人手眼关系自动标定方法
CN109631912B (zh) 一种深空球形目标被动测距方法
KR20190070875A (ko) 비전-기반 조작 시스템들의 교정 및 동작
TWI493153B (zh) 非接觸式物件空間資訊量測裝置與方法及取像路徑的計算方法
US20220230348A1 (en) Method and apparatus for determining a three-dimensional position and pose of a fiducial marker
CN112648934A (zh) 一种自动化弯管几何形态检测方法
CN107471257A (zh) 基于单拉线编码器的机器人几何标定方法
CN116402792A (zh) 一种基于三维点云的空间孔位对接方法
CN113334380A (zh) 基于双目视觉的机器人视觉标定方法、控制系统及装置
CN111008602B (zh) 一种小曲率薄壁零件用二维和三维视觉结合的划线特征提取方法
CN115284292A (zh) 基于激光相机的机械臂手眼标定方法及装置
CN116026252A (zh) 一种点云测量方法及系统
CN113799130B (zh) 一种人机协作装配中的机器人位姿标定方法
CN112767494A (zh) 基于标定算法的精确测量定位方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination