机械臂自动标定方法、装置、设备、机械臂和介质转让专利
申请号 : CN202011172437.5
文献号 : CN112318506B
文献日 : 2021-12-17
发明人 : 刘剑楠 , 陈晓军 , 张陈平 , 胡俊磊 , 韩婧 , 周子疌
申请人 : 上海交通大学医学院附属第九人民医院 , 上海交通大学
摘要 :
权利要求 :
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中任意一项所述的方法。
说明书 :
机械臂自动标定方法、装置、设备、机械臂和介质
技术领域
背景技术
臂基座上的方案不存在机械臂运动时产生的遮挡问题。光学定位仪能确定光学定位参考架
的位置,需要获得安装在机械臂基座上的参考架与基座之间的位置关系,才能计算出机械
臂末端的位置。
在机械臂上安装光学定位参考架。
=YB,但计算精度相对于绕轴旋转相对低。
发明内容
标定块参考架;所述标定块参考架为能被光学导航系统识别的带反光靶球的参考架;所述
方法包括:启动机械臂并运行至一初始位姿,通过记录机械臂上每个关节的旋转角度,以获
得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;依据由相机采集
特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换
矩阵,并令机械臂末端根据机械臂自身旋转特性执行指定动作,以采集不同动作姿态下所
述标定块参考架的旋转圆心的点集,据以得到对应基座参考架坐标系Ref与机械臂末端坐
标系TCP之间的第二旋转变换矩阵;依据所述第一变换矩阵得到第一旋转变换矩阵,结合第
二旋转变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩
阵,从而完成机械臂自动标定。
并旋转一周为止;第一指定动作包括:令机械臂末端沿机械臂末端坐标系TCP的Z轴方向移
动预设距离,然后重复所述基础指定动作若干次;第二指定动作包括:令机械臂末端恢复至
所述初始位姿,再沿机械臂末端坐标系TCP的X轴方向移动预设距离,然后重复所述基础指
定动作若干次。
自身旋转特性执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点
集,据以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩
阵,包括:根据基础指定动作获取基座参考架坐标系Ref下的旋转圆心;依据第一指定动作、
及第二指定动作分别获取机械臂末端坐标系TCP下X、Y、Z三轴对应的单位向量;通过X、Y、Z
三轴对应的单位向量表示对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二
旋转变换矩阵。
臂最末端的关节多次间断旋转,依据所述第二变换矩阵及原点,可在基座参考架坐标系Ref
下可得到由多个不同点组成的点集,该点集构成三维空间圆;依据平面方程到球方程的转
换公式,以求得点集构成的三维空间圆的圆心坐标,以对应基座参考架坐标系Ref下的旋转
圆心。
依据基础指定动作获取的旋转圆心,以得到对应Z轴的第一圆心点集;以及在第二指定动作
的基础上获取多个依据基础指定动作获取的旋转圆心,以得到对应X轴的第二圆心点集;针
对所述第一圆心点集、及第二圆心点集分别采用最小二乘法拟合直线,以分别得到对应Z轴
和X轴的单位向量;将Z轴的单位向量与X轴的单位向量相乘以得到Y轴的单位向量。
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之间的第三变换矩阵的表达式为:
根据所述第一旋转变换矩阵 第二旋转变换矩阵 及第三平移变换矩阵 以
得到第三旋转变换矩阵
以获得机械臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;第二处理模
块,用于依据由相机采集特征点的方式所获取的标定块参考架坐标系Cali与基座参考架坐
标系Ref之间的第二变换矩阵,并令机械臂末端根据机械臂自身旋转特性执行指定动作,以
采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据以得到对应基座参考架坐标
系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵;第三处理模块,用于依据所述第
一变换矩阵得到第一旋转变换矩阵,结合第二旋转变换矩阵以得到机械臂基座坐标系Base
与基座参考架坐标系Ref之间的第三变换矩阵,从而完成机械臂自动标定。
现如上所述的方法;所述通信器用于与相机通信连接。
置安装有标定块参考架;所述标定块参考架为能被光学导航系统识别的带反光靶球的参考
架;所述机械臂包括多个可旋转的关节。
附图说明
具体实施方式
施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离
本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施
例中的特征可以相互组合。
寸绘制,但其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型
态也可能更为复杂。
某种构成要素时,只要没有特别相反的记载,则并非将其它构成要素,排除在外,而是意味
着可以还包括其它构成要素。
分、成分、区域、层或段。因此,以下叙述的第一部分、成分、区域、层或段在不超出本申请范
围的范围内,可以言及到第二部分、成分、区域、层或段。
征、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、操作、元件、组
件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括
性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:
A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能或操作的组合在某些方式下内在地互相
排斥时,才会出现该定义的例外。
安装有标定块参考架42;所述标定块参考架42为能被光学导航系统识别的带反光靶球的参
考架。所述机械臂包括多个可旋转的关节3。另外,需说明的是,本申请所述的机械臂自动标
定方法为通用型方法,可应用至工业机械臂、手术机器人等领域。
基座参考架41与标定块参考架42之间的坐标系转换关系,这里可以通过相机特征点的检测
计算获得;最后再通过计算出机械臂基座1与基座参考架41之间的坐标系转换关系,即可实
现机械臂自动标定,而这一步则主要通过机械臂自身的旋转特性,设定指定动作,并结合前
两种坐标系转换关系的变形及点位采集,最后融合计算得到。
差在0.1mm以内。
(或 )。
也包含由机械臂基座坐标系Base转换至机械臂末端坐标系TCP的第一变换矩阵
两种第一变换矩阵的表达形式可相互转换得到。需说明的是,下文所提到的两坐标
系之间的变换矩阵或旋转变换矩阵或平移变换矩阵,二者坐标系的转换形式可以相互转换
得到。
执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据以得到对
应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵
度。
三维空间圆;
据:
记为:
成三维空间圆。
的旋转圆心,以得到对应X轴的第二圆心点集;
法方向 也表示单位向量。然后,机械臂六个关节运动至初始位姿,再令机械臂末端沿机
械臂末端坐标系TCP的X方向移动δX的距离,步骤S301(或步骤A‑C)若干遍,所有获得的圆心
O组成点集OX,采用最小二乘法拟合直线,其法方向 也表示单位向量。
的旋转变换矩阵,为3x3矩阵,每一列为一个法向量。
机械臂自动标定。
移变换矩阵。
Ref
矩阵; 表示机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵;p
T
=[OX OY OZ 1];OX,OY,OZ分别为圆心O的三个坐标分量;
换矩阵; 表示对应第三旋转变换矩阵的第三平移变换矩阵;
平移变换矩阵
确定圆心的方法,计算精度非常高,标定误差在0.1mm以内。通过为机械臂设定标定程序,机
械臂可以自动标定,标定可在一分钟之内完成。。
矩阵;
旋转特性执行指定动作,以采集不同动作姿态下所述标定块参考架的旋转圆心的点集,据
以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP之间的第二旋转变换矩阵;
阵,从而完成机械臂自动标定。
内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分
模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,第三处理模
块403可以为单独设立的处理元件,也可以集成在上述系统的某一个芯片中实现,此外,也
可以以程序代码的形式存储于上述系统的存储器中,由上述装置的某一个处理元件调用并
执行以上第三处理模块403的功能。其它模块的实现与之类似。此外这些模块全部或部分可
以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处
理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件
的集成逻辑电路或者软件形式的指令完成。
一个或多个微处理器(digital signal processor,简称DSP),或,一个或者多个现场可编
程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处
理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器
(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块
可以集成在一起,以片上系统(system‑on‑a‑chip,简称SOC)的形式实现。
算机指令;所述处理器502运行计算机指令实现如图2所述的方法;所述通信器503用于与相
机通信连接;所述相机用于通过采集特征点的方式获取的标定块参考架坐标系Cali与基座
参考架坐标系Ref之间的第二变换矩阵。
图5中均以一个为例。
行存储在存储器501中的应用程序,从而实现如图2所述的方法。
501存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的
扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系
统程序,用于实现各种基础业务以及处理基于硬件的任务。
(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific
Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,
简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
总线通信连接的CAN通信模块。所述通信连接可以是一个或多个有线/无线通讯方式及其组
合。通信方式包括:互联网、CAN、内联网、广域网(WAN)、局域网(LAN)、无线网络、数字用户线
(DSL)网络、帧中继网络、异步传输模式(ATM)网络、虚拟专用网络(VPN)和/或任何其它合适
的通信网络中的任何一个或多个。例如:WIFI、蓝牙、NFC、GPRS、GSM、及以太网中任意一种及
多种组合。
是为了清除说明起见,在图5中将各种总线都成为总线系统。
各个方面的计算机可读程序指令。
电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具
体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器
(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩
盘只读存储器(CD‑ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储
有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可
读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波
导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电
信号。
储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算
机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机
可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机
可读存储介质中。
或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程
语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计
算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一
个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计
算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网
络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机
(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读
程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列
(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申
请的各个方面。
臂末端坐标系TCP与机械臂基座坐标系Base之间的第一变换矩阵;依据由相机采集特征点
的方式所获取的标定块参考架坐标系Cali与基座参考架坐标系Ref之间的第二变换矩阵,
并令机械臂末端根据机械臂自身旋转特性执行指定动作,以采集不同动作姿态下所述标定
块参考架的旋转圆心的点集,据以得到对应基座参考架坐标系Ref与机械臂末端坐标系TCP
之间的第二旋转变换矩阵;依据所述第一变换矩阵得到第一旋转变换矩阵,结合第二旋转
变换矩阵以得到机械臂基座坐标系Base与基座参考架坐标系Ref之间的第三变换矩阵,从
而完成机械臂自动标定。
此,举凡所属技术领域中包含通常知识者在未脱离本发明所揭示的精神与技术思想下所完
成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。