一种机械臂末端相机手眼标定方法和系统与流程

文档序号:17470554发布日期:2019-04-20 05:47阅读:2078来源:国知局
一种机械臂末端相机手眼标定方法和系统与流程

本申请涉及机械臂空间姿态求解领域,特别涉及一种机械臂末端相机手眼标定方法和系统。



背景技术:

随着计算机技术,数字图像处理的迅速发展,机器视觉在科学研究,工业控制及国防建设领域都有着广泛的应用。机器视觉可以作为工业机械臂获取外界环境信息的主要手段,从而提高工业生产的柔性智能化及自动化水平。通过相机标定建立图像像素坐标和空间位置坐标之间的对应关系,是机器视觉在机器人领域应用的关键环节,也是机械臂配合视觉进行引导动作的基础。根据相机标定的结果以及分拣目标在图像中位置坐标可以准确计算出该目标在机械臂坐标系中的位置坐标,这是机械臂准确抓取目标的前提。相机自标定,本质上就是根据相机成像的模型求解相机内部参数和外部参数,这些参数是后续求解图像像素坐标系和空间坐标系对应关系的基础。因此,这些参数的准确性对求解的像素空间坐标的准确性有重要的影响。而相机与机械臂末端之间的相对转换关系,对于相机安装在机械臂末端的应用往往是确定的,但是空间转换关系,难以测量。

中国发明专利(申请号201711038822.9)名称“机械臂末端的单相机的手眼标定方法”公开了一种装在机械臂末端的手眼标定方法,主要解决平面内机械臂末端旋转运动下的手眼关系标定,将机械臂末端坐标投影到像素坐标下,该专利没有解决空间中末端同时具有旋转和平移运动时相机到机械臂末端的手眼关系标定问题。



技术实现要素:

为解决上述问题之一,本申请提供了一种机械臂末端相机手眼标定方法和系统。

根据本申请实施例的第一个方面,提供了一种机械臂末端相机手眼标定方法,该方法的步骤包括:

获取机械臂多次同时平移和旋转时,对标定区域采集的标定图像;

基于机械臂位姿信息和标定图像外部参数信息,获得手眼标定矩阵;

利用所述手眼标定矩阵对机械臂末端的手眼关系进行标定。

根据本申请实施例的第二个方面,提供了一种机械臂末端相机手眼标定系统,该系统包括:

姿态控制模块,控制机械臂同时进行平移和旋转运动;

图像采集模块,获取机械臂多次同时平移和旋转时,对标定区域采集的标定图像;

计算模块,基于机械臂位姿信息和标定图像外部参数信息,获得手眼标定矩阵。

本方案利用三个或更多不同的位置下的空间运动及图像采集来完成对相机的标定,根据多次空间相对位置对手眼关系进行约束的原理,标定过程只需要获得至少三个空间位置相对于基座位置及相机外部参数,对不同机械臂型号及自由度数量,相机型号均可通用;

本方案利用平移旋转矩阵变换,将机械臂末端坐标投影到像素坐标下,从而解决了空间中末端同时具有旋转和平移运动时相机到机械臂末端的手眼关系标定问题。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出本方案所述机械臂末端相机手眼标定系统的示意图;

图2示出本方案所述对机械臂控制的示意图;

图3示出本方案所述机械臂末端相机手眼标定方法的示意图;

图4示出本方案所述手眼关系矩阵的示意图;

图5示出本方案所述标定板的示意图。

具体实施方式

为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

本方案的核心思路是利用机械臂多个不同位置下的图像对相机进行标定,根据多次空间相对位置对手眼关系进行约束;进一步的,求解手眼矩阵的过程中,将手眼矩阵分成旋转和平移两个部分分别进行求解,先求转动部分,然后对旋转部分正交化再求平移部分,从而获得同时具有旋转和平移运动时相机到机械臂末端的手眼关系的标定。

如图1所示,本方案公开了一种机械臂末端相机手眼标定系统,该系统包括:标定板、姿态控制模块、图像采集模块和计算模块。利用姿态控制模块实现机械臂的各个关节运动,使得末端空间位置发生变化。利用图像采集模块中工业相机对标定板进行拍照,再利用采集计算机对图像进行采集。计算模块对机械臂位姿信息和标定图像外部参数信息进行处理,获得手眼标定矩阵。

如图2所示,利用控制计算机向机械臂驱动器发送控制信号,利用机械臂驱动器驱动多自由度机械臂运动。本方案中,驱动器和控制计算机型号不限,可采用通用的设备。控制计算机给出数字控制指令,通过ethernet/can总线控制驱动器输出驱动电流,从而驱动各个关节电机运动,各关节上安装力学或位置传感器反馈信号给控制器。当各个关节角度确定时,第i次运动末端空间相对于基座的坐标gi即可求得。

如图3所示,工业相机对标定板进行拍照,利用采集计算机对工业相机拍摄的图像进行采集。采集计算机可以根据机械臂运动的次数按照预定的次数进行图像采集。首先,将工业相机固定在机械臂末端,控制机械臂末端运动到某一空间固定位置时并满足标定板处于在相机视野范围内的图像清晰且明亮,即可进行图像采集保存,反复若干次之后,对这些图像利用电脑软件matlab中的图像处理工具箱检测标定板上黑白格之间的内角点,由于实际上标定板上角点之间的约束关系是固定的,从而可根据多幅图像的进行相机的内部及外部参数辨识,从而得到第i次运动时相机的外参ci。图5所示,标定板选择黑白棋盘格,尺寸大小可依情况设定。

如图4所示,现定义如下坐标系:

{g}——机械臂基座坐标系;

{c}——相机光心坐标系;

{e}——机械臂末端工具坐标系;

{k}——棋盘格标定板坐标系。

对于眼在手上系统,由于工业相机随机械臂末端一起运动,所以相机坐标系相对于机械臂的世界坐标系是不停变化的。相机固定在机械臂的末端,所以相机坐标系相对于机械臂末端坐标系的关系是固定的,用hcg阵表示。

因此,对于眼在手上系统,手眼标定时求取的是相机坐标系相对于机械臂末端坐标系的关系。目前,一般采用的方法描述如下:在机械臂末端处于不同位置和姿态下(以i和j为例),对相机相对于靶标的外参数进行标定,根据靶标相对于相机光心坐标系{c}下的位置姿态ci,cj(由相机标定外参数矩阵确定)和机械臂末端在机械臂基座坐标系{g}下的位置和姿态gi,gj(由机械臂连杆参数和关节角求解运动学正解),即可计算手眼关系矩阵。由第i次运动和第j次运动之间的坐标变换关系有:

gijhcg=hcgcij

其中,gij和cij分别表示末端第i次运动到第j次运动的g和c的转移矩阵,由相对关系可得:

cj=cijci

gi=gjgij

故可计算出两个转移矩阵,若设a=gij,b=cij,x=hcg则手眼关系矩阵的求解转化为方程ax=xb的求解,其中,a,b皆为4×4矩阵,x为齐次变换矩阵

对如图4所示构建的手眼关系矩阵进行求解:

4×4矩阵分别用相应的旋转矩阵与平移向量写出:

可得:

rar=rrb

rat+ta=rtb+t

其中ra,rb,ta,tb,且r,ra,rb均为正交单位矩阵,r和t待求解。矩阵r定义了空间中任意点的运动,该运动可看作围绕k轴旋转θ角度,k轴与θ由r矩阵唯一确定。我们将r写成r(k,θ),k为单位向量,θ表示旋转轴的方向。在标定过程中,控制机器人末端执行两次运动,可以得到如下四个关系式:

ra1r=rrb1

ra1t+ta1=rtb1+t

ra2r=rrb2

ra2t+ta2=rtb2+t

其中ra1,ta1,ra2,ta2分别为两次运动的参数,至少由三次摄像机标定后的外部参数给出;rb1,tb1,rb2,tb2由两次运动时机器人控制器给出。又由

若ra(ka,θ)r=rrb(kb,θ),则ka=rkb

当满足旋转轴ka1与ka2不相互平行时,上式中的矩阵为满秩矩阵,可得

r=(ka1ka2ka1×ka2)(kb1kb2kb1×kb2)-1

解出的r再带入上式中得到关于t的三个分量的四个独立线性方程,任取三个可解出t,或利用最小二乘法对上述矩阵进行求解,获得机械臂末端相机的手眼标定矩阵。

本方案为了提高方法解算的精度,首先,可以求解手眼矩阵的过程中,将手眼矩阵分成旋转和平移两个部分分别进行求解,先求转动部分,然后对旋转部分正交化再求平移部分。还可以进行多次机械臂末端相对运动及图像采集,利用最小二乘法求解最优数值解,避免只采集一次相对运动对计算带来的偶然性。

综上所述,本方案利用三个或更多不同的位置下的空间运动及图像采集来完成对相机的标定,根据多次空间相对位置对手眼关系进行约束的原理,标定过程只需要获得至少三个空间位置相对于基座位置及相机外部参数,对不同机械臂型号及自由度数量,相机型号均可通用;本方案利用平移旋转矩阵变换,将机械臂末端坐标投影到像素坐标下,从而解决了空间中末端同时具有旋转和平移运动时相机到机械臂末端的手眼关系标定问题。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上仅为本发明的实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均包含在申请待批的本发明的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1