CN107357295B - 一种基于栅格地图的路径搜索方法和芯片及机器人 - Google Patents
一种基于栅格地图的路径搜索方法和芯片及机器人 Download PDFInfo
- Publication number
- CN107357295B CN107357295B CN201710701090.0A CN201710701090A CN107357295B CN 107357295 B CN107357295 B CN 107357295B CN 201710701090 A CN201710701090 A CN 201710701090A CN 107357295 B CN107357295 B CN 107357295B
- Authority
- CN
- China
- Prior art keywords
- grid
- weight
- entered
- obstacle
- determining
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000004888 barrier function Effects 0.000 claims description 7
- 238000004140 cleaning Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000010408 sweeping Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000000428 dust Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010924 continuous production Methods 0.000 description 1
- 238000010845 search algorithm Methods 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/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)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明属于一种基于栅格地图的路径搜索方法和芯片及机器人,通过在路径搜索时,对靠近障碍物的参考栅格的原始权值加一个附加权值,使得靠近障碍物的参考栅格最终的加权权值大于其它相邻的参考栅格的原始权值,然后引导机器人朝权值较小的参考栅格行进,从而使机器人行进时能够与障碍物之间间隔一定距离,避免机器人容易碰到障碍物的问题,提高了机器人的行进效率。
Description
技术领域
本发明涉及机器人领域,具体涉及一种基于栅格地图的路径搜索方法和芯片及机器人。
背景技术
扫地机器人,又称自动打扫机、智能吸尘、机器人吸尘器等,是智能家用电器的一种,能凭借一定的人工智能,自动在房间内完成地板清理工作。扫地机器人需要按照一定的路径规划来覆盖整个房间区域,完成清扫的目的。路径规划,有随机清扫和规划清扫两种。随机清扫,是指机器人根据一定的移动算法,如三角形、五边形轨迹尝试性的覆盖作业区,如果遇到障碍,则执行对应的转向函数。这种方法是一种以时间换空间的低成本策略,如不计时间可以达到100%覆盖率。随机覆盖法不用定位、也没有环境地图,也无法对路径进行规划。规划清扫,是指机器人行走过程中建立起环境地图,实时分析地图,将房间划分成不同区域,分区域清扫。这种方法效率高,在保证覆盖率的前提下,能够以最快的速度完成清扫。
目前,有的规划清扫方式采用的是路径搜索算法,其中,A*(A-Star)算法是一种栅格地图中求解最短路径最有效的直接搜索方法,也是解决许多搜索问题的有效算法。算法中的距离估算值与实际值越接近,最终搜索速度越快。但是,A*(A-Star)算法有一个主要的缺点:搜索出来的路径是最短路径,不考虑机器人的行进误差,这样会导致机器人沿着路径轨迹行走时,很容易碰到障碍物。
发明内容
为解决上述问题,本发明提供了一种基于栅格地图的路径搜索方法和芯片及机器人,可以避免机器人在行进时容易碰到障碍物的问题,提高机器人的行进效率。本发明的具体技术方案如下:
一种基于栅格地图的路径搜索方法,包括如下步骤:
基于栅格地图,确定起点所在栅格单元为起点栅格,确定目标点所在的栅格单元为目标栅格,确定障碍物所在的栅格单元为障碍栅格;
基于起点所在的起点栅格,判断与所述起点栅格相邻的栅格单元中是否有所述目标栅格;
如果是,则结束搜索;
如果否,则计算与所述起点栅格相邻的不是障碍栅格的参考栅格的原始权值,并判断所述参考栅格是否在障碍栅格的预设范围内;
如果否,则选取所述原始权值最小的参考栅格作为待进栅格;
如果是,则在所述参考栅格的原始权值上加入附加权值后得到加权权值,再选取原始权值和加权权值中权值最小的参考栅格作为待进栅格;
判断与所述待进栅格相邻的栅格单元中是否有所述目标栅格;
如果是,则结束搜索;
如果否,则计算与所述待进栅格相邻的不是障碍栅格的参考栅格的原始权值,并判断所述参考栅格是否在障碍栅格的预设范围内;
如果否,则选取所述原始权值最小的参考栅格作为下一个待进栅格;
如果是,则在所述参考栅格的原始权值上加入附加权值后得到加权权值,再选取原始权值和加权权值中权值最小的参考栅格作为下一个待进栅格;
以此类推,
直到与所述待进栅格相邻的栅格单元中有所述目标栅格,则结束搜索。
进一步地,所述相邻为栅格单元与栅格单元之间通过一条公共的边或者一个公共的角顶点相互连接。
进一步地,所述计算与所述起点栅格相邻的不是障碍栅格的参考栅格的原始权值,包括如下步骤:
基于任意点作为原点建立XY轴坐标系,栅格单元依序排布在所述XY轴坐标系中,
确定起点栅格所在的坐标值为(S1,S2);
确定参考栅格所在的坐标值为(C1,C2);
确定目标栅格所在的坐标值为(D1,D2);
确定从起点栅格到参考栅格的第一开销为K1,K1=sqrt((C1-S1)*(C1-S1)+(C2-S2)*(C2-S2)),其中,sqrt为开平方根;
确定从目标栅格到参考栅格的第二开销为K2,K2=abs(C1-D1)+abs(C2-D2),其中,abs为绝对值;
确定所述参考栅格的原始权值为Q1,Q1=K1+K2。
进一步地,所述判断所述参考栅格是否在障碍栅格的预设范围内,包括如下步骤:
分别以障碍栅格的四条边和四个角顶点为基点,以N个连续排布的栅格单元为长度向外延伸所构成的栅格区;
判断所述参考栅格是否为所述栅格区中的一个栅格单元;
如果是,则所述参考栅格在障碍栅格的预设范围内;
如果否,则所述参考栅格不在障碍栅格的预设范围内;
其中,所述N为自然数。
进一步地,所述选取所述原始权值最小的参考栅格作为待进栅格,还包括如下步骤:
判断所述原始权值最小且相等的参考栅格的数量是否大于或者等于两个;
如果是,则随机选取其中一个所述原始权值最小且相等的参考栅格作为待进栅格;
如果否,则以所述原始权值最小的参考栅格作为待进栅格。
进一步地,所述在所述参考栅格的原始权值上加入附加权值后得到加权权值,包括如下步骤:
确定所述参考栅格的原始权值为Q1;
确定所述附加权值为M,使得所述加权权值为P,且P=Q1+M时,大于其它的所述相邻的参考栅格的原始权值。
进一步地,所述在所述参考栅格的原始权值上加入附加权值后得到加权权值,还包括如下步骤:
如果所述参考栅格在两个或者两个以上的障碍栅格的预设范围内的,加且只加一次附加权值。
进一步地,所述结束搜索后,还包括如下步骤:
确定搜索到的路径;
判断所述路径中,位于所述起点栅格的下一个的下一个待进栅格是否与所述起点栅格相邻;
如果是,则取消位于中间的待进栅格,将所述起点栅格的下一个的下一个待进栅格作为所述起点栅格的下一个待进栅格;
如果否,则判断所述起点栅格的下一个待进栅格与所述起点栅格的下一个的下一个的下一个待进栅格是否相邻;
以此类推,直到判断所述路径中,所述目标栅格的上一个的上一个待进栅格是否与所述目标栅格相邻;
如果是,则取消位于中间的待进栅格,确定最终路径;
如果否,则直接确定最终路径。
一种芯片,用于存储程序,所述程序用于控制机器人执行上述的搜索方法。
一种机器人,安装有控制芯片,所述控制芯片为上述的芯片。
本发明的有益效果在于:通过在路径搜索时,对靠近障碍物的参考栅格的原始权值加一个附加权值,使得靠近障碍物的参考栅格最终的加权权值大于其它相邻的参考栅格的原始权值,然后引导机器人朝权值较小的参考栅格行进,从而使机器人行进时能够与障碍物之间间隔一定距离,避免机器人容易碰到障碍物的问题,提高了机器人的行进效率。
附图说明
图1为本发明所述搜索方法的流程图。
图2为本发明的标示有原始权值的栅格地图示意图。
图3为图2中加入附加权值后的标示加权权值的栅格地图示意图。
图4为图3中搜索路径优化后的栅格地图示意图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步说明:
如图1所示,基于栅格地图的路径搜索方法,包括如下步骤:基于栅格地图,确定起点所在栅格单元为起点栅格,确定目标点所在的栅格单元为目标栅格,确定障碍物所在的栅格单元为障碍栅格;基于起点所在的起点栅格,判断与所述起点栅格相邻的栅格单元中是否有所述目标栅格;如果是,则结束搜索;如果否,则计算与所述起点栅格相邻的不是障碍栅格的参考栅格的原始权值,并判断所述参考栅格是否在障碍栅格的预设范围内;如果否,则选取所述原始权值最小的参考栅格作为待进栅格;如果是,则在所述参考栅格的原始权值上加入附加权值后得到加权权值,再选取原始权值和加权权值中权值最小的参考栅格作为待进栅格;判断与所述待进栅格相邻的栅格单元中是否有所述目标栅格;如果是,则结束搜索;如果否,则计算与所述待进栅格相邻的不是障碍栅格的参考栅格的原始权值,并判断所述参考栅格是否在障碍栅格的预设范围内;如果否,则选取所述原始权值最小的参考栅格作为下一个待进栅格;如果是,则在所述参考栅格的原始权值上加入附加权值后得到加权权值,再选取原始权值和加权权值中权值最小的参考栅格作为下一个待进栅格;以此类推,直到与所述待进栅格相邻的栅格单元中有所述目标栅格,则结束搜索。所述方法,通过在路径搜索时,对靠近障碍物的参考栅格的原始权值加一个附加权值,使得靠近障碍物的参考栅格最终的加权权值大于其它相邻的参考栅格的原始权值,然后引导机器人朝权值较小的参考栅格行进,从而使机器人行进时能够与障碍物之间间隔一定距离,避免机器人容易碰到障碍物的问题,提高了机器人的行进效率。
如图2所示的栅格地图示意图,基于(0,0)栅格为原点所建立的XY轴坐标系中,每个方格表示一个栅格单元,所述栅格单元沿X轴和Y轴依序排列,同时赋予每个栅格单元XY轴坐标值,比如(-1,0)、(0,1)、(1,2)等。所述栅格单元为相同形状的正方形构成的基本单元格,每个栅格单元用一个8bit的数来表示。其高四位记录区域信息,表示此栅格位于那个区域内,因此最多支持16个区域。低四位用来表示障碍物信息:第0位表示扫地机器人是否到达过此栅格,为0表示未到达过,为1表示到达过;第1位表示此栅格是否存在障碍物,为0表示不存在,为1表示存在;第2位,预留;第3位,预留。
以图2和图3为例,在进行所述栅格地图的从起点A到目标点B的路径搜索时,先确定起点A所在栅格单元为起点栅格(即(-3,0)格),确定目标点B所在的栅格单元为目标栅格(即图中的(2,-2)格),确定障碍物C所在的栅格单元为障碍栅格(即图中标示有字母C的格)。接着,判断与所述起点栅格相邻的栅格单元(即(-2,0)格、(-2,1)格、(-3,1)格、(-4,1)格、(-4,0)格、(-4,-1)格、(-3,-1)格和(-2,-1)格)中是否有所述目标栅格。如果有,则结束搜索,将起点栅格直接到目标栅格的连接路径确定为搜索到的路径。图2所示的与起点栅格相邻的栅格单元中,没有目标栅格,所以,需要计算与所述起点栅格相邻的不是障碍栅格的参考栅格的原始权值,即计算(-2,0)格、(-2,1)格、(-3,1)格、(-4,1)格、(-4,0)格、(-4,-1)格、(-3,-1)格和(-2,-1)格的原始权值。为了便于分析,把原始权值标示在栅格的左上角。此时,为了避免行进过程中碰到障碍物,需要设定好机器人行进时与障碍物的距离,该距离可以根据实际情况进行设置,本实施例中将该距离设置为一个栅格单元的距离。接着判断所述参考栅格是否在障碍栅格的预设范围内,由于(-2,0)格、(-2,1)格和(-2,-1)格在障碍栅格的一个栅格单元的距离范围内,所以,这三个栅格单元需要在其原始权值上加一个附加权值,使得到加权权值大于(-3,1)格、(-4,1)格、(-4,0)格、(-4,-1)格和(-3,-1)格的原始权值,这样可以在路径选择时,避开选择靠近障碍物的栅格单元,达到不容易碰到障碍物的效果。所述加权权值也是可以根据实际情况进行设置的,设置时可参考栅格单元的大小和相互之间的距离关系,只要使得最终的加权权值大于其它的原始权值即可。由于图2和图3中设置的栅格单元的边长为1,所以,选择加权权值为4、5或6等都可以,本实施例中设置的附加权值为5。最终,如图3所示,在原始权值上加入附加权值5,得到(-2,0)格、(-2,1)格和(-2,-1)格的加权权值分别为12、11.4和10.4。机器人在路径选择时,最终选择原始权值最小的(-3,-1)格作为待进栅格。
接着,判断与(-3,-1)格相邻的(-2,-1)格、(-2,0)格、(-3,0)格、(-4,0)格、(-4,-1)格、(-4,-2)格、(-3,-2)格和(-2,-2)格中,是否有目标栅格,如果有,则结束搜索,确定起点栅格到(-3,-1)格,再到目标栅格的路径为搜索到的路径。图2所示,与(-3,-1)格相邻的栅格单元中,没有目标栅格,所以,需要计算这些栅格单元的原始权值,上述已经计算过原始权值的栅格单元可以不用再重复计算。然后判断所述这些栅格单元是否在障碍栅格的预设范围内,同理,上述已经分析过的栅格单元可以不用再分析,对于已经加过一次附加权值的栅格单元,即使再在其它障碍栅格的预设范围内,也可以不用再加权了,每个栅格单元加一次附加权值即可。最终,确定并选取原始权值最小的(-4,-1)格作为下一个待进栅格。
依此类推,最终得到由(-3,-0)格、(-3,-1)格、(-4,-1)格、(-3,-2)格、(-3,-3)格、(-2,-4)格、(-1,-4)格、(0,-4)格、(1,-4)格、(2,-3)格和(2,-2)格所组成的搜索路径(如图3中箭头所示),搜索结束。所述搜索到的路径,能够始终保持与障碍物一个栅格的距离,从而有效避免了容易碰到障碍物的问题,提高了机器人的行进效率。
优选的,所述相邻为栅格单元与栅格单元之间通过一条公共的边或者一个公共的角顶点相互连接。比如图2中,(-2,0)格、(-3,1)格、(-4,0)格、(-3,-1)格分别与起点栅格通过一条公共边相互连接,所以,这四个栅格单元与所述起点栅格相邻。(-2,1)格、(-4,1)格、(-4,-1)格和(-2,-1)格分别与起点栅格通过一个共同的角顶点相互连接,所以,这四个栅格单元与所述起点栅格相邻。通过这种相邻栅格单元的方式逐步搜索并确定机器人的行进路径,可以提高机器人行进的准确性。
优选的,所述计算与所述起点栅格相邻的不是障碍栅格的参考栅格的原始权值,包括如下步骤:基于任意点作为原点建立XY轴坐标系,栅格单元依序排布在所述XY轴坐标系中,确定起点栅格所在的坐标值为(S1,S2);确定参考栅格所在的坐标值为(C1,C2);确定目标栅格所在的坐标值为(D1,D2);确定从起点栅格到参考栅格的第一开销为K1,K1=sqrt((C1-S1)*(C1-S1)+(C2-S2)*(C2-S2)),其中,sqrt为开平方根;确定从目标栅格到参考栅格的第二开销为K2,K2=abs(C1-D1)+abs(C2-D2),其中,abs为绝对值;确定所述参考栅格的原始权值为Q1,Q1=K1+K2。通过这种由权值反映当前位置与起点和目标点的距离位置关系,来最终确定搜索路径的方式,可以准确、高效地找到最优路径,从而进一步提高机器人的行进效率。
如图2所示,每个方格的左下角标示的是该栅格单元的第一开销,右下角标示的是该栅格单元的第二开销,左上角标示的是该栅格单元的原始权值。所述第一开销、第二开销和原始权值都是通过上述方式计算得到。比如,计算(-2,0)格的原始权值时,(-2,0)格作为参考栅格,其C1=-2,C2=0;(-3,0)格作为起点栅格,其S1=-3,S2=0;(2,-2)格作为目标栅格,其D1=2,D2=-2。计算得到第一开销为K1=sqrt((-2-(-3))*(-2-(-3))+(0-0)*(0-0))=1;计算得到第二开销为K2=abs(-2-2)+abs(0-(-2))=6;最终计算得到其原始权值Q1=1+6=7。
优选的,所述判断所述参考栅格是否在障碍栅格的预设范围内,包括如下步骤:分别以障碍栅格的四条边和四个角顶点为基点,以N个连续排布的栅格单元为长度向外延伸所构成的栅格区;判断所述参考栅格是否为所述栅格区中的一个栅格单元;如果是,则所述参考栅格在障碍栅格的预设范围内;如果否,则所述参考栅格不在障碍栅格的预设范围内;其中,所述N为自然数。通过这种判断方式,可以准确地确定机器人下一步的行进是否会靠近障碍物,从而能够进一步降低机器人碰到障碍物的风险。
如图2中,以(-1,0)格这个障碍栅格为例,确定这障碍栅格的四条边为方格的四边,四个角顶点为方格的四个直角的角顶点。如果N=2,则由(-1,1)格、(-1,2)格、(-2,1)格、(-3,2)格、(-2,0)格、(-3,0)格、(-2,-1)格、(-3,-2)格、(-1,-1)格、(-1,-2)格、(0,-1)格、(1,-2)格、(0,0)格、(1,0)格、(0,1)格和(1,2)格所构成的栅格区中,只要有一个为参考栅格,则所述参考栅格在障碍栅格的预设范围内。
优选的,所述选取所述原始权值最小的参考栅格作为待进栅格,还包括如下步骤:判断所述原始权值最小且相等的参考栅格的数量是否大于或者等于两个;如果是,则随机选取其中一个所述原始权值最小且相等的参考栅格作为待进栅格;如果否,则以所述原始权值最小的参考栅格作为待进栅格。如果两个栅格单元的权值相同,说明两者与起点和目标点的位置关系相似,从哪一边走都可以,所以,只要随机选择其中一个即可。
优选的,所述在所述参考栅格的原始权值上加入附加权值后得到加权权值,包括如下步骤:确定所述参考栅格的原始权值为Q1;确定所述附加权值为M,使得所述加权权值为P,且P=Q1+M时,大于其它的所述相邻的参考栅格的原始权值。由于加入附加权值的目的是增大原始权值,避免机器人选择该点作为待进栅格,所以,在确定了参考栅格在障碍栅格的预设范围内时,则需要朝远离障碍物的方向走,达到不容易碰到障碍物的效果。所述加权权值也是可以根据实际情况进行设置的,设置时可参考栅格单元的大小和相互之间的距离关系,只要使得最终的加权权值大于其它的原始权值,不让机器人从障碍物方向行进即可。如图2和图3所示,在(-2,0)格、(-2,-1)格和(-2,-2)格的原始权值7、6.4和8.2的基础上加入附加权值5,最终得到加权权值12、11.4和13.2。如此,机器人的选择的路径就会避开这些靠近障碍物的栅格单元,具体路径如箭头所指示。
优选的,所述在所述参考栅格的原始权值上加入附加权值后得到加权权值,还包括如下步骤:如果所述参考栅格在两个或者两个以上的障碍栅格的预设范围内的,加且只加一次附加权值。其实,多加几次附加权值也可以,因为加入附加权值越多,表明附近的障碍物越多,机器人更不应该朝这边走,所以,权值越大,机器人越不可能选择这个栅格单元。但是,频繁地加入附加权值,存在计算资源浪费的情况,因为只加一次,就已经能够使得权值大于其它原始权值,加多次的意义也不大。故加且只加一次附加权值为最优方式。
优选的,所述结束搜索后,还包括如下步骤:确定搜索到的路径;判断所述路径中,位于所述起点栅格的下一个的下一个待进栅格是否与所述起点栅格相邻;如果是,则取消位于中间的待进栅格,将所述起点栅格的下一个的下一个待进栅格作为所述起点栅格的下一个待进栅格;如果否,则判断所述起点栅格的下一个待进栅格与所述起点栅格的下一个的下一个的下一个待进栅格是否相邻;以此类推,直到判断所述路径中,所述目标栅格的上一个的上一个待进栅格是否与所述目标栅格相邻;如果是,则取消位于中间的待进栅格,确定最终路径;如果否,则直接确定最终路径。
如图3所示,机器人从(-3,0)格到(-3,-1)格再到(-4,-1)格时,存在一个连续直角变化的过程,这样就会导致机器人行进时出现卡顿的情况。为了进一步优化机器人行进路径,判断机器人从当前栅格单元到下一个的下一个栅格单元的位置关系,如果两者相邻,则说明存在连续直角的情况,需要优化,此时,取消位于中间的栅格单元,可以使得路径变得相对平滑和顺畅,从而提高机器人行进的平稳性。如果两者不相邻,则说明不存在连续直角的情况,不需要优化,继续后续栅格单元的分析,直到整条路径优化完毕为止。如图4所示,就是对图3中的路径优化的结果,取消了(-3,-1)格,使得优化后的路径相对更平滑和顺畅一些。
本发明所述的芯片,用于存储程序,所述程序用于控制机器人执行上述的搜索方法。通过所述芯片的控制,在路径搜索时,对靠近障碍物的参考栅格的原始权值加一个附加权值,使得靠近障碍物的参考栅格最终的加权权值大于其它相邻的参考栅格的原始权值,然后引导机器人朝权值较小的参考栅格行进,从而使机器人行进时能够与障碍物之间间隔一定距离,避免机器人容易碰到障碍物的问题,提高了机器人的行进效率。
本发明所述的机器人,安装有控制芯片,所述控制芯片用于控制机器人的行进动作,所述控制芯片为上述芯片。所述机器人通过在路径搜索时,对靠近障碍物的参考栅格的原始权值加一个附加权值,使得靠近障碍物的参考栅格最终的加权权值大于其它相邻的参考栅格的原始权值,然后引导机器人朝权值较小的参考栅格行进,从而使机器人行进时能够与障碍物之间间隔一定距离,避免机器人容易碰到障碍物的问题,提高了机器人的行进效率。
以上实施例仅为充分公开而非限制本发明,凡基于本发明的创作主旨、未经创造性劳动的等效技术特征的替换,应当视为本申请揭露的范围。
Claims (8)
1.一种基于栅格地图的路径搜索方法,其特征在于,包括如下步骤:
基于栅格地图,确定起点所在栅格单元为起点栅格,确定目标点所在的栅格单元为目标栅格,确定障碍物所在的栅格单元为障碍栅格;
基于起点所在的起点栅格,判断与所述起点栅格相邻的栅格单元中是否有所述目标栅格;
如果是,则结束搜索;
如果否,则计算与所述起点栅格相邻的不是障碍栅格的参考栅格的原始权值,并判断所述参考栅格是否在障碍栅格的预设范围内;
如果否,则选取所述原始权值最小的参考栅格作为待进栅格;
如果是,则在所述参考栅格的原始权值上加入附加权值后得到加权权值,再选取原始权值和加权权值中权值最小的参考栅格作为待进栅格;
判断与所述待进栅格相邻的栅格单元中是否有所述目标栅格;
如果是,则结束搜索;
如果否,则计算与所述待进栅格相邻的不是障碍栅格的参考栅格的原始权值,并判断所述参考栅格是否在障碍栅格的预设范围内;
如果否,则选取所述原始权值最小的参考栅格作为下一个待进栅格;
如果是,则在所述参考栅格的原始权值上加入附加权值后得到加权权值,再选取原始权值和加权权值中权值最小的参考栅格作为下一个待进栅格;
以此类推,
直到与所述待进栅格相邻的栅格单元中有所述目标栅格,则结束搜索;
其中,在所述参考栅格的原始权值上加入附加权值后得到加权权值,包括如下步骤:
确定所述参考栅格的原始权值为Q1;
确定所述附加权值为M,使得所述加权权值为P,且P=Q1+M时,大于其它的所述相邻的参考栅格的原始权值;
其中,在所述参考栅格的原始权值上加入附加权值后得到加权权值,还包括如下步骤:
如果所述参考栅格在两个或者两个以上的障碍栅格的预设范围内的,加且只加一次附加权值。
2.根据权利要求1所述的方法,其特征在于,所述相邻为栅格单元与栅格单元之间通过一条公共的边或者一个公共的角顶点相互连接。
3.根据权利要求1所述的方法,其特征在于,所述计算与所述起点栅格相邻的不是障碍栅格的参考栅格的原始权值,包括如下步骤:
基于任意点作为原点建立XY轴坐标系,栅格单元依序排布在所述XY轴坐标系中,
确定起点栅格所在的坐标值为(S1,S2);
确定参考栅格所在的坐标值为(C1,C2);
确定目标栅格所在的坐标值为(D1,D2);
确定从起点栅格到参考栅格的第一开销为K1,K1=sqrt((C1-S1)*(C1-S1)+(C2-S2)*(C2-S2)),其中,sqrt为开平方根;
确定从目标栅格到参考栅格的第二开销为K2,K2=abs(C1-D1)+abs(C2-D2),其中,abs为绝对值;
确定所述参考栅格的原始权值为Q1,Q1=K1+K2。
4.根据权利要求1所述的方法,其特征在于,所述判断所述参考栅格是否在障碍栅格的预设范围内,包括如下步骤:
分别以障碍栅格的四条边和四个角顶点为基点,以N个连续排布的栅格单元为长度向外延伸所构成的栅格区;
判断所述参考栅格是否为所述栅格区中的一个栅格单元;
如果是,则所述参考栅格在障碍栅格的预设范围内;
如果否,则所述参考栅格不在障碍栅格的预设范围内;
其中,所述N为自然数。
5.根据权利要求1所述的方法,其特征在于,所述选取所述原始权值最小的参考栅格作为待进栅格,还包括如下步骤:
判断所述原始权值最小且相等的参考栅格的数量是否大于或者等于两个;
如果是,则随机选取其中一个所述原始权值最小且相等的参考栅格作为待进栅格;
如果否,则以所述原始权值最小的参考栅格作为待进栅格。
6.根据权利要求1所述的方法,其特征在于,所述结束搜索后,还包括如下步骤:
确定搜索到的路径;
判断所述路径中,位于所述起点栅格的下一个的下一个待进栅格是否与所述起点栅格相邻;
如果是,则取消位于中间的待进栅格,将所述起点栅格的下一个的下一个待进栅格作为所述起点栅格的下一个待进栅格;
如果否,则判断所述起点栅格的下一个待进栅格与所述起点栅格的下一个的下一个的下一个待进栅格是否相邻;
以此类推,直到判断所述路径中,所述目标栅格的上一个的上一个待进栅格是否与所述目标栅格相邻;
如果是,则取消位于中间的待进栅格,确定最终路径;
如果否,则直接确定最终路径。
7.一种芯片,用于存储程序,其特征在于:所述程序用于控制机器人执行权利要求1至6任一项所述的搜索方法。
8.一种机器人,安装有控制芯片,其特征在于:所述控制芯片为权利要求7所述的芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710701090.0A CN107357295B (zh) | 2017-08-16 | 2017-08-16 | 一种基于栅格地图的路径搜索方法和芯片及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710701090.0A CN107357295B (zh) | 2017-08-16 | 2017-08-16 | 一种基于栅格地图的路径搜索方法和芯片及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107357295A CN107357295A (zh) | 2017-11-17 |
CN107357295B true CN107357295B (zh) | 2021-02-23 |
Family
ID=60287122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710701090.0A Active CN107357295B (zh) | 2017-08-16 | 2017-08-16 | 一种基于栅格地图的路径搜索方法和芯片及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107357295B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108983776B (zh) * | 2018-07-19 | 2021-07-30 | 深圳市欢创科技有限公司 | 一种机器人控制方法及其装置、电子设备 |
CN110081894B (zh) * | 2019-04-25 | 2023-05-12 | 同济大学 | 一种基于道路结构权值融合的无人车轨迹实时规划方法 |
CN112155477B (zh) * | 2020-09-28 | 2021-08-24 | 珠海市一微半导体有限公司 | 一种基于栅格地图的密集障碍物点标记方法 |
CN113009911B (zh) * | 2021-02-20 | 2022-11-01 | 大陆智源科技(北京)有限公司 | 清洁路径的生成方法、装置和自移动设备 |
CN113317733B (zh) * | 2021-06-04 | 2023-01-31 | 深圳飞鼠动力科技有限公司 | 一种路径规划方法及清洁机器人 |
CN113951767A (zh) * | 2021-11-08 | 2022-01-21 | 珠海格力电器股份有限公司 | 可移动设备的控制方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100745975B1 (ko) * | 2004-12-30 | 2007-08-06 | 삼성전자주식회사 | 그리드 맵을 사용하여 최소 이동 경로로 이동하는 방법 및장치 |
CN105716613A (zh) * | 2016-04-07 | 2016-06-29 | 北京进化者机器人科技有限公司 | 一种机器人避障中的最短路径规划方法 |
CN105955280A (zh) * | 2016-07-19 | 2016-09-21 | Tcl集团股份有限公司 | 移动机器人路径规划和避障方法及系统 |
CN106441303A (zh) * | 2016-09-30 | 2017-02-22 | 哈尔滨工程大学 | 一种基于可搜索连续邻域a*算法的路径规划方法 |
CN106840168A (zh) * | 2017-03-16 | 2017-06-13 | 苏州大学 | 清洁机器人及其动态环境下全覆盖路径规划方法 |
-
2017
- 2017-08-16 CN CN201710701090.0A patent/CN107357295B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100745975B1 (ko) * | 2004-12-30 | 2007-08-06 | 삼성전자주식회사 | 그리드 맵을 사용하여 최소 이동 경로로 이동하는 방법 및장치 |
CN105716613A (zh) * | 2016-04-07 | 2016-06-29 | 北京进化者机器人科技有限公司 | 一种机器人避障中的最短路径规划方法 |
CN105955280A (zh) * | 2016-07-19 | 2016-09-21 | Tcl集团股份有限公司 | 移动机器人路径规划和避障方法及系统 |
CN106441303A (zh) * | 2016-09-30 | 2017-02-22 | 哈尔滨工程大学 | 一种基于可搜索连续邻域a*算法的路径规划方法 |
CN106840168A (zh) * | 2017-03-16 | 2017-06-13 | 苏州大学 | 清洁机器人及其动态环境下全覆盖路径规划方法 |
Non-Patent Citations (3)
Title |
---|
Ms.Jasna.S.B etc..Remodeled A* algorithm for mobile robot agents with obstacle positioning.《2016 IEEE International Conference on Computational Intelligence and Computing Research (ICCIC)》.2017, * |
Remodeled A* algorithm for mobile robot agents with obstacle positioning;Ms.Jasna.S.B etc.;《2016 IEEE International Conference on Computational Intelligence and Computing Research (ICCIC)》;20170508;第1-5页 * |
一种改进A*算法的智能机器人路径规划;方昕等;《信息技术》;20150925;第40-42页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107357295A (zh) | 2017-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107357295B (zh) | 一种基于栅格地图的路径搜索方法和芯片及机器人 | |
CN107773164B (zh) | 用于清洁机器人的清洁方法、装置及机器人 | |
Ferguson et al. | Field D*: An interpolation-based path planner and replanner | |
CN107990903B (zh) | 一种基于改进a*算法的室内agv路径规划方法 | |
CN108549385B (zh) | 一种结合a*算法和vfh避障算法的机器人动态路径规划方法 | |
CN109945873A (zh) | 一种用于室内移动机器人运动控制的混合路径规划方法 | |
CN110095122B (zh) | 一种基于改进蚁群算法的移动机器人路径规划方法 | |
CN112985408B (zh) | 一种路径规划优化方法及系统 | |
WO2023155371A1 (zh) | 室内移动机器人的平稳移动全局路径规划方法 | |
CN108415428B (zh) | 一种移动机器人的全局路径优化方法 | |
Janchiv et al. | Complete coverage path planning for multi-robots based on | |
CN112327856B (zh) | 一种基于改进A-star算法的机器人路径规划方法 | |
CN102854880A (zh) | 面向混合地形区域不确定环境的机器人全局路径规划方法 | |
CN107478232B (zh) | 机器人导航路径的搜索方法 | |
CN113703450B (zh) | 基于平滑因素改进蚁群算法的移动机器人路径规划方法 | |
CN113867368A (zh) | 一种基于改进海鸥算法的机器人路径规划方法 | |
CN113189988B (zh) | 一种基于Harris算法与RRT算法复合的自主路径规划方法 | |
CN114675649A (zh) | 一种融合改进的a*与dwa算法的室内移动机器人路径规划方法 | |
Huadong et al. | A path planning method of robot arm obstacle avoidance based on dynamic recursive ant colony algorithm | |
Gu et al. | Path planning for mobile robot in a 2.5‐dimensional grid‐based map | |
CN114442618A (zh) | 一种基于aco-pso-vfh的室内移动机器人自主动态路径规划方法 | |
WO2023231757A1 (zh) | 基于地图区域轮廓的设置方法与机器人沿边结束控制方法 | |
CN115826586B (zh) | 一种融合全局算法和局部算法的路径规划方法及系统 | |
CN115016461B (zh) | 一种基于动态终点策略的IA-Star算法的机器人路径规划方法 | |
CN116009552A (zh) | 一种路径规划方法、装置、设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |