基于复杂轨迹的分段式机械臂轨迹规划

2020-08-20 04:03林孟豪李鹏飞王晓华
西安工程大学学报 2020年4期
关键词:插值轨迹机械

林孟豪,张 蕾,李鹏飞,王晓华

(西安工程大学 电子信息学院,陕西 西安 710048)

0 引 言

随着工业自动化以及计算机技术的不断提高,机器人技术广泛应用于各行各业,极大地提高了劳动效率,减少了人工负担[1-3]。多关节机械臂作为机器人技术高度集成化和智能化的体现,能够有效地节省机器人的工作空间,降低工业生产成本[4-6]。由于机械臂的控制精度很大程度上依赖于控制方法的设计[7],因此机械臂控制方法的研究极其重要,而机械臂的轨迹规划问题是机械臂运动控制的第一要素[8]。轨迹规划技术的设计方法影响着机械臂的运动形式和作业效率。随着机械臂的应用越来越广泛,机械臂的轨迹规划研究逐渐成为国内外学者的研究热点[9-10]。

邹丽梅等通过DH建模的方法,建立了机器人正运动学模型并且求得其逆解,为实际应用提供了理论基础[11];刘子贵等对比了多项式插值算法中三次多项式与五次多项式的运行效果,证明五次多项式插值轨迹规划的效果优于三次多项式插值[12];李振娜等采用S型速度算法与弧长增量插补技术进行轨迹设计,验证了该方法的运动性能较传统的梯型速度算法有显著地提高[13]。相比于国内学者的研究,国外学者Ünsal等设计了一种多项式与B样条曲线复合插值的改进复合多项式算法进行轨迹规划。实验结果表明,该算法所设计的曲线较为平滑,但增加了计算负担,降低了效率[14]。Saravanan等通过对比NURBS曲线和B样条曲线,采用NURBS曲线进行轨迹规划。仿真结果表明,NURBS曲线能够改善轨迹连接过渡的平滑性,更好地控制轨迹曲线的平滑度和曲率的连续性,但却增加了使用难度,实际应用价值较低[15]。在工程应用中,以上方法为常用的轨迹规划算法,通常将机械臂的运动轨迹设计为一条完整连续的路线,但是,上述方法均未考虑到机械臂运动轨迹的复杂性与不完整性,导致机械臂在作业时易出现运行精度较低,作业效率低下等问题。

本文通过机械臂正逆运动学分析,采用复杂轨迹分段式轨迹规划设计方案,解决了机械臂运行轨迹复杂多变且不确定的问题。在抓取起始段,为了达到运行轨迹快速、便捷等设计目标,通过对比三次、五次与七次多项式插值算法的位移、速度、时间等设计参数,最终采用五次多项式插值算法设计此阶段;在抓取过渡段,为了减少运行过程中震荡、冲击对机械臂整体性能的影响,通过对比梯型速度算法与S型速度算法的位移、时间、加速度等设计参数,最终采用S型速度算法设计此阶段;在最终抓取段,为了达到准确、平稳等设计目标,采用NURBS曲线拟合算法设计此阶段。仿真结果表明,分段式机械臂运行轨迹准确、光滑且无突变;进一步仿真实验证明了该分段式轨迹规划设计方案的正确性与灵活性。

1 复杂轨迹分段设计

选择合适的轨迹规划设计方案能够有效地提高机械臂的工作效率。将机械臂的运动轨迹分为抓取起始段、抓取过渡段及最终抓取段3个阶段,如图1所示。其中抓取起始段是指:起始点(A)-靠近点(B),抓取过渡段是指靠近点(B)-接触点(C),最终抓取段是指接触点(C)-抓取点(D)。

抓取起始段如图1(a)所示。抓取起始段中的起始点(A)为机器人在进行作业时,机械臂开始运动的位置,靠近点(B)为机械臂靠近目标物体的位置。为达到简单、快捷并且方便确定轨迹边界状态等设计要求,此阶段采用关节空间五次多项式插值轨迹规划算法进行设计。

抓取过渡段如图1(b)所示。过渡段中的接触点(C)为机械臂受到目标遮挡物影响的位置。为达到缓解机械臂起停运动对整个系统造成冲击和震荡的设计要求,此阶段采用笛卡尔空间S型速度算法进行设计。

最终抓取段如图1(c)所示。抓取段中的抓取点(D)为机械臂抓取目标物体的位置。为达到抓取准确度高,平稳性强等设计目标,此阶段采用笛卡尔空间NURBS曲线拟合轨迹规划算法。

(a) 抓取起始段

2 分段轨迹规划设计

2.1 抓取起始段

抓取起始段需要机械臂满足运行快速、便捷且方便确定轨迹边界状态等目标,目前多采用三次多项式、五次多项式、七次多项式插值等算法进行轨迹规划设计。此阶段将对比三次、五次与七次多项式插值算法的规划方法。

三次多项式中关节角度满足[16]:

(1)

五次多项式中关节角度满足[17]:

(2)

七次多项式中关节角度满足:

(3)

2.2 抓取过渡段

抓取过渡段需要达到降低震荡与冲击对整体性能影响的要求,目前多采用梯型速度算法与S型速度算法进行轨迹规划设计。此阶段将对比梯型与S型速度算法的规划方法。

依据上述条件可得出梯型速度曲线的速度表达式为[18]

(4)

S型速度算法是在梯型速度算法的基础上,增加了急动度的约束条件。其曲线可以分为加加速、匀加速、匀速、匀减速,减减速等5个阶段。同理,S型速度曲线的速度表达式为[19]

v(t)=

(5)

2.3 最终抓取段算法

最终抓取段需要机械臂在作业时达到抓取准确度高,平稳性强等设计要求,目前多采用NURBS曲线拟合轨迹规划算法进行设计。根据NURBS曲线的定义,NURBS样条曲线可以表示为[20]

(6)

式中,Ni,k(u)为由节点矢量U定义的k次B样条曲线基函数。最终,可以得到关节角位移、角速度、角加速度算式:

(7)

3 仿真分析

3.1 抓取起始段

为了验证此设计方案对机械臂运行过程中平稳度、运行速度以及工作效率和经济性的影响,在Matlab环境下对三次、五次与七次多项式插值算法进行仿真对比。参数设计如表1所示。表1中:θ0为起始关节角位移,θf为终止关节角位移,t0为起始时间,tf为终止时间,v0为起始速度,vf为终止速度,a0为起始加速度,af为终止加速度,j0为起始急动度,jf为终止急动度。

表 1 多项插值仿真参数

图2为三次多项式与五次多项式轨迹对比图。其中图2(a)对应于表1中三次、五次多项式(Ⅰ),图2(b)对应于三次、五次多项式(Ⅱ)。如图2所示:三次多项式插值算法能够保证关节角位移以及角速度曲线的光滑连续,但是角加速度曲线呈线性变化,达不到加速度的边界条件;五次多项式插值算法可以满足关节角位移,角速度以及角加速度曲线光滑且连续。

(a) 三次多项式(Ⅰ)与五次多项式(Ⅰ)

图3为五次多项式(Ⅰ)与七次多项式轨迹对比图。如图3所示,七次多项式插值算法较五次多项式插值算法增加了急动度的约束条件,其关节角位移、关节速度、关节加速度的平滑度有所提高,但增加了计算难度,降低了机械臂的运行效率,因而实际应用价值较低,成本较高。

(a) 五次多项式(Ⅰ)

比较三次、五次多项式插值算法,七次多项式插值算法计算复杂,效率低下。因此,在上述算法设计的基础上,后续工作将侧重于对三次、五次多项式插值算法的深入分析。今增设到5个抓取点进行研究,参数设置如表2所示。表2中:θ1、t1、v1分别为第一抓取点的关节角位移、时间与速度;θ2、t2、v2分别为第2抓取点的关节角位移,时间与速度;θ3、t3、v3分别为第3抓取点的关节角位移、时间与速度;θ4、t4、v4分别为第4抓取点的关节角位移、时间与速度;θ5、t5、v5分别为第5抓取点的关节角位移、时间与速度。

表 2 多点三次多项式插值与五次多项插值仿真参数

图4为多点三次多项式与五次多项式轨迹对比。

图 4 多点三次多项式与五次多项式轨迹对比

如图4所示,多点轨迹规划更能直观地看出此设计的优点:五次多项式较三次多项式插值算法中曲线的关节角位移、关节速度的平滑度有显著提高。三次多项式不能够保证各个点处的速度曲线平滑过渡,因此不能够保证加速度连续光滑。五次多项式插值算法能够解决机械臂关节加速度不连续的缺点,保证了机械臂在每个插值点工作时,能够稳定安全地运行,减少运行冲击对机械臂带来的损害,并且此算法计算相对简单。在此仿真实验所设定的参数条件下,速度最大能够提升14.2%。对比三次、五次与七次多项式插值算法,其中五次多项式插值算法更适用于本设计方案,故抓取起始段采取五次多项式插值算法进行轨迹规划设计。

3.2 抓取过渡段

为了验证设计方案的有效性,将梯型速度与S型速度算法进行对比分析。在Matlab环境下对梯型速度算法和S型速度算法行仿真对比。梯型速度算法参数与S型速度算法参数设计如表3所示,表3中amax为最大加速度。图5为梯型速度轨迹图,图6为S型速度轨迹图。

图 5 梯型速度轨迹

图 6 S型速度轨迹

如图5所示,梯型速度算法曲线过渡不够平滑,加速度呈现阶跃式突变,容易对机械臂的稳定性造成影响,引起震荡。虽然梯型速度算法相比于其他算法易于实现、控制设计方案相对简单,但是速度曲线不平滑,加速度也存在突变,会对机械臂的运行造成冲击,仅适用于低成本、低精度的运动控制过程。

如图6所示,S 型速度算法能够保证机械臂在加减速过程中平滑过渡,减少加减速度变化对机械臂的控制系统造成冲击。该算法解决了梯型速度算法中速度过渡不平滑,加速度容易产生突变等缺点,适用于高精度的运动系统。在此仿真实验所设定的参数条件下,最大速度能够提升5%。因此,抓取过渡段采用S型速度算法进行轨迹规划设计。

3.3 最终抓取段

为了验证本设计方案的准确性,最终抓取段采用NURBS曲线拟合算法进行轨迹规划。在Matlab环境下对NURBS曲线拟合轨迹规划算法进行验证,结果如图7所示。图7中,黑圆点为通过NURBS反算推导出的控制顶点,虚线表示各控制顶点确定的控制曲线,实线表示通过NURBS拟合后的机械臂期望作业轨迹。

在2D平面内任取4个抓取点,分别为(100,200),(250,300),(400,100),(356,200),机械臂作业轨迹如图7(a)所示。

(a) 2D NURBS拟合曲线

为了更好地展示此算法的优势,在3D空间内任取4个抓取点,分别为(100,200,200),(250,300,600),(400,100,300),(356,200,148),机械臂作业轨迹如图7(b)所示。

机械臂在复杂轨迹作业过程中,会有多个控制点;为验证该算法的可行性,故设计多个抓取点。在3D空间内任取7个抓取点,分别为(100,200,200),(250,300,600),(400,100,300),(356,200,148),(400,250,153),(300,320,40),(250,260,-148),机械臂作业轨迹如图7(c)所示。

NURBS曲线拟合过程中,通过调整各抓取点的权重值调整机械臂运行轨迹的走向;在实际作业过程中,可通过自适应调节各抓取点的权重值,以实现局部轨迹的调整。通过图7可以看出,拟合后的作业轨迹光滑无突变,且为最优轨迹路线,适用于高精度、高稳定性、高准确度的轨迹规划。此算法控制目标明确,能够满足此阶段机械臂的工作要求,因此,最终抓取段采用NURBS曲线拟合算法设计。

4 结 语

采用分段式轨迹规划设计方案,实现了机械臂在复杂多变轨迹中的轨迹规划任务。针对设计方案所提出的抓取起始段、抓取过渡段及最终抓取段,分别采用五次多项式插值算法、S型速度算法、NURBS曲线拟合算法进行规划设计。通过实验仿真,证明了该设计方案具有便捷、可靠,通用性较强等特点,并且可以满足机械臂在不同的复杂作业现场,快速、准确地完成抓取任务,为后期的研究奠定了理论基础。本研究的后期工作是将该设计方案应用在机械臂的开发平台上,采用C++语言编程,实现本设计方案。

猜你喜欢
插值轨迹机械
滑动式Lagrange与Chebyshev插值方法对BDS精密星历内插及其精度分析
解析几何中的轨迹方程的常用求法
二元Barycentric-Newton混合有理插值
轨迹
轨迹
调试机械臂
基于pade逼近的重心有理混合插值新方法
简单机械
按摩机械臂
基于混合并行的Kriging插值算法研究