CN115145255A - 机器人的路径优化方法、芯片及移动机器人 - Google Patents
机器人的路径优化方法、芯片及移动机器人 Download PDFInfo
- Publication number
- CN115145255A CN115145255A CN202110348431.7A CN202110348431A CN115145255A CN 115145255 A CN115145255 A CN 115145255A CN 202110348431 A CN202110348431 A CN 202110348431A CN 115145255 A CN115145255 A CN 115145255A
- Authority
- CN
- China
- Prior art keywords
- node
- path
- starting point
- farthest
- search starting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000005457 optimization Methods 0.000 title claims abstract description 32
- 230000008569 process Effects 0.000 claims description 24
- 238000009826 distribution Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 description 18
- 230000004888 barrier function Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0234—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
- G05D1/0236—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons in combination with a laser
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
- G05D1/024—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Optics & Photonics (AREA)
- Electromagnetism (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
本发明涉及机器人的路径优化方法、芯片及移动机器人,该路径优化方法包括:控制移动机器人利用A*算法规划出一条已遍历路径并标记在构建的地图上,同时确定已遍历路径起始节点及其终止节点;还包括:步骤1、沿着所述已遍历路径的延伸方向,在所述已遍历路径上搜索出相对于第一搜索起点可直达的第一最远节点,并通过将这个第一最远节点与第一搜索起点直接相连的方式,来将所述已遍历路径优化为第一规划路径;步骤2、沿着第一规划路径的延伸方向,在第一规划路径上搜索出相对于第二搜索起点可直达的第二最远节点,并通过将这个第二最远节点与第二搜索起点直接相连的方式,来将第一规划路径优化为第二规划路径。
Description
技术领域
本发明涉及智能机器人技术领域,具体涉及机器人的路径优化方法、芯片及移动机器人。
背景技术
目前A*搜索算法是目前为止最经典且稳定的算法,启发式搜索,速度较快,但是规划出的路径不是最优且贴近障碍物,使得路径的折点、拐点增多。
针对拐点多、折点多的问题,中国专利CN102799781B合并多余节点而对规划起点和规划终点之间多次更新的每一个局部的可见的最远节点,都需要计算其与剩余节点的距离信息,因此在这一过程中节点距离的迭代计算次数是路径节点的个数的累加结果,还要保持以这一距离信息为依据去更新所述中间判断起点,从而大幅度增加距离计算量。
尤其在室内环境下,家具障碍物分布比较复杂多样,采用中国专利CN102799781B的优化方法后,每检测到一个离散分布的家具障碍物,就确定一个局部的可见的最远节点并由此确定下一条优化路径,显然在没有遍历完所有的路径节点的基础上,单凭借在局部区域内寻找出的多条优化路径组合连接出的总体路径还不满足最短原则,增大距离路径代价的计算量。
发明内容
为了解决上述技术问题,本发明公开机器人的路径优化方法、芯片及移动机器人,减少不必要的节点距离和路径代价计算量,让寻路算法规划出的已遍历路径在改进优化后更加直接到达已遍历路径的终点位置,满足路径最短原则。具体的技术方案如下:
机器人的路径优化方法,包括:控制移动机器人利用A*算法规划出一条已遍历路径并标记在构建的地图上,同时确定已遍历路径起始节点及其终止节点;还包括:步骤1、沿着所述已遍历路径的延伸方向,在所述已遍历路径上搜索出相对于第一搜索起点可直达的第一最远节点,并通过将这个第一最远节点与第一搜索起点直接相连的方式,来将所述已遍历路径优化为第一规划路径;步骤2、沿着第一规划路径的延伸方向,在第一规划路径上搜索出相对于第二搜索起点可直达的第二最远节点,并通过将这个第二最远节点与第二搜索起点直接相连的方式,来将第一规划路径优化为第二规划路径;其中,当第一搜索起点是起始节点时,第二搜索起点是终止节点;或者,当第一搜索起点是终止节点时,第二搜索起点是起始节点;其中,所述可直达是指移动机器人的搜索起点与当前搜索的节点连接而成的线段不存在障碍物对应标记的节点,这个搜索起点包括第一搜索起点和第二搜索起点;所述可直达的最远节点是距离这个搜索起点最远处的可直达的节点,最远节点包括第一最远节点和第二最远节点。
与现有技术相比,本技术方案通过可直达的最远节点与搜索起点直接相连的方式,分两次过滤室内区域内的已遍历路径产生的不必要的折点、拐点,进而减少机器人移动过程中距离位姿计算次数,同时减少路径段的数目,各个路径段的长度之和也变小。
进一步地,若与所述起始节点相距一个机体直径的距离范围内标记有障碍物、且与所述终止节点相距一个机体直径的距离范围内没有标记有障碍物,则确定第一搜索起点是所述终止节点,第二搜索起点是所述起始节点;若与所述起始节点相距一个机体直径的距离范围内没有标记有障碍物、且与所述终止节点相距一个机体直径的距离范围内标记有障碍物,则确定第一搜索起点是所述起始节点,第二搜索起点是所述终止节点。为移动机器人搜索出更安全的通向终止节点的优化路径,也优化出更精确地达到终止节点的方式。
进一步地,所述步骤1的方法具体包括:从所述第一搜索起点开始,沿着所述已遍历路径的延伸方向,逐个节点地遍历相对于所述第一搜索起点是可直达的第一最远节点,然后连接所述第一搜索起点与第一最远节点为第一优化路径,并删除所述第一搜索起点与第一最远节点之间属于所述已遍历路径的节点;当所述第一搜索起点是起始节点时,从起始节点开始沿着所述已遍历路径的延伸方向查找的过程中,将第一最远节点与终止节点之间的路径段与前述连接所得的第一优化路径组合连接为所述第一规划路径,对应的路径延伸方向是第一延伸方向;当所述第一搜索起点是终止节点时,从起始节点开始沿着所述已遍历路径的延伸方向查找的过程中,将第一最远节点与起始节点之间的路径段与前述连接所得的第一优化路径组合连接为所述第一规划路径,对应的路径延伸方向是第二延伸方向。
与现有技术相比,本技术方案在起始节点或终止节点作为搜索起点的前提下,在优化为第一规划路径的过程中仅以固定的搜索起点去获取可直达的第一最远节点,并将这个可直达的第一最远节点与搜索起点直接相连的方式,来合过滤可直达的第一最远节点与搜索起点在已遍历路径上的多余节点以优化出折点少、转弯角度小的第一规划路径,使其平滑度更益于移动机器人室内复杂障碍环境中运动。
进一步地,所述步骤2具体包括:当所述第一搜索起点是起始节点时,从所述起始节点开始,沿着第一规划路径的第一延伸方向,逐个节点地遍历相对于所述终止节点是可直达的第二最远节点,然后连接所述终止节点与第二最远节点为第二优化路径,并删除所述终止节点与第二最远节点之间属于所述第一规划路径的节点;然后将第二最远节点与起始节点之间的路径段与前述第二优化路径组合连接为所述第二规划路径;其中,所述第二搜索起点是所述终止节点。在优化第一规划路径的过程中,选择终止节点作为搜索起点,让优化出第二规划路径具备更强的局部导向性,有利于控制机器人在离散的障碍物分布区域内以直线方式达到终止节点,减少计算存储空间。
进一步地,所述步骤2具体包括:当所述第一搜索起点是终止节点时,从所述起始节点开始,沿着第一规划路径的第二延伸方向,逐个节点地遍历相对于所述起始节点是可直达的第二最远节点,然后连接所述起始节点与第二最远节点为第二优化路径,并删除所述起始节点与第二最远节点之间属于所述第一规划路径的节点;然后将第二最远节点与终止节点之间的路径段与前述第二优化路径组合连接为所述第二规划路径;其中,所述第二搜索起点是所述终止节点。在优化第一规划路径的过程中,选择与第一搜索起点相对应的第二搜索起点进行路径节点的可直达情况和距离远近的遍历计算,其中所需计算的节点数目更少,提高移动机器人在第二规划路中的移动速度。
进一步地,若在所述已遍历路径上查找不到所述第一最远节点,则放弃将已遍历路径优化为第一规划路径;然后按照所述步骤2的搜索优化方式,沿着所述已遍历路径的延伸方向,在所述已遍历路径上搜索出相对于第二搜索起点可直达的第二最远节点,并通过将这个第二最远节点与第二搜索起点直接相连的方式,来将已遍历路径直接优化为第二规划路径。从而更完整地从已遍历路径中优化出折点更少、弯折角度更小的第二优化路径。
进一步地,在当前搜索的节点与所述搜索起点的连线中存在障碍物、且下一个搜索的节点与所述搜索起点的连线中不存在障碍物的条件下,沿着所述已遍历路径的延伸方向或第一延伸方向查找下一个搜索节点的相邻节点,判断搜索到的这个相邻的节点与所述搜索起点的连线中是否不存在障碍物,是则重复该步骤判断,否则确定所述下一个搜索的节点是所述可直达的最远节点。本技术方案基于两点之间直线最短的数学原理,衍生出可以大幅度减少拐点的第二规划路径,让移动机器人更加直接地跨过无障碍区域,这样可以大幅度减少转弯方向的角度计算成本,提高搜索效率。
进一步地,在沿着所述已遍历路径的延伸方向、或所述第一延伸方向、或第二延伸方向搜索遍历过的第一预设数量的彼此相邻的节点都与所述搜索起点的连线都存在障碍物后,若继续沿着对应延伸方向搜索遍历过第二预设数量的彼此相邻的节点与所述搜索起点的连线都不存在障碍物,则确定第二预设数量的彼此相邻的节点中的最后一个节点是可直达的最远节点;其中,前述第一预设数量的彼此相邻的节点、前述第二预设数量的彼此相邻的节点中不存在所述终止节点;其中,第一预设数量与障碍物的轮廓大小相关,第二预设数量与不同障碍物的分布间隙宽度相关。。本技术方案能够根据室内区域标记的障碍物的轮廓和位置分布特征优化路径,节约路径节点的搜索计算资源、减少规划不必要的拐点,在保证可直达性的同时,也提高路径的安全性。
一种芯片,用于存储程序代码,所述芯片被配置为执行所述的机器人的路径优化方法。使得移动机器人分别利用已遍历路径的首尾端点与所述已遍历路径的剩余节点的连线,去充分搜索规划出更少拐点、更短路径长度和的第二规划路径。提高装配该芯片的移动机器人规划路径的实用性和易实施程度。
一种移动机器人,该移动机器人装配所述的芯片,用于辅助移动机器人执行所述的基于机器人的路径优化方法。减少移动机器人导航遍历路径段的数目,使得移动机器人的遍历路径的长度之和也变小。
附图说明
图1是本发明一实施例中的机器人的路径优化方法的流程图。
图2是本发明另一实施例中的机器人的路径优化方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细描述。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。在下面的描述中,给出具体细节以提供对实施例的透彻理解。然而,本领域的普通技术人员将理解,可以在没有这些具体细节的情况下实施实施例。例如,电路可以在框图中显示,以便不在不必要的细节中使实施例模糊。在其他情况下,为了不混淆实施例,可以不详细显示公知的电路、结构和技术。
本发明实施例公开机器人的路径优化方法,如图1所示,该路径优化方法具体包括:
步骤S101、控制移动机器人利用A*算法规划出一条已遍历路径并标记在构建的地图上,同时确定已遍历路径起始节点及其终止节点,然后进入步骤S102;在步骤S101中,先经过寻路算法(如A*算法)搜索后,得到一个由一组连续路径节点组成的节点集并依次标记在即时构建的地图上,节点集首尾分别为已遍历路径的起始节点和终止节点,再检查除了起始节点外所有的路径节点与自己的前一个节点在逻辑位置上是相邻的。路径搜索算法是移动机器人导航过程中至关重要的一环。如在A*中,A*路径有很多的节点,其中部分节点对机器人的移动方向没有实际意义,且在地图中一些本无标记障碍物的区域内也会出现一些拐点,这种路径会使得移动机器人在运动过程中做出很多多余的动作。
步骤S102、沿着步骤S101所述已遍历路径的延伸方向,在所述已遍历路径上搜索出相对于第一搜索起点可直达的第一最远节点,并通过将这个第一最远节点与第一搜索起点直接相连的方式(两点相连为一条线段),来将所述已遍历路径优化为第一优化路径,以实现减少已遍历路径上的多余节点,这些多余的节点中相距最远的两个节点的直线距离接近第一优化路径的路径长度。其中,第一搜索起点可以是移动机器人的实际物理位置,且在执行步骤S102的过程中是固定不变的。然后进入步骤S102。
步骤S103、沿着步骤S102优化出的第一规划路径的延伸方向,在第一优化路径上搜索出相对于第二搜索起点可直达的第二最远节点,并通过将这个第二最远节点与第二搜索起点直接相连的方式,来将第一优化路径优化为第二优化路径。以实现在第一规划路径上减少多余的节点,这些多余的节点中相距最远的两个节点的直线距离接近第二优化路径的路径长度。其中,第二搜索起点也可以是移动机器人的实际物理位置,且在执行步骤S103的过程中是固定不变的。
需要说明的是,当第一搜索起点是起始节点时,第二搜索起点是终止节点;或者,当第一搜索起点是终止节点时,第二搜索起点是起始节点。第一搜索起点和第二搜索起点分别是待优化的路径的首尾端,也属于所述已遍历路径的首尾端,具有实际物理导航意义。
所述可直达为:移动机器人沿着由搜索起点射向所述已遍历路径上的当前搜索节点的射线方向,从搜索起点移动至当前搜索的节点的直线路径上没有检测到障碍物;所述可直达的最远节点是距离所述搜索起点最远的可直达的节点。最远节点包括第一最远节点和第二最远节点。
优选地,所述第一最远节点是指在所述已遍历路径上,与移动机器人的搜索起点连接成的线段所经过的节点的属性都不是障碍物节点、且除了终止节点之外离移动机器人的当前位置节点最远的节点,即移动机器人在搜索起点上沿着当前行走方向所能看到的距离最远的节点位置,但是与移动机器人的搜索起点连接成的线段只要经过障碍物节点就变成不可直达的。或者,所述可直达是指移动机器人沿着移动机器人的终止节点朝向当前搜索的节点的射线方向,从终止节点移动至当前搜索的节点的直线路径上没有检测到障碍物;也可以是在预先构建的地图区域上,当前搜索的节点与移动机器人的终止节点连接成的线段不穿过标记障碍物的节点位置,具体是:移动机器人在终止节点到搜索到的一个节点的路线上不会检测到障碍物,这些障碍物的节点都是预先标记在地图中并可以存储到前述表的存储空间内。
与现有技术相比,前述步骤通过可直达的最远节点与搜索起点直接相连的方式,分两次过滤室内区域内的已遍历路径产生的不必要的折点、拐点,进而减少机器人移动过程中距离位姿计算次数,同时减少路径段的数目,各个路径段的长度之和也变小。
作为一种实施例,如图2所示,还公开一种机器人的路径优化方法,包括:
步骤S201、控制移动机器人利用A*算法规划出一条已遍历路径并标记在构建的地图上,同时确定已遍历路径的起始节点及其终止节点、还确定已遍历路径的两侧的障碍物,这些障碍物也标记在地图上,对移动机器人的路径规划起到一定的阻碍作用,等效于室内环境下的家具摆布的位置特征对扫地机器人导航行走的阻碍作用。然后进入步骤S202。
步骤S202、判断与所述起始节点相距一个机体直径的距离范围内是否标记有障碍物,是则进入步骤S203,否则进入步骤S204;实质上是判断以所述起始节点为圆心、一个移动机器人的机体直径为半径的圆形区域内是否分布有障碍物。
步骤S203、判断与所述终止节点相距一个机体直径的距离范围内是否标记有障碍物,否则进入步骤S205,是则将已遍历路径的起始节点作为第一搜索起点,将已遍历路径的终止节点作为第二搜索起点。
步骤S204、判断与所述终止节点相距一个机体直径的距离范围内是否标记有障碍物,是则进入步骤S208,是则将已遍历路径的起始节点作为第一搜索起点,将已遍历路径的终止节点作为第二搜索起点。
步骤S205、配置第一搜索起点是终止节点,第二搜索起点是起始节点,然后进入步骤S206。
步骤S208、配置第一搜索起点是起始节点,第二搜索起点是终止节点,然后进入步骤S209。
前述步骤用于判断所述起始节点的安全距离内是否存在障碍物,从而裁定起始节点和终止节点哪个可以优先作为已遍历路径的搜索起点去搜索出第一最远节点,避免机器人刚开始移动时就容易与障碍物发生碰撞,也防止移动机器人在逐渐靠近终止节点时与障碍物发生碰撞。进而为移动机器人搜索出更安全的通向终止节点的优化路径,也优化出更精确地达到终止节点的方式。
步骤S206、从起始节点开始,沿着所述已遍历路径的延伸方向,逐个节点地遍历相对于所述终止节点是可直达的第一最远节点直至遍历到终止节点,当然在一些实施场景中不需遍历至终止节点;然后连接所述终止节点与第一最远节点为第一优化路径,并删除所述终止节点与第一最远节点之间属于所述已遍历路径的节点,所述已遍历路径中只是剩余第一最远节点与起始节点之间的路径段(包括第一最远节点与起始节点),然后将这个剩余的路径段与前述连接所得的第一优化路径组合连接为第一规划路径,对应的路径延伸方向是第一延伸方向;然后进入步骤S207。其中,第一搜索起点是终止节点。
具体地,在步骤S206中判断在所述已遍历路径上当前搜索的节点与所述第一搜索起点的连线中是否不存在障碍物,是则确定当前搜索节点是可直达的节点,是相对于移动机器人的第一搜索起点是可直达的,并记录当前搜索节点与第一搜索起点的相对距离;否则沿着所述已遍历路径的延伸方向查找下一个搜索的节点并循环执行该步骤,直到搜索遍历至终止节点,当然在一些实施场景中不一定遍历至终止节点,只要遍历到可直达的最远节点即可。使得步骤S206至多记录到与已遍历路径上的所有节点与第一搜索起点的相对距离。其中,当前搜索节点和下一个搜索节点在所述已遍历路径上是相邻的两个节点;然后对前述步骤记录的所有可直达的节点相对于终止节点的距离进行排序,以获取最大距离对应的可直达的节点,确定为可直达的第一最远节点。需要说明的是,为了避免已遍历路径上的节点的重复搜索,每个已搜索的节点会进行标记或者放入单独数组,以备重新利用该段数据进行检测,只保留必要的路线。
步骤S207、从所述起始节点开始,沿着第一规划路径的第一延伸方向,逐个节点地遍历相对于所述起始节点是可直达的第二最远节点,然后连接所述起始节点与第二最远节点为第二优化路径;然后将第二最远节点与终止节点之间的路径段与前述第二优化路径组合连接为所述第二规划路径,对应的路径延伸方向是第二延伸方向;其中,第二搜索起点是起始节点。
具体地,在步骤S207中判断在所述第一规划路径上当前搜索的节点与所述第二搜索起点的连线中是否不存在障碍物,是则确定当前搜索节点是可直达的节点,是相对于移动机器人的第二搜索起点是可直达的,并记录当前搜索节点与第二搜索起点的相对距离;否则沿着所述第二规划路径的延伸方向查找下一个搜索的节点并循环执行该步骤,直到搜索遍历至终止节点,在一些实施场景中逐个遍历不一定需要遍历至终止节点,只要遍历至可直达的最远节点即可,使得步骤S207至多记录到与第二规划路径上的所有节点与第二搜索起点的相对距离。其中,当前搜索节点和下一个搜索节点在所述第一规划路径上是相邻的两个节点。然后对前述步骤记录的所有可直达的目标节点相对于所述起始节点的距离进行排序,以获取最大距离对应的可直达的节点,确定为可直达的第二最远节点。需要说明的是,为了避免已遍历路径上的节点的重复搜索,每个已搜索的节点会进行标记或者放入单独数组,以备重新利用该段数据进行检测,只保留必要的路线。在优化第一规划路径的过程中,选择与第一搜索起点相对应的第二搜索起点进行路径节点的可直达情况和距离远近的遍历计算,其中所需计算的节点数目更少,提高移动机器人在第二规划路中的移动速度。
步骤S209、从起始节点开始,沿着所述已遍历路径的延伸方向,逐个节点地遍历相对于起始节点是可直达的第一最远节点,然后连接起始节点与第一最远节点为第一优化路径,并删除起始节点与第一最远节点之间属于所述已遍历路径的节点,然后将第一最远节点与终止节点之间的路径段与前述第一优化路径组合连接为所述第一规划路径,然后进入步骤S210。其中,所述已遍历路径中只是剩余第一最远节点与终止节点之间的路径段(包括第一最远节点与终止节点),然后将这个剩余的路径段与前述连接所得的第一优化路径组合连接为第一规划路径。该步骤与前述步骤S206的节点遍历判断步骤相似,只是第一搜索起点不同。与现有技术相比,前述步骤S206和步骤S209在起始节点或终止节点作为搜索起点的前提下,在优化为第一规划路径的过程中仅以固定的搜索起点去获取可直达的第一最远节点,并将这个可直达的第一最远节点与搜索起点直接相连的方式,来合过滤可直达的第一最远节点与搜索起点在已遍历路径上的多余节点以优化出折点少、转弯角度小的第一规划路径,使其平滑度更益于移动机器人室内复杂的障碍环境区域环境中运动。
步骤S210、从所述起始节点开始,沿着第一规划路径的第二延伸方向,逐个节点地遍历相对于所述终止节点是可直达的第二最远节点,然后连接所述终止节点与第二最远节点为第二优化路径;然后将第二最远节点与起始节点之间的路径段与前述第二优化路径组合连接为所述第二规划路径。其中,第二搜索起点是终止节点。该步骤与前述步骤S207的节点遍历判断步骤相似,只是第二搜索起点不同。与现有技术相比,该步骤在优化第一规划路径的过程中,选择与第一搜索起点相对应的第二搜索起点进行路径节点的可直达情况和距离远近的遍历计算,其中所需计算的节点数目更少,提高移动机器人在第二规划路中的移动速度。
值得注意的是,本实施例中,无论搜索起点是起始节点还是终止节点,第一规划路径和第二规划路径都是从起始节点向终止节点方向延伸,第一延伸方向和第二延伸方向的基本走向都是一样。前述的逐个节点地遍历是沿着所述已遍历路径的延伸方向、或第一延伸方向、或第二延伸方向进行的,但在一些室内实施环境中不一定逐个节点地遍历完路径上所有的节点。
需要说明的是,检测搜索起点行走到当前搜索的节点的直线路径上是否存在障碍物的计算中并不像A*中对节点计算代价函数那样,仅仅读取搜索起点与当前搜索遍历的节点之间的线段所覆盖的栅格是否为障碍,该计算消耗的成本远低于A*的节点计算;所述第一最远节点是距离所述搜索起点最远处的目标节点以期尽可能地排除已遍历路径上的拐点,而所述第二最远节点则在所述第一最远节点的基础上排除掉到达终止节点之前的更多拐点。
因为这个最远节点是让移动机器人由起始位置开始经过更少的转弯、更短的路径长度达到所述终止节点的必要目标节点,而这个可直达的最远节点与搜索起点之间的属于所述已遍历路径的路径段的节点较多、转弯角度较大、且贴合障碍物边缘,所以第一最远节点与第一搜索起点之间的属于所述已遍历路径的路径节点则不再连接入所述第一规划路径,所以第二最远节点与第二搜索起点之间的属于所述第一规划路径的路径节点则不再连接入所述第二规划路径,使得第二规划路径变得比没有优化规划的已遍历路径更加平滑,从而让移动机器人在第二规划路径上行走得更安全快速。
与现有技术相比,本实施例在起始节点或终止节点作为搜索起点的前提下,在优化为第一规划路径的过程中仅以固定的搜索起点去获取可直达的第一最远节点,并将这个可直达的第一最远节点与搜索起点直接相连的方式,来合过滤可直达的第一最远节点与搜索起点在已遍历路径上的多余节点以优化出折点少、转弯角度小的第一规划路径,使其平滑度更益于移动机器人室内运动。进而能够控制移动机器人在第二规划路径上以更少的折点、更小的转弯角度移动至所述终止节点,有助于移动机器人的运动,减少了运动过程中的坐标位置计算负担。
优选地,若在所述步骤S206和步骤S209中查找不到所述可直达的第一最远节点,即在所述已遍历路径查找不到所述第一最远节点,意味着在所述已遍历路径查找不到可直达的节点,因为只要存在可直达的节点就会存在可直达的最远节点,则放弃将已遍历路径优化为第一优化路径,停止执行所述步骤S206或步骤S209,再将所述搜索起点调整为第二搜索起点,再按照前述的步骤S207或步骤S210的搜索遍历及优化方式,沿着所述已遍历路径的延伸方向,改为在所述已遍历路径上搜索出相对于第二搜索起点可直达的第二最远节点,并通过将这个第二最远节点与第二搜索起点直接相连的方式,来将已遍历路径直接优化为第二规划路径。具体的执行方式与所述步骤S207或步骤S210相似,只是将第一规划路径变换为已遍历路径,路径上的节点也发生变化(相对于第一规划路径的多)。从而更完整地从已遍历路径中优化出折点更少、弯折角度更小的第二优化路径。
还需要强调的是,在现有技术中,为了克服已规划路径的拐点多、折点多的问题,中国专利CN102799781B为了合并多余节点而对规划起点和规划终点之间处理得到的每一个可见的中间搜索起点都需要计算其与剩余节点的距离信息,在这一过程中节点距离的迭代计算次数是路径节点的个数的累加和的结果,假设起始节点和终止节点之间有n个节点,本发明先后确定移动机器人的第一搜索起点和第二搜索起点后,在所述已遍历路径的剩余节点中,沿着所述已遍历路径的延伸方向,至多逐个节点地查找相对于移动机器人的搜索起点是可直达的最远节点的过程中,先后从已遍历路径的起始节点和终止节点这一固定的第一搜索起点和第二搜索起点开始,先后向已经规划好的所述已遍历路径和第一规划路径上的节点逐个发射射线,若搜索起点与相应的节点之间的线段通过障碍物,则移动机器人不能直接跨过到达相应节点;若搜索起点与相应的节点之间的线段没有通过障碍物,则移动机器人能直接跨过到达相应节点并选择射线指向的最远处的节点连接起来,以排除这最远处的节点与当前位置节点之间的多余路径节点,最多检测了2n个节点的地图值,因为本发明相对于中国专利CN102799781B不更新搜索起点;2n是连接成已遍历路径的路径节点的数目的两倍,包括所述起始节点和所述终止节点。而中国专利CN102799781B所述的优化方法,为了获取优化路径所需的最远节点,从起始节点开始通过计算距离和在遇到障碍物的位置确定新的最远节点和更新判断起点,至少执行数字1到n的累加次,也就是n+(n-1)+......+3+2+1次,产生的距离运算的次数远大于本实施例的距离运算次数,甚至不在同一数量级上,而且产生的多个最远节点所连接的路径的长度之和也比较大,增加机器人在移动过程中出现不必要的控制麻烦和时间等成本花销。
作为一种实施例,在一些实施场景中所述终止节点是所述已遍历路径上距离搜索起点(搜索起点不是终止节点的情况下)最远的目标节点,但在另外一些因为障碍物离散分布的环境中需要来回折返的导航实施场景中,终止节点不是所述已遍历路径或第一规划路径上距离当搜索起点最远的节点。因此在沿着所述已遍历路径的延伸方向在已遍历路径上搜索可直达的第一最远节点的过程中、或沿着所述第一延伸方向在第一规划路径上搜索可直达的第二最远节点的过程中、或沿着所述第二延伸方向在第一规划路径上搜索可直达的第二最远节点的过程中,不一定遍历至所述终止节点才停止搜索遍历并确定最远节点。
所以,所述可直达的最远节点的确定方法还包括:
在当前搜索的节点与所述搜索起点的连线中存在障碍物、且下一个搜索的节点与所述搜索起点的连线中不存在障碍物的条件下,即在已遍历路径上,若当前搜索的节点与所述第一搜索起点的连线中存在障碍物、且下一个搜索的节点与所述第一搜索起点的连线中不存在障碍物的条件,沿着所述已遍历路径的延伸方向查找下一个搜索节点的相邻节点,并判断搜索到的这个相邻的节点与所述第一搜索起点的连线中是否不存在障碍物,是则重复该步骤判断,否则确定所述下一个搜索的节点是所述可直达的第一最远节点,即当前参与障碍物判断的节点的前一个相邻(所述已遍历路径的延伸方向的反方向上)的节点;或者,在已遍历路径被优化为第一规划路径后,在第一规划路径上,若当前搜索的节点与所述第二搜索起点的连线中存在障碍物、且下一个搜索的节点与所述第二搜索起点的连线中不存在障碍物的条件,沿着所述第一延伸方向或第二延伸方向查找下一个搜索节点的相邻节点,并判断搜索到的这个相邻的节点与所述第二搜索起点的连线中是否不存在障碍物,是则重复该步骤判断,否则确定所述下一个搜索的节点是所述可直达的第二最远节点,即当前参与障碍物判断的节点的前一个相邻(所述第一延伸方向的反方向上或第二延伸方向的反方向上)的节点。在本实施例中确定的所述可直达的最远节点一般都是偏离搜索起点或障碍物较远的节点。与现有技术相比,本实施例基于两点之间直线最短的数学原理,衍生出可以大幅度减少拐点的第二规划路径,让移动机器人更加直接地跨过无障碍区域,这样可以大幅度减少转弯方向的角度计算成本,提高搜索效率。
作为另一种实施例,所述可直达的最远节点还可以根据室内区域标记的障碍物的轮廓和位置分布特征优化路径来确定,具体包括:
在沿着所述已遍历路径的延伸方向、或在所述第一规划路径上沿着所述第一延伸方向(搜索起点是终止节点)、或在所述第一规划路径上沿着第二延伸方向(搜索起点是起始节点)遍历过的第一预设数量的彼此相邻的节点都与所述搜索起点的连线都存在障碍物后,若继续沿着对应的延伸方向(包括所述已遍历路径的延伸方向、所述第一延伸方向或第二延伸方向)搜索遍历过第二预设数量的彼此相邻的节点与同一所述搜索起点的连线都不存在障碍物,则确定第二预设数量的彼此相邻的节点中的最后一个节点是可直达的最远节点,当沿着所述已遍历路径的延伸方向遍历到的确定是第一最远节点,当沿着所述第一延伸方向或所述第二延伸方向遍历到的确定是第二最远节点。实际上都是局部障碍物区域中的间隙区域的局部最远节点。其中,前述第一预设数量的彼此相邻的节点、前述第二预设数量的彼此相邻的节点中不存在所述终止节点;其中,第一预设数量与障碍物的轮廓大小相关,第二预设数量与不同障碍物的分布间隙宽度相关,以满足路径长度的最短原则。因为障碍物离散分布的环境中需要来回折返的导航实施场景中,终止节点不是所述已遍历路径或第一规划路径上距离当搜索起点最远的节点,所以本实施例不需沿着对应的延伸方向在对应的优化前或优化后的路径上遍历至所述终止节点才停止搜索遍历和确定最远节点。与现有技术相比,本实施例节约路径节点的搜索计算资源、减少规划不必要的拐点,在保证可直达性的同时,也提高路径的安全性。
本发明实施例还公开一种芯片,用于存储程序代码,所述芯片被配置为执行前述实施例的机器人的路径优化方法。进一步缩短路径的长度和提高机器人导航行走的安全性。从而在前述实施例的算法芯片化后,提高装配该芯片的移动机器人规划路径的实用性和易实施程度。前述实施例基于两点之间直线最短的数学原理,衍生出不存在多余拐点的无障碍物属性的第二规划路径,减少节点路径的数目和长度之和,减少计算存储空间,相对于第一规划路径,第二规划路径剔除了第一规划路径中一部分多余的路径节点,使得机器人在沿着第二规划路径运动时需要转动的角度越小、节点少、折点少,而路径也就越平滑。
本发明实施例还公开一种移动机器人,该移动机器人装配所述的芯片,用于辅助移动机器人执行所述的机器人的路径优化方法。减少移动机器人导航遍历路径段的数目,使得移动机器人的遍历路径的长度之和也变小。该移动机器人包括但不限于激光导航机器人、视觉导航机器人。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.机器人的路径优化方法,包括:控制移动机器人利用A*算法规划出一条已遍历路径并标记在构建的地图上,同时确定已遍历路径起始节点及其终止节点;其特征在于,还包括:
步骤1、沿着所述已遍历路径的延伸方向,在所述已遍历路径上搜索出相对于第一搜索起点可直达的第一最远节点,并通过将这个第一最远节点与第一搜索起点直接相连的方式,来将所述已遍历路径优化为第一规划路径;
步骤2、沿着第一规划路径的延伸方向,在第一规划路径上搜索出相对于第二搜索起点可直达的第二最远节点,并通过将这个第二最远节点与第二搜索起点直接相连的方式,来将第一规划路径优化为第二规划路径;
其中,当第一搜索起点是起始节点时,第二搜索起点是终止节点;或者,当第一搜索起点是终止节点时,第二搜索起点是起始节点;
其中,所述可直达是指移动机器人的搜索起点与当前搜索的节点连接而成的线段不存在障碍物对应标记的节点,这个搜索起点包括第一搜索起点和第二搜索起点;所述可直达的最远节点是距离这个搜索起点最远处的可直达的节点,最远节点包括第一最远节点和第二最远节点。
2.根据权利要求1所述路径优化方法,其特征在于,若与所述起始节点相距一个机体直径的距离范围内标记有障碍物、且与所述终止节点相距一个机体直径的距离范围内没有标记有障碍物,则确定第一搜索起点是所述终止节点,第二搜索起点是所述起始节点;
若与所述起始节点相距一个机体直径的距离范围内没有标记有障碍物、且与所述终止节点相距一个机体直径的距离范围内标记有障碍物,则确定第一搜索起点是所述起始节点,第二搜索起点是所述终止节点。
3.根据权利要求2所述路径优化方法,其特征在于,所述步骤1的方法具体包括:
从所述第一搜索起点开始,沿着所述已遍历路径的延伸方向,逐个节点地遍历相对于所述第一搜索起点是可直达的第一最远节点,然后连接所述第一搜索起点与第一最远节点为第一优化路径,并删除所述第一搜索起点与第一最远节点之间属于所述已遍历路径的节点;
当所述第一搜索起点是起始节点时,从起始节点开始沿着所述已遍历路径的延伸方向查找的过程中,将第一最远节点与终止节点之间的路径段与前述连接所得的第一优化路径组合连接为所述第一规划路径,对应的路径延伸方向是第一延伸方向;
当所述第一搜索起点是终止节点时,从起始节点开始沿着所述已遍历路径的延伸方向查找的过程中,将第一最远节点与起始节点之间的路径段与前述连接所得的第一优化路径组合连接为所述第一规划路径,对应的路径延伸方向是第二延伸方向。
4.根据权利要求3所述路径优化方法,其特征在于,所述步骤2具体包括:
当所述第一搜索起点是起始节点时,从所述起始节点开始,沿着第一规划路径的第一延伸方向,逐个节点地遍历相对于所述终止节点是可直达的第二最远节点,然后连接所述终止节点与第二最远节点为第二优化路径,并删除所述终止节点与第二最远节点之间属于所述第一规划路径的节点;然后将第二最远节点与起始节点之间的路径段与前述第二优化路径组合连接为所述第二规划路径;
其中,所述第二搜索起点是所述终止节点。
5.根据权利要求3所述路径优化方法,其特征在于,所述步骤2具体包括:
当所述第一搜索起点是终止节点时,从所述起始节点开始,沿着第一规划路径的第二延伸方向,逐个节点地遍历相对于所述起始节点是可直达的第二最远节点,然后连接所述起始节点与第二最远节点为第二优化路径,并删除所述起始节点与第二最远节点之间属于所述第一规划路径的节点;然后将第二最远节点与终止节点之间的路径段与前述第二优化路径组合连接为所述第二规划路径;
其中,所述第二搜索起点是所述终止节点。
6.根据权利要求4或5所述路径优化方法,其特征在于,若在所述已遍历路径上查找不到所述第一最远节点,则放弃将已遍历路径优化为第一规划路径;然后按照所述步骤2的搜索优化方式,沿着所述已遍历路径的延伸方向,在所述已遍历路径上搜索出相对于第二搜索起点可直达的第二最远节点,并通过将这个第二最远节点与第二搜索起点直接相连的方式,来将已遍历路径直接优化为第二规划路径。
7.根据权利要求6所述路径优化方法,其特征在于,在当前搜索的节点与所述搜索起点的连线中存在障碍物、且下一个搜索的节点与所述搜索起点的连线中不存在障碍物的条件下,沿着所述已遍历路径的延伸方向或第一延伸方向查找下一个搜索节点的相邻节点,判断搜索到的这个相邻的节点与所述搜索起点的连线中是否不存在障碍物,是则重复该步骤判断,否则确定所述下一个搜索的节点是所述可直达的最远节点。
8.根据权利要求6所述路径优化方法,其特征在于,在沿着所述已遍历路径的延伸方向、或所述第一延伸方向、或第二延伸方向搜索遍历过的第一预设数量的彼此相邻的节点都与所述搜索起点的连线都存在障碍物后,若继续沿着对应延伸方向搜索遍历过第二预设数量的彼此相邻的节点与所述搜索起点的连线都不存在障碍物,则确定第二预设数量的彼此相邻的节点中的最后一个节点是可直达的最远节点;
其中,前述第一预设数量的彼此相邻的节点、前述第二预设数量的彼此相邻的节点中不存在所述终止节点;
其中,第一预设数量与障碍物的轮廓大小相关,第二预设数量与不同障碍物的分布间隙宽度相关。
9.一种芯片,用于存储程序代码,其特征在于,所述芯片被配置为执行权利要求1至8任一项所述的机器人的路径优化方法。
10.一种移动机器人,其特征在于,该移动机器人装配权利要求9所述的芯片,用于辅助移动机器人执行权利要求1至8任一项所述的机器人的路径优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348431.7A CN115145255A (zh) | 2021-03-31 | 2021-03-31 | 机器人的路径优化方法、芯片及移动机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348431.7A CN115145255A (zh) | 2021-03-31 | 2021-03-31 | 机器人的路径优化方法、芯片及移动机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115145255A true CN115145255A (zh) | 2022-10-04 |
Family
ID=83404199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110348431.7A Pending CN115145255A (zh) | 2021-03-31 | 2021-03-31 | 机器人的路径优化方法、芯片及移动机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115145255A (zh) |
-
2021
- 2021-03-31 CN CN202110348431.7A patent/CN115145255A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113156970B (zh) | 一种通行区域的路径融合规划方法、机器人及芯片 | |
CN111811514B (zh) | 一种基于正六边形栅格跳点搜索算法的路径规划方法 | |
CN109059924B (zh) | 基于a*算法的伴随机器人增量路径规划方法及系统 | |
WO2023155371A1 (zh) | 室内移动机器人的平稳移动全局路径规划方法 | |
CN112985445B (zh) | 基于高精地图的车道级精度实时性运动规划方法 | |
CN111174798A (zh) | 一种足式机器人路径规划方法 | |
CN112947486A (zh) | 移动机器人的路径规划方法、芯片及移动机器人 | |
CN110006429A (zh) | 一种基于深度优化的无人船航迹规划方法 | |
EP4216014A1 (en) | Pathfinding cost-based cleaning path planning method, chip, and cleaning robot | |
WO2022000961A1 (zh) | 一种机器人越障的沿边路径选择方法、芯片及机器人 | |
CN111906779B (zh) | 一种越障结束判断方法、越障控制方法、芯片及机器人 | |
CN113190010B (zh) | 一种沿边绕障路径规划方法、芯片及机器人 | |
CN113485369A (zh) | 改进a*算法的室内移动机器人路径规划和路径优化方法 | |
CN113219975A (zh) | 一种路线优化方法、路径规划方法、芯片及机器人 | |
CN114675649A (zh) | 一种融合改进的a*与dwa算法的室内移动机器人路径规划方法 | |
US20220203534A1 (en) | Path planning method and biped robot using the same | |
CN107357295B (zh) | 一种基于栅格地图的路径搜索方法和芯片及机器人 | |
CN114199270A (zh) | 融合双向搜索机制与改进a*算法的机器人路径规划方法 | |
CN113110497A (zh) | 基于导航路径的沿边绕障路径选择方法、芯片及机器人 | |
CN113009916A (zh) | 一种基于全局地图探索的路径规划方法、芯片及机器人 | |
CN113867336B (zh) | 一种适用于复杂场景下移动机器人路径导航及规划方法 | |
CN113110499A (zh) | 一种通行区域的判定方法、路线搜索方法、机器人及芯片 | |
CN115145255A (zh) | 机器人的路径优化方法、芯片及移动机器人 | |
CN117249842A (zh) | 一种基于轨迹平滑优化的无人车混合轨迹规划方法 | |
CN117075607A (zh) | 一种适用于复杂环境的改进jps的无人车路径规划方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |