2. 沈阳化工大学 装备可靠性研究所, 辽宁 沈阳 110142
2. Institute of Equipment Reliability, Shenyang University of Chemical Technology, Shenyang 110142, China
取件机械手是通过四杆机构来实现从模具夹取产品后按理想的轨迹将产品送至指定区域的自动化设备.模具开模的空间一般比较狭长, 取件机械手手爪进入模具的轨迹影响了产品的合格率、模具开模的空间设计和取件机械手的应用范围, 因此, 有必要对机械手运动轨迹进行优化.
四杆机构是一类十分重要的机构, 从简单设备, 如挡风玻璃擦和开关门机构, 到复杂设备, 如岩石破碎、缝纫机、汽车悬架系统和机械手等都有广泛的应用[1].轨迹综合是平面四杆机构设计的基本问题之一, 其主要目的是找到一个平面四杆结构, 使得连杆机构上的点能沿某一预先给定的轨迹行走.传统的图解法存在误差大、综合精度低等缺点, 目前几乎无人使用[2].随着计算机的发展和运算能力的提高, 越来越多学者利用智能计算方法求解平面四杆机构的轨迹综合问题.Felezi等基于多目标均匀多样性遗传算法优化设计了水稻插秧机上的可调四杆机构[3].Lin提出一种遗传-差分混合算法用于求解四杆机构的路径综合问题[4].Ramanpreet等对比研究遗传算法(GA)、粒子群算法(PSO)和教与学优化算法(TLBO)用于合成人体膝关节外骨骼的曲柄摇杆机构的效果[5].Kafash和Nahvi提出近似圆形函数, 并用差分进化算法进行求解平面四杆机构的轨迹综合[6].Ahmadi等利用斯塔克尔伯格博弈论和神经网络算法, 求解了四杆机构的多目标优化合成问题[7].虽然这些算法都能较好求解轨迹综合问题, 但是, 由于求解问题的复杂性, 对于求解方法的精度和可靠性, 仍然有可以改进的空间[8].
对此, 本文针对取件机械手进入模具的运动轨迹优化设计问题进行研究.首先, 建立了取件机械手数学模型, 定义了最小直线度误差目标函数, 其次, 提出了基于二次拉格朗日局部搜索插值粒子群算法(QLIPSO)的平面四杆结构优化方法, 最后, 通过数值实验对比验证了所提出优化设计方法的有效性.
1 取件机械手数学模型 1.1 取件机械手四杆机构的位置关系本文将取件机械手简化成一个曲柄摇杆机构, 结构简图如图 1所示, AE杆可视为固定的机架, AB杆为摇杆, ED杆为曲柄, BCD为连杆, F点表示手爪的中心位置, B,C,D和F点是一个固定整体.以A点为原点建立坐标系, 设AB, BC,CD, BD, DE, AE和DF长度分别为l1, l6, l7, l2, l3, l4和l5, AB,BD,DE和DF与水平方向夹角分别为φ1, φ2, φ4和φ6, BC和CD, CD和DB夹角分别为φ5, φ3.
![]() |
图 1 取件机械手结构简图 Fig.1 Schematic diagram of the pick-up manipulator |
已知A点坐标(xA, yA)和E点坐标(xE, yE), 杆长l1, l6, l7, l3和l5, 角φ5和φ3, 求手爪F点的坐标.
则BD的长度由余弦定理可得
![]() |
(1) |
B点坐标和D点坐标如式(2)和式(3)所示:
![]() |
(2) |
![]() |
(3) |
将式(2)代入式(3), 可得
![]() |
(4) |
将关系式(4)移项平方相加, 消去φ4项, 可得φ2关于φ1的表达式:
![]() |
(5) |
式中:C=K12+K22+l22-l32; D=2K1l2; E=2K2l2; K1=xA+l1cosφ1-xE; K2=yA+l1sinφ1-yE.
由式(5)可解得:
![]() |
(6) |
式中, 正负号需根据实际情况选择, 在这里取负号.
F点坐标为
![]() |
(7) |
将式(4)代入式(7)可求得F点坐标:
![]() |
(8) |
F点坐标中, φ2是关于φ1的表达式, φ6=φ3+φ2, φ3角已知, 因此F点坐标是关于角φ1的数学模型.
1.2 设计变量因为要求手爪F点的轨迹, 因此, 设定与F点坐标相关的φ1, l1, l2和l5为输入变量, 而l2由l6, l7和φ5所确定, 因此, 本文设定φ1, l1, l6, l7, l5, φ5为输入变量, 即
![]() |
(9) |
设定(xA, yA), (xE, yE), l3和l4为固定参数.
1.3 目标函数为了评价取件机械手手爪在进入模具时所行走的轨迹, 在φ1取值为[φ1min, φ1max]区域均匀选取m个F点, 设其横坐标为xFt(t=1, 2, …, m), 横坐标平均均值为
![]() |
(10) |
根据Bahman对四杆机构的轨迹跟踪误差(tracking error)的定义[7], 定义直线度误差(linearity error)为m个F点的横坐标与其平均值差值的平方和用于评价轨迹的直线度, 即
![]() |
(11) |
用δAB(X)表示算法A相比算法B减小的直线度误差:
![]() |
(12) |
需要优化的综合问题为
![]() |
(13) |
将取件机械手简化成曲柄摇杆机构ABDE, 首先需要满足曲柄摇杆2个杆长约束条件:
1) 摇杆AB为最短杆, 即l1<l2, l3, l4;
2) 摇杆AB和连杆DE杆长之和小于另外2杆AE和BD杆长之和, 即l1+l2<l3+l4.
另外, 还需要使设计变量在设定的变化范围内.
2 轨迹优化问题求解 2.1 粒子群算法Kennedy和Eberhart在1995年第一次提出粒子群优化(particle swarm optimization, PSO)算法[9], 用于求解非线性函数, 该算法是模拟鸟群飞行觅食行为, 鸟之间通过集体的协作达到最优的目的.PSO算法没有像遗传算法的选择、交叉和变异等操作, 使用简单结构进行迭代计算, 参数易调整、计算速度快, 在控制优化领域被广泛地应用.
假设粒子的种群数为n, 搜索空间为D维, 则第i个粒子所在位置表示为Xi=(xi1, xi2, …, xiD), i=1, 2, …, n, 其位置分量xij在[xjmin, xjmax](j=1, 2, …, D)范围内取值, 每个粒子的位置就是潜在的解, 根据Xi所对应的目标函数适应值大小, 判断粒子的优劣.第i个粒子飞行速度为Vi=(vi1, vi2, …, viD)(i=1, 2, …, n), 其速度分量vij在[vjmin, vjmax](j=1, 2, …, D)范围内取值, Vi决定了粒子i在问题空间搜索的“步伐”.则对于每个粒子, 其第d维(1≤d≤D)的位置和速度, 将分别根据式(14)和式(15)迭代:
![]() |
(14) |
![]() |
(15) |
其中:vidk为经过k次迭代后粒子i在d维方向上的速度分量; xidk为经过k次迭代后粒子i的d维方向上的位置分量; 粒子i经历k次搜索后达到的最优适应值位置(pbest)为Pi=(pi1, pi2, …, piD), 所有粒子的k次搜索中达到的全局历史最优适应值位置(gbest)为Pg=(pg1, pg2, …, pgD); c1和c2为学习因子(或称加速系数); r1和r2为介于0到1的随机数.
2.2 拉格朗日插值粒子群算法然而, 标准PSO算法存在着早熟和精度低等问题, 许多学者在标准PSO算法基础上致力于改进粒子群算法性能.如, Liang等改进了标准PSO算法, 提出了综合自学习粒子群算法(comprehensive learning particle swarm optimizer, CLPSO)[10]; Nasir基于CLPSO提出动态邻域自学习粒子群算法(dynamic neighborhood learning based particle swarm optimizer, DNLPSO)[11]; Zhang等在CLPSO基础上提出拉格朗日局部插值算法(local search with Lagrange interpolation particle swarm optimization, LILPSO)[12], 该算法初期具有较大的搜索空间, 后期能帮助加速收敛, 具有良好的鲁棒性.这些算法都有效改善了标准PSO由于陷入局部最优和提前收敛产生的早熟问题.为了进一步探索算法收敛精度, 求解本文需要解决的轨迹综合问题, 在LILPSO[12]算法基础上, 引入二次拉格朗日插值局部搜索方法, 提出了一种改进型PSO算法, 称之为二次拉格朗日插值粒子群算法(quadradic lagrange interpolation particle swarm optimization, QLIPSO).
QLIPSO算法的主要思路为
1) 迭代初期扩大搜索范围防止粒子陷入局部收敛, 迭代后期缩小搜索范围, 加快收敛速度.
粒子速度迭代公式为
![]() |
(16) |
速度迭代公式(16)相比PSO算法, 只保留自身的惯性部分和向自身历史最优pbest学习部分, 删除了向全局最优粒子gbest学习部分, 这样可以避免局部收敛.速度迭代公式(16)还加入了按式(17)线性递减的惯性权重w:
![]() |
(17) |
其中:wmax=0.9;wmin=0.4;k为迭代次数; MaxDT为最大迭代次数.
惯性权重w是用于平衡全局搜索和局部搜索的, w越大, 全局搜索能力越强;w越小,局部搜索能力越强.因此, 初期使用较大的w, 扩大搜索区域, 防止局部收敛, 后期使用较小的w, 提高局部搜索能力, 加快收敛速度.
2) 利用拉格朗日二次插值进行局部搜索, 提高局部寻优能力.
利用拉格朗日插值法可以找出一个恰好穿过二维平面上若干个已知点的多项式函数.因此, 为了根据目前已知的有限信息, 能够预测比较准确的未知信息, 获取更佳的最优解, 本文引入拉格朗日插值法, n阶拉格朗日插值公式为
![]() |
(18) |
这里只用到二阶的拉格朗日插值, 因此式(18)的n取2, 需要三个插值点.为探索比现有gbest更佳的位置, 本文以gbest(X0)和gbest附近的两个随机点X1, X2作拉格朗日插值, X1, X2生成公式:
![]() |
(19) |
![]() |
(20) |
![]() |
(21) |
其中, α是一个非常小的系数, 这里设定α=0.01.
利用二次拉格朗日插值, 可以求得一条经过X1, X2和gbest(X3)三点的曲线, 曲线在X1, X2之间的最小值点X3即为潜在的全局最优点.
2.3 算法步骤QLIPSO算法具体实现步骤如下:
步骤1 设定初始种群参数, 如学习因子c1、惯性权重w、种群维数D、群体个体数目n、最大迭代次数MaxDT, 以及粒子各维度的位置变化范围等.
步骤2 随机初始化种群粒子的初始位置和速度, 计算各粒子初始适应值, 各个粒子初始适应值即为个体粒子历史最优pbest, 其中最佳的pbest即为全体粒子历史最优gbest.
步骤3 分别按式(14)和式(15)更新粒子位置和速度.
步骤4 计算各粒子更新后的适应值.
步骤5 对比更新后的每个粒子和其pbest的适应值, 若更新后的粒子的适应值更佳, 则用该粒子更新后的信息更新pbest的位置和适应值, 否则保留pbest信息; 对比每个pbest和迭代至今的全体历史最优gbest的适应值, 若存在比gbest的适应值更佳的pbest, 则以pbest信息更新gbest位置和适应值, 否则保留gbest信息.
步骤6 当迭代次数达到g的倍数, 则分别以全局最优点gbest各维度的分量为中心进行拉格朗日插值计算:
1) 取gbest(X0)点, 按式(19)和式(20)获得gbest附近2个插值点X1, X2, 计算X1, X2的适应值;
2) 利用X0, X1, X2进行拉格朗日插值计算, 求得最小值点X3, 并计算X3的适应值;
3) 若X1, X2或X3比X0的适应值更佳, 则更新gbest信息.
步骤7 判断是否达到最大迭代次数, 若达到最大迭代次数则优化过程结束, 否则返回步骤3.
QLIPSO算法流程如图 2所示.
![]() |
图 2 QLIPSO算法流程图 Fig.2 Flowchart of QLIPSO algorithm |
设置种群参数如下:种群维数D=6, 群体个体数目n=40、最大迭代次数MaxDT=10 000, 学习因子c1=2, 惯性权重wmax=0.9, wmin=0.4, A点坐标(0, 0), E点坐标(230, 230), DE杆长l3=430, 迭代速度变化范围限制为0.1×(Xmax-Xmin), 目标函数所取F点个数m=6, φ1变化范围φ1min=-1.4, φ1max=-0.15, 粒子各维度的位置变化范围如表 1所示.
![]() |
表 1 变量X变化范围表 Table 1 Variation rang of variable X |
在3.1节设定的参数条件下, 分别使用PSO[9], CLPSO[10], DNLPSO[11], LILPSO[12]和QLIPSO算法对取件机械手的四杆结构进行优化设计, 得到的目标函数适应值随迭代次数的变化曲线如图 3所示.可见, PSO和DNLPSO算法受迭代初值影响, 随后并没有继续收敛, CLPSO, LIPSO和QLIPSO算法迭代初期都具有一定收敛速度, 中后期都陷入了局部最优, 相比之下, QLIPSO收敛速度最快, 收敛精度最优, 这是因为QLIPSO算法初期没有向gbest学习, 扩大搜索空间, 有效避免了早熟现象, 在迭代后期, 又利用了二次拉格朗日插值局部搜索, 加快了收敛速度.
![]() |
图 3 QLIPSO与PSO和几种改进型算法收敛情况对比 Fig.3 Comparion of the convergence of QLIPSO, PSO and other modified algorithms |
几种算法迭代1 000次后与未优化过的变量X及其直线度误差对比如表 2所示, 经QLIPSO优化后的直线度误差为2.007 1 mm2, 优于未优化过的和经PSO,CLPSO,DNLPSO,LILPSO算法优化过的直线度误差分别为103.589 5, 18.875 8, 15.543 6, 10.162 9, 3.053 4 mm2, 直线度误差减小了98.06%, 89.37%, 80.25%, 34.27%, 15.22%.这表明具有二次拉格朗日插值局部搜索的QLIPSO算法在处理四杆机构优化设计的问题上, 具有更好的收敛速度和精度.
![]() |
表 2 几种算法优化前后的变量X及直线度误差对比 Table 2 Comparison of the variable X and its linearity error before and after using algorithms |
因此, 本文选择QLIPSO算法对取件机械手进行优化设计, 优化前后的取件机械手手爪运动轨迹对比如图 4所示.QLIPSO算法优化后的效果十分明显, 在进入模具取件阶段, 机械手手爪运动轨迹近乎是条直线, 直线度误差减少了98.06%.说明该方法能够有效优化取件机械手的运动轨迹.经QLIPSO算法优化后的机械手夹取产品时更不易与模具发生刮碰, 不仅能提高产品的合格率, 还可以节约模具开模设计空间, 使取件机械手能应用到更多的生产设备中.
![]() |
图 4 QLIPSO算法优化前后取件机械手手爪运动轨迹对比 Fig.4 Comparison of pick-up manipulator movement path before and after using the QLIPSO algorithm |
1) 本文研究了取件机械手的四杆结构的优化设计问题, 提出了基于二次拉格朗日插值粒子群算法(QLIPSO)的平面四杆结构优化设计方法.
2) 通过数值实验对比验证, 在设定相同参数条件下, 分别使用PSO, CLPSO, DNLPSO, LILPSO和QLIPSO算法对取件机械手的四杆结构进行优化设计, QLIPSO算法后期收敛效果明显要优于其他算法.迭代1 000次后, QLIPSO的直线度误差为2.007 1 mm2, 优于其他几种算法.验证了具有二次拉格朗日局部插值搜索的QLIPSO算法不仅能够扩大搜索空间, 避免局部收敛,发生早熟, 还具有更高收敛精度.
3) 运用所提出的QLIPSO算法优化后的取件机械手在进入模具阶段的运动轨迹近乎是条直线, 与未优化前的取件机械手相比, 直线度误差减少了98.06%, 显著提升了取件机械手运动效果, 从而说明所提出的优化设计方法可以获得更精确的轨迹.
[1] |
Acharyya S K, Mandal M.
Performance of EAs for four-bar linkage synthesis[J]. Mechanism and Machine Theory, 2009, 44(9): 1784–1794.
DOI:10.1016/j.mechmachtheory.2009.03.003 |
[2] |
于红英, 赵彦微, 许栋铭.
平面铰链四杆机构的轨迹综合方法[J]. 哈尔滨工业大学学报, 2015, 47(1): 40–47.
( Yu Hong-ying, Zhao Yan-wei, Xu Dong-ming. A path synthesis method of planar hinge four-bar linkage[J]. Journal of Harbin Institute of Technology, 2015, 47(1): 40–47. ) |
[3] |
Felezi M E, Vahabi S, Nariman-Zadeh N.
Pareto optimal design of reconfigurable rice seedling transplanting mechanisms using multi-objective genetic algorithm[J]. Neural Computing and Applications, 2016, 27(7): 1907–1916.
DOI:10.1007/s00521-015-1982-0 |
[4] |
Lin W Y.
A GA-DE hybrid evolutionary algorithm for path synthesis of four-bar linkage[J]. Mechanism and Machine Theory, 2010, 45(8): 1096–1107.
DOI:10.1016/j.mechmachtheory.2010.03.011 |
[5] |
Singh R, Chaudhary H, Singh A K.
Defect-free optimal synthesis of crank-rocker linkage using nature-inspired optimization algorithms[J]. Mechanism and Machine Theory, 2017, 116: 105–122.
DOI:10.1016/j.mechmachtheory.2017.05.018 |
[6] |
Kafash S H, Nahvi A.
Optimal synthesis of four-bar path generator linkages using circular proximity function[J]. Mechanism and Machine Theory, 2017, 115: 18–34.
DOI:10.1016/j.mechmachtheory.2017.04.010 |
[7] |
Ahmadi B, Nariman-Zadeh N, Jamali A.
Path synthesis of four-bar mechanisms using synergy of polynomial neural network and Stackelberg game theory[J]. Engineering Optimization, 2017, 49(6): 932–947.
DOI:10.1080/0305215X.2016.1218641 |
[8] |
Lin W Y, Hsiao K M.
A new differential evolution algorithm with a combined mutation strategy for optimum synthesis of path-generating four-bar mechanisms[J]. Proceedings of the Institution of Mechanical Engineers Part C, 2017, 231(14): 2690–2705.
|
[9] |
Kennedy J, Eberhart R.Particle swarm optimization[C]// Proceedings of IEEE International Conference on Neural Networks.Piscataway: IEEE, 1995: 1942-1948.
|
[10] |
Liang J J, Qin A K, Suganthan P N, et al.
Comprehensive learning particle swarm optimizer for global optimization of multimodal functions[J]. IEEE Transactions on Evolutionary Computation, 2006, 10(3): 281–295.
DOI:10.1109/TEVC.2005.857610 |
[11] |
Nasir M, Das S, Maity D, et al.
A dynamic neighborhood learning based particle swarm optimizer for global numerical optimization[J]. Information Sciences, 2012, 209: 16–36.
DOI:10.1016/j.ins.2012.04.028 |
[12] |
Kai Z, Jinchun S, Ke N, et al.
Lagrange interpolation learning particle swarm optimization[J]. PLoS One, 2016, 11(4): e0154191.
DOI:10.1371/journal.pone.0154191 |