(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(10)申请公布号 CN 106839979 A
(43)申请公布日 2017.06.13
(21)申请号 CN201611262707.5
(22)申请日 2016.12.30
(71)申请人 上海交通大学
    地址 200240 上海市闵行区东川路800号
(72)发明人 郑健 张轲 朱晓鹏 罗志锋 王志刚 陈易新
(74)专利代理机构 上海汉声知识产权代理有限公司
    代理人 郭国中
(51)Int.CI
      G01B11/00
                                                                  权利要求说明书 说明书 幅图
(54)发明名称
      激光线结构光传感器的手眼标定方法
(57)摘要
      本发明提供了一种激光线结构光传感器的手眼标定方法,包括:在传感器上建立传感器坐标系,传感器中激光器投射结构光光平面至靶标产生一道结构光条纹,调整机器人位姿使该条纹与标定模板上的直线相交,形成特征点,记录此时机器人位姿参数及传感器输出数据;由传感器的输出结合其几何参数,可获取激光条纹上每个点在传感器坐标系下的三维坐标;对条纹与标定模板上直线相交产生的特征点进行提取。重复上述过程得到N组不同的机器人位姿参数与每组参数下对应的特征点,在空间直线约束下采集的N组数据将标定问题转化为最小二乘问题,利用优化算法求解该问题。本发明的方法简便易行,位置和姿态控制精确,效率高,质量好,具有较高的实用价值。
法律状态
手眼
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.一种激光线结构光传感器的手眼标定方法,其特征在于,包括如下步骤:
步骤1:将传感器通过工装夹具夹持于机器人末端连杆上,其中所述传感器为激光线结构光传感器;
步骤2:在传感器上建立坐标系O<Sub>1</Sub>X<Sub>1</Sub>Y<Sub>1</Sub>Z<Sub>1</Sub>,传感器的中激光器投射结构光光平面至靶标产生一道结构光条纹;令i=1;
步骤3:调整机器人位姿使所述结构光条纹与标定模板上的直线相交形成特征点,并记录当前时刻机器人位姿参数及传感器的输出数据;
步骤4:提取结构光条纹与标定模板直线相交所形成的特征点,得到特征点在传感器坐标系下的坐标;
具体地,由传感器的输出结合相应的几何参数,能够获取结构光条纹上每个特征点在传感器坐标系下的三维坐标,记为(x<Sub>1</Sub>,y<Sub>1</Sub>,z<Sub>1</Sub>);
步骤5:判断i是否小于N,若小于则返回执行步骤3,令i自增1;若i大于等于N,得到N组特征点的坐标数据,执行步骤6;
步骤6:利用在空间直线约束下采集的N组特征点的坐标数据将标定问题转化为最小二乘问题,利用优化算法求解该最小二乘问题。
2.根据权利要求1所述的激光线结构光传感器的手眼标定方法,其特征在于,所述步骤2中在传感器上建立坐标系O<Sub>1</Sub>X<Sub>1</Sub>Y<Sub>1</Sub>Z<Sub>1</Sub>包括:定义传感器坐标系的原点位于激光出射点,定义Z轴沿着出射激光角角平分线方向,X轴位于光平面内垂直于Z轴,Y轴垂直于光平面,可以由右手定则确定Y轴的方向。
3.根据权利要求1所述的激光线结构光传感器的手眼标定方法,其特征在于,所述步骤4包括:求取传感器输出曲线的二阶导数,其中所述二阶导数的最大值及最小值为待考量值,根据标定模块与线结构光相对位置确定特征点所对应的最值,记为P。
4.根据权利要求1所述的激光线结构光传感器的手眼标定方法,其特征在于,所述步骤6中的最小二乘问题的求解步骤如下:
步骤6.1:根据机器人运动学公式、标定模板的直线方程将机器人末端坐标系之间手眼关系标定问题转化为最优化问题;所述机器人运动学公式如下:
[p>T</Sup>=T<Sub>BE</Sub>>EL</Sub>[x<Sub>p</Sub>>p</Sub>>p</Sub>>T</Sup>
式中:(x<Sub>p</Sub>>p</Sub>>p</Sub>)表示特征点P在传感器坐标系下的坐标,T<Sub>BE</Sub>表示末端连杆坐标系相对于世界坐标系的齐次变换矩阵,T<Sub>EL</Sub>表示传感器坐标系相对于末端连杆坐标系的齐次变换矩阵,[p>T</Sup>中p表示特征点在世界坐标系上的三维坐标;
假设标定模板直线方程为
<Math><MathText>><mrow><mfrac><mrow><mi>x</mi><mo>-</mo><msub><mi>x</mi><mn>0</mn></msub></mrow><mi>m</mi></mfrac><mo>=</mo><mfrac><mrow><mi>y</mi><mo>-</mo><msub><mi>y</mi><mn>0</mn></msub></mrow><mi>l</mi></mfrac><mo>=</mo><mfrac><mrow><mi>z</mi><mo>-</mo><msub><mi>z</mi><mn>0</mn></msub></mrow><mi>n</mi></mfrac></mrow></math>></
Math>
式中:x、y、z分别表示传感器坐标系的坐标变量,(x<Sub>0</Sub>,y<Sub>0</Sub>,z<Sub>0</Sub>)为直线上一点,(m,l,n)为该直线方向向量;
则标定模板直线外一点(x<Sub>b</Sub>,y<Sub>b</Sub>,z<Sub>b</Sub>)到标定模板直线的距离的平方,记为d<Sup>2</Sup>,计算公式如下:
d<Sup>2</Sup>=(x<Sub>b</Sub>-x<Sub>0</Sub>)<Sup>2</Sup>+(y<Sub>b</Sub>-y<Sub>0</Sub>)<Sup>2</Sup>+(z<Sub>b</Sub>-z<Sub>0</Sub>)<Sup>2</Sup>