方建文,晁永生,袁逸萍
(新疆大学机械工程学院,新疆 乌鲁木齐830047)
白车身的焊接是汽车生产制造过程中不可缺少的一环,随着生产工艺的不断发展,焊接过程中机器人的移动轨迹要求也越来越高。目前工业生产中应用的焊接机器人大多是示教机器人,其反应能力往往较差,而针对白车身焊点的焊接是一个快速起停的过程,一旦出现不稳定因素干扰可能无法及时反应过来,在一定程度上影响了焊接的质量。因此,根据实际的焊接任务,在确保焊接精度的前提下,在相邻焊点之间找到一条合理的路径曲线,使临近焊点附近时焊接机器人各关节的位移、速度、加速度随时间变化曲线更加平滑,避免快速起停过程中出现机器臂共振等情况,这对高质量高精度完成焊接任务,提高白车身焊接生产线生产效率,延长机器人的使用寿命具有重要意义。
常见的机器人运动轨迹规划包括关节空间轨迹规划和笛卡尔空间轨迹规划。众多学者针对现代车身焊接过程中的轨迹优化问题进行了进一步的研究。文献[1]将轨迹曲线分段用三次多项式插值曲线进行分段拟合,对关节速度进行了约束。文献[2]提出了一种基于三次多项式插值法的加减速型Nurbs曲线前瞻算法,优化了轨迹的稳定性。文献[3]提出一种新型S型速度规划算法,在一定程度平滑了加加速度曲线,提升了运动过程中的抗冲击性能。文献[4]针对加速度的突变,采用S型速度曲线进行轨迹规划,提高了运动过程中的抗冲击性能。文献[5]针对工业机器人时间最优、能耗最优、脉动最优等多目标的轨迹优化问题,基于非均匀有理B样条曲线矩阵表示法,提出一种最优轨迹规划方法。文献[6]构建七次B样条曲线,将机械人的运动学约束转化为B样条控制顶点的约束,实现了多目标轨迹优化。文献[7-8]以加加速度的平方以及Jerk的绝对值为优化目标,其轨迹由于单一目标优化轨迹。文献[9]采用五次B样条插值法对轨迹进行拟合,当约束条件复杂时其优化效果优于三次B样条插值法,但由于反算控制点过程的计算量太大,为研究带来了不便。上述方法从运动轨迹整体上实现了对速度、加速度的规划,提高了运动过程的平稳性,然而关于焊枪在进出焊点时局部运动的平稳性研究还比较匮乏。因此对机器人各关节空间采用改进的B样条插值法进行优化,使运动轨迹能够准确通过焊点,并通过增加辅助控制点方法,对焊点附近运动过程中的速度、加速度进行了优化,使运动过程更加平稳。
焊接机器人具有6个自由度,即机器人关节空间为6维空间,由于焊接过程中焊点是固定且必须经过的,因此将其作为末端执行器在空间运动过程中的通过点。通过逆解每个焊点都有一组关节角与之对应,即各焊点对应的关节空间位置,记为qj=表示机器人在qj点时的6个关节的关节值。
其中,Qi(i=0,1,…,n)为控制顶点,Ni,k(t)(i=0,1,…,n)是k次规范B样条基函数,且有
式中:k-B样条函数的阶数;i-B样条函数的序列号,记0/0=0。文献[10]通过关节空间中对应的位置-时间序列点,将其作为型值点反算控制顶点,再利用三次B样条插值法进行轨迹的拟合,保证了运动轨迹经过所对应的关节空间位置,其第i段曲线的函数表达式为
通过上一小节的描述、计算,要使规划的运动曲线能够经过焊点所对应机器人关节空间位置,通过反算控制点求得B样条插值曲线。虽然利用该方法能够实现运动轨迹经过期望的关节位置,但焊接机器人从一个焊点移动至另一焊点时,要求在到达焊点位置附近时,速度变化平稳,以确保焊接质量。所以说,在上述基础上通过增加或改变控制点的数目来控制曲线形状,进而优化轨迹的运动性能。
已知,利用三次均匀B样条插值法,通过4个控制点可以确定一段曲线,如图1所示。
图1 三次均匀B样条曲线Fig.1 Cubic Uniform B-Spline Curve
依据德布尔递推法,图1中的三次均匀B样条曲线段由是由Q0、Q1、Q2、Q3四个控制顶点确定,该三次曲线的起点是Q0、Q1、Q2构成的三角形的中线Q1Q1′上的一点N1,Q1N1的位长度是ΔQ0Q1Q2中线Q1Q1′长度的1 3,终点是Q1、Q2、Q3构成的三角形的中线Q2Q2′上的一点N2,Q2N2的位长度是ΔQ1Q2Q3中线Q2Q2′长度的1 3,由N1N2构成的三次B样条插值曲线,且该曲线不经过Q0、Q1、Q2、Q3中的任意控制顶点。假设,当Q1点不断趋近于Q1′点时,那么N1点则会不断靠近Q1′点,同理,当Q2点不断趋近于Q2′点时,那么N2点则会不断靠近Q2′点。这时,该三次B样条插值曲线的起点和终点将不断逼近ΔQ0Q1Q2、ΔQ1Q2Q3的底边,即Q0Q1、Q2Q3,最终Q1(Q1′),Q2(Q2′)两两重合,此时该三次B样条插值曲线的起点和终点为两控制顶点。依据此现象,可以得出,3个相邻等距的控制顶点如果共线,那么该三次B样条插值曲线的起点和终点曲线会经过中间控制点。为了满足所有的控制顶点都在该曲线上,则需要在每个控制顶点的两侧再加入两个控制顶点,用来调整曲线形状,使之经过原先的控制顶点,新规划出的曲线较原来平缓,如图2所示。
图2 改进B样条曲线Fig.2 Improved B-Spline Curve
规划方法具体如下:
(1)如图2,在Q1两侧增加辅助控制点Q1z、Q1y,使Q1、Q1z、Q1y三点共线,且Q1是Q1zQ1y的中点,同时平行于Q0Q2,由三角形的几何性质可得Q1zQ1=Q1Q1y=hQ0Q2,其中,h为ΔQ0Q1Q2底边Q0Q2长度的比例系数同理在Q2两侧增加点Q2z、Q2y,使Q2、Q2z、Q2y三点共线,且Q2是Q2zQ2y的中点,同时平行于Q1Q3,可得Q2zQ2=Q2Q2y=Q1Q3/6。
(2)为了让该三次B样条曲线通过起始和末端的两个控制点Q0、Q3,依据B样条曲线特殊的几何性质,在Q0、Q3点原处增加两个辅助控制点使之重合,那么能够使曲线从Q0点出发止于Q3点。
综上所述,以Q0、Q1z、Q1、Q1y、Q2z、Q2、Q2y、Q3为控制顶点,可以得到三段三次B样条曲线,且得到的曲线通过Q1、Q2点,若要使曲线通过首尾控制点,则在首尾控制点原处各增加两个辅助控制点。若曲线需要经过n个关节位置点,则需要添加2n个辅助控制点生成3n-3段曲线,生成的三次B样条曲线通过所有原始关节位置点。添加的控制点的位姿计算公式如下:
结合式(3)、(4)可得改进后的三次B样条曲线方程为:
其中,i=0,1,…,n-1
由于所有的辅助控制点都可以由最初的控制点求得,故将式(4)代入式(6),可得由Q0,Q1,Q2,…,Qn表示的改进三次B样条曲线方程:
注:式(7)中的i不取0和n-1,因为始末两端点的新增辅助点不按照上述方程求解,但满足式(6),可从此求解。
点焊机器人最优轨迹规划就是要求各个关节在满足运动学约束条件的情况下,确保焊接的准确性,同时以较高的速度从焊点移出,并以较小的速度变化移至下一个焊点。所以说,在实际运动控制过程中,机器人受到驱动机构性能等因素的制约,具体体现在角度约束、角速度约束和角加速度约束这三方面。利用改进三次B样条插值法进行轨迹规划,通过对控制顶点的约束来实现对机器人运动轨迹的约束。
假设机器人每个关节的角变化、速度、加速度约束分别为θm、ωm、am(m=1,2,…,6)。可以求得各关节的位置、速度、加速度曲线方程为:
式(8)还要满足以下约束条件:
以Panasonic TA1800G2型焊接机器人为研究对象,该机器人机构特点满足Pieper原则,其D-H参数,如表1所示。
表1 机器人运动参数和关节变量Tab.1 Motion Parameters and Joint Variables of the Robot
根据表1中D-H参数使用如下指令,利用MATLAB中的Robotics Toolbox建立Panasonic TA-1800G2机械臂模型,示例代码如下:
示例代码中的Link指令中的各参数,从左到右,第一位表示扭转角α,第二位表示连杆长度a,第三位表示关节角θ,第四位表示连杆偏距d,最后一位表示关节角类型,由于是6R机器人,故都为0,默认采用标准D-H法进行建模,如图3所示。
图3 Panasonic TA-1800G2模型Fig.3 Model of Panasonic TA-1800G2 Robot
在以机器人的基座为原点建立的空间坐标系中,在(100×100×100)cm的坐标空间中提取了5个焊点的空间位姿,记为piont=[30,0,-30;26,50,-33;22,15,-27;26,35,-35;42,39,-24],如图4所示次序进行焊接。
图4 焊点空间位置及焊接次序Fig.4 Spacial Location and Welding Sequence of Welding Spot
机器人的末端执行器在移动过程中必经焊点的位置,将焊点的位姿信息转化为机器人末端位姿,通过运动学逆解得到每个焊接位姿对应的关节角,如表2所示。
表2 焊接位姿对应的关节角Tab.2 Joint Angle Corresponding to the Welding Pose
以表2中的数据作为型值点,利用改进的三次B样条插值法,在两侧添加辅助控制点,对曲线进行拟合。为了能更直观的看出各关节的轨迹规划效果,与三次样条插值法进行对比,结果如图5所示。通过对比可发现,在满足焊接准确性的前提下,部分关节的速度、加速度曲线均有波峰,加速度曲线出现尖点,通过改进三次B样条插值后的关节速度波动范围以及关节加速度波动范围较之三次样条插值法显著降低,同时,型值点附近的速度、加速度曲线变得更加平缓,验证了机器人进入焊点位置和焊完离开焊点位置时,运动过程的稳定性,减小了运动过程出现的冲击,保证了焊接的质量。
图5 各关节位移、速度、加速度曲线(为型值点)Fig.5 Curves of Displacement,Velocity and Acceleration for Each Joint(were recognized as the value points)
针对焊接机器人中焊枪进出焊点时运动过程的平稳问题,先求解出各个焊点对应的机器人各关节的空间位置,然后以此为控制顶点,通过添加辅助控制点的方法,对三次B样条插值法进行了改进,生成平滑的运动。通过与三次样条插值法在不同时刻的位移、速度、加速度的对比,验证了经过改进三次B样条插值法平滑后的轨迹保证了焊接的准确性,同时运动过程的平稳性也得到显著提高。