一种改进的机器人视觉点云手眼标定方法

2022-08-26 03:03刘明贺邢运隆
机电产品开发与创新 2022年4期
关键词:手眼球心标定

刘明贺, 邢运隆

(沈阳建筑大学 机械工程学院, 辽宁 沈阳 110168)

0 引言

在现代工业发展进程中,由于机械臂通用性强,柔性强,自动化程度高等优点,并且在高精加工领域的作用日益显著,其在工业发展中的应用和需求日益增高,工业机器人的自动化加工必将成为未来工业发展的主导[1-3]。 解决工业机械臂手眼关系的精度问题成为推动机器人高精度应用的关键一步[4-6]。

解决机器人手眼关系一直是智能加工的重要课题,Larsson S[7]提出3D 激光扫描仪与机械臂协同工作,为解决复杂工件的扫描任务提出了一种快速、高效、易操作的方案。 Roger Y[8]提出了将标定物固定在工作空间,驱动机械臂以不同空间位置对其扫描的方法, 得到初步手眼关系,用解矩阵方程组问题代替手眼标定问题。 用奇异值分解法求解相关矩阵[9-10],再用卡尔曼滤波法[11]以及非线性最优化[12]方法等。

李永泉等[13]基于环路增量法,设计了平面两个自由度的并联机器人标定模型, 建立了一种新型的标定实验靶板和相机针孔模型,多次迭代完成标定。 许国树等[14]基于光束法平差(BA)处理微运动图像序列。 基于MDH 参数的矩阵标定方法对噪声敏感,稳定性一般。Feng 等[15]将机械臂与相机扫描仪视作一个整体, 因忽视手眼标定的系统性误差,故难以达到高精度要求。 Wang 等[16]采用纸质棋盘、镜子双目测量系统完成全自动手眼全自动标定法。陈宝存等[17]基于ROS 操作平台完成了机械臂驱动、空间规划、图像分析和标定求解等功能。 Ren 等[18]首次采用靶球作为扫描对象, 通过改变机械臂的位姿变化得到多组数据计算可得到各个坐标系之间的空间位置关系。

本文提出了一种改进的基于视觉点云的手眼关系测定方法。 基于机器人运动学模型得到初始的手眼关系矩阵;然后使用标定球作为标定参照物,结合标定球心约束同时标定机器人运动学结构参数误差和手眼关系误差,最终实现机器人结构参数的准确更新并得到更精准的手眼关系。 实验采用UR10 机械臂作为实验平台,使用ArgusTools,CloudCompare 和GeomagicStudio 等软件对Eyein-Hand 手眼系统进行实验,对标定球进行扫描,完成图像和数据的采集和处理, 拟合出标定球得到球心坐标信息, 再用激光跟踪仪完成验证实验进一步提高了本方案的科学性和有效性。

1 标定过程

1.1 设备及对应坐标系

整个实验设备见图1,本文设计了一套Eye-in-Hand手眼标定系统,将扫描仪,即相机固定在机械臂末端的法兰盘上,等离子枪即“手”也固定在法兰盘上,其中的测量系统的坐标系包括:整个实验平台的基坐标系记为FB,末端法兰盘坐标系记为FM,相机坐标系记为FC,目标物坐标系记为FW,手坐标系记为FH,相机扫描得到的球心坐标PC与基坐标系下球心坐标PB有如式(1)的关系:

图1 实验设备Fig.1 Experiment apparatus

图2 机器人初位置Fig.2 The initial position of the robot

1.2 手眼关系初步标定

为得到准确的手眼关系, 就是要实现相机坐标系和手坐标系在工作空间中的准确转换。 本文通过驱动机械臂带动相机对空间某一固定点进行多次变位姿测量,再用最小二乘法计算,得到初步手眼关系。

由式(1)可知,工作空间中点PB=[XB,YB,ZB]T与在相机坐标系下的坐标PC=[XC,YC,ZC]T,满足以下关系:

将式(1)展开得

本文以标定球的球心作为标定点, 初步的手眼关系标定方法较为简单,易于操作、计算,也对复杂的计算过程以及方程组问题进行了简化和优化计算。 同时使用控制器控制UR10 机械臂单一平动和转动都非常方便准确,复合运动的精度也尚可,故可以快速得到初始的相机和手之间的关系矩阵即手眼关系。 但该算法通过机器人运动学模型计算机器人的手的位姿, 与实际手的位姿必然存在系统误差和其他偏差, 且控制机器人平动时产生的微小震动所引起的误差也不能忽略, 因此下一步就着手于改正手眼关系误差以及机器人运动学结构参数误差,从而得到更精准的手眼关系矩阵。

1.3 误差修正

为提升手眼关系矩阵的精度,采用如下方法:由式(1)得机械臂在不同空间位姿下测得的球心理论位置记为:

为了进一步优化流程,得到更准确的手眼关系,采用图3 所示的流程进行计算。综合考虑系统误差和结构参数误差,如机械臂重复定位精度误差, 绝对定位精度误差,相机的扫描精度误差,球心的计算精度等。

图3 标定流程图Fig.3 Calibration flow chart

可根据不同精度需求选取合适的误差阈值,在迭代过程中当满足标定误差小于阈值时,完成标定,完成误差修正和参数补偿。

2 实验及结果分析

2.1 相机扫描原理

相机扫描半径为R 的球面, 在相机坐标系下记扫描平面为X=0,经过点云处理和最小二乘拟合得到半径为r的圆弧。 其中圆心在相机坐标系下的坐标PO1=(XO1,YO1,ZO1)。圆心O1和球心PO2=(XO2,YO2,ZO2)满足以下关系:XO2=XO1±φ, 圆和球在Y,Z 方向量均相等即YO2=YO1,ZO2=ZO1,其中:φ=(R2-r2)1/2。

将标定球固定在如图4 所示的位置,展开实验,多次移动机械臂以不同角度不同高度, 完成相机对标定球的扫描工作。

图4 标定球固定位置Fig.4 Fixed position of calibration ball

2.2 实验过程

相机与计算机连接后,打开CloudCompare 软件并保持运行稳定,在不同角度扫描标定球,保存图像见图5。

图5 图像采集Fig.5 Image Acquisition

在使用Argus Tools 软件处理图像,得到如图6 所示的标定球和标定板的扫描图像。

图6 相机扫描结果Fig.6 Camera scan results

之后使用Geomagic Studio 软件将多余点云删除,保留标定球点云信息,见图7。

图7 标定球点云Fig.7 Points cloud of calibration sphere

最后用CloudCompare 软件打开已修改好文件格式,并处理完好的点云,进行球心拟合见图8,图9,重复以上操作得到每次在不同位置拍照所测量的标定球球心坐标,进行记录。

图8 处理点云Fig.8 Process points cloud

图9 拟合球心坐标Fig.9 Fit sphere center coordinates

2.3 结果分析

在机器人运动空间中布置标定球,用控制器控制机械臂的平动和关节转动,用相机对标准球进行扫描,计算球心位置坐标。 通过机械臂的转动数据按式(6)求解得出RC,通过平动数据式(9)计算DC,得到初步手眼关系矩阵:

对空间中一固定球, 在不同角度扫描测量球心距离时,其理论值应为零。 由于误差存在,标定前后每个标定球位置测量的球心距见图10 所示。 球心距误差的平均值从1.6119mm 降低到0.3435mm, 球心距误差的标准差由0.4963mm 降低到0.1834mm。

图10 标定球距离误差Fig.10 Calibration ball distance error

3 对比验证

3.1 5球系统的验证

可采用如图11 所示的5 球系统作为测量对象, 通过测出5 个球心坐标,5 球之间的相互距离与实际距离做对比。 可验证手眼关系更新后,测量的距离误差的改变。

图11 5 球系统Fig.11 5-ball system

通过测量标定前后5 个标定球任意两球之间的的距离, 得出各球间的球心距误差的平均值由1.6274mm 降低到0.3807mm,球心距误差的标准差由0.3232mm 降低到0.1551mm。

表1 五球球心数据Tab.1 Five ball center data

3.2 激光跟踪仪验证

还可采用激光跟踪仪对标定后的手眼关系进行进一步验证,本实验采用Leica 960激光跟踪仪,该设备以其精度高、效率高、实时跟踪准确、 便于装卸、易于操作等优点而被广泛的应用到工业测量中,测量待测点的空间三维坐标。

激光跟踪仪可测量动静态小球, 信号平行反射到跟踪头上。 把靶球固定在机械臂末端,当靶球移动时,控制器发出信号自动调整激光方向对准靶球。 返回的测量激光与参考激光进行干涉, 根据干涉的原理可以得出靶球到跟踪头的距离, 跟踪头两个轴上的角度编码器可以得到目标位置相对于激光跟踪头的角度,有了距离和角度就可计算出测量点在激光跟踪仪坐标系下的空间位置坐标。

控制机械臂运动在空间中随机确定一个位姿,把此时靶球作为定点。则在随机移动或转动机械臂,记录不同位姿下靶球的位置信息。以激光跟踪仪测量的在两个不同扫描位置下的球心距离作为理论值,对比参数补偿前后的手眼关系与机器人运动学模型参数,把不同坐标系测量的球心距离作差,见图13。 距离误差的平均值由1.6771mm 降低到0.3398mm,标准差由0.3747mm 降低到0.1507mm。

图12 5 球间距离误差Fig.12 Distance error between 5 balls

图13 靶球距离误差Fig.13 Range error of target ball

4 结论

本文提出的这种改进的机械臂手眼关系标定方法, 基于视觉点云的优化和图像处理便于操作、 易于实现,建立了机械臂结构参数误差和手眼关系误差的误差模型, 通过标定多个运动参数和结构参数提高了手眼关系的精度。 在UR10 工业机器人这个实验平台上,将相机固定在机械臂末端法兰盘上,构建了Eyein-Hand 实验系统,采用相机扫描标定球拟合出球心坐标。标定前后测量距离的标准差由0.4963mm 降低到0.1834mm。标定后的手眼系统,相机扫描和测量的精度得到很大提升。

猜你喜欢
手眼球心标定
直击多面体的外接球的球心及半径
手眼:红色连成线
观察力、手眼协调能力
培养手眼协调能力,创意思维能力
使用朗仁H6 Pro标定北汽绅宝转向角传感器
CT系统参数标定及成像—2
CT系统参数标定及成像—2
一种高精度的机器人手眼标定算法*
?如何我解决几何体的外接球问题
踏破铁鞋无觅处 锁定球心有方法