基于线结构光传感器的工业机器人运动学参数标定

2021-03-19 05:45沈添秀
计量学报 2021年1期
关键词:手眼运动学标定

陆 艺, 沈添秀, 罗 哉, 郭 斌

(1. 中国计量大学 计量测试工程学院, 浙江 杭州 310018; 2. 杭州沃镭智能科技股份有限公司, 浙江 杭州 310018)

1 引 言

工业机器人虽然重复定位精度很高,但由于绝对定位精度很低限制了工业机器人的应用,因此提高绝对定位精度能扩展工业机器人的应用范围[1,2]。提高机器人绝对定位精度通常通过参数标定,即运用测量手段和适当的参数辨识方法辨识出机器人的准确参数。机器人标定通常包含运动学建模、位姿测量、参数辨识、误差补偿4个过程[3]。其中位姿测量是标定的一个重要步骤,测量的方法直接影响标定的效果。目前工业机器人标定技术可大致分为2类:开环标定和闭环标定法[4]。开环标定法涉及测量末端执行器的姿态,需要利用外部仪器(如坐标测量机和激光跟踪仪[5])进行测量,存在成本高,耗时长,不便于操作等问题。闭环标定法[6,7]是通过机器人自身的关节角测量,对末端执行器施加一些约束,并且仅使用关节读数通过运动闭环方程来标定机器人。文献[8~10]研究了一种称为虚拟封闭运动链的方法,该方法与普通闭环方法不同,它不需要物理约束,仅需将激光工具附加到机器人末端执行器并且瞄准远处物体上的任意固定点,但是该方法是人为判断激光点与固定点重合,存在人工误差,且需建立复杂约束方程组等问题。

为此,本文提出一种基于线结构光传感器的工业机器人标定方法,该方法将线结构光传感器安装在机器人末端,并且仅将一固定点作为标定特征点。传感器在不同关节角配置下测量该固定点的三维坐标,直接得到固定点与基座标的位置关系。建立以该坐标值的理论值与实际值偏差的误差模型,并以此建立较为简单的标定方程组便于求解。

2 标定系统模型

工业机器人标定系统由工业机器人和线结构光传感器组成,传感器安装在工业机器人末端,工业机器人看做一个载体。传感器坐标系中的测量数据可以通过标定系统模型转换到工业机器人基坐标系中。标定系统模型包括线结构光传感器模型、机器人模型和手眼关系模型。

2.1 线结构光传感器模型

线结构光传感器数学模型如图1所示,该传感器包括CCD相机以及一字线激光器2部分。其中Owxwywzw为世界坐标系,Ouv为图像坐标系,Ocxcyczc为相机坐标系。

图1 传感器测量模型

假设被测点P在图像坐标系下坐标为(u,v),像主点坐标为(u0,v0),在相机坐标系下坐标表示为(xc,yc,zc),在世界坐标系下坐标表示为(xw,yw,zw)。则P点在图像坐标系和相机坐标系的关系及相机坐标系和世界坐标系的关系分别表示为:

(1)

(2)

其中:kx,ky为相机xc轴,yc轴放大系数;Mc为相机内参数矩阵;Mw-c相机坐标和世界坐标转换关系即外参数矩阵,包括旋转矩阵R和平移矩阵T。

假设在相机坐标系下光平面方程表示为:

z=Ax+By+C

(3)

式中A、B、C为线结构光内参数。

结合式(1)和式(3),可得到点P在相机坐标下的坐标为:

(4)

根据式(4),在已知光平面在相机下的方程时即可得知空间某一点在相机坐标系下的坐标。

2.2 机器人运动学模型及手眼关系

机器人的各个部分由一系列连续的关节组成,相邻关节间的运动学关系可由D-H齐次变换矩阵表示。D-H[11]齐次变换矩阵取决于4个连接参数,即关节角θi,连杆扭角αi,连杆长度ai和偏置di。对于n个自由度的工业机器人可由D-H模型描述,从关节i-1到关节i的转换关系可用次变换矩阵Ai表示。但当相邻关节平行时D-H模型出现奇异性,此时结合MDH模型,即在关节轴线平行时,引入绕y轴旋转的转角参数βi。则相邻的2个关节坐标系间的D-H变换矩阵为:

(5)

式中C和S分别代表cos和sin,i=1,3,4,5,6。

采用MDH建模法,得到二、三关节间的MDH变换矩阵A2为:

(6)

如图2所示,为机器人运动学模型及手眼关系模型。自由度为6的工业机器人基座标系Ob与末端坐标系Oe间转换关系由矩阵Td表示,传感器Oc与基座标Ob之间转换关系由矩阵Ts表示,末端坐标系Oe与传感器坐标系Oc转换关系由矩阵H(即手眼矩阵)表示,其中H为一个固定但未知的矩阵,可由手眼标定得到。

图2 机器人运动学模型及手眼关系

Td可由Ai表示为:

Td=A1A2…A5A6

(7)

则:

TS=TdH

(8)

假设一被测点X在传感器坐标系下齐次坐标为xc,在机器人基座标系下齐次坐标为xb,由标定系统模型xb表示为:

xb=TdHxc=TSxc

(9)

3 标定原理及实验

实验以研华LNC-S6000六自由度工业机器人为标定对象,连接的线结构光传感器选用分辨率为1 280×960像素的工业相机,波长为650 nm的红外线一字线激光器。整个标定过程包括3个部分:传感器标定[12,13]、手眼关系标定、工业机器人参数标定。

由1.2节机器人运动学建模,结合机器人本身结构特性,得到参数名义值,如表1所示。

表1 建模名义参数

表1中θ1e,θ2e,…,θ6e为编码器关节角读数值。根据表1中名义参数值数据,由式(5)、式(6)可得:

3.1 传感器标定

传感器标定包括相机标定[14]和光平面标定。其中相机标定根据文献[15]基于棋盘格的标定方法。将标定板固定放置在工业机器人工作空间内,控制工业机器人带动线结构光传感器不同姿态得到靶标图像。通过相机标定获得相机内参数Mc,即kx、ky、u0、v0,同时可以获得靶标平面相对与相机坐标系转换矩阵Mw-c。光平面标定则是将靶标上角点和激光条形成交点作为标定特征点。由式(2)得到这些特征点在相机坐标系下的坐标,获取多组标定特征点在相机坐标系下的坐标,由此可拟合相机坐标系下的光平面方程,获得线结构光内参数A、B、C。

采用如图3所示精度为3 μm棋盘格标定板作为平面靶标,棋盘格为7×7的方形靶标,单个棋盘格大小为11 mm×11 mm。

图3 棋盘格标定板

具体标定步骤有:1) 在激光器关闭情况下,使机器人在不同位姿拍摄20张棋盘格图片,相机标定工具箱进行相机标定,得到相机内参数矩阵。2) 在得到相机内参数后,进行光平面参数标定。在某一个位置下保持相机和棋盘格不动的情况下,分别打开激光器和关闭激光器拍摄3组一一对应的图片。得到不包含激光线条的棋盘格图片的3组外参数矩阵。在每张包含激光线条的图片上选取3~4个点作为特征点,通过相机内参数和对应图片的外参数得到10个这样的点的坐标值。3) 将这10组坐标值拟合平面。实验结果如下:

相机内参数矩阵:

3组图片对应外参数矩阵:

得到光平面参数为:A=-0.460 2;B=0.004 9;C=481.637 5;即在相机坐标系下的平面方程为:

z=-0.460 2x+0.004 9y+481.637 5

由此,通过式(4)得到被测点在传感器坐标系下的三维坐标值。

3.2 手眼关系标定

手眼关系标定指确实机器人末端和传感器之间的关系,即转换矩阵H。如图4所示,以固定点P作为手眼标定特征点,机器人带动传感器不同位姿下拍摄该点,并使该点处于激光面上。

图4 手眼关系标定原理示意图

将该点在传感器坐标系下坐标记为Pc,在机器人基座标下的坐标记为Pb,手眼矩阵记为H,分别以齐次坐标表示它们为:

(10)

(11)

对固定点进行N次测量,则有:

(12)

由式(11)和式(12)可得:

Td1HPc1=TdiHPci,i=2,3,…,12

(13)

对式(13)进行求解,可得到手眼矩阵H。选取棋盘格上一固定点为特征点,控制传感器在12个位姿下对该点进行测量。得到12张图片,计算图片在点在传感器下坐标值Pc,带入关节角计算对应的Td。将计算值带入式(12)求得手眼矩阵H为:

3.3 机器人运动学参数标定

机器人运动学参数标定是基于机器人误差模型获取机器人运动学参数误差,将误差补偿到原有名义参数上达到机器人标定的目的。

3.3.1 误差模型

用dαi,dai,ddi,dθi,dβi表示运动学模型中工业机器人参数误差,对式(9)进行转换,由于这些误差足够小,用Δα,Δa,Δd,Δθ,Δβ表示,可忽略高次项有:

(14)

可将式(14)表示为:

dxb=JΔp

(15)

(16)

Δp为需辨识的运动学参数误差。

Δp=[ΔαΔaΔdΔθΔβ]T

(17)

3.3.2 定点约束的机器人参数标定原理

对于固定点在机器人基座标系下的坐标可由机器人名义参数得到,但由于运动学参数的不准确,该目标点的实际坐标值不同于由名义值得到的坐标值。在第i个位置、第j个位置对其进行测量的实际坐标x′b可由名义值坐标xb与误差值dxb表示为:

x′b=xbi+dxbi

(18)

x′b=xbj+dxbj

(19)

其中xbi和xbj可由式(8)中名义参数得到。

用式(19)减去式(18)可得如下关系:

xbj-xbi=(Ji-Jj)Δp

(20)

Δxji=xbj-xbi,Dij=Ji-Jj,则式(20)可写为:

Δxji=DijΔp

(21)

假设进行m次测量(m≥4n,n为工业机器人自由度),参数误差Δp可由最小二乘法辨识:

Δp=(DTD)-1DTΔX

(22)

3.3.3 机器人参数标定步骤

如图5所示,选取棋盘格标定板为标定平面,将其放置在工业机器人工作空间内,将棋盘格中间角点作为标定点M。根据2.3.2节标定原理进行标定实验,具体步骤如下:1) 操作机器人示教器手动模式调整机器人在不同位姿带动传感器拍摄标定点图片,并保存图片,记录与图片对应的关节角数据;2) 建立的标定方程个数需要大于或等于待标定参数个数(24个),选择了25组位姿进行测量实验,则重复步骤1)25次得到足够数量的位姿建立标定方程组;3) 根据前面所求的光平面参数,手眼矩阵,计算出每一次测量点的位置坐标。根据记录的关节角已经读取图片信息计算得到传感器下坐标。带入标定方程组,得到运动学参数的各个参数误差值,得到标定后运动学参数值如表2所示。

图5 标定系统实物图

表2 标定后运动学参数

4 标定结果验证

为了验证参数标定效果,控制机器人带动传感器14次测量如图6中A、B、C的值,将名义参数值和实验中记录的关节角向量代入到式(9)中,再将修正后的结构参数和实验中记录的关节角向量一起代入到式(9)中,可以求出对应于点A、B、C的标定前后理论坐标,得到相应线段如AB、AC标定前后的测量尺寸,将测量所得的标定前后尺寸与实际尺寸相比较。图6中每一小格距离为11 mm,则AB=77 mm、AC=11 mm。测量数据如表3所示。

图6 测量点示意图

表3 标定前后误差

由表3数据分析可知,当验证点之间距离为77 mm时,最大误差由3.0376 mm减小到1.4672 mm;平均误差由1.8460 mm减小到0.8529 mm,减少了52.567%;标准差由0.5877 mm减少到0.3217 mm,标准差减少45.26%。当验证点之间距离为11 mm时,最大误差由2.8562 mm减小到1.3572 mm;平均误差由1.7256 mm减小到0.8595 mm,减少了57.226%;标准差由0.5900 mm减少到0.3412 mm,减少了42.17%。通过标定稳定减小了误差,从而证明了此标定方法提高了工业机器人绝对定位精度。

5 结 论

提出一种基于线结构光传感器的工业机器人运动学参数标定方法,通过传感器获得标定目标点的三维坐标,结合D-H建模直接得到标定点与工业机器人基座标系的位置关系。然后建立该位置关系偏差的误差模型,建立标定方程,利用最小二乘法求解得到运动学参数误差。此方法通过传感器得到约束点的三维坐标,简化了需要对末端约束建立大量约束方程,且目标靶标易于测量,成本较低。标定前后平均误差及标准差2个评价指标稳定减小,验证了此标定方法提高了工业机器人的绝对定位精度。

猜你喜欢
手眼运动学标定
观察力、手眼协调能力
培养手眼协调能力,创意思维能力
使用朗仁H6 Pro标定北汽绅宝转向角传感器
基于MATLAB的6R机器人逆运动学求解分析
观察力、手眼协调能力
培养手眼协调能力,创意思维能力
工业机器人在MATLAB-Robotics中的运动学分析
基于D-H法的5-DOF串并联机床运动学分析
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
船载高精度星敏感器安装角的标定