CN110419985B - 一种路径生成方法、装置及扫地设备 - Google Patents
一种路径生成方法、装置及扫地设备 Download PDFInfo
- Publication number
- CN110419985B CN110419985B CN201910718059.7A CN201910718059A CN110419985B CN 110419985 B CN110419985 B CN 110419985B CN 201910718059 A CN201910718059 A CN 201910718059A CN 110419985 B CN110419985 B CN 110419985B
- Authority
- CN
- China
- Prior art keywords
- grid
- neighborhood
- sweeping
- column
- weight
- 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
Images
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/24—Floor-sweeping machines, motor-driven
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4011—Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
Landscapes
- Electric Vacuum Cleaner (AREA)
- Navigation (AREA)
Abstract
本申请公开了一种路径生成方法、装置及扫地设备,方法首先在被扫区域的栅格地图中确定扫地设备当前栅格的邻域栅格;然后根据所述当前栅格的列序数c0和行序数r0,从所有邻域栅格中确定未清扫的目标栅格;最后利用当前栅格和目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照逐行或者逐列的方式执行自动清扫。因为未清扫的目标栅格是在当前栅格的邻域栅格中确定的,因此,目标栅格必然位于与当前栅格的邻近位置,从而保证了所生成的扫地路径的连续性。依据该扫地路径,扫地设备能够对被扫区域实行逐行或逐列的清扫,因此不会发生重复清扫的问题,本申请相比于现有技术有效提升了清扫效率。
Description
技术领域
本申请涉及电子信息技术领域,特别是涉及一种路径生成方法、装置及扫地设备。
背景技术
目前已有的自动扫地设备其清扫方式主要可分为两类,一类是随机式清扫,另一类是规划式清扫。由于随机式清扫的方式缺乏规划,进而导致扫地设备容易出现在某些位置反复清扫而另一些位置被漏清扫的问题。规划式清扫的方式在一定程度上提升扫地设备的清扫覆盖率,但是扫地设备依然存在重复清扫的问题,导致清扫效率较低。
发明内容
基于上述问题,本申请提供了一种路径生成方法、装置及扫地设备,以解决扫地设备重复清扫的问题,提升清扫效率。
本申请实施例公开了如下技术方案:
第一方面,本申请提供一种路径生成方法,应用于扫地设备执行自动清扫,所述方法包括:
在被扫区域的栅格地图中确定所述扫地设备当前栅格的邻域栅格;
根据所述当前栅格的列序数c0和行序数r0,从所有所述邻域栅格中确定未清扫的目标栅格;
利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照以下方式执行自动清扫:逐行或者逐列。
可选地,所述在被扫区域的栅格地图中确定所述扫地设备当前栅格的邻域栅格,具体包括:
获得所述当前栅格的列序数c0和行序数r0;
从所述栅格地图中确定出列序数在[c0-1,c0+1]且行序数在[r0-1,r0+1]的栅格作为所述当前栅格的邻域栅格。
可选地,所述根据所述当前栅格的列序数c0和行序数r0,从所有所述邻域栅格中确定未清扫的目标栅格,具体包括:
根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重;
根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重;
根据所述邻域栅格的一级权重和二级权重计算得到所述邻域栅格的总权重;
比较所述邻域栅格的总权重,将总权重最大的邻域栅格确定为所述目标栅格。
可选地,所述根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重,具体包括:
将所述邻域栅格的列序数或行序数的倒数作为所述邻域栅格的一级权重。
可选地,所述根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重,具体包括:
确定所述扫地设备的初始移动方向;
根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型;
根据所述邻域栅格的类型得到所述邻域栅格的二级权重。
可选地,所述根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型,具体包括:
根据所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,得到所述邻域栅格相对所述当前栅格的邻域栅格方向;
根据所述邻域栅格相对所述当前栅格的邻域栅格方向,以及所述初始移动方向,得到所述邻域栅格方向与所述初始移动方向的夹角;
如果所述夹角为0度或180度,则确定所述邻域栅格为第一类栅格;
如果所述夹角为90度,则确定所述邻域栅格为第二类栅格;
如果所述夹角为45度,则确定所述邻域栅格为第三类栅格;
如果所述夹角为135度,则确定所述邻域栅格为第四类栅格。
可选地,所述根据所述邻域栅格的类型得到所述邻域栅格的二级权重,具体为利用以下公式得到所述邻域栅格的二级权重:
其中,所述k2为所述邻域栅格的二级权重;所述α为与所述栅格地图的栅格总数成负相关的系数;Δθ为所述邻域栅格方向与所述初始移动方向的夹角。
可选地,所述当前栅格的所有所述邻域栅格中,所述第一类栅格的总权重大于所述第二类栅格的总权重;所述第二类栅格的总权重大于所述第三类栅格的总权重;所述第三类栅格的总权重大于所述第四类栅格的总权重。
可选地,所述利用所述邻域栅格的一级权重和二级权重得到所述邻域栅格的总权重,具体包括:
将所述邻域栅格的一级权重与二级权重之和作为所述邻域栅格的总权重。
可选地,在所述从所有所述邻域栅格中确定目标栅格之前,所述方法还包括:
过滤所述邻域栅格中的已清扫栅格。
可选地,所述方法还包括:
如果所述目标栅格的行序数为r0+1且所述r0=1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的行序数为1的所有栅格添加已清扫标识;如果所述r0>1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识;
或者,如果所述目标栅格的列序数为c0+1且所述c0=1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的列序数为1的所有栅格添加已清扫标识;如果所述c0>1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。
第二方面,本申请提供一种路径生成装置,应用于扫地设备执行自动清扫,所述装置包括:
邻域栅格确定模块,用于在被扫区域的栅格地图中确定所述扫地设备当前栅格的邻域栅格;
目标栅格确定模块,用于根据所述当前栅格的列序数c0和行序数r0,从所有所述邻域栅格中确定未清扫的目标栅格;
扫地路径生成模块,用于利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照以下方式执行自动清扫:逐行或者逐列。
可选地,所述邻域栅格确定模块,具体包括:
栅格参数获取单元,用于获得所述当前栅格的列序数c0和行序数r0;
邻域栅格确定单元,用于从所述栅格地图中确定出列序数在[c0-1,c0+1]且行序数在[r0-1,r0+1]的栅格作为所述当前栅格的邻域栅格。
可选地,所述目标栅格确定模块,具体包括:
一级权重获取单元,用于根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重;
二级权重获取单元,用于根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重;
总权重获取单元,根据所述邻域栅格的一级权重和二级权重计算得到所述邻域栅格的总权重;
目标栅格确定单元,用于比较所述邻域栅格的总权重,将总权重最大的邻域栅格确定为所述目标栅格。
可选地,所述一级权重获取单元,具体包括:
权重第一获取子单元,将所述邻域栅格的列序数或行序数的倒数作为所述邻域栅格的一级权重。
可选地,所述二级权重获取单元,具体包括:
初始移动方向确定子单元,用于确定所述扫地设备的初始移动方向;
栅格类型确定子单元,用于根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型;
权重第二获取子单元,用于根据所述邻域栅格的类型得到所述邻域栅格的二级权重。
可选地,所述栅格类型确定子单元,具体用于:
根据所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,得到所述邻域栅格相对所述当前栅格的邻域栅格方向;
根据所述邻域栅格相对所述当前栅格的邻域栅格方向,以及所述初始移动方向,得到所述邻域栅格方向与所述初始移动方向的夹角;
如果所述夹角为0度或180度,则确定所述邻域栅格为第一类栅格;
如果所述夹角为90度,则确定所述邻域栅格为第二类栅格;
如果所述夹角为45度,则确定所述邻域栅格为第三类栅格;
如果所述夹角为135度,则确定所述邻域栅格为第四类栅格。
可选地,所述权重第二获取子单元具体利用以下公式得到所述邻域栅格的二级权重:
其中,所述k2为所述邻域栅格的二级权重;所述α为与所述栅格地图的栅格总数成负相关的系数;Δθ为所述邻域栅格方向与所述初始移动方向的夹角。
可选地,所述当前栅格的所有所述邻域栅格中,所述第一类栅格的总权重大于所述第二类栅格的总权重;所述第二类栅格的总权重大于所述第三类栅格的总权重;所述第三类栅格的总权重大于所述第四类栅格的总权重。
可选地,所述总权重获取单元,具体包括:
权重第三获取子单元,用于将所述邻域栅格的一级权重与二级权重之和作为所述邻域栅格的总权重。
可选地,装置还包括:
栅格过滤模块,用于过滤所述邻域栅格中的已清扫栅格。
可选地,装置还包括:
标识添加模块,用于当所述目标栅格的行序数为r0+1且所述r0=1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的行序数为1的所有栅格添加已清扫标识;还用于当所述r0>1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识;
或者,所述标识添加模块,用于当所述目标栅格的列序数为c0+1且所述c0=1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的列序数为1的所有栅格添加已清扫标识;还用于当所述c0>1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。
第三方面,本申请提供一种扫地设备,包括:控制器、处理器、滚轮及驱动电机;
其中,所述处理器,用于运行计算机程序,当所述程序运行时执行如前述第一方面提供的路径生成方法,并将生成的扫地路径发送给所述控制器;
所述控制器,用于根据所述扫地路径生成控制信号,并将所述控制信号发送给所述驱动电机;
所述驱动电机,用于根据所述控制信号驱动所述滚轮动作,以使所述扫地设备运动至所述扫地路径规划的位置。
相较于现有技术,本申请具有以下有益效果:
本申请提供的路径生成方法,首先,在被扫区域的栅格地图中确定扫地设备当前栅格的邻域栅格;然后,根据所述当前栅格的列序数c0和行序数r0,从所有所述邻域栅格中确定未清扫的目标栅格;最后,利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照逐行或者逐列的方式执行自动清扫。因为未清扫的目标栅格是在当前栅格的邻域栅格中确定的,因此,目标栅格必然位于与当前栅格的邻近位置,从而保证了所生成的扫地路径的连续性。依据该扫地路径,扫地设备能够对被扫区域实行逐行或逐列的清扫,因此不会发生重复清扫的问题,本申请相比于现有技术有效提升了清扫效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种路径生成方法的流程图;
图2为本申请实施例提供的一种栅格地图示意图;
图3为本申请实施例提供的另一种路径生成方法的流程图;
图4为本申请实施例提供的一种获得邻域栅格的二级权重的流程图;
图5为本申请实施例提供的一种获得邻域栅格方向的示意图;
图6为本申请实施例提供的一种为栅格添加已清扫标识的示意图;
图7为本申请实施例提供的一种路径生成装置的结构示意图;
图8为本申请实施例提供的一种扫地设备的结构示意图;
图9为本申请实施例提供的另一种扫地设备的结构示意图。
具体实施方式
正如前文描述,目前的扫地设备容易出现重复清扫的问题,对于扫地设备,采用现有方式规划的路径执行清扫也依然无法避免上述问题,因此,扫地设备的清扫效率仍有待提升。为解决此问题,发明人经过研究,提供一种路径生成方法、装置及扫地设备。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
方法实施例一
参见图1,该图为本申请实施例提供的一种路径生成方法的流程图。
如图1所示,本实施例提供的路径生成方法,包括:
步骤101:在被扫区域的栅格地图中确定扫地设备当前栅格的邻域栅格。
本实施例中,作为一种可能的实现方式,栅格地图是基于被扫区域采用同步定位与地图构建(Simultaneous Localization and Mapping,SLAM)技术构建得到的。例如,被扫区域是一块16m×5m的矩形区域,则被扫区域的栅格地图是基于该矩形区域构建的,栅格地图的长宽比与被扫区域的长宽比一致。实际应用中,被扫区域可以是任意需要清扫的区域,此处对被扫区域的形状和面积不进行限定。
实际应用中,栅格地图包括多个栅格,每个栅格各自唯一地对应被扫区域之中的一块区域。作为示例,栅格地图中的各个栅格为尺寸相等的正方形。在具体实现时,栅格的尺寸可以根据扫地设备的尺寸确定,将栅格的尺寸设定为小于扫地设备的尺寸即可。作为一示例,俯视形状为圆形的扫地设备,将栅格尺寸设定为小于扫地设备的直径,例如扫地设备的直径为18cm,单个栅格的尺寸为15cm×15cm。作为另一示例,俯视形状为正方形的扫地设备,将栅格尺寸设定为小于扫地设备的长或宽,例如扫地设备的边长为16cm,单个栅格的尺寸为15cm×15cm。
栅格地图中各个栅格规整地排布。参见图2,该图为本申请实施例提供的一种栅格地图示意图。通过图2可以看到栅格地图中各个栅格以行和列的方式规整地排布。
实际应用中,扫地设备可能同时覆盖在多个栅格对应的区域之上,可以将扫地设备的重心位置所处的栅格作为扫地设备的当前栅格。在栅格地图中,每个栅格都不是孤立存在的,每个栅格都具有相邻的栅格。根据栅格在栅格地图中的位置,与栅格相邻的栅格的数量可能不同。例如,对于图2中的栅格A,与其相邻的栅格有3个;对于图2中的栅格B,与其相邻的栅格有5个;对于图2中的栅格C,与其相邻的栅格有8个。本实施例中将与某一栅格具有公共边或公共顶点的栅格称为该栅格的邻域栅格。
在当前栅格已经确定的前提下,即可便捷地从栅格地图确定当前栅格的邻域栅格。
步骤102:根据当前栅格的列序数c0和行序数r0,从所有所述邻域栅格中确定未清扫的目标栅格。
参见图2,由于本实施例中栅格地图的栅格是以行和列的方式规整地排布,因此,可以对栅格地图中的栅格配以行序数和列序数。例如图2中,栅格A的行序数是1,列序数是1;栅格B的行序数是1,列序数是6;栅格C的行序数是6,列序数是4。
在本实施例中,扫地设备当前栅格的列序数c0和行序数r0是已知的。进而,基于当前栅格与邻域栅格的位置关系,通过执行步骤101也可相应得到当前栅格的各个邻域栅格的列序数和行序数。
为保证扫地设备根据生成的扫地路径能够执行不重复的清扫,本实施例方法中,要求扫地设备采用逐行或者逐列的方式执行清扫。当扫地设备弓形逐行清扫或弓形逐列清扫时,扫地设备不会进行多余的移动量,同时还能实现区域全覆盖和路径全覆盖,从而满足要求。也就是说,对于本申请是存在一个逐行清扫或逐列清扫的需求的。本步骤在确定目标栅格时,具体可以结合以上清扫需求进行确定。
实际应用中,如果当前栅格是扫地设备在栅格地图的首个执行清扫的栅格,则当前栅格的所有邻域栅格都是未清扫的栅格,按照逐行或逐列清扫的需求,可以从当前栅格的同行或同列的邻域栅格中确定出一个未清扫的栅格作为目标栅格。
如果当前栅格是扫地设备在栅格地图的非首个执行清扫的栅格,则当前栅格的所有邻域栅格中必然包含已清扫的栅格(例如扫地设备前一个清扫的栅格),除此以外邻域栅格中还包含未清扫的栅格。同样,按照逐行或逐列清扫的需求,可以从当前栅格的同行或同列的邻域栅格中确定出一个未清扫的栅格作为目标栅格。
前面已经得到每个邻域栅格的列序数和行序数,因此,目标栅格的列序数和行序数也是已知的。目标栅格即是继当前栅格之后扫地设备需要执行清扫的下一个栅格。
步骤103:利用当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照逐行或逐列方式执行自动清扫。
在实际应用中,根据栅格地图中的行序数和列序数能够唯一确定出一个栅格。可以根据当前栅格的中心位置和目标栅格的中心位置生成从当前栅格的中心位置指向目标栅格的中心位置的扫地路径。由于栅格的中心位置对应于被扫区域的真实地理位置,因此该扫地路径能够映射到真实地理环境中,即被扫区域中。
下面提供本步骤生成扫地路径的两种实现方式。
第一种实现方式,扫地设备每到达一个当前栅格,即开始按照本实施例提供的方法生成从该当前栅格到目标栅格的短途扫地路径。当扫地设备按照该短途扫地路径移动到目标栅格后,将该目标栅格重新作为当前栅格,并生成该当前栅格到下一目标栅格的短途扫地路径。
第二种实现方式,扫地设备在栅格地图的首个执行清扫的栅格时,将该栅格作为扫地设备当前栅格,并陆续预测到抵达每个目标栅格后对应的下一目标栅格。本步骤根据最初的当前栅格和陆续预测到的目标栅格,生成依次指向的长途扫地路径,长途扫地路径的终点为预测到的栅格地图中最后一个未清扫的栅格。扫地设备利用该长途扫地路径移动并执行自动清扫时,无需在清扫过程中陆续生成扫地路径。根据该长途扫地路径清扫完毕后,实现被扫区域的区域全覆盖和路径全覆盖。
以上即为本申请实施例提供的路径生成方法,该方法首先在被扫区域的栅格地图中确定扫地设备当前栅格的邻域栅格;然后根据所述当前栅格的列序数c0和行序数r0,从所有所述邻域栅格中确定未清扫的目标栅格;最后利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照逐行或者逐列的方式执行自动清扫。因为未清扫的目标栅格是在当前栅格的邻域栅格中确定的,因此,目标栅格必然位于与当前栅格的邻近位置,从而保证了所生成的扫地路径的连续性。依据该扫地路径,扫地设备能够对被扫区域实行逐行或逐列的清扫,因此不会发生重复清扫的问题,本实施例方法相比于现有技术有效提升了清扫效率。
方法实施例二
参见图3,该图为本申请实施例提供的另一种路径生成方法的流程图。
如图3所示,该实施例提供的路径生成方法,包括:
步骤301:获得扫地设备当前栅格的列序数c0和行序数r0。
为便于理解,以图2所示的方式对栅格中的行和列进行排序。即栅格地图从左到右,列序数逐步递增;栅格地图从上到下,行序数逐步递增。
本实施例中,以c0表示当前栅格的列序数,以r0表示当前栅格的行序数。基于扫地设备的异动情况,c0以及r0可能会有不同的取值,因此本步骤对于c0和r0的具体数值不进行限定。
步骤302:从栅格地图中确定出列序数在[c0-1,c0+1]且行序数在[r0-1,r0+1]的栅格作为所述当前栅格的邻域栅格。
结合图2中作为示例的栅格A、栅格B和栅格C及其各自的邻域栅格,可以发现邻域栅格的行序数在当前栅格的上一行至下一行区间内,邻域栅格在当前栅格的前一列至后一列区间内。
因此,在c0和r0已知的前提下,抽选栅格地图中列序数在[c0-1,c0+1]且行序数在[r0-1,r0+1]的栅格,再从抽选出的栅格中排除当前栅格,剩余的栅格即为当前栅格的邻域栅格。
步骤303:根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重。
作为一种可能的实现方式,如果对于扫地设备是逐列清扫的需求,则本实施例中,可以将邻域栅格的列序数的倒数作为该邻域栅格的一级权重;如果对于扫地设备是逐行清扫的需求,则本实施例中,可以将邻域栅格的行序数的倒数作为该邻域栅格的一级权重。
以逐列清扫的方式为示例。如果邻域栅格的列序数是1,则该邻域栅格的一级权重是1;如果邻域栅格的列序数是2,则该邻域栅格的一级权重是1/2;如果邻域栅格的列序数是3,则该邻域栅格的一级权重是1/3,…,如果邻域栅格的列序数是n,则该邻域栅格的一级权重是1/n。可见,列序数越大的邻域栅格,其一级权重越小。列序数相同的邻域栅格的一级权重相等。
步骤304:根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重。
参见图4,该图为本申请提供的一种获得邻域栅格的二级权重的流程图。如图4所示,步骤304具体可按照以下步骤3041-3043执行。
步骤3041:确定所述扫地设备的初始移动方向。
如果对于扫地设备是逐列清扫的需求,则扫地设备的初始移动方向可能是行序数递增方向或者行序数递减方向;如果对于扫地设备是逐行清扫的需求,则扫地设备的初始移动方向可能是列序数递增方向或者列序数递减方向。
为便于理解,在结合步骤3042-3043描述获得邻域栅格的二级权重的过程中,以逐列清扫的方式作为示例,并默认在整个栅格地图中,对于任一当前栅格,扫地设备的初始移动方向为向上移动,即扫地设备的初始移动方向为行序数递减方向。
步骤3042:根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型。
首先,根据所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,得到所述邻域栅格相对所述当前栅格的邻域栅格方向;其后,根据所述邻域栅格相对所述当前栅格的邻域栅格方向,以及所述初始移动方向,得到所述邻域栅格方向与所述初始移动方向的夹角。
参见图5,该图所示为一种获得邻域栅格方向的示意图。图中栅格G表示当前栅格,栅格G0~G7分别为栅格G的8个邻域栅格。根据栅格G0~G7的行序数和列序数,以及栅格G的行序数和列序数,能够得到每个邻域栅格相对于当前栅格的方向(简称邻域栅格方向),如图中由栅格G指向各个邻域栅格的箭头所示。
结合图5可以看出,邻域栅格方向与扫地设备的初始移动方向的夹角取值为以下中的一种:
0度、45度、90度、135度或者180度。此处,夹角不区分顺时针和逆时针,以绝对值为准。
在确定邻域栅格的类型时,主要分为以下几种情况:
(1)如果所述夹角为0度或180度,则确定所述邻域栅格为第一类栅格(用W1表示),例如图5中的G2和G6。
(2)如果所述夹角为90度,则确定所述邻域栅格为第二类栅格(用W2表示),例如图5中的G0和G4。
(3)如果所述夹角为45度,则确定所述邻域栅格为第三类栅格(用W3表示),例如图5中的G1和G3。
(4)如果所述夹角为135度,则确定所述邻域栅格为第四类栅格(用W4表示),例如图5中的G2和G6。
参见下表1,该表展示邻域栅格、邻域栅格方向与初始移动方向的夹角以及邻域栅格类型的对应关系。
表1 邻域栅格分类列表
邻域栅格 | G0 | G1 | G2 | G3 | G4 | G5 | G6 | G7 |
夹角 | 90度 | 45度 | 0度 | 45度 | 90度 | 135度 | 180度 | 135度 |
类型 | W2 | W3 | W1 | W3 | W2 | W4 | W1 | W4 |
步骤3043:根据所述邻域栅格的类型得到所述邻域栅格的二级权重。
本步骤可以利用以下公式得到邻域栅格的二级权重:
公式(1)中,所述k2为所述邻域栅格的二级权重;所述α为与所述栅格地图的栅格总数成负相关的系数;Δθ为所述邻域栅格方向与所述初始移动方向的夹角。
也就是说栅格地图的栅格总数越多,系数α的取值可以越小;栅格地图的栅格总数越少,系数α的取值可以越大。作为示例,被扫区域的面积是100平方米,对应的栅格地图上栅格总数为1000左右,此时可以将系数α设置为0.0001。
基于公式(1),也可知步骤3043亦是相当于根据邻域栅格方向与初始移动方向的夹角,得到邻域栅格的二级权重。
步骤305:根据所述邻域栅格的一级权重和二级权重计算得到所述邻域栅格的总权重。
作为一种可能的实现方式,可以将某个邻域栅格的一级权重与二级权重相加,得到邻域栅格的总权重。如公式(2):
k=k1+k2; 公式(2)
公式(2)中,k为所述邻域栅格的总权重,k1为所述邻域栅格的一级权重,k2为所述邻域栅格的二级权重。k2的计算公式可参照公式(1)。如果对于扫地设备是逐列清扫的需求,则k1为邻域栅格的列序数的倒数;如果对于扫地设备是逐行清扫的需求,则k1为邻域栅格的行序数的倒数。
步骤306:比较所述邻域栅格的总权重,将总权重最大的邻域栅格确定为所述目标栅格。
需要说明的是,公式(1)中系数α的作用还在于调节总权重中第一权重与第二权重的大小。通过设置系数α要求保证对于每一个邻域栅格,其第一权重是大于第二权重的。从而保证本步骤确定目标栅格时,优先选择与当前栅格同列的未清扫的邻域栅格作为目标栅格,进而便于本方法后续生成使目标栅格逐列清扫的扫地路径;或者优先选择与当前栅格同行的未清扫的邻域栅格作为目标栅格,进而便于本方法后续生成使目标栅格逐行清扫的扫地路径。
对于上文确定的各类型的邻域栅格,要求当前栅格的所有所述邻域栅格中,第一类栅格的总权重大于第二类栅格的总权重;第二类栅格的总权重大于第三类栅格的总权重;第三类栅格的总权重大于第四类栅格的总权重。因此,在本步骤确定目标栅格时,优先级从第一类栅格、第二类栅格、第三类栅格至第四类栅格依次下降。
在本实施例中,选取目标栅格具体是从当前栅格的所有邻域栅格中选择总权重最大的栅格作为目标栅格。根据以上对各类型栅格的总权重的大小关系要求,可知:
对于逐列清扫方式,优先从邻域栅格中选择与当前栅格同列的未清扫栅格(即未清扫的第一类栅格)作为目标栅格,如果不存在与当前栅格同列的未清扫栅格,则优先选择与当前栅格同行的未清扫栅格(即未清扫的第二类栅格)。如果邻域栅格中不存在未清扫的第一类栅格和第二类栅格,则选择未清扫的第三类栅格或第四类栅格,其中第三类栅格的优先级高于第四类栅格的优先级。如图5中示意,栅格G的各个邻域栅格G0-G7中,已清扫的栅格有:G3、G4、G5和G6,未清扫的栅格有:G0、G1、G2和G7。G0、G1、G2和G7的类型分别为:第二类栅格、第三类栅格、第一类栅格和第四类栅格。由于第一类栅格的总权重最大,因此,将G2作为目标栅格。
对于逐行清扫方式,优先从邻域栅格中选择与当前栅格同行的未清扫栅格(即未清扫的第一类栅格)作为目标栅格,如果不存在与当前栅格同行的未清扫栅格,则优先选择与当前栅格同列的未清扫栅格(即未清扫的第二类栅格)。如果邻域栅格中不存在未清扫的第一类栅格和第二类栅格,则选择未清扫的第三类栅格或第四类栅格,其中第三类栅格的优先级高于第四类栅格的优先级。
步骤307:利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照逐行或逐列的方式执行自动清扫。
本实施例中步骤307的实现方式与前述实施例中步骤103的实现方式基本相同,因此步骤307的相关描述可参照前述实施例,此处不再赘述。
本实施例提供的路径生成方法通过为每个邻域栅格配置一级权重和二级权重,能够得到每个邻域栅格的总权重。并且通过比较各个邻域栅格的总权重,将总权重最大的邻域栅格作为目标栅格。由于每个邻域栅格一级权重与该邻域栅格的列序数或行序数相关,列序数越大的一级权重越小,或者行序数越大的一级权重越小,并且一级权重要大于二级权重,因此在确定目标栅格时会优先选择当前栅格的同列或者同行的栅格,从而保证生成的扫地路径能够保证扫地设备逐列或者逐行地执行清扫。进而,生成的扫地路径能够实现被扫区域的路径全覆盖,扫地设备能够高效清扫被扫区域中未遍历的区域,实现区域全覆盖清扫。
在实际应用中,为了提升下一次路径生成效率,可以基于目标栅格的行序数和列序数以及当前栅格的行序数和列序数,在扫地设备按照本次生成的扫地路径实行清扫之后,对栅格添加已清扫标识。下面针对不同情况进行详细描述。
(1)对于逐列清扫的方式:
如果所述目标栅格的列序数为c0+1且所述c0=1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的列序数为1的所有栅格添加已清扫标识。
如果当前栅格的列序数c0>1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。
下面结合图6,以逐列清扫的方式为示例性清扫方式,对添加已清扫标识的方式进行描述。图6为本申请实施例提供的一种为栅格添加已清扫标识的示意图。在图6中,栅格L是扫地设备所在的初始栅格,该栅格并非在第1列。为执行后续的清扫,需要将扫地设备从初始栅格逐渐移动到第1列的栅格(简称栅格P,栅格P的列序数为1)。如果栅格P的行序数不为最大行序数或最小行序数,如图6中所示,则需要将扫地设备从栅格P移动到同列的最大行序数栅格Prmax或最小行序数栅格Prmin。
如果扫地设备移动到栅格Prmax,即开始以行序数递减的方向作为初始移动方向生成扫地路径并执行清扫。
如果扫地设备移动到栅格Prmin,即开始以行序数递增的方向作为初始移动方向生成扫地路径并执行清扫。如果所述目标栅格的列序数为c0+1且所述c0=1,表示扫地设备即将从第1列移动到第2列,实现首次跨列移动的跳变,如果在此之前(即扫地设备在第1列上下移动时)每次移动后为栅格添加已清扫标记,容易导致第1列某些栅格被遗漏清扫。为此,将第1列作为清扫初始化的一列,仅当扫地设备即将从第1列移动到第2列,为所述栅格地图中的列序数为1的所有栅格添加已清扫标识。
如果当前栅格的列序数c0>1,表示扫地设备已经完成首次跨列移动的跳变,第一列已经全部清扫完毕,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。例如图5中,当扫地设备从栅格G6移动到G,则为栅格G6添加已清扫标识;当扫地设备从栅格G移动到栅格G2,则为栅格G添加已清扫标识。
(2)对于逐行清扫的方式:
如果所述目标栅格的行序数为r0+1且当前栅格的行序数r0=1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的行序数为1的所有栅格添加已清扫标识。
如果当前栅格的行序数r0>1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。
逐行清扫方式下添加已清扫标识的理由与逐列清扫方式下添加已清扫标识的理由相似。
在后续每一次生成扫地路径时,为节省生成路径的效率,可以通过在确定目标栅格的过程中识别各个邻域栅格是否具备已清扫标识,从而过滤所述邻域栅格中的已清扫栅格,提升目标栅格的确定速率。例如,图5中深色栅格表示添加有已清扫标识的栅格,白色栅格表示未添加已清扫标识的栅格,由于栅格G3、G4、G5和G6均带有已清扫标识,因此直接将栅格G3、G4、G5和G6过滤,从栅格G0、G1、G2和G7中确定一个目标栅格。
需要说明的是,在本申请实施例中,为描述简洁多以逐列清扫作为示例性清扫方式进行说明。在具体实现时,逐行清扫方式下生成扫地路径的过程与逐列清扫方式下生成扫地路径的过程相似,因此可参照图2、图5和图6进行行列置换理解。
基于前述实施例提供的路径生成方法,相应地,本申请还提供一种路径生成装置。下面结合实施例和附图对该装置的具体实现进行说明。
装置实施例
参见图7,该图为本申请实施例提供的一种路径生成装置的结构示意图。该装置应用于扫地设备执行自动清扫。
如图7所示,本实施例提供的路径生成装置,包括:
邻域栅格确定模块701,用于在被扫区域的栅格地图中确定所述扫地设备当前栅格的邻域栅格;
目标栅格确定模块702,用于根据所述当前栅格的列序数c0和行序数r0,从所有所述邻域栅格中确定未清扫的目标栅格;
扫地路径生成模块703,用于利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照以下方式执行自动清扫:逐行或者逐列。
因为未清扫的目标栅格是在当前栅格的邻域栅格中确定的,因此,目标栅格必然位于与当前栅格的邻近位置,从而保证了所生成的扫地路径的连续性。依据该扫地路径,扫地设备能够对被扫区域实行逐行或逐列的清扫,因此不会发生重复清扫的问题,本实施例装置相比于现有技术有效提升了清扫效率。
可选地,所述邻域栅格确定模块701,具体包括:
栅格参数获取单元,用于获得所述当前栅格的列序数c0和行序数r0;
邻域栅格确定单元,用于从所述栅格地图中确定出列序数在[c0-1,c0+1]且行序数在[r0-1,r0+1]的栅格作为所述当前栅格的邻域栅格。
利用栅格的列序数和行序数确定邻域栅格能够有效提升邻域栅格的确定速度。
可选地,所述目标栅格确定模块702,具体包括:
一级权重获取单元,用于根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重;
二级权重获取单元,用于根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重;
总权重获取单元,根据所述邻域栅格的一级权重和二级权重计算得到所述邻域栅格的总权重;
目标栅格确定单元,用于比较所述邻域栅格的总权重,将总权重最大的邻域栅格确定为所述目标栅格。
可选地,所述一级权重获取单元,具体包括:
权重第一获取子单元,将所述邻域栅格的列序数或行序数的倒数作为所述邻域栅格的一级权重。
将所述邻域栅格的列序数或行序数的倒数作为所述邻域栅格的一级权重,保证扫地设备执行逐列或逐行清扫的有序性。
可选地,所述二级权重获取单元,具体包括:
初始移动方向确定子单元,用于确定所述扫地设备的初始移动方向;
栅格类型确定子单元,用于根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型;
权重第二获取子单元,用于根据所述邻域栅格的类型得到所述邻域栅格的二级权重。
可选地,所述栅格类型确定子单元,具体用于:
根据所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,得到所述邻域栅格相对所述当前栅格的邻域栅格方向;
根据所述邻域栅格相对所述当前栅格的邻域栅格方向,以及所述初始移动方向,得到所述邻域栅格方向与所述初始移动方向的夹角;
如果所述夹角为0度或180度,则确定所述邻域栅格为第一类栅格;
如果所述夹角为90度,则确定所述邻域栅格为第二类栅格;
如果所述夹角为45度,则确定所述邻域栅格为第三类栅格;
如果所述夹角为135度,则确定所述邻域栅格为第四类栅格。
可选地,所述权重第二获取子单元具体利用以下公式得到所述邻域栅格的二级权重:
其中,所述k2为所述邻域栅格的二级权重;所述α为与所述栅格地图的栅格总数成负相关的系数;Δθ为所述邻域栅格方向与所述初始移动方向的夹角。
可选地,所述当前栅格的所有所述邻域栅格中,所述第一类栅格的总权重大于所述第二类栅格的总权重;所述第二类栅格的总权重大于所述第三类栅格的总权重;所述第三类栅格的总权重大于所述第四类栅格的总权重。
可选地,所述总权重获取单元,具体包括:
权重第三获取子单元,用于将所述邻域栅格的一级权重与二级权重之和作为所述邻域栅格的总权重。
本实施例提供的路径生成装置通过为每个邻域栅格配置一级权重和二级权重,能够得到每个邻域栅格的总权重。并且通过比较各个邻域栅格的总权重,将总权重最大的邻域栅格作为目标栅格。由于每个邻域栅格一级权重与该邻域栅格的列序数或行序数相关,列序数越大的一级权重越小,或者行序数越大的一级权重越小,并且一级权重要大于二级权重,因此在确定目标栅格时会按照实际对于清扫方式的需求(逐列或逐行)优先选择当前栅格的同列或者同行的栅格,从而保证生成的扫地路径能够保证扫地设备逐列或者逐行地执行清扫。进而,生成的扫地路径能够实现被扫区域的路径全覆盖,扫地设备能够高效清扫被扫区域中未遍历的区域,实现区域全覆盖清扫。
在实际应用中,为了提升下一次路径生成效率,可以基于目标栅格的行序数和列序数以及当前栅格的行序数和列序数,在扫地设备按照本次生成的扫地路径实行清扫之后,对栅格添加已清扫标识。因此可选地,装置还包括:
标识添加模块,用于当所述目标栅格的行序数为r0+1且所述r0=1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的行序数为1的所有栅格添加已清扫标识;还用于当所述r0>1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识;
或者,所述标识添加模块,用于当所述目标栅格的列序数为c0+1且所述c0=1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的列序数为1的所有栅格添加已清扫标识;还用于当所述c0>1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。
可选地,装置还包括:
栅格过滤模块,用于过滤所述邻域栅格中的已清扫栅格。
通过在确定目标栅格的过程中识别各个邻域栅格是否具备已清扫标识,从而过滤所述邻域栅格中的已清扫栅格,提升目标栅格的确定速率。进而提升路径生成效率。
基于前述实施例提供的路径生成方法和路径生成装置,相应地,本申请还提供一种扫地设备。下面结合实施例和附图对该扫地设备的具体实现进行描述。
设备实施例
参见图8,该图为本申请实施例提供的一种扫地设备的结构示意图。
通过图8可以看到,该扫地设备包括:控制器801、处理器802、滚轮803及驱动电机804。
其中,处理器802,用于运行计算机程序,当所述程序运行时执行前述方法实施例提供的路径生成方法,并将生成的扫地路径发送给所述控制器;
所述控制器801,用于根据所述扫地路径生成控制信号,并将所述控制信号发送给所述驱动电机;
所述驱动电机804,用于根据所述控制信号驱动所述滚轮803动作,以使所述扫地设备运动至所述扫地路径规划的位置。
在实际应用中,可选的控制器的型号有多种,例如可以是型号为GD32控制器等。另外,可选的驱动电机的型号也有多种,例如RP360-ST等。此处对扫地设备中控制器801及驱动电机804的型号不进行限定。
由于基于前述方法实施例所提供的路径生成方法能够生成不重复地逐行或者逐列清扫的路径,因此,大大提升了扫地设备的清扫效率。
参见图9,该图为另一种扫地设备结构示意图。如图9所示,扫地设备还可以包括存储器805,用于存储前述的计算机程序。
另外,扫地设备还可以包括摄像装置806和定位装置807,从而能够向处理器802提供丰富的图像和位置信息,以便于处理器802执行相应地程序,通过SLAM方法构建出被扫区域的栅格地图。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及***实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及***实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元提示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (21)
1.一种路径生成方法,其特征在于,应用于扫地设备执行自动清扫,所述方法包括:
在被扫区域的栅格地图中确定所述扫地设备当前栅格的邻域栅格,所述邻域栅格为与所述当前栅格具有公共边或公共顶点的栅格;
根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重;
根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重;
根据所述邻域栅格的一级权重和二级权重计算得到所述邻域栅格的总权重;
比较所述邻域栅格的总权重,将总权重最大的邻域栅格确定为目标栅格;
利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照以下方式执行自动清扫:逐行或者逐列。
2.根据权利要求1所述的方法,其特征在于,所述在被扫区域的栅格地图中确定所述扫地设备当前栅格的邻域栅格,具体包括:
获得所述当前栅格的列序数c0和行序数r0;
从所述栅格地图中确定出列序数在[c0-1,c0+1]且行序数在[r0-1,r0+1]的栅格作为所述当前栅格的邻域栅格。
3.根据权利要求1所述的方法,其特征在于,所述根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重,具体包括:
将所述邻域栅格的列序数或行序数的倒数作为所述邻域栅格的一级权重。
4.根据权利要求1所述的方法,其特征在于,所述根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重,具体包括:
确定所述扫地设备的初始移动方向;
根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型;
根据所述邻域栅格的类型得到所述邻域栅格的二级权重。
5.根据权利要求4所述的方法,其特征在于,所述根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型,具体包括:
根据所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,得到所述邻域栅格相对所述当前栅格的邻域栅格方向;
根据所述邻域栅格相对所述当前栅格的邻域栅格方向,以及所述初始移动方向,得到所述邻域栅格方向与所述初始移动方向的夹角;
如果所述夹角为0度或180度,则确定所述邻域栅格为第一类栅格;
如果所述夹角为90度,则确定所述邻域栅格为第二类栅格;
如果所述夹角为45度,则确定所述邻域栅格为第三类栅格;
如果所述夹角为135度,则确定所述邻域栅格为第四类栅格。
7.根据权利要求5或6所述的方法,其特征在于,所述当前栅格的所有所述邻域栅格中,所述第一类栅格的总权重大于所述第二类栅格的总权重;所述第二类栅格的总权重大于所述第三类栅格的总权重;所述第三类栅格的总权重大于所述第四类栅格的总权重。
8.根据权利要求4-6任一项所述的方法,其特征在于,所述利用所述邻域栅格的一级权重和二级权重得到所述邻域栅格的总权重,具体包括:
将所述邻域栅格的一级权重与二级权重之和作为所述邻域栅格的总权重。
9.根据权利要求1-6任一项所述的方法,其特征在于,在所述根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重之前,所述方法还包括:
过滤所述邻域栅格中的已清扫栅格。
10.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
如果所述目标栅格的行序数为r0+1且所述r0=1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的行序数为1的所有栅格添加已清扫标识;如果所述r0>1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识;
或者,如果所述目标栅格的列序数为c0+1且所述c0=1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的列序数为1的所有栅格添加已清扫标识;如果所述c0>1,则在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。
11.一种路径生成装置,其特征在于,应用于扫地设备执行自动清扫,所述装置包括:
邻域栅格确定模块,用于在被扫区域的栅格地图中确定所述扫地设备当前栅格的邻域栅格,所述邻域栅格为与所述当前栅格具有公共边或公共顶点的栅格;
一级权重获取单元,用于根据所述邻域栅格的列序数或者行序数获得所述邻域栅格的一级权重;
二级权重获取单元,用于根据所述当前栅格的列序数c0和行序数r0获得所述邻域栅格的二级权重;
总权重获取单元,根据所述邻域栅格的一级权重和二级权重计算得到所述邻域栅格的总权重;
目标栅格确定单元,用于比较所述邻域栅格的总权重,将总权重最大的邻域栅格确定为目标栅格;
扫地路径生成模块,用于利用所述当前栅格和所述目标栅格生成扫地路径,以使所述扫地设备根据所述扫地路径按照以下方式执行自动清扫:逐行或者逐列。
12.根据权利要求11所述的装置,其特征在于,所述邻域栅格确定模块,具体包括:
栅格参数获取单元,用于获得所述当前栅格的列序数c0和行序数r0;
邻域栅格确定单元,用于从所述栅格地图中确定出列序数在[c0-1,c0+1]且行序数在[r0-1,r0+1]的栅格作为所述当前栅格的邻域栅格。
13.根据权利要求11所述的装置,其特征在于,所述一级权重获取单元,具体包括:
权重第一获取子单元,将所述邻域栅格的列序数或行序数的倒数作为所述邻域栅格的一级权重。
14.根据权利要求11所述的装置,其特征在于,所述二级权重获取单元,具体包括:
初始移动方向确定子单元,用于确定所述扫地设备的初始移动方向;
栅格类型确定子单元,用于根据所述初始移动方向、所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,确定所述邻域栅格的类型;
权重第二获取子单元,用于根据所述邻域栅格的类型得到所述邻域栅格的二级权重。
15.根据权利要求14所述的装置,其特征在于,所述栅格类型确定子单元,具体用于:
根据所述当前栅格的列序数c0和行序数r0以及所述邻域栅格的列序数和行序数,得到所述邻域栅格相对所述当前栅格的邻域栅格方向;
根据所述邻域栅格相对所述当前栅格的邻域栅格方向,以及所述初始移动方向,得到所述邻域栅格方向与所述初始移动方向的夹角;
如果所述夹角为0度或180度,则确定所述邻域栅格为第一类栅格;
如果所述夹角为90度,则确定所述邻域栅格为第二类栅格;
如果所述夹角为45度,则确定所述邻域栅格为第三类栅格;
如果所述夹角为135度,则确定所述邻域栅格为第四类栅格。
17.根据权利要求15或16所述的装置,其特征在于,所述当前栅格的所有所述邻域栅格中,所述第一类栅格的总权重大于所述第二类栅格的总权重;所述第二类栅格的总权重大于所述第三类栅格的总权重;所述第三类栅格的总权重大于所述第四类栅格的总权重。
18.根据权利要求15-16任一项所述的装置,其特征在于,所述总权重获取单元,具体包括:
权重第三获取子单元,用于将所述邻域栅格的一级权重与二级权重之和作为所述邻域栅格的总权重。
19.根据权利要求11-16任一项所述的装置,其特征在于,还包括:
栅格过滤模块,用于过滤所述邻域栅格中的已清扫栅格。
20.根据权利要求11-16任一项所述的装置,其特征在于,还包括:
标识添加模块,用于当所述目标栅格的行序数为r0+1且所述r0=1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的行序数为1的所有栅格添加已清扫标识;还用于当所述r0>1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识;
或者,所述标识添加模块,用于当所述目标栅格的列序数为c0+1且所述c0=1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述栅格地图中的列序数为1的所有栅格添加已清扫标识;还用于当所述c0>1时,在所述扫地设备按照所述扫地路径移动到所述目标栅格之后,为所述当前栅格添加已清扫标识。
21.一种扫地设备,其特征在于,包括:控制器、处理器、滚轮及驱动电机;
其中,所述处理器,用于运行计算机程序,当所述程序运行时执行如权利要求1-10任一项所述的路径生成方法,并将生成的扫地路径发送给所述控制器;
所述控制器,用于根据所述扫地路径生成控制信号,并将所述控制信号发送给所述驱动电机;
所述驱动电机,用于根据所述控制信号驱动所述滚轮动作,以使所述扫地设备运动至所述扫地路径规划的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910718059.7A CN110419985B (zh) | 2019-08-05 | 2019-08-05 | 一种路径生成方法、装置及扫地设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910718059.7A CN110419985B (zh) | 2019-08-05 | 2019-08-05 | 一种路径生成方法、装置及扫地设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110419985A CN110419985A (zh) | 2019-11-08 |
CN110419985B true CN110419985B (zh) | 2021-04-09 |
Family
ID=68412628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910718059.7A Active CN110419985B (zh) | 2019-08-05 | 2019-08-05 | 一种路径生成方法、装置及扫地设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110419985B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111300404B (zh) * | 2019-12-09 | 2021-09-17 | 小狗电器互联网科技(北京)股份有限公司 | 一种机器人脱困方法、装置及存储介质 |
CN111012251B (zh) * | 2019-12-17 | 2021-09-03 | 哈工大机器人(合肥)国际创新研究院 | 一种清扫机器人的全覆盖路径的规划方法及装置 |
CN112336269A (zh) * | 2020-10-30 | 2021-02-09 | 东南数字经济发展研究院 | 一种适用于扫地机器人的沿墙沿边清扫方法 |
CN112971645B (zh) * | 2021-02-07 | 2022-03-08 | 美智纵横科技有限责任公司 | 一种清洁方法、装置和计算机存储介质 |
CN115509216A (zh) * | 2021-06-21 | 2022-12-23 | 广州视源电子科技股份有限公司 | 路径规划方法、装置、计算机设备和存储介质 |
CN113834494B (zh) * | 2021-10-15 | 2024-06-14 | 珠海一微半导体股份有限公司 | 一种基于模板覆盖的栅格地图处理方法及芯片 |
CN114711668B (zh) * | 2022-03-31 | 2024-05-14 | 苏州三六零机器人科技有限公司 | 清扫方法、装置、扫地机及计算机可读存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100745975B1 (ko) * | 2004-12-30 | 2007-08-06 | 삼성전자주식회사 | 그리드 맵을 사용하여 최소 이동 경로로 이동하는 방법 및장치 |
CN103412565B (zh) * | 2013-05-17 | 2016-01-27 | 浙江中控研究院有限公司 | 一种具有全局位置快速估计能力的机器人定位方法 |
CN104615138B (zh) * | 2015-01-14 | 2017-09-08 | 上海物景智能科技有限公司 | 一种划分移动机器人室内区域动态覆盖方法及其装置 |
JP6012777B2 (ja) * | 2015-01-16 | 2016-10-25 | 富士重工業株式会社 | 経由地点設定装置及び経由地点設定プログラム |
CN104808671B (zh) * | 2015-05-19 | 2017-03-15 | 东南大学 | 一种家居环境下的机器人路径规划方法 |
CN107451847A (zh) * | 2016-05-31 | 2017-12-08 | ***通信集团设计院有限公司 | 一种业务区域划分方法及装置 |
CN107895374B (zh) * | 2017-11-28 | 2020-01-17 | 深圳市杉川机器人有限公司 | 清扫区域查找方法及装置 |
CN108896048A (zh) * | 2018-06-01 | 2018-11-27 | 浙江亚特电器有限公司 | 用于移动载具的路径规划方法 |
CN108931980B (zh) * | 2018-07-26 | 2021-07-06 | 珠海市一微半导体有限公司 | 机器人内建地图的标记方法和芯片及室内清洁机器人 |
CN109363585B (zh) * | 2018-12-17 | 2021-07-02 | 深圳市银星智能科技股份有限公司 | 分区遍历方法、清扫方法及其扫地机器人 |
CN109540155A (zh) * | 2019-02-01 | 2019-03-29 | 西安全志科技有限公司 | 一种扫地机器人的路径规划与导航方法、计算机装置以及计算机可读存储介质 |
-
2019
- 2019-08-05 CN CN201910718059.7A patent/CN110419985B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110419985A (zh) | 2019-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110419985B (zh) | 一种路径生成方法、装置及扫地设备 | |
CN1225920C (zh) | 定位***,定位服务器,基站和终端位置估算方法 | |
CN108241370B (zh) | 通过栅格地图获取避障路径的方法及装置 | |
EP3243419A1 (en) | Walk control method of robot, and robot | |
CN108510124B (zh) | 基于机器学习的水面垃圾清理路径规划方法和装置 | |
CN104115525B (zh) | 检测网络中的相邻接入点 | |
CN103809194B (zh) | 一种gps轨迹曲线的显示方法及装置 | |
RU2008106439A (ru) | Способ и устройство для расширенных индексов управления скоростью передачи данных в системе беспроводной связи | |
CN112161629B (zh) | 清洁机器人的路径规划方法、装置、清洁机器人及介质 | |
CN102707719B (zh) | 移动机器人及多移动机器人的协调控制方法 | |
CN102348160A (zh) | 基于多模信号的定位方法与***、定位平台 | |
JP2014533852A (ja) | ソーシャルネットワークサービスにおける近傍ユーザを検索するための方法およびサーバ | |
CN1363194A (zh) | 形成自主区域的通信装置以及自主区域形成方法 | |
CN110267194A (zh) | 一种无线漫游性能优化方法、装置、存储介质及*** | |
CN105828393B (zh) | 一种***间邻区配置方法及装置 | |
CN114641015B (zh) | 网络评估方法、装置、电子设备及存储介质 | |
CN111563290B (zh) | 一种楼栋排布方法及装置 | |
CN108955696B (zh) | 扫地机及其路径规划方法和装置 | |
CN106162829A (zh) | Wifi连接方法及装置 | |
CN108521312A (zh) | 信息传输方法、装置及飞行器 | |
CN111110117A (zh) | 一种扫地机器人工作面清洁方法 | |
CN107046692A (zh) | 一种切换组呼小区的方法及基站 | |
CN105517148A (zh) | 一种定位方法及装置 | |
CN104602249A (zh) | 一种确定小区关系的方法及装置 | |
CN107682864A (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 | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 7-605, 6th floor, building 1, yard a, Guanghua Road, Chaoyang District, Beijing 100026 Patentee after: Beijing dog vacuum cleaner Group Co.,Ltd. Address before: 7-605, 6th floor, building 1, yard a, Guanghua Road, Chaoyang District, Beijing 100026 Patentee before: PUPPY ELECTRONIC APPLIANCES INTERNET TECHNOLOGY (BEIJING) Co.,Ltd. |