一种工业机器人NURBS曲线插补时的速度规划方法转让专利

申请号 : CN201610182687.4

文献号 : CN105785921B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张铁龚文涛

申请人 : 华南理工大学

摘要 :

本发明涉及一种工业机器人NURBS曲线插补时的速度规划方法,包括步骤:(1)建立NURBS曲线基于参数u和进给速度v的特征方程;(2)建立NURBS曲线基于向心加速度和弓高误差等几何约束条件下的速度约束关系;(3)根据机器人末端进给速度变化的单调性,对NURBS曲线进行前瞻速度分段处理,得到分段点插补参数集合,完成速度规划过程。本发明所所提供的速度规划方法特别适用于已知若干个示教点,要求机器人末端运动轨迹平滑且运动速度及加速度无大的突变的NURBS曲线插补的场合,建立速度约束时考了NURBS曲线的几何特性,对曲线根据速度变化的单调性进行前瞻分段,极大地减小机器人在NURBS曲线插补时受到的冲击。

权利要求 :

1.一种工业机器人NURBS曲线插补时的速度规划方法,其特征在于,包括步骤:(1)建立NURBS曲线基于参数u和进给速度v的特征方程;

(2)建立NURBS曲线基于向心加速度和弓高误差几何约束条件下的速度约束关系;

(3)根据机器人末端进给速度变化的单调性,对NURBS曲线进行前瞻速度分段处理,得到最终的分段点插补参数集合,完成速度规划过程;

所述步骤(3)具体包括:

根据参数方程和速度约束,得出NURBS曲线各插补参数u处对应的最大进给速度,然后根据各处最大进给速度变化的单调性,对NURBS曲线进行分段处理,分别求出各段的插补参数:起终点速度、加速度、参数u,设定曲线的起始和末端速度为零,最大切向加速度为atan,插补周期为Ts,曲线的最大进给速度为vM,分段点的集合为参数uFj和速度vFj,j∈[1,2...],对NURBS曲线进行前瞻速度分段处理,则基于前瞻分段的速度规划过程如下:

31)从参数u=0,v=0开始,在第i个插补点,i∈[2,3...],根据递推公式viL=v(i-1)L+atan·Ts,求其理论速度viL;

32)若viL<vM,则viL不变,若viL>vM,则将vM的值赋给viL;

33)计算当前参数u对应的基于弓高误差限制的最大速度vigmax;

34)计算当前参数u对应的基于向心加速度限制的最大速度vixmax;

35)比较viL、vigmax和vixmax的大小,取三者最小值viT;

36)设当前插补点的前一个分段点对应参数uFj和速度vFj,uF1=0,vF1=0,计算数学式:(viT-v(i-1)T)·(v(i-1)T-v(i-2)T),若该数学式小于零,则记录当前的参数ui和速度viT,标记为uF(j+1)和vF(j+1),作为新的分段点,根据参数方程式求分段点uF(j+1)和uFj之间的曲线段路径长度sj;

37)求下一个插补点的参数ui+1,重复步骤31)步骤至36)的操作,标记所有的分段点,直到参数ui=1时停止迭代;

38)对于已经求得的分段点集合:参数uFj和速度vFj,若vFj<vF(j+1)且

则令

若vFj>vF(j+1)且

则令

39)根据式子 得到第j个分段区间的实际运行加速度;

310)得到最终的分段点插补参数集合,完成速度规划过程。

2.根据权利要求1所述的速度规划方法,其特征在于,其特征在于:步骤(1)具体包括:

11)建立基于参数u的NURBS曲线参数方程式:根据控制点坐标和NURBS曲线次数,得到曲线的参数方程为:式中,{pi}为控制点,通过机器人示教得到,{wi}为权因子,{Ni,P(u)}是定义在非周期节点U矢量上的p次B样条基函数;

12)所述p次B样条基函数{Ni,P(u)}的表达式为:代入曲线参数方程即可得到当前参数u对应的曲线的插补点,参数u的取值范围为0到

1,改变参数u的值可获得一系列的插补点;

13)建立参数u和进给速度v的关系方程式:为了在插补过程中引入速度规划,因此需建立参数u和速度v的方程式,对于空间曲线,设v(t)为插补进给速度,位移增量ds和速度v的关系可以为:则

其中,

且对于空间曲线,存在:

14)对于参数u,进行泰勒一阶展开:

其中T为插补周期,k为第k个插补周期,这样可以得到每个插补周期的插补参数u的值。

3.根据权利要求1所述的速度规划方法,其特征在于,其特征在于:步骤(2)具体包括:

21)根据曲线参数方程,求出各个参数u处对应的曲线曲率半径R;

22)确定在向心加速度限制下的最大进给速度:在第i个插补点处,进给速度、向心加速度、曲率半径的关系为: 式中的Ri是NURBS曲线在当前插补周期u=ui处的曲率半径,acmax为插补的最大向心加速度,vixmax为在当前位置基于向心加速度约束的NURBS曲线最大进给速度;

23)确定在弓高误差限制下的最大进给速度:NURBS曲线的插补的每一段插补是以直线替代近视圆弧的过程,在这个过程中,会引入弓高误差;Pu(i)和Pu(i+1)分别代表第i个和第i+1个插补点,在插补时用直线替代近似圆弧,ERi为弓高误差,Ri为曲率半径,Li为第i插补周期移动的弦长,Ts为插补周期,vigmax为当前周期在弓高误差限制下的最大进给速度,则它们之间存在关系式:通过该关系式可以由当前插补周期曲线的曲率半径和最大弓高误差值确定弓高误差限制下的最大进给速度vigmax。

说明书 :

一种工业机器人NURBS曲线插补时的速度规划方法

技术领域

[0001] 本发明涉及六轴工业机器人应用领域,尤其涉及一种用于工业机器人 NURBS曲线插补时的速度规划方法。

背景技术

[0002] NURBS是一种用途广泛的样条曲线,它不仅能够用于描述自由曲线和曲面,而且还提供了包括能精确表达圆锥曲线曲面在内各种几何体的统一表达式。传统的NURBS在工业机器人路径插补中的应用,主要是采用将曲线用微小直线逼近的方法,这种方法具有轨迹精度低、运算量大、插补速度慢、轨迹不平滑等缺点。
[0003] 六轴工业机器人的NURBS曲线路径插补过程需要满足以下两方面的要求:根据示教点生成的曲线轨迹平滑、无突变,且要求示教点的数量不要太多;插补过程中笛卡尔空间和关节空间的各速度、加速度无大的突变。因此,研究寻找一种轨迹平滑、速度和加速度无大的突变的六轴工业机器人的NURBS曲线路径插补方法有重要意义。
[0004] 近年来,国内出现了一种基于参数u的曲线参数方程的插补方法,但在速度规划方法方面,主要采用匀速或梯形加减速速度规划,这种方法能够得到平滑且无突变的轨迹,但机器人末端进给速度不能根据曲线的几何形状自适应变化,容易造成机器人在插补过程中受到较大的冲击和振动。

发明内容

[0005] 本发明的目的在于克服现有技术的不足,提供一种插补后轨迹平滑、速度加速度无突变的工业机器人NURBS曲线插补时的速度规划方法。
[0006] 上述目的是通过以下技术方案实现的:
[0007] 一种工业机器人NURBS曲线插补时的速度规划方法,包括步骤:
[0008] (1)建立NURBS曲线基于参数u和进给速度v的特征方程;
[0009] (2)建立NURBS曲线基于向心加速度和弓高误差等几何约束条件下的速度约束关系;
[0010] (3)根据机器人末端进给速度变化的单调性,对NURBS曲线进行前瞻速度分段处理,得到最终的分段点插补参数集合,完成速度规划过程。
[0011] 进一步地,所述步骤(1)具体包括:
[0012] 11)建立基于参数u的NURBS曲线参数方程式:
[0013] 根据控制点坐标和NURBS曲线次数,得到曲线的参数方程为:
[0014]
[0015] 式中,{pi}为控制点,通过机器人示教得到,{wi}为权因子,{Ni,P(u)}是定义在非周期节点U矢量上的p次B样条基函数;
[0016] 12)所述p次B样条基函数{Ni,P(u)}的表达式为:
[0017]
[0018]
[0019] u∈[up,un+1]
[0020] 代入曲线参数方程即可得到当前参数u对应的曲线的插补点,参数u的取值范围为0到1,改变参数u的值可获得一系列的插补点;
[0021] 13)建立参数u和进给速度v的关系方程式:
[0022] 为了在插补过程中引入速度规划,因此需建立参数u和速度v的方程式,对于空间曲线,设v(t)为插补进给速度,位移增量ds和速度v的关系可以为:
[0023]
[0024] 则
[0025] 其中,
[0026] 且对于空间曲线,存在:
[0027] 即
[0028] 14)对于参数u,进行泰勒一阶展开:
[0029]
[0030] 其中T为插补周期,k为第k个插补周期,这样可以得到每个插补周期的插补参数u的值。
[0031] 进一步地,所述步骤(2)具体包括:
[0032] 21)根据曲线参数方程,求出各个参数u处对应的曲线曲率半径R;
[0033] 22)确定在向心加速度限制下的最大进给速度:
[0034] 在第i个插补点处,进给速度、向心加速度、曲率半径的关系为:式中的Ri是NURBS曲线在当前插补周期u=ui处的曲率半径,acmax为插补的最大向心加速度,vixmax为在当前位置基于向心加速度约束的NURBS曲线最大进给速度;
[0035] 23)确定在弓高误差限制下的最大进给速度:
[0036] NURBS曲线的插补的每一段插补是以直线替代近视圆弧的过程,在这个过程中,会引入弓高误差,在插补时用直线替代近似圆弧,ERi为弓高误差,Ri为曲率半径,Li为第i插补周期移动的弦长,Ts为插补周期,vigmax为当前周期在弓高误差限制下的最大进给速度,则它们之间存在关系式:
[0037]
[0038] 通过该关系式可以由当前插补周期曲线的曲率半径和最大弓高误差值确定弓高误差限制下的最大进给速度vigmax。
[0039] 进一步地,所述步骤(3)具体包括:
[0040] 根据参数方程和速度约束,得出NURBS曲线各插补参数u处对应的最大进给速度,然后根据各处最大进给速度变化的单调性,对NURBS曲线进行分段处理,分别求出各段的插补参数:起终点速度、加速度、参数u,设定曲线的起始和末端速度为零,最大切向加速度为atan,插补周期为Ts,曲线的最大进给速度为vM,分段点的集合为参数uFj和速度vFj(j∈[1,2...]),对NURBS曲线进行前瞻速度分段处理,则基于前瞻分段的速度规划过程如下:
[0041] 31)从参数u=0,v=0开始,在第i(i∈[2,3...])个插补点,根据递推公式 viL=v(i-1)L+atan·Ts,求其理论速度viL;
[0042] 32)若viLvM,则将vM的值赋给viL;
[0043] 33)计算当前参数u对应的基于弓高误差限制的最大速度vigmax;
[0044] 34)计算当前参数u对应的基于向心加速度限制的最大速度vixmax;
[0045] 35)比较viL、vigmax和vixmax的大小,取三者最小值viT;
[0046] 36)设当前插补点的前一个分段点对应参数uFj和速度vFj (uF1=0,vF1=0),计算数学式:
[0047] (viT-v(i-1)T)·(v(i-1)T-v(i-2)T),
[0048] 若该数学式小于零,则记录当前的参数ui和速度viT,标记为uF(j+1)和 vF(j+1),作为新的分段点,根据参数方程式求分段点uF(j+1)和uFj之间的曲线段路径长度sj;
[0049] 37)求下一个插补点的参数ui+1,重复步骤31)至步骤36)的操作,标记所有的分段点,直到参数ui=1时停止迭代;
[0050] 38)对于已经求得的分段点集合:参数uFj和速度vFj,
[0051] 若vFj
[0052] 则令
[0053] 若vFj>vF(j+1)且
[0054] 则令
[0055] 39)根据式子 得到第j个分段区间的实际运行加速度;
[0056] 310)得到最终的分段点插补参数集合,完成速度规划过程。
[0057] 相比现有技术,本发明所提供的速度规划方法,特别适用于已知若干个示教点,要求机器人末端运动轨迹平滑且运动速度及加速度无大的突变的NURBS 曲线插补的场合,可以极大地减小机器人在NURBS曲线插补时受到的冲击。

附图说明

[0058] 图1 是进给速度、向心加速度、曲率半径的关系。
[0059] 图2 是弓高误差示意图。
[0060] 图3 是前瞻分段方法的流程示意图。

具体实施方式

[0061] 下面通过具体实施例对本发明的目的作进一步详细地描述,实施例不能在此一一赘述,但本发明的实施方式并不因此限定于以下实施例。
[0062] 一种工业机器人NURBS曲线插补时的速度规划方法,包括步骤:
[0063] S1、建立NURBS曲线基于参数u和进给速度v的特征方程;
[0064] S2、建立NURBS曲线基于向心加速度和弓高误差等几何约束条件下的速度约束关系;
[0065] S3、根据机器人末端进给速度变化的单调性,对NURBS曲线进行前瞻速度分段处理,得到最终的分段点插补参数集合,完成速度规划过程。
[0066] 具体而言,所述步骤S1具体包括:
[0067] 11)建立基于参数u的NURBS曲线参数方程式:
[0068] 根据控制点坐标和NURBS曲线次数,得到曲线的参数方程为:
[0069]
[0070] 式中,{pi}为控制点,通过机器人示教得到,{wi}为权因子,{Ni,P(u)}是定义在非周期节点U矢量上的p次B样条基函数;
[0071] 12)所述p次B样条基函数{Ni,P(u)}的表达式为:
[0072]
[0073]
[0074] u∈[up,un+1]
[0075] 代入曲线参数方程即可得到当前参数u对应的曲线的插补点,参数u的取值范围为0到1,改变参数u的值可获得一系列的插补点;
[0076] 13)建立参数u和进给速度v的关系方程式:
[0077] 为了在插补过程中引入速度规划,因此需建立参数u和速度v的方程式,对于空间曲线,设v(t)为插补进给速度,位移增量ds和速度v的关系可以为:
[0078]
[0079] 则
[0080] 其中,
[0081] 且对于空间曲线,存在:
[0082] 即
[0083] 14)对于参数u,进行泰勒一阶展开:
[0084]
[0085] 其中T为插补周期,k为第k个插补周期,这样可以得到每个插补周期的插补参数u的值。
[0086] 具体而言,所述步骤S2具体包括:
[0087] S21、根据曲线参数方程,求出各个参数u处对应的曲线曲率半径R;
[0088] S22、确定在向心加速度限制下的最大进给速度:
[0089] 在第i个插补点处,进给速度、向心加速度、曲率半径的关系为:(参见附图1),式中的Ri是NURBS曲线在当前插补周期u=ui处的曲率半径,acmax为插补的最大向心加速度,vixmax为在当前位置基于向心加速度约束的NURBS曲线最大进给速度;
[0090] S23、确定在弓高误差限制下的最大进给速度:
[0091] NURBS曲线的插补的每一段插补是以直线替代近视圆弧的过程,在这个过程中,会引入弓高误差,(参见附图2)。图中Pu(i)和Pu(i+1)分别代表第i个和第i+1个插补点,在插补时用直线替代近似圆弧,ERi为弓高误差,Ri为曲率半径,Li为第i插补周期移动的弦长,Ts为插补周期,vigmax为当前周期在弓高误差限制下的最大进给速度,则它们之间存在关系式:
[0092]
[0093] 通过该关系式可以由当前插补周期曲线的曲率半径和最大弓高误差值确定弓高误差限制下的最大进给速度vigmax。
[0094] 具体而言,如图3所示,所述步骤S3具体包括:
[0095] 根据参数方程和速度约束,得出NURBS曲线各插补参数u处对应的最大进给速度,然后根据各处最大进给速度变化的单调性,对NURBS曲线进行分段处理,分别求出各段的插补参数:起终点速度、加速度、参数u,设定曲线的起始和末端速度为零,最大切向加速度为atan,插补周期为Ts,曲线的最大进给速度为vM,分段点的集合为参数uFj和速度vFj(j∈[1,2...]),对NURBS曲线进行前瞻速度分段处理,则基于前瞻分段的速度规划过程如下:
[0096] S31、从参数u=0,v=0开始,在第i(i∈[2,3...])个插补点,根据递推公式viL=v(i-1)L+atan·Ts,求其理论速度viL;
[0097] S32、若viLvM,则将vM的值赋给viL;
[0098] S33、计算当前参数u对应的基于弓高误差限制的最大速度vigmax;
[0099] S34、计算当前参数u对应的基于向心加速度限制的最大速度vixmax;
[0100] S35、比较viL、vigmax和vixmax的大小,取三者最小值viT;
[0101] S36、设当前插补点的前一个分段点对应参数uFj和速度vFj (uF1=0,vF1=0),计算数学式:
[0102] (viT-v(i-1)T)·(v(i-1)T-v(i-2)T),
[0103] 若该数学式小于零,则记录当前的参数ui和速度viT,标记为uF(j+1)和 vF(j+1),作为新的分段点,根据参数方程式求分段点uF(j+1)和uFj之间的曲线段路径长度sj;
[0104] S37、求下一个插补点的参数ui+1,重复步骤31)至步骤36)的操作,标记所有的分段点,直到参数ui=1时停止迭代;
[0105] S38、对于已经求得的分段点集合:参数uFj和速度vFj,
[0106] 若vFj
[0107] 则令
[0108] 若vFj>vF(j+1)且
[0109] 则令
[0110] S39、根据式子 得到第j个分段区间的实际运行加速度;
[0111] S310、得到最终的分段点插补参数集合,完成速度规划过程。
[0112] 本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。