一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

机械臂多关节轨迹时间同步方法、系统及存储介质与流程

2022-02-21 08:26:28 来源:中国专利 TAG:


1.本技术涉及工业机器人运动控制及伺服电机速度同步控制领域,尤其涉及一种机械臂多关节轨迹时间同步方法、系统及存储介质。


背景技术:

2.关节插补功能是机械臂的控制系统的一个重要功能,它的效果是使机械臂从初始位姿运行到终点位姿,运行过程中需满足机械臂的多个关节从特定的初始角度运行到特定的终点角度。在机械臂多关节运动中,各个关节的初始角度和终点角度的差值一般是不一样的,而机械臂的关节插补功能要求各个关节在初始角度同时启动,在终点角度同时停止,现有的机械臂通常采用经典的s曲线规划算法,但在规划不同的角度行程时,并不能使得机械臂各个关节的运动时间同步。


技术实现要素:

3.本技术旨在至少解决现有技术中存在的技术问题之一。为此,本技术提出一种机械臂多关节轨迹时间同步方法、系统及存储介质,能够有效解决机械臂各个关节运动时间不同步的问题。
4.为解决上述技术问题,本发明提出如下技术方案:
5.本技术第一方面实施例提供了一种机械臂多关节轨迹时间同步方法,包括:
6.根据机械臂的初始位姿与终点位姿,得到所述机械臂的每一关节对应的角度参数;
7.将所述角度参数、每一所述关节预设的速度参数输入至预设的s曲线规划算法,计算得到每一所述关节对应的初始轨迹参数;
8.根据所述初始轨迹参数,得到每一所述关节对应的运行时间;
9.根据所述运行时间,确定最大运行时间、与所述最大运行时间对应的第一关节;
10.根据所述最大运行时间,对所述关节对应的所述初始轨迹参数进行修正,得到所述关节对应的修正轨迹参数,根据所述修正轨迹参数将每一所述关节的运行时间均设置为所述最大运行时间。
11.根据本技术第一方面实施例的机械臂多关节轨迹时间同步方法,至少具有如下有益效果:在本技术实施例的多关节轨迹时间同步方法中,根据机械臂的初始位姿和终点位姿计算得到机械臂每一关节对应的角度参数,结合预设的速度参数,并经过s曲线规划算法计算得到每一关节的初始轨迹参数,根据初始轨迹参数确定的最大运行时间对关节的初始轨迹参数进行修正,并根据修正后的轨迹参数进行插补,修正每个关节的运行状态,实现了机械臂的各个关节同时启动,同时停止的需求,解决了机械臂各个关节运动时间不同步的问题,提高了机械臂的工作效率。
12.根据本技术第一方面的一些实施例,所述初始轨迹参数包括速度轨迹类型,所述速度轨迹类型包括七段式速度轨迹、五段式速度轨迹、六段式速度轨迹、四段式速度轨迹;
13.所述根据所述最大运行时间,对所述关节对应的所述初始轨迹参数进行修正,得到所述关节对应的修正轨迹参数,根据所述修正轨迹参数将每一所述关节的运行时间均设置为所述最大运行时间,包括:
14.判断所述机械臂的关节对应的速度轨迹类型;
15.若所述速度轨迹类型为所述七段式速度轨迹,根据最大运行时间和第一修正轨迹公式组对所述初始轨迹参数进行修正,得到所述关节对应的所述修正轨迹参数;
16.若所述速度轨迹类型为所述五段式速度轨迹,根据最大运行时间和第二修正轨迹公式组对所述初始轨迹参数进行修正,得到所述关节对应的所述修正轨迹参数;
17.若所述速度轨迹类型为所述六段式速度轨迹,根据最大运行时间和第三修正轨迹公式组对所述初始轨迹参数进行修正,得到所述关节对应的所述修正轨迹参数;
18.若所述速度轨迹类型为所述四段式速度轨迹,根据最大运行时间和第四修正轨迹公式组对所述初始轨迹参数进行修正,得到所述关节对应的所述修正轨迹参数。
19.根据本技术第一方面的一些实施例,所述第一修正轨迹公式组具体为:
[0020][0021]
a=jmi;
[0022]
b=am
i2-ami×
jmi×
t
max

[0023]
c=jmi×
ami×

i-αi|;
[0024][0025][0026]
t3i′
=t1i′

[0027][0028]
t5i′
=t3i′

[0029]
t6i′
=t2i′

[0030]
t7i′
=t1i′

[0031]
ami′
=jmi×
t
max

[0032]
wmi′
=(t1i′
t2i′
)
×
ami′

[0033]
jmi′
=jmi;
[0034]
pi′
=pi;
[0035]
其中,所述t
max
表征所述最大运行时间,所述i表征第i个关节,所述αi表征第i个关节的初始角度,所述βi表征第i个关节的初始角度,jmi、ami与pi为所述初始轨迹参数,所述jmi表征第i个关节的可达最大加加速度,所述ami表征第i个关节的可达最大加速度,所述pi表征第i个关节的速度轨迹类型;v、t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为所述修正轨迹参数,所述t1i′
表征第i个关节的修正加加速时间,所述t2i′
表征第i个关节的修正匀加速时间,所述t3i′
表征第i个关节的修正加减速时间,所述t4i′
表征第i个关节的修正匀速时间,所述t5i′
表征第i个关节的修正减加速时间,所述t6i′
表征第i个关节的修正匀减速时间,所述t7i′
表征第i个关节的修正减减速时间,所述ami′
表征第i个关节的修正可达最大加速度,所述wmi′
表征第i个关节的修正可达最大速度,所述jmi′
表征第i个关
节的修正可达最大加加速度,所述pi′
表征轨迹类型。
[0036]
根据本技术第一方面的一些实施例,所述第二修正轨迹公式组具体为:
[0037][0038][0039]
b=-t
max

[0040]
c=0;
[0041]
d=|β
i-αi|;
[0042][0043]
t2i′
=0;
[0044]
t3i′
=t1i′

[0045][0046]
t5i′
=t3i′

[0047]
t6i′
=0;
[0048]
t7i′
=t1i′

[0049]
ami′
=jmi′×
t1i′

[0050]
jmi′
=jmi;
[0051]
pi′
=pi;
[0052]
其中,所述t
max
表征所述最大运行时间,所述i表征第i个关节,所述αi表征第i个关节的初始角度,所述βi表征第i个关节的初始角度,jmi与pi为所述初始轨迹参数,所述jmi表征第i个关节的可达最大加加速度,所述pi表征第i个关节的速度轨迹类型;t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为所述修正轨迹参数,其中,所述wmi′
是由卡尔丹公式所解得的,所述wmi′
表征第i个关节的修正可达最大速度,所述t1i′
表征第i个关节的修正加加速时间,所述t2i′
表征第i个关节的修正匀加速时间,所述t3i′
表征第i个关节的修正加减速时间,所述t4i′
表征第i个关节的修正匀速时间,所述t5i′
表征第i个关节的修正减加速时间,所述t6i′
表征第i个关节的修正匀减速时间,所述t7i′
表征第i个关节的修正减减速时间,所述ami′
表征第i个关节的修正可达最大加速度,所述jmi′
表征第i个关节的修正可达最大加加速度,所述pi′
表征轨迹类型。
[0053]
根据本技术第一方面的一些实施例,所述第三修正轨迹公式组具体为:
[0054][0055][0056]
a=2
×
t
max

[0057]
b=jmi×
t
max2

[0058]
c=4
×

i-αi|
×
jmi;
[0059]
[0060]
t3i′
=t1i′

[0061]
t4i′
=0;
[0062]
t5i′
=t3i′

[0063]
t6i′
=0;
[0064]
t7i′
=t1i′

[0065]
ami′
=jmi×
t
max

[0066]
wmi′
=(t1i′
t2i′
)
×
ami′

[0067]
jmi′
=jmi;
[0068]
pi′
=pi;
[0069]
其中,所述t
max
表征所述最大运行时间,所述i表征第i个关节,所述αi表征第i个关节的初始角度,所述βi表征第i个关节的初始角度,jmi与pi为所述初始轨迹参数,所述jmi表征第i个关节的可达最大加加速度,所述pi表征第i个关节的速度轨迹类型;t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为所述修正轨迹参数,所述t1i′
表征第i个关节的修正加加速时间,所述t2i′
表征第i个关节的修正匀加速时间,所述t3i′
表征第i个关节的修正加减速时间,所述t4i′
表征第i个关节的修正匀速时间,所述t5i′
表征第i个关节的修正减加速时间,所述t6i′
表征第i个关节的修正匀减速时间,所述t7i′
表征第i个关节的修正减减速时间,所述ami′
表征第i个关节的修正可达最大加速度,所述wmi′
表征第i个关节的修正可达最大速度,所述jmi′
表征第i个关节的修正可达最大加加速度,所述pi′
表征轨迹类型。
[0070]
根据本技术第一方面的一些实施例,所述第四修正轨迹公式组具体为:
[0071][0072][0073]
t2i′
=0;
[0074]
t3i′
=t1i′

[0075]
t4i′
=0;
[0076]
t5i′
=t3i′

[0077]
t6i′
=0;
[0078]
t7i′
=t1i′

[0079]
ami′
=jmi′×
t
max

[0080]
wmi′
=t1i′×
ami′

[0081]
pi′
=pi;
[0082]
其中,所述t
max
表征所述最大运行时间,所述i表征第i个关节,所述αi表征第i个关节的初始角度,所述βi表征第i个关节的初始角度,pi为所述初始轨迹参数,所述pi表征第i个关节的速度轨迹类型;t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为所述修正轨迹参数,所述jmi′
表征第i个关节的修正可达最大加加速度,所述t1i′
表征第i个关节的修正加加速时间,所述t2i′
表征第i个关节的修正匀加速时间,所述t3i′
表征第i个关节的修正加减速时间,所述t4i′
表征第i个关节的修正匀速时间,所述t5i′
表征第i个关节的修正
减加速时间,所述t6i′
表征第i个关节的修正匀减速时间,所述t7i′
表征第i个关节的修正减减速时间,所述ami′
表征第i个关节的修正可达最大加速度,所述wmi′
表征第i个关节的修正可达最大速度,所述pi′
表征轨迹类型。
[0083]
根据本技术第一方面的一些实施例,所述根据机械臂的初始位姿与终点位姿,得到所述机械臂的每一关节对应的角度参数,包括:
[0084]
根据机械臂的初始位姿与终点位姿,通过逆解算法计算得到每一关节对应的角度参数。
[0085]
根据本技术第一方面的一些实施例,所述角度参数包括初始角度和终点角度,速度参数包括极限速度、极限加速度和极限加加速度。
[0086]
本技术第二方面实施例提供了一种机械臂控制系统,其特征在于,包括:
[0087]
至少一个存储器;
[0088]
至少一个处理器;
[0089]
至少一个程序;
[0090]
所述程序被存储在所述存储器中,所述处理器执行至少一个所述程序以实现:
[0091]
如本技术第一方面任一项实施例所述的机械臂多关节轨迹时间同步方法。
[0092]
本技术第三方面实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行信号,所述计算机可执行信号用于执行:
[0093]
如本技术第一方面任一项实施例所述的机械臂多关节轨迹时间同步方法。
[0094]
本技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
[0095]
本技术的附加方面和优点结合下面附图对实施例的描述中将变得明显和容易理解,其中:
[0096]
图1为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的流程图;
[0097]
图2为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的速度轨迹类型判别流程图;
[0098]
图3为本技术一些实施例提供的七段式速度轨迹的单关节同步示意图;
[0099]
图4为本技术一些实施例提供的五段式速度轨迹的单关节同步示意图;
[0100]
图5为本技术一些实施例提供的六段式速度轨迹的单关节同步示意图;
[0101]
图6为本技术一些实施例提供的四段式速度轨迹的单关节同步示意图;
[0102]
图7为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的一个行程的算例示意图;
[0103]
图8为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的另一个行程的算例示意图;
[0104]
图9为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的另一个行程的算例示意图;
[0105]
图10为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的另一个行程的算例示意图;
[0106]
图11为本技术一些实施例提供的机械臂控制系统的模块框图。
具体实施方式
[0107]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0108]
需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0109]
在本技术的描述中,如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
[0110]
本技术的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本技术中的具体含义。
[0111]
参照图1,第一方面,本技术实施例提供了一种机械臂多关节轨迹时间同步方法,包括但不限于步骤s110、步骤s120、步骤s130、步骤s140、步骤s150。
[0112]
步骤s110,根据机械臂的初始位姿与终点位姿,得到机械臂的每一关节对应的角度参数;
[0113]
可以理解的是,机械臂的初始位姿即当前时间机械臂所处的位置和机械臂第i个关节之间的角度,机械臂的终点位姿即机械臂在运行后所要达到的位置和机械臂到达目的点之后第i个关节之间的角度。需要说明的是,机械臂的初始位姿与终点位姿随着机械臂所处的不同的动作状态而变化,并不是固定不变的,本技术的机械臂多关节轨迹时间同步算法可适应关节数不同,工作状态不同的机械臂。
[0114]
根据机械臂的初始位姿与终点位姿,通过逆解算法计算得到每一关节对应的角度参数,需要说明的是,关节的个数为n个,其中角度参数是指机械臂所有关节的初始角度序列α1,...,αn和终点角度序列β1,...,βn。具体的是,机械臂的控制系统只能让各个关节运行到达指定的角度[θ1,...,θn],但在机械臂应用中,有时需要让机械臂末端到达指定的某一个位姿[p,r],所以需要运用逆解算法使得机械臂到达指定的位置,完成指定的姿态,逆解算法ik表征为:
[0115]
ik([p,r])=[θ1,...,θn]
[0116]
其中,p表征为机械臂末端的位置,r表征为机械臂末端的姿态,逆解算法的输入为机械臂末端的位姿,逆解算法的输出为机械臂每一关节对应的角度参数,电机执行逆解算法输出的每一关节对应的角度参数的值,则机械臂移动到了指定的位姿。
[0117]
步骤s120,将角度参数、每一关节预设的速度参数输入至预设的s曲线算法;计算得到每一关节对应的初始轨迹参数;
[0118]
可以理解的是,步骤s120中,需提前给定各个关节的速度参数,即极限速度ψ1,...,ψn和极限加速度ω1,...,ωn和极限加加速度γ1,...γn,结合根据逆解算法计算得到的每个关节的初始角度和终点角度,经过经典的s曲线轨迹规划算法后,可以求出每一
关节所对应的初始轨迹参数:加加速时间t11,...,t1n、匀加速时间t21,...,t2n、加减速时间t31,...,t3n、匀速时间t41,...,t4n、减加速时间t51,...,t5n、匀减速时间t61,...,t6n、减减速时间t71,...,t7n、可达最大速度wm1,...,wmn、可达最大加速度am1,...,amn、可达最大加加速度jm1,...,jmn、速度轨迹类型p4,...,pn。
[0119]
具体的是,将机械臂的运行速度划分为若干速度段,由于标准的s曲线共有4种形式,分别为4段式、5段式、6段式与7段式,因此时间延迟也有4种形式,速度轨迹类型pn中n只能为4、5、6或者7,分别表示速度轨迹是4段式轨迹、5段式轨迹、6段式轨迹和7段式轨迹。需要说明的是:
[0120]
典型的4段s型速度曲线包括如下4段:加加速、减加速、加减速、减减速。
[0121]
典型的5段s型速度曲线包括如下5段:加加速、减加速、匀速、加减速、减减速。
[0122]
典型的6段s型速度曲线包括如下6段:加加速、匀加速、减加速、加减速、匀减速、减减速。
[0123]
典型的7段s型速度曲线包括如下7段:加加速、匀加速、减加速、匀速、加减速、匀减速、减减速。
[0124]
具体的是,s曲线轨迹规划算法是一种轨迹规划算法,在机械臂的应用中,在给出起点和终点的前提下,有时会有以下两种情况:
[0125]
(1)需要让机械臂末端沿着指定路径运动一段行程,例如直线路径,圆弧路径,在运动的同时机械臂末端的姿态也可能发生改变,姿态改变相当于一个角度路径;
[0126]
(2)单纯地让一个关节转动一段角度路径:
[0127]
如果以某种轨迹规划算法规划上述路径,那么就得到了各个关节的轨迹参数,上述路径的每一个位置点或姿态点都被加上了时间、速度、加速度(或者还有加加速度)的信息,要求机械臂末端在指定的时间信息到达该点,同时该点的位置、速度、加速度、加加速度都可以通过各个关节的轨迹参数所确定的函数表达式求得,函数表达式s表征为:
[0128]
[位置(姿态);速度;加速度;加加速度]=s(时间)
[0129]
其中,函数表达式s的因变量是时间。
[0130]
步骤s130,根据初始轨迹参数,得到每一关节对应的运行时间;
[0131]
步骤s140,根据运行时间,确定最大运行时间、与最大运行时间对应的第一关节;
[0132]
需要说明的是,通过s曲线轨迹规划算法计算得到了每一关节的加加速时间t11,...,t1n、匀加速时间t21,...,t2n、加减速时间t31,...,t3n、匀速时间t41,...,t4n、减加速时间t51,...,t5n、匀减速时间t61,...,t6n和减减速时间t71,...,t7n,计算每一关节对应的运行总时间;假设一共有n个关节,则1号关节的总运行时间为:
[0133]
t=t11 t21 t31 t41 t51 t61 t71;
[0134]
2号关节的总运行时间为:
[0135]
t=t12 t22 t32 t42 t52 t62 t72;
[0136]
以此类推,n号关节的总运行时间为:
[0137]
t=t1n t2n t3n t4n t5n t6n t7n;
[0138]
计算出机械臂每一个关节的总运行时间并确定出最大运行时间,设最大运行时间为t
max
,并设最大运行时间t
max
对应的关节为第一关节,需要说明的是,本技术的机械臂多关节轨迹时间同步方法是依次对每个关节执行修正步骤的,当算法执行至第一关节则跳过修
正步骤,因此对除第一关节的其余关节依次执行时间同步算法,即对除第一关节的其余关节对应的初始轨迹参数进行修正。
[0139]
其中时间同步算法的输入为所有关节的初始轨迹参数,即所有关节的短时s曲线轨迹参数:加加速时间t11,...,t1n、匀加速时间t21,...,t2n、加减速时间t31,...,t3n、匀速时间t41,...,t4n、减加速时间t51,...,t5n、匀减速时间t61,...,t6n、减减速时间t71,...,t7n、可达最大速度wm1,...,wmn、可达最大加速度am1,...,amn、可达最大加加速度jm1,...,jmn、速度轨迹类型p4,...,pn。
[0140]
其中时间同步算法的输出为所有关节的修正轨迹参数,即所有关节的长时s曲线轨迹参数:加加速时间t11’
,...,t1n、匀加速时间t21’
,...,t2
n’、加减速时间t31’
,...,t3
n’、匀速时间t41’
,...,t4
n’、减加速时间t51’
,...,t5
n’、匀减速时间t61’
,...,t6
n’、减减速时间t71’
,...,t7
n’、可达最大速度wm1’
,...,wm
n’、可达最大加速度am1’
,...,am
n’、可达最大加加速度jm1’
,...,jm
n’、速度轨迹类型p4′
,...,pn′

[0141]
步骤s150,根据最大运行时间,对关节对应的初始轨迹参数进行修正,得到关节对应的修正轨迹参数,根据修正轨迹参数将每一关节的运行时间均设置为最大运行时间;
[0142]
可以理解的是,步骤s150还可以包括步骤s210和步骤s220、步骤s230、步骤s240和步骤s250。
[0143]
步骤s210;判断机械臂的关节对应的速度轨迹类型;
[0144]
参照图2,图2为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的速度轨迹类型判别流程图;本技术的机械臂多关节轨迹时间同步方法根据不同关节的速度曲线匹配相应执行的算法,需要说明的是,若速度轨迹类型为七段式速度轨迹,根据最大运行时间和第一修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数,其中第一修正轨迹公式组即七段式轨迹时间同步算法;若速度轨迹类型为五段式速度轨迹,根据最大运行时间和第二修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数,其中第二修正轨迹公式组即五段式轨迹时间同步算法;若速度轨迹类型为六段式速度轨迹,根据最大运行时间和第三修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数,其中第三修正轨迹公式组即六段式轨迹时间同步算法;若速度轨迹类型为四段式速度轨迹,根据最大运行时间和第四修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数,其中第四修正轨迹公式组即四段式轨迹时间同步算法。
[0145]
步骤s220,若速度轨迹类型为七段式速度轨迹,根据最大运行时间和第一修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数。
[0146]
需要说明的是,参照图3,图3为本技术一些实施例提供的七段式速度轨迹的单关节同步示意图;其中,第一修正轨迹公式组具体为:
[0147][0148]
a=jmi;
[0149]
b=am
i2-ami×
jmi×
t
max

[0150]
c=jmi×
ami×

i-αi|;
[0151]
[0152][0153]
t3i′
=t1i′

[0154][0155]
t5i′
=t3i′

[0156]
t6i′
=t2i′

[0157]
t7i′
=t1i′

[0158]
ami′
=jmi×
t
max

[0159]
wmi′
=(t1i′
t2i′
)
×
ami′

[0160]
jmi′
=jmi;
[0161]
pi′
=pi;
[0162]
第一修正轨迹公式组依次对关节的轨迹参数进行修正;需要说明的是,机械臂一共有n个关节,其中i表征第i个关节(1≤i≤n),t
max
表征最大运行时间,αi表征第i个关节的初始角度,βi表征第i个关节的初始角度,jmi、ami与pi为初始轨迹参数,jmi表征第i个关节的可达最大加加速度,ami表征第i个关节的可达最大加速度,pi表征第i个关节的速度轨迹类型;v、t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为修正轨迹参数,v、a、b、c表征计算过程中的一个中间变量,无明确的物理意义,t1i′
表征第i个关节的修正加加速时间,t2i′
表征第i个关节的修正匀加速时间,t3i′
表征第i个关节的修正加减速时间,t4i′
表征第i个关节的修正匀速时间,t5i′
表征第i个关节的修正减加速时间,t6i′
表征第i个关节的修正匀减速时间,t7i′
表征第i个关节的修正减减速时间,ami′
表征第i个关节的修正可达最大加速度,wmi′
表征第i个关节的修正可达最大速度,jmi′
表征第i个关节的修正可达最大加加速度,pi′
表征轨迹类型。
[0163]
步骤s230,若速度轨迹类型为五段式速度轨迹,根据最大运行时间和第二修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数。
[0164]
需要说明的是,参照图4,图4为本技术一些实施例提供的五段式速度轨迹的单关节同步示意图;其中,第二修正轨迹公式组具体为:
[0165][0166][0167]
b=-t
max

[0168]
c=0;
[0169]
d=|β
i-αi|;
[0170][0171]
t2i′
=0;
[0172]
t3i′
=t1i′

[0173][0174]
t5i′
=t3i′

[0175]
t6i′
=0;
[0176]
t7i′
=t1i′

[0177]
ami′
=jmi′×
t1i′

[0178]
jmi′
=jmi;
[0179]
pi′
=pi;
[0180]
第二修正轨迹公式组依次对关节的轨迹参数进行修正;需要说明的是,机械臂一共有n个关节,其中i表征第i个关节(1≤i≤n),t
max
表征最大运行时间,αi表征第i个关节的初始角度,βi表征第i个关节的初始角度,jmi与pi为初始轨迹参数,jmi表征第i个关节的可达最大加加速度,pi表征第i个关节的速度轨迹类型;t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为修正轨迹参数,其中,wmi′
是由卡尔丹公式所解得的,wmi′
表征第i个第i个关节的修正可达最大速度,a、b、c是计算过程中的一个中间变量,无明确的物理意义,t1i′
表征第i个关节的修正加加速时间,t2i′
表征第i个关节的修正匀加速时间,t3i′
表征第i个关节的修正加减速时间,t4i′
表征第i个关节的修正匀速时间,t5i′
表征第i个关节的修正减加速时间,t6i′
表征第i个关节的修正匀减速时间,t7i′
表征第i个关节的修正减减速时间,ami′
表征第i个关节的修正可达最大加速度,jmi′
表征第i个关节的修正可达最大加加速度,pi′
表征轨迹类型。
[0181]
步骤s240,若速度轨迹类型为六段式速度轨迹,根据最大运行时间和第三修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数。
[0182]
需要说明的是,参照图5,图5为本技术一些实施例提供的六段式速度轨迹的单关节同步示意图;其中,第三修正轨迹公式组具体为:
[0183][0184][0185]
a=2
×
t
max

[0186]
b=jmi×
t
max2

[0187]
c=4
×

i-αi|
×
jmi;
[0188][0189]
t3i′
=t1i′

[0190]
t4i′
=0;
[0191]
t5i′
=t3i′

[0192]
t6i′
=0;
[0193]
t7i′
=t1i′

[0194]
ami′
=jmi×
t
max

[0195]
wmi′
=(t1i′
t2i′
)
×
ami′

[0196]
jmi′
=jmi;
[0197]
pi′
=pi;
[0198]
第三修正轨迹公式组依次对关节的轨迹参数进行修正;需要说明的是,机械臂一共有n个关节,其中i表征第i个关节(1≤i≤n),t
max
表征最大运行时间,αi表征第i个关节的
初始角度,βi表征第i个关节的初始角度,jmi与pi为初始轨迹参数,jmi表征第i个关节的可达最大加加速度,pi表征第i个关节的速度轨迹类型;t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为修正轨迹参数,t1i′
表征第i个关节的修正加加速时间,α、a、b、c是计算过程中的一个中间变量,无明确的物理意义,t2i′
表征第i个关节的修正匀加速时间,t3i′
表征第i个关节的修正加减速时间,t4i′
表征第i个关节的修正匀速时间,t5i′
表征第i个关节的修正减加速时间,t6i′
表征第i个关节的修正匀减速时间,t7i′
表征第i个关节的修正减减速时间,ami′
表征第i个关节的修正可达最大加速度,wmi′
表征第i个关节的修正可达最大速度,jmi′
表征第i个关节的修正可达最大加加速度,pi′
表征轨迹类型。
[0199]
步骤s250,若速度轨迹类型为四段式速度轨迹,根据最大运行时间和第四修正轨迹公式组对初始轨迹参数进行修正,得到关节对应的修正轨迹参数。
[0200]
需要说明的是,参照图6,图6为本技术一些实施例提供的四段式速度轨迹的单关节同步示意图;
[0201]
其中,第四修正轨迹公式组具体为:
[0202][0203][0204]
t2i′
=0;
[0205]
t3i′
=t1i′

[0206]
t4i′
=0;
[0207]
t5i′
=t3i′

[0208]
t6i′
=0;
[0209]
t7i′
=t1i′

[0210]
ami′
=jmi′×
t
max

[0211]
wmi′
=t1i′×
ami′

[0212]
pi′
=pi;
[0213]
第四修正轨迹公式组依次对关节的轨迹参数进行修正;需要说明的是,机械臂一共有n个关节,其中i表征第i个关节(1≤i≤n),t
max
表征最大运行时间,αi表征第i个关节的初始角度,βi表征第i个关节的初始角度,pi为初始轨迹参数,pi表征第i个关节的速度轨迹类型;t1i′
、t2i′
、t3i′
、t4i′
、t5i′
、t6i′
、t7i′
、ami′
、wmi′
、jmi′
与pi′
为修正轨迹参数,jmi′
表征第i个关节的修正可达最大加加速度,t1i′
表征第i个关节的修正加加速时间,t2i′
表征第i个关节的修正匀加速时间,t3i′
表征第i个关节的修正加减速时间,t4i′
表征第i个关节的修正匀速时间,t5i′
表征第i个关节的修正减加速时间,t6i′
表征第i个关节的修正匀减速时间,t7i′
表征第i个关节的修正减减速时间,ami′
表征第i个关节的修正可达最大加速度,wmi′
表征第i个关节的修正可达最大速度,pi′
表征轨迹类型。
[0214]
需要说明的是,对此关节执行完本技术的机械臂多关节轨迹时间同步方法后,对下一个关节的初始轨迹参数进行修正,如下一个关节为所选定的具有最大运行时间的第一关节,则不执行修正步骤,第一关节的各个轨迹参数不变。
[0215]
经过对除第一关节之外的其余关节对应的初始轨迹参数进行修正后,使得每个关
节的运行时间均为最大运行时间,此时时间同步算法的输出为所有关节的长时s曲线轨迹参数:加加速时间t11’
,...,t1
n’、匀加速时间t21’
,...,t2
n’、加减速时间t31’
,...,t3
n’、匀速时间t41’
,...,t4
n’、减加速时间t51’
,...,t5
n’、匀减速时间t61’
,...,t6
n’、减减速时间t71’
,...,t7
n’、可达最大速度wm1’
,...,wm
n’、可达最大加速度am1’
,...,am
n’、可达最大加加速度jm1’
,...,jm
n’、速度轨迹类型p4′
,...,pn′
。此时算法完成,将计算得到的长时s曲线轨迹参数输入到插补模块,各个关节执行插补指令并将插补指令下发到相应电机,则完成了机械臂的关节插补功能。具体的是,关节插补功能是机械臂控制系统的一个重要功能,它的效果是使机械臂从初始位姿运行到终点位姿,运行过程中需满足多个关节从特定的初始角度运行到特定的终点角度,同时,机械臂的关节插补功能要求机械臂的各个关节在初始角度同时启动,在终点角度同时停止,即做到时间同步,本技术的机械臂多关节轨迹时间同步方法将一个关节的短时s曲线轨迹运动修正错成为了长时s曲线轨迹运动,实现了机械臂各个关节同时启动,同时停止的需求。
[0216]
更具体的是,机械臂末端运动插补表示,在机械臂中需要求得每个时间点的位姿,通过逆解算法转化为关节角度值,再下发到电机执行。可以理解的是,在执行完本技术的机械臂多关节轨迹时间同步方法后,插补模块接收到输出的长时曲线轨迹参数并执行关节插补功能,使得机械臂各个关节做到启动和停止同步。
[0217]
根据本技术的一个实施例,4个角度行程同步,4个角度行程均为100;4个极限速度分别设为:10,10,40,40;4个极限加速度分别设为:5,15,15,30;4个极限加加速度分别设为20,20,20,20;
[0218]
经过时间同步算法计算后的4个角度行程分别为:
[0219]
参照图7,图7为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的一个行程的算例示意图;其中,实线表示原时间,虚线表示经过时间延长后的时间,第一个角度行程中原时间与经过时间延长后的时间均为12.25s,由此可知,在本次时间同步算法中,第一个角度行程为第一关节,本次算法是以第一个角度行程的总运行时间为最大运行时间,即除第一个角度行程的其他关节在进行时间同步算法的修正后的总运行时间都变更为最大运行时间12.25s。
[0220]
参照图8,图8为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的另一个行程的算例示意图;第二个角度行程中的原时间为11.41s,在进行时间同步算法的修正后,经过时间延长后的时间为12.25s。
[0221]
参照图9,图9为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的另一个行程的算例示意图;第三个角度行程中的原时间为5.96s,在进行时间同步算法的修正后,经过时间延长后的时间为12.25s。
[0222]
参照图10,图10为本技术一些实施例提供的机械臂多关节轨迹时间同步方法的另一个行程的算例示意图;第四个角度行程中的原时间为5.42s,在进行时间同步算法的修正后,经过时间延长后的时间为12.25s。
[0223]
因此,本技术的机械臂多关节轨迹时间同步方法结果可靠。
[0224]
第二方面,参照图11,本技术实施例提供了一种机械臂控制系统,包括:
[0225]
至少一个存储器200;
[0226]
至少一个处理器100;
[0227]
至少一个程序;
[0228]
程序被存储在存储器200中,处理器100执行至少一个程序以实现:
[0229]
如本技术第一方面任一项实施例的机械臂多关节轨迹时间同步方法。
[0230]
处理器100和存储器200可以通过总线或者其他方式连接。
[0231]
存储器200作为一种非暂态可读存储介质,可用于存储非暂态软件指令以及非暂态性可指令。此外,存储器200可以包括高速随机存取存储器200,还可以包括非暂态存储器200,例如至少一个磁盘存储器件200、闪存器件、或其他非暂态固态存储器件200。可以理解的是,存储器200可选包括相对于处理器100远程设置的存储器200,这些远程存储器200可以通过网络连接至该处理器100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0232]
处理器100通过运行存储在存储器200中的非暂态软件指令、指令以及信号,从而各种功能应用以及数据处理,即实现上述第一方面实施例的机械臂多关节轨迹时间同步方法。
[0233]
实现上述实施例的机械臂多关节轨迹时间同步方法所需的非暂态软件指令以及指令存储在存储器200中,当被处理器100执行时,执行本技术第一方面实施例的机械臂多关节轨迹时间同步方法,例如,执行以上描述的图1中的方法步骤s110至s150、图2中的方法步骤s210至s250。
[0234]
第三方面,本技术实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行信号,计算机可执行信号用于执行:
[0235]
如申请第一方面任一项实施例的机械臂多关节轨迹时间同步方法。
[0236]
例如执行以上描述的图1中的方法步骤s110至s150、图2中的方法步骤s210至s250。
[0237]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0238]
通过以上的实施方式的描述,本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在可读介质上,可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读信号、数据结构、指令模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读信号、数据结构、指令模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
[0239]
上面结合附图对本技术实施例作了详细说明,但是本技术不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本技术宗旨的前提下,做出各种变化。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献