浙江大学学报(工学版), 2020, 54(7): 1316-1324 doi: 10.3785/j.issn.1008-973X.2020.07.009

机械与能源工程

基于相对精度指标的机器人运动学校准

毛晨涛,, 陈章位,, 张翔, 祖洪飞

Kinematic calibration for robots based on relative accuracy

MAO Chen-tao,, CHEN Zhang-wei,, ZHANG Xiang, ZU Hong-fei

通讯作者: 陈章位,男,教授,博导. orcid.org/0000-0002-0122-3762. E-mail: chenzw@zju.edu.cn

收稿日期: 2020-01-3  

Received: 2020-01-3  

作者简介 About authors

毛晨涛(1993—),男,博士生,从事机器人性能测量及校准研究.orcid.org/0000-0002-9648-1835.E-mail:mct@zju.edu.cn , E-mail:mct@zju.edu.cn

摘要

针对工业机器人在激光切割、弧焊等应用领域对相对精度的指标要求,结合鲁棒的极小极大优化理论,提出基于相对精度指标的运动学结构参数校准方法. 通过最小化3个靶球对应的最差相对定位误差,保障前、后两位型间的相对定向精度,构建包含约束的非线性优化问题;使用二次序列规划方法对原问题进行近似,通过主二元子梯度算法在满足不等式约束的条件下快速搜索局部最优解,实现对由于部件制造和装配等环节引入机器人结构参数误差的辨识. 进行补偿并精度验证后的实验结果表明,六轴机器人IRB2600的相对定位及定向精度分别提升了67.98%和24.32%,七轴机器人IRB14000分别提升了90.61%和74.61%.

关键词: 运动学校准 ; 相对精度 ; 极小极大优化 ; 工业机器人

Abstract

A kinematic calibration method for structure parameters based on the relative accuracy was proposed by using the robust minimax optimization theory in order to meet the requirements of high relative accuracy for industrial robots in the application fields of laser cutting, arc welding and so on. The relative orientation accuracy between two successive configurations was guaranteed by minimizing the worst relative positioning errors corresponding to the three target spheres, and a nonlinear optimization problem with constraints was established. Then the original problem was approximated by using a quadratic sequence programming method, and a primal-dual subgradient algorithm was introduced to search the local optimal solution quickly under inequality constraints. The structural parameter errors of the robot introduced in the process of manufacturing and assembly were identified. The compensation and verification were conducted. The experimental results showed that the relative positioning and orientation accuracies of the six-axis robot IRB2600 increased by 67.98% and 24.32%, and the seven-axis robot IRB14000 improved by 90.61% and 74.61%, respectively.

Keywords: kinematic calibration ; relative accuracy ; minimax optimization ; industrial robot

PDF (941KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

毛晨涛, 陈章位, 张翔, 祖洪飞. 基于相对精度指标的机器人运动学校准. 浙江大学学报(工学版)[J], 2020, 54(7): 1316-1324 doi:10.3785/j.issn.1008-973X.2020.07.009

MAO Chen-tao, CHEN Zhang-wei, ZHANG Xiang, ZU Hong-fei. Kinematic calibration for robots based on relative accuracy. Journal of Zhejiang University(Engineering Science)[J], 2020, 54(7): 1316-1324 doi:10.3785/j.issn.1008-973X.2020.07.009

在机器人零部件完成加工和装配过程中,不可避免地会引入结构参数误差,机器人运动学校是保证其可靠及高精度运行的有效手段[1]. 对于校准问题的方法和理论,国内外学者对其作了大量研究. 最常见的方法是通过对机器人末端绝对定位二乘误差最小化来辨识结构参数误差[2-4]. 工业机器人在激光切割、弧焊等领域应用中,比如切割或焊接三维空间长方形,需要进行相对路点运动(如沿着X轴方向前进100 mm)[5-6]. 在这些应用中,前后2个位型的相对精度在一定程度上决定了机器人性能. 先前针对相对精度校准的研究主要是最小化前后2个位型的相对定位误差[7-8],忽视了相对定向精度对机器人性能的影响. 通过大量的机器人试验发现,如果机器人安装较长的工装,定向误差会经过工装放大到末端的定位误差[9]. 考虑姿态信息的校准是很有必要的. Xu 等[10]将机器人末端测量的多点位置建立坐标系,通过坐标系偏差计算绝对位姿残差,对残差进行优化. 位置与姿态误差的单位选择、坐标系建系策略都会直接影响校准效果及收敛性. 为了避免以上问题,本文通过最小化3个靶球对应的最大距离误差,可以同时提升相对定位及定向精度.

机器人校准问题可以视为一个非线性优化问题. 为了解决该问题,很多优化方法被提出,如高斯-牛顿法、莱文贝格-马夸特(LM)法、卡尔曼滤波法等. 由于能够快速收敛,高斯-牛顿法广泛地被应用于机器人校准,通常是最小化残差平方和[10]. LM法解决了高斯-牛顿法最优解搜索过程中矩阵运算可能存在的奇异问题[11]. 卡尔曼滤波法被用来减小测量及机器人重复性误差对辨识过程的影响[12]. 以上优化方法只能解决单目标优化问题,无法解决最小化3个靶球对应的最大距离误差这样的多目标优化问题. 本文使用二次序列规划(SQP)方法对极小极大问题进行求解,增加了校准过程鲁棒性,利用主二元算法在满足不等式约束条件下快速搜索到局部最优解.

1. 鲁棒的校准问题建模

1.1. 激光跟踪仪靶球-机器人系统

为了提升机器人的相对精度,首先需要通过高精度的测量设备测量和计算相应的指标. 如图1(a)所示,在机器人末端法兰盘上安装了3个可以原路反射激光的靶球,使用激光跟踪仪来测量这3个球心对应机器人末端的实际到达位置. 机器人每运动到一个位型,记录串联机器人各个关节轴的角度θ,同时测量能够反映机器人末端位姿信息的3个靶球位置.

图 1

图 1   机器人末端靶球及自由度分析

Fig.1   End-points of robots and its DOF analysis


1.2. 机器人前向与微分运动学

以一个n自由度的串联机器人为例,机器人末端中心点的位置和姿态可以表示为以下非线性关系:

${{T}} = \left[ {\begin{array}{*{20}{c}} {{R}}&{{p}} \\ {{O}}&{\bf{1}} \end{array}} \right] = f({{\theta }},{{\mu }}).$

映射f描述了关节空间中θ、机器人结构参数μ和笛卡尔空间的末端位置p、旋转矩阵R的关系. 如图1(a)所示,激光跟踪仪测量了安装在末端传感模块上的3个靶球,它们在工具坐标系下的坐标是未知的,记为tatbtc. 测量点的名义坐标可以表示为

$\left[ {{{{p}}_{\rm{a}}},{{{p}}_{\rm{b}}},{{{p}}_{\rm{c}}}} \right] = \left[ {{{R}}{{{t}}_{\rm{a}}} + {{p}},{{R}}{{{t}}_{\rm{b}}} + {{p}},{{R}}{{{t}}_{\rm{c}}} + {{p}}} \right].$

对式(2)两边求导,可得

$\left.\begin{array}{l} {\rm{d}}{{{p}}_{\rm{a}}}({{\theta ,\mu ,}}{{{t}}_{\rm{a}}}) = {{{J}}_{{{x{\rm a}}}}}\left[ {\begin{array}{*{20}{c}} {{{{\rm d}{\mu} }}} \\ {{\rm{d}}{{{t}}_{\rm{a}}}} \end{array}} \right], \\ {{d}}{{{p}}_{\rm{b}}}({{\theta ,\mu ,}}{{{t}}_{\rm{b}}}) = {{{J}}_{{{x{\rm b}}}}}\left[ {\begin{array}{*{20}{c}} {{{{\rm d}{\mu} }}} \\ {{\rm{d}}{{{t}}_{\rm{b}}}} \end{array}} \right], \\ {\rm{d}}{{{p}}_{\rm{c}}}({{\theta ,\mu ,}}{{{t}}_{\rm{c}}}) = {{{J}}_{{{x{\rm c}}}}}\left[ {\begin{array}{*{20}{c}} {{{{\rm d}{\mu} }}} \\ {{\rm{d}}{{{t}}_{\rm{c}}}} \end{array}} \right]. \end{array} \right\}$

式中:Jxii=a,b,c)是机器人末端定位误差-结构参数雅克比矩阵. 理想的状态是希望机器人末端实到位置与指令位姿一致. 由于机器人零部件在加工与制造过程中会引入结构参数与名义值的偏差,比如杆长、零位的偏差等,导致了机器人末端在笛卡尔空间中不均匀分布的误差.

1.3. 相对精度指标的定义

相对定位精度(即距离精度)描述了机器人准确地从当前位型到达下一位型的能力,其定义描述在标准ISO 9283中:

$\Delta d_j^i = \left| {{d_{\rm{m}}} - {d_{\rm{o}}}} \right|.$

式中: $\Delta d_j^i $为位型ij之间的距离误差,末端距离测量值 ${d_{\rm{m}}} = \left\| {{{p}}_{{\rm{m}}i}} -\right. $ $\left. {{{p}}_{{\rm{m}}j}} \right\|$,距离指令值 ${d_{\rm{o}}} = \left\| {{{{p}}_{{\rm{o}}i}} - {{{p}}_{{\rm{o}}j}}} \right\|$,下标m和o分别表示测量值和指令值. 在标准ISO 9283中,没有对相对定向精度进行定义. 若参照绝对姿态精度的定义,将其描述为欧拉角的偏差,则在欧拉角奇异位型附近会产生较大的数值计算偏差. 为了避免奇异性问题,可以使用以下指标描述相对定向精度[13]

$\Delta o = \left\| {\ln \;{{({{R}}_{\rm{m}}^{\rm{T}}{{{R}}_{\rm{o}}})}^ \vee }} \right\|.$

式中:正交矩阵R为末端工具坐标系从位型i变换到位型j的旋转矩阵. 指令相对姿态Ro到测量相对姿态Rm的微小姿态偏差可以视作三维刚体旋转变换. 根据Chasles定理可知,该刚体旋转变换可以通过绕单位向量轴的转动实现,∆o的物理意义是描述了刚体旋转变换绕空间单位轴旋转的角度,在一定程度上可以描述指令姿态与测量姿态的偏差[14]. 与相对定位精度一致,相对姿态精度的表示与参考系无关.

1.4. 相对位姿不变性的充分条件

图1(a)所示,机器人末端传感模块包含3个测量点,描述了机器人末端的六维运动. 抽象地说,将末端传感模块视为笛卡尔空间中有6个自由度的三角形,每个位型对应一个这样的三角形. 将相对位姿不变性定义为任意2个不同位型对应的全等三角形相对位姿不变. 通过构建物理约束,可以使得由三角形与约束组成虚拟系统的内部自由度≤0,满足相对位姿不变性.

图1(b)所示,2个位型三角形的对应角点通过3个测量距离进行约束,这些距离约束可以视为该距离长度的杆件通过球铰与三角形的角点连接. 通过该方式,构造虚拟的机械系统来分析内部自由度. 根据机构运动学理论可知,空间机构自由度M可以通过Kutzbach Grübler公式[15]计算得到:

$M = 6(n - g - 1) + \sum\limits_{i = 1}^g {{f_i}}. $

式中:n为系统机械元件数;g为运动副数;fi为第i个运动副的自由度,对于球铰而言,fi=3. 当位型数量达到3和4时,杆件变成如图1(c)(d)所示的三角形和四面体桁架,并通过球铰与对应角点相连. 该虚拟机械系统的自由度分析如表1所示. 可以得出,当测量的位型总数≥4时,该虚拟机械系统的自由度<0,任意2个位型之间的相对位姿是不变的,充分性证明完毕.

表 1   不同位型数对应虚拟机械系统自由度分析

Tab.1  DOF analysis of virtual mechanical system corresponding to different numbers of configurations

位型数 n g M 位型数 n g M
2 5 6 6 4 7 12 0
3 6 9 3 k 3+k 3k 12−3k

新窗口打开| 下载CSV


当位型总数≥4时,相对位姿不变性的充分条件是同一靶球在任意2个不同位型下的距离误差为0. 模型参数名义值计算距离与测量距离值之间总是存在偏差,通过最小化3个距离对应的最大偏差,在优化相对定位精度的同时,尽可能保障相对定向精度,避免了直接计算姿态误差可能引入的单位同质化问题与参考坐标依赖问题.

1.5. 校准问题的目标函数及约束

通过1.4节的分析可得,当位型数≥4时,同一靶球在任意2个不同位型下的距离误差为0,任意2个不同位型的相对位姿不变. 在实际情况中,由于机器人结构非线性误差的存在,末端距离误差不可能为0. 需要寻找一种策略,尽可能减小末端的距离误差,末端距离误差的平方和可以表示为

$F({{\mu }},{{t}}) = {({\rm{\Delta }}{{d}})^{\rm T}}{\rm{\Delta }}{{d}} = \sum\limits_{i = 1}^{n - 1} {\sum\limits_{j = i + 1}^n {{{[{\rm{\Delta }}d_j^i({{\mu }},{{t}})]}^2}} } .$

式中:∆d为距离误差序列;t为描述在工具坐标系下的3个靶球对应的名义坐标, ${ t}=[t_{\rm a},\;t_{\rm b,\;}t_{\rm c}]^{\rm T} $. 机器人末端传感模块存在固有的物理约束,即3个靶球固定在机器人末端且两两之间的距离不随坐标系变化. 靶球之间的测量与名义距离偏差应该设置为小于由跟踪仪测量误差引入的不确定度. 为了使约束条件在微分空间连续,该优化问题采用以下等价的约束条件:

$\left. {\begin{array}{*{20}{c}} {t_1^2 = {{\left[ {\left\| {{{{t}}_{\rm{a}}} - {{{t}}_{\rm{b}}}} \right\| - \dfrac{1}{n}\displaystyle\sum\limits_{j = 1}^n {\left\| {{{{p}}_{{\rm{am}}j}} - {{{p}}_{{\rm{bm}}j}}} \right\|} } \right]}^2} \leqslant \varepsilon ,}\\ {t_2^2 = {{\left[ {\left\| {{{{t}}_{\rm{b}}} - {{{t}}_{\rm{c}}}} \right\| - \dfrac{1}{n}\displaystyle\sum\limits_{j = 1}^n {\left\| {{{{p}}_{{\rm{bm}}j}} - {{{p}}_{{\rm{cm}}j}}} \right\|} } \right]}^2} \leqslant \varepsilon ,}\\ {t_3^2 = {{\left[ {\left\| {{{{t}}_{\rm{c}}} - {{{t}}_{\rm{a}}}} \right\| - \dfrac{1}{n}\displaystyle\sum\limits_{j = 1}^n {\left\| {{{{p}}_{{\rm{cm}}j}} - {{{p}}_{{\rm{am}}j}}} \right\|} } \right]}^2} \leqslant \varepsilon .} \end{array}} \right\}$

式中:tll=1,2,3)是2个靶球间的距离偏差,测量距离通过计算n个位型下对应测量距离的平均值得到,ε为由测量误差引入的不确定度. 对于优化问题,该非线性不等式约束可以重新写成

${{c}}({{t}}) = \left[ {\begin{array}{*{20}{c}} {t_1^2 - \varepsilon } \\ {t_2^2 - \varepsilon } \\ {t_3^2 - \varepsilon } \end{array}} \right];\;{c_j}({{t}}) \leqslant 0,\;j = 1,2,3.$

为了尽可能减小同一靶球在2个不同位型下的距离误差,同时保证机器人末端在2个不同位型下有较高的相对定位及定向精度,将目标函数定义为

$\left.\begin{array}{l} \mathop {\min }\limits_{\mu {{,{ t}}}} {\rm{ }}\mathop {{\rm{max}\;}}\limits_i {\rm{ }}{F_i}({{\mu }},{{t}}); \\ {\rm{s.t. }}\;{c_j}({{t}}) \leqslant 0,j = 1,2,3. \\ \end{array}\right\} $

式中:下标i表示安装在机器人末端的第i个靶球. 通过最小化3个靶球中最大的距离平方误差和,尽可能减少了机器人末端的距离误差,增加了校准过程的鲁棒性. 测量得到的机器人末端点位置坐标表示在测量坐标系下,若只通过距离误差的关系建立目标函数,则测量数据与参考系无关,在对机器人结构参数校准过程中不会引入从测量系到机器人基坐标系的坐标转换误差.

2. 校准问题的求解

2.1. 极小极大搜索算法的求解

由于极小极大搜索问题不是一个典型的凸优化问题,需要将其转换为二次序列规划(SQP)子问题才能更好地对原问题进行求解[16]. 极小极大问题可以等价为以下约束的极小化问题:

$\left.\begin{array}{l} \mathop {{\rm{min}}}\limits_{{x}} \;\psi {\rm{(}}{{x}}{\rm{)}}; \\ {\rm{s.t. }}\;{{C}}{\rm{(}}{{x}}{\rm{) }}\leqslant{{0}}{\rm{.}} \\ \end{array}\right\} $

式中:x为在校准问题中待辨识的结构参数. 有以下关系 ${{x}} = ({{\mu }},{{t}})$$\psi ({{x}}) = \mathop {{\rm{max}}\;}\limits_i \{ {F_i}({{x}})\} $

${{C}}({{x}}) = \left[ {\begin{array}{*{20}{c}} {{F_1}({{x}}) - \psi ({{x}})} \\ {{F_2}({{x}}) - \psi ({{x}})} \\ {{F_3}({{x}}) - \psi ({{x}})} \\ {{{c}}({{x}})} \end{array}} \right].$

式(11)中描述的优化问题可以迭代生成二次序列规划子问题,该子问题是原校准问题的近似. SQP方法的核心思想是线性化原问题,对得到的线性近似问题设计具有快速局部收敛率的搜索方法. 由于Fix)是可微的,对于任何搜索方向x,方向导数为

${D_{{{\Delta x}}}}\psi ({{x}}) = \mathop {\max \;}\limits_{i \in I({{x}})} \{ \nabla F_i^{\rm{T}}({{x}}){\rm{\Delta }}{{x}}\} .$

式中:

$I({{x}}) = \{ i:{F_{{i}}}({{x}}) = \psi ({{x}})\} .$

近似的二次序列规划问题可以表示为

$\left.\begin{array}{l} \mathop {{\rm{min}}}\limits_{{{\Delta x}}} \dfrac{1}{2}{\rm{\Delta }}{{{x}}^{\rm{T}}}{{{{H}}}_{{k}}}{\rm{\Delta }}{{x}} + {D_{{{\Delta x}}}}\psi ({{{x}}^k}); \\ {\rm{s.t.}}\;{{C}}({{x}}) + {{G}}({{x}}){\rm{\Delta }}{{x}}{\rm{ }}\leqslant{{0}}. \\ \end{array}\right\} $

步长表示为x=xk+1xk,其中k为二次序列规划问题的迭代次数. 海塞矩阵Hk可以通过BFGS方法[17]不断更新迭代,且通过引入积累了二阶信息的海塞矩阵,可以实现二次序列规划问题的超线性收敛. 约束条件中G(x)是不等式约束Cx)的梯度. 为了保证生成的二次序列规划问题存在收敛解,该约束优化问题需要满足Karush-Kuhn-Tucker(KKT)条件[18],该条件的拉格朗日方程可以描述为

$\begin{split} L({\rm{\Delta }}{{x}},{{\lambda }}) =& \frac{1}{2}{\rm{\Delta }}{{{x}}^{\rm{T}}}{{{H}}_{{k}}}{\rm{\Delta }}{{x}} + {D_{{\rm{\Delta }}{{x}}}}\psi ({{x}}) + \\ & {{{\lambda }}^{\rm{T}}}[{{C}}({{x}}) + {{G}}({{x}}){\rm{\Delta }}{{x}}]. \end{split} $

式中:λ为KKT条件的拉格朗日算子,λ0. 二次序列问题(15)的KKT条件可以推导为

$\left. {\begin{array}{*{20}{l}} {\nabla {F_i}{\rm{(}}{{x}}{\rm{)}}{|_{i \in I({{x}})}} + {{{H}}_{{k}}}{\rm{\Delta }}{{x}} + {{({{{G}}^{\rm T}}({{x}}))}^ + }{{\lambda }} = {{0}},}\\ {{{({{C}}({{x}}) + {{G}}({{x}}){\rm{\Delta }}{{x}})}^ + } = {{0}},}\;{{{\lambda }}\geqslant{{0}},}\\ {{{{\lambda }}^{\rm T}}({{C}}({{x}}) + {{G}}({{x}}){\rm{\Delta }}{{x}}) = 0.} \end{array}} \right\}$

运算符()+定义为

${(a)^ + } = \left\{ {\begin{array}{*{20}{l}} {a,\;a \geqslant 0;} \\ {0,\;a < 0.} \end{array}} \right.$

为了寻找迭代步长及算子(xλ)的最优解,同时满足上述定义的KKT条件,使用主二元子梯度算法进行梯度方向的搜索:

$\left. {\begin{array}{*{20}{l}} \begin{array}{l} 0 \in {\partial _{{\rm{\Delta }}{{x}}}}L({\rm{\Delta }}{{{x}}^p},{{{\lambda }}^p}) = {{{H}}_{{k}}}{\rm{\Delta }}{{{x}}^p} + \nabla {F_i}({{{x}}^k}){|_{i \in I({{x}})}}+\\ \qquad {({{{G}}^{\rm T}}({{{x}}^k}))^ + }{{{\lambda }}^p}, \end{array}\\ {0 = - {\nabla _{{\lambda }}}L({\rm{\Delta }}{{{x}}^p},{{{\lambda }}^p}) = - {{C}}({{{x}}^k}) - {{G}}({{{x}}^k}){\rm{\Delta }}{{{x}}^p}.} \end{array}} \right\}$

式中:p为二次规划子问题的迭代次数. 迭代过程中KKT算子可以定义为

${{T}}({\rm{\Delta }}{{{x}}^p},{{{\lambda }}^p}) = \left[ {\begin{array}{*{20}{c}} {{\partial _{{\rm{\Delta }}{{x}}}}L({\rm{\Delta }}{{{x}}^p},{{{\lambda }}^p})}\\ { - {{({\nabla _\lambda }L({\rm{\Delta }}{{{x}}^p},{{{\lambda }}^p}))}^ + }} \end{array}} \right].$

定义z=[∆xλ]T,则搜索最优解z*的更新率为

${{{z}}^{p + 1}} = {{{z}}^p} - {\alpha _p}{{{T}}^p},$

式中:TpTzp),αp为迭代步长.

2.2. 目标函数及约束的梯度

直接给出式(10)中目标函数及约束条件的梯度解析式,能够使优化问题更快地收敛到最优解. 近似的二次序列规划问题(15)的目标函数梯度可以表示为

$P({{x}}) = {{{H}}_{{k}}}{{\Delta x}} + \nabla {F_i}({{x}}){|_{i \in I({{x}})}}.$

式中:海塞矩阵Hk可以通过BFGS方法得到;Fix)的梯度可以推导并表示为

$\nabla {F_{{i}}} = 2{\left( {\frac{{\partial \left( {{\rm{\Delta }}{{{d}}_i}} \right)}}{{\partial {{{x}}^{\rm{T}}}}}} \right)^{\rm{T}}}{\rm{\Delta }}{{{d}}_i} = 2{{J}}_i^{\rm{T}}{\rm{\Delta }}{{{d}}_i},$

其中Ji为描述对应第i组距离误差的结构参数误差与Fix)梯度关系的雅克比矩阵. 根据空间几何理论,可以将机器人末端在2个位型下的距离误差近似转换为点位误差关系[19]. 如图2所示,机器人末端的距离误差可以表示为

图 2

图 2   机器人末端两点间距离误差的线性近似

Fig.2   Linearization of distance errors between two end-points


$\Delta d = \left| {{P_i}{P_j}} \right| - \left| {{P_i}'{P_j}'} \right|.$

式中:PiPj分别为第i和第j个位型机器人末端实际到达并用激光跟踪仪测量的点,Pi'及Pj'为机器人末端名义计算点. 有以下向量关系式成立:

$\begin{split} \overrightarrow {{{{P}}_{{i}}}{{{P}}_{{j}}}} - \overrightarrow {{{{P}}_{{i}}}{{'}}{{{P}}_{{j}}}{{'}}} =& (\overrightarrow {{{O}}{{{P}}_{{j}}}} - \overrightarrow {{{O}}{{{P}}_{{i}}}} ) - (\overrightarrow {{{O}}{{{P}}_{{j}}}{{'}}} - \overrightarrow {{{O}}{{{P}}_{{i}}}{{'}}} ) = \\ & (\overrightarrow {{{O}}{{{P}}_{{j}}}} - \overrightarrow {{{O}}{{{P}}_{{j}}}{{'}}} ) - (\overrightarrow {{{O}}{{{P}}_{{i}}}} - \overrightarrow {{{O}}{{{P}}_{{i}}}{{'}}} ) = \\ & {\rm{\Delta }}{{{p}}_{{j}}} - {\rm{\Delta }}{{{p}}_{{i}}}. \\ \end{split} $

式中:∆pj和∆pi分别为机器人末端在点PjPi处的绝对定位误差. 如图2所示,线段PiPj''与线段Pi'Pj'平行且等长,向量和距离之间有以下关系:

$\begin{split} & \overrightarrow {{{{P}}_{{j}}}{{'}}{{{P}}_{{i}}}{{'}}} \cdot {\rm{(}}\overrightarrow {{{{P}}_{{i}}}{{{P}}_{{j}}}} - \overrightarrow {{{{P}}_{{i}}}{{'}}{{{P}}_{{j}}}{{'}}} {\rm{)}} = \overrightarrow {{{{P}}_{{j}}}{{''}}{{{P}}_i}} \cdot \overrightarrow {{{{P}}_{{j}}}{{''}}{{{P}}_{{j}}}}= \\&\quad \left| {{P_j}''{P_i}} \right| \cdot \left| {{P_j}''{P_j}} \right|\cos \theta {\rm{ }} \approx \left| {{P_i}{P_j}''} \right|(\left| {{P_i}{P_j}''} \right| - \left| {{P_i}{P_j}} \right|) = \\&\quad {\rm{ - }}\left| {{P_i}'{P_j}'} \right|{\rm{\Delta }}d. \\[-10pt] \end{split} $

由于 $\left| {{P_j}''{P_i}} \right| \gg \left| {{P_j}''{P_j}} \right|$,有以下近似关系 $\left| {{P_j}''{P_j}} \right|\cos \theta \approx \left| {{P_i}{P_j}''} \right| - \left| {{P_i}{P_j}} \right|$. 将式(26)代入(25),有

${\rm{\Delta }}d \approx \frac{{\overrightarrow {{{{P}}_{{i}}}{{'}}{{{P}}_{{j}}}{{'}}} }}{{\left| {{P_i}'{P_j}} \right|}} \cdot {\rm{(\Delta }}{{{p}}_{{j}}} - {\rm{\Delta }}{{{p}}_{{i}}}{\rm{)}}.$

通过上述分析,结合机器人运动学微分学理论,对式(27)两边求微分,可得式(23)中距离误差-结构参数雅克比矩阵的解析式为

${{J}} = \frac{{\partial ({\rm{\Delta }}d)}}{{\partial {{{x}}^{\rm{T}}}}} \approx \frac{{\overrightarrow {{{{P}}_{{i}}}{{'}}{{{P}}_{{j}}}{{'}}} }}{{\left| {{P_i}'{P_j}} \right|}}({{{J}}_{{{x}}j}}{\rm{(}}{{{\theta }}_{{j}}},{{x}}{\rm{)}} - {{{J}}_{{{x}}i}}{\rm{(}}{{{\theta }}_{{i}}},{{x}}{\rm{)}}).$

二次序列规划问题不等式约束(15)的梯度可以表示为

${{G}}({{x}}) = \left[ {\begin{array}{*{20}{c}} {\nabla F_1^{\rm{T}}({{x}}) - \nabla F_i^{\rm{T}}({{x}}){|_{i \in I({{x}})}}}\\ {\nabla F_2^{\rm{T}}({{x}}) - \nabla F_i^{\rm{T}}({{x}}){|_{i \in I({{x}})}}}\\ {\nabla F_3^{\rm{T}}({{x}}) - \nabla F_i^{\rm{T}}({{x}}){|_{i \in I({{x}})}}}\\ {{{K}}({{x}})} \end{array}} \right].$

物理约束cx)的梯度可以推导为

${{K}}({{x}}) = \left[ {\begin{array}{*{20}{c}} {2{t_1}{{\left( {\dfrac{{\partial {{{t}}_{{1}}}}}{{\partial {{x}}}}} \right)}^{\rm{T}}}} \\ {2{t_2}{{\left( {\dfrac{{\partial {{{t}}_{{2}}}}}{{\partial {{x}}}}} \right)}^{\rm{T}}}} \\ {2{t_3}{{\left( {\dfrac{{\partial {{{t}}_{{3}}}}}{{\partial {{x}}}}} \right)}^{\rm{T}}}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {2{t_1}\dfrac{{{{{\rm{(}}{{{t}}_{\rm{a}}} - {{{t}}_{\rm{b}}}{\rm{)}}}^{\rm{T}}}}}{{\left\| {{{{t}}_{\rm{a}}} - {{{t}}_{\rm{b}}}} \right\|}}\dfrac{{\partial {\rm{(}}{{{t}}_{\rm{a}}} - {{{t}}_{\rm{b}}}{\rm{)}}}}{{\partial {{{x}}^{\rm{T}}}}}} \\ {2{t_2}\dfrac{{{{{\rm{(}}{{{t}}_{\rm{b}}} - {{{t}}_{\rm{c}}}{\rm{)}}}^{\rm{T}}}}}{{\left\| {{{{t}}_{\rm{b}}} - {{{t}}_{\rm{c}}}} \right\|}}\dfrac{{\partial {\rm{(}}{{{t}}_{\rm{b}}} - {{{t}}_{\rm{c}}}{\rm{)}}}}{{\partial {{{x}}^{\rm{T}}}}}} \\ {2{t_3}\dfrac{{{{{\rm{(}}{{{t}}_{\rm{c}}} - {{{t}}_{\rm{a}}}{\rm{)}}}^{\rm{T}}}}}{{\left\| {{{{t}}_{\rm{c}}} - {{{t}}_{\rm{a}}}} \right\|}}\dfrac{{\partial {\rm{(}}{{{t}}_{\rm{c}}} - {{{t}}_{\rm{a}}}{\rm{)}}}}{{\partial {{{x}}^{\rm{T}}}}}} \end{array}} \right].$

2.3. 凸性及收敛性分析

由于机器人正解过程中包含非线性三角函数的乘积,对于校准问题(10),其目标函数是非凸的. 通过将原优化问题转换为近似的二次序列规划问题,可以证明得到的线性近似问题是凸的. 根据凸优化的理论可知,目标函数及约束条件是凸的须满足以下条件:

$\left.\begin{split} f\left( {\alpha {{x}} + \beta {{y}}} \right) \leqslant \alpha f({{x}}) + \beta f({{y}});\\ \alpha + \beta = 1,\alpha \geqslant 0,\beta \geqslant 0. \end{split}\right\}$

定义

$Q({\rm{\Delta }}{{x}}) = \frac{1}{2}{\rm{\Delta }}{{{x}}^{\rm{T}}}{{{H}}_{{k}}}{\rm{\Delta }}{{x}} + {D_{{\rm{\Delta }}{{x}}}}\psi ({{x}}).$

由于海塞矩阵Hk是正定矩阵,有

$\begin{split}& Q(\alpha {{x}} + \beta {{y}}) - \alpha Q({{x}}) - \beta Q({{y}}) = \\ &\quad - \alpha \beta {({{x}} - {{y}})^{\rm{T}}}{{{H}}_{{k}}}({{x}} - {{y}}) \leqslant 0, \\ \end{split} $

证明了二次序列规划问题的目标函数是凸的. 同样地,可以证明约束条件是凸的. 对于凸优化问题,当迭代步长满足以下条件时可以证明其全局收敛到最优解[20]

${\alpha _p} = \frac{{{\gamma _p}}}{{{{\left\| {{{{T}}^p}} \right\|}_2}}};\;\;{\gamma _p} > 0,\;\;\sum\limits_p {\gamma _p^2}< \infty .$

式中:ϒp为调节收敛率的比例因子. 对于校准原问题,由于SQP问题是对原问题的线性近似,原问题可以收敛到局部最小值.

2.4. 鲁棒的机器人运动学校准算法

对所有目标函数、约束条件及梯度进行初始化,然后对优化问题近似的二次规划子问题使用主二元子梯度算法寻找满足KKT条件的全局收敛解. 在子问题收敛后更新目标函数、约束条件及梯度,通过BFGS方法更新海塞矩阵. 在更新得到的解附近重新生成新的二次规划子问题,不断搜索直至原校准问题收敛.

算法:鲁棒的机器人运动学校准算法

输入:关节转角θ,名义结构参数x0,末端测量点pampbmpcm.

输出:辨识的结构参数 x*.

初始化

dFi,▽FiCx0),Gx0)<= =x0H0

迭代过程

while x未收敛 do

x0=0λ0=0.

while x未收敛 do

主二元子梯度算法

$\small{{{{T}}^p} = \left[ {\begin{array}{*{20}{c}}{{{{H}}_{{k}}}{\rm{\Delta }}{{{x}}^p} + \nabla {F_i}({{{x}}^k}){|_{i \in I}} + {{({{{G}}^{\rm{T}}}({{{x}}^k}))}^ + }{{{\lambda }}^p}}\\{ - {{({{C}}({{{x}}^k}) + {{G}}({{{x}}^k}){\rm{\Delta }}{{{x}}^p})}^ + }}\end{array}} \right]}$

${{{z}}^{p + 1}} = {{{z}}^p} - {\alpha _p}{{{T}}^p},{\alpha _p} = \dfrac{{{\gamma _p}}}{{{{\left\| {{{{T}}^p}} \right\|}_2}}}$

end while

更新状态、约束、梯度和海塞矩阵:

xk+1=xk+xksk=xk

$\nabla {F_i}{\rm{(}}{{{x}}^{k + 1}}{\rm{),\; }}{{C}}{\rm{(}}{{{x}}^{k + 1}}{\rm{),\; }}{{G}}{\rm{(}}{{{x}}^{k + 1}}{\rm{) < = = }}{{{x}}^{k + 1}}$

${{{q}}_k}{\rm{ = }}\nabla {F_i}{\rm{(}}{{{x}}^{k + 1}}{\rm{)}}{{\rm{|}}_{i \in {{I}}}}{\rm{ + }}{{{G}}^{\rm{T}}}{\rm{(}}{{{x}}^{k + 1}}{\rm{)}}{{{\lambda }}^{k + 1}}{\rm{ - [}}\nabla {F_i}{\rm{(}}{{{x}}^k}{\rm{)}}{{\rm{|}}_{i \in {{I}}}}{\rm{ + }}{{{G}}^{\rm{T}}}{\rm{(}}{{{x}}^k}{\rm{)}}{{{\lambda }}^k}{\rm{]}}$

${{{H}}_{k + 1}} = {{{H}}_k} + \dfrac{{{{{q}}_k}{{q}}_k^{\rm{T}}}}{{{{q}}_k^{\rm{T}}{{{s}}_k}}} - \dfrac{{{{{H}}_k}{{{s}}_k}{{s}}_k^{\rm{T}}{{H}}_k^{\rm{T}}}}{{{{s}}_k^{\rm{T}}{{{H}}_k}{{{s}}_k}}}$

end while

3. 实验结果分析

3.1. 六轴机器人实验结果分析

利用提出的校准算法在ABB机器人IRB2600上进行实验验证,名义的结构参数如表2所示,机器人及激光跟踪仪测量过程如图3所示. 测量设备使用的是Faro Vantage激光跟踪仪,测量精度为15 μm+0.8 μm/m. 测量时,机器人依次运动至工作空间内共100组任意位型处,使用激光跟踪仪测量末端3个靶球的位置,记录相应的关节角度. 如图4所示为机器人校准前的相对定位精度. 图中,Mf为频数. 结果表明,校准前机器人最大的相对定位误差为3.73 mm. 机器人末端安装有3个靶球,所以一共有3组对应的相对定位精度,其中表现最差的一组对应的相对定位误差均方根为1.20 mm.

表 2   机器人IRB2600的名义DH参数

Tab.2  Nominal DH parameters for robot IRB2600

序号 ${a_i}/{\rm{mm}}$ ${d_i}/{\rm{mm}}$ ${\theta _i}/(^\circ )$ ${\alpha _i}/(^\circ) $
1 150 445 0 −90
2 900 0 −90 0
3 150 0 0 −90
4 0 938 0 90
5 0 0 180 90
6 0 200 0 0

新窗口打开| 下载CSV


图 3

图 3   机器人IRB2600末端位姿数据测量过程

Fig.3   Measurement process of end-points for IRB2600


图 4

图 4   校准前相对定位精度分布

Fig.4   Relative positioning accuracy before calibration


为了验证提出算法对机器人相对精度提升的有效性,对该方法与目前常用的几种校准方法(见表3)进行对比试验. Wang等[7]基于距离误差对机器人结构参数进行辨识,只测量并计算了安装在机器人末端一个靶球对应的距离误差. Xu等[10-11]都是基于绝对精度指标提升末端精度,Xu等[10]同时考虑末端的绝对定位与定向精度,Motta等[11]只考虑定位精度.

表 3   不同校准方法对比

Tab.3  Comparison on different calibration methods

方法 精度指标 优化方法 约束条件 姿态处理
本文方法 相对 SQP,主二元 最小化最差情况
文献[7]方法 相对 高斯牛顿,SVD
文献[10]方法 绝对 高斯牛顿 最小化位姿误差
文献[11]方法 绝对 高斯牛顿,LM

新窗口打开| 下载CSV


对比试验的结果如图5所示. 图中,dadbdc分别为第1、2、3个靶球子在不同方法校准后的相对定位精度. 从图5可以看出,进行结构参数校准后所有方法均能明显提升相对精度. 基于距离误差的校准方法[7]和只考虑定位误差的方法[11]只对第1个靶球的对应指标进行优化,从图5(a)可以发现,这2个方法的第1个靶球对应相对定位精度指标优于考虑位姿的方法[10]. 对于第2个和第3个靶球对应的相对精度指标,基于距离误差的方法和只考虑定位误差的方法的相对定位精度都略差于本文提出的方法. 对于相对定向指标,这2个方法明显差于本文提出的方法. 对比考虑位姿的方法,同时考虑绝对定位与定向精度的方法[10]各项指标不及本文提出的方法. 为了更直观地反映各种方法的相对精度,不同方法的相对精度在不同特定区间内的概率分布如表4所示. 可以看出,本文提出的方法相对精度在接近0的区间内概率最高.

表 4   IRB2600相对精度在不同特定区间内频率分布

Tab.4  Frequency distribution of relative accuracy in different specific intervals on IRB2600

方法 Δd1)/% Δo/%
[0, 0.2] mm [0, 0.4] mm [0, 0.002] rad [0, 0.004] rad
注:1) 表示只列出3个靶球对应指标中最差的一项.
校准前 17.43 33.90 16.79 61.07
本文方法 51.03 82.81 44.63 92.53
文献[7]方法 50.63 80.59 29.62 82.32
文献[10]方法 51.07 81.03 38.26 86.30
文献[11]方法 49.21 79.66 28.34 76.73

新窗口打开| 下载CSV


图 5

图 5   IRB2600不同方法校准前、后的相对精度分布

Fig.5   Relative positioning accuracy after calibration


各种方法对比的相对精度结果均方根与最大值如表5所示. 表中,RMSd、Δdmax分别为定位精度的均方根和最大值,RMSo、Δomax分别为定向精度的均方根和最大值. 使用提出的校准方法,相对定位及定向精度分别提升了67.98%和24.32%. 与其他方法相比,提出的方法相对于其他方法对相对精度的提升效果最好.

表 5   IRB2600不同方法的相对精度指标

Tab.5  Relative accuracy with different methods on IRB2600

方法 RMSd1)/mm Δdmax /mm RMSo /rad Δomax /rad
注:1) 表示只列出3个靶球对应指标中最差的一项.
校准前 1.195 1 3.726 7 0.003 9 0.009 2
本文方法 0.293 2 1.193 4 0.002 5 0.007 4
文献[7]方法 0.318 4 1.413 8 0.003 1 0.008 5
文献[10]方法 0.312 8 1.488 1 0.002 9 0.008 4
文献[11]方法 0.332 3 1.589 7 0.003 3 0.009 0

新窗口打开| 下载CSV


3.2. 七轴机器人实验结果分析

为了验证提出算法的通用性,在ABB七轴机器人上进行了实验验证. 不同方法的相对精度在不同特定区间内的概率分布如表6所示. 与六轴机器人的结果不同,文献[7]方法的相对定位及定向精度差于其他方法,说明如果只对1个靶球测量并计算的距离误差进行优化,相对精度不能大概率地稳定保持在一定区间范围内. 本文提出的校准算法在保留文献[7]方法的优点的同时,引入极小极大算法,增加了参数辨识过程的鲁棒性.

表 6   IRB14000相对精度在不同特定区间内频率分布

Tab.6  Frequency distribution of relative accuracy in different specific intervals on IRB14000

方法 Δd1)/% Δo/%
[0, 0.3] mm [0, 0.6] mm [0, 0.005] rad [0, 0.01] rad
注:1) 表示只列出3个靶球对应指标中最差的一项.
校准前 3.37 7.01 2.30 12.48
本文方法 71.39 94.79 63.96 99.84
文献[7]方法 57.07 86.89 13.17 34.85
文献[10]方法 65.82 92.18 30.10 86.08
文献[11]方法 65.74 92.16 29.96 85.70

新窗口打开| 下载CSV


各种方法对比的相对精度结果均方根与最大值如表7所示. 使用提出的校准方法,相对定位及定向精度分别提升了90.61%和74.61%. 与其他方法相比,提出方法只在相对定位精度最大值方面略差于文献[10]、[11]的方法,其他指标均优于其他方法. 考虑到优化的指标函数是误差平方和,本文方法保证了末端误差的平方和最小,减小了由于测量不确定度引入的参数辨识偏差,增加了参数辨识过程的鲁棒性.

表 7   IRB14000不同方法的相对精度指标

Tab.7  Relative accuracy with different methods on IRB14000

方法 RMSd1)/mm Δdmax /mm RMSo /rad Δomax /rad
注:1) 表示只列出3个靶球对应指标中最差的一项.
校准前 5.560 9 13.519 0.023 3 0.044 5
本文方法 0.296 0 1.270 1 0.004 8 0.011 3
文献[7]方法 0.396 4 1.494 8 0.014 2 0.025 3
文献[10]方法 0.334 4 1.258 7 0.007 4 0.014 9
文献[11]方法 0.334 7 1.260 0 0.007 4 0.014 9

新窗口打开| 下载CSV


4. 结 语

本文提出基于相对精度指标的机器人结构参数校准方法. 该方法通过最小化3个靶球对应的最大距离误差来保证相对定位及定向精度. 为了求解非凸的极小极大问题,使用SQP方法对原校准问题进行近似,在增加了校准过程鲁棒性的同时,通过主二元子梯度算法在满足不等式约束条件下快速搜索到局部最优解. 该方法有以下优势:1)以距离误差的平方和作为目标函数,距离误差的计算与坐标系的选择无关,在参数辨识过程中不用考虑测量系与基坐标系的对齐问题;2)利用极小极大算法可以提升校准算法的鲁棒性;3)利用该方法可以同时提升相对定位及定向精度. 在进行校准及精度验证后,实验结果表明,六轴机器人IRB2600相对定位及定向精度分别提升了67.98%和24.32%,七轴机器人IRB14000分别提升了90.61%和74.61%.

参考文献

张晓平. 六自由度关节型机器人参数标定方法与实验研究[D]. 武汉: 华中科技大学, 2013.

[本文引用: 1]

ZHANG Xiao-ping. Research on 6R articulated robot calibration Methods and experiments [D]. Wuhan: Huazhong University of Science and Technology, 2013.

[本文引用: 1]

LI C, WU Y, LOWE H, et al

POE-based robot kinematic calibration using axis configuration space and the adjoint error model

[J]. Transactions on Robotics, 2016, 32 (5): 1264- 1279

DOI:10.1109/TRO.2016.2593042      [本文引用: 1]

王一, 刘常杰, 杨学友, 等

工业机器人视觉测量系统的在线校准技术

[J]. 机器人, 2011, (03): 45- 48

WANG Yi, LIU Chang-jie, YANG Xue-you, et al

Online calibration of visualmeasurement system based on industrial robot

[J]. Robot, 2011, (03): 45- 48

WU L, YANG X, CHEN K, et al

A minimal POE-based model for robotic kinematic calibration with only position measurements

[J]. Transactions on Automation Science and Engineering, 2015, 12 (2): 758- 763

DOI:10.1109/TASE.2014.2328652      [本文引用: 1]

陈更明. 多切割平台三维钣金件激光切割虚拟制造系统研究与开发[D]. 南京: 东南大学, 2018.

[本文引用: 1]

CHEN Geng-ming. Research and development of laser cutting virtual manufacturing system for 3D sheet metal of multi-cutting platform [D]. Nanjing: Southeast University, 2018.

[本文引用: 1]

DOLGUI A, PASHKEVICH A

Manipulator motion planning for high-speed robotic laser cutting

[J]. International Journal of Production Research, 2009, 47 (20): 5691- 5715

DOI:10.1080/00207540802070967      [本文引用: 1]

WANG Z, XU H, CHEN G, et al

A distance error based industrial robot kinematic calibration method

[J]. Industrial Robot: An International Journal, 2014, 41 (5): 439- 446

DOI:10.1108/IR-04-2014-0319      [本文引用: 6]

杜亮, 张铁, 戴孝亮

激光跟踪仪测量距离误差的机器人运动学参数补偿

[J]. 红外与激光工程, 2015, (08): 119- 125

[本文引用: 1]

DU Liang, ZHANG Tie, DAI Xiao-liang

Robot kinematic parameters compensation by measuring distance error using laser tracker system

[J]. Infrared and Laser Engineering, 2015, (08): 119- 125

[本文引用: 1]

MAO C, LI S, CHEN Z, et al

A novel algorithm for robust calibration of kinematic manipulators and its experimental validation

[J]. IEEE Access, 2019, 7 (1): 90487- 90496

[本文引用: 1]

XU W, DONGSHENG L, MINGMING W. Complete calibration of industrial robot with limited parameters and neural network [C]// IEEE International Symposium on Robotics and Intelligent Sensors. Tokyo: IEEE, 2016.

[本文引用: 8]

MOTTA J, CARVALHO G, MCMASTER R

Robot calibration using a 3D vision-based measurement system with a single camera

[J]. Robotics and Computer-Integrated Manufacturing, 2001, 17 (6): 487- 497

DOI:10.1016/S0736-5845(01)00024-2      [本文引用: 6]

DU G, ZHANG P

Online serial manipulator calibration based on multisensory process via extended Kalman and particle filters

[J]. Transactions on Industrial Electronics, 2014, 61 (12): 6852- 6859

DOI:10.1109/TIE.2014.2314051      [本文引用: 1]

ZHANG X, SONG Y, YANG Y, et al

Stereo vision based autonomous robot calibration

[J]. Robotics and Autonomous Systems, 2017, 93: 43- 51

DOI:10.1016/j.robot.2017.04.001      [本文引用: 1]

LYNCH K M, PARK F C. Modern robotics: mechanics, planning, and control [M]. London: Cambridge University Press, 2017.

[本文引用: 1]

欧阳富, 刘彦华, 孙东民

关于重新建立空间机构自由度计算公式的探索

[J]. 机械工程学报, 2003, 39 (1): 60- 64

DOI:10.3321/j.issn:0577-6686.2003.01.013      [本文引用: 1]

OUYANG Fu, LIU Yan-hua, SUN Dong-min

Exploration on re-establishing the calculation formula of degree of freedom for spatial mechanism

[J]. Chinese Journal of Mechanical Engineering, 2003, 39 (1): 60- 64

DOI:10.3321/j.issn:0577-6686.2003.01.013      [本文引用: 1]

COTTLE R, THAPA M. Linear and nonlinear optimization [M]. New York: Springer, 2017.

[本文引用: 1]

WALTER F

The BFGS method with exact line searches fails for non-convex objective functions

[J]. Mathematical Programming, 2004, 99 (1): 49- 61

DOI:10.1007/s10107-003-0421-7      [本文引用: 1]

FRANCISCO F, CHRISTIAN K, SIMONE S

Soving quasi-variational inequalities via their KKT-conditions

[J]. Mathematical Programming, 2014, 144 (1/2): 369- 412

[本文引用: 1]

张铁, 戴孝亮, 杜亮

基于距离测量的机器人误差标定及参数选定

[J]. 北京航空航天大学学报, 2014, (05): 10- 15

[本文引用: 1]

ZHANG Tie, DAI Xiao-liang, DU Liang

Robot error calibration based on distance measurement with parameter selection

[J]. Journal of Beijing University of Aeronautics and Astronautics, 2014, (05): 10- 15

[本文引用: 1]

BOYD S, VANDENBERGHE L. Convex optimization [M]. London: Cambridge University Press, 2004.

[本文引用: 1]

/