一种机器人NURBS轨迹插补方法技术

技术编号:27143971 阅读:62 留言:0更新日期:2021-01-27 21:38
本发明专利技术公开了一种机器人NURBS轨迹插补方法,包括以下步骤1)利用机器人获得数据点三维坐标和旋转向量;2)利用三次B样条曲线对数据点拟合生成轨迹c(u);3)对c(u)参数采样得到离散点计算对应的弧长参数4)利用5次多项式拟合生成u

【技术实现步骤摘要】
一种机器人NURBS轨迹插补方法


[0001]本专利技术涉及计算机辅助制造及机器人加工
,更具体地,涉及一种机器人NURBS轨迹插补方法。

技术介绍

[0002]机器人的加工精度与加减速运动控制、插补算法密切相关。目前,机器人加工的轨迹通常以小线段来表达,小线段表示的轨迹存在数量巨大,系统频繁地加减速,降低零件的加工精度和表面质量等缺点。针对于小线段表示的机器人轨迹存在的缺陷,NURBS曲线被应用在了机器人轨迹拟合中。
[0003]传统的机器人系统只具备直线插补和圆弧插补功能,不支持对NURBS曲线直接插补。NURBS插补是以NURBS曲线为轨迹对其进行插补,由于NURBS曲线的参数没有明显的几何意义,弧长的计算也没有解析表达式,针对NURBS插补时计算量大,速度难以控制的特点。
[0004]为了满足插补的实时性要求,建立参数与弧长的映射关系,提出了弧长参数的NURBS插补方法,提高实时插补的计算效率。本方案通过建立NURBS曲线参数u与弧长参数s之间的映射关系,通过位移计算参数,而参数与位置有自然联系,由参数计算插补点,从而实现弧长参数的NURBS插补。

技术实现思路

[0005]针对现有技术的以上缺陷或改进需求,本专利技术提出一种机器人NURBS轨迹插补方法。
[0006]本专利技术通过下述技术方案实现:
[0007]一种机器人NURBS轨迹插补方法,包括如下步骤:
[0008]步骤1)选择自由曲面上的多个数据点,利用机器人,获得自由曲面上需要通过的所有数据点的三维坐标和旋转向量;
[0009]步骤2)利用三次B样条曲线,对步骤(1)中的所有数据点进行拟合,生成一条轨迹,定义此轨迹为曲线c(u);
[0010]步骤3)对曲线c(u)进行参数采样,得到离散点并计算其对应的弧长参数
[0011]步骤4)利用5次多项式拟合,生成参数u与弧长参数s之间的u-s模型;
[0012]步骤5)对B样条曲线生成的刀具轨迹进行T型速度规划,得到插补点的弧长参数;
[0013]步骤6)根据u-s模型,获得B样条轨迹对应的离散点;
[0014]步骤7)利用弧长参数,依次在相邻两个旋转向量之间进行四元数球面插值,获得B样条曲线离散点对应的旋转向量。
[0015]对本专利技术技术方案的进一步优选,步骤1)中,机器人对自由曲面采点,获得的数据点和旋转向量数量Num≥5。
[0016]对本专利技术技术方案的进一步优选,步骤3)中,对c(u)等参数采样,并计算其对应的
弧长参数的具体步骤为:
[0017]S11、对曲线c(u)进行参数采样,得到离散后的参数和离散点
[0018]S12、计算弧长参数s,曲线c(u)在两个参数区间[a,b]上的弧长公式为:
[0019][0020]其中,|c

(u)|为离散点的绝对值;
[0021]利用数值积分方法计算弧长,采用布尔公式:
[0022][0023]其中,f(x)即用|c

(u)|代入进行计算,x0=a,x4=b,x2=x1+h,x3=x2+h;f
i
=f(x
i
),i=0,1,..4;
[0024]通过布尔公式,可以获得所有相邻两离散点之间对应的弧长,则得到弧长参数为:
[0025][0026]其中,s0=0,i=0,1,

,n-1。
[0027]对本专利技术技术方案的进一步优选,利用5次多项式拟合,生成参数u与弧长参数s之间的u-s模型,使得参数与弧长用五次多项式表示为:
[0028]u=k0+k1s+k2s2+k3s3+k4s4+k5s5[0029]其中,k0、k1、k2、k3、k4和k5为拟合后得到的系数;
[0030]通过和利用最小二乘,算出其方程为:
[0031][0032]可表示为矩阵方程:Y=XK,当R>(n+1)时,最小二乘方程为超定方程,其解为:
[0033]K=(X
T
X)-1
X
T
Y
[0034]其中,Y的维数为[R
×
1],X的维数[R
×
(n+1)],K的维数为[(n+1)
×
1],R为数据的行数。
[0035]本专利技术与现有技术相比具有的有益效果:
[0036](1)三次B样条轨迹G2连续,速度和加速度连续,保证了运动的平顺;
[0037](2)建立了参数u与弧长s的映射关系,提高实时插补的计算效率;
[0038](3)T型速度规划响应迅速,简单受控,使用方便。
附图说明
[0039]图1是基于机器人NURBS轨迹插补方法的总流程图;
[0040]图2是通过数据点生成的NURBS轨迹;
[0041]图3是u-s之间的关系图;
[0042]图4是演示了刀具的轨迹位置变化为S形状。
[0043]图5是刀具运动的速度曲线。
[0044]图6是刀具运动的加速度曲线。
具体实施方式
[0045]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图1-6及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。此外,下面所描述的本专利技术各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0046]如图1所示,一种机器人NURBS轨迹插补方法,包括以下步骤:
[0047]步骤1)选择自由曲面上的多个数据点,利用机器人,获得自由曲面上需要通过的所有数据点的三维坐标和旋转向量;
[0048]步骤2)利用三次B样条曲线,对步骤(1)中的所有数据点进行拟合,生成一条轨迹,定义此轨迹为曲线c(u);
[0049]步骤3)对曲线c(u)进行参数采样,得到离散点并计算其对应的弧长参数
[0050]步骤4)利用5次多项式拟合,生成参数u与弧长参数s之间的u-s模型;
[0051]步骤5)对B样条曲线生成的刀具轨迹进行T型速度规划,得到插补点的弧长参数;
[0052]步骤6)根据u-s模型,获得B样条轨迹对应的离散点;
[0053]步骤7)利用弧长参数,依次在相邻两个旋转向量之间进行四元数球面插值,获得B样条曲线离散点对应的旋转向量。
[0054]本实施例步骤1)中,机器人对自由曲面采点,获得的数据点和旋转向量数量Num≥5。
[0055]本实施例步骤2)中,利用三次B样条曲线,对数据点拟合,生成曲线c(u),如图2所示。根据标记点生成三次B-spline路径曲线具体细节参见非专利文献《三次B样条反算的一种简便算法》。
[0056]设k次B-spline曲线方程为:
[0057]其中,P
i
(i=0,1,

,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种机器人NURBS轨迹插补方法,其特征在于,包括以下步骤:步骤1)选择自由曲面上的多个数据点,利用机器人,获得自由曲面上需要通过的所有数据点的三维坐标和旋转向量;步骤2)利用三次B样条曲线,对步骤(1)中的所有数据点进行拟合,生成一条轨迹,定义此轨迹为曲线c(u);步骤3)对曲线c(u)进行参数采样,得到离散点并计算其对应的弧长参数步骤4)利用5次多项式拟合,生成参数u与弧长参数s之间的u-s模型;步骤5)对B样条曲线生成的刀具轨迹进行T型速度规划,得到插补点的弧长参数;步骤6)根据u-s模型,获得B样条轨迹对应的离散点;步骤7)利用弧长参数,依次在相邻两个旋转向量之间进行四元数球面插值,获得B样条曲线离散点对应的旋转向量。2.根据权利要求1所述的机器人NURBS轨迹插补方法,其特征在于,步骤1)中,机器人对自由曲面采点,获得的数据点和旋转向量数量Num≥5。3.根据权利要求1所述的机器人NURBS轨迹插补方法,其特征在于,步骤3)中,对c(u)等参数采样,并计算其对应的弧长参数的具体步骤为:S11、对曲线c(u)进行参数采样,得到离散后的参数和离散点S12、计算弧长参数s,曲线c(u)在两个参数区间[a,b]上的弧长公式为:s=∫
ab
|c

(u)|du其中,|c

【专利技术属性】
技术研发人员:段晋军戴振东闵康杨祥利赵宾峰
申请(专利权)人:南京溧航仿生产业研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利