一种SCARA机器人eye-to-hand手眼系统的标定方法
技术领域
本发明属于SCARA机器人应用技术改进领域,尤其涉及一种SCARA机器人eye-to-hand手眼系统的标定方法。
背景技术
在工业机器人的应用领域,工业视觉发挥着越来越重要的作用,它主要用于待抓取工件的定位、机器人的纠偏等方面。根据工业相机和机器人的相对位置关系的不同,手眼系统分为eye-to-hand形式(相机固定安装于机器人外)和eye-in-hand形式(相机固定安装于机器人末端工具上)。
对于eye-to-hand形式手眼系统,目前主流的相机和手眼标定方法是通过机器人末端安装标定针,然后让标定针对标定板的方式手动取点然后进行标定,这种手眼标定方法,在工业现场具有取点复杂、标定精度差等缺点。
针对以上问题,建立SCARA机器人eye-to-hand手眼系统中相机拍摄的特征点像素值和机器人末端坐标之间的矩阵转换关系;采用自动取点的方式,采集九个点的像素值和机器人末端坐标值,使用最小二乘法,计算得到手眼系统的内参和虚拟外参的值;使机器人带工具旋转两次并拍照特征点,根据两次拍照机器人和相机相对位置关系不变建立等式,计算得到机器人的工具和相机的真实外参值,完成手眼标定的全过程。这样,可以在保证插补精度的情况下,简单便捷的完成eye-to-hand手眼系统的标定。
发明内容
本发明的目的在于提供一种SCARA机器人eye-to-hand手眼系统的标定方法,旨在解决的问题。
本发明是这样实现的,一种SCARA机器人eye-to-hand手眼系统的标定方法,所述SCARA机器人eye-to-hand手眼系统的标定方法包括以下步骤:
S1、在SCARA机器人eye-to-hand手眼系统中,将相机拍摄的特征点像素值和机器人末端坐标之间建立矩阵转换关系;
S2、任意采集九个点相机拍摄的特征点像素值和机器人末端坐标值,计算获取手眼系统的内参值和虚拟外参值;
S3、使机器人带工具旋转两次并拍照特征点像素值,根据两次拍照时机器人和相机的相对位置关系不变建立等式,计算获取机器人的工具和相机的真实外参值。
本发明的进一步技术方案是:所述步骤S1中还包括以下步骤:
S11、将拍摄得到的特征点像素值(u,v)和机器人工具末端特征点在相机坐标系下的坐标之间P
c(x
c,y
c)建立转换关系,转换关系式:
其中,M
1为相机内参,u和v为特征点像素值。
本发明的进一步技术方案是:所述步骤S1中还包括以下步骤:
S12、将特征点在相机坐标系下的坐标P
c和其在机器人坐标系下的坐标P
w之间建立关系,其关系式为:
其中,M
2为相机相对于机器人基坐标系的转换矩阵,M
3为机器人工具坐标的平移矩阵,P
o为机器人末端在机器人坐标系下的坐标。
本发明的进一步技术方案是:所述步骤S2中还包括以下步骤:
S21、设定机器人每次运动的步长(Δl),使机器人末端x或y到达1-9点,然后拍照,采集机器人工具末端特征点像素值(u,v)和机器人在1-9点的机器人坐标值Po。
本发明的进一步技术方案是:所述步骤S2中还包括以下步骤:
S12、将机器人在9个点处对应的像素值和机器人坐标值带入矩阵转换关系中得到矩阵方程组:Aβ=B,其中,A和B矩阵根据9个点的像素值和机器人坐标值计算得到,β为包含了手眼系统内外参的组合矩阵。
本发明的进一步技术方案是:所述步骤S2中还包括以下步骤:
S23、使用最小二乘法求得组合矩阵β计算得到相机的内参矩阵M1和手眼系统的虚拟外参矩阵M′2的值,组合矩阵:β=(AT*A)-1*AT*B。
本发明的进一步技术方案是:所述步骤S3中还包括以下步骤:
S31、机器人返回原始拍照点,旋转两次机械手臂J4轴,机器人工具末端分别到达P21和P22点,对其进行拍照特征点,得到两次拍照的像素值,根据像素值和标定得到的内参矩阵M1,计算两次特征点在相机坐标系下的坐标Pc1和Pc2。
本发明的进一步技术方案是:所述步骤S3中还包括以下步骤:
S32、设标定计算获取的虚拟外参矩阵M′2的旋转量为M2R,真实外参的旋转量也为M2R,根据两次拍照时,相机在机器人坐标系下的坐标不变,建立表达式关系:
其中,W
1和W
2分别为机器人J4关节旋转两次时的机器人的姿态角值。
本发明的进一步技术方案是:所述步骤S3中还包括以下步骤:
S33、根据S32中建立表达式关系建立方程组得到M3矩阵中工具半径R和工具偏角θ的值获取拍照点处M3矩阵的值。
本发明的进一步技术方案是:所述步骤S3中还包括以下步骤:
S34、将M3矩阵的值带入虚拟外参M′2的表达式中,计算得到手眼系统的真实外参M2的值,完成手眼标定的全过程。
本发明的有益效果是:该标定方法,能在不需要附加标定板的情况下,简单、方便、精确地标定出机器人的内外参和机器人的工具坐标。
附图说明
图1是本发明实施例提供的SCARA机器人eye-to-hand自动手眼标定方法示意图。
图2是本发明实施例提供的机器人自动取点示意图。
图3是本发明实施例提供的机器人J4关节转动两下计算工具坐标的示意图。
图4是本发明实施例提供的机器人坐标系和相机坐标系的示意图。
图5是本发明实施例提供的SCARA机器人eye-to-hand手眼系统的标定方法的流程图。
具体实施方式
如图1-5所示,本发明提供的SCARA机器人eye-to-hand手眼系统的标定方法,其详述如下:
步骤S1,在SCARA机器人eye-to-hand手眼系统中,将相机拍摄的特征点像素值和机器人末端坐标之间建立矩阵转换关系;如附图1所示,使机器人到达拍照点处(机器人末端特征点最好接近于相机视野中心),建立拍照得到的特征点像素值(u,v)和机器人工具末端特征点在相机坐标系下的坐标之间Pc(xc,yc)的转换关系:
式中,M1为相机内参,u和v为特征点像素值。
(2)建立特征点在相机坐标系下的坐标Pc和其在机器人坐标系下的坐标Pw之间的关系:
Pw=M3*PO
式中M2为相机相对于机器人基坐标系的转换矩阵,即手眼系统中相机的外参,M3为相机工具坐标的平移矩阵,Po为机器人末端在机器人坐标系下的坐标。
联立以上式子,可以得到:
即
令M′2=M2*M3,则
令M′2为手眼系统的虚拟外参矩阵。这样,建立机器人工具末端特征点像素值和机器人末端在机器人坐标系下的坐标之间的矩阵转换关系。
步骤S2,任意采集九个点相机拍摄的特征点像素值和机器人末端坐标值,计算获取手眼系统的内参值和虚拟外参值;如附图2所示,从原始拍照点开始,设定机器人每次运动的步长(△l),使机器人末端只动x或y到达1-9点,然后拍照,采集机器人工具末端特征点像素值(u,v)和机器人在1-9点的机器人坐标值PO:
(2)将机器人在9个点处对应的像素值和机器人坐标值带入上文得到的矩阵转换关系中,可以得到下列形式的矩阵方程组:
Aβ=B
式中,A和B矩阵根据9个点的像素值(u,v)和机器人坐标值PO计算得到,β为包含了手眼系统内外参的组合矩阵。
(3)使用最小二乘法,即可以得到β:
β=(AT*A)-1*AT*B
进而可以计算得到相机的内参矩阵M1和手眼系统的虚拟外参矩阵M′2的值。
步骤S3,使机器人带工具旋转两次并拍照特征点像素值,根据两次拍照时机器人和相机的相对位置关系不变建立等式,计算获取机器人的工具和相机的真实外参值。使机器人带工具旋转两次并拍照特征点,根据两次拍照机器人和相机相对位置关系不变建立等式,计算得到机器人的工具和相机的真实外参值M2:(1)使机器人回到原始拍照点,转动两下J4轴,机器人工具末端分别到达P21和P22点,分别拍照特征点,得到两次拍照得到的像素值,根据像素值和标定得到的内参矩阵M1,计算两次特征点在相机坐标系下的坐标Pc1和Pc2,如附图3所示。
(2)设标定计算得到的虚拟外参矩阵M′2(3×3矩阵)的旋转量为M2R(2×2矩阵),因为M3矩阵不包括旋转量(其相关参数为工具半径R和工具偏角θ),所以真实外参的旋转量也为M2R,根据两次拍照时,相机在机器人坐标系下的坐标不变,建立表达式关系:
式中,W1和W2分别为机器人J4关节旋转两次时的机器人的姿态角值。
(3)根据上式,即可建立方程组得到M3中工具半径R和工具偏角θ的值,进而得到拍照点处M3矩阵的值。
(4)将M3矩阵的值带入虚拟外参M′2的表达式中,即可计算得到手眼系统的真实外参M2的值,完成手眼标定的全过程。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。