CN109901578B - 一种控制多机器人的方法、装置及终端设备 - Google Patents
一种控制多机器人的方法、装置及终端设备 Download PDFInfo
- Publication number
- CN109901578B CN109901578B CN201910154886.8A CN201910154886A CN109901578B CN 109901578 B CN109901578 B CN 109901578B CN 201910154886 A CN201910154886 A CN 201910154886A CN 109901578 B CN109901578 B CN 109901578B
- Authority
- CN
- China
- Prior art keywords
- robot
- robots
- priority
- track
- preset
- 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
Images
Abstract
本发明适用于机器人技术领域,提供了一种控制多机器人的方法、装置及终端设备。所述控制多机器人的方法,包括:当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。通过本发明,可以提高对多个机器人进行调度控制的效率。
Description
技术领域
本发明属于机器人技术领域,尤其涉及一种控制多机器人的方法、装置及终端设备。
背景技术
进入21世纪以来,在仓库、机场、制造场所等多个场合,可移动的机器人逐渐取代人工来执行诸如运输、清扫、监控等工作,从而大大降低了人工成本,提高了工作效率。
而在实际使用中,对于环境复杂的环境,如KTV、商场、餐厅、仓库等场所,现有技术难以高效率地对多台机器人进行调度,很容易出现机器人碰撞,机器人死锁等问题,使得对机器人进行调度控制的效率较低。
发明内容
有鉴于此,本发明实施例提供了一种控制多机器人的方法、装置及终端设备,可以提高对多个机器人进行调度控制的效率。
本发明实施例的第一方面提供了一种控制多机器人的方法,包括:
当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;
获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;
根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。
本发明实施例的第二方面提供了一种控制多机器人的装置,包括:
第一获取模块,用于当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;
第二获取模块,用于获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;
控制模块,用于根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。
本发明实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
本发明实施例与现有技术相比存在的有益效果是:本发明实施例中,当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。本发明实施例通过获取至少两个机器人的所述预设移动路径中出现重叠的部分的轨道信息,可以获取所述路径中重叠的部分实际的轨道情况,再结合优先级,可以分别控制所述至少两个机器人执行相应的移动操作,从而使得多个机器人能够准确、快速、合理地进行调整。本发明实施例提高了对多个机器人进行调度控制的效率,具有较高的实用性和易用性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的控制多机器人的方法的实现流程示意图;
图2是本发明实施例一提供的机器人的移动操作的示意图;
图3是本发明实施例二提供的控制多机器人的方法的实现流程示意图;
图4是本发明实施例三提供的控制多机器人的装置的示意图;
图5是本发明实施例四提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1是本发明实施例一提供的控制多机器人的方法的实现流程示意图,如图1所示该控制多机器人的方法可以包括以下步骤:
步骤S101,当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息。
本发明实施例中,所述机器人为能够移动的机器人,所述机器人的个数可以大于或等于2,具体可以根据实际应用场景进行确定,在此不作限定。示例性的,所述机器人可以包括多个预设移动路径各不完全相同的机器人,或者包括多组预设移动路径各不完全相同的机器人,其中每组机器人包括至少一个机器人,且每组机器人中的各个机器人的预设移动路径相同。所述机器人的预设移动路径出现重叠,可以指示根据所述预设移动路径,在当前之后的某一时刻,至少两个所述机器人会在所述出现重叠的部分中出现碰撞等情况。
所述预设移动路径为预先设定的移动路径。一般来说,路径包括曲线和节点,例如,路径可以对应电子地图或者预设规划中的道路、轨道等的中心线,并且连接两个及以上的节点等。所述轨道信息可以指示所述路径所对应的三维空间中的轨道的信息,其中,所述轨道也可以称为道路。示例性的,所述轨道信息可以包括轨道宽度信息、轨道优先级信息、轨道周围环境信息等等。本发明实施例中,所述轨道信息可以是预先设置的,也可以是通过诸如激光雷达、红外传感器等设备实时检测得到的。
需要说明的是,本发明实施例中,可以采用分布式控制方式来执行所述控制多机器人的方法。具体地,本发明实施例所述的控制多机器人的方法可以由所述机器人中的一个来执行,也可以由所述机器人中的至少两个分别执行。所述机器人之间可以通过预设通信方式进行通信从而获取任务、路径、控制操作等信息,并且可以相互发送控制指令,从而协调各个机器人的移动。当然,所述控制多机器人的方法也可以通过其他终端来执行。
可选的,所述获取所述预设移动路径中出现重叠的部分的轨道信息,包括:
基于预设地图轨道信息,和/或,基于激光雷达检测到的数据信息,获取所述预设移动路径中出现重叠的部分的轨道信息。
本发明实施例中,所述预设地图轨道信息可以包括预先设置的电子地图中的轨道信息。示例性的,所述电子地图可以包括一个或多个栅格,所述栅格指将指定空间分割得到的有规律的网格。其中,每个栅格可以赋值或者标识,通过所述赋值或者标识,可以指示所述栅格的状态;示例性的,所述栅格的状态可以包括空闲状态、占用状态和/或未知状态等等。
所述激光雷达(Laser Radar)是通过发射激光束来探测目标的位置、距离、速度、姿态、形状等特征量的雷达系统。通过所述激光雷达可以进行实时检测,从而可以获得所述至少两个机器人的所述预设移动路径中出现重叠的部分当前的实际轨道情况(如由于临时摆放其他物品或者轨道有调整等而导致实际轨道情况与预设情况不符),以保证所述轨道信息的准确性。此外,若结合所述预设轨道地图信息和所述激光雷达检测到的数据信息,可以将预设与实时感知相结合,使得各个机器人在路径发生重叠的冲突状况时能够做出合理的操作。
步骤S102,获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级。
本发明实施例中,每一个所述机器人所分别对应的优先级可以指示每一个所述机器人所分别对应的当前任务的紧急情况、重要情况等。所述优先级可以是用户预先设定的,也可以是所述机器人中的至少一个、或者其他终端根据每一个所述机器人所分别对应的任务、轨道、路径等信息来确定的。其中,所述优先级的表示形式可以是多样的,例如,可以通过数字来表示优先级的高低,也可以通过高、中、低等文字来表示所述优先级的高低,所述优先级的具体设置方式可以根据实际应用场景进行设置。
步骤S103,根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。
本发明实施例中,所述每一个所述机器人所分别对应的移动操作可以分别包括该机器人是否进行避让,以及若该机器人进行避让,则确定该机器人所对应的避让操作。
具体的,可以根据所述轨道信息分别判断每一个所述机器人是否进行避让,例如,若根据所述轨道宽度信息,确定所述预设移动路径中出现重叠的部分的轨道宽度大于预设宽度,则可以认为此时所预设移动路径中出现重叠的部分的轨道可以使所述机器人根据指定的规则分别沿轨道的左右两侧通过,则可以确定机器人中的第一部分机器人沿所述预设移动路径中出现重叠的部分所对应的轨道的左右两侧中的一侧进行移动,并确定所述机器人中的第二部分机器人沿所述预设移动路径中出现重叠部分所对应的轨道的左右两侧中的另一侧进行移动;而若所述根据所述轨道宽度信息,确定所述预设移动路径中出现重叠的部分的轨道宽度不大于预设宽度,则可以获取每一个所述机器人所分别对应的目标点,根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作。例如,若所述机器人中包括第一机器人和第二机器人,且所述第一机器人的优先级高于第二机器人,则获取所述第一机器人和所述第二机器人所分别对应的目标点,并根据所述目标点,确定所述第二机器人的避让点并控制所述第二机器人到达其对应的避让点,并控制所述第一机器人沿所述第一机器人所对应的预设移动路径移动;在所述第一机器人移动至指定位置后,再控制所述第二机器人由其对应的避让点移动至所述第二机器人所对应的目标点。其中,所述指定位置可以由所述第一机器人与所述第二机器人所分别对应的目标点、所述第二机器人的避让点、所述第一机器人的预设移动路径等信息来确定,例如,所述指定位置可以是所述第一机器人的目标点、所述第一机器人的预设移动路径中与所述第一机器人的目标点的距离不大于指定距离的位置等等。
可选的,所述轨道信息包括轨道宽度信息;
相应的,所述根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作,包括:
根据所述轨道宽度信息,判断所述预设移动路径中出现重叠的部分的轨道宽度是否大于预设宽度;
若所述预设移动路径中出现重叠的部分的轨道宽度不大于预设宽度,则获取每一个所述机器人所分别对应的目标点;
根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作。
本发明实施例中,根据所述轨道宽度信息,可以在不同宽度的轨道中对不同机器人执行不同的控制操作,使得对多个机器人进行调度控制的效率更高。
其中,所述预设宽度可以是预先根据所述机器人的宽度等信息进行设置。
示例性的,所述根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作,具体可以包括:比对所述至少两个机器人中每一个所述机器人的优先级高低;其中,若存在所述机器人中的第一机器人的优先级高于所述机器人中的第二机器人,则获取所述第一机器人和所述第二机器人所分别对应的目标点,并根据所述目标点,确定所述第二机器人的避让点并控制所述第二机器人到达其对应的避让点,并控制所述第一机器人沿所述第一机器人所对应的预设移动路径移动;在所述第一机器人移动至指定位置后,再控制所述第二机器人由其对应的避让点移动至所述第二机器人所对应的目标点。
可选的,所述轨道信息还包括轨道优先级信息;
相应的,所述根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作,包括:
根据所述轨道优先级信息,判断所述预设移动路径中出现重叠的部分的轨道优先级是否符合预设优先级条件;
若所述预设移动路径中出现重叠的部分的轨道优先级符合预设优先级条件,则分别确定每一个所述机器人所对应的移动操作,以使得所述机器人中,优先级较高的机器人到达对应的目标点的路径为预设路径且到达对应的目标点的耗时为预设耗时。
本发明实施例中,所述轨道优先级信息可以指示所述轨道的轨道优先级,其中,可以所述轨道的重要程度、出现碰撞的程度、路径繁忙程度等等信息来确定所述轨道优先级。此时,针对轨道优先级不同的轨道,可以采取不同的控制方式,以使得该轨道的控制方式更为合理。
其中,示例性的,所述预设移动路径中出现重叠的部分的轨道优先级符合预设优先级条件可以指所述预设移动路径中出现重叠的部分的轨道优先级高于预设轨道优先级等等。
例如,如图2所示,为所述机器人的移动操作的一种具体示例。
其中,假设所述机器人包括第一机器人和第二机器人,且所述第一机器人的优先级高于第二机器人,那么,可以将所述第二机器人的避让点设置于所述第一机器人的目标点之后,并与所述第一机器人的目标点间隔指定距离,此时,所述第一机器人到达对应的目标点的路径为预设路径且到达对应的目标点的耗时为预设耗时。此外,也可以将所述第二机器人的避让点设置于所述第一机器人与所述第二机器人的所述预设移动路径中出现重叠的部分所在的交叉口中,非重叠的部分所在的路口中的一个,即图中的其他避让点A或者其他避让点B,那么此时,所述第二机器人需要经过所述预设移动路径中出现重叠的部分,可能会导致所述第一机器人的移动受阻而使得所述第一机器人到达对应的目标点的耗时大于预设耗时。
可选的,在判断所述预设移动路径中出现重叠的部分的轨道宽度是否大于预设宽度之后,还包括:
若所述预设移动路径中出现重叠的部分的轨道宽度大于预设宽度,则根据所述轨道宽度将所述轨道划分成预设个数的子轨道;
确定所述至少两个机器人中,每一个机器人所分别对应的子轨道,并分别确定每一个机器人在所对应的子轨道中的移动操作。
本发明实施例中,由于所述预设移动路径中出现重叠的部分的轨道宽度大于预设宽度,则可以认为此时所述预设移动路径中出现重叠的部分的轨道宽度可以容许至少两个所述机器人同时通过。因此,根据所述轨道宽度将所述轨道划分成预设个数的子轨道。所述预设个数可以根据所述轨道的宽度和所述机器人的宽度来确定。进一步地,可以确定所述至少两个机器人中,每一个机器人所分别对应的子轨道,并分别确定每一个机器人在所对应的子轨道中的移动操作。此时,可以根据所述机器人的移动方向、目标点、路径等信息来确定每个机器人在所对应的子轨道中的移动操作。例如,若所述预设移动路径中出现重叠的部分的轨道宽度大于预设宽度,则确定所述机器人中的第一部分机器人沿所述预设移动路径中出现重叠的部分所对应的轨道的左右两侧中的一侧进行移动,并确定所述机器人中的第二部分机器人沿所述预设移动路径中出现重叠部分所对应的轨道的左右两侧中的另一侧进行移动。
本发明实施例通过获取至少两个机器人的所述预设移动路径中出现重叠的部分的轨道信息,可以获取所述路径中重叠的部分实际的轨道情况,再结合优先级,可以分别控制所述至少两个机器人执行相应的移动操作,从而使得多个机器人能够准确、快速、合理地进行调整。本发明实施例提高了对多个机器人进行调度控制的效率,具有较高的实用性和易用性。
在上述实施例的基础上,图3是本发明实施例二提供的控制多机器人的方法的实现流程示意图,如图3所示该控制多机器人的方法可以包括以下步骤:
步骤S301,指示至少一个所述机器人通过预设通信方式,获取除该机器人之外的其他机器人的任务信息,并根据所述任务信息确定每一个所述机器人所分别对应的优先级。
本发明实施例中,所述预设通信方式可以有多种。例如,所述预设通信方式可以是蓝牙通信、Wi-Fi通信、ZigBee通信、近场通信(Near Field Communication,NFC)数据传输、第三代移动通信技术(3rd Generation mobile communication technology,3G)数据传输、第四代移动通信技术(the 4th Generation mobile communication technology,4G)数据传输甚至第五代移动通信技术(the 5th Generation mobile communicationtechnology,5G)等等一种或多种,在此不作限定。
本发明实施例中,可以采用分布式控制方式来执行所述控制多机器人的方法。此时,所述控制多机器人的方法可以由所述机器人中的一个来执行,也可以由所述机器人中的至少两个分别执行。当然,所述控制多机器人的方法也可以通过其他终端来执行。所述第一机器人与所述第二机器人之间可以通过预设通信方式,不仅可以获取所述任务信息,还可以传输诸如优先级的信息、路径的信息、控制指令等等信息。
所述任务信息可以包括目标点、路径、速度、相关时间节点等等信息中的一种或多种。
所述根据所述任务信息确定每一个所述机器人所分别对应的优先级,包括:
根据所述任务信息,确定所述机器人中的至少一个机器人为最高优先级机器人;
根据所述最高优先级机器人分别与除所述最高优先级机器人之外的其他机器人之间的路径距离,确定除所述最高优先级机器人之外的其他机器人的优先级。
其中,示例性的,可以根据所述路径距离的远近,依次确定除所述最高优先级机器人之外的其他机器人的优先级。例如,以距离所述最高优先级机器人最近的其他机器人为第二级优先级的机器人,其中,所述第二级优先级比所述最高优先级低一级;以距离所述最高优先级机器人第二近的其他机器人为第三级优先级的机器人,以此类推。此外,也可以设置与所述最高优先级机器人的距离处于第一预设区间的其他机器人为第二级优先级,与所述最高优先级机器人的距离处于第二预设区间的其他机器人为第三级优先级等等,具体的优先级设置原则可以根据实际应用场景进行设置。
步骤S302,当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息。
步骤S303,获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级。
步骤S304,根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。
本实施例步骤S302、S303、S304与上述步骤S101、S102、S103相同,具体可参见步骤S101、S102、S103相关描述,在此不再赘述。
可选的,在分别确定每一个所述机器人所对应的移动操作之后,还包括:
根据所述任务信息,判断所述机器人中优先级较高的机器人是否已完成对应的任务;
若所述机器人中优先级较高的机器人已完成对应的任务,则重新执行指示至少一个所述机器人通过预设通信方式,获取除该机器人之外的其他机器人的任务信息的步骤及后续步骤。
本发明实施例中,当所述机器人中优先级较高的机器人已完成对应的任务,各个机器人的状态会发生改变,此时需要重新规划各个机器人的优先级,以及时调整对各个机器人的控制策略。
本发明实施例中,通过指示至少一个所述机器人通过预设通信方式,获取除该机器人之外的其他机器人的任务信息,并根据所述任务信息确定所述机器人的优先级,可以使其中的一个或多个机器人能够基于其他机器人的任务信息,了解各个机器人的路径、目标点等等信息,从而可以确定所述机器人的优先级,以根据所述优先级对多个机器人进行合理的、准确的控制操作,避免机器人之间出现碰撞、锁死等情况,从而提高了对多个机器人进行调度控制的效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图4是本发明实施例三提供的控制多机器人的装置的示意图。为了便于说明,仅示出了与本发明实施例相关的部分。
所述控制多机器人的装置400包括:
第一获取模块401,用于当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;
第二获取模块402,用于获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;
控制模块403,用于根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。
可选的,所述第一获取模块401具体用于:
基于预设地图轨道信息,和/或,基于激光雷达检测到的数据信息,获取所述预设移动路径中出现重叠的部分的轨道信息。
可选的,所述轨道信息包括轨道宽度信息;
相应的,所述控制模块403具体包括:
判断单元,用于根据所述轨道宽度信息,判断所述预设移动路径中出现重叠的部分的轨道宽度是否大于预设宽度;
获取单元,用于若所述预设移动路径中出现重叠的部分的轨道宽度不大于预设宽度,则获取每一个所述机器人所分别对应的目标点;
第一确定单元,用于根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作。
可选的,所述轨道信息还包括轨道优先级信息;
相应的,所述第一确定单元具体包括:
判断子单元,用于根据所述轨道优先级信息,判断所述预设移动路径中出现重叠的部分的轨道优先级是否符合预设优先级条件;
确定子单元,用于若所述预设移动路径中出现重叠的部分的轨道优先级符合预设优先级条件,则分别确定每一个所述机器人所对应的移动操作,以使得所述机器人中,优先级较高的机器人到达对应的目标点的路径为预设路径且到达对应的目标点的耗时为预设耗时。
可选的,所述控制多机器人的装置400还包括:
划分模块,用于若所述预设移动路径中出现重叠的部分的轨道宽度大于预设宽度,则根据所述轨道宽度将所述轨道划分成预设个数的子轨道;
第一确定模块,用于确定所述至少两个机器人中,每一个机器人所分别对应的子轨道,并分别确定每一个机器人在所对应的子轨道中的移动操作。
可选的,所述控制多机器人的装置400还包括:
第二确定模块,用于指示至少一个所述机器人通过预设通信方式,获取除该机器人之外的其他机器人的任务信息,并根据所述任务信息确定每一个所述机器人所分别对应的优先级。
可选的,所述确定模块具体包括:
第二确定单元,用于根据所述任务信息,确定所述机器人中的至少一个机器人为最高优先级机器人;
第三确定单元,用于根据所述最高优先级机器人分别与除所述最高优先级机器人之外的其他机器人之间的路径距离,确定除所述最高优先级机器人之外的其他机器人的优先级。
本发明实施例通过获取至少两个机器人的所述预设移动路径中出现重叠的部分的轨道信息,可以获取所述路径中重叠的部分实际的轨道情况,再结合优先级,可以分别控制所述至少两个机器人执行相应的移动操作,从而使得多个机器人能够准确、快速、合理地进行调整。本发明实施例提高了对多个机器人进行调度控制的效率,具有较高的实用性和易用性。
图5是本发明实施例四提供的终端设备的示意图。如图5所示,该实施例的终端设备5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52。所述处理器50执行所述计算机程序52时实现上述各个控制多机器人的方法实施例中的步骤,例如图1所示的步骤101至103。或者,所述处理器50执行所述计算机程序52时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块401至403的功能。
示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述终端设备5中的执行过程。例如,所述计算机程序52可以被分割成第一获取模块、第二获取模块、控制模块,各模块具体功能如下:
第一获取模块,用于当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;
第二获取模块,用于获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;
控制模块,用于根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作。
所述终端设备5可以是机器人、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的示例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (8)
1.一种控制多机器人的方法,其特征在于,包括:
当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;
获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;
根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作;
所述轨道信息包括轨道宽度信息;
相应的,所述根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作,包括:
根据所述轨道宽度信息,判断所述预设移动路径中出现重叠的部分的轨道宽度是否大于预设宽度;
若所述预设移动路径中出现重叠的部分的轨道宽度不大于预设宽度,则获取每一个所述机器人所分别对应的目标点;
根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作,包括:比对所述至少两个机器人中每一个所述机器人的优先级高低;若存在所述机器人中的第一机器人的优先级高于所述机器人中的第二机器人,则将所述第二机器人的避让点设置于所述第一机器人与所述第二机器人的所述预设移动路径中出现重叠的部分所在的交叉口,非重叠的部分所在的路口中的一个,并控制所述第二机器人到达所述避让点,控制所述第一机器人沿所述第一机器人所对应的预设移动路径移动;在所述第一机器人移动至指定位置后,再控制所述第二机器人由所述避让点移动至所述第二机器人所对应的目标点;
所述轨道信息包括轨道优先级信息;其中,根据所述轨道的重要程度、出现碰撞的程度以及路径繁忙程度确定所述轨道优先级信息;
相应的,所述根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作,包括:
根据所述轨道优先级信息,判断所述预设移动路径中出现重叠的部分的轨道优先级是否符合预设优先级条件;
若所述预设移动路径中出现重叠的部分的轨道优先级符合预设优先级条件,则分别确定每一个所述机器人所对应的移动操作,以使得所述机器人中,优先级较高的机器人到达对应的目标点的路径为预设路径且到达对应的目标点的耗时为预设耗时;其中,所述预设移动路径中出现重叠的部分的轨道优先级符合预设优先级条件指所述预设移动路径中出现重叠的部分的轨道优先级高于预设轨道优先级;
其中,采用分布式控制方式执行所述控制多机器人的方法,具体为:所述控制多机器人的方法由所述机器人中的一个来执行,或者由所述机器人中的至少两个分别执行,所述机器人之间通过预设通信方式进行通信获取任务、路径以及控制操作信息,且所述机器人之间相互发送控制指令以协调各个机器人的移动。
2.如权利要求1所述的控制多机器人的方法,其特征在于,所述获取所述预设移动路径中出现重叠的部分的轨道信息,包括:
基于预设地图轨道信息,和/或,基于激光雷达检测到的数据信息,获取所述预设移动路径中出现重叠的部分的轨道信息。
3.如权利要求1所述的控制多机器人的方法,其特征在于,在判断所述预设移动路径中出现重叠的部分的轨道宽度是否大于预设宽度之后,还包括:
若所述预设移动路径中出现重叠的部分的轨道宽度大于预设宽度,则根据所述轨道宽度将所述轨道划分成预设个数的子轨道;
确定所述至少两个机器人中,每一个机器人所分别对应的子轨道,并分别确定每一个机器人在所对应的子轨道中的移动操作。
4.如权利要求1或2所述的控制多机器人的方法,其特征在于,所述获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级之前,还包括:
指示至少一个所述机器人通过预设通信方式,获取除该机器人之外的其他机器人的任务信息,并根据所述任务信息确定每一个所述机器人所分别对应的优先级。
5.如权利要求4所述的控制多机器人的方法,其特征在于,所述根据所述任务信息确定每一个所述机器人所分别对应的优先级,包括:
根据所述任务信息,确定所述机器人中的至少一个机器人为最高优先级机器人;
根据所述最高优先级机器人分别与除所述最高优先级机器人之外的其他机器人之间的路径距离,确定除所述最高优先级机器人之外的其他机器人的优先级。
6.一种控制多机器人的装置,其特征在于,包括:
第一获取模块,用于当检测到至少两个机器人的预设移动路径出现重叠时,获取所述预设移动路径中出现重叠的部分的轨道信息;
第二获取模块,用于获取所述至少两个机器人中,每一个所述机器人所分别对应的优先级;
控制模块,用于根据所述优先级和所述轨道信息,分别确定每一个所述机器人所对应的移动操作;
所述轨道信息包括轨道宽度信息;
相应的,所述控制模块具体包括:
判断单元,用于根据所述轨道宽度信息,判断所述预设移动路径中出现重叠的部分的轨道宽度是否大于预设宽度;
获取单元,用于若所述预设移动路径中出现重叠的部分的轨道宽度不大于预设宽度,则获取每一个所述机器人所分别对应的目标点;
第一确定单元,用于根据所述优先级和所述目标点,分别确定每一个所述机器人所对应的移动操作,包括:比对所述至少两个机器人中每一个所述机器人的优先级高低;若存在所述机器人中的第一机器人的优先级高于所述机器人中的第二机器人,则将所述第二机器人的避让点设置于所述第一机器人与所述第二机器人的所述预设移动路径中出现重叠的部分所在的交叉口,非重叠的部分所在的路口中的一个,并控制所述第二机器人到达所述避让点,控制所述第一机器人沿所述第一机器人所对应的预设移动路径移动;在所述第一机器人移动至指定位置后,再控制所述第二机器人由所述避让点移动至所述第二机器人所对应的目标点;
所述轨道信息包括轨道优先级信息;其中,根据所述轨道的重要程度、出现碰撞的程度以及路径繁忙程度确定所述轨道优先级信息;
相应的,所述第一确定单元具体包括:
判断子单元,用于根据所述轨道优先级信息,判断所述预设移动路径中出现重叠的部分的轨道优先级是否符合预设优先级条件;
确定子单元,用于若所述预设移动路径中出现重叠的部分的轨道优先级符合预设优先级条件,则分别确定每一个所述机器人所对应的移动操作,以使得所述机器人中,优先级较高的机器人到达对应的目标点的路径为预设路径且到达对应的目标点的耗时为预设耗时;其中,所述预设移动路径中出现重叠的部分的轨道优先级符合预设优先级条件指所述预设移动路径中出现重叠的部分的轨道优先级高于预设轨道优先级;
其中,采用分布式控制方式执行控制多机器人的方法,具体为:所述控制多机器人的方法由所述机器人中的一个来执行,或者由所述机器人中的至少两个分别执行,所述机器人之间通过预设通信方式进行通信获取任务、路径以及控制操作信息,且所述机器人之间相互发送控制指令以协调各个机器人的移动。
7.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910154886.8A CN109901578B (zh) | 2019-03-01 | 2019-03-01 | 一种控制多机器人的方法、装置及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910154886.8A CN109901578B (zh) | 2019-03-01 | 2019-03-01 | 一种控制多机器人的方法、装置及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109901578A CN109901578A (zh) | 2019-06-18 |
CN109901578B true CN109901578B (zh) | 2022-07-05 |
Family
ID=66945981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910154886.8A Active CN109901578B (zh) | 2019-03-01 | 2019-03-01 | 一种控制多机器人的方法、装置及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109901578B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377038A (zh) * | 2019-07-15 | 2019-10-25 | 深圳优地科技有限公司 | 一种机器人避让行驶方法、装置及机器人 |
CN110632918A (zh) * | 2019-07-30 | 2019-12-31 | 深圳市普渡科技有限公司 | 分布式调度方法及系统 |
CN112338894A (zh) * | 2019-08-09 | 2021-02-09 | 深圳市普渡科技有限公司 | 基于配送系统的调度方法 |
CN110614634B (zh) * | 2019-08-15 | 2022-02-01 | 纳恩博(常州)科技有限公司 | 控制方法、便携式终端和存储介质 |
CN110853392A (zh) * | 2019-11-12 | 2020-02-28 | 深圳创维数字技术有限公司 | 智能抢单方法、装置及计算机可读存储介质 |
CN113568400A (zh) * | 2020-04-28 | 2021-10-29 | 北京猎户星空科技有限公司 | 一种机器人控制方法、装置、电子设备及存储介质 |
CN112925313A (zh) * | 2021-01-22 | 2021-06-08 | 上海擎朗智能科技有限公司 | 机器人的避让处理方法、装置、电子设备和介质 |
CN113219966A (zh) * | 2021-04-01 | 2021-08-06 | 深圳市优必选科技股份有限公司 | 机器人的控制方法、装置、通信设备及存储介质 |
CN113848937A (zh) * | 2021-10-13 | 2021-12-28 | 北京云迹科技有限公司 | 一种机器人避障控制方法及相关设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106500700A (zh) * | 2016-11-15 | 2017-03-15 | 深圳市中舟智能科技有限公司 | 一种多移动机器人协作导航方法及系统 |
CN106647763A (zh) * | 2017-01-06 | 2017-05-10 | 深圳优地科技有限公司 | 一种机器人调度方法、装置和服务器 |
CN108399792A (zh) * | 2018-01-25 | 2018-08-14 | 北京墨丘科技有限公司 | 一种无人驾驶车辆避让方法、装置和电子设备 |
CN108510799A (zh) * | 2018-04-24 | 2018-09-07 | 骁越科技(青岛)有限公司 | 一种室外型agv交通避让方法与装置 |
CN108919813A (zh) * | 2018-08-07 | 2018-11-30 | 北京云迹科技有限公司 | 路径冲突处理方法及系统 |
CN109032145A (zh) * | 2018-08-29 | 2018-12-18 | 广州市君望机器人自动化有限公司 | 对多机器人路径的调度方法及装置 |
CN109240251A (zh) * | 2018-11-19 | 2019-01-18 | 炬星科技(深圳)有限公司 | 分布式机器人的调度决策方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9707681B2 (en) * | 2015-07-27 | 2017-07-18 | Siemens Industry Software Ltd. | Anti-collision management of overlapping robotic movements |
CN105320131A (zh) * | 2015-07-31 | 2016-02-10 | 北京家度科技有限公司 | 一种机器人多轨道线性连续循迹行驶服务系统 |
CN107748950A (zh) * | 2017-09-25 | 2018-03-02 | 河南森源电气股份有限公司 | 一种单主干道的agv调度方法 |
CN207690138U (zh) * | 2017-09-30 | 2018-08-03 | 北京极智嘉科技有限公司 | 自动分拣系统和自动运输单元 |
-
2019
- 2019-03-01 CN CN201910154886.8A patent/CN109901578B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106500700A (zh) * | 2016-11-15 | 2017-03-15 | 深圳市中舟智能科技有限公司 | 一种多移动机器人协作导航方法及系统 |
CN106647763A (zh) * | 2017-01-06 | 2017-05-10 | 深圳优地科技有限公司 | 一种机器人调度方法、装置和服务器 |
CN108399792A (zh) * | 2018-01-25 | 2018-08-14 | 北京墨丘科技有限公司 | 一种无人驾驶车辆避让方法、装置和电子设备 |
CN108510799A (zh) * | 2018-04-24 | 2018-09-07 | 骁越科技(青岛)有限公司 | 一种室外型agv交通避让方法与装置 |
CN108919813A (zh) * | 2018-08-07 | 2018-11-30 | 北京云迹科技有限公司 | 路径冲突处理方法及系统 |
CN109032145A (zh) * | 2018-08-29 | 2018-12-18 | 广州市君望机器人自动化有限公司 | 对多机器人路径的调度方法及装置 |
CN109240251A (zh) * | 2018-11-19 | 2019-01-18 | 炬星科技(深圳)有限公司 | 分布式机器人的调度决策方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109901578A (zh) | 2019-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109901578B (zh) | 一种控制多机器人的方法、装置及终端设备 | |
CN109991977B (zh) | 机器人的路径规划方法及装置 | |
EP3566821B1 (en) | Robot movement control method, and robot | |
CN109947100B (zh) | 路径规划方法、系统及终端设备 | |
US20190286145A1 (en) | Method and Apparatus for Dynamic Obstacle Avoidance by Mobile Robots | |
Trigui et al. | A distributed market-based algorithm for the multi-robot assignment problem | |
CN110850859B (zh) | 一种机器人及其避障方法和避障系统 | |
CN110597261B (zh) | 一种预防碰撞冲突的方法及装置 | |
Ravankar et al. | Multi-robot path planning for smart access of distributed charging points in map | |
CN113085850A (zh) | 车辆避障方法、装置、电子设备及存储介质 | |
Park et al. | A beacon color code scheduling for the localization of multiple robots | |
CN112148009B (zh) | Agv集群调度方法、装置、电子设备及计算机可读存储介质 | |
CN111474947A (zh) | 机器人避障的方法、装置及系统 | |
CN113219966A (zh) | 机器人的控制方法、装置、通信设备及存储介质 | |
CN111360808A (zh) | 一种控制机器人运动的方法、装置及机器人 | |
CN111309012A (zh) | 机器人及其移动控制方法和装置 | |
Ni et al. | A message efficient intersection control algorithm for intelligent transportation in smart cities | |
CN116700298B (zh) | 路径规划方法、系统、设备及存储介质 | |
CN113728288B (zh) | 用于多个机器人的拥塞避免和公共资源访问管理 | |
CN111459100B (zh) | 自动导引运输车的调度方法和系统 | |
WO2023174096A1 (zh) | 自主移动机器人的调度方法、系统、电子设备和存储介质 | |
CN112214013A (zh) | 直线往复式多rgv死锁避免和冲突实时控制方法、系统、介质、终端 | |
CN116202523A (zh) | 机器人控制方法、装置、设备及计算机可读存储介质 | |
Grosset et al. | A cooperative approach to avoiding obstacles and collisions between autonomous industrial vehicles in a simulation platform | |
CN113256212B (zh) | 订单处理方法、装置、通信设备及存储介质 |
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 |