CN111085995A - 一种机器人速度规划方法、装置、存储介质及机器人 - Google Patents

一种机器人速度规划方法、装置、存储介质及机器人 Download PDF

Info

Publication number
CN111085995A
CN111085995A CN201911283685.4A CN201911283685A CN111085995A CN 111085995 A CN111085995 A CN 111085995A CN 201911283685 A CN201911283685 A CN 201911283685A CN 111085995 A CN111085995 A CN 111085995A
Authority
CN
China
Prior art keywords
joint
interpolation
overrun
space
angular acceleration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911283685.4A
Other languages
English (en)
Other versions
CN111085995B (zh
Inventor
雷俊松
应坤
刘新卫
赵航
刘旭
魏佳欣
胡飞鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gree Electric Appliances Inc of Zhuhai
Original Assignee
Gree Electric Appliances Inc of Zhuhai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gree Electric Appliances Inc of Zhuhai filed Critical Gree Electric Appliances Inc of Zhuhai
Priority to CN201911283685.4A priority Critical patent/CN111085995B/zh
Publication of CN111085995A publication Critical patent/CN111085995A/zh
Application granted granted Critical
Publication of CN111085995B publication Critical patent/CN111085995B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1651Programme controls characterised by the control loop acceleration, rate control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

本发明提供一种机器人速度规划方法、装置、存储介质及机器人,所述方法包括:基于预先设定的运动参数对机器人进行笛卡尔空间下的速度规划;在每个运行周期判断机器人各关节轴是否进入角速度和/或角加速度超限区域;若是,则基于预先存储的超限数据对超限幅度最大的关节轴进行关节空间下的速度规划,得到在超限区域的关节空间下的第一插补路径;根据第一插补路径以及在超限区域的第二插补路径,得到其余关节轴的插补路径;当退出超限区域后,退出关节空间下的速度规划;读取退出时的运动学参数,进行笛卡尔空间下的速度规划,输出各关节轴插补点。本发明能使机器人满足关节最大角速度、最大角加速度约束要求运行,避免驱动器报错。

Description

一种机器人速度规划方法、装置、存储介质及机器人
技术领域
本发明涉及控制领域,尤其涉及一种机器人速度规划方法、装置、存储介质及机器人。
背景技术
目前,在工业六轴机器人领域中,考虑到插补数据实时性的要求,六轴机器人通常在笛卡尔空间下进行的速度规划未考虑各关节约束。当六轴机器人末端执行器高速运行时,各关节可能会出现因角速度、角加速度过大而造成电机转矩过大的报错现象,使得六轴机器人必须断电重启,影响工作效率。
发明内容
本发明的主要目的在于克服上述现有技术的缺陷,提供一种机器人速度规划方法、装置、存储介质及机器人,以解决现有技术中六轴机器人在笛卡尔空间下的速度规划未考虑关节角加速度约束可能出现高速运行时各关节驱动器报错的问题。
本发明一方面提供了一种机器人速度规划方法,基于预先设定的运动参数对所述机器人进行笛卡尔空间下的速度规划;在每个运行周期判断所述机器人的各关节轴是否进入角速度和/或角加速度超限区域;若进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在所述超限区域的关节空间下的第一插补路径;根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径;其中,所述第二插补路径,包括:所述超限幅度最大的关节轴在所述超限区域的笛卡尔空间下插补路径进行运动学反解至关节空间下的插补路径;当所述角速度和/或角加速度超限幅度最大的关节轴退出所述超限区域后,退出所述关节空间下的速度规划;读取退出所述关节空间下的速度规划时的运动学参数,以进行笛卡尔空间下的速度规划,并输出所述机器人的各关节轴的各插补点。
可选地,还包括:若所述机器人的各关节轴均未进入角速度和/或角加速度超限区域,则输出所述机器人各关节轴在笛卡尔空间下的插补点进行运动学反解至关节空间下的插补点。
可选地,预先存储超限数据,包括:基于预先设定的运动参数获取所述机器人各关节轴的角速度和/或角加速度;根据所述各关节轴的角速度和/或角加速度,获取角速度和/或角加速度超限区域的相应超限数据,并进行预先存储。
可选地,基于预设的运动参数获取所述机器人各关节轴的角速度和/或角加速度,包括:基于预设的运动参数进行笛卡尔空间速度规划,得到笛卡尔空间下的插补点;根据所述笛卡尔空间下的插补点计算得到关节空间下各关节轴的插补点;根据关节空间下各关节轴的插补点计算各关节轴的角速度和/或角加速度。
可选地,根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径,包括:将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,并根据所述映射关系得到其余关节轴的在所述超限区域的关节空间下的插补路径的各插补点关节位置值。
可选地,将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,包括:判断所述第一插补路径中的各插补点关节位置值
Figure BDA0002317447930000031
在第二插补路径中所落入的插补区间,其中,每两个相邻插补点
Figure BDA0002317447930000032
Figure BDA0002317447930000033
之间为一个插补区间;判断所述第一插补路径中的各插补点关节位置值
Figure BDA0002317447930000034
与构成其所落入的插补区间的两个插补点关节位置值
Figure BDA0002317447930000035
Figure BDA0002317447930000036
是否相等;若与所述两个插补点中的第一插补点关节位置值相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值
Figure BDA0002317447930000037
等于其笛卡尔空间下的插补路径中与所述第一插补点序号相同的插补点关节位置值;若与所述两个插补点关节位置值均不相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值根据以下公式得到:
Figure BDA0002317447930000038
其中,i、j表示插补点序号,m表示超限幅度最大的关节轴的轴号,k表示其余关节轴的轴号。
可选地,所述超限数据,包括:各关节插补点以及角加速度超限幅度最大关节轴的轴号、进入点关节位置值、退出点关节位置值、进入点关节角速度值、退出点关节角速度值、进入点关节角加速度值和/或退出点关节角加速度值。
本发明另一方面提供了一种机器人速度规划装置,第一速度规划单元,用于基于预先设定的运动参数对所述机器人进行笛卡尔空间下的速度规划;判断单元,用于在每个运行周期判断所述机器人的各关节轴是否进入角速度和/或角加速度超限区域;第一速度规划单元,用于若进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在所述超限区域的关节空间下的第一插补路径,以及当所述角速度和/或角加速度超限幅度最大的关节轴退出所述超限区域后,退出所述关节空间下的速度规划;第三速度规划单元,用于根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径;其中,所述第二插补路径,包括:所述超限幅度最大的关节轴在所述超限区域的笛卡尔空间下插补路径进行运动学反解至关节空间下的插补路径;第四速度规划单元,用于读取退出所述关节空间下的速度规划时的运动学参数,以进行笛卡尔空间下的速度规划;输出单元,用于输出所述机器人的各关节轴的各插补点。
可选地,所述输出单元,还用于:若所述机器人的各关节轴均未进入角速度和/或角加速度超限区域,则输出所述机器人各关节轴在笛卡尔空间下的插补点进行运动学反解至关节空间下的插补点。
可选地,还包括:超限数据存储单元,用于预先存储超限数据;所述超限数据存储单元,预先存储超限数据,包括:基于预先设定的运动参数获取所述机器人各关节轴的角速度和/或角加速度;根据所述各关节轴的角速度和/或角加速度,获取角速度和/或角加速度超限区域的相应超限数据,并进行预先存储。
可选地,所述超限数据存储单元,基于预设的运动参数获取所述机器人各关节轴的角速度和/或角加速度,包括:基于预设的运动参数进行笛卡尔空间速度规划,得到笛卡尔空间下的插补点;根据所述笛卡尔空间下的插补点计算得到关节空间下各关节轴的插补点;根据关节空间下各关节轴的插补点计算各关节轴的角速度和/或角加速度。
可选地,所述第三速度规划单元,用于根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径,包括:将所述第一插补路径中的各插补点与所述第二插补路径中的各插补点进行对比,得到相对应的插补点的映射关系,并根据所述映射关系得到其余关节轴的在所述超限区域的关节空间下的插补路径的各插补点。
可选地,所述第三速度规划单元,将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,包括:判断所述第一插补路径中的各插补点关节位置值
Figure BDA0002317447930000051
在第二插补路径中所落入的插补区间,其中,每两个相邻插补点之间为一个插补区间;判断所述第一插补路径中的各插补点关节位置值
Figure BDA0002317447930000052
与构成其所落入的插补区间的两个插补点关节位置值
Figure BDA0002317447930000053
Figure BDA0002317447930000054
是否相等;若与所述两个插补点中的第一插补点关节位置值相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值
Figure BDA0002317447930000055
等于其笛卡尔空间下的插补路径中与所述第一插补点序号相同的插补点关节位置值;若与所述两个插补点关节位置值均不相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值根据以下公式得到:
Figure BDA0002317447930000056
其中,i、j表示插补点序号,m表示超限幅度最大的关节轴的轴号,k表示其余关节轴的轴号。
可选地,所述超限数据,包括:各关节插补点以及角加速度超限幅度最大关节轴的轴号、进入点关节位置值、退出点关节位置值、进入点关节角速度值、退出点关节角速度值、进入点关节角加速度值和/或退出点关节角加速度值。
本发明又一方面提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。
本发明再一方面提供了一种机器人,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述任一所述方法的步骤。
本发明再一方面提供了一种机器人,包括前述任一所述的机器人速度规划装置。
根据本发明的技术方案,在六轴机器人未向驱动器输出插补点之前提前识别出轨迹中关节角速度、角加速度超限区域以及角加速度超限幅度最大关节轴的相关超限数据,将超限区域的相应数据进行存储,存入前瞻缓存,当六轴机器人向驱动器输出插补点时以考虑关节角加速度约束的方式运行,进行混合速度规划,避免驱动器报错;并且六轴机器人在超限区域中以满足关节最大角速度运行,可充分发挥电机性能。
根据本发明的技术方案,当进入关节角速度、角加速度超限区域,以考虑关节角加速度约束进行角加速度超限幅度最大关节轴的关节速度规划,计算出新插补点在旧插补间距上的比例,依照此比例映射出其余关节轴的新插补点;当退出关节角速度、角加速度超限区域时,重新进行笛卡尔空间下的速度规划,基于以上的混合速度规划,六轴机器人可满足关节最大角速度、最大角加速度约束要求运行,从而避免驱动器报错并充分利用电机性能。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明提供的机器人速度规划方法的一实施例的方法示意图;
图2是预先识别出轨迹中关节角速度和/或角加速度的超限区域,并存储相应的超限数据的步骤的流程示意图;
图3示出了六轴机器人运行一段含有角加速度超限路径所对应的关节角加速度图;
图4是根据本发明一个具体实施例进行速度前瞻的流程示意图;
图5是以第6关节轴为例基于预先存储的超限数据对角加速度超限幅度最大的关节轴进行关节空间下的速度规划的示意图;
图6预先识别轨迹中关节角速度和/或角加速度的超限区域,并存储相应的超限数据(速度前瞻)时六轴机器人在笛卡尔空间以及关节空间加速度超限区域(进入点N1到退出点Nn)的路程图;
图7为以超限幅度最大的关节轴6为例的第一插补路径中的各插补点与第二插补路径中的各插补点的关系图;
图8是本发明提供的机器人速度规划方法的一个具体实施例的流程示意图;
图9是六轴机器人末端执行器未考虑关节约束和已考虑关节约束的线速度对比图;
图10是六轴机器人第6关节轴未考虑关节约束和已考虑关节约束的角速度对比;
图11是六轴机器人第6关节轴未考虑关节约束和已考虑关节约束的角加速度对比图;
图12是本发明提供的机器人速度规划装置的一实施例的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1是本发明提供的机器人速度规划方法的一实施例的方法示意图。
如图1所示,根据本发明的一个实施例,所述机器人速度规划方法至少包括步骤S110、步骤S120、步骤S130、步骤S140和步骤S150。
步骤S110,基于预先设定的运动参数对所述机器人进行笛卡尔空间下的速度规划。
具体地,基于用户设定的运动参数对所述机器人进行笛卡尔空间下的速度规划,以得到机器人各关节轴的角速度和/或角加速度。
步骤S120,在每个运行周期判断所述机器人的各关节轴是否进入角速度和/或角加速度超限区域。
具体地,在每个运行周期中计算各关节轴的角速度和/或角加速度,并将计算得到的角速度和/或角加速度与所属关节轴对应的角速度和/或角加速度阈值进行比较,如果角速度和/或角加速度大于对应的角速度和/或角加速度阈值,则认为进入了角速度和/或加速度超限区域。
步骤S130,若进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在超限区域的关节空间下的第一插补路径。
其中,所述预先存储的超限数据是预先识别出的机器人的各关节轴的加速度和/或角加速度超限区域及对应的超限数据。本发明在向驱动器输出各关节的关节插补点之前,通过速度前瞻机制提前识别出轨迹中关节角速度和/或角加速度的超限区域,即预先识别出轨迹中关节角速度和/或角加速度超限区域,并存储相应的超限数据。超限数据可以存入预先配置的前瞻缓存中。
下面结合附图对本发明通过速度前瞻机制预先识别出轨迹中关节角速度和/或角加速度的超限区域并存储超限数据的步骤进行详细说明。
图2是预先识别出轨迹中关节角速度和/或角加速度的超限区域,并存储相应的超限数据的步骤的流程示意图。如图2所示,根据本发明的一个实施例,进行速度前瞻(预先存储超限数据的)具体可以包括步骤S210~步骤S220。
步骤S210,基于预先设定的运动参数获取所述机器人各关节轴的角速度和/或角加速度。
具体地,基于预设的运动参数进行笛卡尔空间速度规划,得到笛卡尔空间下的插补点;再根据所述笛卡尔空间下的插补点计算得到关节空间下各关节轴的插补点;再根据关节空间下各关节轴的插补点计算各关节轴的角速度和/或角加速度。
步骤S220,根据所述各关节轴的角速度和/或角加速度,获取角速度和/或角加速度超限区域的相应超限数据,并进行存储。
在每个运行周期判断各关节轴的角速度和/或角加速度是否超过对应阈值;即,角速度是否超过对应的角速度阈值,和/或角加速度是否超过对应的角加速度阈值;若存在角速度和/或角加速度超过对应阈值的关节轴,则存储角速度和/或角加速度超限区域的相应超限数据,并继续判断各关节轴角速度及角加速度是否小于其对应阈值,从而确定角加速度超限退出点,若小于其对应阈值,则为相应关节轴的超限区域退出点。若各关节轴的角速度和/或角加速度均未超过对应阈值,则结束当前运行周期的速度前瞻。
所述超限数据,包括:各关节插补点以及角加速度超限幅度最大关节轴的轴号、角加速度超限进入点关节位置值、角加速度超限退出点关节位置值、角加速度超限进入点关节角速度值、角加速度超限退出点关节角速度值、角加速度超限进入点关节角加速度值和/或角加速度超限退出点关节角加速度值。
可选地,若只出现角速度超限(角加速度未超限),存储的超限数据包括:各关节插补点以及角速度超限幅度最大关节轴的轴号、角速度超限进入点关节位置值、角速度超限退出点关节位置值、角速度超限进入点关节角速度值、角速度超限退出点关节角速度值、角速度超限进入点关节角加速度值、角速度超限退出点关节角加速度值。
可选地,若只出现角速度超限并且角加速度超限,存储的超限数据包括:各关节插补点以及角加速度超限幅度最大关节轴的轴号、角加速度超限进入点关节位置值、角加速度超限退出点关节位置值、角加速度超限进入点关节角速度值、角加速度超限退出点关节角速度值、角加速度超限进入点关节角加速度值、角加速度超限退出点关节角加速度值。
图3示出了六轴机器人运行一段含有角加速度超限路径所对应的关节角加速度图。图3中角加速度阈值为2000°/s2,关节轴4的角加速度曲线和关节轴6的角加速度曲线存在超过角加速度阈值的区域。关节轴6为角加速度超限幅度最大关节轴,角加速度超限幅度最大关节轴关节轴6的角加速度超限进入点N1和角加速度超限退出点Nn
图4是根据本发明一个具体实施例进行速度前瞻的流程示意图。下面再结合图4详细说明本发明预先识别出轨迹中关节角速度和/或角加速度超限区域,并存储相应的超限数据的具体流程。
步骤S21,六轴机器人读取运行程序,完成运行程序的解析与规划,使用插补算法计算笛卡尔空间下的插补点(路径点)。
步骤S22,根据笛卡尔空间下插补点计算关节空间下各关节轴插补点。
步骤S23,通过关节空间下各关节轴插补点计算各关节轴角速度及角加速度。
步骤S24,判定各关节轴角速度及角加速度是否超过其对应阈值,若未超过对应阈值,则跳转至步骤S8;若超过对应阈值,则跳转至步骤S5。
步骤S25,将超限区域的相应超限数据存入前瞻缓存。
步骤S26,判定角加速度超限的关节轴角速度及角加速度是否小于其对应阈值,从而确定角加速度超限退出点,若大于对应阈值,则跳转至步骤S5;若小于对应阈值,即退出超限区域,则跳转至步骤S7。
步骤S27,计算超限区域的总路程。
步骤S28,结束当前周期的速度前瞻。
至此,可以得到相应的前瞻缓存数据即所述预先存储的超限数据。
若判断进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在超限区域的关节空间下的第一插补路径。
具体地,可以使用S型加减速规划、梯形加减速规划等基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴在超限区域进行关节空间下的速度规划。所使用的超限数据具体可以包括:各关节插补点、角加速度超限幅度最大关节轴的进入点关节位置值、角加速度超限幅度最大关节轴的退出点关节位置值、角加速度超限幅度最大关节轴的进入点关节角速度值、角加速度超限幅度最大关节轴的退出点关节角速度值、角加速度超限幅度最大关节轴的进入点关节角加速度值和/或角加速度超限幅度最大关节轴的退出点关节角加速度值。
例如,机器人算法中的轨迹规划所使用的是“S”型运动曲线,插补周期为1ms,角加速度超限幅度最大关节轴为第6关节,机器人关节轴6在超限区域走过的关节路程AB(从角加速度超限幅度最大关节轴的进入点关节位置值到角加速度超限幅度最大关节轴的退出点关节位置值),参考图5所示,根据第6关节轴的角速度阈值、角加速度阈值等参数将路程AB按照1ms的插补周期离散成无数个小线段,每段位移为ΔS,每个小点即为关节空间下生成的角加速度超限幅度最大关节轴的插补点,最终得到所述超限幅度最大的关节轴在超限区域的关节空间下的第一插补路径。
若所述机器人的各关节轴均未进入角速度和/或角加速度超限区域,则输出所述机器人各关节轴在笛卡尔空间下的插补点进行运动学反解至关节空间下的插补点。
步骤S140,根据所述超限幅度最大的关节轴在超限区域的关节空间下的第一插补路径,以及所述超限幅度最大的关节轴在超限区域的第二插补路径,得到其余关节轴在超限区域的关节空间下的插补路径。
其中,所述第二插补路径,包括:所述超限幅度最大的关节轴在所述超限区域的笛卡尔空间下插补路径进行运动学反解至关节空间下的插补路径;也就是说,根据基于预先存储的超限数据对角速度或角加速度超限幅度最大的关节轴在超限区域的路径进行关节空间下的速度规划而得到的角速度或角加速度超限幅度最大的关节轴的关节空间下的第一插补路径,与进行笛卡尔空间下速度规划得到的超限幅度最大的关节轴的在超限区域的关节空间下的第二插补路径,得到其余关节轴的在超限区域的路径关节空间下的插补路径。具体地,将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,根据所述映射关系得到其余关节轴的在超限区域的关节空间下的插补路径。
如图6所示为预先存储超限数据(速度前瞻)时六轴机器人在笛卡尔空间以及关节空间加速度超限区域(进入点N1到退出点Nn)的路程图。每个运行周期生成的笛卡尔空间下的第二插补路径与关节空间下的第一插补路径存在一一对应关系:超限区域的进入点N1到退出点Nn六轴机器人末端执行器在笛卡尔空间所经过的路径可表示为:
S1,S2,S3......Sn-2,Sn-1,Sn
其中i=1,2,......,n,与之对应的超限区域的进入点N1到退出点Nn六轴机器人关节空间下各关节所走过的路径(第二插补路径)可表示为:
Figure BDA0002317447930000131
其中
Figure BDA0002317447930000132
表示关节位置值,k表示第k个关节轴,i=1,2,......,n,i表示第i个插补点,以第6关节轴加速度超限为例,基于预先存储的超限数据对第6关节轴进行关节空间下速度规划,生成的插补路径(第一插补路径)可表示为:
Figure BDA0002317447930000133
其中i=1,2,......,n。
第一插补路径中的各插补点关节位置值与第二插补路径中的各插补点关节位置值的关系图可参考图7所示,图7为以超限幅度最大的关节轴(关节轴6)为例,圆点为(笛卡尔空间下的插补点反解至关节空间下的)第二插补路径中的插补点,三角形为(关节空间下的)第一插补路径中的插补点,为求映射比例并求解其余各关节轴的关节空间下的插补点关节位置值,需求出第一插补路径中的插补点在第二插补路径的位置,例如包括:第一插补路径中的插补点在第二插补路径中所落入的插补区间(每两个相邻插补点及其之间的区间为一个插补区间)。
具体地,判断超限幅度最大的关节轴的第一插补路径中的各插补点关节位置值
Figure BDA0002317447930000141
(i表示第i个插补点,m表示关节轴轴号,即第m个关节轴)在第二插补路径中所落入的插补区间
Figure BDA0002317447930000142
其中,每两个相邻插补点之间为一个插补区间;判断第一插补路径中的各插补点关节位置值
Figure BDA0002317447930000143
与构成其所落入的插补区间的两个插补点关节位置值
Figure BDA0002317447930000144
Figure BDA0002317447930000145
(j表示第j个插补点)是否相等;若与所述两个插补点中的第一插补点关节位置值(
Figure BDA0002317447930000146
Figure BDA0002317447930000147
)相等,则其余关节轴的第一插补路径中相应插补点关节位置值
Figure BDA0002317447930000148
等于其第二插补路径中与所述第一插补点序号相同的插补点关节位置值,即,
Figure BDA0002317447930000149
Figure BDA00023174479300001410
若与所述两个插补点关节位置值均不相等,则其余关节轴的第一插补路径中相应插补点关节位置值根据以下公式得到:
Figure BDA00023174479300001411
例如,以关节轴6为超限幅度最大的关节轴为例,其中,为方便描述,基于预先存储的超限数据得到的超限幅度最大的关节轴的关节空间下的第一插补路径及第一插补路径中的各插补点关节位置值,下文称为“新插补路径”、“新插补点”,进行笛卡尔空间下速度规划再通过运动学反解得到的所述超限幅度最大的关节轴的关节空间下的第二插补路径及第二插补路径中的各插补点,下文称为“原插补路径”、“原插补点”。
1)判定关节轴6的新插补点
Figure BDA0002317447930000151
落入原插补路径的哪一个区间;即判断该插补点落入哪两个原插补点的构成的区间
Figure BDA0002317447930000152
2)判定新插补点关节位置值
Figure BDA0002317447930000153
是否等于原插补点关节位置值
Figure BDA0002317447930000154
若是,则与关节轴6插补点
Figure BDA0002317447930000155
(顺序)对应的其余五个关节轴的新插补点
Figure BDA0002317447930000156
表示为:
Figure BDA0002317447930000157
3)判定新插补点关节位置值
Figure BDA0002317447930000158
是否等于原插补点关节位置值
Figure BDA0002317447930000159
若是,则与第6关节轴插补点
Figure BDA00023174479300001510
(顺序)对应的其余五个关节轴的新插补点关节位置值
Figure BDA00023174479300001511
表示为:
Figure BDA00023174479300001512
4)判定新插补点关节位置值
Figure BDA00023174479300001513
落入了原插补点
Figure BDA00023174479300001514
Figure BDA00023174479300001515
之间,则用
Figure BDA00023174479300001516
Figure BDA00023174479300001517
来表示
Figure BDA00023174479300001518
在此区间的映射关系,则可使用如下表达式求出与第6关节轴插补点
Figure BDA00023174479300001519
对应的其余五个关节轴的新插补点关节位置值:
Figure BDA00023174479300001520
其中k=1,2,3,4,5,k表示对应的关节轴1、2、3、4、5。
将超限幅度最大的关节轴在关节空间下速度规划出的插补点映射至其余关节轴,各关节轴合成的笛卡尔轨迹可以保证机器人按照用户设定的路径运行,比如走一段直线。
步骤S150,当所述角速度和/或角加速度超限幅度最大的关节轴退出所述超限区域后,退出所述关节空间下的速度规划。
具体地,判断所述超限幅度最大的关节轴的角速度和/或角加速度是否小于对应的角速度阈值和/或角加速度阈值,若小于角加速度阈值则退出关节空间速度规划;若不小于继续进行关节空间下速度规划。
步骤S160,读取退出所述关节空间下的速度规划时的运动学参数,以进行笛卡尔空间下的速度规划,并输出所述机器人的各关节轴的各插补点。
退出关节空间速度规划后,读取退出关节空间速度规划运行周期时的运动学参数,并基于此参数进行笛卡尔空间速度规划;所述运动学参数具体可以包括:退出关节空间速度规划后的线速度和/或线加速度,例如此实例中,六轴机器人读取退出关节空间速度规划运行周期时的末端执行器的线速度、线加速度等参数,并用于进行笛卡尔空间速度规划,从而得到各关节轴的插补点,最后输出各关节轴的插补点并结束当前周期。
图8是本发明提供的机器人速度规划方法的一个具体实施例的流程示意图。下面再结合图8详细说明本发明的机器人速度规划方法。
步骤S11、六轴机器人完成速度前瞻后正常向驱动器输出插补点时,首先基于用户设定的运动参数进行笛卡尔空间速度规划。
步骤S12、六轴机器人每运行周期判定是否进入加速度超限区域,即判定是否达到如图5中的进入点N1,若未进入,则跳转至步骤S17输出各关节轴插补点并结束当前周期判定;若进入,则跳转至步骤S13。
步骤S13、基于前瞻缓存数据,对角加速度超限幅度最大关节轴进行关节空间下速度规划;例如角加速度超限幅度最大关节轴为第6关节轴,基于前瞻缓存数据对第6关节轴进行关节空间下速度规划。
步骤S14、通过速度前瞻求出的角加速度超限幅度最大关节轴插补点和关节空间下速度规划生成的角加速度超限幅度最大关节轴插补点求得映射关系,并根据此映射关系求出其余关节轴的关节插补点。
步骤S15、判定是否退出超限区域,若未超出则跳转至步骤S13;若超出则退出超限区域,不再进行关节空间下速度规划;本实施例中判定第6关节轴的角加速度是否小于角加速度阈值,若小于角加速度阈值,则退出关节空间速度规划;若不小于则跳转至步骤S13,继续进行关节空间下速度规划。
步骤S16、六轴机器人读取退出关节空间速度规划运行周期时的运动学参数,并基于此参数进行笛卡尔空间速度规划;例如,六轴机器人读取退出关节空间速度规划运行周期时末端执行器的线速度、线加速度等参数,并用于进行笛卡尔空间速度规划。
步骤S17、输出各关节轴插补点,并结束当前运行周期。
具体实施案例
以六轴机器人运行一段含有角加速度超限区间的直线为例,首先定义直线的起点、终点,如下表1所示:
笛卡尔坐标 起点 终点
X轴/mm 888.2516 888.2516
Y轴/mm -159.7883 160.2111
Z轴/mm 1110.7136 1110.7136
A角/° 85.6351 85.6352
B角/° -122.7193 -122.7193
C角/° 90.4731 90.4731
表1
定义六轴机器人末端执行器的运动参数,包括线速度阈值、线加速度阈值以及线加加速度值,如下表2所示:
Figure BDA0002317447930000181
表2
以关节轴6角加速度超限为例,定义关节轴6运动参数(其余关节轴参数不再列出),包括关节轴角速度阈值、关节轴角加速度阈值以及关节轴角加加速度值,如下表3所示:
Figure BDA0002317447930000182
表2
图9是六轴机器人末端执行器未考虑关节约束和已考虑关节约束的线速度对比图。图10是六轴机器人第6关节轴未考虑关节约束和已考虑关节约束的角速度对比。图11是六轴机器人第6关节轴未考虑关节约束和已考虑关节约束的角加速度对比图。由图10和图11可见,使用本发明技术方案进行混合速度规划保证了关节轴6的角加速度、角速度约束在角加速度阈值和角速度阈值以内,避免因输出理论角加速度值过大造成驱动器报错,并且以满足关节轴最大角速度运行,使得电机被合理利用。
图12是本发明提供的机器人速度规划装置的一实施例的结构框图。如图12所示,所述机器人速度规划装置100包括第一速度规划单元110、判断单元120、第二速度规划单元130、第三速度规划单元140、第四速度规划单元150、输出单元160。
第一速度规划单元110用于基于预先设定的运动参数对所述机器人进行笛卡尔空间下的速度规划。具体地,基于用户设定的运动参数对所述机器人进行笛卡尔空间下的速度规划,以得到机器人各关节轴的角速度和/或角加速度。
判断单元120用于在每个运行周期判断所述机器人的各关节轴是否进入角速度和/或角加速度超限区域。
具体地,判断单元120在每个运行周期中计算各关节轴的角速度和/或角加速度,并将计算得到的角速度和/或角加速度与所属关节轴对应的角速度和/或角加速度阈值进行比较,如果角速度和/或角加速度大于对应的角速度和/或角加速度阈值,则认为进入了角速度和/或加速度超限区域。
第二速度规划单元130用于若进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在所述超限区域的关节空间下的第一插补路径,以及当所述角速度和/或角加速度超限幅度最大的关节轴退出所述超限区域后,退出所述关节空间下的速度规划。
其中,所述预先存储的超限数据是预先识别出的机器人的各关节轴的加速度和/或角加速度超限区域及对应的超限数据。本发明在向驱动器输出各关节的关节插补点之前,通过速度前瞻机制提前识别出轨迹中关节角速度和/或角加速度的超限区域,即预先识别出轨迹中关节角速度和/或角加速度超限区域,并存储相应的超限数据。超限数据可以存入预先配置的前瞻缓存中。
可选地,所述装置还包括超限数据存储单元170,用于预先存储超限数据,即进行速度前瞻,预先识别出轨迹中关节角速度和/或角加速度超限区域,并存储相应的超限数据。
所述超限数据存储单元,预先存储超限数据具体可以包括:基于预先设定的运动参数获取所述机器人各关节轴的角速度和/或角加速度;根据所述各关节轴的角速度和/或角加速度,获取角速度和/或角加速度超限区域的相应超限数据,并进行预先存储。
具体地,基于预设的运动参数进行笛卡尔空间速度规划,得到笛卡尔空间下的插补点;再根据所述笛卡尔空间下的插补点计算得到关节空间下各关节轴的插补点;再根据关节空间下各关节轴的插补点计算各关节轴的角速度和/或角加速度。在每个运行周期判断各关节轴的角速度和/或角加速度是否超过对应阈值;即,角速度是否超过对应的角速度阈值,和/或角加速度是否超过对应的角加速度阈值;若存在角速度和/或角加速度超过对应阈值的关节轴,则存储角速度和/或角加速度超限区域的相应超限数据,并继续判断各关节轴角速度及角加速度是否小于其对应阈值,从而确定角加速度超限退出点,若小于其对应阈值,则为相应关节轴的超限区域退出点。
所述超限数据,包括:各关节插补点以及角加速度超限幅度最大关节轴的轴号、角加速度超限进入点关节位置值、角加速度超限退出点关节位置值、角加速度超限进入点关节角速度值、角加速度超限退出点关节角速度值、角加速度超限进入点关节角加速度值和/或角加速度超限退出点关节角加速度值。
可选地,若只出现角速度超限(角加速度未超限),存储的超限数据包括:各关节插补点以及角速度超限幅度最大关节轴的轴号、角速度超限进入点关节位置值、角速度超限退出点关节位置值、角速度超限进入点关节角速度值、角速度超限退出点关节角速度值、角速度超限进入点关节角加速度值、角速度超限退出点关节角加速度值。
可选地,若只出现角速度超限并且角加速度超限,存储的超限数据包括:各关节插补点以及角加速度超限幅度最大关节轴的轴号、角加速度超限进入点关节位置值、角加速度超限退出点关节位置值、角加速度超限进入点关节角速度值、角加速度超限退出点关节角速度值、角加速度超限进入点关节角加速度值、角加速度超限退出点关节角加速度值。
图3示出了六轴机器人运行一段含有角加速度超限路径所对应的关节角加速度图。图3中角加速度阈值为2000°/s2,关节轴4的角加速度曲线和关节轴6的角加速度曲线存在超过角加速度阈值的区域。关节轴6为角加速度超限幅度最大关节轴,角加速度超限幅度最大关节轴关节轴6的角加速度超限进入点N1和角加速度超限退出点Nn
图4是根据本发明一个具体实施例进行速度前瞻的流程示意图。下面再结合图4详细说明本发明预先识别出轨迹中关节角速度和/或角加速度超限区域,并存储相应的超限数据的具体流程。
步骤S21,六轴机器人读取运行程序,完成运行程序的解析与规划,使用插补算法计算笛卡尔空间下的插补点。
步骤S22,根据笛卡尔空间下插补点计算关节空间下各关节轴插补点。
步骤S23,通过关节空间下各关节轴插补点计算各关节轴角速度及角加速度。
步骤S24,判定各关节轴角速度及角加速度是否超过其对应阈值,若未超过对应阈值,则跳转至步骤S8;若超过对应阈值,则跳转至步骤S5。
步骤S25,将超限区域的相应超限数据存入前瞻缓存。
步骤S26,判定角加速度超限的关节轴角速度及角加速度是否小于其对应阈值,从而确定角加速度超限退出点,若大于对应阈值,则跳转至步骤S5;若小于对应阈值,即退出超限区域,则跳转至步骤S7。
步骤S27,计算超限区域的总路程。
步骤S28,结束当前周期的速度前瞻。
至此,可以得到相应的前瞻缓存数据即所述预先存储的超限数据。
若判断单元120判断进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在超限区域的关节空间下的第一插补路径。
具体地,可以使用S型加减速规划、梯形加减速规划等对预先存储的超限数据中的角速度和/或角加速度超限幅度最大的关节轴在超限区域进行关节空间下的速度规划。所使用的超限数据具体可以包括:各关节插补点、角加速度超限幅度最大关节轴的进入点关节位置值、角加速度超限幅度最大关节轴的退出点关节位置值、角加速度超限幅度最大关节轴的进入点关节角速度值、角加速度超限幅度最大关节轴的退出点关节角速度值、角加速度超限幅度最大关节轴的进入点关节角加速度值和/或角加速度超限幅度最大关节轴的退出点关节角加速度值。
例如,机器人算法中的轨迹规划所使用的是“S”型运动曲线,插补周期为1ms,角加速度超限幅度最大关节轴为第六关节,机器人关节轴6在超限区域走过的关节路程AB(从角加速度超限幅度最大关节轴的进入点关节位置值到角加速度超限幅度最大关节轴的退出点关节位置值),参考图5所示,根据第6关节轴的角速度阈值、角加速度阈值等参数将路程AB按照1ms的插补周期离散成无数个小线段,每段位移为ΔS,每个小点即为关节空间下生成的角加速度超限幅度最大关节轴的插补点,最终得到所述超限幅度最大的关节轴在超限区域的关节空间下的第一插补路径。
第三速度规划单元140用于根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径。
其中,所述第二插补路径,包括:所述超限幅度最大的关节轴在所述超限区域的笛卡尔空间下插补路径进行运动学反解至关节空间下的插补路径;也就是说,第三速度规划单元140根据基于预先存储的超限数据对角速度或角加速度超限幅度最大的关节轴在超限区域的路径进行关节空间下的速度规划而得到的角速度或角加速度超限幅度最大的关节轴的关节空间下的第一插补路径,与进行笛卡尔空间下速度规划得到的超限幅度最大的关节轴的在超限区域的关节空间下的第二插补路径,得到其余关节轴的在超限区域的路径关节空间下的插补路径。具体地,将所述第一插补路径中的各插补点与所述第二插补路径中的各插补点进行对比,得到相对应的插补点的映射关系,根据所述映射关系得到其余关节轴的在超限区域的关节空间下的插补路径。
如图6所示为预先存储超限数据(速度前瞻)时六轴机器人在笛卡尔空间以及关节空间加速度超限区域(进入点N1到退出点Nn)的路程图。每个运行周期生成的笛卡尔空间下的第二插补路径与关节空间下的第一插补路径存在一一对应关系:超限区域的进入点N1到退出点Nn六轴机器人末端执行器在笛卡尔空间所经过的路径可表示为:
S1,S2,S3......Sn-2,Sn-1,Sn
其中i=1,2,......,n,与之对应的超限区域的进入点N1到退出点Nn六轴机器人关节空间下各关节所走过的路径(第二插补路径)可表示为:
Figure BDA0002317447930000231
其中
Figure BDA0002317447930000232
表示关节位置值,k表示第k个关节轴,i=1,2,......,n,i表示第i个插补点,以第6关节轴加速度超限为例,基于预先存储的超限数据对第6关节轴进行关节空间下速度规划,生成的插补路径(第一插补路径)可表示为:
Figure BDA0002317447930000241
其中i=1,2,......,n。
第一插补路径中的各插补点关节位置值与第二插补路径中的各插补点关节位置值的关系图可参考图7所示,图7为以超限幅度最大的关节轴(关节轴6)为例,圆点为(笛卡尔空间下的插补点反解至关节空间下的)第二插补路径中的插补点,三角形为(关节空间下的)第一插补路径中的插补点,为求映射比例并求解其余各关节轴的关节空间下的插补点关节位置值,需求出第一插补路径中的插补点在第二插补路径的位置,例如包括:第一插补路径中的插补点在第二插补路径中所落入的插补区间(每两个相邻插补点及其之间的区间为一个插补区间)。
具体地,判断超限幅度最大的关节轴的第一插补路径中的各插补点关节位置值
Figure BDA0002317447930000242
(i表示第i个插补点,m表示关节轴轴号,即第m个关节轴)在第二插补路径中所落入的插补区间
Figure BDA0002317447930000243
其中,每两个相邻插补点之间为一个插补区间;判断第一插补路径中的各插补点
Figure BDA0002317447930000244
与构成其所落入的插补区间的两个插补点关节位置值
Figure BDA0002317447930000245
Figure BDA0002317447930000246
(j表示第j个插补点)是否相等;若与所述两个插补点中的第一插补点(
Figure BDA0002317447930000247
Figure BDA0002317447930000248
)相等,则其余关节轴的第一插补路径中相应插补点关节位置值
Figure BDA0002317447930000249
等于其第二插补路径中与所述第一插补点序号相同的插补点关节位置值,即,
Figure BDA00023174479300002410
Figure BDA00023174479300002411
Figure BDA00023174479300002412
若与所述两个插补点关节位置值均不相等,则其余关节轴的第一插补路径中相应插补点关节位置值根据以下公式得到:
Figure BDA00023174479300002413
例如,以关节轴6为超限幅度最大的关节轴为例,其中,为方便描述,基于预先存储的超限数据得到的超限幅度最大的关节轴的关节空间下的第一插补路径及第一插补路径中的各插补点关节位置值,下文称为“新插补路径”、“新插补点”,进行笛卡尔空间下速度规划再通过运动学反解得到的所述超限幅度最大的关节轴的关节空间下的第二插补路径及第二插补路径中的各插补点,下文称为“原插补路径”、“原插补点”。
1)判定关节轴6的新插补点
Figure BDA0002317447930000251
落入原插补路径的哪一个区间;即判断该插补点落入哪两个原插补点的构成的区间
Figure BDA0002317447930000252
2)判定新插补点关节位置值
Figure BDA0002317447930000253
是否等于原插补点关节位置值
Figure BDA0002317447930000254
若是,则与关节轴6插补点
Figure BDA0002317447930000255
(顺序)对应的其余五个关节轴的新插补点
Figure BDA0002317447930000256
表示为:
Figure BDA0002317447930000257
3)判定新插补点关节位置值
Figure BDA0002317447930000258
是否等于原插补点关节位置值
Figure BDA0002317447930000259
若是,则与第6关节轴插补点
Figure BDA00023174479300002510
(顺序)对应的其余五个关节轴的新插补点关节位置值
Figure BDA00023174479300002511
表示为:
Figure BDA00023174479300002512
4)判定新插补点
Figure BDA00023174479300002513
落入了原插补点
Figure BDA00023174479300002514
Figure BDA00023174479300002515
之间,则用
Figure BDA00023174479300002516
Figure BDA00023174479300002517
来表示
Figure BDA00023174479300002518
在此区间的映射关系,则可使用如下表达式求出与第6关节轴插补点
Figure BDA00023174479300002519
对应的其余五个关节轴的新插补点关节位置值:
Figure BDA00023174479300002520
其中k=1,2,3,4,5,k表示对应的关节轴1、2、3、4、5。
将超限幅度最大的关节轴在关节空间下速度规划出的插补点映射至其余关节轴,各关节轴合成的笛卡尔轨迹可以保证机器人按照用户设定的路径运行,比如走一段直线。
当所述角速度和/或角加速度超限幅度最大的关节轴退出所述超限区域后,第三速度规划单元140退出所述关节空间下的速度规划。具体地,判断所述超限幅度最大的关节轴的角速度和/或角加速度是否小于对应的角速度阈值和/或角加速度阈值,若小于角加速度阈值则退出关节空间速度规划;若不小于继续进行关节空间下速度规划。
第四速度规划单元150用于读取退出所述关节空间下的速度规划时的运动学参数,以进行笛卡尔空间下的速度规划。具体地,第三速度规划单元140退出关节空间速度规划后,第四速度规划单元150读取退出关节空间速度规划运行周期时的运动学参数,并基于此参数进行笛卡尔空间速度规划;所述运动学参数具体可以包括:退出关节空间速度规划后的线速度和/或线加速度,例如此实例中,六轴机器人读取退出关节空间速度规划运行周期时的末端执行器的线速度、线加速度等参数,并用于进行笛卡尔空间速度规划,从而得到各关节轴的插补点并结束当前周期。
输出单元160用于输出所述机器人的各关节轴的各插补点。第三速度规划单元140进行笛卡尔空间速度规划,从而得到各关节轴的插补点,输出单元16输出各关节轴的插补点并结束当前周期。进一步地,若所述机器人的各关节轴均未进入角加速度和/或角加速度超限区域,则输出所述机器人各关节轴在笛卡尔空间下的插补点进行运动学反解至关节空间下的插补点。
本发明还提供对应于所述机器人速度规划方法的一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。
本发明还提供对应于所述机器人速度规划方法的一种机器人,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述任一所述方法的步骤。
本发明还提供对应于所述机器人速度规划装置的一种机器人,包括前述任一所述的机器人速度规划装置。
据此,根据本发明提供的技术方案,在六轴机器人未向驱动器输出插补点之前提前识别出轨迹中关节角速度、角加速度超限区域以及角加速度超限幅度最大关节轴的相关超限数据,将超限区域的相应数据进行存储,存入前瞻缓存,当六轴机器人向驱动器输出插补点时以考虑关节角加速度约束的方式运行,进行混合速度规划,避免驱动器报错;并且六轴机器人在超限区域中以满足关节最大角速度运行,可充分发挥电机性能。
根据本发明提供的技术方案,当进入关节角速度、角加速度超限区域,以考虑关节角加速度约束进行角加速度超限幅度最大关节轴的关节速度规划,计算出新插补点在旧插补间距上的比例,依照此比例映射出其余关节轴的新插补点;当退出关节角速度、角加速度超限区域时,重新进行笛卡尔空间下的速度规划,基于以上的混合速度规划,六轴机器人可满足关节最大角速度、最大角加速度约束要求运行,从而避免驱动器报错并充分利用电机性能。
本文中所描述的功能可在硬件、由处理器执行的软件、固件或其任何组合中实施。如果在由处理器执行的软件中实施,那么可将功能作为一或多个指令或代码存储于计算机可读媒体上或经由计算机可读媒体予以传输。其它实例及实施方案在本发明及所附权利要求书的范围及精神内。举例来说,归因于软件的性质,上文所描述的功能可使用由处理器、硬件、固件、硬连线或这些中的任何者的组合执行的软件实施。此外,各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为控制装置的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

Claims (17)

1.一种机器人速度规划方法,其特征在于,
基于预先设定的运动参数对所述机器人进行笛卡尔空间下的速度规划;
在每个运行周期判断所述机器人的各关节轴是否进入角速度和/或角加速度超限区域;
若进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在所述超限区域的关节空间下的第一插补路径;
根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径;其中,所述第二插补路径,包括:所述超限幅度最大的关节轴在所述超限区域的笛卡尔空间下插补路径进行运动学反解至关节空间下的插补路径;
当所述角速度和/或角加速度超限幅度最大的关节轴退出所述超限区域后,退出所述关节空间下的速度规划;
读取退出所述关节空间下的速度规划时的运动学参数,以进行笛卡尔空间下的速度规划,并输出所述机器人的各关节轴的各插补点。
2.根据权利要求1所述的方法,其特征在于,还包括:
若所述机器人的各关节轴均未进入角速度和/或角加速度超限区域,则输出所述机器人各关节轴在笛卡尔空间下的插补点进行运动学反解至关节空间下的插补点。
3.根据权利要求1所述的方法,其特征在于,预先存储超限数据,包括:
基于预先设定的运动参数获取所述机器人各关节轴的角速度和/或角加速度;
根据所述各关节轴的角速度和/或角加速度,获取角速度和/或角加速度超限区域的相应超限数据,并进行预先存储。
4.根据权利要求3所述的方法,其特征在于,基于预设的运动参数获取所述机器人各关节轴的角速度和/或角加速度,包括:
基于预设的运动参数进行笛卡尔空间速度规划,得到笛卡尔空间下的插补点;
根据所述笛卡尔空间下的插补点计算得到关节空间下各关节轴的插补点;
根据关节空间下各关节轴的插补点计算各关节轴的角速度和/或角加速度。
5.根据权利要求1-4任一项所述的方法,其特征在于,根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径,包括:
将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,并根据所述映射关系得到其余关节轴的在所述超限区域的关节空间下的插补路径的各插补点关节位置值。
6.根据权利要求5所述的方法,其特征在于,将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,包括:
判断所述第一插补路径中的各插补点
Figure FDA0002317447920000021
在第二插补路径中所落入的插补区间,其中,每两个相邻插补点
Figure FDA0002317447920000022
Figure FDA0002317447920000023
之间为一个插补区间;
判断所述第一插补路径中的各插补点关节位置值
Figure FDA0002317447920000024
与构成其所落入的插补区间的两个插补点关节位置值
Figure FDA0002317447920000025
Figure FDA0002317447920000026
是否相等;
若与所述两个插补点中的第一插补点关节位置值相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值
Figure FDA0002317447920000031
等于其笛卡尔空间下的插补路径中与所述第一插补点序号相同的插补点关节位置值;
若与所述两个插补点关节位置值均不相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值根据以下公式得到:
Figure FDA0002317447920000032
其中,i、j表示插补点序号,m表示超限幅度最大的关节轴的轴号,k表示其余关节轴的轴号。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述超限数据,包括:
各关节插补点以及角加速度超限幅度最大关节轴的轴号、进入点关节位置值、退出点关节位置值、进入点关节角速度值、退出点关节角速度值、进入点关节角加速度值和/或退出点关节角加速度值。
8.一种机器人速度规划装置,其特征在于,
第一速度规划单元,用于基于预先设定的运动参数对所述机器人进行笛卡尔空间下的速度规划;
判断单元,用于在每个运行周期判断所述机器人的各关节轴是否进入角速度和/或角加速度超限区域;
第一速度规划单元,用于若进入所述超限区域,则基于预先存储的超限数据对角速度和/或角加速度超限幅度最大的关节轴进行关节空间下的速度规划,得到所述超限幅度最大的关节轴在所述超限区域的关节空间下的第一插补路径,以及当所述角速度和/或角加速度超限幅度最大的关节轴退出所述超限区域后,退出所述关节空间下的速度规划;
第三速度规划单元,用于根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径;其中,所述第二插补路径,包括:所述超限幅度最大的关节轴在所述超限区域的笛卡尔空间下插补路径进行运动学反解至关节空间下的插补路径;
第四速度规划单元,用于读取退出所述关节空间下的速度规划时的运动学参数,以进行笛卡尔空间下的速度规划;
输出单元,用于输出所述机器人的各关节轴的各插补点。
9.根据权利要求8所述的装置,其特征在于,所述输出单元,还用于:
若所述机器人的各关节轴均未进入角速度和/或角加速度超限区域,则输出所述机器人各关节轴在笛卡尔空间下的插补点进行运动学反解至关节空间下的插补点。
10.根据权利要求8或9所述的装置,其特征在于,还包括:超限数据存储单元,用于预先存储超限数据;
所述超限数据存储单元,预先存储超限数据,包括:
基于预先设定的运动参数获取所述机器人各关节轴的角速度和/或角加速度;
根据所述各关节轴的角速度和/或角加速度,获取角速度和/或角加速度超限区域的相应超限数据,并进行预先存储。
11.根据权利要求10所述的装置,其特征在于,所述超限数据存储单元,基于预设的运动参数获取所述机器人各关节轴的角速度和/或角加速度,包括:
基于预设的运动参数进行笛卡尔空间速度规划,得到笛卡尔空间下的插补点;
根据所述笛卡尔空间下的插补点计算得到关节空间下各关节轴的插补点;
根据关节空间下各关节轴的插补点计算各关节轴的角速度和/或角加速度。
12.根据权利要求8-11任一项所述的装置,其特征在于,
所述第三速度规划单元,用于根据所述第一插补路径以及所述超限幅度最大的关节轴在所述超限区域的第二插补路径,得到其余关节轴在所述超限区域的关节空间下的插补路径,包括:
将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,并根据所述映射关系得到其余关节轴的在所述超限区域的关节空间下的插补路径的各插补点关节位置值。
13.根据权利要求12所述的装置,其特征在于,所述第三速度规划单元,将所述第一插补路径中的各插补点关节位置值与所述第二插补路径中的各插补点关节位置值进行对比,得到相对应的插补点关节位置值的映射关系,包括:
判断所述第一插补路径中的各插补点关节位置值
Figure FDA0002317447920000051
在第二插补路径中所落入的插补区间,其中,每两个相邻插补点
Figure FDA0002317447920000052
Figure FDA0002317447920000053
之间为一个插补区间;
判断所述第一插补路径中的各插补点关节位置值
Figure FDA0002317447920000054
与构成其所落入的插补区间的两个插补点关节位置值
Figure FDA0002317447920000055
Figure FDA0002317447920000056
是否相等;
若与所述两个插补点中的第一插补点关节位置值相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值
Figure FDA0002317447920000057
等于其笛卡尔空间下的插补路径中与所述第一插补点序号相同的插补点关节位置值;
若与所述两个插补点关节位置值均不相等,则其余关节轴的关节空间下的插补路径中相应插补点关节位置值根据以下公式得到:
Figure FDA0002317447920000061
其中,i、j表示插补点序号,m表示超限幅度最大的关节轴的轴号,k表示其余关节轴的轴号。
14.根据权利要求8-13任一项所述的装置,其特征在于,所述超限数据,包括:
各关节插补点以及角加速度超限幅度最大关节轴的轴号、进入点关节位置值、退出点关节位置值、进入点关节角速度值、退出点关节角速度值、进入点关节角加速度值和/或退出点关节角加速度值。
15.一种存储介质,其特征在于,其上存储有计算机程序,所述程序被处理器执行时实现权利要求1-7任一所述方法的步骤。
16.一种机器人,其特征在于,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-7任一所述方法的步骤。
17.一种机器人,其特征在于,包括如权利要求8-14任一所述的机器人速度规划装置。
CN201911283685.4A 2019-12-13 2019-12-13 一种机器人速度规划方法、装置、存储介质及机器人 Active CN111085995B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911283685.4A CN111085995B (zh) 2019-12-13 2019-12-13 一种机器人速度规划方法、装置、存储介质及机器人

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911283685.4A CN111085995B (zh) 2019-12-13 2019-12-13 一种机器人速度规划方法、装置、存储介质及机器人

Publications (2)

Publication Number Publication Date
CN111085995A true CN111085995A (zh) 2020-05-01
CN111085995B CN111085995B (zh) 2021-04-02

Family

ID=70395566

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911283685.4A Active CN111085995B (zh) 2019-12-13 2019-12-13 一种机器人速度规划方法、装置、存储介质及机器人

Country Status (1)

Country Link
CN (1) CN111085995B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111687822A (zh) * 2020-06-22 2020-09-22 南京航空航天大学 一种双机器人导引轨迹多空间自适应插补方法
CN112476436A (zh) * 2020-12-10 2021-03-12 广东博智林机器人有限公司 机械臂运动的速度规划方法及装置
CN112720472A (zh) * 2020-12-18 2021-04-30 珠海格力电器股份有限公司 一种机器人轨迹规划方法、装置、存储介质及机器人
CN113635306A (zh) * 2021-08-20 2021-11-12 珠海格力电器股份有限公司 机器人紧急制动方法、机器人及存储介质
CN113741478A (zh) * 2021-09-14 2021-12-03 北京超星未来科技有限公司 一种速度规划方法及系统
CN114161409A (zh) * 2021-11-08 2022-03-11 合肥欣奕华智能机器有限公司 一种控制搬运机器人运动的方法、装置和电子设备
CN114296398A (zh) * 2021-11-16 2022-04-08 中南大学 一种用于激光切割的高速高精度插补方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0543236A2 (en) * 1991-11-08 1993-05-26 Fujitsu Limited Automatic manipulator-head trajectory producing system
JP4255783B2 (ja) * 2003-07-29 2009-04-15 株式会社不二越 ロボット制御装置
CN102510793A (zh) * 2010-06-04 2012-06-20 中国科学院自动化研究所 加速度连续的机器人轨迹生成系统和方法
JP2013184233A (ja) * 2012-03-06 2013-09-19 Toyota Motor Corp ロボットおよびその軌道生成方法
CN106393106A (zh) * 2016-09-13 2017-02-15 东南大学 参数自适应密化的机器人nurbs曲线运动插补方法
CN106695787A (zh) * 2016-12-17 2017-05-24 上海新时达电气股份有限公司 一种速度规划方法
CN109434841A (zh) * 2019-01-07 2019-03-08 南京航空航天大学 一种工业机器人动态调速的全局时间最优轨迹规划方法
CN110209048A (zh) * 2019-05-20 2019-09-06 华南理工大学 基于动力学模型的机器人时间最优轨迹规划方法、设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0543236A2 (en) * 1991-11-08 1993-05-26 Fujitsu Limited Automatic manipulator-head trajectory producing system
JP4255783B2 (ja) * 2003-07-29 2009-04-15 株式会社不二越 ロボット制御装置
CN102510793A (zh) * 2010-06-04 2012-06-20 中国科学院自动化研究所 加速度连续的机器人轨迹生成系统和方法
JP2013184233A (ja) * 2012-03-06 2013-09-19 Toyota Motor Corp ロボットおよびその軌道生成方法
CN106393106A (zh) * 2016-09-13 2017-02-15 东南大学 参数自适应密化的机器人nurbs曲线运动插补方法
CN106695787A (zh) * 2016-12-17 2017-05-24 上海新时达电气股份有限公司 一种速度规划方法
CN109434841A (zh) * 2019-01-07 2019-03-08 南京航空航天大学 一种工业机器人动态调速的全局时间最优轨迹规划方法
CN110209048A (zh) * 2019-05-20 2019-09-06 华南理工大学 基于动力学模型的机器人时间最优轨迹规划方法、设备

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111687822B (zh) * 2020-06-22 2022-04-01 南京航空航天大学 一种双机器人导引轨迹多空间自适应插补方法
CN111687822A (zh) * 2020-06-22 2020-09-22 南京航空航天大学 一种双机器人导引轨迹多空间自适应插补方法
CN112476436A (zh) * 2020-12-10 2021-03-12 广东博智林机器人有限公司 机械臂运动的速度规划方法及装置
CN112476436B (zh) * 2020-12-10 2021-11-05 广东博智林机器人有限公司 机械臂运动的速度规划方法及装置
CN112720472A (zh) * 2020-12-18 2021-04-30 珠海格力电器股份有限公司 一种机器人轨迹规划方法、装置、存储介质及机器人
CN113635306B (zh) * 2021-08-20 2022-11-11 珠海格力电器股份有限公司 机器人紧急制动方法、机器人及存储介质
CN113635306A (zh) * 2021-08-20 2021-11-12 珠海格力电器股份有限公司 机器人紧急制动方法、机器人及存储介质
CN113741478A (zh) * 2021-09-14 2021-12-03 北京超星未来科技有限公司 一种速度规划方法及系统
CN113741478B (zh) * 2021-09-14 2024-02-27 北京超星未来科技有限公司 一种速度规划方法及系统
CN114161409A (zh) * 2021-11-08 2022-03-11 合肥欣奕华智能机器有限公司 一种控制搬运机器人运动的方法、装置和电子设备
CN114161409B (zh) * 2021-11-08 2024-03-15 合肥欣奕华智能机器股份有限公司 一种控制搬运机器人运动的方法、装置和电子设备
CN114296398A (zh) * 2021-11-16 2022-04-08 中南大学 一种用于激光切割的高速高精度插补方法
CN114296398B (zh) * 2021-11-16 2024-04-05 中南大学 一种用于激光切割的高速高精度插补方法

Also Published As

Publication number Publication date
CN111085995B (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN111085995B (zh) 一种机器人速度规划方法、装置、存储介质及机器人
CN108549328B (zh) 自适应速度规划方法及系统
CN104160617B (zh) 电动机控制装置
CN110316193A (zh) 预瞄距离的设置方法、装置、设备及计算机可读存储介质
US9764471B2 (en) Trajectory generation apparatus for robot to generate trajectory including curved portion
CN109683615B (zh) 机器人连续运动的路径的速度前瞻方法及机器人控制器
CN116774648B (zh) 速度规划方法、装置、机床控制系统和存储介质
JP2008523487A (ja) 数値制御機械の移動可能な機械要素の移動案内のための方法および装置
CN110147077B (zh) 一种工业机器人在空间直线运行下的余弦插补方法
US10207408B1 (en) Method to minimize collisions of mobile robotic devices
CN110355753B (zh) 机器人控制装置、机器人控制方法和存储介质
JP4667764B2 (ja) 経路設定方法
CN111604905A (zh) 关节轨迹规划的方法、装置、系统及存储介质
CN112198876B (zh) 一种适用于扫地机器人的带地图全覆盖清扫模块化控制方法
CN112720472B (zh) 一种机器人轨迹规划方法、装置、存储介质及机器人
CN114211495B (zh) 面向半导体晶圆传送机械臂的自适应轨迹优化方法及系统
KR102323069B1 (ko) 로봇 제어 장치, 로봇 제어 방법, 프로그램
CN108513636A (zh) 机器人运动控制方法及相关装置
CN109648557B (zh) 一种六轴机器人空间运动规划方法
CN110362040B (zh) 基于b样条的机器人运动轨迹规划方法
CN113942014A (zh) 轨迹生成方法及轨迹生成装置、机器人设备、存储介质
CN112428275A (zh) 机器人运动规划方法、装置、可移动机器人及存储介质
CN112650147A (zh) 一种曲率限制下的最大速度参数限制方法以及装置
JP2021026602A (ja) 移動経路生成装置
JP6929980B2 (ja) コントローラ、自動走行車システム、制御方法及びプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant