一种机器人的调度方法及装置
技术领域
本发明涉及机器人技术领域,具体而言,涉及一种机器人的调度方法及装置。
背景技术
目前,随着社会经济的快速发展,智能化产品的广泛应用,超级市场、机场、车站、会展中心及物流仓库等大型人流、物流场所的规模和数量不断扩大,以往以人为主的模式已满足不了实际的需求,因此,越来越多的能够自主工作的自动化机器人参与到机场行李运输、物流配送等领域。自动化机器人是一个集成环境感知、路线规划、动态决策、行为控制以及报警模块为一体的多功能综合系统,能够实现定时、流动自助工作。自动化机器人能够代替人力进行物品运输、搬运、分拣、存储以及打包等工作,通过自动化机器人能够极大地提高物流行业的工作效率,降低工作成本。
随之快递分拣行业的蓬勃发展,自动化机器人也开始广泛应用于快递分拣行业,进而取代人员进行物品分拣、运送的相关工作。然而,在一定运动场地范围内通常会设置多个机器人同时运动,多个机器人间很可能出现相互碰撞的情况。当前,相关技术为了防止多个机器人间相互碰撞,需要在每个单独机器人上安装防碰撞传感器,当两个机器人间的距离小于预设距离时,其中一个机器人绕道行驶,选择其他行驶路线。
在实现本发明的过程中,发明人发现相关技术中至少存在以下问题:在数量多密度大的机器人应用环境下,机器人间容易发生相互碰撞的情况,相关技术中通过在机器人上设置防碰撞传感器来解决机器人间相互碰撞的问题,这样存在投入成本高,工作效率低,控制方式不灵活的问题。
发明内容
有鉴于此,本发明实施例的目的在于提供一种机器人的调度方法及装置,以避免机器人间的相互碰撞,降低投入和维护成本,同时,提高机器人的控制方式的灵活性。
第一方面,本发明实施例提供了一种机器人的调度方法,该方法包括:
根据当前工作任务选取待调度的机器人;
获取上述待调度的机器人在工作场地对应的三维坐标系内的起始节点坐标和目的地节点坐标;其中,上述三维坐标系包括上述工作场地内各个节点的横纵坐标平面和时间轴;
根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,其中,上述时间表存储有上述已规划机器人的标识、以及上述已规划机器人运动所经各个节点对应的时间、对应的运动方向、对应的移动速度;
触发上述待调度的机器人按照上述运动路径执行上述工作任务。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,上述根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,包括:
将与上述起始节点邻接的多个节点作为探索节点,在上述探索节点中,根据上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表确定可用节点;
将上述可用节点中距离上述目的地节点路径最短的节点确定为上述待调度的机器人的路径节点;
对与上述路径节点邻接的多个节点依次进行探索,确定下一个路径节点,依次循环,直到当前确定的路径节点为上述目的地节点;
按照各个上述路径节点确定的先后顺序将各个上述路径节点组成上述待调度的机器人的运动路径。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,包括:
将与所述起始节点邻接的多个节点作为探索节点,在所述探索节点中,根据所述待调度的机器人的当前朝向和移动速度、以及所述工作场地内已规划机器人运动所经节点的时间表确定可用节点;
继续对分别与所述可用节点邻接的多个节点依次进行探索,确定下一批可用节点,依次循环,直到当前确定的可用节点为所述目的地节点;
按照各个可用节点确定的先后顺序组成所述待调度的机器人从所述起始节点达到所述目的地节点的多条可能运动路径;
将上述多条可能运动路径中用时最短的路径作为上述待调度的机器人的运动路径。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,上述方法还包括:
实时监听上述工作场地内各个已规划机器人上报的运动所经的当前节点对应的运动参数,其中所述运动参数包括:节点坐标、时间、运动方向和移动速度;
根据各个上述已规划机器人运动所经的当前节点坐标和当前移动速度计算上述已规划机器人到达预设节点的时间;
判断各个上述已规划机器人到达预设节点的时间两两邻接的时间间隔是否大于预设阈值;
若否,则进行报警并调整上述已规划机器人的移动速度,以使各个上述已规划机器人到达预设节点的时间两两邻接的时间间隔大于预设阈值。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述方法还包括:
实时监听所述工作场地内各个已规划机器人上报的运动所经的当前节点对应的运动参数,其中所述运动参数包括:节点坐标、时间、运动方向和移动速度;
判断所述已规划机器人的当前节点对应的运动参数与规划的运动路径中所述节点对应的运动参数的偏差是否大于预设阈值;
若是,则进行报警和/或调整所述已规划机器人的运动参数,以使所述已规划机器人在预设时间后的达到预设节点的运动参数与所述规划的运动路径中所述预设节点的运动参数的偏差小于预设阈值。
结合第一方面至第一方面的第四种可能的实施方式中的任意一种,本发明实施例提供了第一方面的第五种可能的实施方式,其中,上述方法还包括:
按照预设时间间隔对上述工作场地内已规划机器人进行时间同步操作,以使所有的机器人与调度服务器的基准时间保持一致。
第二方面,本发明实施例还提供了一种机器人的调度装置,该装置包括:
选取模块,用于根据当前工作任务选取待调度的机器人;
获取模块,用于获取上述待调度的机器人在工作场地对应的三维坐标系内的起始节点坐标和目的地节点坐标;其中,上述三维坐标系包括上述工作场地内各个节点的横纵坐标平面和时间轴;
规划模块,用于根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,其中,上述时间表存储有上述已规划机器人的标识、以及上述已规划机器人运动所经各个节点对应的时间、对应的运动方向、对应的移动速度;
触发模块,用于触发上述待调度的机器人按照上述运动路径执行上述工作任务。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,上述规划模块包括:
第一可用节点确定单元,用于将与上述起始节点邻接的多个节点作为探索节点,在上述探索节点中,根据上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表确定可用节点;
路径节点确定单元,用于将上述可用节点中距离上述目的地节点路径最短的节点确定为上述待调度的机器人的路径节点;对与上述路径节点邻接的多个节点依次进行探索,确定下一个路径节点,依次循环,直到当前确定的路径节点为上述目的地节点;
第一运动路径确定单元,用于按照各个上述路径节点确定的先后顺序将各个上述路径节点组成上述待调度的机器人的运动路径。
结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,上述规划模块包括:
第二可用节点确定单元,用于将与所述起始节点邻接的多个节点作为探索节点,在所述探索节点中,根据所述待调度的机器人的当前朝向和移动速度、以及所述工作场地内已规划机器人运动所经节点的时间表确定可用节点;继续对分别与所述可用节点邻接的多个节点依次进行探索,确定下一批可用节点,依次循环,直到当前确定的可用节点为所述目的地节点;
第二运动路径确定单元,用于按照各个可用节点确定的先后顺序组成所述待调度的机器人从所述起始节点达到所述目的地节点的多条可能运动路径;将上述多条可能运动路径中用时最短的路径作为上述待调度的机器人的运动路径。
结合第二方面至第二方面的第二种可能的实施方式中的任意一种,本发明实施例提供了第二方面的第三种可能的实施方式,其中,上述装置还包括:
时间同步模块,用于按照预设时间间隔对上述工作场地内已规划机器人进行时间同步操作,以使所有的机器人与调度服务器的基准时间保持一致。
在本发明实施例提供的机器人的调度方法及装置中,在机器人的工作场地内设置多个节点,将待调度机器人的运动路径在包含多个节点的横纵坐标和时间轴的三维坐标系下位置时间化,即采用将工作场地进行节点化、将运动路径时间化的方式,根据待调度机器人的起始节点坐标和目的地节点坐标、待调度的机器人的当前朝向和移动速度、以及工作场地内已规划机器人运动所经节点的时间表规划待调度的机器人的运动路径,使不同机器人的运动路径在上述三维坐标系中无重合点,进而对工作场地内的机器人进行逐一调度,以使待调度机器人按照规划的运动路径执行相应的工作任务,避免了机器人间的相互碰撞,同时,提高了机器人的控制方式的灵活性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例所提供的一种机器人的调度方法的流程示意图;
图2示出了本发明实施例所提供的一种机器人的调度装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
考虑到在数量多密度大的机器人应用环境下,机器人间容易发生相互碰撞的情况,相关技术中通过在机器人上设置防碰撞传感器来解决机器人间相互碰撞的问题,这样存在投入成本高,工作效率低,控制方式不灵活的问题。基于此,本发明实施例提供了一种机器人的调度方法和装置,下面通过实施例进行描述。
如图1所示,本发明实施例提供了一种机器人的调度方法,该方法包括步骤S102-S108,具体如下:
步骤S102:根据当前工作任务选取待调度的机器人;
具体的,首先,根据需要执行的当前工作任务选取与该当前工作任务相匹配的且在等待分配任务区的机器人,将该机器人作为待调度的机器人。
步骤S104:获取上述待调度的机器人在工作场地对应的三维坐标系内的起始节点坐标和目的地节点坐标;其中,上述三维坐标系包括上述工作场地内各个节点的横纵坐标平面和时间轴;
其中,预先将机器人的工作场地划分为多个节点,每个节点对应一个横纵坐标,加入时间轴,建立三维坐标系,获取待调度机器人的起始节点坐标和目的地节点坐标,目的地节点坐标可以是预先存储的不同的机器人对应不同目的地,再根据待调度机器人的编号标识确定的,也可以是根据机器人上的物件信息确定的,例如,在快递分拣行业中,可以是识别待调度机器人上携带的物件,根据该物件需要送达的位置确定上述待调度机器人的目的地。
步骤S106:根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,其中,上述时间表存储有上述已规划机器人的标识、以及上述已规划机器人运动所经各个节点的运动参数,该运动参数包括:经过各个节点对应的时间、对应的运动方向、对应的移动速度;
另外,上述规划待调度的机器人的运动路径包括:确定待调度机器人从起始节点到达目的地节点所经的节点和运动所经各个节点的运动参数,该运动参数包括:经过各个节点对应的时间、对应的运动方向、对应的移动速度;
具体的,将已规划机器人和待调度机器人的运动路径在包含多个节点的横纵坐标和时间轴的三维坐标系下位置时间化,其中,将已规划机器人的标识、运动路径的各个节点坐标和到达各个节点的时间一一对应的存储在时间表中,在规划待调度机器人的运动路径时,根据机器人的移动速度计算得到该机器人到达各个节点的时间,需要确保的是工作场地内的一个节点在同一时间只有一个机器人经过,为了进一步避免机器人间相互碰撞可以设定工作场地内的一个节点在预设时间间隔内只有一个机器人经过。
步骤S108:触发上述待调度的机器人按照上述运动路径执行上述工作任务,具体的,将规划好的运动路径下发到待调度的机器人并触发该机器人进行运动。
本发明实施例提供的机器人的调度方法通过在机器人的工作场地内设置多个节点,将待调度机器人的运动路径在包含多个节点的横纵坐标和时间轴的三维坐标系下位置时间化,即采用将工作场地进行节点化、将运动路径时间化的方式,根据待调度机器人的起始节点坐标和目的地节点坐标、待调度的机器人的当前朝向和移动速度、以及工作场地内已规划机器人运动所经节点的时间表规划待调度的机器人的运动路径,使不同机器人的运动路径在上述三维坐标系中无重合点,进而对工作场地内的机器人进行逐一调度,以使待调度机器人按照规划的运动路径执行相应的工作任务,避免了机器人间的相互碰撞,同时,提高了机器人的控制方式的灵活性。
需要说明的是,本发明实施例提供的机器人的调度方法主要针对在一定工作场地内机器人数量多密度大的行业,如目前蓬勃发展的快递分拣行业,通过自动化的机器人来执行快递分拣的工作,将快件运送到指定的位置,因此,为了避免机器人间的相互碰撞,需要对所有的机器人进行集中调度,逐一规划各个机器人的运动路线,规划其中一个机器人的运动路径时,需要参考其他已规划机器人的运动路径,排除两个以上的机器人在同一时刻到达同一位置的情况,从而达到避免多个机器人间相互碰撞的情况,同时,在路线规划过程中考虑机器人从起始点到目的地的用时,通过预设的规划方式为待调度机器人选取用时最短的运动路径。
具体的,在本发明实施例中提供以下两个规划机器人运动路径的方法,一种是:上述根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,包括:
将与上述起始节点邻接的多个节点作为探索节点,在上述探索节点中,根据上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表确定可用节点,并将已探索节点从待探索节点列表中删除;
将上述可用节点中距离上述目的地节点路径最短的节点确定为上述待调度的机器人的路径节点,记录待调度的机器人经过该路径节点对应的时间、对应的运动速度、对应的移动方向,并将确定的路径节点邻接的多个节点列入待探索节点列表中;
对与上述路径节点邻接的多个节点依次进行探索,确定下一个路径节点,依次循环,直到当前确定的路径节点为上述目的地节点;
按照各个上述路径节点确定的先后顺序将各个上述路径节点组成上述待调度的机器人的运动路径,其中各个路径节点所包含的信息包括:所述待调度机器人经过路径节点的时间、经过路径节点的运动速度、经过路径节点的移动方向。
其中,与起始节点邻接的多个节点是指与起始节点间隔预设距离的节点,上述可用节点是指待调度机器人预计到达该节点时无其余机器经过且此节点无遮挡物机器人可以顺利通过;在此待调度的机器人的路径规划方式中,首先,从与选取节点邻接的多个节点中确定出可用节点(路径规划开始时的选取节点即为待调度机器人的起始节点),然后,在可用节点中选取距离目的地节点路径最短的节点,并将该节点作为待调度的机器人的路径节点,依次从起始节点开始逐一确定出多个路径节点,直到到达目的地节点为止,在此过程中不断排除不可用节点和并非距离目的地节点路径最短的可用节点,计算数据量逐渐减少,提高了待调度机器人的运动路径的规划效率,减少了后续的数据处理量。
具体的,另一种是:上述根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,包括:
将与上述起始节点邻接的多个节点作为探索节点,在上述探索节点中,根据上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表确定可用节点;
继续对分别与上述可用节点邻接的多个节点依次进行探索,确定下一批可用节点,依次循环,直到当前确定的可用节点为上述目的地节点;
按照各个可用节点确定的先后顺序组成上述待调度的机器人从上述起始节点达到上述目的地节点的多条可能运动路径;
将上述多条可能运动路径中用时最短的路径作为上述待调度的机器人的运动路径。
其中,上述可用节点是指待调度机器人预计到达该节点时无其余机器经过且此节点无遮挡物机器人可以顺利通过;在此待调度的机器人的路径规划方式中,首先,从起始节点与目的节点之间的多个节点中确定出所有可用节点,然后,利用确定出的所有可用节点确定起始节点与目的地节点间的多条可能运动路径,再从多条可能运动路径选取一条用时最短的路径作为运动路径,在此过程中确定出的所有可用节点间的组合方式比较多,因此,相比于第一个待调度的机器人的路径规划方式,第二种路径规划方式计算量较大,但同样可以确定出待调度机器人从起始节点到目的地节点的用时最短的运动路径。
在本发明实施例提供的机器人的调度方法中,给出了以上两种规划待调度机器人的运动路径的方式,其中,一种方式是确定可用节点,接着从可用节点中选择一个距离目的地节点最近的节点,其余可用节点排除;另一种方式是确定所有可用节点,组成多条可能行驶路径,从多条可能行驶路径中选择一条用时最短的;无论是哪种规划运动路径的方式均在本发明的保护范围内,在实际应用过程中优选第一个规划运动路径的方式,以提高待调度机器人的运动路径规划效率。
进一步的,考虑到已规划机器人在实际移动过程中可能存在移动速度与预设速度不一致,从而导致各个已规划机器人到达预设节点的时间两两邻接的时间间隔小于预设阈值,出现机器人间相互碰撞的现象,基于此,上述方法还包括:
实时监听上述工作场地内各个已规划机器人上报的运动所经的当前节点坐标和当前移动速度;
根据各个上述已规划机器人运动所经的当前节点坐标和当前移动速度计算上述已规划机器人到达预设节点的时间;
判断各个上述已规划机器人到达预设节点的时间两两邻接的时间间隔是否大于预设阈值;
若否,则进行报警并调整上述已规划机器人的移动速度,以使各个上述已规划机器人到达预设节点的时间两两邻接的时间间隔大于预设阈值。
在本发明实施例中,通过实时计算已规划机器人到达预设节点的时间,当各个已规划机器人到达预设节点的时间两两邻接的时间间隔小于预设阈值时,调整机器人的移动速度,保证各个已规划的机器人间保持一定的间距。
进一步的,考虑到已规划机器人在实际移动过程中可能存在移动速度与预设速度不一致,从而导致已规划机器人到达预设节点的时间与下发的运动路径中达到该节点的时间不一致,或者是导致已规划机器人的当前时间的节点坐标与规划的运动路径中该当前时间所对应的节点坐标不一致,出现机器人间相互碰撞的现象,基于此,上述方法还包括:
实时监听上述工作场地内各个已规划机器人上报的运动所经的当前节点对应的运动参数,其中所述运动参数包括:节点坐标、时间、运动方向和移动速度;
判断上述已规划机器人的当前节点对应的运动参数与规划的运动路径中上述节点对应的运动参数的偏差是否大于预设阈值;
若是,则进行报警和/或调整上述已规划机器人的运动参数,以使上述已规划机器人在预设时间后的到达预设节点的运动参数与上述规划的运动路径中上述预设节点的运动参数的偏差小于预设阈值。
在本发明实施例中,通过实时将当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标进行比较,当当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标不一致时,调整机器人的移动速度,保证已规划的机器人的当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标一致。
考虑到待调度的机器人时间可能与服务器时间不一致,基于此,上述方法还包括:
按照预设时间间隔对上述工作场地内已规划机器人进行时间同步操作,以使所有的机器人与调度服务器的基准时间保持一致。
在本发明实施例提供的机器人的调度方法中,通过在机器人的工作场地内设置多个节点,将待调度机器人的运动路径在包含多个节点的横纵坐标和时间轴的三维坐标系下位置时间化,即采用将工作场地进行节点化、将运动路径时间化的方式,根据待调度机器人的起始节点坐标和目的地节点坐标、待调度的机器人的当前朝向和移动速度、以及工作场地内已规划机器人运动所经节点的时间表规划待调度的机器人的运动路径,使不同机器人的运动路径在上述三维坐标系中无重合点,进而对工作场地内的机器人进行逐一调度,以使待调度机器人按照规划的运动路径执行相应的工作任务,避免了机器人间的相互碰撞,同时,提高了机器人的控制方式的灵活性;
进一步的,在本发明实施例中,首先从与选取节点邻接的多个节点中确定出可用节点,然后在可用节点中选取距离目的地节点路径最短的节点,其余可用节点排除,并将该节点作为待调度的机器人的路径节点,依次从起始节点开始逐一确定出多个路径节点,直到到达目的地节点为止,从而确定出该待调度机器人的运动路径,提高了待调度机器人的运动路径的规划效率,减少了后续的数据处理量;
更进一步的,在本发明实施例中,可以通过实时计算已规划机器人到达预设节点的时间,当各个已规划机器人到达预设节点的时间两两邻接的时间间隔小于预设阈值时,调整机器人的移动速度,保证各个已规划的机器人间保持一定的间距;还可以通过实时将当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标进行比较,当当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标不一致时,调整机器人的移动速度,保证已规划的机器人的当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标一致,从而进一步避免了已规划机器人在执行工作任务过程中相互碰撞。
对应于上述调度方法,本发明实施例还提供了一种机器人的调度装置,如图2所示,该装置包括:
选取模块202,用于根据当前工作任务选取待调度的机器人;
获取模块204,用于获取上述待调度的机器人在工作场地对应的三维坐标系内的起始节点坐标和目的地节点坐标;其中,上述三维坐标系包括上述工作场地内各个节点的横纵坐标平面和时间轴;
规划模块206,用于根据上述起始节点坐标和目的地节点坐标、上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表规划上述待调度的机器人的运动路径,其中,上述时间表存储有上述已规划机器人的标识、以及上述已规划机器人运动所经各个节点对应的时间、对应的运动方向、对应的移动速度;
触发模块208,用于触发上述待调度的机器人按照上述运动路径执行上述工作任务。
其中,上述机器人的调度装置可以是远程服务器,通过远程服务器中的各个功能模块实现上述功能,远程服务器与各个机器人以无线通信方式连接,各个机器人接收远程服务器发送的规划好的运动路径,并按照该运动路径执行相应的工作任务,当工作任务执行完后,机器人停靠在预设的位置,并向远程服务器发送任务完成的指令,等待远程服务器下发下一个工作任务对应的运动路径。
进一步的,上述规划模块206包括:
第一可用节点确定单元,用于将与上述起始节点邻接的多个节点作为探索节点,在上述探索节点中,根据上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表确定可用节点;
路径节点确定单元,用于将上述可用节点中距离上述目的地节点路径最短的节点确定为上述待调度的机器人的路径节点;对与上述路径节点邻接的多个节点依次进行探索,确定下一个路径节点,依次循环,直到当前确定的路径节点为上述目的地节点;
第一运动路径确定单元,用于按照各个上述路径节点确定的先后顺序将各个上述路径节点组成上述待调度的机器人的运动路径。
进一步的,上述规划模块206包括:
第二可用节点确定单元,用于将与上述起始节点邻接的多个节点作为探索节点,在上述探索节点中,根据上述待调度的机器人的当前朝向和移动速度、以及上述工作场地内已规划机器人运动所经节点的时间表确定可用节点;继续对分别与上述可用节点邻接的多个节点依次进行探索,确定下一批可用节点,依次循环,直到当前确定的可用节点为上述目的地节点;
第二运动路径确定单元,用于按照各个可用节点确定的先后顺序组成上述待调度的机器人从起始节点达到目的地节点的多条可能运动路径;将上述多条可能运动路径中用时最短的路径作为上述待调度的机器人的运动路径。
进一步的,上述装置还包括:
第一监听模块,用于实时监听所述工作场地内各个已规划机器人上报的运动所经的当前节点对应的运动参数,其中所述运动参数包括:节点坐标、时间、运动方向和移动速度;
计算模块,用于根据各个所述已规划机器人运动所经的当前节点坐标和当前移动速度计算所述已规划机器人到达预设节点的时间;
第一判断模块,用于判断各个所述已规划机器人到达预设节点的时间两两邻接的时间间隔是否大于预设阈值;
第一调整模块,用于若否,则进行报警并调整所述已规划机器人的移动速度,以使各个所述已规划机器人到达预设节点的时间两两邻接的时间间隔大于预设阈值。
进一步的,上述装置还包括:
第二监听模块,用于实时监听所述工作场地内各个已规划机器人上报的运动所经的当前节点对应的运动参数,其中所述运动参数包括:节点坐标、时间、运动方向和移动速度;
第二判断模块,用于判断所述已规划机器人的当前节点对应的运动参数与规划的运动路径中所述节点对应的运动参数的偏差是否大于预设阈值;
第二调整模块,用于若是,则进行报警和/或调整所述已规划机器人的运动参数,以使所述已规划机器人在预设时间后的达到预设节点的运动参数与所述规划的运动路径中所述预设节点的运动参数的偏差小于预设阈值。
进一步的,上述装置还包括:
时间同步模块,用于按照预设时间间隔对上述工作场地内已规划机器人进行时间同步操作,以使所有的机器人与调度服务器的基准时间保持一致。
本发明实施例提供的机器人的调度装置通过在机器人的工作场地内设置多个节点,将待调度机器人的运动路径在包含多个节点的横纵坐标和时间轴的三维坐标系下位置时间化,即采用将工作场地进行节点化、将运动路径时间化的方式,规划模块206根据待调度机器人的起始节点坐标和目的地节点坐标、待调度的机器人的当前朝向和移动速度、以及工作场地内已规划机器人运动所经节点的时间表规划待调度的机器人的运动路径,使不同机器人的运动路径在上述三维坐标系中无重合点,进而对工作场地内的机器人进行逐一调度,以使触发模块208触发上述待调度机器人按照规划的运动路径执行相应的工作任务,避免了机器人间的相互碰撞,同时,提高了机器人的控制方式的灵活性;
进一步的,在本发明实施例中,首先从与选取节点邻接的多个节点中确定出可用节点,然后在可用节点中选取距离目的地节点路径最短的节点,其余可用节点排除,并将该节点作为待调度的机器人的路径节点,依次从起始节点开始逐一确定出多个路径节点,直到到达目的地节点为止,从而确定出该待调度机器人的运动路径,提高了待调度机器人的运动路径的规划效率,减少了后续的数据处理量;
更进一步的,在本发明实施例中,可以通过实时计算已规划机器人到达预设节点的时间,当各个已规划机器人到达预设节点的时间两两邻接的时间间隔小于预设阈值时,调整机器人的移动速度,保证各个已规划的机器人间保持一定的间距;还可以通过实时将当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标进行比较,当当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标不一致时,调整机器人的移动速度,保证已规划的机器人的当前时间到达的节点坐标与下发的运动路径中该当前时间应到达的节点坐标一致,从而进一步避免了已规划机器人在执行工作任务过程中相互碰撞。
本发明实施例所提供的机器人的调度装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。