1. 引言
随着科技进步,机器人技术成为现代科学发展的必然产物。过去几十年,串联机器人主导了工业机器人领域,但随着对加工精度要求的提高,串联机器人因误差大、精度低和承载能力有限等缺点逐渐暴露。相比之下,并联机器人凭借其独特的结构优势,具有较高的刚度和稳定性,能有效避免误差累积与放大,提供更高精度。并联机器人不仅承载能力强,还能保持较低的运动惯量和高精度工作表现。
运动学标定,也被称作精度补偿,对于提升并联机器人的精度至关重要。这一过程一般包括四个主要步骤:误差建模、位姿测量和参数辨识、误差补偿。
标定过程中参数辨识对测量噪声的敏感性与测量位姿的选择密切相关,因此选择最佳测量位姿是标定成功的关键。虽然随机搜索方法能实现目标,但计算效率低且成本高。相比之下,智能优化算法提供了更有效、通用的解决方案,已有许多学者进行相关研究。Khalil等[1]使用了一种共轭型优化方法进行标定。Zhuang等[2]利用能够克服局部最小点的模拟退火(SA)方法来获得机器人标定的最佳或接近最佳的测量位姿,但是模拟退火算法的计算成本较高。Daney等[3]通过结合局部收敛和禁忌搜索策略,获取了一组能够最大化可观测性指标的测量位姿。仿真结果表明,这些通过优化选择的测量位姿显著增强了传感器对测量噪声的抗干扰能力。Wang等[4]利用Solis&Wets算法来选择并联机器人的一组最佳测量位姿,减小参数辨识中测量噪声的影响。实验结果表明该方法的标定结果优于随机选择的测量位姿的标定结果。Zhang等[5]为了解决参数辨识中测量位姿选择的问题,提出了结合DETMAX算法和禁忌搜索算法来选择最佳的测量位姿。仿真结果表明,利用该算法所选的测量位姿能够显著增强标定的鲁棒性。
然而,多数搜索算法仍旧存在搜索速度慢且易于陷入局部最优等缺点,故追逐快速且全局收敛的离散型搜索算法依然是最优测量构形选择问题中的研究热点。此外,虽然有一些“亚启发式算法”(比如,遗传算法与禁忌搜索算法以及模拟退火算法)已被成功应用于最优测量构形选择问题之中,但是仍有许多优秀的“亚启发式算法”还未被尝试,例如,粒子群算法[6]与人工鱼群算法[7]等。基于上述原因,结合经典粒子群算法具有搜索速度快,调节参数少以及全局收敛等特点,选择粒子群算法当作最优测量构形选择的搜索算法。在Stewart型六自由度并联机器人的工作空间内,引入了混合遗传算法中变异交叉的粒子群算法用于寻找面向Stewart型并联机器人运动学标定的最优位姿。
2. 运动学分析
2.1. 坐标系建立
Stewart型并联机器人主要由运动平台、静平台以及连接两者的六根液压缸组成,如图1所示。液压缸的一端通过虎克铰连接至静平台,另一端则通过虎克铰与运动平台相连。工作时,通过调节六根液压缸的伸缩量来控制运动平台到达不同的位置与姿态。
Figure 1. Structure of Stewart parallel robot
图1. Stewart型并联机器人结构图
本文所研究的Stewart型并联机器人,构件总数为14,运动副包括6个两自由度的圆柱副和12个两自由度的虎克铰。根据机构自由度的计算公式,得知该并联机器人具有6个自由度。
(1)
为了便于描述平台的运动,分别在运动平台和静平台建立坐标系,如图2所示,运动平台的六个铰点用
,
来表示,中间液压缸长度用
,
来表示,静平台的六个铰点分别用
,
来表示。
Figure 2. Schematic of coordinates
图2. 坐标示意图
初始位置时,连接运动平台和静平台的六根液压缸的伸缩长度相等,此时动系与静系的各坐标轴方向一致。建立如图3所示的平面坐标系,便于表示运动平台和静平台各个铰点所在坐标系的位置。图中虚线表示平台铰点所在的分布圆,α表示静平台相邻铰点间的角度,β表示运动平台相邻铰点间的角度。
Figure 3. Distribution of platform hinge points
图3. 平台铰点分布图
用RPY角法描述坐标系{A}相对于坐标系{B}的位姿,位姿表达为:
(2)
坐标系{A}中的铰点在坐标系{B}的中坐标可以表示为:
(3)
2.2. 运动学逆解模型
运动学逆解是在已知运动平台的位置和姿态情况下,求解中间六根液压缸的长度
,
;这里利用矢量链法进行求解。第i条支链矢量如图4所示。其中{B}表示静平台坐标系,{A}表示运动平台坐标系。基于齐次变换及矢量关系可以得到:
(4)
式中:
——第i根液压缸的位置矢量;
——运动平台在静系中的位置矢量;
——运动平台铰点
在动系中的位置矢量;
——静平台铰点
在静系中的位置矢量。
对
求模,可以得到:
(5)
式(5)即为并联机器人逆运动学模型。
Figure 4. Vector diagram of the supporting chain
图4. 支链矢量图
2.3. 运动学正解模型
与运动学逆解相反,正解是在已知各液压缸长度的情况下,求解并联机器人运动平台的位姿。并联机器人的正解问题通常比较复杂和繁琐。下面将正解问题简化为求解一组非线性方程组,并利用Newton-Raphson法进行求解。
(6)
具体求解步骤如下:
(1) 设定收敛条件
,
并输入位姿迭代初值
;
(2) 基于迭代初值
,代入逆运动学模型中计算液压缸长;
(3) 形成向量函数
;
(4) 如果
,那么Q为所求的位姿,如果不满足,则进入下一步;
(5) 计算雅可比矩阵
,利用
得到
;
(6) 如果
,那么Q为所求的位姿,如果不满足,则进入下一步;
(7) 将求得的
加入到Q中形成新的
,然后转到步骤(2)。
其中,
为目标函数f的雅可比矩阵,具体为:
(7)
3. 误差模型的建立
如图5所示,在并联机器人中,每条支链通常由静平台虎克铰、中间液压缸和运动平台虎克铰组成。由于制造和装配的误差,将存在以下7项安装误差:静平台虎克铰的安装误差、运动平台虎铰的安装误差、以及液压缸初始长度误差;共计42项结构参数误差。
Figure 5. Schematic diagram of the structural error of the branched chain i
图5. 支链i的结构误差示意图
对式(3)两边同时微分可以得到:
(8)
式中:
——第i根液压缸的单位矢量;
式(8)两边同时乘以
,得到:
(9)
并且有微分关系:
(10)
式(10)中
为:
(11)
将式(11)代入式(9)中并整理成如下形式:
(12)
同理,旋转矩阵R也会有误差存在,当dR很小时:
(13)
式中
有以下关系:
(14)
式中:
——并联机器人运动平台的姿态误差矢量。
将
,
,
,
代入式(9)中并整理得到如下式子:
(15)
综合六个支链分析,式(15)可以表示成如下形式:
(16)
式中:
——运动平台位姿误差矢量;
——铰点位置误差矢量;
——液压缸初始长度误差矢量;
;
。
并联机器人工作在非奇异空间,因此
是可逆的,那么式(16)两边同时乘以
,可以得到并联机器人位姿误差模型:
(17)
式(17)可以转换为:
(18)
式中:
——误差传递雅可比矩阵;
——结构参数误差矢量。
4. 位姿优化
4.1. 参数辨识模型
由式(18)可知,并联机器人包含42项结构参数误差,而一个位姿只能构造6个方程。因此,为了求解出这42项结构参数误差,理论上需要测量7个位姿。而在实际标定过程中,由于测量噪声的存在,为了使标定结果精度更高,往往需要测量大于m (
)个位姿,利用误差模型,构造冗余的结构参数误差辨识方程。然后,利用最小二乘法辨识并联机器人的结构参数误差,并最终修正并联机器人模型结构参数,进行误差补偿,以完成标定。m个位姿的误差辨识模型为:
(19)
其中,
(20)
(21)
通常在进行结构参数误差辨识时,为了求解出42项结构参数误差
,对于误差辨识模型
,模型中的误差传递雅可比矩阵
通常是一个
的列满秩矩阵,满足
,那么辨识模型将具有唯一的解
。然而,考虑到测量噪声与未建模误差项以及外界装置的测量精度,所获得的位姿误差量
往往与真实位姿误差值之间存在偏差。那么式(19)可以表示为:
(22)
式中:
——表示因忽略高阶误差项以及外界测量噪声所引入的误差。
这种误差会传播到需要辨识的参数
上,进而影响标定的准确性。为了在整个工作空间内提高机器人的精度并保证标定结果的可靠性,我们通常会选择超过理论值的标定位姿数量,这将导致结构参数误差辨识模型
是一个超定方程。为了得到模型参数的最优解,这里利用最小二乘法进行求解。
(23)
最小二乘法基本思想是使误差校正项
尽可能的小,规定
以补偿存在于并联机器人位姿误差项
中的噪声。
(24)
4.2. 位姿选取指标
在数据采集过程中,经常出现测量噪声,可能对参数辨识过程产生显著影响。此外,机器人标定模型并不包括所有的定位误差的来源。这些未建模的误差源也是参数辨识产生偏差的一个原因。因此,为了尽可能减少这两个因素的影响,应适当地选择标定位姿。这些位姿的选择是通过最大化所谓的可观测性指数的值来实现的,这些指数是基于误差辨识雅可比矩阵J的SVD分解计算出来的。高指数值意味着位置误差主要归因于建模的参数误差,这意味着测量噪声和未建模的误差的影响将会降低。
为了简化分析过程,这里选取其中一种观测指标来进行说明;观测性指数O2 [8]是条件数的倒数
(25)
4.3. 用于最优位姿选择的粒子群算法
经典粒子群优化算法(CPSO)源于对鸟群觅食行为的启发。1995年,James Kennedy和Russell Eberhart建立了一个简化算法模型,经过多年改进最终形成了PSO。这一算法的核心思想是通过模仿鸟群的集体信息共享和搜索行为,帮助解决问题并找到最优解。
粒子的两个属性:速度和位置。速度表示粒子下一次迭代时粒子移动的方向和距离,位置表示所求解问题的一个潜在的解。在d维空间中,粒子根据以下公式更新速度与位置:
(26)
(27)
然而,CPSO算法通常用于无约束的问题优化。为了处理机器人标定中各关节的约束条件,当粒子搜索过程中超出机器人工作空间的上边界或下边界时,将粒子位置向量的各元素设置为相应关节允许的最大值或最小值。确保整个搜索过程在允许的范围内进行。
粒子编码机制:
在CPSO方法中,候选解被称为粒子。根据最优姿态选择问题,每个位姿是由机器人动平台相对于静平台的位置与姿态所决定的。因此,每个粒子表示一个多维列向量,其维数可确定为D·n,其中n为待寻找的最优位姿的数目,D表示机器人的位姿维数。
适应度函数:
适应度函数被用来评估每个粒子(解)的质量。在本文中,选择可观测性指标O2作为适应度函数。
粒子群优化算法的流程图如图6所示:
Figure 6. Flow chart of classical particle swarm optimization algorithm
图6. 经典粒子群优化算法流程图
4.4. 粒子群算法可行性验证
为了验证经典粒子群算法在位姿优化问题上的可行性,现对本文的Stewart型并联机器人进行仿真分析,如表1所示给出并联机器人名义结构参数,表2给出算法参数设定,表3给出并联机器人的工作空间。这里选择遗传算法进行对比,因为以观测性指标O2为目标函数的遗传算法已经成功的在整个工作空间中应用。仿真中依次利用遗传算法和经典粒子群算法对相同数量的最优位姿进行选择。
Table 1. Nominal structural parameters of parallel robots
表1. 并联机器人名义结构参数
R (mm) |
r (mm) |
α (rad) |
β (rad) |
1200 |
520 |
0.1394 |
0.9542 |
Table 2. Algorithm parameterization
表2. 算法参数设定
类别 |
GA |
CPSO |
种群数量 |
200 |
200 |
最优位姿数量 |
14 |
14 |
迭代次数 |
1200 |
1200 |
交叉概率 |
0.8 |
— |
变异概率 |
0.1 |
— |
学习/社会因子 |
— |
1.99/1.49 |
惯性权重 |
— |
0.9 |
Table 3. Workspace
表3. 工作空间
|
最小值(m/rad) |
最大值(m/rad) |
x |
−0.25 |
0.25 |
y |
−0.25 |
0.25 |
z |
−0.3 |
0.3 |
姿态角 |
−0.1745 |
0.1745 |
Figure 7. Algorithm search iteration diagram
图7. 算法搜索迭代图
运用表2中的参数运行1200次,这里记录迭代搜索过程中遗传搜索算法所得到的历代适应度平均值(GA-average)以及历代最佳适应度值(GA-best)。如图7所示,记录粒子群优化算法所得到的历代适应度平均值(CPSO-average)以及历代最佳适应度值(CPSO-best)。
由图可知,随着迭代次数的增加,遗传算法与粒子群算法的适应度函数值均会逐渐上升并最后收敛至各自最大值。显然,粒子群算法所对应的历代最佳适应度值在第50次迭代左右就已经达到了最大值,而遗传算法却在第800次迭代以后方才达到历代最佳适应度的最大值。
对于最优测量构形选择问题来讲,可以看到利用遗传算法搜索得到的位姿适应度函数值更大,粒子群算法虽然有着更快的收敛速度,但是很明显陷入了局部最优解中,遗传算法作为进化类算法虽然收敛速度慢,但是得到的结果更为精确。
4.5. 粒子群算法改进策略
由于粒子群的多样性会随着迭代次数的增加而减小,传统的PSO算法容易出现搜索停滞,陷入局部最优陷阱和边界最优陷阱,使算法陷入局部最优解。为了提高粒子群优化算法的全局搜索能力避免陷入局部最优,并且提高搜索效率,这里提出了针对经典粒子群算法的一些改进策略。
1. 采用自适应惯性权重:在粒子群优化算法中,惯性权重
起到了让粒子保持之前速度趋势的作用。Shi. Y首次将惯性权重
加入到PSO算法的设计中,通过深入分析发现,较高的惯性权重有益于扩大搜索范围以进行全局探索,反之,较低的惯性权重则有助于在局部范围内进行更精细的搜索。为了在全局和局部搜索之间取得均衡,该策略随着迭代进行而逐渐减小惯性权重,有助于算法在探索初期能广泛地覆盖搜索空间,在优化后期能够加强对潜在最优区域的精确搜索。
(28)
式中:
——最大惯性权重;
——最小惯性权重;
k——当前迭代次数;
——最大迭代次数。
2. 引入遗传算法中的交叉变异操作:在算法的后期,引入遗传操作,从个体中选取适应度较高的粒子进行交叉与变异,替换适应度较低的粒子,增强粒子的探索能力,避免陷入局部最优解,以进一步改善解的质量。
4.6. 改进粒子群算法仿真验证
Table 4. Algorithm parameterization
表4. 算法参数设定
类别 |
GA |
CPSO |
IPSO |
GPSO |
种群数量 |
200 |
200 |
200 |
200 |
最优位姿数量 |
14 |
14 |
14 |
14 |
迭代次数 |
1200 |
300 |
300 |
300 |
交叉概率 |
0.8 |
— |
— |
0.8 |
变异概率 |
0.1 |
— |
— |
0.1 |
精英选择 |
|
|
|
0.25 |
学习/社会因子 |
— |
1.99/1.49 |
1.99/1.49 |
1.99/1.49 |
惯性权重 |
— |
0.9 |
1.0~0.3 |
1.0~0.3 |
这里进行三组实验,如表4所示算法参数,第一组实验基于经典粒子群优化算法,第二组实验基于自适应惯性权重的粒子群优化算法,第三组实验基于遗传粒子群算法;对比说明改进算法的效果。
由图8和图9可知,随着迭代次数的增加,IPSO算法与GPSO算法的适应度函数值均会随着迭代次数的增加而增大。在IPSO算法中,随着迭代的进行,惯性权重从较大值逐渐减小,初期促进粒子群进行广泛探索,后期则增强局部搜索能力。减少了算法陷入局部最优的风险,提高了收敛速度和解的质量。而GPSO算法则表现出更加好的搜索效果,由于后引入了遗传算法的变异交叉操作,使得每次迭代后只保留精英个体,从而更好的避免陷入局部最优解。GPSO算法最终收敛于3.597,比GA算法得到适应度函数值3.455略高,但是GPSO算法收敛的速度明显快于GA算法。因此对于位姿选取,GPSO算法更好。
Figure 8. Comparison of algorithmic search iterations
图8. 算法搜索迭代图
Figure 9. Genetic algorithm search iteration chart
图9. 遗传算法搜索迭代图
由改进的PSO算法得到的14个最优位姿的可观测指数O2的值为13.6176。为了验证O2值的是最大值,在有限的工作空间中随机选择了一组14个姿态,并计算了其可观测性指数值。这个过程重复了100,000次。随机选取的100,000个位姿组所对应的100,000个O2值如图10所示。这表明,该算法能够搜索到最大的位姿组对应的可观测指数值。
根据图11的结果显示,可以发现粒子群优化算法得到的位姿大多出现在并联机器人的工作空间边缘处。这表明选择一组边缘位置的位姿可以使结构参数误差辨识模型中的误差传递雅克比矩阵J具有较小的条件数,从而可以获得更高的辨识精度。
Figure 10. Distribution of values of the observational indicator O2 for randomly selected groups of positions
图10. 随机选取位姿组的观测指标O2的值分布图
Figure 11. Spatial distribution of positions obtained by the algorithmic search
图11. 算法搜索得到的位姿空间分布图
5. 参数辨识效果验证
上一节利用粒子群优化算法对测量位姿进行了优化选取,并将观测度O2作为适应度函数,得到了一组使得在参数辨识中测量误差以及未建模误差影响最小的位姿。接下来通过数值仿真的方法验证算法搜索得到的位姿在参数辨识中的效果。仿真流程如下:
(1) 将给定的并联机器人名义结构参数以及搜索得到的位姿代入运动学逆解,求得名义液压缸长度值,然后利用包含结构参数误差的运动学正解,求得实际位姿;
(2) 为了模拟在实际测量中产生的噪声,引入均值为0且符合正态分布的随机变量,其姿态以及位置噪声的标准差分别为0.01 rad与0.01 mm。加入到实际位姿误差中,模拟得到测量位姿;
(3) 构造结构参数误差辨识方程,利用最小二乘法,计算得到方程组的解,即结构参数误差,与给定的结构参数误差进行对比,求得结构参数误差的误差绝对值与均方根误差;
(29)
式中:N为结构参数误差的个数为42;
为辨识得到的结构参数误差矢量;
为给定的结构参数误差矢量。
实验中位姿数据一共有三组,每组均为14个位姿,第一组随机在机器人工作空间选取14个位姿,第二组取自由经典粒子群优化算法结果所产生的14个位姿,第三组取自由遗传粒子群算法结果所得到的14个位姿。这里重复仿真流程十次,得到如图所示的仿真结果,图中单均位为mm/rad。
Figure 12. Plot of absolute values of errors in structural parameter errors
图12. 结构参数误差的误差绝对值图
Figure 13. Root-mean-square error plot for structural parameter errors
图13. 结构参数误差的均方根误差图
由图12,图13可知,通过算法搜索得到的位姿组辨识得到的结构参数误差的实际值与名义值之间差的绝对值要比随机位姿组辨识所对应参数误差值差的绝对值小,即由观测指标得到的最优位姿所辨识得到的运动学结构参数误差值要比随机测量构形所解得的误差参数值精度高。
此外,与CPSO算法相比,GPSO算法所获得的误差参数值的均方根误差值更小。因此,用于最优位姿选择的GPSO算法能够更好的辨识结构参数误差。
6. 标定效果验证
结构参数误差的均方根降低并不是标定的最终目的,标定的最终目的是提高机器人的位姿精度,同时为了验证算法的有效性,在机器人工作空间内选取大量的位姿点进误差补偿。
下面分析一定的噪声水平下,位姿选取准O2对位姿精度的影响,这里设定噪声水平为0.01 mm/˚;算法搜索的位姿数设定为14,随机在工作空间内选取5000个点,利用修正的正解程序求得位姿误差。
如图14,图15所示为随机选取的5000个位姿点的位姿误差,可以看出位置误差与姿态误差均符合正态分布,计算得到5000个位姿误差的位置误差平均值为0.363,均方根为0.720;姿态误差平均值为5.826 × 10−4,均方根为1.112 × 10−3。
Figure 14. Histogram of position error for 5000 position points before calibration
图14. 标定前5000个位姿点的位置误差直方图
Figure 15. Histogram of attitude error for 5000 attitude points before calibration
图15. 标定前5000个位姿点的姿态误差直方图
如图16,图17所示,利用优化算法选取的位姿进行标定后,平均位置误差由标定前的0.363 mm降低至0.039 mm;平均姿态误差由标定前的5.82 × 10−4 rad降低至4.51 × 10−5 rad。
Figure 16. Histogram of position error for 5000 position points after calibration
图16. 标定后5000个位姿点的位置误差直方图
Figure 17. Histogram of attitude 2 error for 5000 attitude points after calibration
图17. 标定后5000个位姿点的姿态误差直方图
7. 结论
本文针对Stewart型并联机器人,对其进行了运动学分析、误差建模、位姿优化、以及误差补偿,降低了Stewart型并联机器人的位姿误差。
(1) 通过对Stewart型并联机器人运动学分析,利用矢量链法建立了正、逆运动学模型,结合Newton-Raphson法给出了正解的数值解法。
(2) 基于运动学逆解,运用矩阵全微分理论建立并联机器人的位姿误差模型,该模型包含42项结构参数误差;根据位姿误差模型,建立结构参数误差辨识模型,并利用最小二乘法进行求解。
(3) 针对测量位姿优化选取问题,提出了基于改进粒子群算法的位姿优化策略,得到了一组用于参数辨识的最佳测量位姿,并通过仿真验证了结构参数误差辨识的精度。最后进行了标定。结果表明,平均位置误差由标定前的0.363 mm降低至0.039 mm;平均姿态误差由标定前的5.82 × 10−4 rad降低至4.51 × 10−5 rad。
利用本文提出的优化算法,可以有效地在工作空间内选取标定位姿,实现了利用较少的位姿数据对Stewart型并联机器人进行标定,使其位姿精度提高至少一个数量级。