CN110244716A - 一种基于波前算法的机器人探索的方法 - Google Patents
一种基于波前算法的机器人探索的方法 Download PDFInfo
- Publication number
- CN110244716A CN110244716A CN201910451028.XA CN201910451028A CN110244716A CN 110244716 A CN110244716 A CN 110244716A CN 201910451028 A CN201910451028 A CN 201910451028A CN 110244716 A CN110244716 A CN 110244716A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- wave front
- map
- explored
- mobile robot
- 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 49
- 230000008569 process Effects 0.000 claims abstract description 17
- 230000004888 barrier function Effects 0.000 claims abstract description 9
- 230000007480 spreading Effects 0.000 claims description 2
- 238000009792 diffusion process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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
Abstract
本发明公开了一种基于波前算法的机器人探索的方法,包括如下步骤:步骤1、使用SLAM算法获取当前环境地图;步骤2、将从SLAM算法得到的地图进行障碍物膨胀;步骤3、使用波前算法中向外逐层扩散的过程找出边界点;步骤4、使用波前算法中路径规划的方法,规划一条从移动机器人位置到边界点的路径;步骤5、判断地图中是否还有边界点,如果有,则返回步骤1继续探索,否则,探索过程结束。本发明能够解决移动机器人探索建图的问题。
Description
技术领域
本发明属于移动机器人自主探索建图领域,具体涉及一种基于波前算法的机器人探索的方法。
背景技术
自主移动机器人探索是智能移动机器人功能的重要组成部分。移动机器人在未知环境下执行任务时,需要对周围环境进行建模。在移动机器人得到周围环境的地图后,可以快速、准确地完成一些特定的任务。然而,以前移动机器人是在人们的控制下先完成建图的任务。然后根据已有的地图规划路径,执行任务。自主移动机器人强调移动机器人在没有人的干预下自主完成建图、执行任务。这将提高移动机器人在恶劣环境或突发情况下的作用,也极大提高移动机器人执行任务的效率。因此,自主探索建图是移动机器人实现智能化的关键。
为了探索整个环境,移动机器人需要不断地被引导到地图中已知和未知区域的交界处。在交界处的点被称为边界点。寻找边界点已经成为机器人探索的主要思想。这种探索方法有两个过程,第一个过程是寻找边界点;第二个过程是移动到边界点。当移动机器人在边界点处收集完环境信息后,地图得到更新。根据更新的地图,移动机器人继续寻找下一个边界点,直到整个地图探索完成。
寻找边界点的途径主要有两个:第一种是基于图像处理的方法;第二种是随机找边界点的方法。基于图像处理的方法,需要遍历整个地图。对于大环境的场景,基于图像处理的探索方法需要大量的计算量和时间。随机找边界点方法,比如基于快速探索随机树(Rapidly-exploring Random Trees,RRT)的算法。随机性可以加速找到地图中的边界点。但是,当环境比较复杂时,随机搜索的方法可能导致搜索到边界点的效率变低。
因此,研究快速找出边界点是移动机器人自主探索建图的关键,对于提高移动机器人的智能化有着重要意义。
发明内容
本发明目的是提供一种基于波前算法的机器人探索的方法,用以解决移动机器人探索建图的问题。
本发明的技术方案是:一种基于波前算法的机器人探索的方法,包括如下步骤:
步骤1、使用SLAM算法获取当前环境地图;
步骤2、将从SLAM算法得到的地图进行障碍物膨胀;
步骤3、使用波前算法中向外逐层扩散的过程找出边界点;
步骤4、使用波前算法中路径规划的方法,规划一条从移动机器人位置到边界点的路径;
步骤5、判断地图中是否还有边界点,如果有,则返回步骤1继续探索,否则,探索过程结束。
上述技术方案中,所述步骤1中的当前环境为一个三维空间,所述地图为二维格栅地图。
上述技术方案中,所述步骤1中选用激光传感器获取当前环境地图,所述激光传感器的扫描角度为360°。
上述技术方案中,所述步骤1中使用的SLAM算法为Gmapping算法。
上文中,所述Gmapping算法可以根据激光传感器数据和移动机器人的里程计数据输出一张二维栅格地图。每个栅格值的取值范围为0~1。栅格的值越大,被占据的可能性越大。通过后期的转换,可以将栅格值转化为-1、0和100。-1表示未知,0表示空闲,100表示占据。
上述技术方案中,所述步骤2中,将得到的地图所占据的格栅向四周扩展α个格栅单位,其中,扩展的格栅单位数α为:
α=d/r+c
其中,d为移动机器人的直径,r为地图的分辨率,c为一个常数。若想使移动机器人远离障碍物,则增加c的值;若不想使移动机器人太远离障碍物,则减小c的值。
上述技术方案中,所述步骤3的具体步骤为:
步骤31、从移动机器人当前位置开始,当第一次找到边界点后且移动机器人到达边界点处时,完成第一次探索;
步骤32、将步骤31中的边界点作为下一次波前算法扩散的起点,以此类推,直到整个地图探索完成。
上述技术方案中,所述步骤4中规划的是从移动机器人起始点到边界点的路径。该路径是最短的,也是安全可通过的。这条被规划的路径由一系列栅格的坐标组成。由于波前算法在扩散时,每一层都给栅格赋一个值,并且这个值是递增的。当在规划路径时,从边界点处开始,根据栅格值递减的规律,得到一条栅格路径。当要将移动机器人移动到边界点处时,只需要依次将每个栅格的坐标发送mose_base节点。
上述技术方案中,所述步骤5中判断探索是否结束的具体操作为,当移动机器人到达边界点处并且完成地图构建后,移动机器人会继续搜索下一个边界点。如果找到边界点,则继续探索环境;如果遍历完整个地图没有发现边界点,则探索过程结束。
本发明的优点是:
本发明使用波前算法向外扩散的方法寻找地图中的边界点,该方法可以快速找到边界点,并且找到边界点的速度与地图的复杂度无关;根据波前算法中规划路径的方法规划一条从移动机器人位姿到边界点的路径。该路径是最短的,也是安全可通过的。
附图说明
下面结合附图及实施例对本发明作进一步描述:
图1为本发明实施例一的方法流程图。
图2为Gmapping算法得到的环境栅格地图。
图3为用波前算法扩散的过程找边界点的示意图。
图4为用波前算法规划路径的过程示意图。
图5为仿真实验探索建图过程示意图。
图6为实际实验得到的栅格地图示意图。
具体实施方式
实施例一:
为了达到本发明的目的,如图1所示,在本发明的其中一种实施方式中提供一种基于波前算法的机器人探索的方法,包括如下步骤:
步骤1、使用SLAM算法获取当前环境地图;
如图2所示,为Gmapping算法根据激光传感器数据和移动机器人里程计数据得到的二维栅格地图。地图由空闲栅格、占据栅格和未知栅格组成。白色部分为空闲栅格且栅格的值为0;黑色部分为占据栅格且栅格的值为100;灰色部分为未知栅格且栅格的值为-1。
步骤2、将从SLAM算法得到的地图进行障碍物膨胀;
如图2所示,为环境的栅格地图。考虑到移动机器人自身尺寸的问题,需要将地图中的障碍物的尺寸膨胀,可以避免移动机器人碰撞到环境中的障碍物。一般障碍物需要膨胀的尺寸应大于移动机器人的半径。
步骤3、使用波前算法中向外逐层扩散的过程找出边界点;
如图3所示,为基于波前算法向外扩散找边界的过程。从起始点开始扩散,同时起始点栅格值为2。下一层栅格是上一层栅格的相邻栅格。每一层栅格的值比前一层栅格的值增加1。当遇到占据栅格时,栅格的值不变。考虑到环境场景比较大时,可以给占据栅格一个较大的值。当遇到未知栅格时,扩散停止,并将该栅格标记为边界点。
步骤4、使用波前算法中路径规划的方法,规划一条从移动机器人位置到边界点的路径;
如图4所示,为用波前算法规划路径的方法规划路径的过程。当找到边界点后,需要一条移动到边界点处的路径。从边界点开始,按照栅格值递减的规律,直到到达起始点栅格,可以得到一条栅格路径。该路径是最短的,也是安全可通过的。
步骤5、判断地图中是否还有边界点,如果有,则返回步骤1继续探索,否则,探索过程结束;
如图5所示,为一个仿真实验的探索过程。图中的小方块为每次探索找到的边界点。整个探索过程移动机器人不断寻找边界点,然后到达边界点构建地图。接着继续寻找边界点,直到整个地图探索完成。
图6所示,为根据本发明所提方法进行实际环境的结果,从结果可以看出,本发明的方法可以实现整个环境的探索。
当然上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明主要技术方案的精神实质所做的修饰,都应涵盖在本发明的保护范围之内。
Claims (6)
1.一种基于波前算法的机器人探索的方法,其特征在于、包括如下步骤:
步骤1、使用SLAM算法获取当前环境地图;
步骤2、将从SLAM算法得到的地图进行障碍物膨胀;
步骤3、使用波前算法中向外逐层扩散的过程找出边界点;
步骤4、使用波前算法中路径规划的方法,规划一条从移动机器人位置到边界点的路径;
步骤5、判断地图中是否还有边界点,如果有,则返回步骤1继续探索,否则,探索过程结束。
2.根据权利要求1所述的基于波前算法的机器人探索的方法,其特征在于:所述步骤1中的当前环境为一个三维空间,所述地图为二维格栅地图。
3.根据权利要求1所述的基于波前算法的机器人探索的方法,其特征在于:所述步骤1中选用激光传感器获取当前环境地图,所述激光传感器的扫描角度为360°。
4.根据权利要求1所述的基于波前算法的机器人探索的方法,其特征在于:所述步骤1中使用的SLAM算法为Gmapping算法。
5.根据权利要求1所述的基于波前算法的机器人探索的方法,其特征在于:所述步骤2中,将得到的地图所占据的格栅向四周扩展α个格栅单位,其中,扩展的格栅单位数α为:
α=d/r+c
其中,d为移动机器人的直径,r为地图的分辨率,c为一个常数。
6.根据权利要求1所述的基于波前算法的机器人探索的方法,其特征在于:所述步骤3的具体步骤为:
步骤31、从移动机器人当前位置开始,当第一次找到边界点后且移动机器人到达边界点处时,完成第一次探索;
步骤32、将步骤31中的边界点作为下一次波前算法扩散的起点,以此类推,直到整个地图探索完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910451028.XA CN110244716A (zh) | 2019-05-28 | 2019-05-28 | 一种基于波前算法的机器人探索的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910451028.XA CN110244716A (zh) | 2019-05-28 | 2019-05-28 | 一种基于波前算法的机器人探索的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110244716A true CN110244716A (zh) | 2019-09-17 |
Family
ID=67885236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910451028.XA Pending CN110244716A (zh) | 2019-05-28 | 2019-05-28 | 一种基于波前算法的机器人探索的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110244716A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110716547A (zh) * | 2019-10-30 | 2020-01-21 | 苏州大学 | 一种基于波前算法的3d探索的方法 |
CN110806211A (zh) * | 2019-11-29 | 2020-02-18 | 炬星科技(深圳)有限公司 | 机器人自主探索建图的方法、设备及存储介质 |
CN111680747A (zh) * | 2020-06-08 | 2020-09-18 | 北京百度网讯科技有限公司 | 用于占据栅格子图的闭环检测的方法和装置 |
WO2023071922A1 (zh) * | 2021-11-01 | 2023-05-04 | 速感科技(北京)有限公司 | 地图优化方法、装置、电子设备和存储介质 |
CN116182840A (zh) * | 2023-04-28 | 2023-05-30 | 科大讯飞股份有限公司 | 地图构建方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103926925A (zh) * | 2014-04-22 | 2014-07-16 | 江苏久祥汽车电器集团有限公司 | 一种基于改进的vfh算法的定位与避障方法及机器人 |
CN105652874A (zh) * | 2016-03-21 | 2016-06-08 | 北京联合大学 | 一种基于广义波前算法的移动机器人实时避障方法 |
CN106840168A (zh) * | 2017-03-16 | 2017-06-13 | 苏州大学 | 清洁机器人及其动态环境下全覆盖路径规划方法 |
-
2019
- 2019-05-28 CN CN201910451028.XA patent/CN110244716A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103926925A (zh) * | 2014-04-22 | 2014-07-16 | 江苏久祥汽车电器集团有限公司 | 一种基于改进的vfh算法的定位与避障方法及机器人 |
CN105652874A (zh) * | 2016-03-21 | 2016-06-08 | 北京联合大学 | 一种基于广义波前算法的移动机器人实时避障方法 |
CN106840168A (zh) * | 2017-03-16 | 2017-06-13 | 苏州大学 | 清洁机器人及其动态环境下全覆盖路径规划方法 |
Non-Patent Citations (1)
Title |
---|
姜涛 等: ""小型移动机器人自主返航路径规划方法"", 《计算机工程》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110716547A (zh) * | 2019-10-30 | 2020-01-21 | 苏州大学 | 一种基于波前算法的3d探索的方法 |
CN110806211A (zh) * | 2019-11-29 | 2020-02-18 | 炬星科技(深圳)有限公司 | 机器人自主探索建图的方法、设备及存储介质 |
CN111680747A (zh) * | 2020-06-08 | 2020-09-18 | 北京百度网讯科技有限公司 | 用于占据栅格子图的闭环检测的方法和装置 |
CN111680747B (zh) * | 2020-06-08 | 2023-09-01 | 北京百度网讯科技有限公司 | 用于占据栅格子图的闭环检测的方法和装置 |
WO2023071922A1 (zh) * | 2021-11-01 | 2023-05-04 | 速感科技(北京)有限公司 | 地图优化方法、装置、电子设备和存储介质 |
CN116182840A (zh) * | 2023-04-28 | 2023-05-30 | 科大讯飞股份有限公司 | 地图构建方法、装置、设备及存储介质 |
CN116182840B (zh) * | 2023-04-28 | 2023-07-25 | 科大讯飞股份有限公司 | 地图构建方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110244716A (zh) | 一种基于波前算法的机器人探索的方法 | |
CN106198049B (zh) | 真实车辆在环测试系统和方法 | |
CN109541634A (zh) | 一种路径规划方法、装置和移动设备 | |
US20200192399A1 (en) | Method for traversing a subarea, method for cleaning, and cleaning robot thereof | |
CN103901892B (zh) | 无人机的控制方法及系统 | |
CN108981710A (zh) | 一种移动机器人的全覆盖路径规划方法 | |
CN110006429A (zh) | 一种基于深度优化的无人船航迹规划方法 | |
CN109813310B (zh) | 地下作业设备定位方法、装置、系统及存储介质 | |
CN107913039A (zh) | 用于清洁机器人的区块选择方法、装置及机器人 | |
Sudhakara et al. | Trajectory planning of a mobile robot using enhanced A-star algorithm | |
CN105955262A (zh) | 一种基于栅格地图的移动机器人实时分层路径规划方法 | |
CN109163722B (zh) | 一种仿人机器人路径规划方法及装置 | |
CN106371445A (zh) | 一种基于拓扑地图的无人车规划控制方法 | |
CN108334080A (zh) | 一种针对机器人导航的虚拟墙自动生成方法 | |
CN110531770A (zh) | 一种基于改进的rrt路径规划方法和系统 | |
CN105527964A (zh) | 一种机器人路径规划方法 | |
CN109164815A (zh) | 一种基于改进蚁群算法的自主水下航行器路径规划方法 | |
Janchiv et al. | Complete coverage path planning for multi-robots based on | |
Kanezaki et al. | Goselo: Goal-directed obstacle and self-location map for robot navigation using reactive neural networks | |
CN109839112B (zh) | 地下作业设备定位方法、装置、系统及存储介质 | |
CN110110763A (zh) | 一种基于最大公共子图的栅格地图融合方法 | |
Kumar et al. | Robot path pursuit using probabilistic roadmap | |
Xu et al. | Explore-bench: Data sets, metrics and evaluations for frontier-based and deep-reinforcement-learning-based autonomous exploration | |
CN115494834A (zh) | 机器人路径规划方法、装置及机器人 | |
CN113865589B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190917 |