机器人、路径规划方法、装置和存储介质与流程
未命名
10-18
阅读:55
评论:0

1.本技术涉及机器人技术领域,特别是涉及一种机器人、路径规划方法、装置、存储介质和计算机程序产品。
背景技术:
2.随着机器人技术的发展,出现了机器人的路径规划技术。该技术使得机器人省时、省力,功能多样化等特点得以增加,正成为机器人研究的热点。其中一个方向是,降低人工劳动强度,已广泛应用于家庭、公共场所、学校等诸多复杂环境。
3.传统技术中,当环境场景发生改变或者环境中出现动态障碍物时,会造成机器人无法正常跟随原有路径,在高变化率的场景下,会出现机器人长时间被障碍物阻挡现象,进而导致机器人无法正常继续前行。
技术实现要素:
4.基于此,有必要针对上述技术问题,提供一种能够在场景出现变化的情况下,更新路径的机器人的路径规划方法、装置、机器人、计算机可读存储介质和计算机程序产品。
5.第一方面,本技术提供了一种机器人,所述机器人包括存储器和处理器,所述存储器用于存储可在所述处理器上运行的计算机可读指令,所述处理器用于执行所述计算机可读指令时实现如下步骤:
6.获取所述机器人在环境地图的目标区域中的路径;
7.若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;
8.根据所述路径调整点更新所述路径,得到更新后的目标路径。
9.在其中一个实施例中,所述获取所述机器人在环境地图的目标区域中的路径,包括:
10.确定所述环境地图中用于路径规划的感兴趣区域;
11.按照所述感兴趣区域内的场景特征,将所述感兴趣区域划分为多个子区域;
12.从各个所述子区域中,查找机器人所在的目标区域;
13.获取所述机器人在所述目标区域中的路径。
14.在其中一个实施例中,所述确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,包括:
15.在所述机器人按照所述路径运行的过程中,控制所述机器人采集环境信息;
16.若根据所述环境信息确定所述机器人的前进方向存在障碍物,则根据在预设时间段采集的环境信息生成所述障碍物的属性信息;
17.若根据所述属性信息判断所述机器人无法绕过所述障碍物,则确定所述障碍物为目标障碍物。
18.在其中一个实施例中,所述沿着所述路径搜索路径调整点,包括:
19.根据所述机器人沿着所述路径采集的环境信息从所述路径中搜索候选调整点;所述候选调整点与所述机器人在所述目标障碍物同侧;
20.在所述候选调整点中,确定与所述机器人的距离满足预设距离条件的路径调整点。
21.在其中一个实施例中,所述根据所述机器人沿着所述路径采集的环境信息从所述路径中搜索候选调整点,包括:
22.控制所述机器人沿着所述路径的前进方向运行并采集环境信息;
23.根据所述机器人在预设时间段采集的环境信息,感知所述目标障碍物在所述环境地图占据的目标障碍物区域;
24.根据所述目标障碍物区域更新所述环境地图,得到更新后的环境地图;
25.在更新后的环境地图搜索候选调整点。
26.在其中一个实施例中,所述根据所述路径调整点更新所述路径,包括:
27.若所述机器人与所述路径调整点在所述路径之间无障碍物,则根据所述机器人与所述路径调整点之间相连的线段更新所述路径;
28.若所述机器人与所述路径调整点在所述路径之间存在可绕行障碍物,则基于所述可绕行障碍物生成所述机器人与所述路径调整点之间的避障路段;通过所述避障路段更新所述路径。
29.在其中一个实施例中,所述处理器还用于执行所述计算机可读指令时实现如下步骤:
30.若所述路径的更新次数小于更新次数临界值,则执行所述沿着所述路径搜索路径调整点的步骤,得到目标路径,控制所述机器人按照所述目标路径运行;
31.若所述路径的更新次数大于所述更新次数临界值,且所述环境地图中存在下一可达区域,则控制所述机器人移动到所述下一可达区域。
32.第二方面,本技术提供了一种路径规划方法。所述方法包括:
33.在环境地图内,获取所述机器人在目标区域的路径;
34.若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;
35.根据所述路径调整点更新所述路径,得到更新后的目标路径。
36.第三方面,本技术还提供了一种机器人的路径规划装置。所述装置包括:
37.路径获取模块,用于在环境地图内,获取所述机器人在目标区域的路径;
38.路径调整点搜索模块,用于若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;
39.路径更新模块,用于根据所述路径调整点更新所述路径,得到更新后的目标路径。
40.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意实施例中机器人所实现的步骤。
41.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任意实施例中机器人所实现的步骤。
42.上述机器人及路径规划方法、装置、存储介质和计算机程序产品,在环境地图内,获取所述机器人在目标区域的路径,针对环境地图进行目标区域的路径规划,降低了对整个环境地图进行更新和路径规划的复杂度,便于进行路径规划;若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;根据所述路径调整点更新所述路径,得到更新后的目标路径,从而在场景出现变化的情况下,确定出不绕过目标障碍物的路径调整点,根据所述路径调整点更新所述路径,从而避免机器人长时间被障碍物阻挡,进而导致机器人无法正常继续前行;同时保持初始路径较高的覆盖率进行路径重规划。
附图说明
43.图1为一个实施例中机器人的路径规划方法的流程示意图;
44.图2为一个实施例中机器人的环境地图示意图;
45.图3为另一个实施例中机器人的在环境地图的子区域示意图;
46.图4为一个实施例中环境地图的子区域及关键点示意图;
47.图5为一个实施例中目标区域内的路径示意图;
48.图6为一个实施例中初始路径与目标路径示意图;
49.图7为一个实施例中的路径示意图;
50.图8为一个实施例中机器人的路径规划方法的流程图;
51.图9为一个实施例中机器人的路径规划装置的结构框图;
52.图10为一个实施例中计算机设备的内部结构图。
具体实施方式
53.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
54.本技术实施例提供的机器人的路径规划方法,可以基于机器人的处理器运行实现,也可以基于服务器的处理器运行实现。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现,机器人可以单独实现,也可以机器人与机器人之间交互实现。为便于描述,本技术中以在机器人中实现为例进行阐述。
55.在一个实施例中,如图1所示,提供了一种机器人,机器人包括存储器和处理器,所述存储器用于存储可在所述处理器上运行的计算机可读指令,所述处理器用于执行所述计算机可读指令时实现如下步骤:
56.步骤102,获取机器人在环境地图的目标区域中的路径。
57.环境地图是机器人路径规划的场景地图,可以根据场景中的静态障碍物或其他静态边界信息将环境地图划分为多个子区域,各个子区域均是机器人的不同可达区域。各个子区域内的路径分别进行规划,且基于各个子区域内的路径规划各个子区域之间的路径。目标区域包括机器人正在进行路径规划的子区域,而机器人在目标区域的路径是机器人预计前进的路径,该路径可以是提前规划的,也可以是机器人在运动过程至少更新一次的。
58.在一个实施例中,获取机器人在环境地图的目标区域中的路径,包括:根据环境地
图中的静态障碍物信息,将环境地图划分为多个子区域;在各个子区域中,根据机器人在环境地图中的位置确定机器人所在的目标区域;当不存在初始路径时,基于目标区域中的静态障碍物信息规划初始路径;当存在初始路径时,基于目标区域中的环境信息实时更新初始路径,得到更新后的目标路径。目标区域的路径在不同阶段是不同类型的路径,其在某一阶段是基于静态障碍物信息规划的初始路径,且初始路径基于目标区域中的场景变化或者动态障碍物等环境信息实时更新,从而使得机器人绕过部分动态障碍物继续前行。
59.其中,各子区域可以分别有其各自的标识(如id,identity document),且各子区域中分别有各子区域内的路径。可选地,环境地图的初始路径是弓形覆盖路径,且弓形覆盖路径分布于各子区域中。示例性地,环境地图是如图2所示的全环境地图或者感兴趣区域(roi,region of interest)201。全环境地图是机器人获取的整个运行环境的地图,感兴趣区域可以是全环境地图中选取出的某一部分地图区域。对全环境地图或者感兴趣区域分区出如图3所示的子区域301、子区域302、子区域303、子区域304。在一实施例中,通过弓形覆盖路径切割图2中的感兴趣区域所得的如图4所示的子区域路径图,即初始路径,图4的路径分布于感兴趣区域中的子区域401、子区域402、子区域403、子区域404中。
60.在一个实施例中,对初始路径的生成过程进行说明。获取机器人在环境地图内的目标区域中的路径,包括:确定在环境地图中用于路径规划的感兴趣区域;按照感兴趣区域内的场景特征,将感兴趣区域划分为多个子区域;从各个子区域中,查找机器人所在的目标区域;获取机器人在目标区域中的路径。
61.感兴趣区域是机器人环境地图中的部分区域,按照环境地图中的场景特征分割感兴趣区域,可以降低路径规划的复杂度,使得初始路径更为规则整齐。如图3所示,为将感兴趣区域划分为多个子区域的示意图。机器人所在的子区域即目标区域。在一个示例性地实施例中,如图4所示,对各个子区域进行路径规划,各个子区域内部的路径的每条线段进行端点索引记录,得到每个子区域内部的关键点,每个子区域内部的关键点包括各路径中的各线段各自的起始点与终点。各子区域中的路径即为机器人在目标区域中的路径,也就是初始路径。
62.场景特征包括但不限于场景边界和静态障碍物等感兴趣区域中的场景特征。场景特征用于确定各个子区域的边界,以在各子区域内分别进行路径规划。由此,当一个感兴趣区域(roi)内部的部分子区域的初始路径发生阻塞时,可以通过放弃部分阻塞的子区域的初始路径,避免被无法绕行的目标障碍物困在阻塞的区间里面,而从未被阻塞的子区域中通行,避免机器人被阻塞在一个不可通行的区域中,不能继续执行任务的情形。如图5所示,在目标区域501中的右侧子区域中的路径发生堵塞时,放弃目标区域501中的左侧子区域的路径,从机器人当前位置前往右侧未被阻塞的子区域(下一可达区域502)继续执行任务。当机器人是清洁机器人时,可通过这一方式增加机器人的清洁覆盖率,且清洁机器人在作业过程中,由于清洁场景的高变化率和大型障碍物导致清洁机器人长时间被障碍物阻挡,通过上述通行方式可以降低清洁机器人被障碍物阻挡的概率,从而确保清洁机器人能够更高覆盖率地完成环境地图中的各种清洁任务。
63.步骤104,若确定机器人在路径的前进方向存在无法绕行的目标障碍物,则沿着路径搜索路径调整点;路径调整点与机器人处于目标障碍物的同侧。
64.前进方向用于表征机器人在下一时刻将要到达的位置,其基于机器人在路径上的
机器人运动方向与机器人避障路径规划结果确定。当根据运行路径确定机器人是直线行驶时,机器人前进方向是以机器人为参照物的正前方,即机器人的朝向;当根据运行路径是针对可绕行障碍物的避障路径,且确定机器人向右旋转时,机器人前进方向在机器人为参照物的右侧方向。
65.目标障碍物是机器人无法通过调整运动参数绕行的障碍物,目标障碍物根据机器人的避障能力和视场角(fov,field of view)等参数而确定。示例性地,若机器人在原地不断调整前进方向,且基于机器人的避障能力和视场角中的至少一种参数判断机器人感知到无法绕行的障碍物,则确定该障碍物为目标障碍物。
66.路径调整点与机器人处于目标障碍物的同侧,因而机器人无需绕过目标障碍物即可到达路径调整点。当机器人确定路径调整点后,机器人可自路径调整点沿着目标区域的路径运行,实现了目标区域等局部子区域的路径重规划,降低了场景高变化率和大型障碍物导致机器人长时间被障碍物阻挡的概率。
67.在一个实施例中,确定机器人在路径的前进方向存在无法绕行的目标障碍物,包括:在按照路径运行的过程中,采集环境信息;根据环境信息判断机器人在路径的前进方向存在障碍物,且判断机器人无法规划该障碍物的避障路径,则确定该障碍物为目标障碍物。
68.在一个实施例中,确定机器人在路径的前进方向存在无法绕行的目标障碍物,包括:确定机器人在路径的前进方向存在障碍物;若判断机器人基于障碍物进行避障路径规划的时长超过预设值,则确定机器人在路径的前进方向存在无法绕行的目标障碍物。
69.在一个实施例中,确定机器人在路径的前进方向存在无法绕行的目标障碍物,包括:在机器人按照路径运行的过程中,控制机器人采集环境信息;若根据环境信息确定机器人的前进方向存在障碍物,则根据在预设时间段采集的环境信息生成障碍物的属性信息;若根据属性信息判断机器人无法绕过障碍物,则确定该障碍物为目标障碍物。
70.环境信息基于机器人自身的传感器或其他环境信息采集设备所采集,能够用于从机器人的视角在目标区域中的局部区域(子区域)检测障碍物,且可较为便捷地由机器人根据自身的绕障能力调整该局部区域内的路径,以准确地判断目标区域的局部区域是否存在障碍物,且可分析出该障碍物的属性信息。示例性地,通过机器人采集的图像数据、点云数据、惯性测量单元测量的数据(imu数据)和机器人位姿数据中的至少一项传感器数据,判断传感器采集信息的局部区域是否存在障碍物,若存在,则基于传感器数据分析该障碍物的属性信息。
71.障碍物的属性信息用于判断机器人是否能够根据自身的避障能力前进。障碍物的属性信息包括障碍物在目标区域中的规格,当障碍物的规格过大时,机器人判断自身无法绕过该障碍物,进而确定该障碍物是目标障碍物;障碍物在目标区域中的规格,包括该障碍物在目标区域的高度、宽度、厚度及其他属性信息。可选地,障碍物的属性信息可以是动态障碍物的属性信息,可以是因为场景变化而产生的静态障碍物的属性信息。
72.根据在预设时间段采集的环境信息生成障碍物的属性信息,当遇到大型障碍物或动态障碍物时,在传感器的视场角(fov)有限的情况下,不能瞬间获取障碍物的全貌,尽可能地通过机器人在被障碍物阻挡的预设时间段(如1min)里面不断地结合传感器信息去感知周围的环境信息,并把障碍物的坐标记录下来方便后面的地图更新,便于机器人重新规划路径以找到脱离障碍物阻挡的路径。
73.在一个可行地实施例中,根据在预设时间段采集的环境信息生成障碍物的属性信息,包括:根据在预设时间段内实时采集的环境信息,得到障碍物的预计高度、预计宽度与预计厚度中的至少一种预设时间段的预计属性信息。
74.相对应的,根据属性信息判断机器人无法绕过障碍物,包括:若根据预设时间段的预计属性信息判断障碍物的规格持续增长,则判断机器人无法绕过障碍物;若根据预设时间段的预计属性信息检测到障碍物的规格大于对应的阈值,则判断机器人无法绕过障碍物。
75.在一个实施例中,候选调整点如图6(a)所示,路径调整点如图6(b)所示。沿着路径搜索路径调整点,包括:根据机器人沿着路径采集的环境信息从路径中搜索候选调整点;候选调整点与机器人在目标障碍物同侧;在候选调整点中,确定与机器人的距离满足预设距离条件的路径调整点。
76.候选调整点与机器人在目标障碍物同侧,是根据机器人沿着路径逐步采集的环境信息分析机器人与目标障碍物的位置关系,再根据该位置关系从初始路径中选择出的路径点,候选调整点均可用于对机器人沿初始路径可到达的路径点进行调整。
77.可选地,当通过候选路径调整点进行调整时,可使得机器人移动到候选路径调整点,从而在避免机器人被目标障碍物长时间阻挡的同时,继续沿着初始路径中的至少部分路段移动,保障初始路径的较高覆盖率,以便于基于初始路径有效执行任务。
78.候选调整点是根据机器人沿着路径采集的环境信息搜索所得,尽管机器人采集的环境信息范围有限,也可能存在多个候选调整点,因而可从候选调整点中筛选出路径调整点,以进一步提高初始路径的覆盖率。
79.预设距离条件是对机器人的当前位置与候选调整点之间的距离进行限定的条件,以从候选调整点中筛选出路径调整点。预设距离条件可用于从候选调整点中筛选出与机器人最近的候选调整点,得到路径调整点,以尽可能地通过路径调整点使得初始路径的覆盖率进一步增加,以便于基于初始路径更有效执行任务。
80.在一个可选地实施例中,在候选调整点中,确定与机器人的距离满足预设距离条件的路径调整点,包括:计算并比较各候选调整点与机器人之间的距离,得到机器人的最近候选调整点;将该最近候选调整点确定为路径调整点。其中,机器人的最近候选调整点是与机器人的距离最短的候选调整点。
81.在一个可行地实施例中,为了尽可能地保障初始路径的覆盖率,计算并比较各候选调整点与机器人之间的距离,得到机器人的最近候选调整点,包括:将各候选调整点与机器人之间相连的线段,确定为各候选调整点与机器人之间的距离;将各候选调整点与机器人之间的距离分别进行比较,得到机器人的最近候选调整点。
82.在一个可行地实施例中,为了尽快地返回到初始路径,计算并比较各候选调整点与机器人之间的距离,得到机器人的最近候选调整点,包括:根据各候选调整点与机器人之间是否存在可绕行障碍物,确定与机器人之间存在可绕行障碍物的第一候选调整点,以及与机器人之间存在可绕行障碍物的第二候选调整点;基于可绕行障碍物确定第一候选调整点与机器人之间的第一距离,并确定第二候选调整点与机器人之间的线段为第二距离;分别比较各第一距离与各第二距离,得到机器人的最近候选调整点。
83.由此,通过机器人在路径不同位置依次采集的环境信息,基于采集到的环境信息
沿着路径搜索与机器人在障碍物同侧的候选调整点,进而确定出可用于调整路径的候选调整点,再根据候选调整点与机器人的距离确定满足预设距离条件的路径调整点,以路径调整点调整初始路径,使得机器人在初始路径的覆盖率更高,能够在环境地图中更好地执行相应任务。
84.在一个实施例中,根据机器人沿着路径采集的环境信息从路径中搜索候选调整点,包括:控制机器人沿着路径的前进方向运行并采集环境信息;根据机器人在预设时间段采集的环境信息,感知目标障碍物在环境地图占据的目标障碍物区域;根据目标障碍物区域更新环境地图,得到更新后的环境地图;在更新后的环境地图搜索候选调整点。
85.目标障碍物区域是根据机器人的运行过程采集环境信息,并将预设时间段的环境信息汇总所得。在机器人沿着路径的前进方向的运行过程中,机器人采集的环境信息随着机器人的位置逐渐变化,各位置的环境信息按照预设时间段汇总,进而逐步完善目标障碍物区域。可选地,在预设时间段内,机器人沿着路径在目标区域运行;根据机器人在该目标区域的不同位置,依次采集环境信息,得到路段中的各位置环境信息;将各位置环境信息汇总为预设时间段采集的环境信息;根据预设时间段采集的环境信息感知目标障碍物的坐标位置,得到目标障碍物区域。目标障碍物区域用于针对目标障碍物调整初始路径,并确定了机器人在目标区域进行路径规划的边界,以便于更新环境地图。
86.更新后的环境地图基于目标障碍物区域对初始环境地图进行调整所得,更新后的环境地图包括目标障碍物区域,并根据目标障碍物区域重新确定目标区域的边界,通过目标区域重新确定的边界重新规划目标区域内的路径,以确定与机器人在目标障碍物同侧的候选调整点。
87.在一个可选地实施例中,控制机器人沿着路径的前进方向运行并采集环境信息,包括:当控制机器人沿着路径的前进方向运行到各环境信息采集点时,控制机器人在自身传感器预设范围内,分别采集各环境信息采集点的传感器数据;基于各环境信息采集点的传感器数据生成环境信息。
88.在一个可选地实施例中,根据机器人在预设时间段采集的环境信息,感知目标障碍物在环境地图占据的目标障碍物区域,包括:将与当前时间戳处于预设时间段范围的环境信息依次进行组合,得到机器人在预设时间段采集的环境信息;根据机器人在预设时间段采集的环境信息,感知目标障碍物的各部位在环境地图的位置;将目标障碍物的各部位在环境地图的位置进行组合,得到目标障碍物区域。
89.通过路径的前进方向来控制机器人运行,充分利用已存在的路径的同时控制机器人采集环境信息,在一定程度上提高了初始路径的覆盖率;而通过机器人在预设时间段采集的环境信息,逐步完善目标障碍物在环境地图占据的目标障碍物区域,并根据目标障碍物区域更新环境地图,以完成初始路径进行非碰撞点的搜索,避免因场景变化,以及大型的动态障碍物而导致机器人长时间被障碍物阻挡的情形。
90.步骤106,根据路径调整点更新路径,得到更新后的目标路径。
91.目标路径的确定过程包括,通过路径调整点确定某位置,再根据机器人的当前位置确定机器人与路径调整点确定的位置形成新路段,再通过该新路段代替原有的部分路径,使得机器人保持在目标障碍物的同侧运动,避免机器人在绕过目标障碍物的过程中被障碍物阻挡。
92.在一可选地实施例中,如含有目标区域701的图7所示,根据路径调整点更新路径,得到更新后的目标路径,包括:在初始路径中,确定机器人和路径调整点之间的待更新路段;基于机器人和路径调整点的位置规划用于更新的路段;将用于更新的路段替换待更新路段,得到更新后的目标路径。
93.机器人在目标区域701中运行,被障碍物(白色框加叉区域)阻挡,通过更新路径,得到目标路径(断续的浅灰色连线),机器人基于更新的目标路径进行运行,而不被障碍物所阻挡,继续运行至下一可达区域702。
94.在一个实施例中,根据路径调整点更新路径,包括:若机器人与路径调整点在路径之间无障碍物,则通过机器人与路径调整点之间相连的线段更新路径;若机器人与路径调整点在路径之间存在可绕行障碍物,则基于可绕行障碍物生成机器人与路径调整点之间的避障路段;通过避障路段更新路径。
95.机器人与路径调整点之间相连的线段,是机器人到达路径调整点的最短距离;而机器人与路径调整点之间的避障路段,是机器人针对可绕行障碍物进行避障路径规划所得到的路径。
96.在一个可选地实施例中,基于可绕行障碍物生成机器人与路径调整点之间的避障路段,包括:基于可绕行障碍物的坐标位置,确定该可绕行障碍物在环境地图中的可绕行障碍物区域,可绕行障碍物区域无法作为避障路段;确定机器人与路径调整点之间的各候选避障点;计算从机器人的当前位置到达各候选避障点的各第一候选避障路段,并计算从各候选避障点到达路径调整点的各第二候选避障路段;根据各候选避障点各自的第一候选避障路段与第二候选避障路段,确定各候选避障点的路径距离;根据各候选避障点的最短路径距离,从各候选避障点筛选出避障点;根据避障点生成避障路段。
97.通过机器人与路径调整点之间相连的线段更新路径,使得机器人更快捷地回归到初始路径上,而当存在可绕行障碍物时,基于可绕行障碍物规划机器人达到路径调整点的避障路段回归到初始路径上,以便于机器人正常地继续执行任务。
98.在一个实施例中,处理器还用于执行计算机可读指令时实现如下步骤:若路径的更新次数小于更新次数临界值,则执行沿着路径搜索路径调整点的步骤,控制机器人按照目标路径运行;若路径的更新次数大于区域调整条件阈值,且目标区域在环境地图存在下一可达区域,则控制机器人移动到下一可达区域运行。
99.更新次数临界值是针对路径的更新次数设置的上限临界值,用于判断是否继续更新目标区域的路径,避免步骤102-106反复执行,从而保障机器人运行的效率。
100.下一可达区域是环境地图中的子区域,且该子区域与目标区域在路径规划时存在子区域顺序。当机器人在目标区域的路径运行完毕时,将目标区域内的初始路径均放弃掉,并按照子区域顺序前往目标区域的下一可达区域,以在下一可达区域运行,从而提高机器人在环境地图的全局覆盖率。可选地,当下一可达区域是下一个目标区域时,可采用本技术的任意实施例进行路径规划;当下一可达区域不是下一个目标区域时,可采用其他方案进行路径规划。
101.通过区域调整条件确定机器人路径调整的策略,采用子区域路径重新规划与子区域放弃两种方式进行配合的策略实现机器人的路径重规划功能。当机器人在清洁场景等具有的高变化率作业,或者遇到大型障碍物阻挡机器人时,通过上述路径重规划方法降低机
器人长时间被障碍物阻挡的概率,确保机器人能够正常继续执行相应任务。
102.可选地,当机器人按照目标路径运行,或者,控制机器人移动到下一可达区域运行的过程中,该机器人可同时进行某种业务。例如:若机器人为清洁机器人,且控制机器人按照目标路径运行的过程中,通过该清洁机器人进行清扫。
103.上述机器人所执行的路径规划指令中,在环境地图内,获取机器人在目标区域的路径,针对环境地图进行目标区域的路径规划,降低了对整个环境地图进行更新和路径规划的复杂度,便于进行路径规划;若确定机器人在路径的前进方向存在无法绕行的目标障碍物,则沿着路径搜索路径调整点;路径调整点与机器人处于目标障碍物的同侧;根据路径调整点更新路径,得到更新后的目标路径,从而在场景出现变化的情况下,确定出不绕过目标障碍物的路径调整点,从而避免机器人长时间被障碍物阻挡,进而导致机器人无法正常继续前行;同时保持初始路径较高的覆盖率进行路径重规划。
104.在以清洁机器人为例,阐述上述方案在具体应用场景的应用过程。以机器人为清洁机器人,清洁机器人执行清洁任务为例进行说明。若清洁机器人采用弓形方式进行覆盖路径作业,当环境场景发生改变或者环境中出现动态障碍物时,会造成机器人无法正常在初始路径中作业,由于机器人的绕障能力与感知视野(fov)中的至少一种属性处于有限的数值区间内,且为了尽可能地确保清洁的覆盖率和执行清洁任务的流畅性,因而在高变化率场景下,会出现机器人长时间被障碍物阻挡现象,进而导致机器人无法正常继续清洁任务。针对该问题,本实施例根据上述方案进行路径的重规划,将环境中新增的导致机器人长时间被阻挡的障碍物进行环境地图更新的处理,同时对初始规划的清洁路径进行重规划,以保证机器人在保证清洁覆盖率的情况下,顺利完成整个清洁任务。
105.具体的,若机器人在清扫过程中的场景变化或者动态障碍物出现在初始路径上,会导致机器人被障碍物阻挡,则整体任务就不能再执行下去。因而机器人获取预设时间段的传感器数据更新当前的环境地图。其中,设置roi区域(比如基于激光量程距离确定以25m为半径的区域),并确定roi区域内的各子区域,再从各子区域确定机器人所在的目标区域。加载该目标区域的环境地图,得到单次更新的环境地图。
106.当基于障碍物的规格或者机器人被障碍物阻挡的时间长度,确定机器人在路径的前进方向存在无法绕行的目标障碍物时,收到机器人卡死信号;根据机器人卡死信号触发初始路径的更新信号,并记录传感器数据,以通过传感器数据确定机器人在环境地图中的位置。
107.在收到更新动作信号后,机器人停止运动,并生成或优化更新后的子区域环境地图,以便于得到更新后的全局静态地图(全环境地图)。而获取更新的全局静态地图的过程,是更新障碍物坐标位置的过程,其具体包括:继续对目标区域内的路径前向搜索,确定在路径的临近行的最近非碰撞点(路径调整点),若将路径调整点的路径代替机器人预计到达的关键点,实现match_index的变更,以基于机器人从当前位置到达路径调整点的路径,输出更新后的目标路径;其中,目标区域是机器人正在进行路径规划的子区域。
108.在输出目标路径过程中,依据更新后的环境地图确定障碍物信息,并依据机器人在路径的前进方向与该障碍物信息,确定最近非碰撞点(路径调整点),再进行路径重新搜索匹配,得到目标路径。示例性地,进行路径重新搜索匹配,包括:在目标区域中的每条直线路径中,结合感知更新的环境地图进行碰撞检查,找到的每条直线路径的最近非碰撞点;在
搜索非碰撞点过程中,顺着原来的弓形路径方向进行的匹配,当两匹配点间不发生碰撞时,通过线段直接连接,当发生碰撞时,则用a*算法(astar)规划避障路径,以实现绕障衔接。
109.此外,该方法还包括:当目标区域索引路径进行n次路径重规划仍无法让机器人重新生成可脱离障碍物阻挡的覆盖路径,则转换为放弃目标区域的路径规划,进行路径目标变更,直接前往下一可达区域进行覆盖清扫,直到清洁机器人能够完成脱离障碍物阻挡,确保剩下的路径区域清洁任务能够继续正常进行。
110.基于此,在清洁机器人在作业过程中,采用各子区域的路径重新规划与子区域放弃两种方式进行配合的策略实现清洁机器人的路径重规划功能,使得清洁场景的高变化率和大型障碍物阻挡导致机器人长时间被障碍物阻挡的概率得以降低,确保清洁机器人能够正常继续清洁任务。而且,在子区域中,结合感知信息(传感器数据)对全局的环境地图更新,在初始路径进行非碰撞点的搜索,放弃部分被阻塞的路径,在确保机器人尽可能不卡死的同时,保留较高的清洁覆盖率进行路径重规划。
111.在一个示例性地实施例中,如图8所示,该方法包括:
112.获取分成各个独立子区域的静态离线覆盖路径,静态离线覆盖路径是根据环境地图生成的;其中,独立子区域均可作为上述步骤102中的目标区域,静态离线覆盖路径是上述步骤102中的路径,且该路径通过静态地图(环境地图)预先存储到机器人中,且可在机器人与服务器离线时使用;
113.若机器人卡住(被障碍物阻挡),则对当前区域(目标区域)进行n次路径调整点的探索路径调整点,判断机器人是否长时间被障碍物阻挡,若否,则执行正常清洁任务;
114.若机器人未长时间被障碍物阻挡,则根据历史障碍物信息(预设时间段内的传感器数据)进行场景更新,得到最新环境地图;根据最新环境地图,在目标区域进行路径点重新搜索出所有非碰撞点(路径调整点),且覆盖清洁路径的更新次数累加(n=n+1);再判断机器人是否被障碍物阻挡,即再判断机器人是否脱离障碍物阻挡。
115.若机器人长时间被障碍物阻挡,则判断当前区域是否为最后一个子区域,若是最后一个子区域,则结束任务;若不是最后一个子区域,则放弃当前区域路径的规划,直接前往下一个可达区域,以实现机器人脱离障碍物阻挡,从而执行正常清洁任务,直至结束任务。
116.应该理解的是,虽然如上的各实施例的各个步骤按照描述顺序依次显示,但是这些步骤并不是必然按照描述的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以是以其它的顺序执行。而且,如上的各实施例所涉及的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
117.本技术提供了一种机器人的路径规划方法。该方法包括:获取所述机器人在环境地图的目标区域中的路径;若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;根据所述路径调整点更新所述路径,得到更新后的目标路径。
118.在一个实施例中,所述获取所述机器人在环境地图的目标区域中的路径,包括:
119.确定所述环境地图中用于路径规划的感兴趣区域;
120.按照所述感兴趣区域内的场景特征,将所述感兴趣区域划分为多个子区域;
121.从各个所述子区域中,查找机器人所在的目标区域;
122.获取所述机器人在所述目标区域中的路径。
123.在其中一个实施例中,所述确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,包括:
124.在按照所述机器人所述路径运行的过程中,控制所述机器人采集环境信息;
125.若根据所述环境信息确定所述机器人的前进方向存在障碍物,则根据在预设时间段采集的环境信息生成所述障碍物的属性信息;
126.若根据所述属性信息判断所述机器人无法绕过所述障碍物,则确定所述障碍物为目标障碍物。
127.在其中一个实施例中,所述沿着所述路径搜索路径调整点,包括:
128.根据所述机器人沿着所述路径采集的环境信息从所述路径中搜索候选调整点;所述候选调整点与所述机器人在所述目标障碍物同侧;
129.在所述候选调整点中,确定与所述机器人的距离满足预设距离条件的路径调整点。
130.在其中一个实施例中,所述根据所述机器人沿着所述路径采集的环境信息从所述路径中搜索候选调整点,包括:
131.控制所述机器人沿着所述路径的前进方向运行并采集环境信息;
132.根据所述机器人在预设时间段采集的环境信息,感知所述目标障碍物在所述环境地图占据的目标障碍物区域;
133.根据所述目标障碍物区域更新所述环境地图,得到更新后的环境地图;
134.在更新后的环境地图搜索候选调整点。
135.在其中一个实施例中,所述根据所述路径调整点更新所述路径,包括:
136.若所述机器人与所述路径调整点在所述路径之间无障碍物,则通过所述机器人与所述路径调整点之间相连的线段更新所述路径;
137.若所述机器人与所述路径调整点在所述路径之间存在可绕行障碍物,则基于所述可绕行障碍物生成所述机器人与所述路径调整点之间的避障路段;通过所述避障路段更新所述路径。
138.在其中一个实施例中,所述方法还包括:
139.若所述路径的更新次数小于更新次数临界值,则执行所述沿着所述路径搜索路径调整点的步骤,控制所述机器人按照所述目标路径运行;
140.若所述路径的更新次数大于所述更新次数临界值,且所述目标区域在所述环境地图存在下一可达区域,则控制所述机器人移动到所述下一可达区域运行并进行清扫。
141.本方法的优势在于:针对环境地图进行目标区域的路径规划,降低了对整个环境地图进行更新和路径规划的复杂度,便于进行路径规划;沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧,从而在场景出现变化的情况下,确定出不绕过目标障碍物的路径调整点,根据路径调整点更新路径,从而避免机器人长时间被障碍物阻挡,进而导致机器人无法正常继续前行;同时保持初始路径较高的覆盖率进
行路径重规划。
142.应该理解的是,上述机器人的路径规划方法所涉及的步骤,并不是必然按照描述的顺序依次执行,可以以不同的顺序执行或者交叉执行,具体方案参照机器人实施例的描述,在此不再赘述。
143.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的机器人的路径规划方法的机器人的路径规划装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个机器人的路径规划装置实施例中的具体限定可以参见上文中对于机器人的路径规划方法的限定,在此不再赘述。
144.在一个实施例中,如图9所示,提供了一种机器人的路径规划装置,包括:路径获取模块902、路径调整点搜索模块904和路径更新模块906,其中:
145.路径获取模块902,用于获取所述机器人在环境地图的目标区域中的路径;
146.路径调整点搜索模块904,用于若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;
147.路径更新模块906,用于根据所述路径调整点更新所述路径,得到更新后的目标路径。
148.在一个实施例中,所述路径获取模块902,用于:
149.确定所述环境地图中用于路径规划的感兴趣区域;
150.按照所述感兴趣区域内的场景特征,将所述感兴趣区域划分为多个子区域;
151.从各个所述子区域中,查找机器人所在的目标区域;
152.获取所述机器人在所述目标区域中的路径。
153.在其中一个实施例中,所述路径调整点搜索模块904,用于:
154.在所述机器人按照所述路径运行的过程中,控制所述机器人采集环境信息;
155.若根据所述环境信息确定所述机器人的前进方向存在障碍物,则根据在预设时间段采集的环境信息生成所述障碍物的属性信息;
156.若根据所述属性信息判断所述机器人无法绕过所述障碍物,则确定所述障碍物为目标障碍物。
157.在其中一个实施例中,所述路径调整点搜索模块904,用于:
158.根据所述机器人沿着所述路径采集的环境信息从所述路径中搜索候选调整点;所述候选调整点与所述机器人在所述目标障碍物同侧;
159.在所述候选调整点中,确定与所述机器人的距离满足预设距离条件的路径调整点。
160.在其中一个实施例中,所述路径调整点搜索模块904,用于:
161.控制所述机器人沿着所述路径的前进方向运行并采集环境信息;
162.根据所述机器人在预设时间段采集的环境信息,感知所述目标障碍物在所述环境地图占据的目标障碍物区域;
163.根据所述目标障碍物区域更新所述环境地图,得到更新后的环境地图;
164.在更新后的环境地图搜索候选调整点。
165.在其中一个实施例中,所述路径更新模块906,用于:
166.若所述机器人与所述路径调整点在所述路径之间无障碍物,则通过所述机器人与所述路径调整点之间相连的线段更新所述路径;
167.若所述机器人与所述路径调整点在所述路径之间存在可绕行障碍物,则基于所述可绕行障碍物生成所述机器人与所述路径调整点之间的避障路段;通过所述避障路段更新所述路径。
168.在其中一个实施例中,所述路径更新模块906,还用于:
169.若所述路径的更新次数小于更新次数临界值,则执行所述沿着所述路径搜索路径调整点的步骤,控制所述机器人按照所述目标路径运行并进行清扫;
170.若所述路径的更新次数大于所述更新次数临界值,且所述目标区域在所述环境地图存在下一可达区域,则控制所述机器人移动到所述下一可达区域运行并进行清扫。
171.上述机器人的路径规划装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于机器人中的处理器中,也可以是以软件形式存储于机器人中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
172.在一个实施例中,提供了一种计算机设备,其内部结构图可以如图10所示。该计算机设备可以是机器人。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的计算机设备进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种机器人的路径规划方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
173.本领域技术人员可以理解,图10中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
174.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各机器人实施例所实现的步骤。
175.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各机器人实施例所实现的步骤。
176.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
177.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机
可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
178.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
179.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
技术特征:
1.一种机器人,其特征在于,所述机器人包括存储器和处理器,所述存储器用于存储可在所述处理器上运行的计算机可读指令,所述处理器用于执行所述计算机可读指令时实现如下步骤:获取所述机器人在环境地图的目标区域中的路径;若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;根据所述路径调整点更新所述路径,得到更新后的目标路径。2.根据权利要求1所述的机器人,其特征在于,所述获取所述机器人在环境地图的目标区域中的路径,包括:确定所述环境地图中用于路径规划的感兴趣区域;按照所述感兴趣区域内的场景特征,将所述感兴趣区域划分为多个子区域;从各个所述子区域中,查找所述机器人所在的目标区域;获取所述机器人在所述目标区域中的路径。3.根据权利要求1所述的机器人,其特征在于,所述确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,包括:在所述机器人按照所述路径运行的过程中,控制所述机器人采集环境信息;若根据所述环境信息确定所述机器人的前进方向存在障碍物,则根据在预设时间段采集的环境信息生成所述障碍物的属性信息;若根据所述属性信息判断所述机器人无法绕过所述障碍物,则确定所述障碍物为目标障碍物。4.根据权利要求1所述的机器人,其特征在于,所述沿着所述路径搜索路径调整点,包括:根据所述机器人沿着所述路径采集的环境信息从所述路径中搜索候选调整点;所述候选调整点与所述机器人在所述目标障碍物同侧;在所述候选调整点中,确定与所述机器人的距离满足预设距离条件的路径调整点。5.根据权利要求4所述的机器人,其特征在于,所述根据所述机器人沿着所述路径采集的环境信息从所述路径中搜索候选调整点,包括:控制所述机器人沿着所述路径的前进方向运行并采集环境信息;根据所述机器人在预设时间段采集的环境信息,感知所述目标障碍物在所述环境地图占据的目标障碍物区域;根据所述目标障碍物区域更新所述环境地图,得到更新后的环境地图;在更新后的环境地图搜索候选调整点。6.根据权利要求1所述的机器人,其特征在于,所述根据所述路径调整点更新所述路径,包括:若所述机器人与所述路径调整点在所述路径之间无障碍物,则根据所述机器人与所述路径调整点之间相连的线段更新所述路径;若所述机器人与所述路径调整点在所述路径之间存在可绕行障碍物,则基于所述可绕行障碍物生成所述机器人与所述路径调整点之间的避障路段;通过所述避障路段更新所述路径。
7.根据权利要求1所述的机器人,其特征在于,所述处理器还用于执行所述计算机可读指令时实现如下步骤:若所述路径的更新次数小于更新次数临界值,则执行所述沿着所述路径搜索路径调整点的步骤,得到目标路径,控制所述机器人按照所述目标路径运行;若所述路径的更新次数大于所述更新次数临界值,且所述环境地图中存在下一可达区域,则控制所述机器人移动到所述下一可达区域。8.一种路径规划方法,其特征在于,所述路径规划方法应用于机器人,所述机器人上搭载有用于采集环境信息的传感器,所述路径规划方法包括权利要求1至7中任一项所述机器人实现的步骤。9.一种路径规划装置,其特征在于,所述装置包括:路径获取模块,用于在环境地图内,获取所述机器人在目标区域的路径;路径调整点搜索模块,用于若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;路径更新模块,用于根据所述路径调整点更新所述路径,得到更新后的目标路径。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述机器人实现的步骤。
技术总结
本申请涉及一种机器人、路径规划方法、装置和存储介质。机器人获取所述机器人在环境地图的目标区域中的路径,针对环境地图进行目标区域的路径规划,降低了对整个环境地图进行更新和路径规划的复杂度,便于进行路径规划;若确定所述机器人在所述路径的前进方向存在无法绕行的目标障碍物,则沿着所述路径搜索路径调整点;所述路径调整点与所述机器人处于所述目标障碍物的同侧;根据所述路径调整点更新所述路径,得到更新后的目标路径。采用本方法能够在场景出现变化的情况下,确定出不绕过目标障碍物的调整调整点,根据所述路径调整点更新所述路径,从而保持初始路径的高覆盖率。从而保持初始路径的高覆盖率。从而保持初始路径的高覆盖率。
技术研发人员:林世城 许启新
受保护的技术使用者:深圳市普渡科技有限公司
技术研发日:2023.06.07
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/