一种路径规划方法、装置、设备和存储介质与流程

专利2022-06-29  117


本发明实施例涉及机器人技术,尤其涉及一种路径规划方法、装置、设备和存储介质。



背景技术:

建筑工艺种类繁多,并且各种工艺覆盖范围差异很大,由于施工环境复杂多变,并不能完全保证每一个施工任务刚好位于特定的位置,有可能在地图上的任意位置,因此对机器人实现可以任意点路径规划功能就显得格外重要。

现有的路径规划算法,例如:dijkstra算法、a*算法,都是基于固定路径下并且可规划的点只能是在路网上的点,基于该点寻找到目标点最短路径,显然目前算法并不适用于任意点路径规划,偏于理想情况,在实际情况下机器人可能起始位置偏离路网上的点,这时机器人需定位回到起始点花费很长时间,甚至是从该点出发会碰到墙体,使得机器人运输效率降低并且安全性大大降低,并且dijkstra路径规划算法搜寻最短路径所花费时间较长,并不适用于实时路径规划。



技术实现要素:

本发明实施例提供一种路径规划方法、装置、设备和存储介质,以实现不碰墙体的路径规划。

第一方面,本发明实施例提供了一种路径规划方法,该方法包括:

获取待规划路径的起点和终点;

所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径;

对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性;

基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径;

将至少一条所述规划路径中路径长度最短的规划路径确定目标路径。

第二方面,本发明实施例还提供了一种路径规划装置,该装置包括:

起点和终点获取模块,用于获取待规划路径的起点和终点;

路径选取模块,用于所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径;

可行性确定模块,用于对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性;

规划路径形成模块,用于基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径;

目标路径确定模块,用于将至少一条所述规划路径中路径长度最短的规划路径确定目标路径。

第三方面,本发明实施例还提供了一种设备,该设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例中任一所述的路径规划方法。

第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本发明实施例中任一所述的路径规划方法。

本发明实施例的技术方案,通过获取待规划路径的起点和终点,以便路径规划人员根据起点和终点进行路径规划。当所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径,实现了可以进行任意两点间的路径规划的效果。对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性,实现了可规划出不碰墙体的路径,避免作业人员或者作业机器人的损伤,节省成本。基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径,实现了任意两点间的不碰墙体的路径规划,将至少一条所述规划路径中路径长度最短的规划路径确定目标路径,以便作业人员或作业机器人可根据该目标路径进行作业,保证作业人员或作业机器人的作业路径最短,节省了时间,提高了作业效率。

附图说明

图1是本发明实施例一中的一种路径规划方法的流程图;

图2是本发明实施例一中的墙体的平面轮廓及路径可行性示意图;

图3是本发明实施例二中的一种路径规划方法的流程图;

图4是本发明实施例二中的判断起点和/或终点是否在墙体内的示意图;

图5是本发明实施例三中的一种路径规划装置的结构示意图;

图6是本发明实施例四中的一种设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的一种路径规划方法的流程图,本实施例可适用于不碰墙体的路径规划的情况,该方法可以由路径规划装置来执行,该路径规划装置可以由软件和/或硬件来实现,该路径规划装置可以配置在计算设备上,具体包括如下步骤:

s110、获取待规划路径的起点和终点。

示例性的,待规划路径可以是一项作业任务的待规划的路径,例如,在大型建筑物中,要求从任一位置移动到另外任一位置,所要行走的路径轨迹。起点可以是一项作业任务开始作业的起始点,该起点可以是用户要求的起点,也可以是路径规划人员根据用户需求,自行定义的起点。终点可以是一项作业任务开始作业的终止点,即目标位点,该终点可以是用户要求的终点,也可以是路径规划人员根据用户需求,自行定义的终点,起点和终点的获取方式这里不做限定。通过获取待规划路径的起点和终点,以便路径规划人员根据起点和终点进行路径规划。

s120、所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径。

示例性的,以在大型建筑物中进行喷涂、清扫、装饰等其中至少一种作业为例,预设路网可以是作业区域的路网图,即可以是待作业的大型建筑物的路网图。在获取待规划路径的起点和终点后,判断起点和终点是否在预设路网上,具体的,可以是通过循环遍历的方法来判断起点和终点是否在预设路网上,例如,可以是将起点和终点输入预设路网中,循环遍历预设路网上的所有位置点,判断起点和终点是否与预设路网上的某一位置点相同,若相同,则起点和终点在预设路网上,若不同,则起点和终点不在预设路网上。

若起点和终点中的至少一个不在预设路网上,则在预设路网上选取与起点在同一楼层内的任一位置点作为第一中间点,将预设路网上与终点在同一楼层内的任一位置点作为第二中间点,将起点到第一中间点之间的路径作为第一路径,将第二中间点到终点之间的路径作为第三路径,相应的,第一中间点与第二中间点之间的路径作为第二路径。当起点属于预设路网时,则省略第一中间点,即在预设路网上不选取第一中间点;或者,当终点属于预设路网时,则省略第二中间点,即在预设路网上不选取第二中间点。当起点和/或终点不属于预设路网时,通过在预设路网上选取第一中间点和第二中间点,以实现可以进行任意两点间的路径规划,避免预设路网对路径规划的约束。

s130、对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性。

示例性的,若第一路径和第三路径中任一路径经过的范围内,存在墙体,则可根据墙体的平面轮廓位置,以及任一路径经过的位置,确定在按任一路径进行移动的过程中,是否会碰到墙体,即判断任一路径是否可行,其中,墙体的平面轮廓位置可以根据墙体的位置和平面面积解析并绘制得到。通过验证预设路网以外的位置点与预设路网内位置点的任一路径的可行性判断,以实现可规划出不碰墙体的可行路径,避免作业人员或者作业机器人的损伤,节省成本。

可选的,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性,可以是:将每一个墙体的平面轮廓分解为水平轮廓线和竖直轮廓线;根据所述水平轮廓线和所述竖直轮廓线的位置,分别构建水平移动路径的第一障碍物信息列表,以及竖直移动路径的第二障碍物信息列表;基于所述第一障碍物信息列表和所述第二障碍物信息列表,以及所述任一路径的水平移动路径和竖直移动路径,确定所述任一路径是否经过墙体;若是,则确定所述任一路径不可行。

示例性的,参考图2所示的墙体的平面轮廓及路径可行性示意图,如图2所示,每一个墙体的平面轮廓可以是一个矩形的方框,该墙体是垂直立在地面上的,该墙体的平面轮廓可分解为两条水平轮廓线和两条竖直轮廓线,如图2中的实线1和虚线4位两条水平轮廓线,实线2和虚线3位两条竖直轮廓线,若作业机器人要从a点移动到b点,由于作业机器人不能斜着方向行走,因此作业机器人则只能按实线箭头所指规划路径进行行走,或者按虚线箭头所指规划路径进行行走。

作业机器人在按实线箭头或虚线箭头所指规划路径进行移动时,靠近墙体太近可能会造成作业机器人的损伤,因此,通过确定墙体的边界范围,作业机器人在行进的过程中,不可超过这个范围,只能在边界范围之外进行行走。示例性的,图2中作业机器人的水平移动路径可以是实线1和虚线4所示的路径,竖直移动路径可以是实线2和虚线3所示的路径,第一障碍物信息列表可以是在按水平移动路径进行行进时,所碰到墙体边界的位置信息,例如,这里可以是以x坐标值为键,该键对应的值为一个列表,{x1:[y1,y2,y3,y4]},代表在x坐标值为x1时,y1至y2的区间以及y3至y4的区间都是墙边界,比如,如图2所示,左下a点(起点)坐标为(40,40),右上b点(路网上第一中间点)坐标为(100,80),加粗线条为墙体边界,将墙体边界坐标转换为上述格式,即为:{x=20:[60,120],x=30:[60,120],x=70:[60,70]}},{x=20:[60,120],x=30:[60,120],x=70:[60,70]}}即为第一障碍物信息列表,同理的,第二障碍物信息列表可以是在按竖直移动路径进行行进时,所碰到墙体边界的位置信息,如图2所示,第二障碍物信息列表即为:{y=60:[20,70],y=70:[30,70],y=120:[20,30]}。这样根据第一障碍物信息列表和第二障碍物信息列表,以及任一路径的水平移动路径和竖直移动路径,即可确定任一路径是否经过墙体,这样可以规划出不碰墙体的路径,保证了作业人员或作业机器人的安全,节省了成本。

可选的,所述基于第一障碍物信息列表和第二障碍物信息列表,以及任一路径的水平移动位置和竖直移动位置,确定任一路径是否经过墙体,可以是:根据所述任一路径的水平移动路径的移动区间,在第二障碍物信息列表中确定相匹配的竖直障碍物区间,当所述水平移动路径的竖直位置在所述竖直障碍物区间内时,确定所述任一路径经过墙体;根据所述任一路径的竖直移动路径的移动区间,在第一障碍物信息列表中确定相匹配的水平障碍物区间,当所述水平移动路径的水平位置在所述水平障碍物区间内时,确定所述任一路径经过墙体。

示例性的,水平移动路径的移动区间可以是水平移动路径的位置范围,例如可以是水平移动路径的坐标范围;竖直移动路径的移动区间可以是竖直移动路径的位置范围,例如可以是竖直移动路径的坐标范围。竖直障碍物区间可以是作业机器人按水平移动路径进行移动时,碰到第二障碍物信息列表中在水平移动路径的移动区间内的竖直障碍物的位置范围;水平障碍物区间可以是作业机器人按竖直移动路径进行移动时,碰到第一障碍物信息列表中在竖直移动路径的移动区间内的水平障碍物的位置范围。

如图2所示,以实线箭头所指路径为例,实线箭头所指的水平移动路径(图2中水平轮廓线1)中,已知a点和b点生成的水平移动路径为x=40至x=100,其y值为40,此时从第二障碍物信息列表中筛选出x处于(40,100)区间内的竖直障碍物区间为x=70:[60,70],该水平移动路径的y=40,不在第二障碍物信息列表所对应的[60,70]区间内,所以该水平移动路径不会碰撞墙体。实线箭头所指的竖直移动路径(图2中竖直轮廓线2)中,已知a点和b点生成的竖直移动路径2为y=40至y=80,其x值为100,此时从第一障碍物信息列表中筛选出y处于(40,80)区间内的水平障碍物区间为y=60:[20,70]以及y=70:[30,70],该竖直移动路径的x=100,不在[20,70]和[30,70]任意一个区间内,所以该竖直移动路径不会碰撞墙体。因此实线箭头所指路径不会碰撞墙体,则确定该实线箭头所指路径不经过墙体,具有可行性。利用相同的方法,可以判断虚线箭头所指路径,通过判断发现虚线箭头所指路径的竖直移动路径(图2中竖直轮廓线3)会碰撞墙体,由此可知虚线箭头所指路径经过墙体,该条虚线箭头所指路径不可行。这样通过任一路径的移动区间,以及对应的障碍物信息列表中与移动区间匹配的障碍物区间,可确定任一路径是否经过墙体,通过简单计算即可知道任一路径是否可行,而不用人为或者作业机器人实际行走一遍来知道任一路径是否可行,这样节省了时间,提高了不碰墙体的路径规划的效率,高效完成不碰墙体的路径规划。

需要说明的是,对于任一路径,当该路径的水平移动路径和/或竖直移动路径不可行,则确定该路径不可行。

s140、基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径。

示例性的,这里将确定的可行的第一路径对应的第一中间点和可行的第三路径对应的第二中间点之间的路径作为第二路径。规划路径可以是将之前确定的任一可行的第一路径和任一可行的第三路径,以及对应的第二路径组合形成的路径。在获取起点和终点后,通过预设路网上的多个位置点,可确定多个第一中间点和多个第二中间点,相应的,形成多个第一路径和第三路径,结合对应的第二路径,则可组合形成至少一条规划路径,该规划路径是从起点到终点的一条完整的路径。实现了任意两点间的不碰墙体的路径规划。

需要说明的是,当起点位于预设路网上时,第一路径为空,基于起点与第二中间点之间的第二路径,以及第二中间点与终点之间的第三路径,形成至少一条规划路径;相应的,当终点位于预设路网上时,第三路径为空,基于起点与第一中间点之间的第一路径,以及第一中间点与终点之间的第二路径,形成至少一条规划路径。

s150、将至少一条所述规划路径中路径长度最短的规划路径确定目标路径。

示例性的,目标路径可以是作业人员或作业机器人最终行走的从起点到终点的作业路径。将之前确定的可行的至少一条规划路径中路径长度最短的一条规划路径确定为目标路径,以便作业人员或作业机器人可根据该目标路径进行作业,保证作业人员或作业机器人的作业路径最短,节省了时间,提高了作业效率。

可选的,将至少一条所述规划路径中路径长度最短的规划路径确定目标路径,可以是:若路径长度最短的规划路径为至少两条,则将选取的距离最小的至少两条所述规划路径中,所述第一路径和所述第三路径的距离之和最小的所述规划路径作为目标路径。

示例性的,在实际情况中,可能确定的可行的至少一条规划路径中路径长度最短的规划路径至少有两条,分别计算距离最小的至少两条路径规划路径中,第一路径和第三路径的距离之和,取第一路径和第三路径的距离之和最小的规划路径作为目标路径,缩短了预设路网以外的位置点与预设路网内位置点之间的路径。以便作业人员或作业机器人可根据该目标路径进行作业,保证作业人员或作业机器人的作业路径最短,节省了时间,提高了作业效率。

本发明实施例的技术方案,通过获取待规划路径的起点和终点,以便路径规划人员根据起点和终点进行路径规划。当所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径,实现了可以进行任意两点间的路径规划,避免预设路网对路径规划的约束。对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性,实现了可规划出不碰墙体的可行路径,避免作业人员或者作业机器人的损伤,节省成本。基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径,实现了任意两点间的不碰墙体的路径规划,将至少一条所述规划路径中路径长度最短的规划路径确定目标路径,以便作业人员或作业机器人可根据该目标路径进行作业,保证作业人员或作业机器人的作业路径最短,节省了时间,提高了作业效率。

实施例二

图3为本发明实施例二提供的一种路径规划方法的流程图,本发明实施例是在上述实施例的基础上,对上述实施例的方案的进一步优化,具体包括如下步骤:

s210、获取待规划路径的起点和终点。

s220、判断所述起点和/或所述终点是否设置在墙体内,若是,则进行错误提示。

示例性的,由于起点和终点可能是用户或者路径规划人员自行设定的,因此,选取的起点和/或终点就有可能正好在墙体内,因此,在路径规划前,要先判断起点和/或终点是否设置在墙体内,若没有设置在墙体内,则执行后续步骤,若设置在墙体内,则进行错误提示,该错误提示可以是在电脑上设置起点和/或终点时,电脑会弹出一个提示框,提示设置的该起点和/或终点在墙体内,请另外选取起点和/或终点。这样先判断起点和/或终点是否在墙体内,避免选取的起点和/或终点无法作业的情况,避免重复性劳动,节省时间和资源。

可选的,判断所述起点和/或所述终点是否设置在墙体内,可以是:基于所述起点或所述终点的位置,以及墙体的平面轮廓位置,将所述墙面分解为至少一个矩形区域;当所述起点或终点在任一矩形区域时,确定所述起点或终点在所述墙体内。

示例性的,参考图4所示的判断起点和/或终点是否在墙体内的示意图,墙体分解的至少一个矩形区域,例如,如图4中的点a、点b、点c和点d所形成的矩形。若起点或终点在任一矩形区域内,则确定起点或终点在墙体内。通过判断起点和/终点是否在墙体所分解的至少一个矩形区域内,确定起点和/或终点是否在墙体内,不需要人为的去观察获取的起点和/或终点是否在墙体内,节省了人力和财力,同时也节省了时间,提高了路径规划的效率。

可选的,当所述起点或终点与所述矩形区域的任一两个顶点形成的三角形的面积和与所述矩形区域的面积相等时,确定所述起点或终点在所述矩形区域内。

示例性的,如图4中的a图所示,点e为起点(或终点),将点e分别与矩形区域的四个顶点a、b、c、d相连接,那么点e与矩形区域的任两个顶点即可构成一个三角形,则点e可与矩形区域构成四个三角形,分别为:δaeb、δebc、δecd和δead,由图4中的a图可知,δaeb、δebc、δecd和δead的面积之和等于矩形区域abcd的面积,则点e在矩形区域abcd内部,如图4中的b图所示,δaeb、δebc、δecd和δead的面积之和大于矩形区域abcd的面积,因此点e不在矩形区域abcd内部。具体计算任一δaeb、δebc、δecd和δead的面积,可以有如下方法来计算:

这里设e点的坐标为(x3,y3),当前进行判断的矩形区域4个顶点坐标分别为(x1,y1)、(x1,y2)、(x2,y1)、(x2,y2),若任一三角形三个顶点分别为(x1,y1)、(x2,y2)、(x3,y3):

则该三角形面积:s1=|(x2-x1)(y3-y1)-(x3-x1)(y2-y1)|/2……(1)

矩形区域abcd的面积:s2=(x2-x1)(y2-y1)……(2)

此时,通过公式(1)计算四个三角形的面积,将四个三角形的面积相加,比较四个三角形的面积之和是否与矩形区域的面积相等,则可确定点e是否在矩形区域内。相应的,当四个三角形的面积之和大于矩形区域的面积,则确定起点或终点不在墙体内。

这样通过判断起点或终点与矩形区域的任一两个顶点形成的三角形的面积和与矩形区域的面积是否相等,来确定起点或终点是否在矩形区域内,最终判断起点或终点是否在墙体内,这样不用人为的去观察,通过简单的计算即可知道起点或终点是否在墙体内,节省了人力和财力,同时也节省了时间,提高了路径规划的效率。

s230、所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径。

s240、对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性。

s250、基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径。

s260、将至少一条所述规划路径中路径长度最短的规划路径确定目标路径。

本发明实施例的技术方案,通过判断所述起点和/或所述终点是否设置在墙体内,若是,则进行错误提示,这样先判断起点和/或终点是否在墙体内,避免选取的起点和/或终点无法作业的情况,避免重复性劳动,节省时间和资源。然后通过判断起点和/终点是否在墙体所分解的至少一个矩形区域内,来确定起点和/或终点是否在墙体内,而不用人为的去观察获取的起点和/或终点是否在墙体内,节省了人力和财力,同时也节省了时间,提高了路径规划的效率。通过判断起点或终点与矩形区域的任一两个顶点形成的三角形的面积和与矩形区域的面积是否相等,来确定起点或终点是否在矩形区域内,最终判断起点或终点是否在墙体内,这样不用人为的去观察,通过简单的计算即可知道起点或终点是否在墙体内,节省了人力和财力,同时也节省了时间,提高了路径规划的效率。

实施例三

图5为本发明实施例三提供的一种路径规划装置的结构示意图,如图5所示,该装置包括:起点和终点获取模块31、路径选取模块32、可行性确定模块33、规划路径形成模块34和目标路径确定模块35。

其中,起点和终点获取模块31,用于获取待规划路径的起点和终点;

路径选取模块32,用于所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径;

可行性确定模块33,用于对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性;

规划路径形成模块34,用于基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径;

目标路径确定模块35,用于将至少一条所述规划路径中路径长度最短的规划路径确定目标路径。

在上述实施例的技术方案中,可行性确定模块33包括:

第一平面轮廓分解单元,用于将每一个墙体的平面轮廓分解为水平轮廓线和竖直轮廓线;

障碍物信息列表构建单元,用于根据所述水平轮廓线和所述竖直轮廓线的位置,分别构建水平移动路径的第一障碍物信息列表,以及竖直移动路径的第二障碍物信息列表;

第一判断单元,用于基于所述第一障碍物信息列表和所述第二障碍物信息列表,以及所述任一路径的水平移动路径和竖直移动路径,确定所述任一路径是否经过墙体;

路径不可行确定单元,用于若是,则确定所述任一路径不可行。

在上述实施例的技术方案中,第一判断单元包括:

第一判断子单元,用于根据所述任一路径的水平移动路径的移动区间,在第二障碍物信息列表中确定相匹配的竖直障碍物区间,当所述水平移动路径的竖直位置在所述竖直障碍物区间内时,确定所述任一路径经过墙体;

第二判断子单元,用于根据所述任一路径的竖直移动路径的移动区间,在第一障碍物信息列表中确定相匹配的水平障碍物区间,当所述水平移动路径的水平位置在所述水平障碍物区间内时,确定所述任一路径经过墙体。

在上述实施例的技术方案的基础上,该装置还包括:

判断模块,用于判断所述起点和/或所述终点是否设置在墙体内,若是,则进行错误提示。

在上述实施例的技术方案的技术方案中,判断模块包括:

第二平面轮廓分解单元,用于基于所述起点或所述终点的位置,以及墙体的平面轮廓位置,将所述墙体分解为至少一个矩形区域;

第一确定单元,用于当所述起点或终点在任一矩形区域时,确定所述起点或终点在所述墙体内。

可选的,当所述起点或终点与所述矩形区域的任一两个顶点形成的三角形的面积和与所述矩形区域的面积相等时,确定所述起点或终点在所述矩形区域内。

本发明实施例所提供的路径规划装置可执行本发明任意实施例所提供的路径规划方法,具备执行方法相应的功能模块和有益效果。

实施例四

图6为本发明实施例四提供的一种设备的结构示意图,如图6所示,该设备包括处理器40、存储器41、输入装置42和输出装置43;设备中处理器40的数量可以是一个或多个,图6中以一个处理器40为例;设备中的处理器40、存储器41、输入装置42和输出装置43可以通过总线或其他方式连接,图6中以通过总线连接为例。

存储器41作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的路径规划方法对应的程序指令/模块(例如,起点和终点获取模块31、路径选取模块32、可行性确定模块33、规划路径形成模块34和目标路径确定模块35)。处理器40通过运行存储在存储器71中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的路径规划方法。

存储器41可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器41可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置42可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置43可包括显示屏等显示设备。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种路径规划方法。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的路径规划方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

值得注意的是,上述路径规划装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。


技术特征:

1.一种路径规划方法,其特征在于,包括:

获取待规划路径的起点和终点;

所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径;

对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性;

基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径;

将至少一条所述规划路径中路径长度最短的规划路径确定目标路径。

2.根据权利要求1所述的方法,其特征在于,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性,包括:

将每一个墙体的平面轮廓分解为水平轮廓线和竖直轮廓线;

根据所述水平轮廓线和所述竖直轮廓线的位置,分别构建水平移动路径的第一障碍物信息列表,以及竖直移动路径的第二障碍物信息列表;

基于所述第一障碍物信息列表和所述第二障碍物信息列表,以及所述任一路径的水平移动路径和竖直移动路径,确定所述任一路径是否经过墙体;

若是,则确定所述任一路径不可行。

3.根据权利要求2所述的方法,其特征在于,所述基于所述第一障碍物信息列表和所述第二障碍物信息列表,以及所述任一路径的水平移动位置和竖直移动位置,确定所述任一路径是否经过墙体,包括:

根据所述任一路径的水平移动路径的移动区间,在第二障碍物信息列表中确定相匹配的竖直障碍物区间,当所述水平移动路径的竖直位置在所述竖直障碍物区间内时,确定所述任一路径经过墙体;

根据所述任一路径的竖直移动路径的移动区间,在第一障碍物信息列表中确定相匹配的水平障碍物区间,当所述水平移动路径的水平位置在所述水平障碍物区间内时,确定所述任一路径经过墙体。

4.根据权利要求1所述的方法,其特征在于,在所述获取待规划路径的起点和终点之后,所述方法还包括:

判断所述起点和/或所述终点是否设置在墙体内,若是,则进行错误提示。

5.根据权利要求4所述的方法,其特征在于,所述判断所述起点和/或所述终点是否设置在墙体内,包括:

基于所述起点或所述终点的位置,以及墙体的平面轮廓位置,将所述墙体分解为至少一个矩形区域;

当所述起点或终点在任一矩形区域时,确定所述起点或终点在所述墙体内。

6.根据权利要求5所述的方法,其特征在于,当所述起点或终点与所述矩形区域的任一两个顶点形成的三角形的面积和与所述矩形区域的面积相等时,确定所述起点或终点在所述矩形区域内。

7.根据权利要求1所述的方法,其特征在于,基于至少一条所述规划路径中路径长度最短的规划路径确定目标路径,包括:

若路径长度最短的规划路径为至少两条,则将选取的距离最小的至少两条所述规划路径中,所述第一路径和所述第三路径的距离之和最小的所述规划路径作为目标路径。

8.一种路径规划装置,其特征在于,包括:

起点和终点获取模块,用于获取待规划路径的起点和终点;

路径选取模块,用于所述起点和/或所述终点不属于预设路网,则在所述预设路网上选取第一中间点和第二中间点,将所述起点到所述第一中间点之间的路径作为第一路径,将所述第二中间点到所述终点之间的路径作为第三路径;

可行性确定模块,用于对于所述第一路径和所述第三路径中的任一路径,根据所述任一路径中墙体的平面轮廓位置,和所述任一路径经过的位置,确定所述任一路径的可行性;

规划路径形成模块,用于基于任一可行的第一路径和任一可行的第三路径,以及所述可行的第一路径对应的第一中间点和所述可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径;

目标路径确定模块,用于将至少一条所述规划路径中路径长度最短的规划路径确定目标路径。

9.一种设备,其特征在于,所述设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的路径规划方法。

10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的路径规划方法。

技术总结
本发明实施例公开了一种路径规划方法、装置、设备和存储介质。该方法包括:获取待规划路径的起点和终点;起点和/或终点不属于预设路网,则在预设路网上选取第一中间点和第二中间点,将起点到第一中间点之间的路径作为第一路径,将第二中间点到终点之间的路径作为第三路径;对于第一路径和第三路径中的任一路径,根据任一路径中墙体的平面轮廓位置,和任一路径经过的位置,确定任一路径的可行性;基于任一可行的第一路径和任一可行的第三路径,以及可行的第一路径对应的第一中间点和可行的第三路径对应的第二中间点间的第二路径,组合形成至少一条规划路径;将至少一条规划路径中路径长度最短的规划路径确定目标路径,实现不碰墙体的路径规划。

技术研发人员:陈锋;伍嘉文
受保护的技术使用者:广东博智林机器人有限公司
技术研发日:2020.02.28
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-14949.html

最新回复(0)