机器人控制方法、装置和系统与流程

未命名 10-08 阅读:73 评论:0


1.本公开的实施例涉及计算机技术领域,具体涉及机器人控制方法、装置和系统。


背景技术:

2.现有的许多仓库中为了放置更多的货架以保障更多的库存等目的,会比较紧密的设置货架。这种情况下,机器人在货架之间执行任务时(如取货、放货等)的方向通常保持不变。但机器人在一些近邻主路的边界货架处执行任务时,由于车身可能会占用一部分主路,从而可能会影响其它机器人的经过和旋转等,进而可能会形成堵塞等情况。
3.可见,当边界货架处有机器人执行如取放货等任务时,容易出现堵塞等情况而影响机器人的工作效率。而且这种情况下若出现机器人异常等需要人工介入处理时,可能需要挪动大量的机器人,从而增加异常解决的时间和影响范围。另外,在大量机器人堵塞时通常需要规划大量的绕路来解决堵塞问题,但因此容易出现的无效行走等不仅会浪费时间,还会浪费机器人的电池电量等,进而也会影响工作效率。


技术实现要素:

4.本公开的实施例提出了机器人控制方法、装置和系统。
5.第一方面,本公开的实施例提供了一种机器人控制方法,该方法包括:确定是否存在第一机器人阻碍第二机器人的当前行驶,其中,第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,边界货架的一侧为第二机器人当前所在的行驶道路;响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息;响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令,其中,掉头指令用于控制第一机器人掉头行驶至边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,以及控制第一机器人在第二任务执行位置处继续执行当前任务。
6.第二方面,本公开的实施例提供了一种机器人控制方法,该方法包括:响应于确定目标机器人接收到目标任务,确定目标机器人执行目标任务的属性信息,其中,目标任务在边界货架的第一任务执行位置处执行,边界货架的至少一侧为机器人的行驶道路;响应于确定目标任务的属性信息符合目标预设条件,控制目标机器人执行反向指令,其中,反向指令用于控制目标机器人到达边界货架的第二任务执行位置处执行目标任务,目标机器人分别在第一任务执行位置处和第二任务执行位置处执行目标任务的朝向相反。
7.第三方面,本公开的实施例提供了一种机器人控制装置,该装置包括:第一确定单元被配置成确定是否存在第一机器人阻碍第二机器人的当前行驶,其中,第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,边界货架的一侧为第二机器人当前所在的行驶道路;第二确定单元被配置成响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息;控制单元被配置成响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令,其中,掉头指令用于控制第
一机器人掉头行驶至边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,以及控制第一机器人在第二任务执行位置处继续执行当前任务。
8.第四方面,本公开的实施例提供了一种机器人控制装置,该装置包括:确定单元,被配置成响应于确定目标机器人接收到目标任务,确定目标机器人执行目标任务的属性信息,其中,目标任务在边界货架的第一任务执行位置处执行,边界货架的至少一侧为机器人的行驶道路;控制单元,被配置成响应于确定目标任务的属性信息符合目标预设条件,控制目标机器人执行反向指令,其中,反向指令用于控制目标机器人到达边界货架的第二任务执行位置处执行目标任务,目标机器人分别在第一任务执行位置处和第二任务执行位置处执行目标任务的朝向相反。
9.第五方面,本公开的实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。
10.第六方面,本公开的实施例提供了一种机器人,该机器人可以包括如上述第三方面所描述的电子设备。
11.第七方面,本公开的实施例提供了一种机器人控制系统,包括货架组、机器人组和控制服务端;其中,货架组包括至少一侧为机器人的行驶道路的边界货架,每个边界货架对应有第一任务执行位置和第二任务执行位置,机器人组中的机器人在第一任务执行位置或第二任务执行位置处执行对应的边界货架相关的任务;控制服务端用于实现如上述第一方面或第二方面所描述的方法。
12.第八方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
13.本公开的实施例提供的机器人控制方法、装置和系统,在边界货架处出现正在执行任务的第一机器人阻碍第二机器人的当前行驶时,通过判断第一机器人所执行的任务的当前属性信息符合第一预设条件时,控制第一机器人掉头行驶至边界货架的另一任务执行位置处,以解除对第二机器人的阻碍,同时控制第一机器人在新的任务执行位置处继续执行当前任务,以在边界货架处可能出现拥堵时及时地调整正在边界货架处执行任务的机器人的位置,以解除其对于其它机器人的行驶的阻碍,避免边界货架处的机器人造成拥堵等情况,从而提升机器人的任务执行效率。
附图说明
14.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
15.图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
16.图2是根据本公开的机器人控制方法的一个实施例的流程图;
17.图3是边界货架的示意图;
18.图4是根据本公开的实施例的机器人控制方法的一个应用场景的示意图;
19.图5是根据本公开的机器人控制方法的又一个实施例的流程图;
20.图6是根据本公开的机器人控制方法的再一个实施例的流程图;
21.图7是根据本公开的机器人控制装置的一个实施例的结构示意图;
22.图8是根据本公开的机器人控制装置的又一个实施例的结构示意图;
23.图9是根据本公开的第一位置标识和第二位置标识的一个示意图;
24.图10是适于用来实现本公开的实施例的电子设备的结构示意图。
具体实施方式
25.下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
26.需要说明的是,本发明的技术方案中,所涉及的各种信息的采集/收集、更新、分析、使用、传输、存储等方面,均符合相关法律法规的规定,被用于合法且合理的用途,不在这些合法使用等方面之外共享、泄露或出售,并且接受国家监管部门的监督管理。
27.需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
28.图1示出了可以应用本公开的机器人控制方法或机器人控制装置的实施例的示例性架构100。
29.如图1所示,系统架构100可以包括机器人101、101、103,网络104和服务器105。网络104用以在机器人101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
30.机器人101、102、103通过网络104与服务器105交互,以接收或发送消息或指令等。机器人101、102、103可以接收服务器105发送的指令等并按照该指令执行对应的动作以完成指定任务。机器人101、102、103也可以向服务器105反馈任务执行结果等信息。
31.机器人101、102、103可以是各种能够执行与货架相关的任务的机器人。例如,机器人包括但不限于:料箱机器人、地狼、搬运机器人等等。
32.服务器105可以是提供各种服务的服务器,例如用于控制机器人101、102、103的服务器。服务器可以控制机器人执行各种动作(如前进、后退、转弯、停止、取放货物等等),还可以为机器人规划行驶路线和避障策略等等。
33.需要说明的是,本公开的实施例所提供的机器人控制方法一般由服务器105执行,相应地,机器人控制装置一般设置于服务器105中。
34.需要说明的是,服务器105可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器105为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
35.另外,在一些情况下,服务器105可以设置于机器人101、102、103中,此时,机器人101、102、103可以由其自身设置的服务器对自身或其他机器人提供服务或进行控制。
36.应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的机器人、网络和服务器。
37.继续参考图2,其示出了根据本公开的机器人控制方法的一个实施例的流程200。该机器人控制方法包括以下步骤:
38.步骤201,确定是否存在第一机器人阻碍第二机器人的当前行驶。
39.在本实施例中,第一机器人可以包括正在边界货架的第一任务执行位置处执行任务的机器人。边界货架的一侧可以为第二机器人当前所在的行驶道路。
40.其中,第一机器人和第二机器人可以是用于执行任务的各种类型的机器人,具体可以根据实际的场景设置。例如,第一机器人和第二机器人可以为取放货的多层料箱机器人。
41.货架可以是用于存放物品的各种类型的货架,具体可以根据实际的应用场景设置。例如,货架可以是层格式货架、抽屉式货架等等。边界货架可以指邻侧不全是其他货架,且邻侧包括机器人的行驶道路的货架。例如,对于排列成一行的多个货架来说,其中位于左右两侧的两个货架可以视为边界货架。
42.任务执行位置可以指机器人执行任务时所在的位置。一般地,任务执行位置可以与货架对应。即每个货架可以有其对应的任务执行位置,此时,当机器人执行的任务与该货架对应时(如在该货架取放货等),机器人可以行驶至该货架对应的任务执行位置处进行取放货等任务。通常情况下,每个货架对应的任务执行位置设置在该货架附近。每个货架可以对应一个或两个以上的任务执行位置,具体可以根据实际的应用场景灵活设置。
43.需要说明的是,第一机器人和第二机器人一般为不同的机器人。第二机器人当前所在的行驶道路可以位于边界货架的一侧,且该边界货架为第一机器人当前正在执行的任务对应的货架。第一机器人阻碍第二机器人的当前行驶通常指第一机器人在边界货架执行如取放货等任务时阻挡了第二机器人的行驶道路。例如,第一机器人位于第二机器人的行驶正前方等。
44.在本实施例中,机器人控制方法的执行主体(如图1所示的服务器105等)可以采用各种方法确定是否存在上述第一机器人阻碍第二机器人的当前行驶的情况。例如,可以利用预设的障碍物检测方法确定是否存在上述第一机器人阻碍第二机器人的当前行驶的情况。又例如,可以根据实时记录的各机器人所在的位置和行驶状态确定是否存在上述第一机器人阻碍第二机器人的当前行驶的情况。
45.下面参见图3,图3是边界货架的一个示意图。如图3所示,货架可以按照一定的间距依次排列以形成一排货架,并以此设置多排货架。在图3所示的货架中,位于每排货架两侧且邻侧为机器人的行驶道路的货架“a”、货架“b”、货架“c”和货架“d”即为边界货架。另外,如图3所示,第一机器人正在边界货架“a”执行任务,但第一机器人的车身占据了货架“a”右侧的行驶道路,从而阻挡了在该行驶道路上的第二机器人的行驶。
46.步骤202、响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息。
47.在本实施例中,任务的属性信息可以指与机器人执行的任务相关的各种任务。例如,任务的紧急程度等。由于一些属性信息是可以随时变化或调整的,第一机器人执行的任务的当前属性信息可以指该任务当前最新的属性信息。
48.具体地,可以采用各种方法确定第一机器人执行的任务的当前属性信息。例如,可以实时或定时更新并记录第一机器人执行的任务的属性信息,此时,可以直接通过查询得到第一机器人执行的任务的当前属性信息。
49.步骤203、响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令。
50.在本实施例中,一般地,第一预设条件用于限制第一机器人执行的任务的属性信息,以判断第一机器人通过调整位置等进行让路的成本是否符合预期,进而确定是否控制第一机器人是否执行掉头指令。第一预设条件可以由相关技术人员根据实际的应用场景灵活设置。
51.其中,掉头指令可以用于控制第一机器人掉头行驶至边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,同时控制第一机器人在当前所在的第二任务执行位置处继续执行当前的任务。具体地,上述执行主体可以通过向第一机器人发送掉头指令以控制第一机器人执行该掉头指令。
52.边界货架的第二任务执行位置可以指机器人在该边界货架处执行位置时所在的另一位置。此时,上述边界货架对应有第一任务执行位置和第二任务执行位置。一般地,每个边界货架对应的第一任务执行位置和第二任务执行位置不同。
53.由于第一机器人是掉头行驶至边界货架的第二任务执行位置处,则第一机器人在该边界货架的第一任务执行位置处的朝向和在该边界货架的第二任务执行位置处的朝向相反。
54.以图3作为示例,若第一机器人在第一任务执行位置处的朝向是从货架“b”到货架“a”的方向,则第一机器人掉头行驶至第二任务执行位置后的朝向是从货架“a”到货架“b”的方向。
55.在第一机器人掉头行驶至边界货架的第二任务执行位置后,可以解除其对第二机器人的行驶的阻碍,即通过位置调整避免其车身阻挡第二机器人等情况,以使第二机器人可以正常行驶,无需重新规划路线以绕路行驶等,从而避免出现拥堵的情况,提升各机器人的任务执行效率。同时,第一机器人在掉头行驶至边界货架的第二任务执行位置后,可以继续执行其当前正在执行的任务。
56.在本实施例的一些可选的实现方式中,响应于确定当前属性信息不符合第一预设条件,控制第一机器人在第一任务执行位置处继续执行当前任务。
57.此时,若第一机器人执行的任务的当前属性信息不符合第一预设条件,如第一机器人当前执行的任务的紧急程度较高等,则可以控制第一机器人在原本的第一任务执行位置处继续执行当前任务,以保证任务的及时处理。这种情况下,被阻碍的第二机器人根据实际的场景可以在原地停留等待,直至第一机器人完成任务后不再阻碍第二机器人的行驶。或者,被阻碍的第二机器人可以重新规划路线行驶。
58.通过设置第一预设条件,可以根据阻碍其它机器人行驶的第一机器人当前执行的任务的属性,灵活控制其是否执行掉头指令以给其它机器人让路,提升机器人控制的灵活性。
59.在本实施例的一些可选的实现方式中,上述边界货架的第一任务执行位置处可以设置第一位置标识,同时,边界货架的第二任务执行位置处可以设置第二位置标识。
60.其中,位置标识可以用于辅助机器人到达边界货架对应的任务执行位置处。具体地,位置标识可以采用各种形式实现,如二维码等。作为示例,可以在边界货架对应的第一任务执行位置的地面设置一个二维码,同时在对应的第二任务执行位置的地面设置另一个二维码,机器人可以通过扫描地面上的二维码,以识别第一任务执行位置和第二任务执行位置。
61.另外,需要说明的是,对于除了边界货架之外的其它货架,可以仅对应一个任务执行位置,也可以对应多个任务执行位置。
62.通过在边界货架处设置两个不同的位置标识,以辅助机器人根据实际场景灵活选择任务执行位置,从而便捷地实现对机器人拥堵等情况的调节,物理成本较低。
63.在本实施例的一些可选的实现方式中,上述第一机器人执行的任务的当前属性信息可以对应表示如下至少一项属性:剩余任务执行时长、到达第二任务执行位置处是否有其它机器人阻碍、任务执行的优先级。
64.其中,剩余任务执行时长可以指第一机器人完成当前任务还需要的时长。到达第二任务执行位置处是否有其它机器人阻碍可以指是否存在其它机器人阻碍第一机器人到达第二任务执行位置处。例如,当前有机器人在第一机器人的边界货架的相邻货架执行任务,则该机器人可能会占据一些空间导致第一机器人当前无法到达第二任务执行位置处。任务执行的优先级可以根据实际的应用需求灵活设置。例如,根据任务的波次设置对应的优先级等。
65.需要说明的是,在第一机器人执行的任务的属性包括多方面时,可以灵活设置第一预设条件,例如,第一预设条件可以包括分别对应于各方面属性的子条件等。
66.又例如,可以预先设置根据任务多方面的属性计算第一机器人执行掉头指令的成本作为第一成本。同时,可以计算第二机器人绕路或等待的成本作为第二成本,此时,第一预设条件可以包括第一成本小于第二成本。
67.通过从任务执行的剩余时长、执行掉头指令的可行性和任务优先级等各方面综合判断是否控制第一机器人掉头行驶至另一任务执行位置处继续执行任务,以让开其它机器人的行驶道路保证其它机器人的顺畅行驶,可以从整体上更优地进行机器人控制,以满足指定目标。
68.继续参见图4a-4c,其是根据本实施例的机器人控制方法的一个示意性的应用场景。在图4a中,第一机器人在边界货架“a”对应的第一位置标识指示的第一任务执行位置处执行取货任务,且当前第一机器人的车头朝向是指向货架“a”的右侧。第二机器人正在货架“a”右侧的主路上向前行驶,由于第一机器人车身占据了主路的一些空间,导致阻碍了第二机器人的行驶。此时,可以计算控制第一机器人执行掉头指令以调整位置,避免对第二机器人的阻挡的成本,若该成本较低(例如小于预设成本阈值),则可以控制第一机器人掉头行驶至第二位置标识指示的第二任务执行位置处,如图4b所示,当第一机器人掉头行驶至第二任务执行位置时,可以使其车身容纳进货架之间,避免占据边界货架“a”右侧的主路的空间,从而让出主路空间以使第二机器人可以正常向前行驶。而且,此时第一机器人的车头朝向指向货架“a”的左侧方向。
69.另外,如图4c所示的第一机器人和第二机器人的侧视图和俯视图,第一机器人和第二机器人可以为多层料箱机器人。具体地,多层料箱机器人可以包括货叉、背篓和位置标识识别和停靠位。其中,背篓用于存放货物。货叉用于取放货物。位置标识识别和停靠位可以辅助机器人识别第一位置标识和第二位置标识,并通过对齐停靠在地面对应任务执行位置处。
70.当第一机器人在边界货架处执行任务时阻碍了第二机器人的行驶,则通过分析第一机器人执行的任务的相关属性与预设条件的匹配关系,判断控制第一机器人执行掉头指
令的成本较低时,通过控制调整第一机器人至边界货架的另一位置处继续执行任务,以使调整位置后的第一机器人不再阻挡第二机器人的行驶,从而避免第一机器人执行任务时导致机器人阻塞等情况,从而有助于提升机器人整体的任务执行效率。同时,其它被阻碍的机器人也可以省去停靠、逗留或规划大量绕路所花费的时间和电池电量等。另外,这种方式下若机器人出现异常需要人工介入处理时,也可以便捷地移动和处理异常的机器人,避免需要挪动大量机器人导致异常解决时间较长等问题,降低操作难度和异常解决时间。
71.进一步参考图5,其示出了机器人控制方法的又一个实施例的流程500。该机器人控制方法的流程500,包括以下步骤:
72.步骤501、响应于确定第三机器人接收到目标任务,确定第三机器人执行目标任务的属性信息。
73.在本实施例中,第三机器人可以是执行任务的任意机器人。目标任务可以指在边界货架的第一位置执行位置处执行的各种任务(如取放货任务等等)。
74.第三机器人执行目标任务的属性信息可以指与该目标任务相关的各种属性信息,具体可以根据实际的应用场景灵活设置。例如,属性信息可以表示目标任务的预测执行时长等。
75.具体地,可以采用各种方法确定第三机器人执行目标任务的属性信息。例如,可以预先实时统计和记录目标任务的属性信息,此时可以直接通过查询方式得到第三机器人执行目标任务的属性信息。
76.步骤502、响应于确定目标任务的属性信息符合第二预设条件,控制第三机器人执行反向指令。
77.在本实施例中,第二预设条件一般用于限制目标任务的属性信息,以判断第三机器人在边界货架的第一任务执行位置处执行任务时是否可能出现机器人拥堵等情况,进而确定是否控制第三机器人执行反向指令。具体地,第二预设条件可以根据实际的应用场景灵活设置。例如,在目标任务的属性信息表示目标任务的预测执行时长时,第二预设条件可以是目标任务的预测执行时长大于预设阈值等。
78.可选地,目标任务的属性信息可以用于表示第三机器人在边界货架的第一任务执行位置处完成任务的预期时长。
79.其中,预期时长即表示从第三机器人到达边界货架的第一任务执行位置处开始执行任务起,到第三机器人完成任务为止所花费的时长。此时,第二预设条件可以包括预期时长大于预设时长阈值。即在第三机器人需要花费较长的时间在边界货架处执行任务时,可以控制第三机器人执行反向指令。
80.反向指令可以用于控制第三机器人到达边界货架的第二任务执行位置处执行目标任务,且第三机器人在第二任务执行位置处的朝向与其在原本期望在第一任务执行位置处的朝向相反。具体地,可以由执行主体向第三机器人发送反向指令以控制第三机器人执行该反向指令。需要说明的是,第三机器人在第二任务执行位置处不会占据边界货架邻侧的行驶道路的过多空间导致阻碍其它机器人的行驶。
81.以上述图4b作为示例,第三机器人可以直接以车头朝向货架“a”的左侧的方向到达边界货架“a”的第二位置标识指示的第二任务执行位置处执行目标任务。
82.可选地,响应于确定目标任务的属性信息不符合第二预设条件,控制第三机器人
到达边界货架的第一任务执行位置处执行目标任务。
83.若目标任务的属性信息不符合第二预设条件,则可以控制机器人到达边界货架的第一任务执行位置处执行目标任务。由此可以通过第二预设条件作为筛选,以灵活控制第三机器人在边界货架处执行任务的位置和朝向,从而提升机器人整体控制的灵活性。
84.步骤503、响应于确定存在第一机器人阻碍第二机器人的当前行驶。
85.步骤504、响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息。
86.步骤505、响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令。
87.其中,上述步骤503-505具体可以参考上述图2实施例所描述的相关内容,在此不再赘述。
88.在第三机器人接收到目标任务时,先分析第三机器人的完成任务的预期时长是否较长等,以在第三机器人在边界货架的第一任务执行位置处执行任务时可能导致机器人拥堵等情况下,直接控制第三机器人以边界货架的第二任务执行位置处所匹配的朝向到达第二任务执行位置处来执行目标任务,以避免可能出现在其执行任务时阻挡其它机器人行驶的情况。
89.另外,需要说明的是,第三机器人可以与第一机器人、第二机器人不同。第三机器人也可以是第一机器人或第二机器人。
90.进一步参考图6,其示出了机器人控制方法的再一个实施例的流程600。该机器人控制方法的流程600,包括以下步骤:
91.步骤601、响应于确定目标机器人接收到目标任务,确定目标机器人执行目标任务的属性信息。
92.在本实施例中,目标机器人可以是执行任务的任意机器人。目标任务指可以在边界货架的第一位置执行位置处执行的各种任务(如取放货任务等等)。边界货架的至少一侧可以为机器人的行驶道路。
93.目标机器人执行目标任务的属性信息可以指与该目标任务相关的各种属性信息,具体可以根据实际的应用场景灵活设置。例如,属性信息可以表示目标任务的预测执行时长等。
94.具体地,可以采用各种方法确定目标机器人执行目标任务的属性信息。例如,可以预先实时统计和记录目标任务的属性信息,此时可以直接通过查询方式得到目标机器人执行目标任务的属性信息。
95.步骤602、响应于确定目标任务的属性信息符合目标预设条件,控制目标机器人执行反向指令。
96.在本实施例中,目标预设条件一般用于限制目标任务的属性信息,以判断目标机器人在边界货架的第一任务执行位置处执行任务时是否可能出现机器人拥堵等情况,进而确定是否控制目标机器人执行反向指令。具体地,目标预设条件可以根据实际的应用场景灵活设置。例如,在目标任务的属性信息表示目标任务的预测执行时长时,目标预设条件可以是目标任务的预测执行时长大于预设阈值等。
97.可选地,目标任务的属性信息可以用于表示目标机器人在边界货架的第一任务执
行位置处完成任务的预期时长。
98.其中,预期时长即表示从目标机器人到达边界货架的第一任务执行位置处开始执行任务起,到目标机器人完成任务为止所花费的时长。此时,目标预设条件可以包括预期时长大于预设时长阈值。即在目标机器人需要花费较长的时间在边界货架处执行任务时,可以控制目标机器人执行反向指令。
99.反向指令可以用于控制目标机器人到达边界货架的第二任务执行位置处执行目标任务,且目标机器人在第二任务执行位置处的朝向与其在原本期望在第一任务执行位置处的朝向相反。具体地,可以由执行主体向目标机器人发送反向指令以控制目标机器人执行该反向指令。需要说明的是,目标机器人在第二任务执行位置处不会占据边界货架邻侧的行驶道路的过多空间导致阻碍其它机器人的行驶。
100.可选地,响应于确定目标任务的属性信息不符合第二预设条件,控制目标机器人到达边界货架的第一任务执行位置处执行目标任务。
101.若目标任务的属性信息不符合第二预设条件,则可以控制目标机器人到达边界货架的第一任务执行位置处执行目标任务。由此可以通过第二预设条件作为筛选,以灵活控制目标机器人在边界货架处执行任务的位置和朝向,从而提升机器人整体控制的灵活性。
102.可选地,上述边界货架的第一任务执行位置处可以设置第一位置标识,同时,边界货架的第二任务执行位置处可以设置第二位置标识。
103.其中,第一位置标识和第二位置标识可以用于辅助机器人到达边界货架对应的任务执行位置处。具体地,位置标识可以采用各种形式实现,如二维码等。作为示例,可以在边界货架对应的第一任务执行位置的地面设置一个二维码,同时在对应的第二任务执行位置的地面设置另一个二维码,机器人可以通过扫描地面上的二维码,以识别第一任务执行位置和第二任务执行位置。
104.另外,需要说明的是,对于除了边界货架之外的其它货架,可以仅对应一个任务执行位置,也可以对应多个任务执行位置。
105.通过在边界货架处设置两个不同的位置标识,以辅助机器人根据实际场景灵活选择任务执行位置,从而便捷地实现对机器人拥堵等情况的调节,物理成本较低。
106.需要说明的是,本实施例中的目标机器人可以是上述其它实施例中的第一机器人或第二机器人或第三机器人。
107.通过在机器人接收到任务时,先分析机器人的完成任务的预期时长是否较长等,以在机器人在边界货架的第一任务执行位置处执行任务时可能导致机器人拥堵等情况下,直接控制机器人以边界货架的第二任务执行位置处所匹配的朝向到达第二任务执行位置处来执行目标任务,从而避免可能出现在其执行任务时阻挡其它机器人行驶的情况,即及早地对拥堵进行判断,并在可能出现拥堵时及时调整策略以控制机器人到达另一任务执行位置处,从而规避拥堵风险。
108.进一步参考图7,作为对上述各图所示方法的实现,本公开提供了机器人控制装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
109.如图7所示,本实施例提供的机器人控制装置700包括第一确定单元701、第二确定单元702和控制单元703。其中,第一确定单元701被配置成确定是否存在第一机器人阻碍第
二机器人的当前行驶,其中,第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,边界货架的一侧为第二机器人当前所在的行驶道路;第二确定单元702被配置成响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息;控制单元703被配置成响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令,其中,掉头指令用于控制第一机器人掉头行驶至边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,以及控制第一机器人在第二任务执行位置处继续执行当前任务。
110.在本实施例中,机器人控制装置700中:第一确定单元701、第二确定单元702和控制单元703的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201、步骤202和步骤203的相关说明,在此不再赘述。
111.在本实施例的一些可选的实现方式中,上述控制单元703进一步被配置成:响应于确定当前属性信息不符合第一预设条件,控制第一机器人在第一任务执行位置处继续执行当前任务。
112.在本实施例的一些可选的实现方式中,上述机器人控制单元700还包括第三单元(图中未示出),被配置成响应于确定第三机器人接收到目标任务,确定第三机器人执行目标任务的属性信息,其中,目标任务在边界货架的第一任务执行位置处执行;上述控制单元703进一步被配置成:响应于确定目标任务的属性信息符合第二预设条件,控制第三机器人执行反向指令,其中,反向指令用于控制第三机器人到达边界货架的第二任务执行位置处执行目标任务,第三机器人分别在第一任务执行位置处和第二任务执行位置处执行目标任务的朝向相反。
113.在本实施例的一些可选的实现方式中,上述控制单元703进一步被配置成:响应于确定目标任务的属性信息不符合第二预设条件,控制第三机器人到达边界货架的第一任务执行位置处执行目标任务。
114.在本实施例的一些可选的实现方式中,边界货架的第一任务执行位置处设置有第一位置标识,边界货架的第二任务执行位置处设置有第二位置标识,第一位置标识和第二位置标识用于辅助机器人到达对应任务执行位置处。
115.在本实施例的一些可选的实现方式中,当前属性信息用于表示如下至少一项属性:剩余任务执行时长、到达第二任务执行位置处是否有其它机器人阻碍、任务执行的优先级。
116.在本实施例的一些可选的实现方式中,目标任务的属性信息用于表示第三机器人在边界货架的第一任务执行位置处完成任务的预期时长。
117.本公开的上述实施例提供的装置,通过第一确定单元确定是否存在第一机器人阻碍第二机器人的当前行驶,其中,第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,边界货架的一侧为第二机器人当前所在的行驶道路;第二确定单元响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息;控制单元响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令,其中,掉头指令用于控制第一机器人掉头行驶至边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,以及控制第一机器人在第二任务执行位置处继续执行当前任务,以在边界货架处可能出现拥堵时及时地调整正在边界货架处执行任务的机器
之间的其它货架)。
127.每个边界货架可以对应有第一任务执行位置和第二任务执行位置。机器人组中的机器人可以在第一任务执行位置或第二任务执行位置处执行对应的边界货架相关的任务。一般地,机器人可以优先在每个货架的第一任务执行位置处执行任务。但在确定机器人在边界货架的第一任务执行位置处可能会造成拥堵或者已经造成拥堵时,可以控制机器人到达边界货架的第二任务执行位置处执行任务,以规避拥堵。即每个边界货架对应的第二任务执行位置可以作为一个辅助任务执行位置,以规避机器人拥堵情况。而对于非边界货架,可以仅设置第一任务执行位置处供机器人停靠以执行任务即可。
128.控制服务端可以实现上述各实施例所描述的机器人控制方法以控制机器人灵活的选择边界货架处的任务执行位置,以避免出现机器人拥堵等情况。
129.可选地,每个边界货架对应的任务执行区域的地面可以设置有第一位置标识和第二位置标识,以及每个非边界货架对应的任务执行区域的地面设置有第一位置标识。其中,每个边界货架对应的任务执行区域通常指每个边界货架附近区域,即机器人可以停靠完成该边界货架对应的任务的区域。第一位置标识和第二位置标识可以是各种能够标识位置的信息(如二维码、指示牌等等)。
130.以图9作为示例,其示出了第一位置标识和第二位置标识的一个示意图。如图所示,在边界货架“a”前方地面上设置有主地码和副地码,其中,主地码可以作为第一位置标识以表示边界货架的第一任务执行位置。副地码可以作为第二位置标识以表示边界货架的第二任务执行位置。机器人分别主地码和副地码处停靠以执行任务时的朝向相反(如图中箭头所示方向)。在非边界货架“b”前方地面上可以仅设置主地码作为第一位置标识以供机器人停靠执行该非边界货架对应的任务。需要说明的是,图9中仅示出了一个边界货架“a”和一个非边界货架“b”分别对应的地码设计。其它的边界货架和非边界货架可以对应设计,图中未示出。
131.下面参考图10,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的服务器)1000的结构示意图。图6示出的服务器仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
132.如图10所示,电子设备1000可以包括处理装置(例如中央处理器、图形处理器等)1001,其可以根据存储在只读存储器(rom)1002中的程序或者从存储装置1008加载到随机访问存储器(ram)703中的程序而执行各种适当的动作和处理。在ram 1003中,还存储有电子设备1000操作所需的各种程序和数据。处理装置1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(i/o)接口1005也连接至总线1004。
133.通常,以下装置可以连接至i/o接口1005:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1006;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置1007;包括例如磁带、硬盘等的存储装置1008;以及通信装置1009。通信装置1009可以允许电子设备1000与其他设备进行无线或有线通信以交换数据。虽然图10示出了具有各种装置的电子设备1000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图10中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
134.本公开的实施例中机器人可以包括上述电子设备1000。此时机器人可以利用自身
安装的电子设备执行上述各实施例所描述的方法。机器人还可以安装有各种装置(如摄像装置、麦克风装置等等),以满足各种不同的需求。
135.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1009从网络上被下载和安装,或者从存储装置1008被安装,或者从rom 1002被安装。在该计算机程序被处理装置1001执行时,执行本公开的实施例的方法中限定的上述功能。
136.需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
137.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:确定是否存在第一机器人阻碍第二机器人的当前行驶,其中,第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,边界货架的一侧为第二机器人当前所在的行驶道路;响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息;响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令,其中,掉头指令用于控制第一机器人掉头行驶至边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,以及控制第一机器人在第二任务执行位置处继续执行当前任务。
138.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如
利用因特网服务提供商来通过因特网连接)。
139.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
140.描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括第一确定单元、第二确定单元和控制单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一确定单元还可以被描述为“确定是否存在第一机器人阻碍第二机器人的当前行驶的单元”。
141.以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

技术特征:
1.一种机器人控制方法,包括:确定是否存在第一机器人阻碍第二机器人的当前行驶,其中,所述第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,所述边界货架的一侧为所述第二机器人当前所在的行驶道路;响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定所述第一机器人执行的任务的当前属性信息;响应于确定所述当前属性信息符合第一预设条件,控制所述第一机器人执行掉头指令,其中,所述掉头指令用于控制第一机器人掉头行驶至所述边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,以及控制第一机器人在第二任务执行位置处继续执行当前任务。2.根据权利要求1所述的方法,其中,所述方法还包括:响应于确定所述当前属性信息不符合第一预设条件,控制所述第一机器人在所述第一任务执行位置处继续执行当前任务。3.根据权利要求2所述的方法,其中,所述方法还包括:响应于确定第三机器人接收到目标任务,确定所述第三机器人执行所述目标任务的属性信息,其中,所述目标任务在边界货架的第一任务执行位置处执行;响应于确定所述目标任务的属性信息符合第二预设条件,控制所述第三机器人执行反向指令,其中,所述反向指令用于控制第三机器人到达边界货架的第二任务执行位置处执行所述目标任务,第三机器人分别在第一任务执行位置处和第二任务执行位置处执行所述目标任务的朝向相反。4.根据权利要求3所述的方法,其中,所述方法还包括:响应于确定所述目标任务的属性信息不符合第二预设条件,控制所述第三机器人到达边界货架的第一任务执行位置处执行所述目标任务。5.根据权利要求4所述的方法,其中,所述边界货架的第一任务执行位置处设置有第一位置标识,边界货架的第二任务执行位置处设置有第二位置标识,所述第一位置标识和第二位置标识用于辅助机器人到达对应任务执行位置处。6.根据权利要求1-5之一所述的方法,其中,所述当前属性信息用于表示如下至少一项属性:剩余任务执行时长、到达第二任务执行位置处是否有其它机器人阻碍、任务执行的优先级。7.根据权利要求3-5之一所述的方法,其中,所述目标任务的属性信息用于表示所述第三机器人在边界货架的第一任务执行位置处完成任务的预期时长。8.一种机器人控制方法,包括:响应于确定目标机器人接收到目标任务,确定所述目标机器人执行所述目标任务的属性信息,其中,所述目标任务在边界货架的第一任务执行位置处执行,所述边界货架的至少一侧为机器人的行驶道路;响应于确定所述目标任务的属性信息符合目标预设条件,控制所述目标机器人执行反向指令,其中,所述反向指令用于控制目标机器人到达边界货架的第二任务执行位置处执行所述目标任务,目标机器人分别在第一任务执行位置处和第二任务执行位置处执行所述目标任务的朝向相反。
9.根据权利要求8所述的方法,其中,所述方法还包括:响应于确定所述目标任务的属性信息不符合目标预设条件,控制所述目标机器人到达边界货架的第一任务执行位置处执行所述目标任务。10.根据权利要求9所述的方法,其中,所述边界货架的第一任务执行位置处设置有第一位置标识,边界货架的第二任务执行位置处设置有第二位置标识,所述第一位置标识和第二位置标识用于辅助机器人到达对应任务执行位置处。11.根据权利要求10所述的方法,其中,所述目标任务的属性信息用于表示所述目标机器人在边界货架的第一任务执行位置处完成任务的预期时长。12.一种机器人控制装置,其中,所述装置包括:第一确定单元,被配置成确定是否存在第一机器人阻碍第二机器人的当前行驶,其中,所述第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,所述边界货架的一侧为所述第二机器人当前所在的行驶道路;第二确定单元,被配置成响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定所述第一机器人执行的任务的当前属性信息;控制单元,被配置成响应于确定所述当前属性信息符合第一预设条件,控制所述第一机器人执行掉头指令,其中,所述掉头指令用于控制第一机器人掉头行驶至所述边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,以及控制第一机器人在第二任务执行位置处继续执行当前任务。13.一种机器人控制装置,包括:确定单元,被配置成响应于确定目标机器人接收到目标任务,确定所述目标机器人执行所述目标任务的属性信息,其中,所述目标任务在边界货架的第一任务执行位置处执行,所述边界货架的至少一侧为机器人的行驶道路;控制单元,被配置成响应于确定所述目标任务的属性信息符合目标预设条件,控制所述目标机器人执行反向指令,其中,所述反向指令用于控制目标机器人到达边界货架的第二任务执行位置处执行所述目标任务,目标机器人分别在第一任务执行位置处和第二任务执行位置处执行所述目标任务的朝向相反。14.一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-11中任一所述的方法。15.一种机器人,包括权利要求9所述的电子设备。16.一种机器人控制系统,包括货架组、机器人组和控制服务端;其中,所述货架组包括至少一侧为机器人的行驶道路的边界货架,每个边界货架对应有第一任务执行位置和第二任务执行位置,所述机器人组中的机器人在所述第一任务执行位置或第二任务执行位置处执行对应的边界货架相关的任务;所述控制服务端用于实现如权利要求1-11中任一所述的方法。17.根据权利要求16所述的系统,其中,所述货架组还包括非边界货架,每个非边界货架对应有第一任务执行位置;以及
每个边界货架对应的任务执行区域的地面设置有第一位置标识和第二位置标识;每个非边界货架对应的任务执行区域的地面设置有第一位置标识。18.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-11中任一所述的方法。

技术总结
本公开的实施例公开了机器人控制方法、装置和系统。该方法的一具体实施方式包括:确定是否存在第一机器人阻碍第二机器人的当前行驶,其中,第一机器人包括正在边界货架的第一任务执行位置处执行任务的机器人,边界货架的一侧为第二机器人当前所在的行驶道路;响应于确定存在第一机器人阻碍第二机器人的当前行驶,确定第一机器人执行的任务的当前属性信息;响应于确定当前属性信息符合第一预设条件,控制第一机器人执行掉头指令,掉头指令用于控制第一机器人掉头行驶至边界货架的第二任务执行位置处以解除对第二机器人的当前行驶的阻碍,控制第一机器人在第二任务执行位置处继续执行当前任务。该实施方式有助于提升任务执行效率。务执行效率。务执行效率。


技术研发人员:岳兴忠 朱恒斌
受保护的技术使用者:北京京东乾石科技有限公司
技术研发日:2023.06.29
技术公布日:2023/10/6
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐