清洁机器人的清洁区域划分方法及清洁机器人与流程

文档序号:24156738发布日期:2021-03-05 12:17阅读:222来源:国知局
清洁机器人的清洁区域划分方法及清洁机器人与流程

[0001]
本发明涉及一种清洁机器人的清洁区域划分方法及清洁机器人,属于机器人应用领域。


背景技术:

[0002]
清洁机器人在日常生活中的应用越来越广泛,通过清洁机器人在限定的空间内移动并实现对地面的清扫、清理活动,从而取代人工的清扫、拖地等乏味劳动。但由于在不同应用场景下的要求越来越高,尤其是对于运行精度和运行效率上提出了更多的需求,因而对于清洁机器人的地图建立及运行控制设定了极大的挑战,现有的清洁机器人多是通过多传感器比如红外、超声波、激光雷达、摄像头等构建地图,而在具有的清洁过程中为了提升效率会采用区域划分或栅格化的方法来实现相继完成的独立小区域清洁,具体方法比如201811542832.0公开的地图栅格化方法。
[0003]
如上所述的现有地图区域划分的方法是通过在全局地图的基础上按照一定规律或规格划分为若干块,比如划分为若干相互领接的2m*2m方形区域,或是通过一定规律划分为若干相互领接的子区域,然后在设定的区域中逐一完成清洁。这样的技术方案能够保证将地图细分以便于清洁机器人能以先后顺序完成清洁活动,但是缺乏根据实际场景的环境地图来灵活划分区域的功能。


技术实现要素:

[0004]
本发明提供一种区域划分方法及清洁机器人,通过检测墙体并判断与全局地图的位置关系,以墙体为参考基准并基于全局地图实现划分区域清洁,来提高清洁机器人的灵活性,比如在较为空旷的客厅内将一次性清扫的子区域设定较大一些、在卧室等空间限制的区域将一次性清扫的子区域设小一些。
[0005]
本发明的技术方案是,一种清洁机器人的清洁区域划分方法,包括:s1:获取含障碍物分布信息的栅格地图;
[0006]
s2:获取运动空间中的墙体信息;
[0007]
s3:在栅格地图中以墙体对应的障碍物栅格为边线划分清洁区域。
[0008]
优选的,获取运动空间中的墙体信息,包括:
[0009]
s21:获取运动空间内的三维点云图,所述三维点云图为若干点云数据组成的数据集合;
[0010]
s22:根据三维点云图拟合生成若干3d线段;
[0011]
s23:在3d线段中确定对应墙体的定位线段,并在栅格地图中确定墙体对应的第一障碍物栅格。
[0012]
优选的,获取运动空间中的墙体信息,包括:根据清洁机器人的三维点云图采集设备的量程确定采集范围;寻找采集范围内长度最长的3d线段;将所述最长的3d线段映射至栅格地图,3d线段映射后产生的线段与第一障碍物栅格重合时则确定为定位线段。
[0013]
优选的,在采集范围中,分别计算每一个方向上最长的点云线段作为候选线段;在所述候选线段中,选择最长的候选线段作为所述最长的3d线段。
[0014]
优选的,所述定位线段为天花板与墙体的交线。
[0015]
优选的,还包括s31:以第一障碍物栅格所在的同一直线上的第一连续障碍物栅格确定第一边线段,以垂直于第一边线段且与第一连续障碍物栅格或第一障碍物栅格相邻的第二连续障碍物栅格确定第二边线段;
[0016]
s32:以第一边线段和第二边线段作为相邻边确定矩形区域;
[0017]
s33:将矩形区域与栅格地图中的非障碍物栅格区域重合部分划分为清洁区域。
[0018]
优选的,第一边线段的长度为第一连续障碍物栅格的最大跨度,第二边线段的长度为第二连续障碍物栅格的最大跨度;或者,
[0019]
第一边线段的长度小于第一连续障碍物栅格的最大跨度,和第二边线段的长度小于第二连续障碍物栅格的最大跨度;或者,
[0020]
第一边线段的长度小于第一连续障碍物栅格的最大跨度,或第二边线段的长度小于第二连续障碍物栅格的最大跨度。
[0021]
优选的,清洁机器人在清洁活动中多次确定的多个清洁区域互不重叠。
[0022]
优选的,所述区域划分方法还包括校正方法:确定第一连续障碍物栅格或第二连续障碍物栅格所记录两端的终端位置点的栅格坐标及坐标差值为(δx,δy);确定栅格单元的边长为m;确定所述坐标差值所对应的栅格坐标差值为r,将栅格坐标减去r作为重新确定的栅格坐标,其中r=(δx/m,δy/m)。
[0023]
本发明还提出一种清洁机器人,包括摄像头模块和控制模块,摄像头模块用于收集运动空间内的图像,控制模块用于数据处理及运动控制,清洁机器人根据控制模块的指令完成上述的区域划分方法。
[0024]
优选的,清洁机器人在划分的清洁区域中包括弓字形模式,在同一方向运行超过设定距离或设定时间后执行误差修正。
[0025]
本发明的技术效果是:清洁机器人检测运行空间的图像,并通过其特征点云分布图与栅格地图的映射关系确定墙体在全局地图中的位置,清洁机器人以检测到的墙体为基准在全局地图的基础上重新划分清洁区域以实现清洁活动,提高清洁机器人的灵活性和适应性,改变传统的固定逐一栅格清洁方式。
附图说明
[0026]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需的附图作简单介绍,显然,下面描述中的附图只是本发明实施例的部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,所获得的其他实施例附图应当包含在本发明的技术方案中。
[0027]
图1为本发明的区域划分方法流程图;
[0028]
图2为获取墙体的方法流程图;
[0029]
图3为区域划分方法流程图;
[0030]
图4为实施例的第一种情况示意图;
[0031]
图5为实施例的第二种情况示意图;
[0032]
图6为实施例的第三种情况示意图;
[0033]
图7为清洁机器人检测运动空间示意图;
[0034]
图8为通过栅格地图判断墙体的方法。
具体实施方式
[0035]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一个实施例,而并非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]
如图1至3所示为本发明及实施例的实现方法流程图。
[0037]
一:根据记录的环境障碍物分布信息构建栅格地图。
[0038]
本发明中,全局地图的构建方式为同时定位和建图的方法(simultaneous localizationand mapping,slam),包括slam装置获取一个环境的感知数据,感知数据中包括图像数据、点云数据和惯性导航数据,根据图像数据和惯性导航数据建立该环境的一个全局地图,在全局地图中能显示出待清洁空间的位置、障碍物等信息。
[0039]
本发明中,将全局地图栅格化后形成栅格地图,包括障碍物对应的障碍栅格和空白区域对应的空白栅格,栅格化的具体方法为,将全局地图划分为等间距的相互领接的栅格,如1m*1m的方形栅格,将全局地图中的障碍物信息或可运行信息对应至相关栅格中,这样全局地图就会均由障碍栅格和空白栅格构成,在地图的识别中,障碍栅格和空白栅格分别代表着不允许清洁机器人通行及运行通行。具体为,先栅格化地图,即将地图划分为许多单元格形成初始栅格地图,这些单元格都是方格,将地图划分成许多单元格形成初始栅格地图,把所有含有障碍物的单元格定义为障碍栅格(障碍物区域),并定义清洁机器人在初始栅格地图中的起始位置。清洁机器人行走过程中,清洁机器人通过码盘记录行走的距离和方向,即时更新清洁机器人在初始栅格地图中的当前位置,且清洁机器人在驱动单元驱动行走单元行走的同时通过检测单元检测行走区域内是否存在障碍物,若不存在障碍物的栅格则定义为空白栅格。需要说明的是,地图的栅格化可以通过清洁机器人自动运行建立,也可以在上述全局地图的基础上分析建立,其最终的结果均是将环境信息栅格化。
[0040]
二:获取运动空间的三维点云图,所述三维点云图为若干点云数据组成的数据集合。
[0041]
本发明中,环境图像数据的采集是通过清洁机器人处于当前位置而通过摄像装置向周围拍摄的图像信息,例如清洁机器人旋转一周摄像头基于不同角度拍摄的多数量的图像,又例如在清洁机器人上设可选择的摄像头用于拍摄图像,摄像头可以在原位置围绕其中心点进行旋转,具体地,能够围绕其自身的坐标系竖直轴方向进行水平旋转,摄像头的旋转可以由移动设备通过软件控制驱动电机来实现。
[0042]
本发明中,提取环境图像的具体实现方式可以为,通过摄像头的周向环境图像来获取当前位置的特征点。具体地,通过旋转设备的摄像头来获取设备在当前位置的周向环境图像,所述周向环境图像集,是指通过设备的可旋转的摄像头采集在该位置的一周方向的图像,因为采集的图像是按照设定的角度间隔采集的,所以在摄像头旋转一周后便会得到不同角度的图像,所有这些图像都会被保存下来,即设备在该位置的图像集。例如在第一
位置时,摄像头按照设定的角度进行旋转,每旋转设定角度后采集一次当前角度的环境图像,保存为ai,i表示摄像头相对于初始位置已经旋转的次数;摄像头继续旋转,直至摄像头转回到初始角度,即面向设备移动的正前方,得到图像集ai(i:1-n);其中i表示所述摄像头相对于初始位置已经旋转的次数,n表示所述摄像头按照设定的旋转角度完成360度旋转时所需要的总次数。同样地,设备的摄像头在第二位置通过旋转的方式获取该位置的周向环境图像集,所述第二位置是设备在设定的偏移时间后所到达的位置;在该位置,设备的摄像头按照同样的方法以及旋转角度进行图像采集,得到设备在所述第二位置的环境图像集bi(i:1-n),其中,i和n分别与在第一位置中所述的i和n相对应,所表示的意义一样,但是第一位置与第二位置不同,因此能提取的图像特征也不同。本实施例采用的是旋转摄像头,在其他情况下,也可以采用多摄像头的方式,比如在清洁机器人的机身周侧设多个不同角度的摄像头同步拍摄实现。
[0043]
本发明中,环境图像的特征点利用orb特征提取算法对每帧所述灰度图像进行特征提取,得到每帧所述二维图像的orb特征点,现有的摄像头获取的图像信息基本都是彩色的,首先,对获取的图像信息进行预处理,将彩色图像转化为灰度图像,便于后续计算处理。orb(oriented fast and rotated brief)是一种快速特征点提取和描述的算法。这个算法是由rublee等学者在2011年提出,实现方式可以参见

rublee ethan,et al."orb:an efficientalternative to sift or surf.

ieee international conference on computer visionieee,2012:2564-2571.

。orb算法分为两部分,分别是特征点提取和特征点描述,特征点提取是由fast(features from accelerated segmenttest)算法发展来的,特征点描述是根据brief(binary robust independent elementary features)特征描述算法改进的。orb特征是将fast特征点的检测方法与brief特征描述子结合起来,并在它们原来的基础上做了改进与优化。将根据清洁机器人在移动中拍摄的图像信息转化为二维点云地图,若结合清洁机器人的距离测算装置,比如激光雷达用于确定障碍物的距离信息,则可以依据激光雷达和摄像头的双重信息构建三维点云(数据)地图;或者通过双目摄像头也能完成三维点云地图的构建。这样在建图与定位方面都有较高的精度,定位更加准确。
[0044]
三:根据三维点云图确定运动空间中的墙体,并确定栅格地图中墙体对应的第一障碍物栅格。
[0045]
本发明中,根据清洁机器人的三维点云图采集设备的量程确定采集范围;在寻找采集范围内长度最长的定位线段;将所述定位线段映射至栅格地图,定位线段映射后产生的线段与第一障碍物栅格重合时则确定为墙体。其产生原理为,三维点云图的数据给出了当前运动空间中的深度信息,表明了障碍物的长度、距离变化等。基于不同障碍物的特点,比如墙壁的延伸长度很长,呈现为很长的边界或物体,而普通的障碍物较为单一,可以根据这一特点确定三维点云图中是否包含墙体。
[0046]
在一些实施例中,可以通过如下方式在三维点云图中确定所述运动空间中的墙壁:首先,根据所述三维点云图的采集设备的量程,确定搜索范围;然后,寻找所述搜索范围中长度最长的3d线段;最后,确定所述长度最长的3d线段为所述运动空间中的墙壁。亦即,在搜索范围内,通过遍历的方法找到三维点云图中最长的3d线段,并确定对应的障碍物栅格作为墙壁。其中,长度最长的3d线段确定为墙体的过程中包括将此线段映射至栅格地图中,判断是否与栅格地图的障碍物栅格重合,若重合则判断为墙体,若不重合则继续重复本
方法直至找到墙体。需要注意是的,映射的意思是将三维空间中的线条投影至栅格地图的平面上,对于上述线段与障碍物栅格部分重合的也不予判定,除非是严格意义上的重合。
[0047]
此外对于确定墙体的另外一种方案为,收集室内天花板与墙体的交线,其具体实现方法为,将清洁机器人拍摄的包含天花板与墙体的交线的照片提取分析,判断若图片帧经检测确定为关键帧,则视觉即时定位与建图系统根据图片帧的相机位姿将地图中的点线投影到该图片帧生成对应的点云,并根据该点云拟合生成地图中的直线。例如,若当前帧经检测确定为关键帧,视觉即时定位与建图系统将多个关键帧中的关键点投影到当前关键帧,利用投影点周围的邻域信息确定投影点的深度,生成半稠密的深度图,得到该图片帧对应的点云地图。视觉即时定位与建图系统采用ransac(random sample consensus,随机抽样一致性)算法在三维空间中利用当前图片帧的3d点云拟合3d直线。再映射至栅格地图中,并判断是否与栅格地图的障碍物栅格重合,若重合则判断为墙体,若不重合则继续重复本方法直至找到墙体。对于视觉即时定位与地图构建的vslam方法可以参见cn107909612a说明书公开的部分。需要说明的是,根据三维点云图拟合生成若干3d线段是视觉检测范围内任意的若干条线段,其根据实际检测方法具有不同的立体形态。
[0048]
如图7和8所示,清洁机器人101利用摄像头、激光雷达等传感器用于拍摄运动空间中的信息,墙体与天花板的交线为201,构建成点云分布图202。按照上述处理过程为:确定搜索范围即为图示框选区域;拟合框选区域内的不同3d线段l(包括l-1,l-2,l-3,l-4),通过遍历的方式逐一对比选取出长度最长的3d线段l-4;将确定出来的l-4映射至与运行地面基本平行的栅格地图上形成l-4

,判断l-4

是否落入全部落入障碍物栅格中,若是,则说明l-4是在天花板与墙体交线附近则可以确定墙体位置,也即定位线段;若不是,则说明还未找到墙体,需要进一步循环上述步骤。
[0049]
在通过上述方法确定的墙体后,找到对应的栅格地图上的第一障碍物栅格,第一障碍物栅格通常为连续的若干个栅格,将与第一障碍物栅格处于同一连续直线上的称之为第一连续障碍物栅格。在本实现方式中,确定了墙体与天花板的交线后,需要确定障碍物栅格位于全局地图中的位置,也即确定清洁机器人位于全局地图中的位置。其中一种方法为通过清洁机器人机身内设的惯性导航系统确定方位及距离,再在全局地图中找到对应的障碍物栅格,从而完成第一连续障碍物栅格的建立。另外一种方法为处理摄像头拍摄的环境信息来对照历史记录信息确定位置,比如通过拍摄取得的沙发、茶几等固定标志障碍物来确定方位,再对照全局地图信息找到相关联的第一连续障碍物栅格,沙发、茶几等固定标志障碍物图中示意为301。
[0050]
此外,由于清洁机器人在运动空间中运行时,摄像头的作用会实时拍摄运动空间的图像,除了生成点云图外,通过双目摄像头的照片还能起到定位障碍物、环境匹配对比的作用。具体而言,定位障碍物的原理在于,双目摄像头会根据现有的定位方法获取障碍物的大小、形状、高度及与清洁机器人的距离,为进一步了解双目摄像头的工作原理,具体讲述双目摄像头定位方法的实现过程:双目摄像头分别独立在同一时刻获取同一障碍物的不同角度的两幅图片信息进行立体匹配,图像处理系统会对两幅图片进行数据处理,具体过程为,对原始图片进行二值化处理、高斯模糊、canny算子轮廓检测,寻找障碍物轮廓并用最小四边形将障碍物完整框出,通过计算四边形的四个顶点坐标得到障碍物的像素大小,根据三角原理,可以计算出障碍物的宽度和高度,实现对允许通过空间的尺寸测量;通过计算四
边形四个顶点的坐标得到物体中心点的像素坐标,通过测距原理得到障碍物中心点距离摄像头的距离,以将处理后的数据用于定位的应用。具体而言,环境匹配对比的原理在于,扫地机的视觉传感器在扫地机开始运动时就开始对周围环境进行图片采集,并且选择具有丰富参照物可作为特征的图片作为关键帧图片保存;同时记录相邻时间的两个关键帧图片之间的陀螺仪信息和里程计信息,以保证不会因为所采集的关键帧图片之间相隔时间太长导致误差过大;建立词袋模型加速特征匹配,将关键帧图片中的各特征一一对应训练成视觉词典,计算当前帧图片特征点在视觉词典中的映射,利用视觉词典即可找到与当前帧图片最相似的关键帧图片,判断形成视觉回环;再根据当前帧图片和与当前帧图片以形成视觉回环的历史帧图片之间的图片位置信息,可以快速计算得到两者之间的真实位置信息;扫地机在检测到当前帧图片和历史帧图片形成视觉回环时会自动完成校准,根据计算得到的真实位置信息和历史帧的陀螺仪信息来更新当前帧图片的里程计数据和陀螺仪数据,扫地机可以校正误差,实现精准定位。
[0051]
四:确定第一边线段及第二边线段。
[0052]
以第一障碍物栅格所在的同一直线上的第一连续障碍物栅格确定第一边线段。由于障碍物栅格通常是相互领接的被标记栅格,因此在确定墙体对应的第一障碍物栅格后,同一直线上的其他障碍物栅格也能被确定出来,直到确定了全部处于同一直线并相邻的障碍物栅格被确定后,计算得到第一边线段,第一边线段对应地图的意义为整个检测到的连续墙体。而为了便于后续的区域划分,第一边线段的长度确定为第一连续障碍物栅格的最大跨度,这样的好处是能最大跨度的确定一次性清洁区域的一边长。可以理解的是,若在上述的障碍物栅格中选取部分长度作为第一边线段的长度也是可以实现的,其特点在于确定的一次性清洁区域的一边长则适应性变小,对于同样的一个墙体需要被划分为多个清洁区域分开清洁。
[0053]
以垂直于第一边线且与第一连续障碍物栅格或第一障碍物栅格相邻的第二连续障碍物栅格确定第二边线段。墙体不会是独立的一面,因而有领接的且不处于同一直线的第二墙体,但是在栅格化后在地图显示却是相互垂直的第二连续障碍物栅格。根据第一边线段确定第二边线段,第二边线段为垂直于第一边线且与第一连续障碍物栅格或第一障碍物栅格相邻的第二连续障碍物栅格所确定。而为了便于后续的区域划分,第二边线段的长度确定为第二连续障碍物栅格的最大跨度,这样的好处是能最大跨度的确定一次性清洁区域的另一边长。可以理解的是,若在上述的第二连续障碍物栅格中选取部分长度作为第二边线段的长度也是可以实现的,其特点在于确定的一次性清洁区域的另一边长则适应性变小,对于同样的一个墙体需要被划分为多个清洁区域分开清洁。
[0054]
五:划分清洁区域。
[0055]
以第一边线段和第二边线段作为相邻两边确定矩形区域,将矩形区域与栅格地图中对应矩形区域的非障碍物栅格区域重合部分划分为清洁区域。根据上述确定长度的、相互垂直的第一边线段和第二边线段作为边长确定一矩形区域,矩形区域与栅格地图中的空白栅格重合部分为规划的清洁区域。这样做的意义在于,根据两个墙体先确定最大理论运行区间,然而由于现实空间的一些条件会使得部分区域不允许通行(障碍栅格),矩形区域与空白栅格二者重合后确定的是最终允许通行的空间。有两种情况,第一种是空白栅格区域包括了矩形区域,此时则矩形区域为规划清扫的一次性区域,清洁机器人在此区域内完
成高效的清洁工作;第二种是空白栅格区域与矩形区域只部分重叠,则确定重合区域为允许清洁区域,清洁机器人在此区域内完成高效的一次性清洁工作。在本发明中,清洁机器人的灵活性相当高,比如在较为空旷的客厅内将一次性清扫的子区域设定较大一些、在卧室等空间限制的区域将一次性清扫的子区域设小一些,而这会依据相对应的环境的墙体长度来自动设定,有利于清洁机器人进行适应性规划清洁区域,相对现有技术的栅格清洁极大的提高了清洁效率。
[0056]
本实施例的具体实施方式为如图4至6所示的方法,图4、图5和图6为同一地图环境下经过不同运算方式下的控制方法,这样的控制方法下,比如在较为空旷的客厅内将一次性清扫的子区域设定较大一些、在卧室等空间限制的区域将一次性清扫的子区域设小一些。上述图中全局地图被栅格化后形成栅格地图,包括墙体栅格w和空白栅格,需要说明的是在空白栅格可能还存在其他障碍物栅格(图中未示出),对应家具、生活物品等高度较矮的障碍物。不同的图中a和b分别定义为第一边线段和第二边线段,为了示意清楚其被显示在空白栅格处,实际中是在墙体栅格w和空白栅格之间,包围形成的矩形区域是用于包围空白栅格的。在传统的清洁方式中,清洁机器人在空白栅格内实现逐一清洁,通过弓字形、n字型、重点清洁等清扫方式完成当前栅格后进入下一相邻栅格内实现清洁,这样的清洁方式相对可靠,但是由于在不同的栅格间切换会浪费较多时间,且在有些空白栅格空间很大的情况下采用这种方式使得效率较低。
[0057]
如图4所示为第一种情况,即空白栅格与矩形区域全部重合。当清洁机器人通过前述方法确定a-1对应的墙体栅格w为第一障碍物栅格时,会在全局地图的基础上确定相邻垂直的较长的墙体栅格w为第二连续障碍物栅格及对应的b-1,此时确定出矩形区域

,由于矩形区域

全部落入空白栅格中,因此重合部分即是运行清洁的区域,清洁机器人在矩形区域

内完成自由连续清洁,相比逐一栅格清洁的效率是更加提高。当清洁机器人通过前述方法确定a-2对应的墙体栅格w为第一障碍物栅格时,会在全局地图的基础上确定相邻垂直的较长的墙体栅格w为第二连续障碍物栅格及对应的b-2,此时确定出矩形区域

,由于矩形区域

全部落入空白栅格中,因此重合部分即是运行清洁的区域,清洁机器人在矩形区域

内完成自由连续清洁,相比逐一栅格清洁的效率是更加提高。
[0058]
如图5所示为第二种情况,即矩形区域面积大于空白栅格面积。当清洁机器人通过前述方法确定a-3对应的墙体栅格w为第一障碍物栅格时,会在全局地图的基础上确定相邻垂直的较长的墙体栅格w为第二连续障碍物栅格及对应的b-3,此时确定出矩形区域

,由于矩形区域

部分与空白栅格重合,而由于重合的障碍物区域不允许通行,因此重合部分即是运行清洁的区域,清洁机器人在矩形区域

内完成自由连续清洁。
[0059]
如图6所示为第三种情况,即矩形区域面积小于空白栅格面积。当清洁机器人通过前述方法确定a-4对应的墙体栅格w为第一障碍物栅格时,会在全局地图的基础上确定相邻垂直的较长的墙体栅格w为第二连续障碍物栅格及对应的b-4,此时确定出矩形区域

,由于矩形区域

与部分空白栅格重合,因此重合部分即是运行清洁的区域,清洁机器人在矩形区域

内完成自由连续清洁。当清洁机器人通过前述方法确定a-5对应的墙体栅格w为第一障碍物栅格时,会在全局地图的基础上确定相邻垂直的较长的墙体栅格w为第二连续障碍物栅格及对应的b-5,此时确定出矩形区域

,由于矩形区域

与部分空白栅格重合,因此重合部分即是运行清洁的区域,清洁机器人在矩形区域

内完成自由连续清洁。当清洁
机器人通过前述方法确定a-6对应的墙体栅格w为第一障碍物栅格时,会在全局地图的基础上确定相邻垂直的较长的墙体栅格w为第二连续障碍物栅格及对应的b-6,但是由于若检测到前述矩形区域

及矩形区域

已经被清洁,则为了避免重复清洁此时确定出矩形区域

,由于矩形区域

与部分空白栅格重合,因此重合部分即是运行清洁的区域,清洁机器人在矩形区域

内完成自由连续清洁。在本种情况下,清洁机器人会根据记录的运行顺序及清洁路径以避免重复清洁,以进一步提高可靠性和灵活性,但是需要理解的是不论怎样运行都会讲全部全局地图完成的情况下才判断为执行完清洁任务。
[0060]
在图4至6的三种情况下,检测到不同的墙体情况下有不同的判断结果,而根据本发明的规划方法确定清洁区域,可以在不同的判断结果上灵活的根据全局地图的情况配置实际划分的清洁区域,增强清洁机器人的灵活性和适应性,改变传统的固定逐一栅格清洁方式,以实现在较为空旷的客厅内将一次性清扫的子区域设定较大一些、在卧室等空间限制的区域将一次性清扫的子区域设小一些。需要说明的是,在多种情况下,图示的箭头为大致的运行过程,不限定为一次性清洁,如矩形区域

中沿着平行于b-1的方向循环往复多次完成所有的清洁任务,每次往复过程间隔一个机身的宽度。在多种情况下,在运行距离较远的情况下机器人运行速度可以加快以提高清洁速度,此外也可以设置比如弓字形、n字型、重点清洁等清扫方式来实现划分的矩形区域清扫。
[0061]
需要说明的是,以上实施例是采用最大跨度长度的边线段确定矩形区域,在其他的实施例中也可以采用较短的边线段来确定清洁区域,实现规划的过程与上述是一致的。具体来说是,第一边线段的长度小于第一连续障碍物栅格的最大跨度,和第二边线段的长度小于第二连续障碍物栅格的最大跨度;或者,第一边线段的长度小于第一连续障碍物栅格的最大跨度,或第二边线段的长度小于第二连续障碍物栅格的最大跨度。这样确定出来的清洁区域同样还是以检测到的墙体为基准在全局地图的基础上划分清洁区域,只是划分的区域面积相对较小一点,需要被划分的次数会较多,因而产生的清洁区域个数也较多。
[0062]
采用本发明的区域划分方法划分的清洁区域,由于清洁全局地图的复杂性或确定区域的面积不能全部覆盖空白栅格,可能存在多个清洁区域,为了保证不重复清洁,清洁机器人的控制模块会产生清洁记录,避免多次产生的多个清洁区域被重叠。而对于那些始终未被清洁的空白栅格,有的是因为检测不到墙体,有的是因为规划区域面积较小导致,在清洁机器人记忆的未被清洁区域也会在完成整体清洁后、或在运行途中将其进行清洁,以实现全部全局地图的空白栅格的清洁活动。
[0063]
在本发明中,划分的清洁区域面积较大,因此在运行过程中需要消除行走误差,因为行走误差是随着行走距离或时间的增大而不断累积的。提供一种修正方法,判断机器人行走的时间是否达到预设时间,当机器人行走的时间达到预设时间,表明机器人已经行走了很久,累积的行走误差已经比较大了,需要进行误差修正,所以可以确定机器人已经符合预设定位条件,进行后续的修正操作。其中,所述预设时间可以根据具体的设计需求进行相应设置,优选的,设置为10分钟至20分钟的范围内,本实施例可以设置为15分钟。如果机器人行走的时间没有达到预设时间,但是,行走的路径已经达到了第一预设长度,也可以表明机器人行走的路程比较长,累积的行走误差也比较大了,可以进行误差修正。此种情况适用于机器人运行过程比较顺畅或者沿边时打滑比较少的情形,在这种情况下,机器人只要较少的时间,就可以行走很长的距离,但是长距离行走,一点一点的误差累积起来,也会产生
较大的行走误差。所以,当机器人行走的路径达到第一预设长度,也可以确定机器人已经符合预设定位条件,需要进行后续的修正操作。所述第一预设长度也可以根据具体的设计需求进行相应设置,优选的设置为30米至50米的范围内,本实施例设置为40米。此外,也可以通过行走时间结合行走路径长度来判断是否需要进行误差修正,这样可以更准确地确定机器人累积的行走误差是否达到了需要进行修正的程度。本实施例所述的方法,通过行走时间和/或行走距离来判断机器人是否符合需要进行误差修正的条件,判断方式比较简便,数据处理也比较容易,判断结果也比较准确,适于普遍使用。
[0064]
上述的误差修正方法可以采用的一种技术方案是,参考墙边的方法。清洁机器人在进行校正之前,筛选出准确可靠的参考墙边,是有效进行校正的基础。本实施例所述筛选参考墙边的方法包括如下步骤:步骤一:清洁机器人原地旋转,并根据其距离传感器检测到的距离值和角度传感器检测到的角度值,确定各检测点的位置坐标,然后进入步骤二;步骤二:基于各所述检测点的位置坐标,判断相邻两个所述检测点所构成的直线的斜率是否在预设误差范围内,如果是,则确定斜率在预设误差范围内的直线上的检测点所对应的边是直边,并进入步骤三,如果否,则确定斜率不在预设误差范围内的直线上的检测点所对应的边不是直边;步骤三:分析机器人的视觉传感器在旋转过程中所拍摄到的图像,解析出图像中的直边,然后进入步骤四;步骤四:将图像中的最长的直边所对应的,斜率在预设误差范围内的直线上的检测点所对应的直边,作为参考墙边。清洁机器人会把所检测到的直边作为墙边进行筛选,所筛选出来的直边就是参考墙边。
[0065]
另外一种误差修正方法还可以采用速度监测的方式实现。第一步:清洁机器人包括陀螺仪,陀螺仪具备x、y、z轴角速度变化传感器和加速度变化传感器,能够监测得到清洁机器人x、y、z轴角速度变化和加速度变化;其中,x、y、z轴角速度变化指的是三轴角速度变化,加速度变化指的是x、y、z轴线性加速度的变化。第二步:陀螺仪将监测到的x、y、z三轴运动角速度和加速度的变化发送给控制单元,控制单元根据获得的x、y、z三轴运动角速度和加速度的变化,判断出自动地面清洁机器人是否偏离设定路线,较佳的,控制单元通过上述数据计算获得航向角,通过判断航向角的变化来判断清洁机器人是否偏离设定路线。第三步:控制单元对所述自动地面清洁机器人偏离设定路线的进行调整,比如,比对航向角的前后变化,如果假设航向角增大,表示所述清洁机器人向右偏斜,需要调整左右驱动马达的速度(左驱动马达适当减小,右驱动马达适当增大);如果航向角减小,则表示所述自动地面清洁机器人向左偏斜,需要调整左右驱动马达速度(左驱动马达适当增大,右驱动马达适当减小)。本实施例通过陀螺仪与控制单元之间的联系来判断清洁机器人是否偏离设定路线,以校正两组驱动马达之间的误差而导致的直线运行中的路线偏离。
[0066]
此外,由于清洁机器人是基于上一次清洁构建的全局地图,在某些特殊情况下可能会产生局部变化,比如使用者变动了茶几、沙发等原本固定的障碍物,也即原来的障碍物栅格变成了空白栅格和/或空白栅格变成了障碍物栅格,因此也可以在运行过程中对全局地图进行校正。基于机器人当前的定位数据与所述第一/第二连续障碍物栅格所对应的定位参数的差值,修正机器人所存储的地图信息。由于机器人重新定位,所修正的只是当前的坐标位置,而原来存储的栅格地图还是会存在误差,甚至会在机器人重新定位以后造成更严重的误差,所以,在机器人进行重新定位以后,还需要对栅格地图的相关地图信息进行修正。修正的方式可以采用保持栅格单元的状态信息不变,只相应修正栅格单元的栅格坐标
值。如此就可以利用修正后的栅格地图进行准确导航,提高机器人的行走效率。确定第一/第二连续障碍物栅格所记录两端的终端位置点的坐标差值为(δx,δy);确定栅格单元的边长为m;确定所述坐标差值所对应的栅格坐标差值为r,其中r=(δx/m,δy/m),将栅格地图中的栅格单元的栅格坐标减去r,作为重新确定的栅格坐标,并保持栅格单元的状态信息不变。比如,机器人在某一个端点所检测到的当前坐标值为(46,58),所记录的第二端点的终端位置点的坐标值为(26,38),则坐标差值为(46-26,58-38)。由于每个栅格单元的边长为20,所以,得出的栅格坐标差值r=((46-26)/20,(58-38)/20)=(1,1)。最后,将栅格地图中的栅格单元的栅格坐标减去(1,1),即可以作为重新确定的栅格坐标。此时,栅格坐标值变化前后的栅格单元的状态信息保持不变。本实施例通过位置点坐标值换算的方式,可以快速有效地对栅格地图的信息进行调整,从而快速地重新确定好最新最准确的栅格地图,为机器人后续的导航提供更准确的数据。
[0067]
本发明公开的实施例仅为本发明具体实施例而已,是为了清楚说明本发明的举例,而不应当视为对本发明的范围限定,当然也不能以此来限定本发明之权利要求范围,对于本领域技术人员来说,依本发明权利要求所作的等同变化、修改、变动等,仍属本发明所涵盖的范围,应当包含在本发明的权利要求保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1