CN116501028A - 路径规划方法和机器人 - Google Patents
路径规划方法和机器人 Download PDFInfo
- Publication number
- CN116501028A CN116501028A CN202210054261.6A CN202210054261A CN116501028A CN 116501028 A CN116501028 A CN 116501028A CN 202210054261 A CN202210054261 A CN 202210054261A CN 116501028 A CN116501028 A CN 116501028A
- Authority
- CN
- China
- Prior art keywords
- point
- path
- robot
- distance
- target
- 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 69
- 238000005260 corrosion Methods 0.000 claims description 32
- 230000007797 corrosion Effects 0.000 claims description 32
- 238000009499 grossing Methods 0.000 claims description 21
- 238000004140 cleaning Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 4
- 238000005530 etching Methods 0.000 claims description 3
- 238000010408 sweeping Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 238000010276 construction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002093 peripheral effect Effects 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, 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
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)
- Manipulator (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请提供一种路径规划方法和机器人,该方法包括:获取环境地图的路径骨架;根据机器人的当前起点和目标点,从所述路径骨架上选取目标路径点,依次连接所述目标路径点形成所述机器人的折线路径;其中,所述折线路径与最近的障碍物之间的垂直距离保持预设距离。本申请可以为机器人构建更加精准的可行路径。
Description
技术领域
本申请涉及电器控制技术领域,具体而言,涉及一种路径规划方法和机器人。
背景技术
移动机器人技术近年来得到快速发展,它在物流仓储、智能巡检、智能家居、商场导购等诸多领域得到了广泛的应用,特别是家用扫地机器人的普及,而路径规划技术是影响扫地机器人工作性能最为关键的因素之一。路径规划的目的是在已知的机器人环境地图中规划出一条从机器人当前位置到达目标地点的最优路径,由于扫地机器人上所用传感器精度较低,所构建的地图不精准,或者狭窄通道口临时被封闭,导致某些可达或可出区域封闭从而不能规划可行路径,最终影响扫地机器人的清扫效果。
发明内容
本申请实施例的目的在于提供一种路径规划方法和机器人,可以为机器人构建更加精准的可行路径。
本申请实施例第一方面提供了一种路径规划方法,包括:获取环境地图的路径骨架;根据机器人的当前起点和目标点,从所述路径骨架上选取目标路径点,依次连接所述目标路径点形成所述机器人的折线路径;其中,所述折线路径与最近的障碍物之间的垂直距离保持预设距离。
于一实施例中,所述根据机器人的当前起点和目标点,从所述路径骨架上选取目标路径点,依次连接所述目标路径点形成所述机器人的折线路径,包括:
在所述路径骨架中,以所述当前起点开始,依次遍历所述路径骨架中的路径点,将所述路径点依次与所述当前起点相连,形成连接线段,直至所述路径点和所述当前起点的连接线段与所述骨架地图中的障碍物之间保持所述预设距离时,保留所述路径点作为所述目标路径点,并将所述目标路径点作为下次遍历的起点,按照上述步骤进行循环执行,直至遍历到所述路径骨架中的所述目标点为止,得到所述机器人的折线路径。
于一实施例中,还包括:对所述折线路径中的拐点,分别在所述拐点两边选取第一点和第二点,沿着所述折线路径做所述第一点到所述第二点的弧线路径,得到所述折线路径对应的平滑路径;其中,所述第一点到所述拐点的距离小于第一垂直点与所述拐点的距离,所述第一垂直点为所述第一点所在折线路径上与障碍物最近的路径点;所述第二点到所述拐点的距离小于第二垂直点与所述拐点的距离,所述第二垂直点为所述第二点所在折线路径上与障碍物最近的路径点。
于一实施例中,所述对所述折线路径中的拐点,分别在所述拐点两边选取第一点和第二点,包括:
当时,分别得到所述折线路径段上与所述拐点P0之间距离为S的第一点P1和第二点P2;当/>且/>大于第一垂直点和第二垂直点与所述拐点的距离时,分别得到所述折线路径段上与所述拐点P0之间距离为/>的第一点P1和第二点P2;其中,S为设定的平滑距离,且小于第一垂直点和第二垂直点与所述拐点的距离;D为拐点P0两边最短的折线路径段长度。
于一实施例中,沿着所述折线路径做所述第一点到所述第二点的弧线路径,得到所述折线路径对应的平滑路径,包括:在所述第一点P1和所述第二点P2之间采用贝塞尔平滑处理,根据所述第一点P1和所述第二点P2生成贝塞尔曲线,取所述贝塞尔曲线上等距的多个点依次连接,得到所述拐点P0对应的平滑路径段,按照上述对所述拐点P0的平滑方式,遍历所述折线路径中的所有拐点,得到所述平滑路径。
于一实施例中,还包括:当所述机器人遇到被障碍物全包围或者部分包围目标点的限制通行区域时,进入路径探索过程;所述探索过程为:作一个路径框,所述路径框覆盖所述限制通行区域其外围最近两面障碍物轮廓;在所述路径框上选取一点作为探索起点,在所述路径框上选取另一点作为探索终点,若所述机器人从所述探索起点沿着所述路径框行驶至所述探索终点过程中,找到通道口,则进入所述限制通行区域,否则确定所述限制通行区域不可达。
于一实施例中,所述路径框为矩形框;所述探索过程为:当所述机器人遇到所述限制通行区域时,做一个矩形框,所述矩形框覆盖所述限制通行区域其外围最近两面障碍物轮廓,所述机器人先以与所述矩形框相交边界上最近的边缘点为探索起点,沿着所述障碍物轮廓移动,直至到达所述矩形框上最远的边缘点,若所述机器人找到通道口,则进入所述限制通行区域,否则确定所述限制通行区域不可达。
于一实施例中,所述获取目标环境中的骨架地图,包括:获取所述目标环境中所述的栅格地图,并对所述栅格地图进行第一次腐蚀处理,得到第一腐蚀地图;提取所述腐蚀地图中的骨架地图。
于一实施例中,所述第一次腐蚀处理的腐蚀距离大于等于机器人直径。
本申请实施例第二方面提供了一种机器人,包括:清洁组件;电机,用于驱动所述清洁组件运动以清洁地面;存储器,用以存储计算机程序;处理器,用以执行所述计算机程序,以实现本申请实施例第一方面及其任一实施例的方法。
本申请提供的路径规划方法和设备,通过在路径骨架上选取目标路径点,并依次连接目标路径点,形成机器人在的折线路径,其中折线路径与最近的障碍物之间的垂直距离保持预设距离,如此,可以在保证路径最短的情况下降低路径上出现障碍物的风险,为机器人构建更加精准的可行路径,提高机器人的清扫效果。
另一方面,通过可以将折线路径中的拐点作为平滑目标,以第一点和第二点作为平滑的起点和终点,将折线路径中的拐点进行平滑处理,有利于机器人顺利拐弯,进一步提升机器人行走过程的稳定性效果,平滑有利于拐弯,并通过限制第一点、第二点与障碍物之间的垂直距离,可以保证机器人不会与障碍物发生碰撞,保证机器人的安全性。
再者,当机器人在行走过程中,如果遇到障碍物,可以通过探索过程,找到通道口,解决了当前扫地机器人上由于地图不精准或建图过程导致通道口闭合的问题。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例的机器人的结构示意图;
图2为本申请一实施例的路径规划方法的流程示意图;
图3A-3F为本申请一实施例的路径骨架地图的获取示意图;
图4为本申请一实施例的路径规划方法的流程示意图;
图5A-5B为本申请一实施例的全局路径搜索示意图;
图6A-6C为本申请一实施例的情况1的路径拉伸过程示意图;
图7A-7C为本申请一实施例的情况2的路径拉伸过程示意图;
图8A-8C为本申请一实施例的路径平滑过程示意图;
图9为本申请一实施例的路径探索过程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图1所示,本实施例提供一种机器人1,包括:至少一个处理器11、存储器12、清洁组件13和电机14,图1中以一个处理器为例。处理器11、存储器12和电机14通过总线10连接,清洁组件13和电机14相连。存储器12存储有可被处理器11执行的指令,指令被处理器11执行,以使机器人1可执行下述的实施例中方法的全部或部分流程,以实现为机器人构建更加精准的可行路径,提高机器人的清扫效果。
于一实施例中,机器人1可以是扫地机器人、拖地机器人,扫拖一体机器人、吸尘器等设备,清洁组件可以为辊刷、拖擦件等组件。
请参看图2,其为本申请一实施例的路径规划方法,该方法可由图1所示的机器人1来执行,并可以应用于地面清洁场景中,以实现为机器人构建更加精准的可行路径,提高机器人的清扫效果。以机器人1为扫地机器人为例,该方法包括如下步骤:
步骤201:获取环境地图的路径骨架。
在本步骤中,环境地图可以是待清扫的房间,,可以是房间中需要清扫的部分或者全部区域的地图,路径骨架可以为环境地图中可通行区域的中线连接起来形成的路径。
于一实施例中,步骤201具体可以包括:获取目标环境的栅格地图,并对栅格地图进行第一次腐蚀处理,得到第一腐蚀地图。提取腐蚀地图中的路径骨架。其中,第一次腐蚀处理的腐蚀距离大于等于机器人直径。
扫地机器人首先遍历待处理区域的整个环境,遍历整个环境后,可以构建环境的栅格地图,也叫做三色地图(黑白灰),如图3A所示,其中白色代表可通行区域,黑色区域代表障碍物区域。实际场景中,可能存在某些临时障碍物或者门遮挡通道口,导致图3A中栅格地图的可通行区域断开,形成了限制通行区域(即图3A中的白色小方块区域)。可以先对栅格地图进行二值化处理,设置像素阈值k,将像素值小于k的像素全部设置为0,否则为255,完成栅格地图二值化,结果如图3B所示。再进行腐蚀处理,假设二值地图为A,设置结构元素为B(其大小可以设置为扫地机器人的直径),图像A用卷积模板B来进行腐蚀处理,腐蚀处理就是将图像A的障碍物区域进行膨胀,若障碍物区域为单个栅格,则腐蚀后得到障碍区域可以为3*3的栅格区域,若障碍物区域为N*M的区域,则腐蚀后得到障碍区域可以为(N+2)*(M+2)的栅格区域,腐蚀距离即为膨胀距离,最终可以得到如图3C所示的腐蚀地图,如此,将一些零散分布的障碍物区域经过腐蚀融合成一体,使得机器人在行走过程中不会从障碍物中间行走,从而使得移动机器人远离这些障碍物,保证机器人规划路径的可达性及行驶的安全性。
在得到腐蚀地图的基础之上,提取腐蚀地图的骨架(或者Voronoi图,即可通行区域的中线连接起来形成的路径)。实际场景中,扫地机器人传感器可能不够精准,或者对障碍物进行腐蚀膨胀之后,导致地图可能会出现局部封闭区域(也即限制通行区域),例如图3A-图3C中地图出现的内部闭合白色区域,因此生成的骨架是非连通的,为了减少该部分局部路径对后续路径搜索的干扰,以提高路径规划效率,可以保留路径最多的骨架,将其他路径去除。如图3D所示,具体做法为:遍历原始骨架图像的像素点,根据八邻域搜索并标记骨架的连通域,分别记录各个连通域像素点的个数,保留像素点最多的连通域设置为255(置白),将其他连通域像素值设置为0(置黑),得到优化骨架如图3E所示,然后将优化骨架附在地图中形成路径骨架地图,如图3F所示。
步骤202:根据机器人的当前起点和目标点,从路径骨架上选取目标路径点,依次连接目标路径点形成机器人的折线路径。
在本步骤中,路径骨架上包括很多路径点,由于使用骨架地图生成的全局路径先天存在曲折且路径较远的问题,导致机器人运动不稳定且耗时费能,可以对规划出来的骨架路径进行优化拉直,保证路径远离障碍物且较短。首先确定扫地机器人的当前起点以及需要到达的目标点,然后从路径骨架上选取目标路径点对路径骨架进行优化处理,依次连接目标路径点形成机器人的折线路径,折线路径与最近的障碍物之间的垂直距离保持预设距离,因此折线路径可以降低机器人撞到障碍物的风险,增加机器人行走时的平稳性,提高清扫效果。
上述路径规划方法,通过在骨架地图上选取目标路径点,并依次连接目标路径点,形成机器人在的折线路径,其中折线路径与最近的障碍物之间的垂直距离保持预设距离,如此,可以降低路径上出现障碍物的风险,为机器人构建更加精准的可行路径,提高机器人的清扫效果。预设距离可以大于等于机器人直径,可以为腐蚀后的腐蚀距离。
请参看图4,其为本申请一实施例的路径规划方法,该方法可由图1所示的机器人1来执行,并可以应用于地面清洁场景中,以实现为机器人构建更加精准的可行路径,提高机器人的清扫效果。以机器人1为扫地机器人为例,该方法包括如下步骤:
步骤401:获取目标环境的路径骨架地图。详细参见上述实施例中对步骤201的描述。
步骤402:在路径骨架地图搜索出从当前起点到目标点的全局路径。
在本步骤中,在得到路径骨架地图后,为解决某些特殊目标点不能规划路径问题,可以根据扫地机器人大当前起点和要到达的目标点搜索全局路径,依据实际场景可以分两种情况:
情况1:目标点(B点)与起点(A点)均在空白区域且没被障碍物包围,如图5A所示,先以起点A为中心点,以八邻域的方式向外搜索,碰到障碍物就转向,并保证当前搜索点到中心点的路径最短,直到搜寻到骨架上的点(记为a点)就停止,将该路径作为全局路径的第一部分,同理,可以目标点B为中心点,搜寻出全局路径的第三部分,骨架上的点记为b点,再以a点为起点,b点为终点,沿着骨架搜寻路径的第二部分,最后将三部分路径结合起来,作为全局路径。
情况2:目标点(B点)与起点(A点)均在空白区域但至少有一个被障碍物包围,如图5B所示,目标点B在内部闭合的空白可通行区域内,这种场景下,如果仍然按照情况1中的方式进行搜索,则无法找到整条路径。为了让机器人可以尝试逼近目标点B,当全局路径的第三部分搜索不出来的时候,可以以目标点B为中心点,寻找最近的骨架上的点,直接相连,或者,从路径框寻找一点,再寻找骨架上的点,直接相连,路径框覆盖目标点其外围最近两面障碍物轮廓,再按照情况1中相同的方式在骨架上搜寻全局路径的第二部分,最后将三部分路径结合起来,作为全局路径。
步骤403:根据机器人的当前起点和目标点,从路径骨架上选取目标路径点,依次连接目标路径点形成机器人的折线路径。
在本步骤中,由于骨架曲折的特性,得到的全局路径也是弯曲的,不利于扫地机器人的行走,可以对全局路径进行优化,得到折线路径。
因此,步骤403具体可以包括:在路径骨架中,以当前起点开始,依次遍历路径骨架(即所得到的全局路径)中的路径点,将路径点依次与当前起点相连,形成连接线段,直至路径点和当前起点的连接线段与骨架地图中的障碍物之间保持预设距离时,保留该路径点作为目标路径点,并将目标路径点作为下次遍历的起点,按照上述步骤进行循环执行,直至遍历到路径骨架中的目标点为止,得到机器人的折线路径。
实际场景中,为了让优化的路径尽可能远离障碍物,可以先对步骤401中得到的腐蚀地图进行二次腐蚀,保存二次腐蚀之后的地图。预设距离可以为二次腐蚀后的腐蚀距离。
然后在得到全局路径中,从当前起点开始,按顺序遍历所有路径点,将路径点依次与起点相连,直到连接线段与骨架地图中的障碍物之间保持预设距离,预设距离可以为二次腐蚀后的腐蚀距离,也就是直到满足连接线段刚好不穿过二次腐蚀地图中的障碍物(即保证路径与腐蚀后的障碍物相切)时,保留这个目标路径点,并将它设置为下次遍历的起点,按照上述步骤进行循环,直至遍历到目标点为止,即可得到折线路径。
于一实施例中,对于上述步骤402中情况1的全局路径优化过程为:
如图6A所示,此时,目标点(B点)与起点(A点)均在空白区域且没被障碍物包围,遍历全局路径中所有路径点,依次连接得到所有目标路径点,得到折线路径。如图6B所示,为情况1下的全局路径拉伸过程,如图6C为得到的折线路径。
于一实施例中,对于上述步骤402中情况2的全局路径优化过程为:
如图7A所示,目标点(B点)与起点(A点)均在空白区域但至少有一个被障碍物包围,只对正常搜索出来的路径部分进行优化,对于直接连接的最短路径部分不做处理,如图7B所示,为情况2下的全局路径拉伸过程,如图7C为得到的折线路径。
步骤404:对折线路径中的拐点,分别在拐点两边选取第一点和第二点,沿着折线路径做第一点到第二点的弧线路径,得到折线路径对应的平滑路径。
在本步骤中,直接优化拉直的路径会存在尖点,会导致机器人运动不平顺,影响效率。因此,可以将折线路径中的拐点作为平滑目标,以第一点和第二点作为平滑的起点和终点,将折线路径中的拐点进行平滑处理,得到第一点到第二点的弧线路径,进一步提升机器人行走过程的稳定性。其中,第一点到拐点的距离小于第一垂直点与拐点的距离,第一垂直点为第一点所在折线路径上与障碍物最近的路径点。或第二点到拐点的距离小于第二垂直点与拐点的距离,第二垂直点为第二点所在折线路径上与障碍物最近的路径点。
于一实施例中,分别在所述拐点两边选取第一点和第二点,包括:
当时,分别得到所述折线路径段上与所述拐点P0之间距离为S的第一点P1和第二点P2;
当且/>大于第一垂直点和第二垂直点与所述拐点的距离时,分别得到所述折线路径段上与所述拐点P0之间距离为/>的第一点P1和第二点P2。;其中,S为设定的平滑距离,且小于第一垂直点和第二垂直点与所述拐点的距离;D为拐点P0距两边最短的折线路径段长度。
在本步骤中,可以采用贝塞尔平滑方式处理折线路径的拐点,将折线路径中的拐点作为平滑目标,设置贝塞尔平滑距离为S(为了保证平滑路径不与障碍物发生干涉,距离S一般小于第一垂直点与拐点的距离,和第二垂直点与拐点的距离),假设拐点P0两边最短折线长度为D,向两边分别寻找P1、P2两点。具体方法:若S>=D,跳过,不做平滑处理。若P1、P2则为两边折线上距离P0点S的点。若/> 小于第一垂直点与拐点的距离,和第二垂直点与拐点的距离,则P1、P2为两边折线上距离P0点/>的点,否则,P1、P2为两边折线上距离P0点S的点。
这样,可以保证机器人沿平滑路径移动不会碰撞到障碍物的同时,使平滑距离不会太小,也不会太大,使机器人沿平滑路径移动顺畅。
于一实施例中,沿着折线路径做第一点到第二点的弧线路径,得到折线路径对应的平滑路径,包括:在第一点P1和第二点P2之间采用贝塞尔平滑处理,根据第一点P1和第二点P2生成贝塞尔曲线,取贝塞尔曲线上等距的多个点依次连接,得到拐点P0对应的平滑路径段,按照上述对拐点P0的平滑方式,遍历折线路径中的所有拐点,得到平滑路径。
在本步骤中,寻找由P0、P1、P2三点形成的二阶贝塞尔曲线:P(t)=(1-t)2P0+2t(1-t)P1+t2P2,t∈[0,1],取其中等距的N个点依次连接作为平滑路径,如图8A所示,弧线为P0、P1、P2三点形成的二阶贝塞尔曲线。遍历所有拐点,按照该方式对折线路径进行平滑处理,得到平滑路径,保证机器人平顺运行。平滑处理后,机器人的行走路径会与二次腐蚀地图相切,转弯时机器人运动会很平顺且路径满足贝塞尔曲线,转弯点也在骨架上。
如图8B所示,对于上述全局路径情况1,对折线路径的拐点处进行平滑处理后,得到折线路径与平滑路径的对比示意图。
如图8C所示,对于上述全局路径情况2,对折线路径的拐点处进行平滑处理后,得到折线路径与平滑路径的对比示意图。
于一实施例中,规划出的局路径区域可能不可达,因此机器人可以根据实际环境进行探索。比如,上述情况2,机器人会沿着规划路径行走,机器人最后会从离目标点较近的一个点直接走向目标点运动,直至与障碍物发生碰撞,然后在轮廓外进行探索。
该方法还可以包括:
步骤405:当机器人遇到被障碍物全包围或者部分包围目标点的限制通行区域时,进入路径探索过程。
在本步骤中,探索过程为:作一个路径框,路径框覆盖限制通行区域其外围最近两面障碍物轮廓。在路径框上选取一点作为探索起点,在路径框上选取另一点作为探索终点,若机器人从探索起点沿着路径框行驶至探索终点过程中,找到通道口,则进入限制通行区域,否则确定限制通行区域不可达。
也就是说,当机器人在行走过程中,如果遇到障碍物,可以将障碍物和需要到达的目标点圈在一个框内,然后在这个框内沿着框寻找是否有可以到达目标点的路径,如果有就进入,否则就确定这个目标点不可达。如此提供一种机器人探索方案,保证最大可能进入目标区域进行工作。
于一实施例中,路径框为矩形框。探索过程为:当机器人遇到限制通行区域时,做一个矩形框,矩形框覆盖限制通行区域其外围最近两面障碍物轮廓,机器人先以与矩形框相交边界上最近的边缘点为探索起点,沿着障碍物轮廓移动,直至到达矩形框上最远的边缘点,若机器人找到通道口,则进入限制通行区域,否则确定限制通行区域不可达。
比如,对于上述情况2,即目标点(B点)与起点(A点)均在空白可通行区域,但至少有一个被障碍物包围在孤立空白区域,机器人沿着平滑路径移动,进入第三部分路径(直接连接的路径)后,若与墙壁发生碰撞,则机器人进行探索,具体探索方式为:作一个最小的矩形,使其覆盖当前孤立空白区域与外围最近两面障碍物轮廓,如图9所示,机器人首先移动至与矩形相交边界较近的那个边缘点,再沿着障碍物轮廓进行移动,直至达到较远的那个边缘点,若机器人仍不能找到通道口到达目标点B,则确定该目标点B不可达。
上述路径规划方法,解决了当前扫地机器人上由于地图不精准或建图过程中某些临时障碍物遮挡通道口,导致通道口闭合,以至于无法规划出全局路径导致不可达问题,并且解决了现有部分路径规划算法规划的路径弯曲不平滑的问题,可以为机器人构建更加精准的可行路径,提高机器人的清扫效果。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种路径规划方法,其特征在于,包括:
获取环境地图的路径骨架;
根据机器人的当前起点和目标点,从所述路径骨架上选取目标路径点,依次连接所述目标路径点形成所述机器人的折线路径;
其中,所述折线路径与最近的障碍物之间的垂直距离保持预设距离。
2.根据权利要求1所述的方法,其特征在于,所述根据机器人的当前起点和目标点,从所述路径骨架上选取目标路径点,依次连接所述目标路径点形成所述机器人的折线路径,包括:
在所述路径骨架中,以所述当前起点开始,依次遍历所述路径骨架中的路径点,将所述路径点依次与所述当前起点相连,形成连接线段,直至所述路径点和所述当前起点的连接线段与所述骨架地图中的障碍物之间保持所述预设距离时,保留所述路径点作为所述目标路径点,并将所述目标路径点作为下次遍历的起点,按照上述步骤进行循环执行,直至遍历到所述路径骨架中的所述目标点为止,得到所述机器人的折线路径。
3.根据权利要求1所述的方法,其特征在于,还包括:
对所述折线路径中的拐点,分别在所述拐点两边选取第一点和第二点,沿着所述折线路径做所述第一点到所述第二点的弧线路径,得到所述折线路径对应的平滑路径;
其中,所述第一点到所述拐点的距离小于第一垂直点与所述拐点的距离,所述第一垂直点为所述第一点所在折线路径上与障碍物最近的路径点;
所述第二点到所述拐点的距离小于第二垂直点与所述拐点的距离,所述第二垂直点为所述第二点所在折线路径上与障碍物最近的路径点。
4.根据权利要求3所述的方法,其特征在于,所述对所述折线路径中的拐点,分别在所述拐点两边选取第一点和第二点,包括:
当时,分别得到所述折线路径段上与所述拐点P0之间距离为S的第一点P1和第二点P2;
当且/>大于第一垂直点和第二垂直点与所述拐点的距离时,分别得到所述折线路径段上与所述拐点P0之间距离为/>的第一点P1和第二点P2;其中,S为设定的平滑距离,且小于第一垂直点和第二垂直点与所述拐点的距离;D为拐点P0两边最短的折线路径段长度。
5.根据权利要求4所述的方法,其特征在于,沿着所述折线路径做所述第一点到所述第二点的弧线路径,得到所述折线路径对应的平滑路径,包括:
在所述第一点P1和所述第二点P2之间采用贝塞尔平滑处理,根据所述第一点P1和所述第二点P2生成贝塞尔曲线,取所述贝塞尔曲线上等距的多个点依次连接,得到所述拐点P0对应的平滑路径段,按照上述对所述拐点P0的平滑方式,遍历所述折线路径中的所有拐点,得到所述平滑路径。
6.根据权利要求1所述的方法,其特征在于,还包括:
当所述机器人遇到被障碍物全包围或者部分包围目标点的限制通行区域时,进入路径探索过程;所述探索过程为:作一个路径框,所述路径框覆盖所述限制通行区域其外围最近两面障碍物轮廓;
在所述路径框上选取一点作为探索起点,在所述路径框上选取另一点作为探索终点,若所述机器人从所述探索起点沿着所述路径框行驶至所述探索终点过程中,找到通道口,则进入所述限制通行区域,否则确定所述限制通行区域不可达。
7.根据权利要求6所述的方法,其特征在于,所述路径框为矩形框;所述探索过程为:
当所述机器人遇到所述限制通行区域时,做一个矩形框,所述矩形框覆盖所述限制通行区域其外围最近两面障碍物轮廓,所述机器人先以与所述矩形框相交边界上最近的边缘点为探索起点,沿着所述障碍物轮廓移动,直至到达所述矩形框上最远的边缘点,若所述机器人找到通道口,则进入所述限制通行区域,否则确定所述限制通行区域不可达。
8.根据权利要求1所述的方法,其特征在于,所述获取环境地图的路径骨架,包括:
获取目标环境的栅格地图,并对所述栅格地图进行第一次腐蚀处理,得到第一腐蚀地图;
提取所述腐蚀地图中的路径骨架。
9.根据权利要求8所述的方法,其特征在于,所述第一次腐蚀处理的腐蚀距离大于等于机器人直径。
10.一种机器人,其特征在于,包括:
清洁组件;
电机,用于驱动所述清洁组件运动以清洁地面;
存储器,用以存储计算机程序;
处理器,用以执行所述计算机程序,以实现如权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210054261.6A CN116501028A (zh) | 2022-01-18 | 2022-01-18 | 路径规划方法和机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210054261.6A CN116501028A (zh) | 2022-01-18 | 2022-01-18 | 路径规划方法和机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116501028A true CN116501028A (zh) | 2023-07-28 |
Family
ID=87328972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210054261.6A Pending CN116501028A (zh) | 2022-01-18 | 2022-01-18 | 路径规划方法和机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116501028A (zh) |
-
2022
- 2022-01-18 CN CN202210054261.6A patent/CN116501028A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109947114B (zh) | 基于栅格地图的机器人全覆盖路径规划方法、装置及设备 | |
WO2021248846A1 (zh) | 一种机器人沿边行走的区域清扫规划方法、芯片及机器人 | |
CN109363585B (zh) | 分区遍历方法、清扫方法及其扫地机器人 | |
CN107390698B (zh) | 扫地机器人的补扫方法及芯片 | |
US11774980B2 (en) | Method for controlling cleaning of robot, chip, and robot cleaner | |
US20220244739A1 (en) | Cleaning partition planning method for robot walking along boundry, chip and robot | |
CN112799398B (zh) | 基于寻径代价的清洁路径规划方法、芯片及清洁机器人 | |
CN110332943B (zh) | 一种快速遍历的机器人全覆盖路径规划方法 | |
CN112137529B (zh) | 一种基于密集障碍物的清扫控制方法 | |
CN111595356B (zh) | 一种激光导航机器人的工作区域构建方法 | |
CN113189988B (zh) | 一种基于Harris算法与RRT算法复合的自主路径规划方法 | |
KR101263233B1 (ko) | 특징점 추출을 통한 청소 로봇의 청소 방법 | |
CN110412619B (zh) | 激光机器人的区域遍历方法和激光主控芯片 | |
CN111562787B (zh) | 机器人全覆盖路径规划区域划分方法、装置、介质及设备 | |
CN113064407B (zh) | 全区域覆盖的清扫方法、装置、清扫机器人及存储装置 | |
CN113110445A (zh) | 机器人的路径规划方法及装置、机器人、存储介质 | |
CN111329398A (zh) | 机器人控制方法、机器人、电子设备和可读存储介质 | |
CN114431771B (zh) | 一种扫地机器人清扫方法及相关装置 | |
WO2023231757A1 (zh) | 基于地图区域轮廓的设置方法与机器人沿边结束控制方法 | |
CN116501028A (zh) | 路径规划方法和机器人 | |
CN115540852A (zh) | 电子栅格地图构建方法、装置、电子设备及存储介质 | |
CN114967698A (zh) | 清扫方法、装置、电子设备及存储介质 | |
CN114323047A (zh) | 一种基于多边形分解的全覆盖路径规划算法 | |
CN111897336B (zh) | 一种机器人沿边行为结束的判断方法、芯片及机器人 | |
CN111307156B (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 |