1.本发明涉及机器人运动规划技术领域,尤其涉及一种任务级多机器人协同运动规划系统与方法。
背景技术:2.任务级多机器人协同运动规划是指在确保各机器人个体子任务(作业路径)不变的前提下实现多机器人系统无碰、无冲突的协同运动规划,是大型复杂结构件机器人化制造的主要难题之一。传统的多机器人系统侧重于设定各个机器人工作空间相互独立,即,对于各机器人个体,其余机器人属于静态障碍物,每台机器人遵循严格的作业时序,按照离线编程规划作业任务,因此各机器人个体相互之间缺乏有效信息交互,存在规划效率极低、任务适应性低、空间资源占据大等问题。对于静态运动规划方法,仅需要考虑各机器人个体在固定的时间跟踪预先规划好的轨迹或静态结构化环境下的运动规划即可,通常以自由位形空间规划法、单元分解法、路径地图法、人工势场法以及概率地图和快速扩展随机树等规划方法为主。
3.然而,静态运动规划方法无法应用于具有共享工作空间的任务级多机器人系统,一是多机器人系统属于超冗余维度系统,规划变量多;二是系统中包含了环境的静态障碍物,以及各机器人个体是其余机器人的动态障碍物。
技术实现要素:4.针对上述问题,本发明提出一种任务级多机器人协同运动规划系统与方法,旨在解决具有共享工作空间的任务级多机器人系统无法应用静态运动规划方法的问题。
5.为解决上述技术问题,本发明第一方面提出一种任务级多机器人协同运动规划方法,包括以下步骤:s1,给定多机器人系统中各个机器人单体构型空间有限个无碰路径点,分别在所述构型空间中采用树生成策略进行连续采样,并且将任意两个所述无碰路径点之间的连接线进行迭代折中碰撞检测,直到所述连接线的状态间隔满足给定采样精度,在所述树生成策略对应的树结构以及所述无碰路径点的约束条件下,规划出所述多机器人系统中各个机器人单体的无碰路径;s2,确定所述多机器人系统包含的所有运动序列,以各个所述机器人单体的所述无碰路径的长度作为子运动代价,根据所述子运动代价确定所述运动序列的总运动代价,筛选出总运动代价最小的运动序列,定义为最优运动序列,构建启发式搜索算法,在所述最优运动序列的基础上给定所述启发式搜索算法初始节点、终止节点、搜索方向以及方向代价,通过设置最短路径约束条件得到各个所述机器人单体无冲突的最优运动路径。
6.在一些实施方式中,s1之前还包括s0:利用采样法对所述构型空间的随机状态进行碰撞检测,若所述随机状态含有碰撞或相交,所述随机状态定义为碰撞构型空间的状态,若所述随机状态未含有碰撞或相交,所述随机状态定义为自由构型空间的状态,从所述自
由构型空间的状态中提取所述无碰路径点。
7.在一些实施方式中,所述碰撞检测包括:有向层次包围盒对所述多机器人系统中的环境静态障碍物进行逼近,判断所述多机器人系统中任意不同的两个物体之间是否存在碰撞或相交。
8.在一些实施方式中,所述采样法的随机采样次数≥10000次。
9.在一些实施方式中,规划出所述无碰路径后,引入速度约束和加速度约束对所述无碰路径进行平滑处理。
10.在一些实施方式中,对于任意的所述初始节点,所述搜索方向有且仅有“前进”或“停止”。
11.在一些实施方式中,所述搜索方向对应的所述方向代价为:当前所有进行“前进”操作的机器人单体的运动代价的总和。
12.第二方面,一种任务级多机器人协同运动规划系统,包括:无碰路径规划单元,用于给定多机器人系统中各个机器人单体构型空间有限个无碰路径点,分别在所述构型空间中采用树生成策略进行连续采样,并且将任意两个所述无碰路径点之间的连接线进行迭代折中碰撞检测,直到所述连接线的状态间隔满足给定采样精度,在所述树生成策略对应的树结构以及所述无碰路径点的约束条件下,规划出所述多机器人系统中各个机器人单体的无碰路径;最优运动路径单元,用于确定所述多机器人系统包含的所有运动序列,以各个所述机器人单体的所述无碰路径的长度作为子运动代价,根据所述子运动代价确定所述运动序列的总运动代价,筛选出总运动代价最小的运动序列,定义为最优运动序列,构建启发式搜索算法,在所述最优运动序列的基础上给定所述启发式搜索算法初始节点、终止节点、搜索方向以及方向代价,通过设置最短路径约束条件得到各个所述机器人单体无冲突的最优运动路径。
13.第三方面,本发明提供一种任务级多机器人协同运动规划装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上任一所述方法的步骤。
14.第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述方法的步骤。
15.本发明的有益效果为:通过给定各机器人单体作业子任务的前提下,进行机器人单体相对于环境静态障碍物的无碰路径规划,实现机器人单体与环境的“无碰撞”,以及,在确保各机器人单体子任务的情况下,多机器人动态障碍物之间协同规划,以最短路径为约束条件,实现多机器人空间资源的“无冲突”,有效解决大型复杂结构件多机器人协同加工难题,提升多机器人系统的协同规划效率与任务适应性。
附图说明
16.图1为本发明实施例一公开的任务级多机器人协同运动规划方法的流程图;图2为本发明实施例一公开的任务级多机器人协同运动规划方法的架构图;图3为本发明实施例三公开的任务级多机器人协同运动规划装置的组成示意图。
具体实施方式
17.为使本发明的目的、技术方案及优点更加清楚、明确,下面结合附图和具体实施方式对本发明的内容做进一步详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
18.实施例一本实施例提出了一种任务级多机器人协同运动规划方法,通过对超冗余多机器人系统的协同运动规划问题进行解耦,将问题转换成机器人单体高维构型空间的无碰运动规划和多机器人系统的状态空间无冲突连续路径搜索两个子问题进行解决。
19.如图1所示,包括以下步骤:s0,利用采样法对多机器人系统中各机器人单体构型空间的随机状态进行碰撞检测,若随机状态含有碰撞或相交,随机状态定义为碰撞构型空间的状态,若随机状态未含有碰撞或相交,随机状态定义为自由构型空间的状态,从自由构型空间的状态中提取无碰路径点。
20.在步骤s0中,基于高速概率路径地图的机器人单体无碰运动规划方法,该方法假定多机器人系统由一个n维构型空间(维数等于系统中所有自由度之和)进行表达。一般地,假设一个多机器人系统含有n个机器人单体,则多机器人系统表示为:其中,表示第个机器人单体,机器人单体对应的构型空间为:其中,表示第个机器人单体的自由度数。
21.在步骤s0中,上述的碰撞检测包括:有向层次包围盒对多机器人系统中各个机器人单体和环境静态障碍物进行逼近,再结合层次包围盒的碰撞/相交检测算法,判断多机器人系统中任意状态下不同的两个物体(含机器人单体)之间是否存在碰撞或相交,实现系统中不同物体之间的碰撞/相交检测。在本实施例中,采样法的随机采样次数≥10000次,采样数量越大,协同规划精度越高。
22.经碰撞检测后,多机器人系统中各机器人单体的构型空间由碰撞构型空间和自由构型空间组成,表示为:。
23.s1,给定多机器人系统中各个机器人单体构型空间有限个无碰路径点,分别在构型空间中采用树生成策略进行连续采样,并且将任意两个无碰路径点之间的连接线进行迭代折中碰撞检测,直到连接线的状态间隔满足给定采样精度,在树生成策略对应的树结构以及无碰路径点的约束条件下,规划出多机器人系统中各个机器人单体的无碰路径。
24.在步骤s1中,无碰路径点至少包括2个。在规划出无碰路径后,引入速度约束和加速度约束对无碰路径进行平滑处理,使机器人单体的运动更加平稳。
25.综上,s0和s1在给定各机器人单体作业子任务的前提下,进行机器人单体相对于环境静态障碍物的无碰路径规划,实现机器人单体与环境的“无碰撞”。
26.s2,确定多机器人系统包含的所有运动序列,以各个机器人单体的无碰路径的长度作为子运动代价,根据子运动代价确定运动序列的总运动代价,筛选出总运动代价最小的运动序列,定义为最优运动序列,构建启发式搜索算法,在最优运动序列的基础上给定启发式搜索算法初始节点、终止节点、搜索方向以及方向代价,通过设置最短路径约束条件得到各个机器人单体无冲突的最优运动路径。
27.在步骤s2中,以运动代价为量化指标的多机器人运动优化级策略,并结合启发式最短路径直接搜索算法,解决多机器人运动冲突的问题。该方法针对多机器人系统中各机器人单体运动优化级的问题,即在空间资源冲突处确定各个机器人单体是前进还是等待,通过最小化多机器人系统任务时间,把各机器人单体的无碰路径的长度作为运动代价,用于衡量运动优化级。
28.假设多机器人系统含有n个机器人单体,,其中表示第个机器人单体,该系统所有运动序列组合为组,其中,每组运动序列的运动代价由确定优先级组合的运动代价减去未确定优先级组合的运动代价。一般地,运动序列整体的运动代价越低,表明该序列具有越高的运动优化级,从而确定各个机器人单体的运动优化级。例如,一个含有3个机器人单体的多机器人系统含有6组运动序列其中,以运动序列为例,其对应运动代价:其中,表示无碰路径的长度,依次类推,可以分别得到各运动序列的运动代价。
29.若运动序列的运动代价最小,则最高运动优化级为机器人单体,其次是,最后是。以运动序列为最优运动序列,构建一个维(每个维度表示一个机器人单体,)的启发式最短路径直接搜索算法,该算法的节点表示机器人单体的运动路径的序号。例如,一个多机器人系统含有3个机器人单体,各机器人运动路径点数量为,则算法的初始节点为(表示各个机器人均处于开始状
态),终止节点是(表示各个机器人均处于终止状态)。由此,该算法的目标是要从初始节点搜索出最短路径到达终止节点。
30.为了避免机器人冗余的运动,本实施例中,还可以规定算法在各个节点的只能有2个搜索方向,即对于任意的初始节点,搜索方向有且仅有“前进”或“停止”。对于3个机器人的系统而言,各个节点的搜索方向数量为,其中全为停止状态的方向被忽略。此外,各个搜索方向对应的方向代价为,当前所有进行“前进”操作的机器人单体的运动代价的总和。
31.具体的架构如图2所示。综上,s2是在确保各机器人单体子任务的情况下,多机器人动态障碍物之间协同规划,以最短路径为约束条件,实现多机器人空间资源的“无冲突”,有效解决大型复杂结构件多机器人协同加工难题,提升多机器人系统的协同规划效率与任务适应性。
32.实施例二本实施例提供了一种任务级多机器人协同运动规划系统,包括:构型空间检测单元,用于利用采样法对多机器人系统的构型空间的随机状态进行碰撞检测,若随机状态含有碰撞或相交,随机状态定义为碰撞构型空间的状态,若随机状态未含有碰撞或相交,随机状态定义为自由构型空间的状态,从自由构型空间的状态中提取无碰路径点;无碰路径规划单元,用于给定多机器人系统中各个机器人单体构型空间有限个无碰路径点,分别在构型空间中采用树生成策略进行连续采样,并且将任意两个无碰路径点之间的连接线进行迭代折中碰撞检测,直到连接线的状态间隔满足给定采样精度,在树生成策略对应的树结构以及无碰路径点的约束条件下,规划出多机器人系统中各个机器人单体的无碰路径;最优运动路径单元,用于确定多机器人系统包含的所有运动序列,以各个机器人单体的无碰路径的长度作为子运动代价,根据子运动代价确定运动序列的总运动代价,筛选出总运动代价最小的运动序列,定义为最优运动序列,构建启发式搜索算法,在最优运动序列的基础上给定启发式搜索算法初始节点、终止节点、搜索方向以及方向代价,通过设置最短路径约束条件得到各个机器人单体无冲突的最优运动路径。
33.具体的计算方法参阅实施例一记载的方法。
34.实施例三参阅图3,本实施例提供的任务级多机器人协同运动规划装置包括处理器、存储器以及存储在该存储器中并可在所述处理器上运行的计算机程序,例如任务级多机器人协同运动规划程序。该处理器执行所述计算机程序时实现上述实施例一步骤,例如图1所示的步骤。
35.示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述任务级多机器人协同运动规划装置中的执行过程。
36.所述任务级多机器人协同运动规划装置可以是桌上型计算机、笔记本、掌上电脑
及云端服务器等计算设备。所述任务级多机器人协同运动规划装置可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图3仅仅是任务级多机器人协同运动规划装置的示例,并不构成任务级多机器人协同运动规划装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述任务级多机器人协同运动规划装置还可以包括输入输出设备、网络接入设备、总线等。
37.所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic) 、现成可编程门阵列(fieldprogrammable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
38.所述存储器可以是所述任务级多机器人协同运动规划装置的内部存储元,例如任务级多机器人协同运动规划装置的硬盘或内存。所述存储器也可以是所述任务级多机器人协同运动规划装置的外部存储设备,例如所述任务级多机器人协同运动规划装置上配备的插接式硬盘,智能存储卡(smartmedia card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器还可以既包括所述任务级多机器人协同运动规划装置的内部存储单元也包括外部存储设备。所述存储器用于存储所述计算机程序以及所述任务级多机器人协同运动规划装置所需的其他程序和数据。所述存储器还可以用于暂时地存储已经输出或者将要输出的数据。
39.实施例四本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现实施例一所述方法的步骤。
40.所示计算机可读介质可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理再以电子方式获得所述程序,然后将其存储在计算机存储器中。
41.上述实施例只是为了说明本发明的技术构思及特点,其目的是在于让本领域内的普通技术人员能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡是根据本发明内容的实质所做出的等效的变化或修饰,都应涵盖在本发明的保护范围内。