Optimization of shotcrete manipulator motion trajectory based on AIWCPSO algorithm
-
摘要:
针对传统喷浆机械臂轨迹规划算法存在多路径段间过渡突变、频繁启停导致喷浆效率不高和喷浆不均匀等问题,提出了一种自适应惯性权重及加速度系数的粒子群优化(AIWCPSO)算法,并基于该算法实现喷浆机械臂运动轨迹优化。提出了改进多段轨迹规划算法,采用直线加圆弧轨迹的过渡策略,将竖直方向的直线运动替换成圆弧运动,通过正弦加减速启停算法规划机械臂末端启停处的轨迹,以防止加速度突变,中间段的直线和圆弧轨迹进行匀速轨迹规划,实现机械臂末端匀速光滑运动;通过AIWCPSO算法在运动学约束下对运动参数进行优化,得到最优喷浆时间和速度,提升喷浆机械臂工作效率和喷浆均匀度。实验结果表明:与传统喷浆轨迹规划算法相比,改进多段轨迹规划算法喷浆平均效率提高了25.42%,喷浆轨迹均匀度明显改善;采用AIWCPSO算法优化后,喷浆效率提高了1.330 8%。
Abstract:To address issues in traditional shotcrete manipulator trajectory planning algorithms, such as abrupt transitions between multiple path segments and low shotcrete efficiency and uniformity caused by frequent starts and stops, an optimized motion trajectory method based on the adaptive inertia weight and acceleration coefficient particle swarm optimization (AIWCPSO) algorithm was proposed. An improved multi-segment trajectory planning algorithm was developed, which incorporated a transition strategy combining linear and arc trajectories. Vertical linear motion was replaced with arc motion. Additionally, a sinusoidal acceleration and deceleration start-stop algorithm was used to plan the trajectory of the end effector of the manipulator at start and stop points to prevent abrupt changes in acceleration. The middle segment of linear and arc trajectories was planned for uniform motion, ensuring smooth and uniform movement at the end effector of the manipulator. Using the AIWCPSO algorithm, motion parameters were optimized under kinematic constraints to achieve the optimal shotcrete time and speed, thereby improving the efficiency and uniformity of the shotcrete manipulator. Experimental results showed that, compared with traditional trajectory planning algorithms, the improved multi-segment trajectory planning algorithm increased average shotcrete efficiency by 25.42% and significantly improved the uniformity of shotcrete trajectory. After optimization with the AIWCPSO algorithm, shotcrete efficiency increased by 1.330 8%.
-
0. 引言
巷道作为煤矿开采过程中的重要运输通道,是采煤作业中的主体工程和安全工程[1]。为延长巷道使用寿命,维护井下工作环境安全,须对开掘完毕的巷道进行支护。目前应用范围最广的支护方式为喷锚支护。喷锚支护利用压缩空气将速凝混凝土浆体喷射到巷道岩石面上与锚杆凝结硬化,形成支护结构体,具有施工速度快、支护强度高等优点[2]。小型煤矿巷道支护仍以人工为主,巷道工作环境恶劣,人工混凝土喷浆存在施工粉尘浓度高、喷浆质量不稳定等问题[3]。喷浆机械臂可降低喷浆过程中混凝土浆体的回弹率,降低成本,提高作业效率,对于提高巷道喷锚支护质量和效率具有重要意义[4]。
喷浆机械臂的轨迹是影响喷浆施工质量、喷浆机械臂寿命及工作可靠性的重要因素之一[5]。在运动过程中,喷浆机械臂需要保持速度、加速度及急动度的连续性。一些学者对喷浆机械臂轨迹规划进行了研究。徐海乔[6]利用高阶多项式过渡的线性插值法和五次B样条轨迹法对喷浆机械臂的水平轨迹和竖直轨迹进行规划,减小了关节在运动过程中的脉动幅度。孙宪超[7]采用六次多项式过渡线性插值轨迹规划方法对连续型湿喷机械臂的直线关节进行轨迹规划,并运用高阶多项式的过渡插值解决关节启停速度和加速度突变问题。郭玉[8]采用改进型B样条曲线覆盖所有指定的机械臂末端执行器路径点,实现了直线与圆弧衔接处光滑的过渡,提高了喷浆轨迹曲线的平滑性。此外,在复杂隧道中,宋迪[9]通过实施点云切片处理,实现机械臂喷头匀速方波形运动,有效降低了机械臂振动频率。
喷浆机械臂通常在笛卡尔空间内按照固定轨迹(如方波形轨迹和末端圆周轨迹)实施喷涂,要求喷浆速度在多路径段间过渡具有连续性。A. K. Auen等[10]对喷浆机械臂末端喷浆轨迹中的直线−直线过渡和直线−圆弧过渡进行对比,得出直线−圆弧过渡更能减少混凝土沉积。许哲等[11]提出了基于S形速度曲线的工业机器人连续多路径平滑过渡算法,提升了机械臂的执行效率,实现了多路径段间的平滑过渡。Zhao Lide等[12]采用 5−3−5 联合插值法对操作轨迹进行过渡,解决了多路径段间转折点位移和速度突变等问题。
现有研究缓解了喷浆机械臂速度和加速度的突变,但同时考虑多路径段间过渡突变和机械臂执行效率的研究较少。喷浆机械臂工作效率的提升与喷浆时间和速度有密切联系,在机械臂运动学约束条件下,最优化喷浆时间和速度是提高喷浆效率的关键。粒子群优化(Particle Swarm Optimization,PSO)算法被广泛应用于机械臂轨迹优化中[13]。Wang Mingming等[14]利用自适应惯性权重的约束PSO算法对双臂空间机器人在自由漂浮状态下的协调轨迹进行规划,得到了关节轨迹最优解。Ö. Ekrem等[15]利用PSO算法实现了机械臂无振动地从起点以最短路径移动到目标点。Liang Bingqin等[16]采用I−PSO算法完成了空间机械臂沙棘果振动分离轨迹的最优时间规划。自适应惯性权重和加速度系数的PSO算法具有良好的学习效果和收敛速度[17],因此,本文采用该算法对喷浆时间和速度进行优化研究。
针对传统喷浆机械臂轨迹规划算法存在多路径段间过渡突变、频繁启停导致喷浆效率不高和喷浆不均匀等问题,提出一种自适应惯性权重及加速度系数的粒子群优化(Adaptive Inertia Weight and Acceleration Coefficients Particle Swarm Optimization,AIWCPSO)算法,并基于该算法实现喷浆机械臂运动轨迹优化。采用直线加圆弧轨迹的过渡策略,通过正弦加减速启停算法规划机械臂末端启停处的轨迹,以防止加速度突变,实现机械臂末端匀速光滑运动;通过AIWCPSO算法优化喷浆时间和速度,提升喷浆机械臂工作效率,提高喷浆均匀度。
1. 运动规划算法
1.1 五次多项式速度规划算法
在传统喷浆轨迹规划中,水平与竖直轨迹均采用直线进行规划。
水平和竖直速度规划包括加速、匀速、减速3个阶段,其中加速和减速规划均采用五次多项式速度规划算法实现[6-7,18]。该算法可定义起始和终止的速度、加速度和急动度,提供了更高的自由度以满足特定运动需求,但是计算量较大,实现较复杂。
五次多项式速度插值函数为
$$ v(t) = {c_0} + {c_1}t + {c_2}{t^2} + {c_3}{t^3} + {c_4}{t^4} + {c_5}{t^5} $$ (1) 式中:v(t)为随时间t变化的速度;c0—c5为多项式系数。
对式(1)求导可得加速度a(t)和急动度j(t):
$$ a(t) = {c_1} + 2{c_2}t + 3{c_3}{t^2} + 4{c_4}{t^3} + 5{c_5}{t^4} $$ (2) $$ j(t) = 2{c_2} + 6{c_3}t + 12{c_4}{t^2} + 20{c_5}{t^3} $$ (3) 起始和终止的速度、加速度、急动度分别为
$$ \left\{ {\begin{array}{*{20}{l}} {v({t_0}) = {v_0}} \\ {v({t_{\mathrm{f}}}) = {v_{\mathrm{f}}}} \\ {a({t_0}) = {a_0}} \\ {a({t_{\mathrm{f}}}) = {a_{\mathrm{f}}}} \\ {j({t_0}) = {j_0}} \\ {j({t_{\mathrm{f}}}) = {j_{\mathrm{f}}}} \end{array}} \right. $$ (4) 式中:t0为起始时间;v0为起始速度;tf为终止时间;vf为终止速度;a0为起始加速度;af为终止加速度;j0为起始急动度;jf为终止急动度。
当t0=0时,将式(4)代入式(1)—式(3)中可解得
$$ \left\{ {\begin{array}{*{20}{l}} {{c_0} = {v_0}} \\ {{c_1} = {a_0}} \\ {{c_2} = \dfrac{1}{2}j} \\ {{c_3} = \dfrac{{20({v_{\mathrm{f}}} - {v_0}) - (8{v_{\mathrm{f}}} + 12{a_0}){t_{\mathrm{f}}} + ({j_{\mathrm{f}}} - 3{j_0})t_{\mathrm{f}}^2}}{{2t_{\mathrm{f}}^3}}} \\ {{c_4} = \dfrac{{30({v_0} - {v_{\mathrm{f}}}) + (14{a_{\mathrm{f}}} + 16{a_0}){t_{\mathrm{f}}} + (2{j_{\mathrm{f}}} - 3{j_0})t_{\mathrm{f}}^2}}{{2t_{\mathrm{f}}^4}}} \\ {{c_5} = \dfrac{{12({v_{\mathrm{f}}} - {v_0}) - (6{a_{\mathrm{f}}} + 6{a_0}){t_{\mathrm{f}}} + ({j_{\mathrm{f}}} - {j_0})t_{\mathrm{f}}^2}}{{2t_{\mathrm{f}}^5}}} \end{array}} \right. $$ (5) 传统的喷浆轨迹是类似于方波形,如图1所示。喷浆机械臂进行水平和竖直方向直线运动的同时,其末端喷枪还要进行圆周转动。参照GB 50086—2015《岩土锚杆与喷射混凝土支护工程技术规范》[19],喷浆过程中混凝土的喷射应按从下往上、先侧墙后拱顶的顺序进行,且喷枪应保持与壁面垂直,距离为0.8~1.0 m。喷浆顺序如图2所示。
1.2 匀速直线插补
匀速直线插补是指基于已知直线轨迹的起点与终点的位置及姿态信息,计算出该直线轨迹上各插补点的位置与姿态。由于本文中机械臂末端Y轴始终垂直于$XOZ$平面,不涉及姿态变化,所以不讨论姿态变化问题。匀速直线插补如图3所示。设轨迹起点和终点的坐标分别为p0(x0,y0,z0)和p1(x1,y1,z1),机械臂末端沿直线匀速运动的速度为vmax,插补周期为T,轨迹长度为L,则T时间内的行程${{D}} = {v_{\max }} T$,插补总步数$N = L/D$,结果向上取整。
$$ L=\sqrt{({x}_{1}-{x}_{0}{)}^{2}+({y}_{1}-{y}_{0}{)}^{2}+({{\textit{z}}}_{1}-{{\textit{z}}}_{0}{)}^{2}} $$ (6) 直线上任意插补点i的坐标为
$$ \left\{ {\begin{array}{*{20}{c}} {{x_i} = {x_1} + \lambda ({x_1} - {x_0})} \\ {{y_i} = {y_1} + \lambda ({y_1} - {y_0})} \\ {{{\textit{z}}_i} = {{\textit{z}}_1} + \lambda ({{\textit{z}}_1} - {{\textit{z}}_0})} \end{array}} \right. $$ (7) 式中$\lambda $为归一化因子,$\lambda = \dfrac{i}{N} \in [0,1]$。
1.3 匀速圆弧插补
匀速圆弧插补如图4所示。已知空间中不共线的3个点${p'_1}({x'_1},{y'_1},{{\textit{z}}'_1})$,${p'_2}({x'_2},{y'_2},{{\textit{z}}'_2})$,${p'_3}({x'_3},{y'_3},{{\textit{z}}'_3})$,存在经过这3个点的圆弧,对这3个点确定的圆弧进行轨迹规划。
根据文献[20-21]的方法求得空间圆弧的圆心坐标p'0(x'0,y'0,z'0)、半径R。在圆弧所在平面$M$上建立新坐标系${p'_0} - UVW$,取圆心p'0为坐标原点,取$ \overrightarrow {{p'_0}{p'_1}} $方向为U轴方向,则U轴方向的单位向量为
$$ {\boldsymbol{n}} = \frac{{\overrightarrow {{p'_0}{p'_1}} }}{{\left| {{p'_0}{p'_1}} \right|}} $$ (8) 取垂直于$ \overrightarrow {{p'_1}{p'_2}} $和$ \overrightarrow {{p'_2}{p'_3}} $所在平面的方向为$ W $轴方向,即W轴为$ \overrightarrow {{p'_1}{p'_2}} $和$ \overrightarrow {{p'_2}{p'_3}} $的叉乘方向,则W轴方向的单位向量为
$$ {\boldsymbol{u}} = \frac{{\overrightarrow {{p'_1}{p'_2}} \times \overrightarrow {{p'_2}{p'_3}} }}{{\left| {\overrightarrow {{p'_1}{p'_2}} \times \overrightarrow {{p'_2}{p'_3}} } \right|}} $$ (9) 按照右手法则,V轴方向的单位向量为
$$ {\boldsymbol{o}} = {\boldsymbol{u}} \times {\boldsymbol{n}} $$ (10) 根据齐次坐标矩阵的物理意义可得变换矩阵:
$$ {\boldsymbol{J}} = \left[ {\begin{array}{*{20}{c}} {{n_X}}&{{o_X}}&{{u_X}}&{{x'_0}} \\ {{n_Y}}&{{o_Y}}&{{u_Y}}&{{y'_0}} \\ {{n_Z}}&{{o_Z}}&{{u_Z}}&{{{\textit{z}}'_0}} \\ 0&0&0&1 \end{array}} \right] $$ (11) 式中:nX,nY,nZ为向量n在X,Y,Z轴上的投影;oX,oY,oZ为向量o在X,Y,Z轴上的投影;uX,uY,uZ为向量u在X,Y,Z轴上的投影。
在新坐标系${p'_0} - UVW$中,设$p''_0 $—$p''_3 $的坐标分别为($x''_0 $, $y''_0 $, ${{\textit{z}}''_0} $),($x''_1 $, $y''_1 $, ${{\textit{z}}''_1} $),($x''_2 $, $y''_2 $, ${{\textit{z}}''_2} $),($x''_3 $, $y''_3 $, ${{\textit{z}}''_3} $),则
$$\left\{ \begin{array}{l} {[{x''_1}{ {}\;\;\;\;\;{{y''_1} {}\;\;\;\;\;{{\textit{z}}'' _1}} } {}\;\;\;\;\;1 ]^{\mathrm{T}}} = {{\boldsymbol{J}}^{ - 1}}{[{x'_1}{ {}\;\;\;\;\;{{y'_1} {}\;\;\;\;\;{{\textit{z}}' _1} } } {}\;\;\;\;\;1 ]^{\mathrm{T}}} \\ {[{x''_2}{ {}\;\;\;\;\;{{y''_2} {}\;\;\;\;\;{{\textit{z}}''_2} } } {}\;\;\;\;\;1 ]^{\mathrm{T}}} = {{\boldsymbol{J}}^{ - 1}}{[{x'_2}{ {}\;\;\;\;\;{{y'_2} {}\;\;\;\;\;{{\textit{z}}' _2} } } {}\;\;\;\;\;1 ]^{\mathrm{T}}} \\ {[{x''_3}{ {}\;\;\;\;\;{{y''_3} {}\;\;\;\;\;{{\textit{z}}''_3} } } {}\;\;\;\;\;1 ]^{\mathrm{T}}} = {{\boldsymbol{J}}^{ - 1}}{[{x'_3}{ {}\;\;\;\;\;{{y'_3} {}\;\;\;\;\;{{\textit{z}}' _3} } } {}\;\;\;\;\;1 ]^{\mathrm{T}}} \end{array} \right.$$ (12) 在新建立的坐标系${p'_0} - UVW $中,${{\textit{z}}''_1} = {{\textit{z}}''_2} = {{\textit{z}}''_3}$,${x''_1} = R$。在实际机械臂的空间圆弧插补中,圆弧一般具有确定的插补方向,此处约定${p'_0} - UVW$坐标系中UV平面内逆时针方向为插补方向,即由$ {p'_3} $到${p'_2}$再到${p'_1}$的圆弧始终为逆时针圆弧,则$ \overrightarrow{{p}'_{\text{0}\text{}}{p}'_{\text{1}}} $和$ \overrightarrow{{p}'_{\text{0}\text{}}{p}'_{\text{3}}} $之间的夹角为
$$ {\varphi } = \left\{ {\begin{array}{*{20}{l}} \arctan 2({y''_3},{x''_3}) + 2{\text{π}} &{y''_3} < 0 \\ \arctan 2({y''_3},{x''_3})&{y''_3} \geqslant 0 \end{array}} \right. $$ (13) 在圆弧所在平面$M$进行轨迹规划[11],设圆弧上任意插补点i的坐标为$p''_i $($x''_i $,$y''_i $,${{\textit{z}}'' _i} $),根据齐次变换原理可得
$$ \left\{ \begin{array}{*{20}{l}}\theta_i=\lambda_{_i}\varphi_{_i} \\ x''_i=R\cos\ \varphi_{_i} \\ y''_i=R\sin\ \varphi_{_i} \\ \text{z}''_i=0\end{array}\right. $$ (14) 式中:${\lambda _i}$为第i个插补点的归一化因子;$\varphi _{_i} $为向量$ \overrightarrow{{p}'_{\text{0}\text{}}{p}'_{\text{1}}} $和向量$ \overrightarrow{{p}'_{\text{0}\text{}}{p}'_{{i}}} $间的夹角。
1.4 正弦加减速启停算法
改进喷浆轨迹主要由直线段和弧线段组成,如图5所示。第1个直线段为启动加速到匀速阶段,由静止状态平滑过渡至预定的匀速运动状态;最后一个直线段为匀速到减速停止阶段,在运动即将终止时从匀速状态平滑过渡至静止状态。
按照正弦规律设计启停加减速段的速度。设第1个直线段经历的总时间为Ts,则该阶段速度曲线如图6所示。
第1个直线段的速度v1(t)和位移比例m1分别为
$$ v_1(t)=\left\{ \begin{array}{*{20}{l}}\dfrac{v_{\max}}{2\text{π}}(m_1-\sin m_1) & 0<t<t_1 \\ v_{\max} & t_1<t<T_{\mathrm{s}}\end{array}\right. $$ (15) $$ {m_1} = \frac{t}{{{t_1}}}2{\text{π}} $$ (16) 式中t1为第1个直线段起点到加速终点的时间,t1=Tsk1,k1为加速终点时间系数。
设最后一个直线段经历的总时间为Te,则该阶段速度曲线如图7所示。
最后一个直线段的速度ve(t)和位移比例m2分别为
$$ {v_{\mathrm{e}}}(t) = \left\{ {\begin{array}{*{20}{l}} {v_{\max }}&{0 < t < {t_2}} \\ \dfrac{{{v_{\max }}}}{{2{\text{π}} }}({m_2} - \sin {m_2})&{{t_2} < t < {T_{\mathrm{e}}}} \end{array}} \right. $$ (17) $$ {m_2} = \frac{{{T_{\mathrm{e}}} - t}}{{{T_{\mathrm{e}}} - {t_2}}}2{\text{π}} $$ (18) 式中t2为最后一个直线段起点到减速起点的时间,t2=Tek2,k2为减速起点时间系数。
第1个直线段的总位移为
$$ \begin{split} {s_{{\mathrm{start}}}} =& \int\nolimits_0^{{t_1}} {\frac{{{v_{\max }}}}{{2{\text{π}} }}\left(\frac{t}{{{t_1}}}2{\text{π}} - \sin \left(\frac{t}{{{t_1}}}2{\text{π}} \right)\right)} {\mathrm{d}}t + \int\nolimits_{{t_1}}^{{T_{\mathrm{s}}}} {{v_{\max }}{\mathrm{d}}t} =\\ &\frac{{v}_{\mathrm{max}}(2{T}_{{\mathrm{s}}}-{t}_{1})}{2} \end{split}$$ (19) 因为$ {t_1} = {T_{\mathrm{s}}} {k_1} $,对式(19)化简得
$$ {T_{\mathrm{s}}} = \frac{{2{s_{{\mathrm{start}}}}}}{{{v_{\max }}(2 - {k_1})}} $$ (20) 最后一个直线段的总位移为
$$ \begin{split} {s_{{\mathrm{end}}}} =& \int\nolimits_0^{{t_2}} {{v_{\max }}{\mathrm{d}}t + } \int\nolimits_{{t_2}}^{{T_{\mathrm{e}}}} {\frac{{{v_{\max }}}}{{2{\text{π}} }}\left(\frac{{{T_{\mathrm{e}}} - t}}{{{T_{\mathrm{e}}} - {t_2}}}2{\text{π}} - \sin \left(\frac{{{T_{\mathrm{e}}} - t}}{{{T_{\mathrm{e}}} - {t_2}}}2{\text{π}} \right)\right)} {\mathrm{d}}t=\\ & \frac{{{v_{\max }}{T_{\mathrm{e}}}(1 + {t_2})}}{2} \end{split} $$ (21) 因为${t_2} = {T_{\mathrm{e}}} {k_2}$,对式(21)化简得
$$ {T_{\mathrm{e}}} = \frac{{2{s_{{\mathrm{end}}}}}}{{{v_{\max }}(1 + {k_2})}} $$ (22) 1.5 改进多段轨迹规划算法
在传统喷浆轨迹中,喷浆轨迹为方波形,每一段水平和竖直轨迹都包括启动加速、匀速、减速停止3个阶段。如果让喷浆机械臂末端保持匀速且进行90°转向,将导致向心加速度趋于无限大,从而引发机械系统产生显著振动。频繁的启停操作会导致加减速阶段的混凝土层厚度与匀速阶段不一致,同时加速与减速过程会耗费大量时间,从而降低喷浆作业的效率。
针对上述问题,本文提出改进多段轨迹规划算法,将竖直方向的直线运动替换成圆弧运动,如图8所示。对起始和终止轨迹段进行正弦启停速度规划,中间段的直线和圆弧轨迹进行匀速轨迹规划。喷浆机械臂的末端除了在启动时经历加速过程,在将要结束时经历减速过程,其他阶段都将保持匀速状态,从而显著增强喷浆的均匀性,提高喷浆作业效率。
依据末端轨迹运动的形式将多段喷浆轨迹分解成直线轨迹和圆弧轨迹,再以运动的不同状态分为3个阶段:① 启动加速到匀速阶段;② 匀速阶段;③ 匀速到减速停止阶段。阶段①和阶段③主要是直线轨迹,使用正弦加减速启停算法进行规划;阶段②包含直线和圆弧轨迹,使用匀速直线插补和匀速圆弧插补算法进行规划。分别规划之后进行轨迹点的合并,对轨迹点进行逐个逆解,最后将逆解的关节角度发送到控制器进行关节正解,机械臂末端沿规划轨迹运动。插补算法流程如图9所示。
2. 优化算法
2.1 AIWCPSO算法
PSO算法是一种模拟鸟群或鱼群等群体行为进行寻优的群智能的优化算法。粒子速度和位置更新公式为
$$ Q(t + 1) = w(t) Q(t) + {C_1} {r_1} (b - E(t)) + {C_2} {r_2} (g - E(t)) $$ (23) $$ E(t + 1) = E(t) + Q(t + 1) $$ (24) 式中:$Q(t)$,$E(t)$分别为第t次迭代中粒子的速度和位置;$w(t)$为惯性权重;${C_1}$和${C_2}$分别为个体历史最佳适应度和全局最佳适应度的加速度系数;${r_1}$和${r_2}$为0~1的随机数;$b$为个体历史最佳适应度,表示每个粒子的历史最佳位置;$g$为全局最佳适应度,由粒子群中的最佳位置决定。
自适应惯性权重PSO(Adaptive Inertia Weight PSO,AIWPSO)算法[22]对标准PSO进行了改进,将恒定的惯性权重转换为动态权重。
设S(I,t)为当前粒子个体历史最佳值$b_I^t $更新的标志,f为适应度,则有
$$ S(I,t)=\left\{ {\begin{array}{*{20}{l}} 1& f({b}_{I}^{t}) > f({b}_{I}^{t-1}) \\ 0& 其他 \end{array}} \right. $$ (25) 当前粒子个体历史最佳适应度更新的次数总和与粒子总数之比为
$$ {B_s}(t) = \sum\limits_{I = 1}^l {\frac{{S(I,t)}}{n}} $$ (26) 式中l为粒子总数。
自适应惯性权重的更新公式为
$$ {w_{\mathrm{a}}}(t) = ({w_{\max }} - {w_{\min }}){B_s}(t) + {w_{\min }} $$ (27) 式中wmax和wmin分别为惯性权重的自定义最大值和最小值,取值范围为0~1。
自适应惯性权重下粒子群的搜索速度更新公式为
$$ Q(t + 1) = {w_{\mathrm{a}}}(t) Q(t) + {C_1} {r_1} (b - E(t)) + {C_2} {r_2} (g - E(t)) $$ (28) AIWCPSO算法在AIWPSO算法基础上,自适应更新个体历史最佳适应度加速度系数${C_1}$和全局最佳适应度加速度系数${C_2}$。将${C_1}$和${C_2}$转换为自适应个体历史最佳适应度加速度系数${A_1}(t)$和自适应全局最佳适应度的加速度系数${A_2}(t)$,使得算法收敛速度更快,寻优能力更强。
$$ \left\{ {\begin{array}{*{20}{l}} {{A_1}(t) = \alpha {B_s}(t) + \beta } \\ {{A_2}(t) = \alpha (1 - {B_s}(t)) + \beta } \end{array}} \right. $$ (29) 式中α和β为给定的正系数。
改进后粒子速度更新公式为
$$ Q(t + 1) = {w_{\mathrm{a}}}(t) Q(t) + {A_1}(t) {r_1} (b - E(t)) + {A_2}(t) {r_2} (g - E(t)) $$ (30) 2.2 优化算法参数确定
优化算法的适应度函数直接和机械臂末端运行时间相关,末端运行时间越短,适应度值越小,则机械臂末端运行效率越高,适应性越强。在末端轨迹的启停加减速阶段,根据式(19)和式(21),在sstart和send已知的情况下,影响适应度的变量主要有k1,k2和vmax。中间段影响适应度的变量主要是vmax。因此,适应度函数需要通过不断调整k1,k2,vmax来得到最小适应度,即最短末端运行时间。
根据影响适应度的变量个数,将每个粒子的维度设置为3,不同维度的含义分别为加速终点时间系数${k_1}$、减速起点时间系数${k_2}$、匀速阶段速度${v_{\max }}$。
喷浆机械臂的运动需满足运动学约束条件[6],否则将造成执行器过负载运行,损害执行器安全。喷浆机械臂末端速度为120~200 mm/s,末端启停加速度为±300 mm/s2,根据实验平台的参数可得机械臂关节运动学约束,具体参数见表1。
表 1 机械臂关节运动学约束Table 1. Kinematic constraints on robot manipulator joints关节 关节速度/((°)·s−1) 关节加速度/((°)·s−2) 关节1—关节3 ±50 ±170 关节4—关节6 ±50 ±152 设置AIWCPSO算法迭代次数为30,粒子个数为15,$\alpha = 2.05$,$\beta = 0.5$。根据文献[23],设置参数${w_{\min }} = 0$,${w_{\max }} = 1$。
使用AIWCPSO算法进行机械臂末端轨迹运动参数优化的流程如图10所示。
首先,对设置的15个粒子使用rand函数进行随机初始化,将初始化后的各粒子所代表的参数代入多段轨迹的路径和速度曲线规划函数中进行规划,判断返回的各关节轨迹和末端轨迹的运动参数是否在既定的运动学约束内。如果所有粒子所代表的参数计算后都不在运动学约束内,则优化失败;如果设定的粒子中存在满足运动学约束的粒子,则计算适应度值,更新粒子的个体历史最佳适应度及全局最佳适应度。接着根据Bs(t)更新惯性权重wa(t)及自适应加速度系数A1(t)和A2(t),最后更新本次循环下所有粒子的位置和速度。
3. 仿真分析
3.1 仿真模型建立
为了验证所提规划算法的效果,采用六轴协作机械臂为仿真对象,在Matlab平台上通过Robotic Toolbox建模,得到各个插补点的坐标后求解逆运动学方程,得到对应的6个关节角度。六轴协作机械臂DH坐标如图11所示,XqYqZq(q=1,2,···,6)为6个坐标系。协作臂直立姿态改进DH参数见表2,$ \gamma_{q-1} $为机械臂连杆扭转角度,${h_{q - 1}}$为连杆长度,${d_q}$为连杆偏距,${\theta _q}$为关节角。
表 2 协作臂直立姿态改进DH参数Table 2. Improved DH parameters for upright posture of collaborative manipulatorq γq-1/(°) hq-1/mm dq/mm θq /(°) 关节范围/(°) 1 0 0 144 0 −179~179 2 90 0 0 −90 −146~146 3 0 −264 0 0 −146~146 4 0 −236 106 −90 −179~179 5 90 0 114 0 −179~179 6 −90 0 67 0 −179~179 3.2 仿真结果与分析
由于本文使用的机械臂工作空间的限制,仿真以一段S形连续的喷浆轨迹为例,该段轨迹包括完整的启动到匀速段、中间段、减速到停止段。为了便于分析末端轨迹,喷枪不做圆周运动。
3.2.1 改进多段轨迹规划算法性能验证
在不使用优化算法的情况下,手动调节vmax值,对比传统五次多项式速度规划算法和本文改进多段轨迹规划算法性能。设置vmax=150 mm/s,${k_1} = 0.3$,${k_2} = 0.7$,插补周期为0.01 s,匀速插补步长为1.5 mm,圆弧半径为 50 mm,竖直距离为100 mm,从左下角起点$ (-300,\;200,\;230) $ mm到右上角终点$(350,\;200,\; 430)$ mm,2种算法的喷浆轨迹仿真参数、喷浆轨迹仿真分别如图12和图13所示,末端运动仿真曲线如图14所示。
由图13可知,所设置的喷浆轨迹参数在Robotic Toolbox仿真平台上进行的轨迹规划切实可行。
由图14(a)可知,传统算法在多段轨迹运动时频繁启停的特性使得加速和减速的时间不断累加,导致最终时间变长,连续多段轨迹的总位移越大,这种现象越明显。对比图14(a)和图14(b)可看出,本文算法只在起始段和终止段存在加减速过程,其余轨迹段速度大小不变,所以效率提升明显。
通过改变vmax、其他参数保持不变的方式,进行多组数据仿真,得到2种算法的运行时间,算法仿真时间对比见表3。可看出,vmax逐渐增大的情况下,本文算法相对于传统算法效率提升明显,平均提升了25.78%。
表 3 算法仿真时间对比Table 3. Comparison of algorithm simulation time匀速速度/(mm·s−1) 传统算法时间/s 本文算法时间/s 效率提升/% 150 20.47 15.15 25.989 3 155 19.64 14.70 25.152 7 160 19.18 14.22 25.860 3 165 18.58 13.77 25.888 1 170 18.06 13.38 25.913 6 175 17.52 12.99 25.856 2 3.2.2 优化算法性能验证
使用AIWPSO算法和AIWCPSO算法进行参数寻优,设置${C_1} = 1.2$,${C_2} = 0.8$,在vmax相同的情况下,AIWPSO和AIWCPSO算法优化轨迹运动时间的适应度曲线如图15所示。
从图15可看出AIWCPSO算法相较于AIWPSO算法收敛速度更快,寻优能力更强,在运动学约束下圆弧形轨迹的最佳运动时间为13.95 s,相应的时间系数k1=
0.251751 ,k2=0.75,vmax=160 mm/s,与不使用优化算法且vmax=160 mm/s时的运动时间14.22 s相比,优化算法的效率提升了1.9%。3.2.3 喷浆轨迹规划均匀度仿真对比
分别模拟了传统算法和本文算法在k1=0.3,k2=0.7,vmax=150 mm/s的条件下所形成的喷浆轨迹,如图16所示。水平轨迹之间的距离为100 mm,喷浆直径为120 mm,均匀度为“1”代表混凝土厚度合适。左下角起始和右上角结束时的轨迹颜色深于中间匀速阶段,这是因为加减速阶段的速度低于匀速阶段的速度,而喷嘴的体积流量是恒定的,造成了混凝土的沉积。
传统算法与本文算法均会在转弯区域形成混凝土沉积区,但由于传统算法的转角为直角,且每走一段直线均需经过加速、匀速、减速3个阶段,喷浆厚度受速度变化影响区域较多,所以在拐角中间位置形成了一个矩形混凝土沉积区,该处的混凝土厚度明显大于直线匀速行驶区域。使用本文算法模拟出的喷浆轨迹只在起始和终止阶段进行加减速,其余阶段均为匀速,所以在圆弧的圆心处有沉积区域,沉积厚度和面积均小于传统算法。
需要说明的是,仿真喷浆轨迹并不能完全代表实际情况,实际沉积情况受混凝土黏稠度、喷嘴尺寸和喷洒均匀度等因素影响。
4. 物理实验和结果分析
4.1 物理实验平台建立
目前,煤矿井下喷浆主要采用湿喷法,但在实验室条件下,考虑到喷枪喷射直径和质量,为了更好地验证规划算法和优化算法的可行性和有效性,将喷枪替换成电动喷涂笔模拟巷道侧墙喷浆,物理实验平台如图17所示。由上位机通过串口协议将规划好的喷浆轨迹点发送给控制器,轨迹点经过控制器处理变成位置指令,通过CAN协议发送到机械臂本体;机械臂本体按既定喷浆轨迹运行,同时上位机通过串口协议将舵机转动的指令发送给舵机控制器;舵机转动启动喷枪,颜料沿喷浆轨迹喷洒到待喷区域,此过程中喷枪末端始终垂直于喷浆平面,同时机械臂各个轴的角度数据变化由编码器采集后反馈到上位机。
4.2 实验结果和分析
4.2.1 不使用优化算法的情况
设置实验参数与仿真参数一致,机械臂末端运动实验曲线如图18所示。由于竖直段轨迹距离较短及实际硬件的限制,传统算法未加速到既定速度就开始减速。本文算法在轨迹中间段并未保持严格匀速,原因是在走圆弧轨迹时机械臂本身存在惯性,故存在一定速度损失,但在合理范围以内。
按照仿真参数设置进行多组实验,算法实验时间对比见表4。可看出本文算法的效率相比传统算法平均提升25.42%,与仿真结果几乎一致。
表 4 算法实验时间对比Table 4. Comparison of experimental time of algorithms匀速速度/(mm·s−1) 传统算法时间/s 本文算法时间/s 效率提升/% 150 20.714 4 15.344 0 25.925 9 155 19.892 4 14.823 4 25.482 1 160 19.371 8 14.412 4 25.601 1 165 18.686 8 13.974 0 25.219 9 170 18.221 0 13.617 8 25.263 2 175 17.673 0 13.234 2 25.116 3 4.2.2 使用优化算法的情况
使用仿真中寻优得到的运动参数进行实验,所得最优时间为14.220 6 s,对比不使用优化算法时的14.412 4 s,效率提升了1.330 8%。实验得到的效率提升与仿真结果相差不大,验证了优化算法的有效性。
4.2.3 模拟喷浆均匀度实验结果
模拟喷浆均匀度实验的参数与仿真参数一致,实验结果如图19所示。可看出,传统算法在轨迹起始、终止及4个直角转向处出现了颜色较深的圆形颜料堆叠区,在圆形区域附近的加减速过渡区出现轨迹颜色逐渐加深及宽度增大的现象,与仿真中因加减速所造成的混凝土沉积相符。本文算法除了在起始和终止区有少量颜色加深外,中间轨迹的颜色和宽度都较均匀,对比传统算法,在喷浆均匀度方面有明显提升。
实验与仿真的最大沉积区域位置不同,是因为喷涂笔喷射距离和范围有限,实验时喷嘴距离待喷区域50 mm左右,喷浆轨迹的行与行之间未能实现重合,未能展现出仿真中拐角中心处的沉积区。
5. 结论
1) 针对传统喷浆轨迹规划算法频繁启停导致喷浆效率不高和喷浆不均匀等问题,将方波形喷浆轨迹改进为圆弧形,提出了改进多段轨迹规划算法。
2) 在改进多段轨迹规划算法基础上,设计了AIWCPSO参数寻优算法,得到了满足喷浆机械臂运动学约束的最优运动参数。
3) 搭建模拟喷浆物理实验台进行验证和测试,实验结果表明:与传统喷浆轨迹规划算法相比,改进多段轨迹规划算法喷浆平均效率提高了25.42%,喷浆轨迹均匀度明显改善;采用AIWCPSO算法优化后,喷浆效率提高了1.330 8%。实验结果验证了规划算法和优化算法在提升喷浆效率和改善喷浆均匀度上的有效性。
-
表 1 机械臂关节运动学约束
Table 1 Kinematic constraints on robot manipulator joints
关节 关节速度/((°)·s−1) 关节加速度/((°)·s−2) 关节1—关节3 ±50 ±170 关节4—关节6 ±50 ±152 表 2 协作臂直立姿态改进DH参数
Table 2 Improved DH parameters for upright posture of collaborative manipulator
q γq-1/(°) hq-1/mm dq/mm θq /(°) 关节范围/(°) 1 0 0 144 0 −179~179 2 90 0 0 −90 −146~146 3 0 −264 0 0 −146~146 4 0 −236 106 −90 −179~179 5 90 0 114 0 −179~179 6 −90 0 67 0 −179~179 表 3 算法仿真时间对比
Table 3 Comparison of algorithm simulation time
匀速速度/(mm·s−1) 传统算法时间/s 本文算法时间/s 效率提升/% 150 20.47 15.15 25.989 3 155 19.64 14.70 25.152 7 160 19.18 14.22 25.860 3 165 18.58 13.77 25.888 1 170 18.06 13.38 25.913 6 175 17.52 12.99 25.856 2 表 4 算法实验时间对比
Table 4 Comparison of experimental time of algorithms
匀速速度/(mm·s−1) 传统算法时间/s 本文算法时间/s 效率提升/% 150 20.714 4 15.344 0 25.925 9 155 19.892 4 14.823 4 25.482 1 160 19.371 8 14.412 4 25.601 1 165 18.686 8 13.974 0 25.219 9 170 18.221 0 13.617 8 25.263 2 175 17.673 0 13.234 2 25.116 3 -
[1] 贾建龙,王志鹏,赵耀斌,等. 智能化矿用喷浆机器人研究及应用[J]. 中国煤炭,2024,50(7):91-96. JIA Jianlong,WANG Zhipeng,ZHAO Yaobin,et al. Research and application of intelligent mining spraying robot[J]. China Coal,2024,50(7):91-96.
[2] 聂海男,邓立营. 基于ADAMS的喷浆液压机械臂动力学仿真分析[J]. 机电工程技术,2024,53(8):211-214. DOI: 10.3969/j.issn.1009-9492.2024.08.045 NIE Hainan,DENG Liying. Dynamics simulation analysis of shotcrete hydraulic manipulator based on ADAMS[J]. Mechanical & Electrical Engineering Technology,2024,53(8):211-214. DOI: 10.3969/j.issn.1009-9492.2024.08.045
[3] SUN Zhenjiao,CHEN Lianjun,YU Xin,et al. Study on optimization of shotcrete loading technology and the diffusion law of intermittent dust generation[J]. Journal of Cleaner Production,2021,312. DOI: 10.1016/j.jclepro.2021.127765.
[4] 李浩天. 矿井巷道喷浆机械手壁面感知技术研究[D]. 徐州:中国矿业大学,2022. LI Haotian. Research on wall sensing technology of slurry spraying robot in mine roadway[D]. Xuzhou:China University of Mining and Technology,2022.
[5] JIA Lianhui,LIU Shenyao,CAO Chenxu,et al. Kinematics and spatial structure analysis of TBM gunite robot based on D-H parameter method[J]. Scientific Reports,2024,14(1). DOI: 10.1038/s41598-024-64439-0.
[6] 徐海乔. 巷道喷浆机械手轨迹规划与自动控制研究[D]. 徐州:中国矿业大学,2019. XU Haiqiao. Research on trajectory planning and automatic control of roadway slurry spraying robot[D]. Xuzhou:China University of Mining and Technology,2019.
[7] 孙宪超. 湿喷机械臂自动化作业策略与轨迹规划研究[D]. 哈尔滨:哈尔滨工业大学,2021. SUN Xianchao. Research on automation operation strategy and trajectory planning of wet-shotcrete manipulator[D]. Harbin:Harbin Institute of Technology,2021.
[8] 郭玉. 八自由度隧道喷浆机械臂的运动学及喷浆轨迹规划研究[D]. 秦皇岛:燕山大学,2021. GUO Yu. Research on the kinematics and shotcrete trajectory planning of an eight-degree-of-freedom tunnel spraying robotic arm[D]. Qinhuangdao:Yanshan University,2021.
[9] 宋迪. 一种八自由度的隧道自动喷浆机器人[D]. 长沙:中南大学,2019. SONG Di. A tunnel automatic shotcreting robot with eight degrees of freedom[D]. Changsha:Central South University,2019.
[10] AUEN A K,LYNGROTH T S. Modelling,identification and control of a 5-DOF shotcrete robot:development of a framework for automatic application of shotcrete for AMV 4200H[D]. Arendal,Grimstad and Kristiansan:University of Agder,2019.
[11] 许哲,朱海洋,王庆诚. 基于S型速度曲线的机器人连续多轨迹规划[J]. 机械设计与研究,2021,37(6):59-65. XU Zhe,ZHU Haiyang,WANG Qingcheng. Continuous multipath trajectory planning of robot based on S-curve velocity[J]. Machine Design & Research,2021,37(6):59-65.
[12] ZHAO Lide,XIAO Qian,CHEN Hao,et al. Research on trajectory planning method of the collaborative manipulator[C]. 5th International Conference on Information Science,Electrical,and Automation Engineering,Wuhan,2023:24-26.
[13] MISTRY K,ZHANG Li,NEOH S C,et al. A micro-GA embedded PSO feature selection approach to intelligent facial emotion recognition[J]. IEEE Transactions on Cybernetics,2017,47(6):1496-1509. DOI: 10.1109/TCYB.2016.2549639
[14] WANG Mingming,LUO Jianjun,YUAN Jianping,et al. Coordinated trajectory planning of dual-arm space robot using constrained particle swarm optimization[J]. Acta Astronautica,2018,146:259-272. DOI: 10.1016/j.actaastro.2018.03.012
[15] EKREM Ö,AKSOY B. Trajectory planning for a 6-axis robotic arm with particle swarm optimization algorithm[J]. Engineering Applications of Artificial Intelligence,2023,122. DOI: 10.1016/j.engappai.2023.106099.
[16] LIANG Bingqin,LIN Xinzhang,LIU Ganghui,et al. Trajectory analysis and optimization of sea buckthorn fruit vibration separation manipulator based on I-PSO algorithm[J]. Scientific Reports,2023,13(1). DOI: 10.1038/s41598-023-47001-2.
[17] LI T H S,KUO Pinghuan,HO Y F,et al. Intelligent control strategy for robotic arm by using adaptive inertia weight and acceleration coefficients particle swarm optimization[J]. IEEE Access,2019,7:126929-126940. DOI: 10.1109/ACCESS.2019.2939050
[18] 何磊. 六自由度喷浆机械臂的轨迹规划与跟踪控制研究[D]. 长沙:中南大学,2023. HE Lei. Research on trajectory planning and tracking control of six-degree-of-freedom slurry spraying robotic arm[D]. Changsha:Central South University,2023.
[19] GB 50086—2015 岩土锚杆与喷射混凝土支护工程技术规范[S]. GB 50086—2015 Technical code for engineering of ground anchoring and shotcrete support[S].
[20] 陈伟华,张铁. 六自由度喷涂机器人插补算法的研究[J]. 微计算机信息,2009,25(8):251-252,263. CHEN Weihua,ZHANG Tie. The study of 6-DOF painting robot's interpolation algorithm[J]. Microcomputer Information,2009,25(8):251-252,263.
[21] 林威,江五讲. 工业机器人笛卡尔空间轨迹规划[J]. 机械工程与自动化,2014(5):141-143. DOI: 10.3969/j.issn.1672-6413.2014.05.058 LIN Wei,JIANG Wujiang. Trajectory planning of industrial robot in Cartesian space[J]. Mechanical Engineering & Automation,2014(5):141-143. DOI: 10.3969/j.issn.1672-6413.2014.05.058
[22] NICKABADI A,EBADZADEH M M,SAFABAKHSH R. A novel particle swarm optimization algorithm with adaptive inertia weight[J]. Applied Soft Computing,2011,11(4):3658-3670. DOI: 10.1016/j.asoc.2011.01.037
[23] LI T H S,LIN C J,KUO Pinghuan,et al. Grasping posture control design for a home service robot using an ABC-based adaptive PSO algorithm[J]. International Journal of Advanced Robotic Systems,2016,13(3). DOI: 10.5772/64044.