CN111638713B - 可通行区域的框定方法、面积计算方法、芯片及机器人 - Google Patents
可通行区域的框定方法、面积计算方法、芯片及机器人 Download PDFInfo
- Publication number
- CN111638713B CN111638713B CN202010456788.2A CN202010456788A CN111638713B CN 111638713 B CN111638713 B CN 111638713B CN 202010456788 A CN202010456788 A CN 202010456788A CN 111638713 B CN111638713 B CN 111638713B
- Authority
- CN
- China
- Prior art keywords
- map
- area
- edge
- global
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 238000004364 calculation method Methods 0.000 title claims abstract description 29
- 238000009432 framing Methods 0.000 claims abstract description 47
- 230000008569 process Effects 0.000 claims abstract description 31
- 238000013507 mapping Methods 0.000 claims description 34
- 238000004140 cleaning Methods 0.000 claims description 29
- 238000010408 sweeping Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 abstract description 4
- 230000007613 environmental effect Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241001417527 Pempheridae Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002035 prolonged 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/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
技术领域
本发明涉及移动机器人的区域规划的技术领域,尤其涉及一种基于全局栅格地图的移动机器人的可通行区域的确定方法、该区域的面积计算方法、芯片及机器人。
背景技术
移动机器人是指在设定封闭室内空间内自主执行预设任务的自移动设备,目前可移动机器人包括但不限于移动机器人(例如智能扫地机、智能扫拖一体化机器人、擦窗机器人)、陪伴型移动机器人(例如智能电子宠物、保姆机器人)、服务型移动机器人(例如酒店、旅馆、会晤场所的接待机器人)、工业巡检智能设备(例如电力巡检机器人、智能叉车等)、安防机器人(例如家用或商用智能警卫机器人)。
移动机器人通过普通摄像头获取环境物体的图像并结合码盘及陀螺仪等航位推算传感器的运动学数据,或通过视觉的即时定位与建图(visual simultaneouslocalization and mapping,简称vSLAM)算法得到环境地图。目前的移动机器人在所建立的地图中规划确定可通行区域均是在获取并记录障碍物的位置信息的基础上进行的,因此,需要获取的环境信息量大,需要更大的算力和存储空间,增加了移动机器人导航定位的计算负担,进而延长了建图时间。
发明内容
为了解决上述技术问题,本发明公开一种依靠机器人沿边行走过的栅格区域块所框定的区域规划出可通行区域的方法、面积计算方法、芯片和机器人,具体的技术方案如下:
一种基于全局栅格地图的可通行区域的框定方法,包括:控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图;在完成全局工作区域的遍历之后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时框定建立移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上的可通行区域。该技术方案只是利用机器人在沿边行走过程中遍历的位置区域,就可以构建框定各个全局坐标轴方向上的可通行区域,获取的障碍物环境信息量相对较少,节约算力和存储空间,减小了移动机器人导航定位的计算负担,加快机器人导航建图速度。
进一步地,所述框定移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上的可通行区域包括:框定移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上的可通行区域和框定移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上的可通行区域;其中,全局坐标轴方向包括竖直坐标轴方向和水平坐标轴方向。该技术方案充分考虑移动机器人的沿边行走路径在竖直坐标轴方向或水平坐标轴方向上所框定的可通行区域,使得框定的可通行区域适应实际的家具环境,相对于全局栅格地图标记的环境信息而言,提高可通行区域的覆盖效果。
进一步地,所述框定移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上的可通行区域的方法包括:判断所述全局栅格地图的每一列的地图遍历块中是否存在沿边地图遍历块,是则在对应一列上框定最下端的沿边地图遍历块至最上端的沿边地图遍历块之间的所有的地图遍历块,建立起移动机器人在这一列的可通行子区域,否则不框定移动机器人的沿边行走路径在这一列的可通行子区域;其中,移动机器人的沿边行走路径在每一列所框定的可通行子区域包括同一列最下端的沿边地图遍历块和最上端的沿边地图遍历块;当按照前述步骤判断完所述全局栅格地图的所有列的可通行子区域时,将移动机器人的沿边行走路径在每一列所框定的可通行子区域合并为移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域。与现有技术相比,在全局坐标系的竖直坐标轴方向上,最外侧的沿边地图遍历块之间所框定的可通行区域都能完整地代表机器人当前可通行区域的覆盖程度,沿边地图遍历块用作框定区域的限制条件可减小现有技术全局地图中的栅格信息的运算处理量。
进一步地,所述框定移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上的可通行区域的方法包括:判断所述全局栅格地图的每一行的地图遍历块中是否存在沿边地图遍历块,是则在对应一行上框定最左端的沿边地图遍历块至最右端的沿边地图遍历块之间的所有的地图遍历块,框定出移动机器人在这一行的可通行子区域,否则不框定移动机器人的沿边行走路径在这一行的可通行子区域;其中,移动机器人的沿边行走路径在每一行所框定的可通行子区域包括同一行最左端的沿边地图遍历块和最右端的沿边地图遍历块;当按照前述步骤判断完所述全局栅格地图的所有行的地图遍历块时,将移动机器人的沿边行走路径在每一行所框定的可通行子区域合并为移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域。与现有技术相比,在全局坐标系的水平坐标轴方向上,最外侧的沿边地图遍历块之间所框定的可通行区域都能完整地代表机器人当前可通行区域的覆盖程度,节省机器人遍历所有栅格的工作量,可减小现有技术全局地图中的栅格信息的运算处理量。
进一步地,在移动机器人按照预设清扫方式对全局工作区域进行清扫遍历之前,还包括:根据所述全局栅格地图的尺寸大小设置所述地图遍历块的边长,进而在所述地图遍历块的边长的基础上,通过计算全局栅格地图的尺寸大小和所述地图遍历块的边长的比值关系确定所述全局栅格地图的各个全局坐标轴方向上的地图遍历块的覆盖数量;然后结合所述地图遍历块的边长及其个数计算所述地图遍历块的映射坐标,将所述地图遍历块布局到所述全局栅格地图的每一行和每一列;其中,当移动机器人沿边行走入所述地图遍历块的内部时,同时标记地图遍历块为所述沿边地图遍历块,使得所述沿边行走路径由所述沿边地图遍历块组成。这些行列规则排布的地图遍历块能够反映出全局工作区域的环境特征,适用于处理各种尺度的全局栅格地图,也节约全局地图中的栅格区域的运算资源,加快数据处理速度。
一种基于全局栅格地图的可通行区域的面积计算方法,包括:控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图;在完成全局工作区域的遍历之后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域的面积;其中,所述可通行区域是采用权利要求1至5任一项所述框定方法框定建立的。该技术方案只是利用机器人在沿边行走过程中遍历的位置区域,就可以计算框定各个全局坐标轴方向上的可通行区域的面积,需要获取的障碍物环境信息量相对较少,节约区域面积算力和存储空间,减小了移动机器人导航定位的计算负担,加快机器人路径规划、定位速度。
进一步地,所述计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域的面积包括:计算移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积和计算移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积;其中,全局坐标轴方向包括竖直坐标轴方向和水平坐标轴方向。提高可通行区域的环境适应性和覆盖效果。
进一步地,所述计算移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积的方法包括:判断所述全局栅格地图的每一列的地图遍历块中是否存在沿边地图遍历块,是则在对应一列上,统计最下端的沿边地图遍历块至最上端的沿边地图遍历块之间的地图遍历块的数目,记为移动机器人的沿边行走路径在这一列所框定的可通行子区域的面积;其中,移动机器人的沿边行走路径在每一列所框定的可通行子区域包括同一列最下端的沿边地图遍历块和最上端的沿边地图遍历块;当按照前述步骤判断完所述全局栅格地图的所有列的地图遍历块时,将移动机器人的沿边行走路径在每一列所框定的可通行子区域的面积之和设置为移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积。与现有技术相比,本技术方案利用沿边行走路径在全局坐标系的竖直坐标轴方向上框定的地图遍历块的数目的统计结果作为对应框定的可通行区域的面积,完整地描述机器人当前可通行区域的覆盖程度,减小现有技术全局地图中的栅格面积的运算处理量。
进一步地,所述计算移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积的方法包括:判断所述全局栅格地图的每一行的地图遍历块中是否存在沿边地图遍历块,是则在对应一行上,统计最左端的沿边地图遍历块至最右端的沿边地图遍历块之间的地图遍历块的数目,记为移动机器人的沿边行走路径在这一行所框定的可通行子区域的面积;其中,移动机器人的沿边行走路径在每一行所框定的可通行子区域包括同一行最左端的所述沿边地图遍历块和最右端的所述沿边地图遍历块;当按照前述步骤判断完所述全局栅格地图的所有行的地图遍历块时,将移动机器人的沿边行走路径在每一行所框定的可通行子区域的面积之和设置为移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积。与现有技术相比,本技术方案利用沿边行走路径在全局坐标系的水平坐标轴方向上框定的地图遍历块的数目的统计结果作为对应框定的可通行区域的面积,完整地描述机器人当前可通行区域的覆盖程度,减小现有技术全局地图中的栅格面积的运算处理量。
进一步地,在移动机器人按照预设清扫方式对全局工作区域进行清扫遍历之前,还包括:根据所述全局栅格地图的尺寸大小设置所述地图遍历块的边长,进而在所述地图遍历块的边长的基础上,通过计算全局栅格地图的尺寸大小和所述地图遍历块的边长的比值关系确定所述全局栅格地图的各个全局坐标轴方向上的地图遍历块的覆盖数量;然后结合所述地图遍历块的边长及其个数计算所述地图遍历块的映射坐标,将所述地图遍历块布局到所述全局栅格地图的每一行和每一列;其中,当移动机器人沿边行走入所述地图遍历块的内部时,同时标记地图遍历块为所述沿边地图遍历块,使得所述沿边行走路径由所述沿边地图遍历块组成。这些行列规则排布的地图遍历块能够反映出全局工作区域的环境特征,适用于处理各种尺度的全局栅格地图,也节约全局地图中的栅格面积的运算资源,加快数据处理速度。
一种芯片,内置控制程序,所述控制程序用于控制移动机器人执行所述框定方法,然后执行所述面积计算方法。
一种机器人,该机器人内置所述的芯片,用于在自主移动过程中实时建立起可通行区域和计算确定其面积。
附图说明
图1是本发明实施例的一种基于全局栅格地图的每一列上的可通行区域的框定方法的流程图,其中,每一行的框定方法与每一列的类似,故不再赘述。
图2是本发明实施例的移动机器人在全局工作区域内完整地沿边一圈并返回预设沿边起点A的工作场景示意图(忽略墙体宽度的影响)。
图3是移动机器人在全局工作区域内所标记的沿边地图遍历块(斜线填充方框)在X轴方向上框定部分可通行区域和Y轴方向上框定的部分可通行区域的工作场景示意图。
图4是本发明实施例的一种基于全局栅格地图的每一列上的可通行区域的面积计算方法的流程图,其中,每一行的面积计算方法与每一列的类似,故不再赘述。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细描述。为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。
本发明实施例公开一种基于全局栅格地图的可通行区域的框定方法,包括:控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图;在完成全局工作区域的遍历之后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时框定建立移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上的可通行区域。该技术方案只是利用机器人在沿边行走过程中遍历的位置区域,就可以构建框定各个全局坐标轴方向上的可通行区域,获取的障碍物环境信息量相对较少,节约算力和存储空间,减小了移动机器人导航定位的计算负担,加快机器人导航建图速度。
需要说明的是,本实施例下,所述框定移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上的可通行区域包括:框定移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上的可通行区域和框定移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上的可通行区域。该技术方案充分考虑移动机器人的沿边行走路径在竖直坐标轴方向或水平坐标轴方向上所框定的可通行区域,使得框定的可通行区域适应实际的家具环境,相对于全局栅格地图标记的环境信息而言,提高可通行区域的覆盖效果。其中,全局坐标轴方向包括竖直坐标轴方向和水平坐标轴方向。
作为一种实施例,图1公开一种基于全局栅格地图的每一列上的可通行区域的框定方法的流程图,其中,每一行的框定方法与每一列的类似。如图1所示,所述框定方法包括:
步骤S101、控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图,如图2和图3的工作场景示意图所示,房间区域#1、#2和#3对应的栅格可通行区域都标记有弓字形清扫路径,即移动机器人在本实施例中按照弓字形清扫对全局工作区域进行清扫遍历,实现对全局工作区域的全面覆盖清扫遍历,根据清扫遍历过程中记录的清扫环境信息同步构建起全局栅格地图,然后进入步骤S102。
步骤S102、在移动机器人完成全局工作区域的清扫并标记相关遍历信息在全局栅格地图中后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域面积以及移动机器人所遍历过的可通行区域的面积,然后进入步骤S103。
优选地,在移动机器人按照预设清扫方式对全局工作区域进行清扫遍历之前,还包括:步骤S1、根据全局栅格地图的尺寸大小(包括地图长度和宽度)设置地图遍历块的边长,使得地图遍历块框定方法在全局栅格地图中占据足够大的栅格区域;步骤S2、结合全局栅格地图的尺寸大小和步骤S1确定的地图遍历块的边长的比值关系,计算全局栅格地图的各个全局坐标轴方向上(包括全局坐标系的X轴和Y轴方向)的地图遍历块的覆盖数量,其中,地图遍历块相当于全局栅格地图划分出的子区域;步骤S3、根据步骤S2确定的地图遍历块的覆盖数量的约束作用,对步骤S1确定的地图遍历块的边长进行逐行逐列的累加操作,以计算出每个地图遍历块的映射坐标,使得地图遍历块建立在所述全局栅格地图的每一行和每一列,即地图遍历块的覆盖数量可以确定出全局栅格地图的边界信息,约束地图遍历块在所述全局栅格地图的每一行和每一列的分布数量和位置,其中,每一个地图遍历块都是依据其映射坐标及其边长合并对应的栅格而成。本发明将地图中每行每列的栅格合并建立起一定尺寸大小和数量的地图遍历块,每一个地图遍历块都与实际环境中占据一个小块区域对应,只要将栅格的大小设置的稍微大一些,可以规划出机器人的大体路径即可,减少计算量,易于机器人进行地图信息的处理;所述地图遍历块框定方法实现将大尺度全局栅格地图划分为多个地图子区域,降低了对移动机器人的导航定位算力要求和地图数据存储空间要求,节约全局地图中的栅格面的运算资源,加快数据处理速度。可运用于路径规划、沿边行走、回充路径规划的覆盖率和区域面积计算。需要说明的是,所述全局栅格地图的每一行的地图遍历块都设置在水平坐标轴方向上且在竖直坐标轴方向上的投影重合,所述全局栅格地图的每一列的地图遍历块都设置在竖直坐标轴方向上且在水平坐标轴方向上的投影重合;全局坐标轴方向包括竖直坐标轴方向和水平坐标轴方向。本发明将全局地图上的栅格逐行逐列地合并建立为规则分布的地图遍历块。等效于将全局地图分割成一块一块的小地图块。
优选地,对地图遍历块预先设置一个标准边长E,其最大值可以设置为16,使得每一个地图遍历块最大填充16X16个栅格。本实施例的全局工作区域对应的所述全局栅格地图是矩形地图,填充覆盖所述全局栅格地图的地图遍历块是正方形,当所述全局栅格地图的长和宽都大于E的2倍时,所述地图遍历块的边长设为E;当所述全局栅格地图的长和宽都大于E但小于E的2倍时,则设置所述地图遍历块的边长设为E的一半;当所述全局栅格地图的长小于或等于E,或者所述全局栅格地图的宽小于或等于E,设置所述地图遍历块的边长设为E的四分之一。与现有技术相比,每16X16个地图栅格构成的地图遍历块实现对所述全局栅格地图的栅格膨胀处理,使得地图遍历块在全局栅格地图中占据足够大的栅格区域,方便机器人遍历标记适应范围上的地图路径信息。从而将栅格的大小设置的稍微大一些,只需要规划出机器人的大体路径即可,减少计算量,适合使用于路径规划、沿边行走、回充路径规划。
在本实施例中,计算所述全局栅格地图的有效长度与所述地图遍历块的边长的比值,并加一处理,获得全局栅格地图的竖直坐标轴方向上建立的地图遍历块的覆盖数量;计算所述全局栅格地图的有效宽度与所述地图遍历块的边长的比值,并加一处理,获得全局栅格地图的水平坐标轴方向上建立的地图遍历块的覆盖数量。这里的加一处理的必要性在于,软件***在所述全局栅格地图的有效长度与所述地图遍历块的边长的比值时会取整,忽略掉小数部分,所以需要加一处理保证前述覆盖数量的地图遍历块完整记录实际覆盖的全局工作区域,提高空间区域的冗余度。
在按照前述方法确定所述地图遍历块的边长的基础上,通过计算确定所述全局栅格地图的各个全局坐标轴方向上的地图遍历块的个数,具体分为:所述全局栅格地图的所述竖直坐标轴方向(即长度方向上)的地图遍历块的个数H=全局栅格地图的有效长度与所述地图遍历块的边长的比值+1,所述全局栅格地图的所述水平坐标轴方向(即宽度方向上)的地图遍历块的个数W=全局栅格地图的有效宽度与所述地图遍历块的边长的比值+ 1。本实施例中的有效长度和有效宽度包括让机器人遍历的栅格区域,用于构建所述地图遍历块。
接着,计算每一个所述地图遍历块所对应的栅格坐标,具体包括:步骤S31、以全局栅格地图的左下角栅格位置为参考原点,然后进入步骤S32;以全局栅格地图的左下角为参考原点,计算所述地图遍历块的映射坐标。假设minx、miny分别为全局栅格地图的参考原点坐标,也分别等效于全局栅格地图X轴上的最小坐标值和全局栅格地图Y轴上的最小坐标值;i设置为所述地图遍历块在X轴方向上相对于参考原点的偏移量,i+1相当于在水平坐标轴方向上已经确定映射坐标的地图遍历块的个数;j设置为所述地图遍历块在Y轴方向上相对于参考原点的偏移量,j+1相当于在竖直坐标轴方向上已经确定映射坐标的地图遍历块的个数;e为所述地图遍历块的边长; X(i,j)是所述地图遍历块在全局栅格地图的水平坐标轴方向上的映射坐标,Y(i,j)是所述地图遍历块在全局栅格地图的竖直坐标轴方向上的映射坐标。步骤S32、从这个参考原点坐标位置(minx,miny)开始,将竖直坐标轴上的参考原点坐标加上地图遍历块的边长,来计算确定当前的地图遍历块在竖直坐标轴上的映射坐标,即j=0时获得在竖直坐标轴上的最小映射坐标Y(i,j)=j*e+ miny=miny,同时确定当前的地图遍历块在水平坐标轴上的映射坐标与参考原点在水平坐标轴上的坐标minx相等,然后进入步骤S33。步骤S33、判断在竖直坐标轴方向上已经确定映射坐标的地图遍历块的个数j是否小于全局栅格地图的竖直坐标轴方向上的地图遍历块的覆盖数量H,是则进入步骤S34,否则进入步骤S35。步骤S34、将当前确定的地图遍历块在竖直坐标轴上的映射坐标加上地图遍历块的边长,计算确定出同一竖直坐标轴方向上相邻的地图遍历块在竖直坐标轴上的映射坐标,即Y(i,j+1)= (j+1)*e+ miny,形成同一竖直坐标轴方向上相邻的Y轴映射坐标,每进入步骤S34一次,j就自动加一;同时确定同一竖直坐标轴方向上相邻的地图遍历块在水平坐标轴上的映射坐标X(i,j+1)与当前确定的地图遍历块在水平坐标轴上的映射坐标X(i,j)相同,然后返回步骤S33,实现在同一竖直坐标轴方向的覆盖数量的约束作用下,逐行确定出同一竖直坐标轴方向上的每个地图遍历块的映射坐标。步骤S35、将当前确定的地图遍历块在水平坐标轴上的映射坐标加上地图遍历块的边长,计算确定同一水平坐标轴方向上相邻的地图遍历块在水平坐标轴上的映射坐标,即i=0时获得在水平坐标轴上的最小映射坐标X(i,j)= i*e+ minx=minx,其中每进入步骤S35一次,i就自动加一;同时确定同一水平坐标轴方向上相邻的地图遍历块在竖直坐标轴上的映射坐标Y(i+1,j)与当前确定的地图遍历块在竖直坐标轴上的映射坐标Y(i,j)相同,然后进入步骤S36,实现在同一水平坐标轴方向的覆盖数量的约束作用下,逐列确定出同一水平坐标轴方向上的每个地图遍历块的映射坐标。步骤S36、判断在水平坐标轴方向上已经确定映射坐标的地图遍历块的个数i是否小于全局栅格地图的水平坐标轴方向上的地图遍历块的覆盖数量W,是则返回步骤S33,否则确定已经逐行逐列地计算出所述全局栅格地图中的每个地图遍历块的映射坐标,使得所述全局栅格地图的每一行和每一列都建立起所述地图遍历块,完成所述全局栅格地图的区块化处理。前述步骤的每行每列特指所述地图遍历块在所述全局栅格地图中分布的每行每列。前述实施例根据前述步骤确定的地图遍历块的覆盖数量所起到的地图边界约束作用,对确定的地图遍历块的边长进行逐行逐列的累加操作,包括先遍历当前一列,再遍历下一列,直到遍历完水平坐标轴方向上的分布的所有列的地图遍历块,从而确定每个地图遍历块的映射坐标,将地图遍历块构建到所述全局栅格地图的每一行和每一列的规则区域块上,实现在全局栅格地图分割为所述地图遍历块。
因此,判断所述全局栅格地图的一个栅格位置坐标(a,b)是否属于一个所述遍历地图块的方法包括:判断a是否同时满足大于或等于X(i,j),且小于或等于X(i,j)+e-1;同时判断b是否同时满足大于或等于Y(i,j),且小于或等于Y(i,j)+e-1;当这个栅格位置坐标(a,b)同时满足上面两个判断条件时,则确定这个栅格位置坐标(a,b)位于所述地图遍历块内。当移动机器人按照所述预设清扫方式遍历过所述地图遍历块内部的任一栅格时,比如移动机器人遍历栅格位置坐标(a,b)时,标记对应所属的地图遍历块为已走过的地图遍历块;当移动机器人沿边行走入所述地图遍历块的内部并遍历至栅格位置坐标(a,b)时,同时标记地图遍历块为沿边地图遍历块和已走过的地图遍历块,使得所述沿边行走路径在所述全局栅格地图上由沿边地图遍历块组成,沿边地图遍历块标记为图2至4的斜线填充方框所示,使得图示的移动机器人在全局工作区域内沿边行走路径由沿边地图遍历块组成,已经遍历的清扫路径由已走过的地图遍历块组成,相对于逐个栅格标记的方式,地图遍历块记录更大的路径区域范围,减小标记同一段路径所用的标记块的数目,降低了对移动机器人的算力要求和存储空间要求,减少建图时间。
步骤S103、在沿边行走的同时,判断所述全局栅格地图的当前一列的地图遍历块中是否存在沿边地图遍历块,是则进入步骤S104,否则进入步骤S105。
步骤S104、在步骤S103判断的一列上,框定最下端的沿边地图遍历块至最上端的沿边地图遍历块之间的所有的地图遍历块,或者框定最上端的沿边地图遍历块至最下端的沿边地图遍历块之间的所有的地图遍历块,建立起移动机器人在当前一列的可通行子区域,然后进入步骤S106;当所述全局栅格地图的当前一列的地图遍历块中只是存在一个沿边地图遍历块,则这一列的最上端的沿边地图遍历块至最下端的沿边地图遍历块都是这个仅存的沿边地图遍历块,所框定的最上端的沿边地图遍历块至最下端的沿边地图遍历块之间的所有的地图遍历块只有这个仅存的沿边地图遍历块。
步骤S105、不框定移动机器人的沿边行走路径在当前一列的可通行子区域,然后进入步骤S106;
步骤S106、判断当前一列的地图遍历块的坐标位置是否处于所述全局栅格地图的边界位置处,即判断是否完成所述全局栅格地图的所有列的可通行子区域的框定建立,是则进入步骤S107,否则进入步骤S108。
步骤S107、将移动机器人的沿边行走路径在每一列所框定的可通行子区域合并为移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域。
步骤S108、步骤S103判断的一列地图遍历块更新为当前一列的相邻列的地图遍历块,然后返回步骤S103去继续判断当前一列的相邻列的地图遍历块中是否存在两个或两个以上的沿边地图遍历块。
具体地,在框定移动机器人的沿边行走路径在这一列的可通行区域过程中,从这一列的所述地图遍历块在Y轴方向上最小映射坐标开始,沿着同一Y轴方向逐个检测所述地图遍历块是否为沿边地图遍历块(斜线填充方框),每检测到所述地图遍历块为沿边地图遍历块时进行加一统计,当检测完述全局栅格地图的所述竖直坐标轴方向(即长度方向上)的H个地图遍历块(即前述实施例中全局栅格地图的竖直坐标轴方向上的地图遍历块的覆盖数量H)后,记录偏离原点位置最远的所述沿边地图遍历块坐标位置和偏离原点位置最近的所述沿边地图遍历块的坐标位置,并用虚线将它们与它们之间在同一Y轴方向上设置的地图遍历块框定,建立起移动机器人在当前一列的可通行子区域。如果这一列上检测的所述地图遍历块只有一个沿边地图遍历块(斜线填充方框),则这个沿边地图遍历块也确定为对应一列上的可通行子区域;如果这一列上没有检测到所述沿边地图遍历块,则移动机器人的沿边行走路径在这一列无法框定出可通行区域。但是,不管是否存在所述沿边地图遍历块,本实施例保持在移动机器人已走过的地图遍历块中框定出所述可通行区域,有利于实现跨多个子工作区域连续清扫作业。与现有技术相比,在全局坐标系的竖直坐标轴方向上,最外侧的沿边地图遍历块之间所框定的可通行区域都能完整地代表机器人当前可通行区域的覆盖程度,沿边地图遍历块用作框定区域的限制条件可减小现有技术全局地图中的栅格信息的运算处理量。
同理,框定移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上的可通行区域的方法包括:判断所述全局栅格地图的每一行的地图遍历块中是否存在所述沿边地图遍历块,是则在对应一行上框定最左端的沿边地图遍历块至最右端的沿边地图遍历块之间的所有的地图遍历块,框定出移动机器人在这一行的可通行子区域,或者统计最右端的所述沿边地图遍历块至最左端的所述沿边地图遍历块之间的地图遍历块,框定出移动机器人在这一行的可通行子区域,否则不框定移动机器人的沿边行走路径在当前一行的可通行子区域;具体地,在框定移动机器人的沿边行走路径在这一行的可通行子区域的过程中,从这一行的所述地图遍历块在X轴方向上最小映射坐标开始,沿着同一X轴方向逐个检测所述地图遍历块是否为沿边地图遍历块(斜线填充方框),每检测到所述地图遍历块为沿边地图遍历块时进行加一统计,当检测完述全局栅格地图的所述水平坐标轴方向(即宽度方向上)的W个地图遍历块(即前述实施例中全局栅格地图的水平坐标轴方向上的地图遍历块的覆盖数量W)后,记录偏离原点位置最远的所述沿边地图遍历块坐标位置和偏离原点位置最近的所述沿边地图遍历块的坐标位置,并用虚线将它们与它们之间在同一X轴方向上设置的地图遍历块框定,建立起移动机器人在当前一行的可通行子区域。如果这一行上检测的所述地图遍历块只有一个沿边地图遍历块(斜线填充方框),则这个沿边地图遍历块也确定为对应一行上的可通行子区域;如果这一行上没有检测到所述沿边地图遍历块,则移动机器人的沿边行走路径在这一行无法框定出可通行区域。与现有技术相比,在全局坐标系的水平坐标轴方向上,最外侧的沿边地图遍历块之间所框定的可通行区域都能完整地代表机器人当前可通行区域的覆盖程度,节省机器人遍历所有栅格的工作量,可减小现有技术全局地图中的栅格信息的运算处理量。
本发明实施例还公开一种基于全局栅格地图的可通行区域的面积计算方法,包括:控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图;在完成全局工作区域的遍历之后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域的面积;其中,所述可通行区域是采用前述实施例的框定方法框定建立的。本实施例只是利用机器人在沿边行走过程中遍历的位置区域,就可以计算框定各个全局坐标轴方向上的可通行区域的面积,需要获取的障碍物环境信息量相对较少,节约区域面积算力和存储空间,减小了移动机器人导航定位的计算负担,加快机器人路径规划、定位速度。
需要说明的是,所述计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域的面积包括:计算移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积和计算移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积。提高可通行区域的环境适应性和覆盖效果。其中,全局坐标轴方向包括竖直坐标轴方向和水平坐标轴方向。
作为一种实施例,图4公开一种基于全局栅格地图的每一列上的可通行区域的面积计算方法的流程图,其中,每一行的框定方法与每一列的类似。如图4所示,所述面积计算方法包括:
步骤S401、控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图,如图2和图3的工作场景示意图所示,房间区域#1、#2和#3对应的栅格可通行区域都标记有弓字形清扫路径,即移动机器人在本实施例中按照弓字形清扫对全局工作区域进行清扫遍历,实现对全局工作区域的全面覆盖清扫遍历,根据清扫遍历过程中记录的清扫环境信息同步构建起全局栅格地图,然后进入步骤S402。
步骤S402、在移动机器人完成全局工作区域的清扫并标记相关遍历信息在全局栅格地图中后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域面积以及移动机器人所遍历过的可通行区域的面积,然后进入步骤S403。如图2至图3所示,移动机器人在同一个全局工作区域内从预设沿边起点开始作沿边行走,计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上虚线框定的可通行区域面积以及移动机器人所遍历过的可通行区域的面积,包括房间区域#1、#2和#3中的虚线框定可通行区域和弓字形路径所标记的区域的面积。
需要说明的是,地图遍历块和沿边地图遍历块的定义与前述实施例的相同。
步骤S403、在沿边行走的同时,判断所述全局栅格地图的当前一列的地图遍历块中是否存在沿边地图遍历块,是则进入步骤S404,否则进入步骤S405。
步骤S404、在步骤S403判断的一列上,统计最下端的沿边地图遍历块至最上端的沿边地图遍历块之间的地图遍历块的数目,或者框定最上端的沿边地图遍历块至最下端的沿边地图遍历块之间的地图遍历块的数目,记为移动机器人的沿边行走路径在这一列所框定的可通行子区域的面积,然后进入步骤S406;
步骤S405、不计算移动机器人的沿边行走路径在当前一列的可通行子区域的面积,然后进入步骤S406;
步骤S406、判断当前一列的地图遍历块的坐标位置是否处于所述全局栅格地图的边界位置处,即判断是否完成所述全局栅格地图的所有列的可通行子区域的面积计算,是则进入步骤S407,否则进入步骤S408。
步骤S407、将移动机器人的沿边行走路径在每一列所框定的可通行子区域的面积之和设置为移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积。
步骤S408、步骤S403判断的当前一列地图遍历块更新为当前一列的相邻列的地图遍历块,然后返回步骤S403去继续判断当前一列的相邻列的地图遍历块中是否存在沿边地图遍历块。
具体地,在统计计算移动机器人的沿边行走路径在这一列所框定的可通行子区域的面积的过程中,从这一列的所述地图遍历块在Y轴方向上最小映射坐标开始,沿着同一Y轴方向逐个检测所述地图遍历块是否为沿边地图遍历块(斜线填充方框),每检测到所述地图遍历块为沿边地图遍历块时进行加一统计,当检测完述全局栅格地图的所述竖直坐标轴方向(即长度方向上)的H个地图遍历块后,记录偏离原点位置最远的所述沿边地图遍历块坐标位置和偏离原点位置最近的所述沿边地图遍历块的坐标位置,同时统计获得这两个所述沿边地图遍历块之间所包括的地图遍历块的个数,也包括这两个所述沿边地图遍历块在内。如果这一列上检测的所述地图遍历块只有一个沿边地图遍历块(斜线填充方框)或者没有,则不计算移动机器人的沿边行走路径在这一列框定的可通行子区域的面积,但是,不管是否存在所述沿边地图遍历块,本实施例保持计算移动机器人已走过的地图遍历块的数目,表示移动机器人已走过的可通行区域的面积。
如图3的实施场景所示,房间区域#2的最左端一列的地图遍历块全部是移动机器人沿边行走过程中遍历过的12个所述沿边地图遍历块,则在这一列最上端的所述沿边地图遍历块至最下端的所述沿边地图遍历块之间的地图遍历块的数目12记为所述移动机器人的沿边行走路径在这一列所框定的可通行子区域的面积;房间区域#2的最右端一列的地图遍历块部分是移动机器人沿边行走过程中遍历过的所述沿边地图遍历块,其余可能是空闲栅格区域合并而成的,或者是启动沿边行走之前,移动机器人在房间区域#2内进行弓字形清扫所遍历标记的所述已走过的地图遍历块,则在这一列最上端的所述沿边地图遍历块至最下端的所述沿边地图遍历块之间的地图遍历块的数目12记为所述移动机器人的沿边行走路径在这一列所框定的可通行子区域的面积;当按照前述步骤判断完房间区域#2的所有列的地图遍历块时,框定一个矩形的可通行区域N1N2N11N7,这个矩形虚线区域N1N2N11N7内部所有的地图遍历块的数目是移动机器人的沿边行走路径在房间区域#2的竖直坐标轴方向上所框定的可通行区域的面积。
同理,房间区域#1的最左端一列的地图遍历块全部是移动机器人沿边行走过程中遍历过的所述沿边地图遍历块,则在这一列最上端的所述沿边地图遍历块至最下端的所述沿边地图遍历块之间的地图遍历块的数目3记为所述移动机器人的沿边行走路径在这一列所框定的可通行子区域的面积;房间区域#1的最左端的连续相邻两列都只有一个位于最下端的所述沿边地图遍历块,其余可能是空闲栅格区域合并而成的,或者是启动沿边行走之前,移动机器人在房间区域#1内进行弓字形清扫所遍历标记的所述已走过的地图遍历块,则在这两列也用于计算所述清洁机器人的沿边行走路径在对应列所框定的可通行子区域的面积;当按照前述步骤判断完房间区域#1的所有列的地图遍历块时,框定一个矩形的可通行区域N9N6N8N10及其左端的5个所述沿边地图遍历块,它们内部所包括的所有地图遍历块的数目是是移动机器人的沿边行走路径在房间区域#1的竖直坐标轴方向上所框定的可通行区域的面积,然后加上前述的矩形虚线区域N1N2N11N7内部所有的地图遍历块的数目,则获得移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积。值得注意的是,由于图3所示的房间区域#3的大门紧闭,不同于图2和图4的房间区域#3的大门是开启的,所以,移动机器人不在图3所示的房间区域#3内沿边行走过,不需要计入其沿边行走路径在房间区域#3的竖直坐标轴方向上所框定的可通行区域的面积。本实施例在全局坐标系的竖直坐标轴方向上,最外侧的沿边地图遍历块之间所框定的可通行区域都能完整地代表机器人当前可通行区域的覆盖程度,沿边地图遍历块用作框定区域的限制条件可减小现有技术全局地图中的栅格信息的运算处理量。
计算移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积的方法包括:判断所述全局栅格地图的每一行的地图遍历块中是否存在所述沿边地图遍历块,是则在对应一行上,统计最左端的所述沿边地图遍历块至最右端的所述沿边地图遍历块之间的地图遍历块的数目,或者统计最右端的所述沿边地图遍历块至最左端的所述沿边地图遍历块之间的地图遍历块的数目,并记为移动机器人的沿边行走路径在这一行所框定的可通行子区域的面积,否则不计算移动机器人的沿边行走路径在这一行所框定的可通行子区域的面积;具体地,在统计计算移动机器人的沿边行走路径在这一行所框定的可通行子区域的面积的过程中,从这一行的所述地图遍历块在X轴方向上最小映射坐标开始,沿着同一X轴方向逐个检测所述地图遍历块是否为沿边地图遍历块(斜线填充方框),每检测到所述地图遍历块为沿边地图遍历块时进行加一统计,当检测完述全局栅格地图的所述竖直坐标轴方向(即宽度方向上)的W个地图遍历块后,记录偏离原点位置最远的所述沿边地图遍历块坐标位置和偏离原点位置最近的所述沿边地图遍历块的坐标位置,同时统计获得这两个所述沿边地图遍历块之间所包括的地图遍历块的个数,也包括这两个所述沿边地图遍历块在内。如果这一行上检测的所述地图遍历块只有一个沿边地图遍历块(斜线填充方框),也加一统计在内,从而累计计算出清洁机器人的沿边行走路径在这一列可通行子区域的面积;如果这一行上没有沿边地图遍历块,则无法计算移动机器人的沿边行走路径在这一行框定的可通行子区域的面积,但是,不管是否存在所述沿边地图遍历块,本实施例保持计算移动机器人已走过的地图遍历块的数目,表示移动机器人已走过的可通行区域面积。
如图3的实施场景所示,房间区域#2的最上端一行的地图遍历块全部是移动机器人沿边行走过程中遍历过的8个所述沿边地图遍历块,则在这一行最左端的所述沿边地图遍历块至最右端的所述沿边地图遍历块之间的地图遍历块的数目8,记为所述移动机器人的沿边行走路径在这一行所框定的可通行子区域的面积。沿着所述竖直坐标轴(Y轴)方向自上往下计数,第二行和第三行的两端都存在所述沿边地图遍历块,这两行的内侧的地图遍历块部分是移动机器人沿边行走过程中遍历过的所述沿边地图遍历块,其余可能是空闲栅格区域合并而成的,或者是启动沿边行走之前,移动机器人在房间区域#2内进行弓字形清扫所遍历标记的所述已走过的地图遍历块,则可以计算移动机器人的沿边行走路径在这两行所框定的可通行区域的面积;计数到第四行时,第四、五和六行上都只是存在一个所述沿边地图遍历块,也用于统计计算清洁机器人的沿边行走路径在对应行所框定的可通行子区域的面积,因而清洁机器人的沿边行走路径在上述六行中框定一个矩形虚线区域N1N2N3N4和三个所述沿边地图遍历块。当按照前述步骤判断至房间区域#2的第七行时,判断到房间区域#2和房间区域#1内在这一行上都标记有沿边地图遍历块,然后统计这一行房间区域#2的最左端的所述沿边地图遍历块至房间区域#1最右端的所述沿边地图遍历块之间的地图遍历块的数目为14个,记为所述移动机器人的沿边行走路径在这一行所框定的可通行子区域的面积,此时室内墙体的宽度小于移动机器人本身的尺寸,可忽略不计。当按照前述步骤判断至图3所示的工作场景最下端一行的地图遍历块时,框定一个矩形的可通行区域N5N6N7N8,这个矩形虚线区域N5N6N7N8内部所有的地图遍历块的数目是:移动机器人沿着所述竖直坐标轴(Y轴)方向自上往下计数,得到第七至十二行的沿边行走路径在水平坐标轴方向上所框定的可通行区域的面积;然后加上前述的矩形虚线区域N1N2N3N4内部所有的地图遍历块的数目,则获得移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积。本实施例利用沿边行走路径在全局坐标系的水平坐标轴方向上框定的地图遍历块的数目的统计结果作为对应框定的可通行区域的面积,完整地描述机器人当前可通行区域的覆盖程度,减小现有技术全局地图中的栅格面积的运算处理量。
优选地,图3的全局工作区域的房间区域之间的墙体,比如房间区域#3和房间区域#2之间的墙体M1、房间区域#3和房间区域#1之间的墙体M2、房间区域#2和房间区域#1之间的墙体M3的宽度相对于移动机器人的机体尺寸可忽略不计,则移动机器人从房间区域#1进入房间区域#2的沿边行走过程中,移动机器人跨越墙体M3所遍历的地图遍历块的边长可忽略不计。同样,如图2所示,墙体M2的宽度、墙体M1的宽度和墙体M3的宽度由于都小于清洁机器人本身的尺寸,前述的墙体所占据的栅格大小可忽略不计,移动机器人的沿边行走路径从所述预设沿边起点A出发,最终返回A点,使得整个沿边行走路径绕着全局工作区域一圈完整地行走一圈,在全局工作区域的四周角落、轮廓都标记有所述沿边地图遍历块(斜线填充的小方框),使得全局栅格地图的各个全局坐标轴方向上虚线框定的可通行区域都是矩形区域O1O2O3O4,完整地覆盖全局工作区域,反映整体环境特征。
一种芯片,内置控制程序,所述控制程序用于控制移动机器人执行所述框定方法,然后执行所述面积计算方法。
一种机器人,该机器人内置所述的芯片,用于在自主移动过程中实时建立起可通行区域和计算确定其面积。
要理解本文所述的实施例可以由硬件、软件、固件、中间件、微代码或其任意组合来实现。对于硬件实现方式,处理单元可以在一个或多个专用集成电路(ASIC) 、数字信号处理器(DSP) 、数字信号处理器件(DSPD) 、可编程逻辑器件(PLD) 、现场可编程门阵列(FPGA) 、处理器、控制器、微控制器、微处理器、被设计以执行本文所述功能的其他电子单元、或其组合内实现。当以软件、固件、中间件或微代码、程序代码或代码段来实现实施例时,可以将它们存储在诸如存储组件的机器可读介质中。
上述实施例只为说明本发明的技术构思及特点,其目的是让熟悉该技术领域的技术人员能够了解本发明的内容并据以实施,并不能以此来限制本发明的保护范围。凡根据本发明精神实质所作出的等同变换或修饰,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种基于全局栅格地图的可通行区域的框定方法,包括:控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图;
其特征在于,还包括:在完成全局工作区域的遍历之后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时框定建立移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上的可通行区域;
框定移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上的可通行区域的方法包括:
判断所述全局栅格地图的每一列的地图遍历块中是否存在沿边地图遍历块,是则在对应一列上框定最下端的沿边地图遍历块至最上端的沿边地图遍历块之间的所有的地图遍历块,建立起移动机器人在这一列的可通行子区域,否则不框定移动机器人的沿边行走路径在这一列的可通行子区域;其中,移动机器人的沿边行走路径在每一列所框定的可通行子区域包括同一列最下端的沿边地图遍历块和最上端的沿边地图遍历块;
当按照前述步骤判断完所述全局栅格地图的所有列的可通行子区域时,将移动机器人的沿边行走路径在每一列所框定的可通行子区域合并为移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域;
框定移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上的可通行区域的方法包括:
判断所述全局栅格地图的每一行的地图遍历块中是否存在沿边地图遍历块,是则在对应一行上框定最左端的沿边地图遍历块至最右端的沿边地图遍历块之间的所有的地图遍历块,框定出移动机器人在这一行的可通行子区域,否则不框定移动机器人的沿边行走路径在这一行的可通行子区域;其中,移动机器人的沿边行走路径在每一行所框定的可通行子区域包括同一行最左端的沿边地图遍历块和最右端的沿边地图遍历块;
当按照前述步骤判断完所述全局栅格地图的所有行的地图遍历块时,将移动机器人的沿边行走路径在每一行所框定的可通行子区域合并为移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域。
2.根据权利要求1所述框定方法,其特征在于,所述框定移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上的可通行区域包括:框定移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上的可通行区域和框定移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上的可通行区域;
其中,全局坐标轴方向包括竖直坐标轴方向和水平坐标轴方向。
3.根据权利要求2所述框定方法,其特征在于,在移动机器人按照预设清扫方式对全局工作区域进行清扫遍历之前,还包括:根据所述全局栅格地图的尺寸大小设置所述地图遍历块的边长,进而在所述地图遍历块的边长的基础上,通过计算全局栅格地图的尺寸大小和所述地图遍历块的边长的比值关系确定所述全局栅格地图的各个全局坐标轴方向上的地图遍历块的覆盖数量;然后结合所述地图遍历块的边长及其个数计算所述地图遍历块的映射坐标,将所述地图遍历块布局到所述全局栅格地图的每一行和每一列;
其中,当移动机器人沿边行走入所述地图遍历块的内部时,同时标记地图遍历块为所述沿边地图遍历块,使得所述沿边行走路径由所述沿边地图遍历块组成。
4.一种基于全局栅格地图的可通行区域的面积计算方法,包括:控制移动机器人按照预设路径对全局工作区域进行遍历,并根据遍历过程中记录的信息构建起全局栅格地图;
其特征在于,还包括:在完成全局工作区域的遍历之后,控制移动机器人在这个全局工作区域内从预设沿边起点开始作沿边行走,同时计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域的面积;
其中,所述可通行区域是采用权利要求1至3任一项所述框定方法框定建立。
5.根据权利要求4所述面积计算方法,其特征在于,所述计算移动机器人的沿边行走路径在全局栅格地图的各个全局坐标轴方向上所框定的可通行区域的面积包括:计算移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积和计算移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积;
其中,全局坐标轴方向包括竖直坐标轴方向和水平坐标轴方向。
6.根据权利要求5所述面积计算方法,其特征在于,所述计算移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积的方法包括:
判断所述全局栅格地图的每一列的地图遍历块中是否存在沿边地图遍历块,是则在对应一列上,统计最下端的沿边地图遍历块至最上端的沿边地图遍历块之间的地图遍历块的数目,记为移动机器人的沿边行走路径在这一列所框定的可通行子区域的面积;其中,移动机器人的沿边行走路径在每一列所框定的可通行子区域包括同一列最下端的沿边地图遍历块和最上端的沿边地图遍历块;
当按照前述步骤判断完所述全局栅格地图的所有列的地图遍历块时,将移动机器人的沿边行走路径在每一列所框定的可通行子区域的面积之和设置为移动机器人的沿边行走路径在全局栅格地图的竖直坐标轴方向上所框定的可通行区域的面积。
7.根据权利要求6所述面积计算方法,其特征在于,所述计算移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积的方法包括:
判断所述全局栅格地图的每一行的地图遍历块中是否存在沿边地图遍历块,是则在对应一行上,统计最左端的沿边地图遍历块至最右端的沿边地图遍历块之间的地图遍历块的数目,记为移动机器人的沿边行走路径在这一行所框定的可通行子区域的面积;其中,移动机器人的沿边行走路径在每一行所框定的可通行子区域包括同一行最左端的所述沿边地图遍历块和最右端的所述沿边地图遍历块;
当按照前述步骤判断完所述全局栅格地图的所有行的地图遍历块时,将移动机器人的沿边行走路径在每一行所框定的可通行子区域的面积之和设置为移动机器人的沿边行走路径在全局栅格地图的水平坐标轴方向上所框定的可通行区域的面积。
8.根据权利要求6所述面积计算方法,其特征在于,在移动机器人按照预设清扫方式对全局工作区域进行清扫遍历之前,还包括:根据所述全局栅格地图的尺寸大小设置所述地图遍历块的边长,进而在所述地图遍历块的边长的基础上,通过计算全局栅格地图的尺寸大小和所述地图遍历块的边长的比值关系确定所述全局栅格地图的各个全局坐标轴方向上的地图遍历块的覆盖数量;然后结合所述地图遍历块的边长及其个数计算所述地图遍历块的映射坐标,将所述地图遍历块布局到所述全局栅格地图的每一行和每一列;
其中,当移动机器人沿边行走入所述地图遍历块的内部时,同时标记地图遍历块为所述沿边地图遍历块,使得所述沿边行走路径由所述沿边地图遍历块组成。
9.一种芯片,内置控制程序,其特征在于,所述控制程序用于控制移动机器人执行权利要求1至3中任一项所述框定方法,然后执行权利要求4所述面积计算方法。
10.一种机器人,其特征在于,该机器人内置权利要求9所述的芯片,用于在自主移动过程中实时建立起可通行区域和计算确定其面积。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010456788.2A CN111638713B (zh) | 2020-05-26 | 2020-05-26 | 可通行区域的框定方法、面积计算方法、芯片及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010456788.2A CN111638713B (zh) | 2020-05-26 | 2020-05-26 | 可通行区域的框定方法、面积计算方法、芯片及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111638713A CN111638713A (zh) | 2020-09-08 |
CN111638713B true CN111638713B (zh) | 2023-06-09 |
Family
ID=72330562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010456788.2A Active CN111638713B (zh) | 2020-05-26 | 2020-05-26 | 可通行区域的框定方法、面积计算方法、芯片及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111638713B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377097B (zh) * | 2021-01-25 | 2023-05-05 | 杭州易享优智能科技有限公司 | 一种用于视障人士导盲的路径规划与避障方法 |
CN113317733B (zh) * | 2021-06-04 | 2023-01-31 | 深圳飞鼠动力科技有限公司 | 一种路径规划方法及清洁机器人 |
CN113589802A (zh) * | 2021-06-25 | 2021-11-02 | 北京旷视科技有限公司 | 栅格地图处理方法、装置、***、电子设备和计算机介质 |
CN113741425B (zh) * | 2021-08-04 | 2023-11-24 | 中山大学 | 一种全覆盖路径规划方法及导航*** |
CN113936208A (zh) * | 2021-09-03 | 2022-01-14 | 深圳云天励飞技术股份有限公司 | 巡逻机器人的异常处理方法及相关设备 |
CN117193277A (zh) * | 2022-05-30 | 2023-12-08 | 珠海一微半导体股份有限公司 | 基于地图区域轮廓的设置方法与机器人沿边结束控制方法 |
CN114872051B (zh) * | 2022-06-02 | 2023-12-26 | 深圳鹏行智能研究有限公司 | 通行地图获取***、方法、机器人及计算机可读存储介质 |
CN116227407B (zh) * | 2022-12-23 | 2023-09-26 | 芯行纪科技有限公司 | 形成物理版图的模块边界的方法及相关设备 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102138769B (zh) * | 2010-01-28 | 2014-12-24 | 深圳先进技术研究院 | 清洁机器人及其清扫方法 |
CN103217926B (zh) * | 2012-01-20 | 2015-08-19 | 苏州宝时得电动工具有限公司 | 自动工作设备及其控制方法 |
CN107340768B (zh) * | 2016-12-29 | 2020-08-28 | 珠海市一微半导体有限公司 | 一种智能机器人的路径规划方法 |
KR20190003124A (ko) * | 2017-06-30 | 2019-01-09 | 엘지전자 주식회사 | 이동 로봇의 동작 방법 |
CN107368079B (zh) * | 2017-08-31 | 2019-09-06 | 珠海市一微半导体有限公司 | 机器人清扫路径的规划方法及芯片 |
CN107837044B (zh) * | 2017-11-17 | 2021-01-08 | 北京奇虎科技有限公司 | 清洁机器人的分区清洁方法、装置及机器人 |
CN108507578B (zh) * | 2018-04-03 | 2021-04-30 | 珠海市一微半导体有限公司 | 一种机器人的导航方法 |
CN108983776B (zh) * | 2018-07-19 | 2021-07-30 | 深圳市欢创科技有限公司 | 一种机器人控制方法及其装置、电子设备 |
CN109528090A (zh) * | 2018-11-24 | 2019-03-29 | 珠海市微半导体有限公司 | 一种机器人的区域遍历方法和芯片以及清洁机器人 |
CN110362079B (zh) * | 2019-07-11 | 2022-07-08 | 珠海一微半导体股份有限公司 | 机器人的遍历控制方法和芯片以及清洁机器人 |
CN110543174A (zh) * | 2019-09-10 | 2019-12-06 | 速感科技(北京)有限公司 | 可通行区域图的建立方法、处理方法、装置和可移动设备 |
CN111152266B (zh) * | 2020-01-09 | 2021-07-30 | 安徽宇润道路保洁服务有限公司 | 一种清洁机器人的控制方法及*** |
-
2020
- 2020-05-26 CN CN202010456788.2A patent/CN111638713B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111638713A (zh) | 2020-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111638713B (zh) | 可通行区域的框定方法、面积计算方法、芯片及机器人 | |
CN111596662B (zh) | 一种沿全局工作区域一圈的判断方法、芯片及视觉机器人 | |
CN109464074B (zh) | 区域划分方法、分区清扫方法及其机器人 | |
CN111580525B (zh) | 沿边行走中返回起点的判断方法、芯片及视觉机器人 | |
CN108507578B (zh) | 一种机器人的导航方法 | |
CN109363585B (zh) | 分区遍历方法、清扫方法及其扫地机器人 | |
CN111830970B (zh) | 一种机器人沿边行走的区域清扫规划方法、芯片及机器人 | |
CN107340768B (zh) | 一种智能机器人的路径规划方法 | |
CN109240312B (zh) | 一种机器人的清扫控制方法和芯片以及清洁机器人 | |
CN110543174A (zh) | 可通行区域图的建立方法、处理方法、装置和可移动设备 | |
CN110286674A (zh) | 移动机器人在工作区域内的角度修正方法及移动机器人 | |
CN111631639B (zh) | 全局栅格地图的地图遍历块建立方法、芯片及移动机器人 | |
CN112137529A (zh) | 一种基于密集障碍物的清扫控制方法 | |
WO2021135813A1 (zh) | 机器人联合建图方法、设备及计算机可读存储介质 | |
CN102138769A (zh) | 清洁机器人及其清扫方法 | |
CN108983776A (zh) | 一种机器人控制方法及其装置、电子设备 | |
Nguyen et al. | A lightweight SLAM algorithm using orthogonal planes for indoor mobile robotics | |
WO2022262743A1 (zh) | 机器人任务执行方法、装置、机器人及存储介质 | |
CN113674351B (zh) | 一种机器人的建图方法及机器人 | |
CN114035572A (zh) | 一种割草机器人的避障巡回方法及*** | |
CN112180924A (zh) | 一种导航至密集障碍物的移动控制方法 | |
CN111857156A (zh) | 一种基于激光的机器人区域划分方法、芯片及机器人 | |
WO2023231757A1 (zh) | 基于地图区域轮廓的设置方法与机器人沿边结束控制方法 | |
CN116339302A (zh) | 一种沿边小区域划分清扫方法及区域合并显示方法 | |
CN111897336B (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 | ||
CB02 | Change of applicant information |
Address after: 519000 2706, No. 3000, Huandao East Road, Hengqin new area, Zhuhai, Guangdong Applicant after: Zhuhai Yiwei Semiconductor Co.,Ltd. Address before: Room 105-514, No.6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province Applicant before: AMICRO SEMICONDUCTOR Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |