CN114035590B - 一种机器人的轨迹规划方法、装置、设备及介质 - Google Patents
一种机器人的轨迹规划方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114035590B CN114035590B CN202111565697.3A CN202111565697A CN114035590B CN 114035590 B CN114035590 B CN 114035590B CN 202111565697 A CN202111565697 A CN 202111565697A CN 114035590 B CN114035590 B CN 114035590B
- Authority
- CN
- China
- Prior art keywords
- track
- planning
- parameter
- key value
- path planning
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000033001 locomotion Effects 0.000 claims abstract description 102
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 2
- 230000036461 convulsion Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 210000003205 muscle Anatomy 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
本申请公开了一种机器人的轨迹规划方法、装置、设备及介质,包括:获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数;基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹;基于所述目标匹配轨迹确定当前运动指令对应的规划轨迹。能够提升机器人的轨迹规划效率,并且无需用户指定重复运动指令区间,避免了用户使用复杂度的提升,进行插补时,无需等到前面的运动指令执行完,轨迹速度降为0再进行规划,避免了对机器人动作流畅度的影响。
Description
技术领域
本申请涉及机器人技术领域,特别涉及一种机器人的轨迹规划方法、装置、设备及介质。
背景技术
机器人控制系统中,轨迹规划的效率直接影响到机器人走小段轨迹比如小线段轨迹的能力。由于轨迹规划消耗的时间决定了轨迹速度的上限,所以轨迹规划的时间越长,就越影响机器人节拍,处理不好甚至可能出现卡顿现象。
一般来说,轨迹规划模块会从上层模块输入轨迹规划参数,如轨迹类型,特征点,速度,平滑等参数,然后开始做路径规划和速度规划,在实际工况中,大部分情况是重复的循环动作。所以现有的优化方案是,可以让用户指定重复运动指令区间,第一次执行区间内的运动指令时,将规划好的整个轨迹数据结构对象存储起来,等再次执行到该区间时,直接将存储的轨迹对象复制一份即可,而不需要再重新规划轨迹。但该方案需要用户指定重复运动指令区间,增加了用户的使用难度,并且,因为区间内的运动指令是一次性规划好再进行轨迹插补的,所以需要等区间前面的运动指令执行完,轨迹速度降为0后再进行规划,所以会破坏机器人动作的流畅度,降低了节拍。
发明内容
有鉴于此,本申请的目的在于提供一种机器人的轨迹规划方法、装置、设备及介质,能够提升机器人的轨迹规划效率,并且避免了用户使用复杂度的提升以及对机器人动作流畅度的影响。其具体方案如下:
第一方面,本申请公开了一种机器人的轨迹规划方法,包括:
获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数;
基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹;
基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹。
可选的,所述基于所述第一路径规划参数匹配从缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹,包括:
计算所述第一所述路径规划参数对应的第一键值;
利用所述第一键值与缓冲区中的第二键值进行匹配,以得到目标匹配键值;其中,所述第二键值为历史规划轨迹的路径规划参数对应的键值;
比对所述第一路径规划参数和第二路径规划参数;其中,所述第二路径规划参数为所述目标匹配键值对应的历史规划轨迹的路径规划参数;
将所述第二路径规划参数与所述第一路径规划参数一致的历史规划轨迹确定为目标匹配轨迹。
可选的,所述第一路径规划参数包括轨迹类型,相应的,所述计算所述第一所述路径规划参数对应的第一键值,包括:
根据所述轨迹类型,计算所述第一路径规划参数对应的第一键值。
可选的,还包括:
若没有匹配到所述目标匹配轨迹,则基于所述轨迹规划参数生成当前所述运动指令对应的当前规划轨迹,并将所述当前规划轨迹以及所述第一键值存储至所述缓冲区。
可选的,所述将当前规划轨迹以及所述第一键值存储至所述缓冲区,包括:
基于树结构,将当前规划轨迹以及所述第一键值存储至所述缓冲区。
可选的,还包括:
当所述缓冲区中的轨迹数量达到预设阈值,则删除最先存储至所述缓冲区的所述历史规划轨迹。
可选的,所述轨迹规划参数还包括第一速度规划参数;
相应的,所述基于所述目标匹配轨迹确定当前运动指令对应的规划轨迹,还包括:
对比所述第一速度规划参数与所述目标匹配轨迹的第二速度规划参数;
若不一致,则删除所述目标匹配轨迹的速度上限曲线,并利用所述第一速度规划参数重新计算速度上限曲线以得到新的速度上限曲线,基于所述新的速度上限曲线进行速度规划,得到当前所述运动指令对应的规划轨迹。
第二方面,本申请实施例一种机器人的轨迹规划装置,包括:
运动指令获取模块,用于获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数;
规划轨迹匹配模块,用于基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹;
规划轨迹确定模块,用于基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的机器人的轨迹规划方法。
第四方面,本申请公开了一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的机器人的轨迹规划方法。
可见,本申请先获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数,之后基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹,最后基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹。也即,本申请在获取到运动指令时,先基于运动指令携带的路径规划参数从缓存区匹配出目标匹配轨迹,利用这样的目标匹配轨迹确定当前运动指令的轨迹,可以复用之前的路径规划,能够提升机器人的轨迹规划效率,并且无需用户指定重复运动指令区间,避免了用户使用复杂度的提升,进行插补时,无需等到前面的运动指令执行完,轨迹速度降为0再进行规划,避免了对机器人动作流畅度的影响。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种机器人的轨迹规划方法流程图;
图2为本申请公开的一种具体的轨迹存储的数据结构示意图;
图3为本申请公开的一种具体的机器人的轨迹规划方法流程图;
图4为本申请公开的一种具体的机器人的轨迹规划方法流程图;
图5为本申请公开的一种机器人的轨迹规划装置结构示意图;
图6为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
由于在实际工况中,大部分情况是重复的循环动作。所以现有的优化方案是,可以让用户指定重复运动指令区间,第一次执行区间内的运动指令时,将规划好的整个轨迹数据结构对象存储起来,等再次执行到该区间时,直接将存储的轨迹对象复制一份即可,而不需要再重新规划轨迹。但该方案需要用户指定重复运动指令区间,增加了用户的使用难度,并且,因为区间内的运动指令是一次性规划好再进行轨迹插补的,所以需要等区间前面的运动指令执行完,轨迹速度降为0后再进行规划,所以会破坏机器人动作的流畅度,降低了节拍。为此,本申请提供了一种机器人的轨迹规划方案,能够提升机器人的轨迹规划效率,并且避免了用户使用复杂度的提升以及对机器人动作流畅度的影响。
参见图1所示,本申请实施例公开了一种机器人的轨迹规划方法,包括:
步骤S11:获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数。
其中,所述第一路径规划参数可以包括轨迹类型、特征点的坐标等,轨迹类型可以包括直线轨迹、圆弧轨迹等,特征点可以包括起点坐标、目标点坐标等。在一种具体的实施方式中,轨迹类型参数可以为预设类型标识,通过预设类型标识表示相应的轨迹类型,不同的预设类型标识对应不同的轨迹类型,当然在另一些实施例中,也可以通过其他方式设定轨迹类型参数,在此不进行限定。
步骤S12:基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹。
在具体的实施方式中,可以计算所述第一所述路径规划参数对应的第一键值;利用所述第一键值与缓冲区中的第二键值进行匹配,以得到目标匹配键值;其中,所述第二键值为历史规划轨迹的路径规划参数对应的键值;比对所述第一路径规划参数和第二路径规划参数;其中,所述第二路径规划参数为所述目标匹配键值对应的历史规划轨迹的路径规划参数;将所述第二路径规划参数与所述第一路径规划参数一致的历史规划轨迹确定为目标匹配轨迹。
可以理解的是,第一路径规划参数和第二路径规划参数均包括多个参数,多个参数均一致,则第一路径规划参数和第二路径规划参数一致。例如,对于直线轨迹,若两条轨迹的起点位置,起点姿态,目标点位置,目标点姿态,工具坐标系,工件坐标系等路径规划参数完全相同,则判定这两条轨迹是路径相同的轨迹,得到目标匹配轨迹。
也即,本申请实施例,先匹配键值,匹配到键值之后再匹配轨迹,这样,能够提升匹配效率。
并且,在具体的实施方式中,第一路径规划参数中包括轨迹类型,本申请实施例可以根据轨迹类型,计算所述第一路径规划参数对应的第一键值。也即,不同的轨迹类型对应不同的键值计算方法。
例如,通过轨迹类型参数判断为直线轨迹,则设起点坐标为(Xs,Ys,Zs),目标点坐标为(Xe,Ye,Ze),则可以定义键值K:
K=Xs+Ys+Zs+Xe+Ye+Ze;
若通过轨迹类型参数判断为圆弧轨迹,则设起点坐标为(Xs,Ys,Zs),圆弧弧长为L,则可以定义键值K:
K=Xs+Ys+Zs+L。
可以理解的是,第二键值参照同样上述方法确定,本申请实施例先计算第一路径规划参数对应的第一键值,然后利用第一键值与缓冲区中的第二键值进行匹配,将与第一键值一致的第二键值确定为目标匹配键值。
步骤S13:基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹。
进一步的,若没有匹配到所述目标匹配轨迹,则基于所述轨迹规划参数生成当前所述运动指令对应的当前规划轨迹,并将所述当前规划轨迹以及所述第一键值存储至所述缓冲区。
并且,在具体的实施方式中,可以基于树结构,将当前规划轨迹以及所述第一键值存储至所述缓冲区。
可以理解的是,如果缓冲区中存储的轨迹数量较大时,如达到1000条轨迹时,如果执行的新的运动指令不能在缓冲区中匹配到,则最多需要执行1000次匹配才能知道结果,并且每次匹配需要对比很多轨迹信息。为了提升匹配效率,本实施例可以计算每条轨迹的键值。因为不同轨迹的键值有可能相同,即一个键值有可能对应多条轨迹,所以本申请实施例中使用multimap数据结构,内部使用红黑树结构来有序存储轨迹。参见图2所示,图2为本申请实施例公开的一种具体的轨迹存储的数据结构示意图。由于使用了树结构,最多只需要log(N)(N为缓冲区大小)次对比,就可以知道匹配失败。如果匹配到了键值,则再依次对该键值对应的每条轨迹做全路径匹配,即对比各路径参数。
另外,本申请实施例,可以当所述缓冲区中的轨迹数量达到预设阈值,则删除最先存储至所述缓冲区的所述历史规划轨迹。
可以理解的是,随着运动指令的执行,缓冲区会越来越大,占用的内存会越来越多,无限制的内存占用将会导致软件崩溃。所以,需要给缓冲区大小设置一个上限,例如可以根据经验可以设置为1000。当缓冲区内轨迹数目达到上限时,考虑到最新加入到缓冲区的轨迹在不久的将来再次被执行到的几率更大,所以删除最先添加到缓冲区的轨迹。
需要指出的是,为了解决前述现有技术存在的问题,发明人在实现本申请的过程中,考虑到人体在反复执行同一个动作后,肌肉会形成记忆。之后再次做相同的动作时,肌肉会凭本能做出动作,而不再需要大脑参与或少量参与即可。类似的,可以将机器人执行过的运动指令生成的规划轨迹记录在缓冲区中,当要执行一条新的运动指令时,先通过轨迹的关键信息(如轨迹的起点,目标点等路径参数)到缓冲区中查找匹配的轨迹,如果匹配命中,则直接将命中的轨迹复制一份,然后可以进一步对比运动指令与匹配轨迹的动态参数,如果一致,则直接将复制的轨迹返回,如果不一致,则基于运动指令的动态参数进行速度规划;如果匹配失败,则再按照原来的轨迹规划流程进行轨迹规划。如此可大幅提升重复轨迹的轨迹规划效率,实际测试显示,轨迹规划效率平均提升约3倍左右。当然,在一些实施例,也可以路径参数和动态参数同时匹配,以得到匹配轨迹。
可见,本申请实施例先获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数,之后基于所述第一路径规划参数从缓冲区中匹配历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹,最后基于所述目标匹配轨迹确定当前运动指令对应的规划轨迹。也即,本申请在获取到运动指令时,先基于运动指令携带的路径规划参数从缓存区匹配出目标匹配轨迹,利用这样的目标匹配轨迹确定当前运动指令的轨迹,可以复用之前的路径规划,能够提升机器人的轨迹规划效率,并且无需用户指定重复运动指令区间,避免了用户使用复杂度的提升,进行插补时,无需等到前面的运动指令执行完,轨迹速度降为0再进行规划,避免了对机器人动作流畅度的影响。
参见图3所示,本申请实施例公开了一种具体的机器人的轨迹规划方法,包括:
步骤S21:获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数和第一速度规划参数。
在具体的实施方式中,速度规划参数可以包括速度、加速度、加加速度等动态参数。
步骤S22:基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹。
步骤S23:对比所述第一速度规划参数与所述目标匹配轨迹的第二速度规划参数。
步骤S24:若不一致,则删除所述目标匹配轨迹的速度上限曲线,并利用所述第一速度规划参数重新计算速度上限曲线以得到新的速度上限曲线,基于所述新的速度上限曲线进行速度规划,得到当前所述运动指令对应的规划轨迹。
其中,速度上限曲线为机器人按照当前运动指令对应的规划轨迹执行动作时的速度上限对应的曲线。
在具体的实施方式中,可以获取初始速度以及结束速度,并基于所述新的速度上限曲线进行速度规划,得到当前运动指令对应的规划轨迹。其中,初始速度即为上一运动指令执行完成的机器人的结束速度。
若一致,则将基于目标匹配轨迹的速度上限曲线进行速度规划。
其中,由于第一速度规划参数和第二速度规划参数均包括多个参数,全部参数一致则判定第一速度规划参数和第二速度规划参数一致,否则不一致。
需要指出的是,有时不同的运动指令可能对应的轨迹路径完全相同,而只是速度,加速度,加加速度等动态参数不同,这种情况下,不能够直接复用通过匹配路径参数所得到的目标匹配轨迹的速度上限曲线来进行速度规划,必须重新根据新的动态参数计算生成速度上限曲线。但是路径规划结果仍然是可以复用的,而不需要重新计算。所以本申请实施例使用两级匹配技术,即先进行路径参数匹配,如果匹配成功,则先复制轨迹,然后再进行一次动态参数匹配,如果匹配失败,说明动态参数变了,此时将复制好的轨迹中的速度上限曲线删除,这样之后做速度规划时,就会重新计算。这样,自适应地确定是否要重新进行速度上限曲线的计算,所以即使用户对相同路径的轨迹设定了不同的动态参数,也会在重新进行速度规划的同时节省了路径规划的规划时间。
例如,参见图4所示,本申请实施例公开了一种具体的机器人的轨迹规划方法。当获取到运动指令,则生成相应的初始轨迹对象A,该初始轨迹对象包括运动指令中携带的轨迹规划参数,尚未经路径规划和速度规划,具体可以为C++编程语言中的对象,当然,在其他的实施例中,也可以采用其他编程语言。利用轨迹规划参数中的路径规划参数生成轨迹对象A的键值,在轨迹缓冲区中查找与该键值相同的键值,如果查找到,则将轨迹对象A与查找到的键值对应的轨迹依次进行全路径匹配,也即,比对全部路径规划参数,若一致,则相匹配,例如匹配到轨迹B,进行复制轨迹B以生成轨迹C,再比对轨迹对象A的动态参数和轨迹B的动态参数,若完全相同,则输出轨迹C;如果动态参数不同,则将轨迹C的速度上限曲线删除,重新进行速度规划。若在缓冲区没有匹配到键值,或者没匹配到路径,则按照轨迹对象A中的参数进行轨迹规划,包括路径规划和速度规划,得到规划后的轨迹和轨迹对应的键值存入缓冲区,若缓冲区中的轨迹数量达到上限,则删除最早存入缓冲区的轨迹。
参见图5所示,本申请实施例公开了一种机器人的轨迹规划装置,包括:
运动指令获取模块11,用于获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数;
规划轨迹匹配模块12,用于基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹;
规划轨迹确定模块13,用于基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹。
可见,本申请实施例先获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数,之后基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹,最后基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹。也即,本申请在获取到运动指令时,先基于运动指令携带的路径规划参数从缓存区匹配出目标匹配轨迹,利用这样的目标匹配轨迹确定当前运动指令的轨迹,可以复用之前的路径规划,能够提升机器人的轨迹规划效率,并且无需用户指定重复运动指令区间,避免了用户使用复杂度的提升,进行插补时,无需等到前面的运动指令执行完,轨迹速度降为0再进行规划,避免了对机器人动作流畅度的影响。
其中,规划轨迹匹配模块12,包括:
键值计算子模块,用于计算所述第一所述路径规划参数对应的第一键值;
键值匹配子模块,用于利用所述第一键值与缓冲区中的第二键值进行匹配,以得到目标匹配键值;其中,所述第二键值为历史规划轨迹的路径规划参数对应的键值;
参数比对子模块,用于比对所述第一路径规划参数和第二路径规划参数;其中,所述第二路径规划参数为所述目标匹配键值对应的历史规划轨迹的路径规划参数;
轨迹确定子模块,用于将所述第二路径规划参数与所述第一路径规划参数一致的历史规划轨迹确定为目标匹配轨迹。
在具体的实施方式中,所述第一路径规划参数包括轨迹类型,相应的,键值计算子模块,具体用于根据轨迹类型,计算所述第一路径规划参数对应的第一键值。
进一步的,所述装置还包括:
规划轨迹生成模块,用于若规划轨迹匹配模块12没有匹配到所述目标匹配轨迹,则基于所述轨迹规划参数生成当前所述运动指令对应的当前规划轨迹;
数据存储模块,用于将所述当前规划轨迹以及所述第一键值存储至所述缓冲区。
在具体的实施方式中,所述数据存储模块,具体用于基于树结构,将当前规划轨迹以及所述第一键值存储至所述缓冲区。
另外,所述装置还包括:
当所述缓冲区中的轨迹数量达到预设阈值,则删除最先存储至所述缓冲区的所述历史规划轨迹。
在具体的实施方式中,所述轨迹规划参数还包括第一速度规划参数;
相应的,所述规划轨迹确定模块,还用于:
对比所述第一速度规划参数与所述目标匹配轨迹的第二速度规划参数;
若不一致,则删除所述目标匹配轨迹的速度上限曲线,并利用所述第一速度规划参数重新计算速度上限曲线以得到新的速度上限曲线,基于所述新的速度上限曲线进行速度规划,得到当前运动指令对应的规划轨迹。
参见图6所示,本申请实施例公开了一种电子设备20,包括处理器21和存储器22;其中,所述存储器22,用于保存计算机程序;所述处理器21,用于执行所述计算机程序,前述实施例公开的机器人的轨迹规划方法。
关于上述机器人的轨迹规划方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
并且,所述存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,存储方式可以是短暂存储或者永久存储。
另外,所述电子设备20还包括电源23、通信接口24、输入输出接口25和通信总线26;其中,所述电源23用于为所述电子设备20上的各硬件设备提供工作电压;所述通信接口24能够为所述电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;所述输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的机器人的轨迹规划方法。
关于上述机器人的轨迹规划方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种机器人的轨迹规划方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (8)
1.一种机器人的轨迹规划方法,其特征在于,包括:
获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数;
基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹;
基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹;
其中,所述第一路径规划参数包括轨迹类型;所述基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹,包括:根据所述轨迹类型,计算所述第一路径规划参数对应的第一键值;利用所述第一键值与缓冲区中的第二键值进行匹配,以得到目标匹配键值;其中,所述第二键值为历史规划轨迹的路径规划参数对应的键值;比对所述第一路径规划参数和第二路径规划参数;其中,所述第二路径规划参数为所述目标匹配键值对应的历史规划轨迹的路径规划参数;将所述第二路径规划参数与所述第一路径规划参数一致的历史规划轨迹确定为目标匹配轨迹;
并且,若通过轨迹类型参数判断为直线轨迹,则设起点坐标为(Xs,Ys,Zs),目标点坐标为(Xe,Ye,Ze),则定义键值K:K=Xs + Ys + Zs + Xe + Ye + Ze;若通过轨迹类型参数判断为圆弧轨迹,则设起点坐标为(Xs,Ys,Zs),圆弧弧长为L,则定义键值K:K=Xs + Ys + Zs +L。
2.根据权利要求1所述的机器人的轨迹规划方法,其特征在于,还包括:
若没有匹配到所述目标匹配轨迹,则基于所述轨迹规划参数生成当前所述运动指令对应的当前规划轨迹,并将所述当前规划轨迹以及所述第一键值存储至所述缓冲区。
3.根据权利要求2所述的机器人的轨迹规划方法,其特征在于,所述将所述当前规划轨迹以及所述第一键值存储至所述缓冲区,包括:
基于树结构,将当前规划轨迹以及所述第一键值存储至所述缓冲区。
4.根据权利要求1所述的机器人的轨迹规划方法,其特征在于,还包括:
当所述缓冲区中的轨迹数量达到预设阈值,则删除最先存储至所述缓冲区的所述历史规划轨迹。
5.根据权利要求1至4任一项所述的机器人的轨迹规划方法,其特征在于,所述轨迹规划参数还包括第一速度规划参数;
相应的,所述基于所述目标匹配轨迹确定当前运动指令对应的规划轨迹,还包括:
对比所述第一速度规划参数与所述目标匹配轨迹的第二速度规划参数;
若不一致,则删除所述目标匹配轨迹的速度上限曲线,并利用所述第一速度规划参数重新计算速度上限曲线以得到新的速度上限曲线,基于所述新的速度上限曲线进行速度规划,得到当前所述运动指令对应的规划轨迹。
6.一种机器人的轨迹规划装置,其特征在于,包括:
运动指令获取模块,用于获取机器人对应的运动指令;其中,所述运动指令携带所述机器人的轨迹规划参数,并且,所述轨迹规划参数包括第一路径规划参数;
规划轨迹匹配模块,用于基于所述第一路径规划参数匹配缓冲区中的历史规划轨迹,以得到与所述第一路径规划参数匹配的目标匹配轨迹;其中,所述历史规划轨迹为基于历史运动指令确定的规划轨迹;
规划轨迹确定模块,用于基于所述目标匹配轨迹确定当前所述运动指令对应的规划轨迹;
其中,规划轨迹匹配模块,包括:
键值计算子模块,用于计算所述第一路径规划参数对应的第一键值;
键值匹配子模块,用于利用所述第一键值与缓冲区中的第二键值进行匹配,以得到目标匹配键值;其中,所述第二键值为历史规划轨迹的路径规划参数对应的键值;
参数比对子模块,用于比对所述第一路径规划参数和第二路径规划参数;其中,所述第二路径规划参数为所述目标匹配键值对应的历史规划轨迹的路径规划参数;
轨迹确定子模块,用于将所述第二路径规划参数与所述第一路径规划参数一致的历史规划轨迹确定为目标匹配轨迹;
所述第一路径规划参数包括轨迹类型,相应的,键值计算子模块,具体用于根据轨迹类型,计算所述第一路径规划参数对应的第一键值;
并且,若通过轨迹类型参数判断为直线轨迹,则设起点坐标为(Xs,Ys,Zs),目标点坐标为(Xe,Ye,Ze),则定义键值K:K=Xs + Ys + Zs + Xe + Ye + Ze;若通过轨迹类型参数判断为圆弧轨迹,则设起点坐标为(Xs,Ys,Zs),圆弧弧长为L,则定义键值K:K=Xs + Ys + Zs +L。
7.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至5任一项所述的机器人的轨迹规划方法。
8.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的机器人的轨迹规划方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111565697.3A CN114035590B (zh) | 2021-12-20 | 2021-12-20 | 一种机器人的轨迹规划方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111565697.3A CN114035590B (zh) | 2021-12-20 | 2021-12-20 | 一种机器人的轨迹规划方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114035590A CN114035590A (zh) | 2022-02-11 |
CN114035590B true CN114035590B (zh) | 2023-12-29 |
Family
ID=80141014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111565697.3A Active CN114035590B (zh) | 2021-12-20 | 2021-12-20 | 一种机器人的轨迹规划方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114035590B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111530671A (zh) * | 2020-05-07 | 2020-08-14 | 佛山科学技术学院 | 一种基于喷涂系统的智能机器人喷涂方法 |
CN111844030A (zh) * | 2020-07-10 | 2020-10-30 | 珠海格力电器股份有限公司 | 插补点生成方法、装置、处理器及电子装置 |
CN112621758A (zh) * | 2020-12-28 | 2021-04-09 | 北京配天技术有限公司 | 实时在线修改示教点的方法及机器人控制设备 |
CN113552877A (zh) * | 2020-04-03 | 2021-10-26 | 发那科株式会社 | 用于机器人优化动作规划的初始参考生成 |
-
2021
- 2021-12-20 CN CN202111565697.3A patent/CN114035590B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113552877A (zh) * | 2020-04-03 | 2021-10-26 | 发那科株式会社 | 用于机器人优化动作规划的初始参考生成 |
CN111530671A (zh) * | 2020-05-07 | 2020-08-14 | 佛山科学技术学院 | 一种基于喷涂系统的智能机器人喷涂方法 |
CN111844030A (zh) * | 2020-07-10 | 2020-10-30 | 珠海格力电器股份有限公司 | 插补点生成方法、装置、处理器及电子装置 |
CN112621758A (zh) * | 2020-12-28 | 2021-04-09 | 北京配天技术有限公司 | 实时在线修改示教点的方法及机器人控制设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114035590A (zh) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108262747A (zh) | 运动轨迹规划方法、装置、机器人及存储介质 | |
CN110599874A (zh) | 机器人控制器的编程方法、装置、计算机设备和存储介质 | |
CN106239506B (zh) | 智能机器人的多模态输入数据处理方法及机器人操作系统 | |
CN112621758B (zh) | 实时在线修改示教点的方法及机器人控制设备 | |
CN114932555B (zh) | 机械臂协同作业系统及机械臂控制方法 | |
CN106845625A (zh) | 一种用于机器人的交互输出方法以及机器人 | |
CN114035590B (zh) | 一种机器人的轨迹规划方法、装置、设备及介质 | |
CN108027606A (zh) | 加工复位实现方法、编译器、机器人、数控系统及机床 | |
CN114967465A (zh) | 轨迹规划方法、装置、电子设备及存储介质 | |
CN108415773B (zh) | 一种基于融合算法的高效软硬件划分方法 | |
CN116723143B (zh) | 一种基于流量亲和性的网络靶场资源分配方法与系统 | |
Zhang et al. | Sensitivity analysis for edf scheduled arbitrary deadline real-time systems | |
US6957178B2 (en) | Incremental automata verification | |
CN105607569B (zh) | 一种将il语言转换为梯形图的方法及装置 | |
US20230221713A1 (en) | System optimal control device, system optimal control method, and program | |
Sanghrajka et al. | Headspace: incorporating action failure and character beliefs into narrative planning | |
CN115401682A (zh) | 一种基于场景化分的机械臂运动规划方法和系统 | |
JP6824127B2 (ja) | ロボット制御装置、ロボット制御方法およびロボット制御プログラム | |
Juarez-Perez et al. | Full-body behavioral path planning in cluttered environments | |
CN110948489A (zh) | 一种带电作业机器人安全工作空间限定方法及系统 | |
CN112989016B (zh) | 用于检测对话策略学习中模拟用户经验质量的方法和系统 | |
Pineda et al. | Generalizing the role of determinization in probabilistic planning | |
CN112677155A (zh) | 机器人单步运动的控制方法及控制设备、存储介质 | |
US20230019370A1 (en) | Non-transitory computer-readable medium and animation generating system | |
Juarez-Perez et al. | Fast behavioral locomotion with layered navigation meshes |
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 |