机械臂自动标定方法、装置、设备、机械臂和介质转让专利

申请号 : CN202011172437.5

文献号 : CN112318506B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘剑楠陈晓军张陈平胡俊磊韩婧周子疌

申请人 : 上海交通大学医学院附属第九人民医院上海交通大学

摘要 :

本申请提供了一种机械臂自动标定方法、装置、设备、机械臂和介质,通过获得机械臂末端坐标系与机械臂基座坐标系之间的第一变换矩阵;依据由相机采集特征点的方式所获取的标定块参考架坐标系与基座参考架坐标系之间的第二变换矩阵,并令机械臂末端根据自身旋转特性执行指定动作,据以得到基座参考架坐标系与机械臂末端坐标系之间的第二旋转变换矩阵;依据第一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系与基座参考架坐标系之间的第三变换矩阵,从而完成机械臂自动标定。本申请借助串联机械臂自身的旋转特性,实现了机械臂上参考架安装位置的标定,且标定过程中均采用的是绕轴旋转的方式来确定圆心,计算精度高。

权利要求 :

1.一种机械臂自动标定方法,其特征在于,应用于机械臂上;其中,机械臂基座上安装有基座参考架;机械臂末端的法兰盘上任意位置安装有标定块参考架;所述标定块参考架为能被光学导航系统识别的带反光靶球的参考架;所述方法包括:启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,以获得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;

依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵,并令机械臂末端根据机械臂自身旋转特性执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵;其中,所述机械臂末端根据机械臂自身旋转特性执行的指定动作,包括:基础指定动作包括:令机械臂最末端的关节以其自身旋转轴进行多次间断旋转,并旋转一周为止;第一指定动作包括:令机械臂末端沿机械臂末端坐标系TCP的Z轴方向移动预设距离,然后重复所述基础指定动作若干次;第二指定动作包括:令机械臂末端恢复至所述初始位姿,再沿机械臂末端坐标系TCP的X轴方向移动预设距离,然后重复所述基础指定动作若干次;

依据所述第一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵,从而完成机械臂自动标定。

2.根据权利要求1所述的方法,其特征在于,所述依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵,并令机械臂末端根据机械臂自身旋转特性执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵,包括:

根据基础指定动作获取基座参考架坐标系Ref下的旋转圆心;

依据第一指定动作、及第二指定动作分别获取机械臂末端坐标系TCP下X、Y、Z三轴对应的单位向量;

通过X、Y、Z三轴对应的单位向量表示对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵。

3.根据权利要求2所述的方法,其特征在于,所述根据基础指定动作获取基座参考架坐标系Ref下的旋转圆心,包括:

获取标定块坐标系Cali下齐次坐标的原点;

随着所述基础指定动作中机械臂最末端的关节多次间断旋转,依据所述第二变换矩阵及原点,可在基座参考架坐标系Ref下可得到由多个不同点组成的点集,该点集构成三维空间圆;

依据平面方程到球方程的转换公式,以求得点集构成的三维空间圆的圆心坐标,以对应基座参考架坐标系Ref下的旋转圆心。

4.根据权利要求2所述的方法,其特征在于,所述依据第一指定动作、及第二指定动作分别获取机械臂末端坐标系TCP下X、Y、Z三轴对应的单位向量,包括:在第一指定动作的基础上获取多个依据基础指定动作获取的旋转圆心,以得到对应Z轴的第一圆心点集;以及在第二指定动作的基础上获取多个依据基础指定动作获取的旋转圆心,以得到对应X轴的第二圆心点集;

针对所述第一圆心点集、及第二圆心点集分别采用最小二乘法拟合直线,以分别得到对应Z轴和X轴的单位向量;

将Z轴的单位向量与X轴的单位向量相乘以得到Y轴的单位向量。

5.根据权利要求1所述的方法,其特征在于,所述依据所述第一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵,从而完成机械臂自动标定,包括:依据

TCP T

其中,p =[0 0 ΔZ 1] ,ΔZ为标定块参考架中心到机械臂末端坐标系TCP原点在其Z方向上的偏移; 表示机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换Ref

矩阵; 表示机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵;pT

=[OX OY OZ 1];OX,OY,OZ分别为圆心O的三个坐标分量;

可得到:

其中, 表示第一旋转变换矩阵; 表示机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三旋转变换矩阵; 表示对应第一旋转变换矩阵的第一平移变换矩阵; 表示对应第三旋转变换矩阵的第三平移变换矩阵;

可转换为:

其中,记录每次机械臂末端执行指定动作时机械臂末端坐标系TCP与机械臂基座坐标系Base之间的多组转换矩阵 将 带入公式可求得第三平移变换矩阵

由旋转变换矩阵与平移变换矩阵转换为转换矩阵的公式,可得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵的表达式为:根据所述第一旋转变换矩阵 第二旋转变换矩阵 及第三平移变换矩阵以得到第三旋转变换矩阵

6.一种电子装置,其特征在于,所述装置包括:第一处理模块,用于启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,以获得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;

第二处理模块,用于依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵,并令机械臂末端根据机械臂自身旋转特性执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵;其中,所述机械臂末端根据机械臂自身旋转特性执行的指定动作,包括:基础指定动作包括:令机械臂最末端的关节以其自身旋转轴进行多次间断旋转,并旋转一周为止;第一指定动作包括:令机械臂末端沿机械臂末端坐标系TCP的Z轴方向移动预设距离,然后重复所述基础指定动作若干次;第二指定动作包括:令机械臂末端恢复至所述初始位姿,再沿机械臂末端坐标系TCP的X轴方向移动预设距离,然后重复所述基础指定动作若干次;

第三处理模块,用于依据所述第一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵,从而完成机械臂自动标定。

7.一种计算机设备,其特征在于,所述设备包括:存储器、处理器、及通信器;所述存储器用于存储计算机指令;所述处理器运行计算机指令实现如权利要求1‑5中任意一项所述的方法;所述通信器用于与相机通信连接。

8.一种机械臂,其特征在于,所述机械臂包括:如权利要求7所述的计算机设备;

其中,机械臂基座上安装有基座参考架;机械臂末端的法兰盘上任意位置安装有标定块参考架;所述标定块参考架为能被光学导航系统识别的带反光靶球的参考架;

所述机械臂包括多个可旋转的关节。

9.一种计算机可读存储介质,其特征在于,存储有计算机指令,所述计算机指令被运行时执行如权利要求1‑5中任意一项所述的方法。

说明书 :

机械臂自动标定方法、装置、设备、机械臂和介质

技术领域

[0001] 本发明涉及机械视觉标定技术领域,特别是涉及一种机械臂自动标定方法、装置、设备、机械臂和介质。

背景技术

[0002] 在光学定位机器人系统中,为了确定机械臂末端的位置,会在机械臂末端或者机械臂基座上安装光学定位参考架。相比于定位参考架安装在机械臂末端方案,安装在机械
臂基座上的方案不存在机械臂运动时产生的遮挡问题。光学定位仪能确定光学定位参考架
的位置,需要获得安装在机械臂基座上的参考架与基座之间的位置关系,才能计算出机械
臂末端的位置。
[0003] 因此,本专利需要解决串联机械臂的标定问题,确定安装在机械臂基座上的参考架与基座之间的位置关系。
[0004] 目前常见的方法有如下几种,但均存在一定不足:
[0005] (1)通过精确的加工与装配,直接根据设计的数据确定。该方法对机械加工与安装要求非常高,且随着使用时间的推移,系统误差会越来越大。
[0006] (2)在机械臂第一个、第二个关节上安装光学定位参考架,通过仅旋转第一个关节、仅旋转第二个关节,来确定机械臂基座位置。该方法不能一步直接获得结果,需要多次
在机械臂上安装光学定位参考架。
[0007] (3)在机械臂末端也安装一个光学定位参考架,使机械臂任意移动多个位置,直接计算安装在机械臂基座上的参考架与基座之间的位置关系。该方法被定义为求解方法组AX
=YB,但计算精度相对于绕轴旋转相对低。

发明内容

[0008] 鉴于以上所述现有技术的缺点,本申请的目的在于提供一种机械臂自动标定方法、装置、设备、机械臂和介质,以克服现有技术中存在的至少一个问题。
[0009] 为实现上述目的及其他相关目的,本申请提供一种机械臂自动标定方法,应用于机械臂上;其中,机械臂基座上安装有基座参考架;机械臂末端的法兰盘上任意位置安装有
标定块参考架;所述标定块参考架为能被光学导航系统识别的带反光靶球的参考架;所述
方法包括:启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,以获
得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;依据由相机采集
特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换
矩阵,并令机械臂末端根据机械臂自身旋转特性执行指定动作,以采集不同动作姿态下所
述标定块参考架的旋转圆心的点集,据以得到对应基座参考架坐标系Ref与机械臂末端坐
标系TCP之间的第二旋转变换矩阵;依据所述第一变换矩阵得到第一旋转变换矩阵,结合第
二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩
阵,从而完成机械臂自动标定。
[0010] 于本申请的一实施例中,所述机械臂末端根据机械臂自身旋转特性执行的指定动作,包括:基础指定动作包括:令机械臂最末端的关节以其自身旋转轴进行多次间断旋转,
并旋转一周为止;第一指定动作包括:令机械臂末端沿机械臂末端坐标系TCP的Z轴方向移
动预设距离,然后重复所述基础指定动作若干次;第二指定动作包括:令机械臂末端恢复至
所述初始位姿,再沿机械臂末端坐标系TCP的X轴方向移动预设距离,然后重复所述基础指
定动作若干次。
[0011] 于本申请的一实施例中,所述依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵,并令机械臂末端根据机械臂
自身旋转特性执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点
集,据以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩
阵,包括:根据基础指定动作获取基座参考架坐标系Ref下的旋转圆心;依据第一指定动作、
及第二指定动作分别获取机械臂末端坐标系TCP下X、Y、Z三轴对应的单位向量;通过X、Y、Z
三轴对应的单位向量表示对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二
旋转变换矩阵。
[0012] 于本申请的一实施例中,所述根据基础指定动作获取基座参考架坐标系Ref下的旋转圆心,包括:获取标定块坐标系Cali下齐次坐标的原点;随着所述基础指定动作中机械
臂最末端的关节多次间断旋转,依据所述第二变换矩阵及原点,可在基座参考架坐标系Ref
下可得到由多个不同点组成的点集,该点集构成三维空间圆;依据平面方程到球方程的转
换公式,以求得点集构成的三维空间圆的圆心坐标,以对应基座参考架坐标系Ref下的旋转
圆心。
[0013] 于本申请的一实施例中,所述依据第一指定动作、及第二指定动作分别获取机械臂末端坐标系TCP下X、Y、Z三轴对应的单位向量,包括:在第一指定动作的基础上获取多个
依据基础指定动作获取的旋转圆心,以得到对应Z轴的第一圆心点集;以及在第二指定动作
的基础上获取多个依据基础指定动作获取的旋转圆心,以得到对应X轴的第二圆心点集;针
对所述第一圆心点集、及第二圆心点集分别采用最小二乘法拟合直线,以分别得到对应Z轴
和X轴的单位向量;将Z轴的单位向量与X轴的单位向量相乘以得到Y轴的单位向量。
[0014] 于本申请的一实施例中,所述依据所述第一旋转变换矩阵、及第二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵,从而完成机
TCP T
械臂自动标定,包括:依据 其中,p =[0 0ΔZ 1] ,ΔZ为标定
块参考架中心到机械臂末端坐标系TCP原点在其Z方向上的偏移; 表示机械臂末端坐
标系TCP与机械臂基座坐标系Base之间的第一变换矩阵; 表示机械臂基座坐标系Base
Ref T
与基座参考架坐标系Ref之间的第三变换矩阵;p =[OX OY OZ 1] ;OX,OY,OZ分别为圆心O
的三个坐标分量;可得到: 其中, 表示
第一旋转变换矩阵; 表示机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三
旋转变换矩阵; 表示对应第一旋转变换矩阵的第一平移变换矩阵; 表示对应第三
旋转变换矩阵的第三平移变换矩阵;可转换为: 其中,
记录每次机械臂末端执行指定动作时机械臂末端坐标系TCP与机械臂基座坐标系Base之间
的多组转换矩阵 将 i=1,2,…,n;带入公式可求得第三平移变换矩阵
由旋转变换矩阵与平移变换矩阵转换为转换矩阵的公式,可得到机械臂基座坐标系
Base与基座参考架坐标系Ref之间的第三变换矩阵的表达式为:
根据所述第一旋转变换矩阵 第二旋转变换矩阵 及第三平移变换矩阵 以
得到第三旋转变换矩阵
[0015] 为实现上述目的及其他相关目的,本申请提供一种电子装置,所述装置包括:第一处理模块,用于启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,
以获得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;第二处理模
块,用于依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐
标系Ref之间的第二变换矩阵,并令机械臂末端根据机械臂自身旋转特性执行指定动作,以
采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据以得到对应基座参考架坐标
系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵;第三处理模块,用于依据所述第
一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系Base
与基座参考架坐标系Ref之间的第三变换矩阵,从而完成机械臂自动标定。
[0016] 为实现上述目的及其他相关目的,本申请提供一种计算机设备,所述设备包括:存储器、处理器、及通信器;所述存储器用于存储计算机指令;所述处理器运行计算机指令实
现如上所述的方法;所述通信器用于与相机通信连接。
[0017] 为实现上述目的及其他相关目的,本申请提供一种机械臂,所述机械臂包括:如上所述的计算机设备;其中,机械臂基座上安装有基座参考架;机械臂末端的法兰盘上任意位
置安装有标定块参考架;所述标定块参考架为能被光学导航系统识别的带反光靶球的参考
架;所述机械臂包括多个可旋转的关节。
[0018] 为实现上述目的及其他相关目的,本申请提供一种计算机可读存储介质,存储有计算机指令,所述计算机指令被运行时执行如上所述的方法。
[0019] 综上所述,本申请提供的一种机械臂自动标定方法、装置、设备、机械臂和介质。
[0020] 本申请借助串联机械臂自身的旋转特性,实现了机械臂上参考架安装位置的标定,且标定过程中均采用的是绕轴旋转的方式来确定圆心,计算精度高。

附图说明

[0021] 图1显示为本申请于一实施例中机械臂的结构示意图。
[0022] 图2显示为本申请于一实施例中机械臂自动标定方法的流程示意图。
[0023] 图3显示为本申请于一实施例中机械臂各关节的相对位置示意图。
[0024] 图4显示为本申请于一实施例中电子装置的模块示意图。
[0025] 图5显示为本申请于一实施例中计算机设备的结构示意图。

具体实施方式

[0026] 以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。本申请还可以通过另外不同的具体实
施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离
本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施
例中的特征可以相互组合。
[0027] 需要说明的是,以下实施例中所提供的图示仅以示意方式说明本申请的基本构想,虽然图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺
寸绘制,但其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型
态也可能更为复杂。
[0028] 在通篇说明书中,当说某部分与另一部分“连接”时,这不仅包括“直接连接”的情形,也包括在其中间把其它元件置于其间而“间接连接”的情形。另外,当说某种部分“包括”
某种构成要素时,只要没有特别相反的记载,则并非将其它构成要素,排除在外,而是意味
着可以还包括其它构成要素。
[0029] 其中提到的第一、第二及第三等术语是为了说明多样的部分、成分、区域、层及/或段而使用的,但并非限定于此。这些术语只用于把某部分、成分、区域、层或段区别于其它部
分、成分、区域、层或段。因此,以下叙述的第一部分、成分、区域、层或段在不超出本申请范
围的范围内,可以言及到第二部分、成分、区域、层或段。
[0030] 再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特
征、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、操作、元件、组
件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括
性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:
A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能或操作的组合在某些方式下内在地互相
排斥时,才会出现该定义的例外。
[0031] 为了克服现有技术中机械臂标定精度低不足的问题,本申请提供了一种机械臂自动标定方法、装置、设备、机械臂和介质。
[0032] 如图1所示机械臂的结构示意图。本申请所述的机械臂自动标定方法应用于机械臂上,可参考其中,机械臂基座1上安装有基座参考架41;机械臂末端2的法兰盘上任意位置
安装有标定块参考架42;所述标定块参考架42为能被光学导航系统识别的带反光靶球的参
考架。所述机械臂包括多个可旋转的关节3。另外,需说明的是,本申请所述的机械臂自动标
定方法为通用型方法,可应用至工业机械臂、手术机器人等领域。
[0033] 本申请所述的机械臂自动标定方法主要思想是:一方面获得机械臂基座1与机械臂末端2之间的坐标系转换关系,这里通过机械臂的各个关节角度可以得到;另一方面获得
基座参考架41与标定块参考架42之间的坐标系转换关系,这里可以通过相机特征点的检测
计算获得;最后再通过计算出机械臂基座1与基座参考架41之间的坐标系转换关系,即可实
现机械臂自动标定,而这一步则主要通过机械臂自身的旋转特性,设定指定动作,并结合前
两种坐标系转换关系的变形及点位采集,最后融合计算得到。
[0034] 本方法通过借助串联机械臂自身的旋转特性,可实现了机械臂上参考架安装位置的标定。由于标定过程中均采用的是绕轴旋转来确定圆心的方法,计算精度非常高,标定误
差在0.1mm以内。
[0035] 如图2所示,展示为本申请于一实施例中的机械臂自动标定方法的流程示意图。如图所示,所述方法包括:
[0036] 步骤S201:启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,以获得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵
(或 )。
[0037] 于本实施例中,所述初始位姿可以是运行后暂停的任意姿态的位姿,也可以是预先设定姿态的位姿。
[0038] 优选地,本申请所述的机械臂包含6个关节的旋转角度。对应图1中机械臂的各关节相对位置如图3中所示。
[0039] 于本实施例中,所述机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵既包含由机械臂末端坐标系TCP转换至机械臂基座坐标系Base的第一变换矩阵
也包含由机械臂基座坐标系Base转换至机械臂末端坐标系TCP的第一变换矩阵
两种第一变换矩阵的表达形式可相互转换得到。需说明的是,下文所提到的两坐标
系之间的变换矩阵或旋转变换矩阵或平移变换矩阵,二者坐标系的转换形式可以相互转换
得到。
[0040] 步骤S202:依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵 并令机械臂末端根据机械臂自身旋转特性
执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据以得到对
应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵
[0041] 于本实施例中,所述基座参考架与所述标定块参考架作为特征点可通过相机的内外参数采集姿态;其中,包括平移和旋转的姿态。
[0042] 于本申请一实施例中,所述机械臂末端根据机械臂自身旋转特性执行的指定动作,包括:
[0043] 基础指定动作包括:令机械臂最末端的关节以其自身旋转轴进行多次间断旋转,并旋转一周为止;其中,每次旋转的角度可以是不同的随意角度,也可以是预设的相同角
度。
[0044] 第一指定动作包括:令机械臂末端沿机械臂末端坐标系TCP的Z轴方向移动预设距离,然后重复所述基础指定动作若干次;
[0045] 第二指定动作包括:令机械臂末端恢复至所述初始位姿,再沿机械臂末端坐标系TCP的X轴方向移动预设距离,然后重复所述基础指定动作若干次。
[0046] 这里仅设置机械臂末端沿机械臂末端坐标系TCP的Z轴和X轴方向移动的原因在于,通过Z轴和X轴计算的向量单元可以通过计算得出Z轴方向的向量单元。
[0047] 于本申请一实施例中,所述步骤S202具体包括:
[0048] 步骤S301:根据基础指定动作获取基座参考架坐标系Ref下的旋转圆心。
[0049] 于本实施例中,于本申请一实施例中,所述根据基础指定动作获取基座参考架坐标系Ref下的旋转圆心,包括:
[0050] A、获取标定块坐标系Cali下齐次坐标的原点;
[0051] B、随着所述基础指定动作中机械臂最末端的关节多次间断旋转,依据所述第二变换矩阵及原点,可在基座参考架坐标系Ref下可得到由多个不同点组成的点集,该点集构成
三维空间圆;
[0052] C、依据平面方程到球方程的转换公式,以求得点集构成的三维空间圆的圆心坐标,以对应基座参考架坐标系Ref下的旋转圆心。
[0053] 举例来说,首先,旋转机械臂最末端的关节一圈,其中按一定角度(如10°)间隔记录标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵 然后根
据:
[0054]
[0055] 其中, 为O点在基座参考架坐标系Ref的坐标, 为O点在标定块参考架坐标系Cali下的坐标。
[0056] 其次,由上述公式获得标定块参考架坐标系Cali下齐次坐标原点 随着关节旋转在基座参考架坐标系Ref下得到不同的点所组成的点集 i=1,2,…,n;
记为:
[0057]
[0058] 其中, 可表示为第二变换矩阵 对应的平移变换矩阵。具体地,平移变换矩阵 是3x1列向量,xi,yi,zi分别为该向量的三个分量,脚标i为点集中第i个点。该点集构
成三维空间圆。
[0059] 最后,为了确定其圆心,本申请借助平面方程到球方程的转换公式。具体入如下:
[0060] a)首先设拟合点集的PRef的空间方程为:
[0061]
[0062] 其中,这是一个用于确定平面的方程,a、b、c分别表示参数,R为半径。并且该方程还对应有:
[0063]
[0064] b)利用最小二乘法拟合平面,以计算平面方程的系数:
[0065]
[0066] c)将系数带入平面方程并转换到球方程,则有:
[0067]
[0068]
[0069] d)计算系数:
[0070]
[0071] 所以,圆心为:
[0072]
[0073] 这里,a,b,c为方程组中球方程中的参数,代表圆心的三个分量。
[0074] 步骤S302:依据第一指定动作、及第二指定动作分别获取机械臂末端坐标系TCP下X、Y、Z三轴对应的单位向量。
[0075] 于本申请一实施例中,所述依据第一指定动作、及第二指定动作分别获取机械臂末端坐标系TCP下X、Y、Z三轴对应的单位向量,包括:
[0076] D、在第一指定动作的基础上获取多个依据基础指定动作获取的旋转圆心,以得到对应Z轴的第一圆心点集;以及在第二指定动作的基础上获取多个依据基础指定动作获取
的旋转圆心,以得到对应X轴的第二圆心点集;
[0077] E、针对所述第一圆心点集、及第二圆心点集分别采用最小二乘法拟合直线,以分别得到对应Z轴和X轴的单位向量;
[0078] 举例来说,机械臂末端沿机械臂末端坐标系TCP的Z方向移动δZ的距离,重复步骤S301(或步骤A‑C)若干遍,所有获得的圆心O组成点集OZ,然后采用最小二乘法拟合直线,其
法方向 也表示单位向量。然后,机械臂六个关节运动至初始位姿,再令机械臂末端沿机
械臂末端坐标系TCP的X方向移动δX的距离,步骤S301(或步骤A‑C)若干遍,所有获得的圆心
O组成点集OX,采用最小二乘法拟合直线,其法方向 也表示单位向量。
[0079] F、将Z轴的单位向量与X轴的单位向量相乘以得到Y轴的单位向量。
[0080] 具体公式为:
[0081] 步骤S303:通过X、Y、Z三轴对应的单位向量表示对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵。即 其中, 矩阵是
的旋转变换矩阵,为3x3矩阵,每一列为一个法向量。
[0082] 步骤S203:依据所述第一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵,从而完成
机械臂自动标定。
[0083] 本步骤主要通过求解 来求得最后实现自动标定机械臂所需的机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵 其中, 是 的平
移变换矩阵。
[0084] 于本申请一实施例中,所述步骤S203具体包括:
[0085] 具体依据:
[0086]
[0087] 可得到:
[0088]
[0089] 其中,pTCP表示机械臂末端坐标系TCP下的齐次坐标点,pRef表示基座参考架坐标系Ref下的齐次坐标点,均为为4x1向量,最后一个元素为1。
[0090] pTCP=[0 0ΔZ 1]T,ΔZ为标定块参考架中心到机械臂末端坐标系TCP原点在其Z方向上的偏移; 表示机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换
Ref
矩阵; 表示机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵;p
T
=[OX OY OZ 1];OX,OY,OZ分别为圆心O的三个坐标分量;
[0091] 其中, 表示第一旋转变换矩阵; 表示机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三旋转变换矩阵; 表示对应第一旋转变换矩阵的第一平移变
换矩阵; 表示对应第三旋转变换矩阵的第三平移变换矩阵;
[0092] 并可转换为:
[0093]
[0094] 这里ΔZ为固定值,所述标定块参考架安装到机械臂末端的法兰盘后,标定块参考架中心到机械臂末端坐标系TCP原点的位置便可确定。
[0095] 其中,记录每次机械臂末端执行指定动作时机械臂末端坐标系TCP与机械臂基座坐标系Base之间的多组转换矩阵 将 i=1,2,…,n;带入公式可求得第三
平移变换矩阵
[0096] 需说明的是,所述 具体由步骤S202过程中不同动作位姿下所采集的旋转变换矩阵和平移变换矩阵通过公式以得到的旋转矩阵。
[0097] 由旋转变换矩阵与平移变换矩阵转换为转换矩阵的公式:
[0098]
[0099] 其中, 为旋转变换矩阵, 为平移变换矩阵转, 为转换矩阵;
[0100] 进而可得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵的表达式为:
[0101]
[0102] 由上,根据所述第一旋转变换矩阵 第二旋转变换矩阵 及第三平移变换矩阵 以得到第三旋转变换矩阵
[0103] 综上所述,本申请提出的一种机械臂自动标定方法,借助了串联机械臂自身的旋转特性,实现了机械臂上参考架安装位置的标定。由于标定过程中均采用的是绕轴旋转来
确定圆心的方法,计算精度非常高,标定误差在0.1mm以内。通过为机械臂设定标定程序,机
械臂可以自动标定,标定可在一分钟之内完成。。
[0104] 如图4所示,展示为本申请于一实施例中的电子装置的模块示意图。如图所示,所述装置400包括:
[0105] 第一处理模块401,用于启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,以获得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换
矩阵;
[0106] 第二处理模块402,用于依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵,并令机械臂末端根据机械臂自身
旋转特性执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据
以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵;
[0107] 第三处理模块403,用于依据所述第一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩
阵,从而完成机械臂自动标定。
[0108] 需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本申请所述方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体
内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
[0109] 还需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些单元可
以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分
模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,第三处理模
块403可以为单独设立的处理元件,也可以集成在上述系统的某一个芯片中实现,此外,也
可以以程序代码的形式存储于上述系统的存储器中,由上述装置的某一个处理元件调用并
执行以上第三处理模块403的功能。其它模块的实现与之类似。此外这些模块全部或部分可
以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处
理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件
的集成逻辑电路或者软件形式的指令完成。
[0110] 例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,
一个或多个微处理器(digital signal processor,简称DSP),或,一个或者多个现场可编
程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处
理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器
(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块
可以集成在一起,以片上系统(system‑on‑a‑chip,简称SOC)的形式实现。
[0111] 如图5所示,展示为本申请于一实施例中的计算机设备的结构示意图。如图所示,所述计算机设备500包括:存储器501、处理器502、及通信器503;所述存储器501用于存储计
算机指令;所述处理器502运行计算机指令实现如图2所述的方法;所述通信器503用于与相
机通信连接;所述相机用于通过采集特征点的方式获取的标定块参考架坐标系Cali与基座
参考架坐标系Ref之间的第二变换矩阵。
[0112] 在一些实施例中,所述计算机设备500中的所述存储器501的数量均可以是一或多个,所述处理器502的数量均可以是一或多个,所述处理器503的数量均可以是一或多个,而
图5中均以一个为例。
[0113] 于本申请一实施例中,所述计算机设备500中的处理器502会按照如图,2所述的步骤,将一个或多个以应用程序的进程对应的指令加载到存储器501中,并由处理器502来运
行存储在存储器501中的应用程序,从而实现如图2所述的方法。
[0114] 所述存储器501可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non‑volatile memory),例如至少一个磁盘存储器。所述存储器
501存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的
扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系
统程序,用于实现各种基础业务以及处理基于硬件的任务。
[0115] 所述处理器502可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器
(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific 
Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,
简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0116] 所述通信器503用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信连接。所述通信器503可包含一组或多组不同通信方式的模块,例如,与CAN
总线通信连接的CAN通信模块。所述通信连接可以是一个或多个有线/无线通讯方式及其组
合。通信方式包括:互联网、CAN、内联网、广域网(WAN)、局域网(LAN)、无线网络、数字用户线
(DSL)网络、帧中继网络、异步传输模式(ATM)网络、虚拟专用网络(VPN)和/或任何其它合适
的通信网络中的任何一个或多个。例如:WIFI、蓝牙、NFC、GPRS、GSM、及以太网中任意一种及
多种组合。
[0117] 在一些具体的应用中,所述计算机设备500的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但
是为了清除说明起见,在图5中将各种总线都成为总线系统。
[0118] 于本申请的一实施例中,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如图2所述的方法。
[0119] 在任何可能的技术细节结合层面,本申请可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本申请的
各个方面的计算机可读程序指令。
[0120] 计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、
电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具
体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器
(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩
盘只读存储器(CD‑ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储
有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可
读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波
导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电
信号。
[0121] 这里所描述的计算机可读程序可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存
储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算
机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机
可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机
可读存储介质中。
[0122] 用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种
或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程
语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计
算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一
个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计
算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网
络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机
(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读
程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列
(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申
请的各个方面。
[0123] 综上所述,本申请提供的一种机械臂自动标定方法、装置、设备、机械臂和介质,通过启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,以获得机械
臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;依据由相机采集特征点
的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵,
并令机械臂末端根据机械臂自身旋转特性执行指定动作,以采集不同动作姿态下所述标定
块参考架的旋转圆心的点集,据以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP
之间的第二旋转变换矩阵;依据所述第一变换矩阵得到第一旋转变换矩阵,结合第二旋转
变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵,从
而完成机械臂自动标定。
[0124] 本申请有效克服了现有技术中的种种缺点而具高度产业利用价值。
[0125] 上述实施例仅例示性说明本申请的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本申请的精神及范畴下,对上述实施例进行修饰或改变。因
此,举凡所属技术领域中包含通常知识者在未脱离本发明所揭示的精神与技术思想下所完
成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。