一种获取机器人TCP坐标的方法和装置制造方法及图纸

技术编号:21428235 阅读:29 留言:0更新日期:2019-06-22 10:49
本发明专利技术实施例提供了一种获取机器人TCP坐标的方法和装置,通过计算将机械臂末端工具上所标记的点在机械臂坐标系下的坐标和在传感器坐标系下的坐标转换到同一个坐标系后的两个坐标之间误差的平方和,并对前后两次的平方和的差值的绝对值和设置的误差阈值进行比较,和/或对根据坐标误差的平方和结合最小二乘法计算所标记的点在机械臂末端坐标系中的当前坐标的计算次数和设定的计算次数阈值进行比较,当前后两次的坐标误差平方和的差值的绝对值小于等于设置的误差阈值和/或计算次数超过设定的计算次数阈值时,将所标记的点在机械臂末端坐标系中的当前坐标设置为TCP的实际坐标,提高了标定TCP坐标的精度。

【技术实现步骤摘要】
一种获取机器人TCP坐标的方法和装置
本专利技术实施例涉及人工智能领域,尤其涉及一种获取机器人TCP坐标的方法和装置。
技术介绍
随着科技的发展,机器人的应用领域越来越广泛。对于高精度加工领域和手术领域这两个应用领域中的机器人来说,其需要完成的工作任务对精度有很高的要求。一般来说,高精度加工机器人和手术机器人在执行工作任务时,均需要在其自身机械臂上加装工具才能完成相关工作。由于机械臂末端坐标系与机械臂坐标系之间的坐标转换关系可以通过DH参数计算得出,其中的误差很小,那么,如何准确得到工具自身坐标系原点(ToolCenterPoint,TCP)在机械臂末端坐标系中的坐标是影响其工作精度的关键因素。目前,TCP在机械臂末端坐标系中的坐标可以通过机械臂末端坐标系结合工具自身的理论尺寸计算或测量得到,其称作TCP的理论坐标。也就是说,当工具装配到机械臂末端后,只能利用TCP的理论坐标来执行工作任务。但是在根据设计图纸对工具进行加工的过程中一般会产生尺寸误差,将工具装配到机械臂末端的过程中可能会产生装配误差,工具受环境的影响也可能产生形变误差,测量过程中也可能产生测量误差等,这些误差均会使TCP在机械臂末端坐标系中的实际坐标与TCP的理论坐标产生偏差,若以TCP的理论坐标对TCP进行标定,那么必然造成所标定的TCP的位置和实际的TCP位置之间产生误差,从而影响机器人的工作精度。
技术实现思路
本申请实施例解决的技术问题之一在于提供一种获取机器人TCP坐标的方法和装置,通过设置计算次数阈值和/或误差阈值,将机器人的机械臂末端工具上所标记的点在机械臂末端坐标系中的坐标产生的误差控制在较小的范围内,从而缩小了机器人在执行工作任务过程中产生误差的范围,进而提高了机器人的工作精度。一方面,本申请实施例提供了一种获取机器人TCP坐标的方法,包括:S100:标记机械臂末端的工具上能够被传感器识别的一个点为TCP,并将TCP的理论坐标设置为所标记的点在机械臂末端坐标系中的当前坐标,设置计算次数阈值并初始化计算次数为0,和/或设置误差阈值并初始化f(TCPx,y,z)past的值为0;S200:根据所标记的点在传感器识别范围内的移动,得到用于建立机械臂坐标系和传感器坐标系之间坐标转换关系的M个位置以及用于采集误差的N个位置,其中,M个位置中至少有三个不共线的位置,M为整数,且M≧3,N为整数,且N≧1;S300:根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,所标记的点在传感器坐标系中的坐标,以及利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系,得到所标记的点在所述N个位置上坐标误差的平方和f(TCPx,y,z)now。S400:当|f(TCPx,y,z)now-f(TCPx,y,z)past|小于等于误差阈值和/或计算次数大于等于计算次数阈值时,执行S600;否则,将计算次数加1和/或将f(TCPx,y,z)now赋值给f(TCPx,y,z)past后执行S500。S500:根据f(TCPx,y,z)now和最小二乘法得到所标记的点在机械臂末端坐标系下的坐标,并将得到的坐标作为所标记的点在机械臂末端坐标系中的当前坐标,执行S300;S600:将所标记的点在机械臂末端坐标系中的当前坐标作为TCP的实际坐标。可选地,利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系步骤包括:将所述M个位置上对应的机械臂末端坐标系与机械臂坐标系之间的坐标转换关系,与所标记的点在机械臂末端坐标系中的当前坐标相结合,得到所标记的点在机械臂坐标系中的M个坐标;根据所标记的点在机械臂坐标系中的M个坐标,以及所标记的点在传感器坐标系中的坐标,得到机械臂坐标系和传感器坐标系之间的坐标转换关系。可选地,根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,所标记的点在传感器坐标系中的坐标,以及利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系,得到所标记的点在所述N个位置上坐标误差的平方和f(TCPx,y,z)now的步骤包括:根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,得到所标记的点在机械臂坐标系中的坐标Ri,根据机械臂坐标系和传感器坐标系之间的坐标转换关系,将所标记的点在机械臂坐标系中的坐标Ri转换到传感器坐标系下得到坐标R′i,比较坐标R′i与所标记的点在传感器坐标系下的坐标Ci,得到所标记的点在N个位置上的坐标误差的平方和,或者,根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,得到所标记的点在机械臂坐标系中的坐标Ri;根据机械臂坐标系和传感器坐标系之间的坐标转换关系,将所标记的点在传感器坐标系中的坐标Ci转换到机械臂坐标系下得到坐标C′i,比较坐标C′i与所标记的点在机械臂坐标系下的坐标Ri,得到所标记的点在N个位置上的坐标误差的平方和,其中,1≦i≦N。可选地,根据f(TCPx,y,z)now和最小二乘法得到所标记的点在机械臂末端坐标系下的坐标的步骤为:根据f(TCPx,y,z)now和非线性最小二乘法,得到所标记的点在机械臂末端坐标系下的坐标。可选地,得到所标记的点在N个位置上的坐标误差的平方和的步骤为:计算所述N个位置中每个位置上,坐标R′i在各个坐标轴上的坐标与坐标Ci在各个坐标轴上的坐标的差值的平方和;将所述N个位置中每个位置上得到的差值的平方和相加,得到所标记的点在N个位置上的坐标误差的平方和,或者,计算所述N个位置中每个位置上,坐标C′i在各个坐标轴上的坐标与坐标Ri在各个坐标轴上的坐标的差值的平方和;将所述N个位置中每个位置上得到的差值的平方和相加,得到所标记的点在N个位置上的坐标误差的平方和。可选地,所述根据f(TCPx,y,z)now和最小二乘法得到所标记的点在机械臂末端坐标系下的坐标的计算公式具体为:另一方面,本申请实施例还提供了一种获取机器人TCP坐标的装置,包括:标记TCP和设置阈值模块,用于标记机械臂末端的工具上能够被传感器识别的一个点为TCP,并将TCP的理论坐标设置为所标记的点在机械臂末端坐标系中的当前坐标,设置计算次数阈值并初始化计算次数为0,和/或设置误差阈值并初始化f(TCPx,y,z)past的值为0;位置获取模块,用于根据所标记的点在传感器识别范围内的移动,得到用于建立机械臂坐标系和传感器坐标系之间坐标转换关系的M个位置以及用于采集误差的N个位置,其中,M个位置中至少有三个不共线的位置,M为整数,且M≧3,N为整数,且N≧1;坐标误差的平方和获取模块,用于根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,所标记的点在传感器坐标系中的坐标,以及利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系,得到所标记的点在所述N个位置上坐标误差的平方和f(TCPx,y,z)now;阈值比较模块,用于比较|f(TCPx,y,z)now-f(TCPx,y,z)past|和误差阈值的大小和比较计算次数和计算次数阈值的大小,并将比较本文档来自技高网...

【技术保护点】
1.一种获取机器人TCP坐标的方法,其特征在于,包括以下:S100:标记机械臂末端的工具上能够被传感器识别的一个点为TCP,并将TCP的理论坐标设置为所标记的点在机械臂末端坐标系中的当前坐标,设置计算次数阈值并初始化计算次数为0,和/或设置误差阈值并初始化f(TCPx,y,z)past的值为0;S200:根据所标记的点在传感器识别范围内的移动,得到用于建立机械臂坐标系和传感器坐标系之间坐标转换关系的M个位置以及用于采集误差的N个位置,其中,M个位置中至少有三个不共线的位置,M为整数,且M≧3,N为整数,且N≧1;S300:根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,所标记的点在传感器坐标系中的坐标,以及利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系,得到所标记的点在所述N个位置上坐标误差的平方和f(TCPx,y,z)now。S400:当|f(TCPx,y,z)now‑f(TCPx,y,z)past|小于等于误差阈值和/或计算次数大于等于计算次数阈值时,执行S600;否则,将计算次数加1和/或将f(TCPx,y,z)now赋值给f(TCPx,y,z)past后执行S500。S500:根据f(TCPx,y,z)now和最小二乘法得到所标记的点在机械臂末端坐标系下的坐标,并将得到的坐标作为所标记的点在机械臂末端坐标系中的当前坐标并执行S300;S600:将所标记的点在机械臂末端坐标系中的当前坐标作为TCP的实际坐标。...

【技术特征摘要】
1.一种获取机器人TCP坐标的方法,其特征在于,包括以下:S100:标记机械臂末端的工具上能够被传感器识别的一个点为TCP,并将TCP的理论坐标设置为所标记的点在机械臂末端坐标系中的当前坐标,设置计算次数阈值并初始化计算次数为0,和/或设置误差阈值并初始化f(TCPx,y,z)past的值为0;S200:根据所标记的点在传感器识别范围内的移动,得到用于建立机械臂坐标系和传感器坐标系之间坐标转换关系的M个位置以及用于采集误差的N个位置,其中,M个位置中至少有三个不共线的位置,M为整数,且M≧3,N为整数,且N≧1;S300:根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,所标记的点在传感器坐标系中的坐标,以及利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系,得到所标记的点在所述N个位置上坐标误差的平方和f(TCPx,y,z)now。S400:当|f(TCPx,y,z)now-f(TCPx,y,z)past|小于等于误差阈值和/或计算次数大于等于计算次数阈值时,执行S600;否则,将计算次数加1和/或将f(TCPx,y,z)now赋值给f(TCPx,y,z)past后执行S500。S500:根据f(TCPx,y,z)now和最小二乘法得到所标记的点在机械臂末端坐标系下的坐标,并将得到的坐标作为所标记的点在机械臂末端坐标系中的当前坐标并执行S300;S600:将所标记的点在机械臂末端坐标系中的当前坐标作为TCP的实际坐标。2.根据权利要求1所述的一种获取机器人TCP坐标的方法,其特征在于,利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系步骤包括:将所述M个位置上对应的机械臂末端坐标系与机械臂坐标系之间的坐标转换关系,与所标记的点在机械臂末端坐标系中的当前坐标相结合,得到所标记的点在机械臂坐标系中的M个坐标;根据所标记的点在机械臂坐标系中的M个坐标,以及所标记的点在传感器坐标系中的坐标,得到机械臂坐标系和传感器坐标系之间的坐标转换关系。3.根据权利要求1或2所述的一种获取机器人TCP坐标的方法,其特征在于,根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,所标记的点在传感器坐标系中的坐标,以及利用所述M个位置建立的机械臂坐标系和传感器坐标系之间的坐标转换关系,得到所标记的点在所述N个位置上坐标误差的平方和f(TCPx,y,z)now的步骤包括:根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,得到所标记的点在机械臂坐标系中的坐标Ri,根据机械臂坐标系和传感器坐标系之间的坐标转换关系,将所标记的点在机械臂坐标系中的坐标Ri转换到传感器坐标系下得到坐标R′i,比较坐标R′i与所标记的点在传感器坐标系下的坐标Ci,得到所标记的点在N个位置上的坐标误差的平方和,或者,根据所标记的点在机械臂末端坐标系中的当前坐标与机械臂末端坐标系和机械臂坐标系之间的坐标转换关系,得到所标记的点在机械臂坐标系中的坐标Ri,根据机械臂坐标系和传感器坐标系之间的坐标转换关系,将所标记的点在传感器坐标系中的坐标Ci转换到机械臂坐标系下得到坐标C′i,比较坐标C′i与所标记的点在机械臂坐标系下的坐标Ri,得到所标记的点在N个位置上的坐标误差的平方和,其中,1≦i≦N。4.根据权利要求1所述的一种获取机器人TCP坐标的方法,其特征在于,根据f(TCPx,y,z)now和最小二乘法得到所标记的点在机械臂末端坐标系下的坐标的步骤为:根据f(TCPx,y,z)now和非线性最小二乘法,得到所标记的点在机械臂末端坐标系下的坐标。5.根据权利要求3所述的一种获取机器人TCP坐标的方法,其特征在于,得到所标记的点在N个位置上的坐标误差的平方和的步骤为:计算所述N个位置中每个位置上,坐标R′i在各个坐标轴上的坐标与坐标Ci在各个坐标轴上的坐标的差值的平方和;将所述N个位置中每个位置上得到的差值的平方和相加,得到所标记的点在N个位置上的坐标误差的平方和,或者,计算所述N个位置中每个位置上,坐标C′i在各个坐标轴上的坐标与坐标Ri在各个坐标轴上的坐标的差值的平方和;将所述N个位置中每个位置上得到的差值的平方和相加,得到所标记的点在N个位置上的坐标误差的平方和。6.根据权利要求1所述的一种获取机器人TCP坐标的方法,其特征在于,所述根据f(TCPx,y,z)now和最小二乘法得到所...

【专利技术属性】
技术研发人员:宫明波刘达
申请(专利权)人:北京柏惠维康科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1