一种机器人调度方法、装置和服务器与流程

文档序号:11153511阅读:357来源:国知局
一种机器人调度方法、装置和服务器与制造工艺
本发明涉及机器人
技术领域
,尤其涉及一种机器人调度方法、装置和服务器。
背景技术
:目前,机器人越来越多地应用在超级市场、会展中心、交通运输中心和物流仓库等场所,承担着举足轻重的各类工作。而在多数应用场景中需要大量的机器人协同工作才能有效地完成任务,因此常常面临大量机器人需要通过交叉路口的问题。针对上述问题,虽然可以为每个机器人都添加环境感知、路线规划、行为控制和障碍预测等功能,但由于每个机器人都是按自身的控制算法独立运作,当大量机器人通过交叉路口时容易产生混乱和拥堵,导致机器人无法高效率地通过交叉路口。技术实现要素:本发明实施例提供了一种机器人调度方法、装置和服务器,旨在解决目前机器人通过交叉路口时产生的混乱和拥堵,导致机器人无法高效率地通过交叉路口的问题。本发明实施例第一方面提供了一种机器人调度方法,包括:确定目标交叉路口中的待调度路口;获取所述待调度路口的放行优先级;按照所述放行优先级的优先级顺序依次放行所述待调度路口。可选的,所述确定目标交叉路口中的待调度路口具体包括:检测所述目标交叉路口的各个路口上的待放行机器人;将检测到所述待放行机器人的路口确定为待调度路口。可选的,所述获取所述待调度路口的放行优先级具体包括:获取所述待调度路口的预设的路口权重值;根据所述路口权重值确定所述待调度路口的放行优先级;或者获取所述待调度路口上的各个待放行机器人的预设的机器人权重值;根据所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级;或者获取所述待调度路口的预设的路口权重值和所述待调度路口上的各个待放行机器人的预设的机器人权重值;根据所述路口权重值和所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级。可选的,所述获取所述待调度路口上的各个待放行机器人的预设的机器人权重值具体包括:确定所述待调度路口上的待放行机器人;获取所述待放行机器人的当前任务;获取与所述当前任务对应的预设的任务权重值;根据获取到的所述任务权重值确定所述机器人权重值;或者确定所述待调度路口上的待放行机器人;获取所述待放行机器人的等待时间;获取与所述等待时间对应的预设的时间权重值;根据获取到的所述时间权重值确定所述机器人权重值;或者确定所述待调度路口上的待放行机器人;获取所述待放行机器人的当前任务和等待时间;获取与所述当前任务对应的预设的任务权重值和与所述等待时间对应的预设的时间权重值;根据获取到的所述任务权重值和所述时间权重值确定所述机器人权重值。可选的,所述按照所述放行优先级的优先级顺序依次放行所述待调度路口具体包括:判断所述待调度路口上的待放行机器人的数量是否超过预设的数量阈值;若所述待调度路口上的待放行机器人的数量超过预设的数量阈值,则在放行所述待调度路口时,控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值。本发明实施例第二方面提供了一种机器人调度装置,包括:路口确定模块,用于确定目标交叉路口中的待调度路口;优先级获取模块,用于获取所述待调度路口的放行优先级;放行模块,用于按照所述放行优先级的优先级顺序依次放行所述待调度路口。可选的,所述路口确定模块具体包括:检测单元,用于检测所述目标交叉路口的各个路口上的待放行机器人;确定单元,用于将检测到所述待放行机器人的路口确定为待调度路口。可选的,所述优先级获取模块具体包括:第一权重获取单元,用于获取所述待调度路口的预设的路口权重值;第一优先级确定单元,用于根据所述路口权重值确定所述待调度路口的放行优先级;或者第二权重获取单元,用于获取所述待调度路口上的各个待放行机器人的预设的机器人权重值;第二优先级确定单元,用于根据所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级;或者第三权重获取单元,用于获取所述待调度路口的预设的路口权重值和所述待调度路口上的各个待放行机器人的预设的机器人权重值;第三优先级确定单元,用于根据所述路口权重值和所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级。可选的,所述放行模块具体包括:数量判断单元,用于判断所述待调度路口上的待放行机器人的数量是否超过预设的数量阈值;数量控制单元,用于若所述待调度路口上的待放行机器人的数量超过预设的数量阈值,则在放行所述待调度路口时,控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值。本发明实施例第三方面提供了一种机器人调度服务器,所述服务器包括任意的上述机器人调度装置。本发明实施例中,首先确定交叉路口中需要进行调度的路口,然后获取所述需要进行调度的路口的放行优先级,最后按照所述放行优先级的优先级顺序依次放行所述需要进行调度的路口。利用放行优先级来设置交叉路口中每个路口的放行次序,可以按照实际需要合理地安排机器人通过交叉路口,实现了对机器人的集中调度,使机器人得以有序、高效地通过交叉路口。附图说明图1为本发明实施例中一种机器人调度方法的一个实施例的流程图;图2为本发明实施例中一种机器人调度方法在一个应用场景下的示意图;图3为本发明实施例中一种机器人调度方法在另一个应用场景下的示意图;图4为本发明实施例中一种机器人调度装置的一个实施例的结构图。具体实施方式本发明实施例提供了一种机器人调度方法、装置和服务器,旨在解决目前机器人通过交叉路口时产生的混乱和拥堵,导致机器人无法高效率地通过交叉路口的问题。为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。请参阅图1,本发明实施例中一种机器人调度方法一个实施例包括:101、确定目标交叉路口中的待调度路口;所述目标交叉路口指在机器人的工作环境中,需要进行放行调度的交叉路口,可以是十字路口、T型路口或任意角度的具有三个或以上路口的交叉路口,可以包括工作环境内的全部交叉路口,也可以是工作环境内的某个或部分交叉路口。所述待调度路口指交叉路口中需要进行放行调度的路口,可以是所述交叉路口的全部路口,也可以是所述交叉路口的部分路口。确定所述目标交叉路口中哪些路口为待调度路口的方式可以是直接指定、随机选取、全部选取、按时间轮流指定或者根据所述路口中是否存在等待放行的机器人等多种方式。为了避免无必要的等待,提高机器人通过交叉路口的效率,如果所述交叉路口中的某个路口没有机器人等待放行,则没必要对所述路口进行放行,即不需要把所述路口确定为待调度路口。可选的,所述步骤101具体可以包括:检测所述目标交叉路口的各个路口上的待放行机器人;将检测到所述待放行机器人的路口确定为待调度路口。检测所述目标交叉路口上的全部或部分路口上是否存在等待放行的机器人,如果在所述目标交叉路口的某个路口上检测到等待放行的机器人,则将所述路口确定为待调度路口。假设机器人的工作环境内包括3个交叉路口,分别为一个十字路口A、一个T型路口B和一个星型路口C,T型路口B具有的3个路口分别为B1、B2和B3;现在只需要对T型路口B进行调度且B3不需要进行调度,则B是目标交叉路口,B3确定为非调度路口;检测B1和B2上的待放行机器人,如果在B1和B2上都检测到待放行机器人,则确定B1和B2为待调度路口,如果在B1上检测到待放行机器人,在B2上检测不到待放行机器人,则只确定B1为待调度路口,以此类推。可见,只将检测到待放行机器人的路口确定为待调度路口,能避免对无机器人等待的路口进行放行而产生的时间浪费,从而提高机器人通过交叉路口的效率。另外,针对所述交叉路口上的某些路口也可以直接确定为非待调度路口,无需考虑该路口上是否存在待放行机器人,能较大地提高调度的灵活性。102、获取所述待调度路口的放行优先级;在确定目标交叉路口中的待调度路口之后,获取所述待调度路口的放行优先级。所述放行优先级是各个待调度路口放行顺序制定的依据,当确定好目标交叉路口中哪些路口需要进行调度之后,根据实际需求制定各个待调度路口的优先级,可以合理安排各个待调度路口的放行顺序。所述放行优先级可以用整数(1、2、3……)表示,1可以为最低或最高的优先级;可以用字母(A、B、C……)表示,A可以为最低或最高的优先级;也可以用汉字“最高”、“次高”、“次低”和“最低”等方式来表示。所述放行优先级的制定可以有多种方式,比如直接指定、随机指定、根据待调度路口是否主干道、根据待放行机器人的任务紧急程度、根据待放行机器人的数量和已等待的时间等。可选的,步骤102具体可以包括:获取所述待调度路口的预设的路口权重值;根据所述路口权重值确定所述待调度路口的放行优先级。所述路口权重值可以根据所述待调度路口的重要程度合理设置,然后根据各个待调度路口的路口权重值的大小就可以确定所述待调度路口的放行优先级。比如某个交叉路口A具有3个待调度路口A1、A2和A3,其中路口A1是主干道,重要程度最高且需要优先放行,假设权重值的可设范围是0至5,可以将路口A1的路口权重值设为5,将路口A2和A3的路口权重值设为0至4中任意的值,则根据A1、A2和A3的路口权重值大小可以确定A1的放行优先级最高。需要说明的是,如果两个待调度路口的路口权重值相同,比如上述的A2和A3的路口权重值都是3,则可以通过随机指定等方式确定它们之间的放行优先级,最终得出的放行优先级从高到低依次可以为A1-A2-A3或者A1-A3-A2。所述路口权重值也可以根据所述待调度路口的路口属性合理设置,所述路口属性指路口的各类相关属性,比如主干道或紧急任务通道等。可以为路口属性设置合理的属性权重值,当所述待调度路口具备某个路口属性时,则可以将所述某个路口属性所对应的属性权重值作为所述待调度路口的路口权重值;当所述待调度路口具备多个路口属性时,则可以将所述多个路口属性所对应的属性权重值相加后得到的值作为所述待调度路口的路口权重值。比如,可以建立如表1所示的路口属性与对应的属性权重值之间的映射关系。假设某个交叉路口A具有3个待调度路口A1、A2和A3,其中A1属于主干道和紧急任务通道,A2的路口等待区停满了机器人,A3不具备表1中任何的路口属性,则A1的路口权重值为1+4=5,A2的路口权重值为2,A3的路口权重值为0,最终根据路口权重值确定的放行优先级从高到低依次为A1-A2-A3。表1路口属性属性权重值主干道1路口等待区停满机器人2紧急任务通道4可见,通过所述路口权重值来确定所述待调度路口的放行优先级,可以使需要优先放行的路口(路口权重值高的路口)得到优先的放行,能很好地满足实际需求。另一方面,实际情况中常常面临某些机器人在执行紧急任务,需要优先通过交叉路口的情形。因此,可以将所述待调度路口上的待放行机器人的相关信息作为确定所述待调度路口的放行优先级的相关因素。可选的,步骤102具体可以包括:获取所述待调度路口上的各个待放行机器人的预设的机器人权重值;根据所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级。所述待放行机器人指在所述待调度路口上等待通过所述交叉路口的机器人,所述机器人权重值是各个待放行机器人的预设的相关属性值,用于表示所述各个待放行机器人通行所述交叉路口的紧急程度。在获取到各个待放行机器人的机器人权重值后,可以将这些机器人权重值相加得到所述待调度路口的机器人权重值,最后再根据所述待调度路口的机器人权重值确定所述待调度路口的放行优先级。当然,在获取到各个待放行机器人的机器人权重值后确定所述待调度路口的放行优先级的方法可以有很多,不限于上述将这些机器人权重值相加得到所述待调度路口的机器人权重值的方法。假设待调度路口A1上具有3个待放行机器人X1、Y1和Z1,待调度路口A2上具有2个待放行机器人X2和Y2,待调度路口A3上具有2个待放行机器人Z2和Z3,X型号(X1和X2)的机器人权重值预设为3,Y型号(Y1和Y2)的机器人权重值预设为1,Z型号(Z1、Z2和Z3)的机器人权重值预设为5,则所述待调度路口A1的机器人权重值可以为X1、Y1和Z1的机器人权重值之和,即3+1+5=9,待调度路口A2的机器人权重值可以为X2和Y2的机器人权重值之和,即3+1=4,待调度路口A3的机器人权重值可以为Z2和Z3的机器人权重值之和,即5+5=10。在得到所述待调度路口的机器人权重值后,可以根据所述待调度路口的机器人权重值的大小确定所述待调度路口的放行优先级,针对上述的例子,由于所述待调度路口的机器人权重值的大小关系为A3>A1>A2,因此可以确定所述待调度路口的放行优先级从高到低依次为A3-A1-A2。需要说明的是,如果两个待调度路口的机器人权重值相同,比如上述的A1和A3的机器人权重值都是9,则可以通过随机指定等方式确定它们之间的放行优先级,最终得出的放行优先级从高到低依次可以为A3-A1-A2或者A1-A3-A2。当然,所述待调度路口的机器人权重值也可以通过乘法等别的运算方式获得,在实际运算过程中也不一定需要产生所述待调度路口的机器人权重值这个中间结果,可以通过各个待放行机器人的机器人权重值直接得到待调度路口的放行优先级结果。上述各个机器人的机器人权重值仅以型号作为设置因素,实际上相同型号的机器人也会执行不同紧急程度的任务,因此,可以把机器人当前正在执行的任务作为机器人的机器人权重值的设置因素,以达到使执行紧急任务的机器人能优先通过交叉路口的效果。可选的,所述获取所述待调度路口上的各个待放行机器人的预设的机器人权重值可以包括:确定所述待调度路口上的待放行机器人;获取所述待放行机器人的当前任务;获取与所述当前任务对应的预设的任务权重值;根据获取到的所述任务权重值确定所述机器人权重值。首先需要确定所述待调度路口上的待放行机器人是哪些,然后获取这些机器人中各个机器人的当前任务和与所述当前任务对应的预设的任务权重值,接着根据获取到的所述任务权重值,可以计算获得各个机器人的机器人权重值,最后可以根据所述各个机器人的机器人权重值做运算得到一个总的机器人权重值作为所述待调度路口的机器人权重值,以此确定所述待调度路口的放行优先级。比如,可以建立如表2所示的机器人的当前任务和与所述当前任务对应的任务权重值的映射关系。假设待调度路口A1上具有3个待放行机器人X1、Y1和Z1,待调度路口A2上具有2个待放行机器人X2和Y2,待调度路口A3上具有2个待放行机器人X3和Y3;其中,X1当前正在执行送餐任务,Y1和Z1当前正在执行迎宾任务,X2当前正在执行救援任务,Y2当前正在执行送餐和音乐播放两个任务,X3当前任务为空,Y3当前正在执行送餐任务。根据表2所示的映射关系,可以得到机器人X1的机器人权重值为1,Y1的机器人权重值为2,Z1的机器人权重值为2,X2的机器人权重值为5,Y2的机器人权重值为1+1=2,X3的机器人权重值为0,Y3的机器人权重值为1。路口A1的机器人权重值可以为X1、Y1和Z1的机器人权重值之和,即1+2+2=5,路口A2的机器人权重值可以为X2和Y2的机器人权重值之和,即5+2=7,路口A3的机器人权重值可以为X3和Y3的机器人权重值之和,即0+1=1。当然,所述待调度路口的机器人权重值也可以通过别的运算方式获得。在得到所述待调度路口的机器人权重值后,可以根据所述待调度路口的机器人权重值的大小确定所述待调度路口的放行优先级,针对上述的例子,由于所述待调度路口的机器人权重值的大小关系为A2>A1>A3,因此可以确定所述待调度路口的放行优先级从高到低依次为A2-A1-A3。需要说明的是,如果两个待调度路口的机器人权重值相同,比如上述的A1和A2的机器人权重值都是5,则可以通过随机指定等方式确定它们之间的放行优先级,最终得出的放行优先级从高到低依次可以为A2-A1-A3或者A1-A2-A3。表2当前任务任务权重值送餐1迎宾2救援5空0音乐播放1需要说明的是,表2所示的当前任务与任务权重值可以根据实际需要任意设置,某个机器人执行的当前任务可以是一个,也可以是两个以上的多个任务。为了防止某个待放行机器人的等待时间过长,也可以把机器人的等待时间作为机器人的权重值的设置因素。可选的,所述获取所述待调度路口上的各个待放行机器人的预设的机器人权重值可以包括:确定所述待调度路口上的待放行机器人;获取所述待放行机器人的等待时间;获取与所述等待时间对应的时间权重值;根据获取到的所述时间权重值确定所述机器人权重值。首先需要确定所述待调度路口上的待放行机器人是哪些,然后获取这些机器人中各个机器人的等待时间(即当前时刻在所述待调度路口上已经等待的时间)和与所述等待时间对应的时间权重值,接着根据获取到的所述时间权重值,可以计算获得各个机器人的机器人权重值,最后可以根据所述各个机器人的机器人权重值做运算得到一个总的机器人权重值作为所述待调度路口的机器人权重值,以此确定所述待调度路口的放行优先级。比如,可以建立如表3所示的机器人的等待时间和与所述等待时间对应的时间权重值的映射关系。假设待调度路口A1上具有3个待放行机器人X1、Y1和Z1,待调度路口A2上具有2个待放行机器人X2和Y2,待调度路口A3上具有2个待放行机器人X3和Y3;其中,X1的等待时间是15秒,Y1和Z1的等待时间都是8秒,X2的等待时间是30秒,Y2的等待时间是11秒,X3的等待时间是3秒,Y3的等待时间是12秒。根据表3所示的映射关系,可以得到X1的机器人权重值为2,Y1的机器人权重值为1,Z1的机器人权重值为1,X2的机器人权重值为3,Y2的机器人权重值为2,X3的机器人权重值为1,Y3的机器人权重值为2。路口A1的机器人权重值可以为X1、Y1和Z1的机器人权重值之和,即2+1+1=4,路口A2的机器人权重值可以为X2和Y2的机器人权重值之和,即3+2=5,路口A3的机器人权重值可以为X3和Y3的机器人权重值之和,即1+2=3。当然,所述待调度路口的机器人权重值也可以通过别的运算方式获得。在得到所述待调度路口的机器人权重值后,可以根据所述待调度路口的机器人权重值的大小确定所述待调度路口的放行优先级,针对上述的例子,由于所述待调度路口的机器人权重值的大小关系为A2>A1>A3,因此可以确定所述待调度路口的放行优先级从高到低依次为A2-A1-A3。需要说明的是,如果两个待调度路口的机器人权重值相同,比如上述的A1和A2的机器人权重值都是5,则可以通过随机指定等方式确定它们之间的放行优先级,最终得出的放行优先级从高到低依次可以为A2-A1-A3或者A1-A2-A3。表3等待时间时间权重值0至10秒111至20秒221至40秒3……X-Y至X秒N需要说明的是,表3所示的等待时间与时间权重值可以根据实际需要任意设置。可见,将机器人的等待时间作为所述机器人权重值的设置因素,可以有效避免目标交叉路口中某个待放行机器人的等待时间过长。针对某些应用场合,既要考虑待放行机器人执行任务的紧急程度,也要防止待放行机器人的等待时间过长,可以把机器人当前正在执行的任务和等待时间都作为机器人权重值的设置因素。可选的,所述获取所述待调度路口上的各个待放行机器人的预设的机器人权重值可以包括:确定所述待调度路口上的待放行机器人;获取所述待放行机器人的当前任务和等待时间;获取与所述当前任务对应的预设的任务权重值和与所述等待时间对应的预设的时间权重值;根据获取到的所述任务权重值和所述时间权重值确定所述机器人权重值。首先需要确定所述待调度路口上的待放行机器人是哪些,然后获取这些机器人中各个机器人的当前任务和等待时间、与所述当前任务对应的预设的任务权重值和与所述等待时间对应的预设的时间权重值,接着根据获取到的所述任务权重值和时间权重值,可以计算获得各个机器人的机器人权重值,最后可以根据所述各个机器人的机器人权重值做运算得到一个总的机器人权重值作为所述待调度路口的机器人权重值,以此确定所述待调度路口的放行优先级。以表2和表3建立的对应关系为例,假设待调度路口A1上具有3个待放行机器人X1、Y1和Z1,待调度路口A2上具有2个待放行机器人X2和Y2,待调度路口A3上具有2个待放行机器人X3和Y3。其中,X1的等待时间是15秒,当前正在执行送餐任务;Y1和Z1的等待时间都是8秒,当前正在执行迎宾任务;X2的等待时间是30秒,当前正在执行救援任务;Y2的等待时间是11秒,当前正在执行送餐和音乐播放两个任务;X3的等待时间是3秒,当前任务为空;Y3的等待时间是12秒,当前正在执行送餐任务。根据表2和3所示的映射关系,可以得到X1的机器人权重值为2+1=3,Y1的机器人权重值为1+2=3,Z1的机器人权重值为1+2=3,X2的机器人权重值为3+5=8,Y2的机器人权重值为2+1+1=4,X3的机器人权重值为1+0=1,Y3的机器人权重值为2+1=3。路口A1的机器人权重值可以为X1、Y1和Z1的机器人权重值之和,即3+3+3=9,路口A2的机器人权重值可以为X2和Y2的机器人权重值之和,即8+4=12,路口A3的机器人权重值可以为X3和Y3的机器人权重值之和,即1+3=4。当然,所述待调度路口的机器人权重值也可以通过别的运算方式获得。在得到所述待调度路口的机器人权重值后,可以根据所述待调度路口的机器人权重值的大小确定所述待调度路口的放行优先级,针对上述的例子,由于所述待调度路口的机器人权重值的大小关系为A2>A1>A3,因此可以确定所述待调度路口的放行优先级从高到低依次为A2-A1-A3。需要说明的是,如果两个待调度路口的机器人权重值相同,比如上述的A1和A2的机器人权重值都是9,则可以通过随机指定等方式确定它们之间的放行优先级,最终得出的放行优先级从高到低依次可以为A2-A1-A3或者A1-A2-A3。可见,把机器人当前正在执行的任务和等待时间都作为机器人权重值的设置因素,综合考虑机器人执行任务的紧急程度和已经等待的时间,能在保证机器人优先执行紧急任务的同时避免某个机器人的等待时间过长,更能满足实际需求。另外,所述待调度路口的预设的路口权重值和所述待调度路口上的各个待放行机器人的预设的机器人权重值可以都获取用来确定所述待调度路口的放行优先级。可选的,步骤102具体可以包括:获取所述待调度路口的预设的路口权重值和所述待调度路口上的各个待放行机器人的预设的机器人权重值;根据所述路口权重值和所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级。假设某个交叉路口A具有3个待调度路口A1、A2和A3,路口A1的路口权重值为5,根据A1上的各个待放行机器人的机器人权重值得到A1的机器人权重值为3;路口A2的路口权重值为2,根据A2上的各个待放行机器人的机器人权重值得到A2的机器人权重值为7;路口A3的路口权重值为2,根据A3上的各个待放行机器人的机器人权重值得到A3的机器人权重值为2。可以将所述待调度路口的路口权重值和机器人权重值相加,得到一个路口的总权重值,以此总权重值确定所述待调度路口的放行优先级。即A1的总权重值为5+3=8,A2的总权重值为2+7=9,A3的总权重值为2+2=4,最终得出的放行优先级从高到低依次为A2-A1-A3。需要说明的是,在获得所述待调度路口的路口权重值和机器人权重值之后,不一定需要将它们二者相加得到一个路口的总权重值,可以通过其他的任意方式确定所述待调度路口的放行优先级,在此不做限定。在确定待调度路口的放行优先级时,既考虑所述待调度路口的预设的路口权限值,又考虑所述待调度路口上的各个待放行机器人的预设的机器人权重值,能进一步满足实际的调度需求。另一方面,目标交叉路口中可能存在比较特殊的待调度路口,比如单行路口。所述单行路口指不能同时容纳机器人等待和通行的路口,如果所述单行路口上有待放行机器人,则其它路口放行的机器人无法通往所述单行路口。可选的,步骤102具体可以包括:若所述待调度路口为单行路口,则确定所述待调度路口的放行优先级为最高的放行优先级。如果某个待调度路口为单行路口,则确定它的放行优先级为最高的放行优先级。在待调度路口放行时所述单行路口优先放行,在所述单行路口上的待放行机器人首先通过交叉路口,从而不会对从其它路口通往所述单行路口的机器人造成通行的阻碍。进一步地,如果所述单行路口的尽头是封闭的且所述单行路口的宽度只能容纳单个机器人通行,则每次只能允许单个机器人进入所述单行路口。当某个机器人进入该单行路口后,暂停该单行路口的开放,即其它机器人无法通往该单行路口。在所述单行路口暂停开放期间,如果其它路口有待放行机器人想通往该单行路口,控制所述待放行机器人等待(即使其位于的路口正在放行),直到所述已进入单行路口的机器人离开所述单行路口之后才重新开放所述单行路口。103、按照所述放行优先级的优先级顺序依次放行所述待调度路口。在确定所述待调度路口的放行优先级后,按照所述放行优先级的优先级顺序依次放行所述待调度路口。当某个待调度路口放行时,在所述待调度路口上的待放行机器人通过交叉路口,可以通往所述交叉路口中开放的任意一个路口,放行指允许该路口等待的机器人通行,开放指允许其它路口的机器人进入。在按照所述放行优先级的优先级顺序依次放行完所述目标交叉路口中全部的待调度路口后,可以重新返回步骤101,进行下一轮的调度,以此循环。假设某交叉路口有4个开放的待调度路口分别为A、B、C和D,路口A的待放行机器人有5个,路口B的待放行机器人有2个,路口C的待放行机器人有7个,路口D的待放行机器人有3个,经步骤102获取得到它们的放行优先级高低顺序为A>C>B>D,则首先放行A路口,路口A的5个待放行机器人通过交叉路口,可以通往B、C和D中任意一个路口;然后放行C路口,路口C的7个待放行机器人通过交叉路口,可以通往A、B和D中任意一个路口;接着放行B路口,路口B的2个待放行机器人通过交叉路口,可以通往A、C和D中任意一个路口;最后放行D路口,路口D的3个待放行机器人通过交叉路口,可以通往A、B和C中任意一个路口。当路口D放行完成后,利用同样的方法进行下一轮的调度放行,以此循环。为了避免某个待调度路口由于待放行机器人过多而占用太长的放行时间,可以控制所述待调度路口每次放行时允许的最大放行时间或每次放行时允许放行的最大机器人数量值。可选的,步骤103具体可以包括:判断所述待调度路口上的待放行机器人的数量是否超过预设的数量阈值;若所述待调度路口上的待放行机器人的数量超过预设的数量阈值,则在放行所述待调度路口时,控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值。所述预设的数量阈值即每次放行时允许放行的最大机器人数量值,如果所述待调度路口上的待放行机器人的数量超过预设的数量阈值,则在放行所述待调度路口时,控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值。进一步的,所述控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值具体可以包括:记录所述待调度路口上放行的机器人的数量;当所述放行的机器人的数量等于所述数量阈值时,停止放行所述待调度路口。可以采用排队计数的方法控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值,每放行一个待放行机器人则计数值加1,当所述计数值等于所述数量阈值时,停止放行。然而,采用上述排队计数的方法可能造成某些需要优先放行的机器人无法在当次放行中通过所述待调度路口,为了使执行紧急任务或者等待时间过长的待放行机器人优先放行,可以根据所述机器人权重值的大小来选择当次放行的机器人。进一步的,所述控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值具体可以包括:获取所述待调度路口上的各个待放行机器人的预设的机器人权重值;根据所述机器人权重值的大小从所述待调度路口上的待放行机器人中选取与所述数量阈值数量相同的待放行机器人;控制所述待调度路口上放行的机器人为所述与所述数量阈值数量相同的待放行机器人。假设某待调度路口上待放行的机器人有30个,每次放行时允许放行的最大机器人数量值(数量阈值)为20,获取这30个机器人的机器人权重值,根据机器人权重值的大小从这30个机器人中选择机器人权重值较大的前20个机器人,在当次放行中对这20个机器人进行放行。通过在所述待调度路口上的待放行机器人中选取与所述数量阈值数量相同的机器人权重值较大的待放行机器人,在当次放行时对这些机器人进行放行,实现执行紧急任务或者等待时间过长的待放行机器人能够优先放行。本发明实施例中,首先确定交叉路口中需要进行调度的路口,然后获取所述需要进行调度的路口的放行优先级,最后按照所述放行优先级的优先级顺序依次放行所述需要进行调度的路口。利用放行优先级来设置交叉路口中每个路口的放行次序,可以按照实际需要合理地安排机器人通过交叉路口,实现了对机器人的集中调度,使机器人得以有序、高效地通过交叉路口。为便于理解,根据图1所描述的实施例,下面以实际应用场景对本发明实施例中的一种机器人调度方法进行描述。图2示出了本发明实施例中一种机器人调度方法在一个应用场景下的示意图。图2示出了一个十字交叉路口中的4个待调度路口A、B、C和D,图中的机器人等待区是待调度路口中待放行机器人停靠的区域,机器人通行道是机器人通行的道路。可以通过调度服务器设定所述机器人等待区的范围,根据机器人的位置坐标和所述机器人等待区的区域坐标作对比,可以判断出所述机器人是否停靠在所述机器人等待区内,只有停靠在所述机器人等待区内的机器人才确定为待放行机器人。所述交叉路口的各种信息,例如交叉路口名字、位置坐标、路口信息、机器人等待区的区域坐标,机器人等待区可停靠机器人的最大数量,是否主干道等等,可以以树状结构保存在所述调度服务器中,在所述调度服务器的控制界面上可以方便地对这些信息进行添加、修改或删除。假设路口A上具有3个待放行机器人X1、Y1和Z1,路口B上具有2个待放行机器人X2和Y2,路口C上具有2个待放行机器人X3和Y3,路口D上没有待放行机器人。A的路口权重值为5,机器人权重值为4,B的路口权重值为3,机器人权重值为8,C和D的路口权重值都是2,机器人权重值都是5。首先要确定十字交叉路口中的待调度路口,调度服务器检测所述交叉路口中每个路口的机器人等待区中是否有机器人停靠,如果有机器人停靠,则确定该路口为待调度路口。因此,本例中待调度路口是A、B和C。然后获取路口A、B和C的放行优先级,如果只考虑路口权重值,则A、B和C的放行优先级从高到低依次为A-B-C。如果只考虑机器人权重值,则A、B和C的放行优先级从高到低依次为B-C-A。如果路口权重值和机器人权重值都考虑,则A、B和C的放行优先级从高到低依次为B-A-C。最后按照所述放行优先级的优先级顺序依次放行所述待调度路口,假如A、B和C的放行优先级从高到低依次为A-B-C,则首先放行A路口,A路口上的3个待放行机器人通过交叉路口,每个机器人都可以通往任意一个开放的路口;然后放行B路口,B路口上的2个待放行机器人通过交叉路口,每个机器人都可以通往任意一个开放的路口;最后放行C路口,C路口上的2个待放行机器人通过交叉路口,每个机器人都可以通往任意一个开放的路口。由于D路口不是待调度路口,因此不对D路口进行放行,在C路口放行结束后重新确定所述交叉路口中的待调度路口。可以看出,只要在调度服务器上合理设置各个路口的路口权重值和各个机器人的机器人权重值,就能按照实际需要安排机器人通过交叉路口,实现了对机器人的集中调度,使机器人得以有序、高效地通过交叉路口。整个过程简单、方便,无需改动源代码,只要对所述权重值做相应的调整即可满足各类实际需求。图3示出了本发明实施例中一种机器人调度方法在另一个应用场景下的示意图。请参阅图3,图3与图2的区别在于图3中路口C是一条单行通道,即机器人等待区和机器人通行道重叠,如果路口C上停靠有待放行机器人,则其它路口的机器人无法通往路口C,因此在放行时应当优先放行路口C,使路口C的待放行机器人先通过交叉路口,以便其它路口的机器人能通往路口C。假设路口A上具有3个待放行机器人X1、Y1和Z1,路口B上具有2个待放行机器人X2和Y2,路口C上具有2个待放行机器人X3和Y3,路口D上没有待放行机器人。A的路口权重值为5,机器人权重值为4,B的路口权重值为3,机器人权重值为8,C和D的路口权重值都是2,机器人权重值都是5。首先要确定十字交叉路口中的待调度路口,调度服务器检测所述交叉路口中每个路口的机器人等待区中是否有机器人停靠,如果有机器人停靠,则确定该路口为待调度路口。因此,本例子中待调度路口是A、B和C。然后获取路口A、B和C的放行优先级,由于路口C是单行路口,因此路口C的放行优先级最高,如果只考虑路口权重值,则A、B和C的放行优先级从高到低依次为C-A-B。如果只考虑机器人权重值,则A、B和C的放行优先级从高到低依次为C-B-A。如果路口权重值和机器人权重值都考虑,则A、B和C的放行优先级从高到低依次为C-B-A。可以看出,即使针对较特殊的具有单行路口的交叉路口,只要在调度服务器上合理设置各个路口的路口权重值和各个机器人的机器人权重值,同时将单行路口的放行优先级定为最高级别,就能按照实际需要安排机器人通过交叉路口,实现了对机器人的集中调度,使机器人得以有序、高效地通过交叉路口。上面主要描述了一种机器人调度方法,下面将对一种机器人调度装置进行详细描述。图4示出了本发明实施例中一种机器人调度装置的结构图。如图4所示,所述机器人调度装置包括:路口确定模块401,用于确定目标交叉路口中的待调度路口;优先级获取模块402,用于获取所述待调度路口的放行优先级;放行模块403,用于按照所述放行优先级的优先级顺序依次放行所述待调度路口。可选的,所述路口确定模块401具体可以包括:检测单元4011,用于检测所述目标交叉路口的各个路口上的待放行机器人;确定单元4012,用于将检测到所述待放行机器人的路口确定为待调度路口。可选的,所述优先级获取模块402具体可以包括:第一权重获取单元4021,用于获取所述待调度路口的预设的路口权重值;第一优先级确定单元4022,用于根据所述路口权重值确定所述待调度路口的放行优先级;或者第二权重获取单元4023,用于获取所述待调度路口上的各个待放行机器人的预设的机器人权重值;第二优先级确定单元4024,用于根据所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级;或者第三权重获取单元4025,用于获取所述待调度路口的预设的路口权重值和所述待调度路口上的各个待放行机器人的预设的机器人权重值;第三优先级确定单元4026,用于根据所述路口权重值和所述各个待放行机器人的所述机器人权重值确定所述待调度路口的放行优先级。可选的,所述放行模块具体可以包括:数量判断单元4031,用于判断所述待调度路口上的待放行机器人的数量是否超过预设的数量阈值;数量控制单元4032,用于若所述待调度路口上的待放行机器人的数量超过预设的数量阈值,则在放行所述待调度路口时,控制所述待调度路口上放行的机器人数量小于或等于所述数量阈值。在本发明实施例中,还公开了一种机器人调度服务器,所述机器人调度服务器包括图4对应实施例中描述的任意一种机器人调度装置。所述机器人调度服务器可以用有线或无线的通信方式建立与机器人的通信连接关系。优选地,可以在机器人的工作环境搭建一个无线局域网,使在所述工作环境中的每一个机器人都能通过所述无线局域网与所述机器人调度服务器建立通信连接关系,利用所述机器人调度服务器对工作环境内每个机器人进行调度。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1