一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

标定方法、装置、手术机器人、电子设备及存储介质与流程

2023-02-06 11:24:19 来源:中国专利 TAG:


1.本发明涉及手术机器人领域,具体而言,涉及一种标定方法、装置、机器人、电子设备及存储介质。


背景技术:

2.手术机器人具有定位精度高、重复性好的优点,被广泛应用于影像导航式的骨科临床手术中。手术机器人导航定位原理为:光学定位仪通过对安装在机械臂末端的工具示踪器进行跟踪,通过工具示踪器与机械臂末端工具中心点(tool center point,tcp)坐标系的变换关系,得到机械臂末端的位姿,从而引导机械臂运动至规划的目标位姿。
3.完成手术机器人的导航定位,需要事先获得工具示踪器与机械臂末端tcp坐标系的变换关系,这一过程称为手眼标定。然而,传统的手眼标定方法极易因数据采集过程中采集设备被遮挡而导致误差较大。


技术实现要素:

4.有鉴于此,本发明的目的在于提供一种标定方法、装置、机器人、电子设备及存储介质,其能够减小标定误差,改善目前的标定方法所存在的误差大的问题。
5.为了实现上述目的,本发明实施例采用的技术方案如下:
6.第一方面,本发明实施例提供一种标定方法,用于手术机器人的标定,所述手术机器人包括机械臂、机械臂内禀基座和定位相机,所述方法包括:
7.在机械臂末端安装参考阵列;其中,所述参考阵列包括设置于所述机械臂末端的支架,以及设置于所述支架上的四个定位件,所述四个定位件不对称设置;
8.以任意三个所述定位件为基准,建立参考阵列坐标系;
9.控制所述机械臂末端调整至o1位姿,获取所述机械臂内禀tcp坐标系下的第一单位向量和第二单位向量,并记录机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下的第一坐标值,所述机械臂内禀基座坐标系至所述机械臂内禀tcp坐标系的第一转换矩阵,所述参考阵列坐标系的原点在定位相机坐标系下的变换坐标值,以及所述定位相机坐标系至所述参考阵列坐标系的第二转换矩阵;其中,所述第一单位向量和第二单位向量互不垂直;
10.将所述机械臂内禀tcp坐标系的原点在所述机械臂内禀基座坐标系下保持固定,控制所述机械臂末端以所述第一单位向量为轴,以所述机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第一角度,连续旋转两次,使所述机械臂末端先后调整至o2位姿和o3位姿,分别在o2位姿和在o3位姿下,记录所述参考阵列坐标系的原点在所述定位相机坐标系下的第二坐标值和第三坐标值;
11.控制所述机械臂末端调整回o1位姿,将所述机械臂内禀tcp坐标系的原点在所述机械臂内禀基座坐标系下保持固定,控制所述机械臂末端以所述第二单位向量为轴,以所述机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第二角度,连续旋转两
次,使所述机械臂末端先后调整至o4位姿和o5位姿,分别在o4位姿和o5位姿下,记录所述参考阵列坐标系的原点在所述定位相机坐标系下的第四坐标值和第五坐标值;
12.基于所述第一坐标值、所述第一单位向量和所述第二单位向量,建立空间直角坐标系,并获取所述机械臂末端为o1位姿时的所述机械臂内禀tcp坐标系至所述空间直角坐标系的第三转换矩阵;
13.基于所述第一单位向量、所述第二单位向量、所述变换坐标值、所述第二坐标值、所述第三坐标值、所述第四坐标值和所述第五坐标值,计算出所述定位相机坐标系至所述空间直角坐标系的第四转换矩阵;
14.根据所述第一转换矩阵、第二转换矩阵、第三转换矩阵和第四转换矩阵,计算出所述定位相机坐标系至所述机械臂内禀基座坐标系的转换矩阵,以及所述机械臂内禀tcp坐标系至所述参考阵列坐标系的转换矩阵。
15.进一步地,所述基于所述第一单位向量、所述第二单位向量、所述变换坐标值、所述第二坐标值、所述第三坐标值、所述第四坐标值和所述第五坐标值,计算出所述定位相机坐标系至所述空间直角坐标系的第四转换矩阵的步骤,包括:
16.基于所述第一单位向量和所述第二单位向量,计算出所述空间直角坐标系的三轴方向向量在所述定位相机坐标系下的表示方式;
17.拟合出由所述变换坐标值、所述第二坐标值、所述第三坐标值、所述第四坐标值和所述第五坐标值构成的拟合球面,得到所述拟合球面的球心坐标pc;
18.根据所述空间直角坐标系的三轴方向向量在所述定位相机坐标下的表示方式,以及所述球心坐标,得到所述定位相机坐标系至所述空间直角坐标系的第四转换矩阵。
19.进一步地,所述基于所述第一单位向量和所述第二单位向量,计算出所述空间直角坐标系的三轴方向向量在所述定位相机坐标系下的表示方式的步骤,包括:
20.将所述第一单位向量转换为在所述定位相机坐标系下的表示,得到第一转换向量;
21.将所述第二单位向量转换为在所述定位相机坐标系下的表示,得到第二转换向量;
22.根据所述第一转换向量和所述第二转换向量,计算出所述空间直角坐标系的三轴方向向量在所述定位相机坐标系下的表示方式。
23.进一步地,所述拟合出由所述变换坐标值、所述第二坐标值、所述第三坐标值、所述第四坐标值和所述第五坐标值构成的拟合球面的步骤,包括:
24.使用最小二乘法对所述变换坐标值、所述第二坐标值、所述第三坐标值、所述第四坐标值和所述第五坐标值进行球面拟合,得到拟合球面。
25.进一步地,所述基于所述第一坐标值、所述第一单位向量和所述第二单位向量,建立空间直角坐标系的步骤,包括:
26.将所述第一单位向量叉乘所述第二单位向量,得到叉乘向量;
27.以所述第一坐标值为原点,以所述第一单位向量为x轴,以所述叉乘向量为y轴,建立空间直角坐标系。
28.进一步地,所述第一转换向量为:
29.a
′1=s1×
s2/|s1×
s2|
30.其中,s1=p
2-p
′1,s2=p
3-p2,a
′1表示第一转换向量,p
′1表示变换坐标值,p2表示第二坐标值,p3表示第三坐标值;
31.所述第二转换向量为:
32.a
′2=s
′1×s′2/|s
′1×s′2|
33.其中,s
′1=p
4-p
′1,s
′2=p
5-p4,a
′2表示第二转换向量,p
′1表示变换坐标值,p4表示第四坐标值,p5表示第五坐标值。
34.第二方面,本发明实施例提供一种标定装置,用于手术机器人的标定,所述手术机器人包括机械臂、机械臂内禀基座和定位相机,所述装置包括安装模块、第一标定模块和第二标定模块;
35.所述安装模块,用于在机械臂末端安装参考阵列;其中,所述参考阵列包括设置于所述机械臂末端的支架,以及设置于所述支架上的四个定位件,所述四个定位件不对称设置;
36.所述第一标定模块,用于以任意三个所述定位件为基准,建立参考阵列坐标系;
37.所述第一标定模块,还用于控制所述机械臂末端调整至o1位姿,获取所述机械臂内禀tcp坐标系下的第一单位向量和第二单位向量,并记录机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下的第一坐标值,所述机械臂内禀基座坐标系至所述机械臂内禀tcp坐标系的第一转换矩阵,所述参考阵列坐标系的原点在定位相机坐标系下的变换坐标值,以及所述定位相机坐标系至所述参考阵列坐标系的第二转换矩阵;其中,所述第一单位向量和第二单位向量互不垂直;
38.所述第一标定模块,还用于将所述机械臂内禀tcp坐标系的原点在所述机械臂内禀基座坐标系下保持固定,控制所述机械臂末端以所述第一单位向量为轴,以所述机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第一角度,连续旋转两次,使所述机械臂末端先后调整至o2位姿和o3位姿,分别在o2位姿和在o3位姿下,记录所述参考阵列坐标系的原点在所述定位相机坐标系下的第二坐标值和第三坐标值;
39.所述第一标定模块,还用于控制所述机械臂末端调整回o1位姿,将所述机械臂内禀tcp坐标系的原点在所述机械臂内禀基座坐标系下保持固定,控制所述机械臂末端以所述第二单位向量为轴,以所述机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第二角度,连续旋转两次,使所述机械臂末端先后调整至o4位姿和o5位姿,分别在o4位姿和o5位姿下,记录所述参考阵列坐标系的原点在所述定位相机坐标系下的第四坐标值和第五坐标值;
40.所述第二标定模块,用于基于所述第一坐标值、所述第一单位向量和所述第二单位向量,建立空间直角坐标系,并获取所述机械臂末端为o1位姿时的所述机械臂内禀tcp坐标系至所述空间直角坐标系的第三转换矩阵;
41.所述第二标定模块,用于基于所述第一单位向量、所述第二单位向量、所述变换坐标值、所述第二坐标值、所述第三坐标值、所述第四坐标值和所述第五坐标值,计算出所述定位相机坐标系至所述空间直角坐标系的第四转换矩阵;
42.所述第二标定模块,用于根据所述第一转换矩阵、第二转换矩阵、第三转换矩阵和第四转换矩阵,计算出所述定位相机坐标系至所述机械臂内禀基座坐标系的转换矩阵,以及所述机械臂内禀tcp坐标系至所述参考阵列坐标系的转换矩阵。
43.第三方面,本发明实施例提供一种手术机器人,包括机械臂、机械臂内禀基座、定位相机和标定设备,所述标定设备用于实现如第一方面所述的标定方法。
44.第四方面,本发明实施例提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现如第一方面所述的标定方法。
45.第五方面,本发明实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的标定方法。
46.本发明实施例提供的标定方法、装置、机器人、电子设备及存储介质,在保持机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下固定的情况下,控制机械臂末端的位姿调整至o1位姿,并基于选择的第一单位向量和第二单位向量,将机械臂末端的位姿调整o2位姿、o3位姿、o4位姿和o5位姿,在五个位姿下,分别获取参考阵列坐标系的原点在定位相机坐标系下的各项数据,进而根据获取的各项数据计算得到定位相机坐标系至机械臂内禀基座坐标系的转换矩阵,以及机械臂内禀tcp坐标系至参考阵列坐标系的转换矩阵,以完成标定,在机械臂末端的位姿调整的过程中,机械臂内禀tcp坐标系的原点位置一直保持不变,在一定程度上能够使机械臂末端的位姿的移动限于很小的范围内,极大地减少定位相机被遮挡的概率,同时,第一单位向量和第二单位向量可以灵活选择,进一步降低了机械臂在狭小空间中造成干涉导致定位相机被遮挡的概率,从而能够更为精确地获取各项数据,进而能够提高标定准确度,减小误差。
47.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
48.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
49.图1示出了本发明实施例提供的标定系统的方框示意图。
50.图2示出了本发明实施例提供的手术机器人的结构示意图之一。
51.图3示出了本发明实施例提供的手术机器人的结构示意图之二。
52.图4示出了本发明实施例提供的标定装置的方框示意图。
53.图5示出了本发明实施例提供的电子设备的方框示意图。
54.附图标记:100-标定系统;110-手术机器人;120-控制器;130-机械臂内禀基座;140-机械臂;150-机械臂末端;160-定位相机;170-参考阵列;180-支架;190-定位件;200-标定装置;210-安装模块;220-第一标定模块;230-第二标定模块;240-电子设备。
具体实施方式
55.下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
56.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
57.需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
58.完成手术机器人的导航定位,需要事先获得工具示踪器与机械臂末端坐标系的变换关系,这一过程称为手眼标定。
59.传统的手眼标定方法包括以下几种方式:
60.(1)在硬件设计图纸中可以量测得到机械臂末端参考阵列与机械臂末端内禀tcp的坐标系间的转换关系,该量测值为设计值,使用该值进行机械臂基座与定位相机的手眼标定。由于,设计值与实物的实际值存在误差,该误差被带入机械臂基座与定位相机的手眼标定,而手眼标定的结果本身又用于修正末端工具坐标系转换关系,导致该修正具有局域型,机械臂末端姿态发生较大改变时,此修正不再适用。
61.(2)先获得定位相机坐标系与机械臂内禀基座坐标系的旋转关系,再通过保持机械臂内禀tcp坐标系原点不动,机械臂末端参考阵列旋转的方式拟合球面及其球心,使用球心的位置计算末端工具坐标系转换关系中的平移量,并结合之前的旋转关系获得完整的末端工具坐标系转换关系。这种手眼标定方法,机械臂末端绕内禀tcp末端做旋转运动,极易造成参考坐标系遮挡,参考阵列难以被定位相机捕捉,导致采集的各项数据存在错误,进而使标定误差较大。
62.(3)为改良版的“九点标定法”,机械臂末端需要走位9次,且其覆盖空间范围需要较大,以保证标定结果的全域适用性。然而,走位9次较为繁琐耗时,且大范围移动受限于空间较小的手术室。
63.基于上述考虑,本发明实施例提供一种标定方法,其能够在狭小空间中完成,且能够减小标定误差,改善目前的标定方法所存在的误差大的问题。
64.本发明实施例提供的标定方法,可以应用于如图1所示的标定系统100,该标定系统100包括手术机器人110和控制器120,手术机器人110可以包括如图2所示,包括机械臂140、机械臂内禀基座130和定位相机160,机械臂140设置于机械臂内禀基座130上,定位相机160朝向机械臂140设置,定位相机160可以通过有线或无线的方式与控制器120通信连接。
65.控制器120,用于控制机械臂140的位姿和运动。
66.定位相机160用于对机械臂140进行定位。
67.定位相机160可以为光学定位相机160,也可以用其他光学定位设备或定位设备来替换。控制器120包括但不限于是:plc控制器、mcu控制器、计算机等设备。
68.在一种可能的实施方式中,本发明实施例提供一种标定方法,用于手术机器人110
的标定,手术机器人110可以为如图所示的手术机器人110,标定方法可以包括以下步骤。在本实施方式,以该标定方法应用于图1中的控制器120来举例说明。
69.s1,在机械臂末端安装参考阵列。
70.在一种可能的实施方式中,参照图3,参考阵列170可以包括设置于机械臂末端150的支架180,以及设置于支架180上的四个定位件190,四个定位件190不对称设置。
71.为了使定位相机160能够更清楚地获取参考阵列170的坐标信息,定位件190可以设置为反光片。
72.s2,以任意三个定位件为基准,建立参考阵列坐标系。
73.s3,控制机械臂末端调整至o1位姿,选择机械臂内禀tcp坐标系下的第一单位向量和第二单位向量,并记录机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下的第一坐标值,机械臂内禀基座坐标系至机械臂内禀tcp坐标系的第一转换矩阵,参考阵列坐标系的原点在定位相机坐标系下的变换坐标值,以及定位相机坐标系至参考阵列坐标系的第二转换矩阵。
74.o1位姿可以根据实际空间条件进行灵活选择,即,若手术机器人110在手术室中,则使用人员可以根据手术室摆位条件(避免与其他器械的干涉,避免定位相机160遮挡),选定任一位姿作为o1位姿,本实施方式中,不作具体限定。
75.需要强调的是,第一单位向量和第二单位向量互不垂直。并且,第一单位向量和第二单位向量的方向可以根据标定过程中的实际情况,而任意选择。在本实施方式中,不对第一单位向量和第二单位向量的方向作具体限定。
76.s4,将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第一单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第一角度,连续旋转两次,使机械臂末端先后调整至o2位姿和o3位姿,分别在o2位姿和在o3位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第二坐标值和第三坐标值。
77.在o2位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第二坐标值,在o3位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第三坐标值。
78.s5,控制机械臂末端调整回o1位姿,将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第二单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第二角度,连续旋转两次,使机械臂末端先后调整至o4位姿和o5位姿,分别在o4位姿和o5位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第四坐标值和第五坐标值。
79.在o4位姿下,记录参考阵列170坐标系的原点在定位相机160坐标系下的第四坐标值,在o5位姿下,记录参考阵列170坐标系的原点在定位相机160坐标系下的第五坐标值。
80.s6,基于第一坐标值、第一单位向量和第二单位向量,建立空间直角坐标系,并获取机械臂末端为o1位姿时的机械臂内禀tcp坐标系至空间直角坐标系的第三转换矩阵。
81.s7,基于第一单位向量、第二单位向量、变换坐标值、第二坐标值、第三坐标值、第四坐标值和所述第五坐标值,计算出到定位相机坐标系至空间直角坐标系的第四转换矩阵。
82.s8,根据第一转换矩阵、第二转换矩阵、第三转换矩阵和第四转换矩阵,计算出定
位相机坐标系至机械臂内禀基座坐标系的转换矩阵,以及机械臂内禀tcp坐标系至参考阵列坐标系的转换矩阵。
83.需要强调的是,在步骤s3-s5过程中,机械臂末端150的参考阵列170必须被定位相机160全程可见。
84.标定过程中,定位相机160基于自身的定位功能,可以对机械臂140及参考阵列170进行定位,得到第一坐标值、变换坐标值、第一转换矩阵、第二转换矩阵、第二坐标值、第三坐标值、第四坐标值和第五坐标值。再将上述第一坐标值、变换坐标值、第一转换矩阵、第二转换矩阵、第二坐标值、第三坐标值、第四坐标值和第五坐标值传输给控制器120,控制器120采用步骤s6-s8的方法,完成标定。
85.与传统的手术机器人的手眼标定方法相比,上述标定方法中,在机械臂末端的位姿调整采集各项数据的过程中,机械臂内禀tcp坐标系的原点位置一直保持不变,在一定程度上能够使机械臂末端的位姿的移动限于很小的范围内,极大地减少定位相机被遮挡的概率,同时,第一单位向量和第二单位向量可以灵活选择,进一步降低了机械臂在狭小空间中造成干涉导致定位相机被遮挡的概率,从而能够更为精确地获取各项数据,进而能够提高标定准确度,减小误差。
86.为了在一定程度上避免机械臂末端150的姿态幅度较大,以遮挡住参考阵列170,使定位相机160无法捕捉参考矩阵。故而,在实际应用过程中,可以根据参考阵列170在定位相机160下的可见度情况,对第一角度和第二角度进行调整。
87.在一种可能的实施方式中,具体地,第一角度和第二角度可以符合如下限定条件为:10
°
《m《180
°
,10
°
《n《180
°
,其中,m表示第一角度,n表示第二角度。
88.进一步地,上述步骤s4和s5中的旋转法可以根据实际情况进行选择,例如,可以是右手螺旋法,也可以是左手螺旋法,本实施方式中,不作具体限定。但需要强调的是,步骤s4和s5中的旋转法必须相同。
89.在本实施方式中,机械臂内禀tcp坐标系用f
tcp
表示,机械臂内禀基座坐标系用f
base
表示,定位相机坐标系用f
camera
表示,参考阵列坐标系用f
drf
表示,机械臂内禀tcp坐标系f
tcp
的原点在机械臂内禀基座坐标系f
base
下的第一坐标值用p1表示,参考阵列坐标系f
drf
的原点在定位相机坐标系f
camera
下的变换坐标值用p
′1表示,机械臂内禀基座坐标系f
base
至机械臂内禀tcp坐标系f
tcp
的第一转换矩阵用t
btot
表示,定位相机坐标系f
camera
至参考阵列坐标系f
drf
的第二转换矩阵用t
ctod
表示。
90.机械臂内禀tcp坐标系f
tcp
下的第一单位向量用a1表示,第二单位向量用a2表示。第一角度用m表示,参考阵列坐标系f
drf
的原点在定位相机坐标系f
camera
下的第二坐标值用p2标识,第三坐标值用p3表示。第二角度用n表示,参考阵列坐标系f
drf
的原点在定位相机坐标系下的第四坐标值用p4,第五坐标值用p5表示。
91.空间直角坐标系用f
rot
表示,机械臂内禀tcp坐标系f
tcp
至空间直角坐标系f
rot
的第三转换矩阵用t
ttor
表示,定位相机坐标系f
camera
至空间直角坐标系f
rot
的第四转换矩阵用t
ctor
表示,定位相机坐标系f
camera
至机械臂内禀基座坐标系f
base
的转换矩阵用t
ctob
表示,机械臂内禀tcp坐标系f
tcp
至参考阵列坐标系f
drf
的转换矩阵用t
ttod
表示。
92.进一步地,针对步骤s6,可以通过以下步骤实现建立空间直角坐标系。
93.s61,将第一单位向量叉乘第二单位向量,得到叉乘向量。
94.s62,以第一坐标值为原点,以第一单位向量为x轴,以叉乘向量为y轴,建立空间直角坐标系。
95.应当理解的是,确定x轴和y轴后,即可确定出空间直角坐标系的z轴。
96.空间直角坐标系f
rot
的x轴,y轴和z轴的方向向量的计算公式可以表示为:
[0097][0098]
进一步地,在得到建立空间直角坐标系f
rot
之后,基于坐标系间的转换原理,机械臂末端150为o1位姿时,机械臂140内禀tcp坐标系至空间直角坐标系的第三转换矩阵t
ttor
可以表示为以下形式:
[0099][0100]
在一种可能的实施方式中,步骤s7可以进一步实施为以下步骤。
[0101]
s71,基于第一单位向量和第二单位向量,计算出空间直角坐标系的三轴方向向量在定位相机坐标下的表示方式。
[0102]
s72,拟合出由变换坐标值、第二坐标值、第三坐标值、第四坐标值和第五坐标值构成的拟合球面,得到拟合球面的球心坐标pc。
[0103]
s73,根据空间直角坐标系的三轴方向向量在定位相机坐标下的表示方式,以及球心坐标,得到定位相机坐标系至空间直角坐标系的第四转换矩阵。
[0104]
进一步地,在一种可能的实施方式中,步骤s71可以通过以下步骤实现。
[0105]
s711,将第一单位向量转换为在定位相机坐标系下的表示,得到第一转换向量。
[0106]
s712,将第二单位向量转换为在定位相机坐标系下的表示,得到第二转换向量。
[0107]
s713,根据第一转换向量和第二转换向量,计算出空间直角坐标系的三轴方向向量在定位相机坐标下的表示方式。
[0108]
第一转换向量可以借由与其垂直的两个向量s1和s2来表示,向量s1和s2可以理解为是定位相机坐标系f
camera
下的两个方向向量。同理,第二转换向量可以借由与其垂直的两个向量s
′1和s
′2来表示,向量s
′1和s
′2可以理解为是定位相机坐标系f
camera
下的两个方向向量。
[0109]
在一种可能的实施方式中,第一转换向量可以表示为:a
′1=s1×
s2/|s1×
s2|,其中,s1=p
2-p
′1,s2=p
3-p2,a
′1表示第一转换向量。
[0110]
第二转换向量可以表示为:a
′2=s
′1×s′2/|s
′1×s′2|,其中,s
′1=p
4-p
′1,s
′2=p
5-p4,a
′2表示第二转换向量。
[0111]
基于第一转换向量a
′1和第二转换向量a
′2,空间直角坐标系f
rot
的三轴方向向量在定位相机坐标系f
camera
下的表示方式可以为:
[0112][0112][0113]
对于步骤s72,在一种可能的实施方式中,可以采用使用最小二乘法对变换坐标值、第二坐标值、第三坐标值、第四坐标值和第五坐标值进行球面拟合,得到拟合球面。
[0114]
此时,拟合球面的球心坐标可以表示为:
[0115]
对于步骤s73,在一种可能的实施方式中,定位相机坐标系f
camera
至空间直角坐标系f
rot
的第四转换矩阵t
ctor
可以表示为以下形式:
[0116][0117]
针对步骤s8,在一种可能的实施方式中,可以根据以下转换公式得到定位相机160坐标系至机械臂内禀基座130坐标系的转换矩阵,以及机械臂140内禀tcp坐标系至参考阵列170坐标系的转换矩阵。
[0118]
转换公式为:
[0119]
t
ctob
=t
ctor
·
(t
ttor
)-1
·
(t
btot
)-1
,t
ttod
=(t
btot
)-1
·
(t
ctob
)-1
·
t
ctod
,其中,t
ctob
表示定位相机坐标系至机械臂内禀基座坐标系的转换矩阵,t
ttod
表示机械臂内禀tcp坐标系至参考阵列坐标系的转换矩阵。
[0120]
将第一转换矩阵、第二转换矩阵、第三转换矩阵、第四转换矩阵代入上述转换公式,即可得到定位相机坐标系至机械臂内禀基座坐标系的转换矩阵t
ctob
,以及机械臂内禀tcp坐标系至参考阵列坐标系的转换矩阵t
ttod

[0121]
本发明实施例提供的标定方法,通过对机械臂末端进行四次位姿调整,并基于位姿调整过程中采集的各项数据,计算出定位相机坐标系至机械臂内禀基座坐标系的转换矩阵,以及机械臂内禀tcp坐标系至参考阵列坐标系的转换矩阵,且两个转换矩阵为全域解,不存在使用设计参数而导致所得转换矩阵存在误差的问题,也无需在标定后再做额外校准,标定准确度更高。并且,在标定过程中,机械臂内禀tcp坐标系的原点位置一直保持不变,即机械臂末端的位姿在标定全过程中的移动仅限于很小的范围内,提高空间利用率,并减少了定位相机被遮挡的可能性,能够减小标定误差。
[0122]
基于上述标定方法的发明构思,在一种可能的实施方式中,参照图4,本发明实施例还提供一种标定装置200,该标定装置200可以应用于图1中的控制器120,该标定装置200可以包括安装模块210、第一标定模块220和第二标定模块230。
[0123]
安装模块210,用于在机械臂末端安装参考阵列。其中,参考阵列包括设置于机械
臂末端的支架,以及设置于支架上的四个定位件,四个定位件不对称设置。
[0124]
第一标定模块220,用于以任意三个所述定位件为基准,建立参考阵列坐标系。
[0125]
第一标定模块220,还用于控制机械臂末端调整至o1位姿,获取机械臂内禀tcp坐标系下的第一单位向量和第二单位向量,并记录机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下的第一坐标值,机械臂内禀基座坐标系至机械臂内禀tcp坐标系的第一转换矩阵,参考阵列坐标系的原点在定位相机坐标系下的变换坐标值,以及定位相机坐标系至所述参考阵列坐标系的第二转换矩阵。其中,第一单位向量和第二单位向量互不垂直。
[0126]
第一标定模块220,还用于将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第一单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第一角度,连续旋转两次,使机械臂末端先后调整至o2位姿和o3位姿,分别在o2位姿和在o3位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第二坐标值和第三坐标值。
[0127]
第一标定模块220,还用于控制机械臂末端调整回o1位姿,将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第二单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第二角度,连续旋转两次,使机械臂末端先后调整至o4位姿和o5位姿,分别在o4位姿和o5位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第四坐标值和第五坐标值。
[0128]
第二标定模块230,用于基于第一坐标值、第一单位向量和第二单位向量,建立空间直角坐标系,并获取机械臂末端为o1位姿时的机械臂内禀tcp坐标系至空间直角坐标系的第三转换矩阵。
[0129]
第二标定模块230,用于基于第一单位向量、第二单位向量、变换坐标值、第二坐标值、第三坐标值、所述第四坐标值和第五坐标值,计算出定位相机坐标系至空间直角坐标系的第四转换矩阵。
[0130]
第二标定模块230,用于根据第一转换矩阵、第二转换矩阵、第三转换矩阵和第四转换矩阵,计算出定位相机坐标系至机械臂内禀基座坐标系的转换矩阵,以及机械臂内禀tcp坐标系至参考阵列坐标系的转换矩阵。
[0131]
上述标定装置200中,通过安装模块210、第一标定模块220和第二标定模块230的协同作用,在机械臂末端的位姿调整采集各项数据的过程中,机械臂内禀tcp坐标系的原点位置一直保持不变,在一定程度上能够使机械臂末端的位姿的移动限于很小的范围内,极大地减少定位相机被遮挡的概率,同时,第一单位向量和第二单位向量可以灵活选择,进一步降低了机械臂在狭小空间中造成干涉导致定位相机被遮挡的概率,从而能够更为精确地获取各项数据,进而能够提高标定准确度,减小误差。
[0132]
关于标定装置200的具体限定可以参见上文中对于标定方法的限定,在此不再赘述。上述标定装置200中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于电子设备中的处理器中,也可以以软件形式存储于电子设备的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0133]
在一种可能的实施方式中,本发明实施例还提供一种机器人,该机器人包括机械臂140、机械臂内禀基座130、定位相机160和标定设备,标定设备用于实现如上述实施方式中提供的标定方法。
[0134]
在一种实施方式中,提供了一种电子设备240,该电子设备240可以是终端,其内部结构图可以如图5所示。该电子设备240包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该电子设备240的处理器用于提供计算和控制能力。该电子设备240的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备240的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、近场通信(nfc)或其他技术实现。该计算机程序被处理器执行时实现如上述实施方式提供的标定方法。
[0135]
图5中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的电子设备240的限定,具体的电子设备240可以包括比图5中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0136]
在一种实施方式中,本发明提供的标定装置200可以实现为一种计算机程序的形式,计算机程序可在如图5所示的电子设备240上运行。电子设备240的存储器中可存储组成该标定装置200的各个程序模块,比如,图4所示的安装模块210、第一标定模块220和第二标定模块230。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的标定方法中的步骤。
[0137]
例如,图5所示的电子设备240可以通过如图4所示的标定装置200中的安装模块210执行步骤s1。电子设备240可以通过第一标定模块220执行步骤s0-s5。电子设备240可以通过第二标定模块230执行步骤s16-s8。
[0138]
在一种实施方式中,提供了一种电子设备240,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:在机械臂末端安装参考阵列;以任意三个定位件为基准,建立参考阵列坐标系;控制机械臂末端调整至o1位姿,选择机械臂内禀tcp坐标系下的第一单位向量和第二单位向量,并记录机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下的第一坐标值,机械臂内禀基座坐标系至机械臂内禀tcp坐标系的第一转换矩阵,参考阵列坐标系的原点在定位相机坐标系下的变换坐标值,以及定位相机坐标系至参考阵列坐标系的第二转换矩阵;将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第一单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第一角度,连续旋转两次,使机械臂末端先后调整至o2位姿和o3位姿,分别在o2位姿和在o3位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第二坐标值和第三坐标值;控制机械臂末端调整回o1位姿,将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第二单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第二角度,连续旋转两次,使机械臂末端先后调整至o4位姿和o5位姿,分别在o4位姿和o5位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第四坐标值和第五坐标值;基于第一坐标值、第一单位向量和第二单位向量,建立空间直角坐标系,并获取机械臂末端为o1位姿时的机械臂内禀tcp坐标系至空间直角坐标系的第三转换矩阵;基于第一单位向量、第二单位向量、变换坐标值、第二坐标值、第三坐标值、第四坐标值和所述第五坐标值,计算出到定位相机坐标系至空间直角坐标系的第四转换矩阵。
[0139]
在一种实施方式中,提供了一种计算机可读存储介质,其上存储有计算机程序,计
算机程序被处理器执行时实现以下步骤:在机械臂末端安装参考阵列;以任意三个定位件为基准,建立参考阵列坐标系;控制机械臂末端调整至o1位姿,选择机械臂内禀tcp坐标系下的第一单位向量和第二单位向量,并记录机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下的第一坐标值,机械臂内禀基座坐标系至机械臂内禀tcp坐标系的第一转换矩阵,参考阵列坐标系的原点在定位相机坐标系下的变换坐标值,以及定位相机坐标系至参考阵列坐标系的第二转换矩阵;将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第一单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第一角度,连续旋转两次,使机械臂末端先后调整至o2位姿和o3位姿,分别在o2位姿和在o3位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第二坐标值和第三坐标值;控制机械臂末端调整回o1位姿,将机械臂内禀tcp坐标系的原点在机械臂内禀基座坐标系下保持固定,控制机械臂末端以第二单位向量为轴,以机械臂内禀tcp坐标系的原点为旋转中心,以选定的旋转法以及第二角度,连续旋转两次,使机械臂末端先后调整至o4位姿和o5位姿,分别在o4位姿和o5位姿下,记录参考阵列坐标系的原点在定位相机坐标系下的第四坐标值和第五坐标值;基于第一坐标值、第一单位向量和第二单位向量,建立空间直角坐标系,并获取机械臂末端为o1位姿时的机械臂内禀tcp坐标系至空间直角坐标系的第三转换矩阵;基于第一单位向量、第二单位向量、变换坐标值、第二坐标值、第三坐标值、第四坐标值和所述第五坐标值,计算出到定位相机坐标系至空间直角坐标系的第四转换矩阵。
[0140]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0141]
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0142]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0143]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修
改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献