工业机器人运动学参数标定的位姿点集优化研究
2021-08-16吕仲艳温秀兰崔伟祥乔贵方
吕仲艳,温秀兰,崔伟祥,乔贵方
(南京工程学院自动化学院,江苏南京 211167)
0 引言
自2017年,国家正式启动并实施“智能机器人”重点专项研发计划,推进我国工业机器人技术的发展[1]。目前,工业机器人已大规模应用于焊接、检测、分拣等领域[2-3]。为使工业机器人更多的应用于高端制造领域,要求机器人具有更高的精度,工业机器人的精度主要分为重复定位精度和绝对定位精度。目前,工业机器人的重复定位精度可达到0.02~0.1 mm,而绝对定位精度仅为mm级,无法满足高端制造领域的精度要求。工业机器人参数误差主要分为关节误差、运动学参数误差和非运动学参数误差[4]。其中,运动学参数误差占总误差的80%以上[5],通过机器人运动学参数标定能够有效地提高工业机器人的绝对定位精度[6]。
运动学参数辨识准确性与测量位姿点的选择有关[7]。M. R. Driels和U. S. Pathre[8]研究了影响机器人标定的因素,证实了合理选择测量位姿可以有效提高机器人标定的鲁棒性。如果所选位姿集的位置误差对运动学参数不敏感,那么传感器噪声等非运动学参数误差就会对末端位姿误差起主要作用,从而降低了运动学参数的标定精度。因此,在测量前选取最优的位姿点集,可以提高末端位置误差对运动学参数的敏感程度,提高绝对位置精度和标定结果的稳定性。文献[9]根据误差模型的扩展雅克比矩阵的奇异值提出可观测指数O1~O5,可以用来衡量运动学参数误差在总误差中的敏感度。文献[10]研究表示5个可观测指数的作用不同,其选择方式主要与实验目的有关,当以参数方差最小化为目标时,O1是最优准则,且O1是一个在任何非奇异线性变换下都不变的指标;当以最小化末端执行器位置的不确定性为目标时,O3是最优准则。可根据不同的实验目的,选择合适的可观测指数。
为优化工业机器人运动学参数辨识的准确性,提高标定结果的稳定性,需要寻找可观测指数最大的一组位姿集。D. Daney[11]等提出了迭代位姿搜索算法(iterative one-by-one pose search,IOOPS),该算法可用于在无限但有界或有限位姿集中搜索给定数目的最优位姿,其主要局限性在于存在局部收敛问题。G. Xiong[12]基于随机搜索技术提出了改进的序列向前浮动搜索算法,使其能够在狭窄的空间内搜索最优位姿。在实际测量工作中,测量设备的精度、测量设备与机器人之间的距离、机器人本身的精度,都有可能影响位姿点集优化的实验效果。A. Horne和L. Notash的实验分别采用最优位姿集与随机位姿集标定工业机器人,其标定结果差别很小[13]。J. Zhou等的实验表明,选用最优位姿标定的效果更好[14]。由此可见,设计合理的实验条件对位姿点集优化研究尤为重要。
为提高标定结果稳定性和绝对位置精度,本文提出采用随机搜索算法和改进最优位姿点集选择算法确定最优位姿集,并通过位姿点集标定实验,分析比较最优位姿集与随机位姿集在标定前后、测试前后的绝对位置精度以及辨识出的运动学参数的泛化能力,旨在优化标定位姿点集,提高标定精度和标定结果稳定性。
1 机器人标定系统搭建
以EFORT ER10L-C10工业机器人为研究对象,搭建如图1所示的工业机器人标定系统。该系统主要包括:EFORT ER10L-C10机器人、激光跟踪仪Leica AT960、Leica T-Mac、Spatial Analyzer(SA)测量软件及计算机,其中Leica AT960激光跟踪仪的测量精度为±(15 μm+6 μm/m)。在SA软件中将机器人的基坐标系作为参考坐标系,以坐标值(1 300,0,900)mm为中心点,设定操作空间为2 000 mm×1 800 mm×1 700 mm的正方体。在操作空间内随机生成150个标定点,记为γc,组成可选位姿集U,另外生成50个测试点,记为γt,尽可能使位姿点均匀分布在操作空间内。其空间分布情况如图2所示,其中深色点为γc,浅色点为γt。
图1 工业机器人标定系统
2 可观测指数
2.1 位姿误差模型建立
采用MDH正运动学模型[15],其相邻连杆间的运动学表达式为
Ai=R(xi,αi)D(xi,ai)R(zi,θi)D(zi,di)R(yi,βi)
(1)
式中:αi为连杆转角,rad;ai为连杆长度,mm;θi为关节角,rad;di为连杆偏距,mm;βi为连杆扭角(相邻两平行关节间绕yi轴旋转的角度),rad。
EFORT ER10L-C10机器人共有6个关节,在实验过程中,将基坐标系建立在机器人1轴与2轴的轴线交点上,可以通过式(1)得到机器人的末端位姿矩阵:
T6=A1A2A3…A6
(2)
在正运动学误差模型中,机器人末端名义位姿矩阵为Tname,当MDH参数存在误差时,机器人末端实际位姿矩阵为Treal,末端位姿误差为:
(3)
式中:ΔR为机器人末端的姿态误差,ΔR=[ΔnΔoΔa];Δp为机器人末端的位置误差。
建立位姿误差模型[16]:
E=HΔη
(4)
2.2 可观测指数选择
运动学参数标定精度和稳定性受测量点的选择和空间分布的影响,可采用可观测指数作为优化位姿点集的参考指标。常用的可观测指数有O1,O2,O3,O4,O5,均由扩展雅克比矩阵H的奇异值计算得到,其计算公式如下[9]:
(5)
(6)
O3=σL
(7)
(8)
(9)
式中:n为位姿点个数;L为待辨识运动学参数个数;σi(i=1,…,L)为扩展雅可比矩阵的奇异值,且σ1>σ2>…>σL。
在几何意义上,扩展雅克比矩阵H表示球体到超椭球体的映射,奇异值为超椭球体的各半轴长度。可观测指数中,O1、O3、O5是通过增大椭球体的体积,使得末端位姿误差对运动学参数误差越敏感,更有利于辨识。O2和O4是通过减小椭球体的偏心率,使椭球体接近于球体,那么总误差对运动学参数误差的敏感程度越强,有利于提高运动学参数辨识稳定性。
可观测指标的选择方式很大程度上取决于机器人的模型。在机器人误差模型中,不同的运动学参数,其量纲可能不同,可以对这些参数进行归一化处理。可观测指数O1是一个在任何非奇异线性变换下都不变的可观测指标[10],因此,本文选择O1作为优化位姿点集的评价指标。
3 位姿点集优化
3.1 基于随机搜索算法的最优位姿点数确定
在位姿误差模型中,每个测量位姿点的雅克比矩阵有12个分量(nx,ny,nz,ox,oy,oz,ax,ay,az,px,py,pz),可以提供12个方程。根据Khalil[17]对雅克比矩阵进行QR分解的方法,去除冗余参数后,EFORT ER10L-C10机器人共有24个运动学参数,标定位姿点数应满足n≥24/12。在运动学参数辨识过程中,位姿点数越多,参数辨识精度就越高,然而,若位姿点数过多,则会造成模型过度拟合,同时增加计算量。那么,确定最优位姿点的数量是位姿点集优化过程中首先需要解决的问题。
采用随机搜索算法从标定位姿集中随机选取n个位姿点,计算其可观测指数O1,逐渐增加位姿点数(2≤n≤150),观察O1的数值变化情况,当O1变化趋于稳定时,对应的位姿点数即为最优位姿集的位姿点数目,记为m。
3.2 改进最优点集选择算法
为优化最优点集选择算法,提高算法的运行效率,对IOOPS算法做出改进,其流程如图3所示,参数说明见表1。
表1 改进最优点集选择算法参数说明
图3 改进最优点集选择算法流程图
其中,Add算法步骤如下:从UR中依次取出位姿点ζi(i=1,2,…,X),计算max{O1(γm+ζi)},满足条件的ζi则记为ζ+,已选位姿集γm+1=γm+ζ+;Remove算法步骤如下:从γm+1中依次移除位姿点ζi(i=1,2,…,m+1),计算max{O1(γm+1-ζi)},满足条件的ζi记为ζ-,已选位姿集γm=γm+1-ζ-。
IOOPS算法中的初始位姿集γo是随机选取的[13],那么γo的O1值也是不确定的,这将会影响最优点集选择算法的运行效率。
实验过程中,以U中单点的O1值为依据降序排列,选取前m个点作为上述算法的初始位姿集γo,比较随机初始位姿集与优化初始位姿集下最优点集选择算法的迭代次数和运行时间。
4 位姿点集优化实验
4.1 算法实现
4.1.1 随机搜索算法实现
采用随机搜索算法在150个标定点中随机选取2个位姿点,计算该位姿集的可观测指数O1。为减小选点的随机性,该步骤重复50次,取平均值作为该位姿点数下的O1值。逐渐增大位姿点数n(2≤n≤150),观察O1值在不同位姿点数下的变化情况,如图4所示。当位姿点数达到55时,O1值趋于稳定。因此,确定最优位姿点数m为55。
图4 可观测指数O1值变化图
4.1.2 改进最优点集选择算法实现
表2 不同初始位姿集算法的运行数据
4.2 实验与结果
4.2.1 标定结果
在图1的工业机器人标定系统中,将激光跟踪仪AT960放置在EFORT ER10L-C10机器人的前方3 m左右处,保证激光跟踪仪可以对机器人进行精准测量,在实验过程中保持激光跟踪仪的位置固定不变。在SA软件中建立工业机器人的基坐标系和末端坐标系,测量150个标定点和50个测试点的实际位姿。
表3 标定点集的平均绝对位置误差 mm
表4 测试点集的平均、最大绝对位置误差 mm
图5 标定后、测试后的平均绝对位置误差和O1值
图6 各位姿集标定后、测试后绝对位置误差的绝对差值
4.2.2 结论验证
为进一步验证最优位姿集的标定精度和辨识的运动学参数的泛化能力,以Staubli TX60机器人为研究对象,在其操作空间内生成150个标定点和50个测试点。采用同样的算法和实验方案,确定最优位姿集点数为52,不同初始位姿集下最优位姿集优化算法的运行时间和迭代次数见表5。由表5可知:采用优化初始位姿集可以将算法的运行效率提高10%。
表5 Staubli不同初始位姿集算法运行数据
表6 Staubli标定点集的平均绝对位置误差 mm
表7 测试点集的平均、最大绝对位置误差 mm
图7 Staubli标定后、测试后的平均绝对位置误差和O1值
5 结论
考虑到现有标定方法是在机器人设定操作空间内随机选择标定点,这将导致辨识出的运动学参数误差不尽相同,标定结果不稳定。本文提出位姿点集优化方法,通过在EFORT ER10L-C10和Staubli TX60机器人上进行标定实验,结果表明:在不同型号的机器人上,采用优化初始位姿集能够将改进最优点集选择算法的运行效率提高约12%;基于最优位姿集测试后的平均绝对位置精度比随机位姿集提高约9%;采用最优位姿集标定,可以辨识出全局参数,而选择随机位姿集标定,只能辨识出局部参数;EFORT ER10L-C10和Staubli TX60机器人最优位姿集辨识出的运动学参数的泛化能力比随机位姿集分别提高了91%、53%。位姿点集优化研究有利于获得泛化能力更强的运动学参数,使标定结果更加稳定,进一步提高机器人标定精度,适于在大范围、高精度机器人作业中推广应用。