时间:2024-07-28
倪华康 杨泽源 杨一帆 陈新渡 严思杰 丁 汉
1.江苏集萃华科智能装备科技有限公司,无锡,2141002.华中科技大学机械科学与工程学院,武汉,430074
在精密加工领域,工业机器人由于受其绝对定位精度低(毫米量级)缺点的影响[1]而应用范围大大受限。为使其得到进一步广泛应用并提高加工精度,对机器人进行运动学参数误差标定与补偿以提高其绝对定位精度是十分必要的[2-4]。
机器人运动学标定通常分为运动学建模、误差测量、参数辨识与误差补偿4个步骤[5]。运动学建模是对机器人进行运动学标定的基础,由于零位处机器人几何参数误差带来的定位误差占总误差的80%[6-7],因此运动学建模大多是针对连杆几何参数误差展开的[8-9]。其中,D-H模型是应用最为广泛的建模方法,但机器人存在轴线平行的相邻关节时会产生模型参数不连续的问题。为解决D-H模型参数突变的问题,相关学者又提出了MD-H(modified D-H)模型、S模型、CPC/MCPC(complete and parametrically continuous/modified CPC)模型、POE(product of exponentials)模型等[10-13]新的运动学模型,但由于这些模型大多存在构造复杂、实现困难的问题,因此只有继承了D-H模型构造简单、通用性强等优点的MD-H模型得到了国内外学者的广泛使用。
虽然针对机器人几何参数误差建模的运动学标定能显著提高机器人的绝对定位精度,但是在误差测量过程中,观测数据从测量系统到机器人系统的转换过程需要经过机器人基坐标系的变换,当所测量的基坐标系本身存在误差时,所辨识的几何参数必然带有基坐标系误差。为解决此问题,周学才等[14]提出一种基于距离约束的误差模型,通过引入空间距离误差,有效避免了基坐标系与测量坐标系间的坐标变换;侯琳祺等[15]、陈钢等[16]、高文斌等[17]分别基于MD-H模型、MCPC与POE模型构建了距离误差模型;任永杰等[18]基于距离约束方法提出了虚拟基坐标系法,以距离误差为观测值进行误差标定。但是基于距离误差的标定方法存在部分几何参数无法辨识的问题,导致标定精度难以提高。
针对以上问题,本文提出了一种基于机器人几何参数误差与基坐标系误差的误差模型,该模型能在辨识出基坐标系误差的同时完整地辨识出机器人几何参数误差。实验结果表明本文所提出的误差模型相对于现有误差模型精度及稳定性有明显提高。
本文选用典型六轴串联机器人(ABB IRB 6700型号)作为标定对象,此类机器人第2、3关节轴线平行,若对其进行常用的D-H模型建模可能存在运动学参数不连续的问题,因此对机器人引入β变量进行MD-H模型建模。图1所示为建模得到的机器人的链路坐标系模型,表1所示为机器人在上述连杆坐标系模型下的名义MD-H模型参数。
(a)零位形位 (b)连杆链路坐标系
表1 ABB IRB 6700-150/320型机器人MD-H模型参数表
设机器人连杆上某一坐标系下的微分运动D=(μT,εT)T,其中,μ=(μx,μy,μz)T为微分位移量,ε=(εx,εy,εz)T为微分旋转量,则其齐次矩阵可表示为
(1)
对于同一刚体上的两坐标系{i}、{j},取坐标系{i}为参考坐标系,当坐标系{i}存在微分位姿误差iD时,设两坐标系间位姿齐次变换偏差为dT;在iD下,坐标系{j}微分位姿误差为jD。在上述微分位姿误差下,两坐标系齐次变换矩阵相对于静坐标系与动坐标系分别满足[19]:
(2)
将式(2)中两式联立可解得
(3)
式中,ΔTi、ΔTj分别为坐标系{i}、{j}微分位姿误差对应的矩阵算子。
将式(3)化为向量的形式可得刚体上两坐标系微分位姿误差间相互映射关系:
(4)
MD-H模型的相邻两关节坐标系间变化通式为
(5)
m11=cθi+1cβi+1
m12=-sθi+1
m13=cθi+1sβi+1
m14=ai
m21=cαisθi+1cβi+1+sαisβi+1
m22=cαicθi+1
m23=cαisθi+1sβi+1-sαicβi+1
m24=-di+1sαi
m31=sαisθi+1cβi+1-cαisβi+1
m32=sαicθi+1
m33=sαisθi+1sβi+1+cαicβi+1
m34=di+1cαi
式中,cθi+1表示cosθi+1,sθi+1表示sinθi+1,其余类推。
由此连杆变换通式与相应的运动学方程即可得到MD-H模型下坐标系{i}的微分位姿误差:
(6)
式中,δθi为连杆参数θi的误差量,其余连杆参数误差量同此表示。
将式(6)化为向量形式即可分解得到MD-H模型下关节坐标系{i}的微分位姿误差与连杆i几何参数误差的映射关系:
(7)
以Xi=(ai-1,di,αi-1,θi,βi)T表示连杆i的几何参数,以Mi=[Mai-1MdiMαi-1MθiMβi]T表示各几何参数偏差的系数矩阵,式(7)可表示为
iD=MiδXi
(8)
式(8)给出了关节坐标系{i}位姿误差关于连杆i几何参数误差的系数矩阵,在研究单连杆几何参数误差下机器人末端的微分位姿误差时,可取连杆i+1到连杆m部分为一整体,其中,m为机器人的连杆数量(即关节数量),可视关节坐标系{i}与末端坐标系{t}为同一刚体上的两坐标系,得到在单连杆几何参数误差下机器人末端坐标系{t}的微分位姿误差:
(9)
另外,在同一参考坐标系下,分别取微分运动D1=(μ1T,ε1T)T、D2=(μ2T,ε2T)T、D3=D1+D2=(μ1T+μ2T,ε1T+ε2T)T,它们间满足:
S1S2=
(10)
此处S1、S2、S3皆为微分运动D1、D2、D3对应的齐次矩阵。略去式(10)中高阶无穷小量,式(10)可进一步简化为
(11)
可见,同一参考坐标系下微分运动可叠加。
在各连杆几何参数误差的综合作用下,机器人末端坐标系{t}的总微分位姿误差为
(12)
考虑到在实际测量中,需将采样点位姿名义值与实际值转换到机器人基坐标系下,因此,在构造机器人末端位姿误差模型时,亦需将末端位姿误差转换到机器人基坐标系下。将这个位姿误差投影到基坐标系下可得
(13)
取
(14)
(15)
有
(16)
式(15)、式(16)中,Jai-1、Jdi、Jαi-1、Jθi、Jβi为机器人末端位姿误差关于连杆i几何参数误差δai-1、δdi、δαi-1、δθi、δβi的系数,考虑到在建模时,仅定义了β3,以X=(a0,α0,d1,θ1,…,am-1,αm-1,dm,θm,β3)T表示机器人的全部连杆参数,并取J=(Ja0,Jα0,Jd1,Jθ1,…,Jam-1,Jαm-1,Jdm,Jθm,Jβ3),式(16)可进一步表示为
0D=JδX
(17)
式(17)中,J∈R6×n(n为机器人几何参数总数),J为机器人的雅可比矩阵,它反映由机器人连杆几何参数误差到机器人末端位姿误差的映射关系,它是关于自变量转角θ=(θ1,θ2,…,θm)T的函数。在J的行方向,J的前三行分别对应机器人的位置误差传递系数,后三行分别对应机器人末端的姿态误差传递系数;在J的列方向,J的每一列则对应每个单独参数的位姿误差系数。
由于误差标定所涉及到的机器人基坐标系与测量坐标系间位姿关系同样是通过测量获得的,在此测量过程中也会引入误差,如果忽略该误差将会影响辨识参数的精度,因此,有必要将基坐标系的测量误差作为参数辨识的目标之一。
图2为基坐标系误差示意简图,其中{B}为机器人的实际基坐标系,{B′}为机器人测量基坐标系,{L}为测量设备坐标系,P为采样点的名义位姿,P′为采样点的实际位姿。在{B′}存在一个相对{B}的微分位姿误差0DB=(μ0T,ε0T)T时,其齐次变换矩阵为
图2 基坐标系误差示意简图Fig.2 Schematic diagram of base frame error
(18)
在基坐标系测量误差下,采样点实际位置的测量值与实际值分别为
(19)
(20)
以ΔpO、Δp分别代表机器人的观测位置误差与实际位置误差,它们满足:
ΔpO=B′pP′-BpP
(21)
Δp=[ε0]B′pP′+B′pP′+μ0-BpP=
-[B′pP′]ε0+μ0+ΔpO
(22)
在实验测量中,ΔpO的测量过程仅引入了测量系统的测量精度误差,可认为是真实值,但其相对实际位置误差存在一个大小为-[B′pP′]ε0+μ0的差值,该差值与基坐标系误差以及机器人末端位置相关。在参数辨识中,若忽略基坐标系测量误差的影响,则所辨识的结果都是相对于坐标系{B′}定义与计算的,当{B′}的测量存在较大误差时,所辨识的结果是无效的。若要保证辨识结果在多次测量中的有效性,则需要保证在多次测量中{B′}的稳定性。当将机器人基坐标系误差作为辨识目标之一时,式(22)中,将Δp=pJδX代入运算,其中pJ为位置雅可比矩阵,可得
ΔpO=pJδX+[B′pP′]ε0-μ0
(23)
取
(24)
式中,pJε0为基坐标系姿态误差参数的误差系数;pJμ0为基坐标系位置误差参数的误差系数。
以Δx=((δX)T,ε0T,μ0T)T表示包括基坐标系测量误差在内的全部几何参数误差,以M=[pJpJε0pJμ0]为机器人的拓展误差系数矩阵,在引入机器人基坐标系误差后,机器人的统一位置误差模型为
ΔpO=MΔx
(25)
为了防止奇异的误差系数矩阵使辨识过程出现无法收敛或陷入局部最优解的情况,需要对误差模型进行参数冗余分析。对统一位置误差模型进行冗余性分析可以发现以下几个参数存在相互冗余的情况:pJd2=pJd3、pJμ0x=-pJa0、pJμ0z=-pJd1、pJε0x=-pJα0、pJε0z=-pJθ1,pJd2=pJd3、pJμ0x=-pJa0、pJμ0z=-pJd1、pJε0x=-pJα0、pJε0z=-pJθ1,因此,统一位置误差模型中包含μ0x、μ0z、ε0x、ε0z、d3共5个冗余参数,可独立辨识的参数为26个。
使用激光跟踪仪进行机器人标定,一般是采用激光跟踪仪测量出机器人末端的位姿关系,并结合机器人控制器中的空间理论位姿与关节角参数等数据,通过误差模型进行参数辨识,得到各个参数的误差值。而针对六轴串联型关节机器人,一般采用单轴旋转运动及基平面拟合方法完成对机器人基坐标系的标定,具体步骤如下:
(1)以一定步进角度旋转1轴,保持其余关节不动,记录T-MAC(激光反射靶标,可测得位置与姿态信息)的每一个采样位置,获取一组机器人末端位置集合{P1},在Polyworks中对点组进行圆拟合,得到圆C1、轴线L1。
(2)使1轴归零,以一定步进角度旋转3轴(或2轴),保持其他关节不动,记录T-MAC的每一个采样位置,获取机器人末端位置集合{P2},对点组进行圆拟合,得到圆C2、轴线L2。
(3)将靶球安装在靶球基座上,移动至机器人基座平面的不同位置,记录每个位置靶球球心坐标,获取靶球球心位置集合{P3},对其补偿靶球基座高度与靶球半径后进行平面拟合,进而确定机器人基平面FB。
(4)根据机器人机构特性,在激光跟踪仪坐标系下,取L1单位方向向量为机器人基坐标系z轴,取L2在FB上投影的单位方向向量为机器人基坐标系y轴,取L1与FB交点为机器人基坐标系原点O,再由右手定则确定基坐标系x轴。由此可得机器人的基坐标系,如图3所示。
(a)测量示意图 (b)空间坐标系示意图
当机器人与激光跟踪仪的相对位置发生变化时,对基坐标系重复上述方法进行测量不但效率低下,而且可能会引入由基坐标系测量不一致带来的随机误差。为了保持基坐标系多次测量结果的一致性,本文提出一种高效的重复测量方案:在完成上述标定后,移动机器人使T-MAC到达一个能被测量到的位置,将此位置记为点P,通过矩阵变换得到点P在基坐标系下的位姿变换矩阵:
(26)
图4 基坐标系重复测量方法原理简图Fig.4 Schematic diagram of the repeated measurement method of the base frame
(27)
将式(26)代入式(27),即可得到机器人与跟踪仪间相互位置变化后的相对位姿确定方法:
(28)
(29)
以{B0′}表示机器人在{B′}位置处的实际基坐标系,将式(29)代入式(27),则点P实际基坐标系位姿为
(31)
式(31)表明,在多次测量中,当点P相对机器人基坐标系存在一个0DP的位姿误差时,会给机器人基坐标系的测量带来一个0DP的测量位姿误差。
本文采用Leica AT960-LR型激光跟踪仪对IRB 6700型工业机器人进行标定实验来验证所提出误差模型的效果。激光跟踪仪包含AT960本体、控制器、激光反射设备(T-MAC与靶球)与Polyworks软件四部分,其测量精度为±15 μm+6 μm/m,远小于未经标定的机器人绝对定位精度(3~4 mm),因此其测量误差在标定过程中可忽略不计。实验现场如图5所示。
图5 实验现场Fig.5 Experimental site
为保证标定结果的准确性,在机器人常用作业区域内选取一个边长为1000 mm的立方体空间,在所选取空间内随机生成100个采样点位置,如图6所示,进行末端位姿误差测量。
图6 采样点选取方法Fig.6 Sampling point selection method
取采样点前 50 组的位置误差值为观测值,基于Levenberg-Marquardt 算法对未引入基坐标系误差的普通几何参数误差模型进行参数辨识,其结果如表2所示。根据参数辨识结果修正机器人的运动学模型,然后根据后 50 组采样点的位置测量值进行验证。由于 ABB 机器人无法获取控制器底层修改权限,因此采取微分误差补偿法进行补偿,补偿流程如图7所示。对比其原始位置误差,经过修正的采样点位置误差均下降到0.4 mm以下,如图8所示;平均位置误差由 3.1928 mm下降到 0.1756 mm,精度提高94.50%;最大位置误差由4.0545 mm下降到0.3822 mm,精度提高90.57%;位置误差标准差由0.5494 mm下降到0.0830 mm,精度提高84.89%。
表2 普通位置误差模型参数辨识结果
图7 位置误差补偿流程Fig.7 Position error compensation process
图8 普通位置误差模型补偿效果Fig.8 Normal position error model compensation effect
虽然基于位置误差模型的机器人本体标定对机器人绝对位置精度提高效果明显,但它未考虑基坐标系的测量误差,若基坐标系测量存在较大误差,则标定结果无效。同样取采样点前 50 组的位置观测值分别基于距离误差模型和基坐标系误差修正模型进行参数辨识,辨识结果如表3和表4所示,对比表2易发现,基坐标系误差修正模型与距离误差模型辨识结果分布基本一致,而与未引入基坐标系误差的位置误差模型辨识结果有较大差异。考虑到距离误差模型的观测值未引入基坐标系的测量误差,可认为其辨识结果最接近实际参数误差,即基坐标系误差修正模型在辨识参数精度上优于普通位置误差模型。
表3 距离误差模型参数辨识结果
表4 基坐标系误差修正模型参数辨识结果
以距离误差模型与基坐标系误差修正模型的辨识结果对基坐标系与几何参数模型进行补偿后,利用后50组采样点对补偿效果进行验证。各模型标定补偿效果如图9所示:距离误差模型位置补偿后位置误差仍保持在较高水平;在以基于统一辨识误差模型补偿得到的基坐标系作为参考坐标系之后,位置误差模型补偿后位置误差减小;基于统一辨识误差模型的补偿效果最佳。
图9 修正基坐标系后不同模型补偿效果Fig.9 Compensation effects of different models after modifying the base frame
为进一步对比引入基坐标系误差的标定效果,在测量基坐标系时,给予其中点P一个0DP=(-0.4,-0.4,0.4,-0.01,-0.01,-0.01)T的扰动,以此模拟重复测量中基坐标系的测量误差。通过测量与齐次变换,求得基坐标系相对初次测量时的偏差为:0DB=(-0.4019,-0.4014,0.3996,-0.010 01,-0.000 997 5,-0.009 996)T。
在上述基坐标测量偏差的影响下,分别基于未引入基坐标系误差的位置误差模型与基坐标系误差修正模型进行参数辨识,结果如表5所示。对比辨识结果可以发现,基坐标系修正模型在扰动前后辨识参数结果基本不变,而普通位置误差模型的辨识参数结果出现明显变化。出现这种结果的原因是基坐标系的测量误差会造成机器人位置误差的观测值与实际值间存在偏差。由参数冗余性分析可知,μ0x、μ0z、ε0x、ε0z四个分量的影响可由连杆1的4个几何参数代替,但μ0y与ε0y的影响却需要所有几何参数来承担。而基坐标系误差修正模型能够将参数μ0y与ε0y从其他几何参数中解耦出来,从而准确辨识基坐标系误差的变化,因此它在标定鲁棒性上优于未引入基坐标系误差的位置误差模型。
表5 基坐标系误差扰动后参数辨识结果
在修正模型下对后50组采样点进行补偿,对比扰动前的位置误差,如表6、表7、图10所示,其中,图10b基坐标系误差修正模型部分,为区分效果,将基坐标系扰动后位置误差以针状图表示。对比可发现,未引入基坐标系误差模型在扰动后的误差明显增大,平均误差与最大误差均超过1 mm,而基坐标系误差修正模型则在扰动后依然保持较高的补偿精度,使平均误差保持在0.2 mm以下,与扰动前基本一致。
(a)未引入基坐标系误差的几何误差模型
表6 普通位置误差模型在基坐标系误差扰动下的补偿效果
表7 基坐标系误差修正模型在基坐标系误差扰动下的补偿效果
本文建立了考虑几何参数误差与基坐标系误差的机器人本体标定模型,并提出了一种鲁棒性高的机器人基坐标系误差标定方法。基于Leica AT960-LR型激光跟踪仪对IRB 6700型工业机器人进行了本体标定实验与基坐标系误差扰动实验,结果表明:
(1)本文模型用于标定时,将机器人位置误差的平均值由3.1928 mm减小到0.1756 mm,精度提高94.50%;位置误差的标准差由 0.5494 mm减小到0.0830 mm,精度提高84.89%。
(2)当基坐标系存在较大误差时,利用本文所提出的模型进行标定的参数辨识结果一致性高于99%,平均定位误差保持在0.2 mm以下。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!