本发明涉及机器人定位和姿态估计领域,特别是涉及一种基于视觉的机械臂标定方法、装置、设备和介质。
背景技术:
1、标定机械臂的工具中心点(tool center point,tcp)相对于机械臂的最末端法兰的位置是在使用机械臂进行自动化作业时必不可少的一项准备工作。目前,最常用的标定方法是在机械臂可以触及的地方固定一个带有尖端的物体(如标定针),并且在机械臂的末端想要设定为tcp的位置也固定一个带有尖头的物体,然后控制机械臂以四种不同的关节动作姿态去实现固定在机械臂末端的尖状物触碰固定在机械臂外部的尖状物。
2、在上面提到的触碰的过程目前都是通过机器人工程师控制机器人示教器,依赖人的肉眼的识别精度来实现两个尖状物的触碰。这一过程也即是现有机械臂tcp标定的最大缺点,即为完全依赖操作员肉眼的识别来进行的标定,并且由于需要使两个尖状物触碰四次,每次触碰人肉眼的识别误差会在标定过程中累加,会严重影响机械臂的tcp标定精度,进而会严重影响后续的机械臂的自动作业的精度。
3、因此,现有技术存在标定过程中会累加识别误差,严重影响机械臂的tcp标定精度,进而影响机械臂自动作业精度的问题。
技术实现思路
1、基于此,本申请目的在于提供一种基于视觉的机械臂标定方法、装置、设备和介质,来解决上述背景技术中提及的至少一个技术问题。
2、第一方面,本申请提供了一种基于视觉的机械臂标定方法,包括:
3、s1:在机械臂末端安装标定物;
4、s2:控制机械臂末端运动至设定位置,记录机械臂的当前位置,并获取标定物在采集模块坐标系下的位置为目标坐标;
5、s3:不断改变机械臂位姿,在不同位姿下使标定物在采集模块坐标系下的目标坐标上,并采集机械臂对应的当前位姿;
6、s4:根据若干组机械臂不同的当前位姿计算得到标定物在机械臂末端坐标系下的位置,完成机械臂tcp标定。
7、进一步的,设定位置处于:
8、采集模块拍摄范围内,且机械臂的关节动作姿态不处于极限位置。
9、进一步的,所述不处于极限位置,具体包括:
10、以基座为中心,1/2机械臂极限长度为半径的范围内。
11、进一步的,步骤s2之后,还包括:
12、判断位姿数量是否大于设定阈值,若小于,返回步骤s3;若大于,执行步骤s4。
13、进一步的,不断改变机械臂的位姿的具体步骤,包括:
14、机械臂每个关节分别旋转不小于15度。
15、进一步的,步骤s4,具体为:
16、通过机械臂末端与机械臂基座之间的位置转换矩阵,得到基坐标系下标定物的位置,完成机械臂tcp标定。
17、进一步的,所述方法还包括:
18、p1:控制机械臂末端运动经过若干设定位置,获取每个位置上标定物在采集模块坐标系和机械臂末端坐标系下的坐标;
19、p2:配准标定物在采集模块坐标系和机械臂末端坐标系下的坐标,得到采集模块坐标系和基坐标系之间的齐次转换矩阵。
20、第二方面,本发明提供一种基于视觉的机械臂标定装置,包括:
21、安装模块,用于在机械臂末端安装标定物;
22、坐标获取模块,与安装模块连接,用于控制机械臂末端运动至设定位置,记录机械臂的当前位置,并获取标定物在采集模块坐标系下的位置为目标坐标;
23、位姿采集模块,与坐标获取模块连接,用于不断改变机械臂位姿,在不同位姿下使标定物在采集模块坐标系下的目标坐标上,并采集机械臂对应的当前位姿;
24、计算模块,与位姿采集模块连接,用于根据若干组机械臂不同的当前位姿计算得到标定物在机械臂末端坐标系下的位置,完成机械臂tcp标定。
25、第三方面,本申请还提供了一种计算机存储介质,存储有可执行程序代码;所述可执行程序代码,用于执行第一方面任意一项所述的基于视觉的机械臂标定方法。
26、第四方面,本申请还提供了一种终端设备,包括存储器和处理器;所述存储器存储有可被处理器执行的程序代码;所述程序代码用于执行第一方面任意一项所述的基于视觉的机械臂标定方法。
1.一种基于视觉的机械臂标定方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,设定位置处于:
3.根据权利要求2所述的方法,其特征在于,所述不处于极限位置,具体包括:
4.根据权利要求1所述的方法,其特征在于,步骤s2之后,还包括:
5.根据权利要求1所述的方法,其特征在于,不断改变机械臂的位姿的具体步骤,包括:
6.根据权利要求1所述的方法,其特征在于,步骤s4,具体为:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.一种基于视觉的机械臂标定装置,其特征在于,包括:
9.一种计算机存储介质,其特征在于,存储有可执行程序代码;所述可执行程序代码,用于执行权利要求1-7任意一项所述的基于视觉的机械臂标定方法。
10.一种终端设备,其特征在于,包括存储器和处理器;所述存储器存储有可被处理器执行的程序代码;所述程序代码用于执行权利要求1-7任意一项所述的基于视觉的机械臂标定方法。