具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。另外,虽然在装置示意图中进行了功能模块的划分,但是在某些情况下,可以以不同于装置示意图中的模块划分。
本申请实施例提供一种地面介质探索方法、清洁机器人及存储介质。其中,该方法应用于清洁机器人,该清洁机器人可以为扫地机,还可以其他智能机器人,在此不做限制。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,图1为本申请实施例提供的一种地面介质探索方法的步骤流程示意图。
如图1所示,该地面介质探索方法包括步骤S10至步骤S11。
步骤S10、当所述清洁机器人检测到预设地面介质时,获取所述清洁机器人的状态信息,并根据所述状态信息确定沿边探索模式,其中,所述沿边探索模式包括内沿边探索模式以及外沿边探索模式;
在一些实施方式中,预设地面介质包括地毯、脚垫、儿童爬爬垫以及铺设在地面上的凉席等,当然,预设地面介质还可以为其他清洁机器人遇到时需要进行特殊处理的铺设在地面上的介质,在此不做限制。
在一些实施方式中,外沿边探索模式指清洁机器人在预设地面介质外侧对预设地面介质进行沿边探索,所述清洁机器人在外侧进行沿边探索的过程中,清洁机器人的几何中心的正投影不落入预设地面介质的正投影,以此来控制外沿边探索过程中清洁机器人的活动范围以降低拖擦件打湿或弄脏预设地面介质区域的程度;内沿边探索模式指清洁机器人在预设地面介质内侧对预设地面介质进行沿边探索,清洁机器人在内侧进行沿边探索的过程中,清洁机器人的几何中心的正投影形成的轨迹至少有一部分与预设地面介质的正投影重合。
在一些实施方式中,清洁机器人处于外沿边探索模式,在预设地面介质外侧进行沿边探索时,机器人的正投影与预设地面介质的正投影的重合部分小于机器人的正投影的百分之五十,以此降低拖擦件打湿或弄脏预设地面介质区域的程度;清洁机器人处于内沿边探索模式,在预设地面介质内侧进行沿边探索时,清洁机器人的正投影与预设地面介质的正投影的重合部分大于等于机器人的正投影的百分之五十。
清洁机器人在移动或者在执行清洁任务的过程中,如果遇到预设地面介质而不进行特殊应对处理,可能会出现清洁机器人或者预设地面介质损坏的情况。示例性的,当预设地面介质为地毯时,清洁机器人在地毯上移动可能会被地毯卡死,而如果清洁机器人当前正在执行拖地任务,则清洁机器人在拖地过程中可能会弄湿地毯。
清洁机器人可以通过多种技术手段来检测是否遇到预设地面介质,以下以预设地面介质为地毯进行说明,在一些实施方式中,清洁机器人可以通过超声波传感器来检测地毯。
当清洁机器人在移动过程中检测到预设地面介质时,说明清洁机器人有可能已经到达或者接近预设地面介质的边缘了。此时,清洁机器人可以根据状态信息选取沿边探索模式来对预设地面介质进行探索。通过沿边探索确定预设地面介质的位置以及轮廓之后,清洁机器人在规划行进轨迹或者清洁轨迹时,即可根据预设地面介质的位置以及轮廓设计规避绕行路线或清洁地面介质行为。
在一些实施方式中,所述方法还包括:
当所述清洁机器人在移动过程中检测到预设地面介质时,如果在所述清洁机器人当前正处于构建清洁区域地图的状态,则不对所述预设地面介质进行沿边探索。
可以理解,清洁机器人1是根据清洁区域地图来确定移动路线以及清洁轨迹的,如果清洁机器人1是新购置的,在清洁机器人执行清洁任务之前,需要先对周边环境进行探索,以构建初始的清洁区域地图。为了提高建图效率,在这个过程中如果清洁机器人1检测到预设地面介质,不对该预设地面介质进行沿边探索。
在一些实施方式中,所述方法还包括:
当所述清洁机器人在移动过程中检测到预设地面介质时,如果在所述清洁机器人的清洁区域地图中记录有所述预设地面介质的轮廓信息,则不对所述预设地面介质进行沿边探索。
可以理解,沿边探索过程必然需要耗费清洁机器人一定的时间资源,因此,如果在清洁机器人的清洁区域地图中已经记录有当前地面介质的轮廓信息,则清洁机器人在移动过程中检测到该预设地面介质时,无需对该预设地面介质再次进行沿边探索,其中,清洁区域地图为清洁机器人用于规划移动路径或者清洁路径的地图。
在一些实施方式中,所述方法还包括:
当所述清洁区域地图中记录有所述预设地面介质的轮廓信息时,获取记录所述轮廓信息的记录时间,并计算所述记录时间与当前时间的时间间隔;
当所述时间间隔大于预设时长时,控制所述清洁机器人对所述预设地面介质进行沿边探索,以根据所述探索结果更新所述预设地面介质在所述清洁区域地图中的轮廓信息。
可以理解,清洁机器人的工作环境是动态的,通过本实施方式所提供的技术方案,可以定期更新清洁工作地图。
在一些实施方式中,所述获取所述清洁机器人的状态信息,并根据所述状态信息确定沿边探索模式,包括:
获取所述清洁机器人的配置信息,并根据所述配置信息从所述内沿边探索模式以及所述外沿边探索模式中选取沿边探索模式;
或,获取所述清洁机器人周围的环境信息,并根据所述环境信息从所述内沿边探索模式以及所述外沿边探索模式中选取沿边探索模式。
可以理解,清洁机器人的状态信息可以为配置信息,也可以为清洁机器人通过传感器(如激光雷达、悬崖传感器、视觉传感器等)获取到的周侧的(如障碍物、悬崖等特殊地形分布)的环境信息。
在一些实施方式中,当清洁机器人通过配置信息来确定沿边探索模式时,所述配置信息包括所述清洁机器人的工作模式和/或地面介质清洁功能状态。
在一些实施方式中,当配置信息包括清洁机器人的工作模式以及地面介质清洁功能状态时,清洁机器人确定沿边探索模式的策略如下表一所示:当清洁机器人的工作模式为扫地模式时,确定沿边探索模式为内沿边探索模式;当清洁机器人的工作模式为拖地模式时,确定沿边探索模式为外沿边探索模式;当清洁机器人的工作模式为扫拖模式,且地面介质清洁功能为开启状态,确定沿边探索模式为内沿边探索模式;当清洁机器人的工作模式为扫拖模式,且地面介质清洁功能为关闭状态,确定沿边探索模式为外沿边探索模式。
表一、
工作模式 |
地面介质清洁功能 |
沿边探索模式 |
扫地模式 |
|
内沿边探索模式 |
拖地模式 |
|
外沿边探索模式 |
扫拖模式 |
开启 |
内沿边探索模式 |
扫拖模式 |
关闭 |
外沿边探索模式 |
在一些实施方式中,当清洁机器人通过环境信息来确定沿边探索模式时,可以通过环境信息获取预设地面介质上的障碍物的分布情况,并根据预设地面介质上障碍物的数量以及分布位置来确定沿边探索模式,以此提升机器人的探索效率。示例性的,如果预设地面介质上的障碍物的数量大于预设数量时,则选取外沿边探索模式对预设地面介质进行探索;而如果预设地面介质上的障碍物的数量小于或等于预设数量时,则选取内沿边探索模式对预设地面介质进行探索;或者,如果预设地面介质上的障碍物的位置靠近预设地面介质边缘从而影响清洁机器人的行进时,则选取外沿边探索模式对预设地面介质进行探索;而如果预设地面介质上的障碍物的位置远离预设地面介质边缘而不影响清洁机器人的行进时,则选取内沿边探索模式对预设地面介质进行探索。
步骤S11、根据所述沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓。
可以理解,当确定了沿边探索模式之后,即可根据沿边探索模式对预设地面介质进行外沿边探索或者内沿边探索,并在探索过程中确定预设地面介质的轮廓。
其中,与外沿边探索模式相比,清洁机器人采用内沿边探索模式对预设地面介质进行探索后所确定的预设地面介质的轮廓的完整性更高。例如,预设地面介质周围放置有障碍物,清洁机器人采用外沿边探索模式对预设地面介质进行探索时,障碍物可能会阻碍清洁机器人的探索行为,从而无法获得完整的预设地面介质的轮廓。
另外,如果沿边探索模式为外沿边探索模式,清洁机器人在对预设地面介质的外沿边探索,可以降低拖擦件打湿或弄脏预设地面介质区域的程度。例如,清洁机器人处于拖地模式,如果清洁机器人在检测到预设地面介质时采用了内沿边探索模式,则会大面积打湿甚至污染预设地面介质。
在一些实施方式中,所述轮廓指所述预设地面介质的边缘的轮廓点拟合而得到的预设地面介质的边界,或根据该边界向外膨胀预设尺寸而得到的边界。可以理解,清洁机器人的传感器的检测结果会存在一定程度的滞后,以检测到的轮廓点拟合而得到的边界向外膨胀预设尺寸得到的边界会更准确,更符合实际情况。
可以理解,根据预设地面介质的边缘的轮廓点,可以确定预设地面介质的轮廓,将预设地面介质的轮廓更新到清洁机器人的清洁区域地图以后,清洁机器人在后续在根据清洁区域地图规划路径时,可以根据预设地面介质的轮廓规划绕行路径或者预设地面介质清洁路径。
在一些实施方式中,当所述沿边探索模式为所述内沿边探索模式时,所述根据所述沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓,包括:当所述清洁机器人检测到所述预设地面介质时,控制所述清洁机器人执行内沿边探索任务,以获取所述预设地面介质的轮廓点,直至所述清洁机器人再次到达第一轮廓点位置,所述第一轮廓点位置为所述清洁机器人获取到第一个所述轮廓点时清洁机器人的坐标,当清洁机器人的坐标与清洁机器人获取到第一个所述轮廓点时清洁机器人的坐标重合或距离预定距离时,可以确定清洁机器人再次到达第一轮廓点位置。在一些实施方式中,清洁机器人的坐标可以由检测地面介质的传感器的坐标确定。
请参照图3,图3为本申请实施例提供的一种清洁机器人对预设地面介质执行内沿边探索的场景示意图。
如图3所示,清洁机器人1在由非预设地面介质区域进入预设地面介质区域范围2的过程中,当所述清洁机器人检测到所述预设地面介质时,控制清洁机器人执行内沿边探索任务,以获取所述预设地面介质的轮廓点,直至清洁机器人再次到达第一轮廓点位置,第一轮廓点位置为所述清洁机器人获取到第一个所述轮廓点的位置。可以理解,清洁机器人再次到达第一轮廓点位置时,说明清洁机器人回到了检测到第一轮廓点的位置,对预设地面介质的探索路径已经形成闭环,即清洁机器人已经完成对预设地面介质的探索。可以理解,清洁机器人再次到达第一轮廓点位置,并不限定于清洁机器人一定要回到与第一轮廓点重合的位置,当清洁机器人与第一轮廓点的距离小于预设距离阀值时,也可判定清洁机器人再次到达第一轮廓点。
在一些实施方式中,所述控制所述清洁机器人执行内沿边探索任务,以获取所述预设地面介质的轮廓点,包括:控制所述清洁机器人执行第一预定动作直至所述清洁机器人检测到非预设地面介质;控制所述清洁机器人沿第一方向旋转,当所述清洁机器人再次检测到所述预设地面介质时,获取所述清洁机器人当前的坐标并标记为所述轮廓点;控制所述清洁机器人以预定角速度和预定线速度行进,当所述清洁机器人再次检测到所述非预设地面介质时,重复执行所述控制所述清洁机器人沿第一方向旋转的步骤,以获取所述轮廓点。
如图3(a)所示,当沿边探索模式为内沿边探索模式,且清洁机器人1已位于预设地面介质2对应的介质区域内时,需要确认清洁机器人1当前位于靠近预设地面介质的边缘的位置,如此才能确定在清洁机器人1接下来的行为是有效的沿边探索行为,清洁机器人接下来检测到预设地面介质时的坐标靠近预设地面介质的边缘,只有在清洁机器人1靠近预设地面介质的边缘时,清洁机器人检测到预设地面介质时的坐标才能够被确定为预设地面介质的轮廓点,示例性的,可以控制清洁机器人执行第一预定动作直至清洁机器人检测到非预设地面介质,此时能够确定当前清洁机器人的位置靠近预设地面介质的边缘,以保证接下来清洁机器人探索行为过程中检测到的点为轮廓点;如图3(b)所示,确定了当前清洁机器人的位置靠近预设地面介质的边缘时,控制清洁机器人沿第一方向旋转,如图3(c)当清洁机器人再次检测到预设地面介质时,可以确定当前清洁机器人的坐标可以标记为第一轮廓点,如图3(d)所示,然后控制清洁机器人以预定的角速度和预定线速度行进,以使清洁机器人按照弧线路径先远离再靠近预设地面介质的边缘,当清洁机器人再次检测到非预设地面介质时,表明清洁机器人再次靠近预设地面介质的边缘,依此类推,重复执行控制清洁机器人沿第一方向旋转的步骤(即图3(d)-图3(f))以确定清洁机器人位于预设地面介质上并位于靠近预设地面介质的边缘的位置(即清洁机器人检测预设地面介质的传感器位于预设地面介质正上方并位于靠近预设地面介质的边缘的位置),从而继续控制清洁机器人以预定的角速度和预定线速度行进,如此循环,以获取其他的轮廓点。其中,所述沿边探索模式为内沿边探索模式,清洁机器人可以选择沿边探索的方向,具体的,左沿或右沿,左沿指以清洁机器人行进方向为参考,清洁机器人的左侧靠近预设地面介质边缘执行内沿边探索任务,当探索方向为左沿时,第一方向为以清洁机器人为参考顺时针方向;当探索方向为右沿时,第一方向为以清洁机器人为参考逆时针方向。在一些实施方式中,在控制清洁机器人沿第一方向旋转确定清洁机器人位于预设地面介质上并位于靠近预设地面介质的边缘的位置后,还可以控制清洁机器人以预定的角速度和预定线速度行进,且角速度逐渐减小,只要能够使清洁机器人朝靠近预设地面介质的方向探索即可,在此不做限定。
可以理解,控制清洁机器人以预定的角速度和预定线速度行进,且角速度逐渐减小,可以使得清洁机器人探索的范围可以以清洁机器人为中心呈螺旋形逐渐扩大,可以保证清洁机器人能够探索到非预设地面介质,即能够确保清洁机器人能够再次靠近预设地面介质内侧的边缘,从而顺利进行下一个探索动作继续对预设地面介质进行探索。
在一些实施方式中,所述控制所述清洁机器人执行第一预定动作直至所述清洁机器人检测到非预设地面介质,包括:控制所述清洁机器人旋转,实时获取所述清洁机器人旋转的角度及所述清洁机器人对地面介质的检测结果,确定所述清洁机器人对地面介质的检测结果为检测到所述非预设地面介质且确定获取所述清洁机器人旋转的角度小于180°,控制所述清洁机器人停止旋转;确定所述清洁机器人旋转角度到达180°且所述清洁机器人未检测到所述非预设地面介质时,控制所述清洁机器人停止旋转,并控制所述清洁机器人沿当前方向直行,直至所述清洁机器人检测到所述非预设地面介质。
示例性的,因为传感器检测结果存在一定的滞后性,清洁机器人检测到预设地面介质时,清洁机器人的大部分可能已经位于预设地面介质上,如果沿边探索模式为内沿边探索模式,为了更快地使清洁机器人去到预设地面介质的边缘,可以控制清洁机器人旋转,快速判断清洁机器人当前的位置是否靠近预设地面介质的边缘,如图2(a)-(b)当清洁机器人检测到非预设地面介质且旋转角度小于180°时,可以确定清洁机器人当前的位置靠近预设地面介质的边缘,此时可以控制清洁机器人停止旋转;如图2(c)-(e)所示,如果清洁机器人旋转角度到达180°时仍未检测到非预设地面介质,则可以确定当前清洁机器人已经位于预设地面介质上,此时可以控制清洁机器人停止旋转,并控制清洁机器人沿当前方向直行,直至清洁机器人检测到非预设地面介质时,确定清洁机器人当前的位置靠近预设地面介质的边缘,可以控制清洁机器人停止行进,以进行接下来的内沿边探索行为。
可以理解,如图2所示,清洁机器人1在执行探索任务时,如果确定当前的沿边探索模式为内沿边探索模式,在检测到预设地面介质后,可以控制清洁机器人旋转,以快速判断清洁机器人当前的位置是否靠近预设地面介质的边缘,在清洁机器人旋转的过程中,当清洁机器人检测到非预设地面介质且旋转角度小于180°时,可以确定清洁机器人当前的位置靠近预设地面介质的边缘,此时可以控制清洁机器人停止旋转;如果清洁机器人旋转角度到达180°时仍未检测到非预设地面介质,则可以确定当前清洁机器人已经位于预设地面介质上,此时可以控制清洁机器人停止旋转,并控制清洁机器人沿当前方向直行,直至清洁机器人检测到非预设地面介质时,确定清洁机器人当前的位置靠近预设地面介质的边缘,可以控制清洁机器人停止行进;在确定清洁机器人当前的位置靠近预设地面介质的边缘之后,控制清洁机器人1沿第一方向旋转直至清洁机器人检测到预设地面介质,获取清洁机器人当前的坐标并标记为第一轮廓点;然后控制清洁机器人以预定角速度和预定线速度行进,以使清洁机器人按照弧线路径逐渐靠近预设地面介质的边缘,当清洁机器人再次检测到非预设地面介质时,表明清洁机器人再次靠近预设地面介质的边缘,依此类推,重复执行控制清洁机器人沿第一方向旋转的步骤以确定清洁机器人位于预设地面介质上并位于靠近预设地面介质的边缘的位置(即清洁机器人检测预设地面介质的传感器位于预设地面介质正上方并位于靠近预设地面介质的边缘的位置),从而再继续控制清洁机器人以预定的角速度和预定线速度行进,如此循环,以获取其他的轮廓点,直至清洁机器人再次回到第一轮廓点的位置。
在一些实施方式中,可以控制所述预定角速度逐渐减小,可以理解,清洁机器人以预定的角速度和预定线速度行进,且角速度逐渐减小,检测到所述预设地面介质的预设轨迹可以为螺旋轨迹,可以使得清洁机器人探索的范围可以以清洁机器人为中心呈螺旋形逐渐扩大,可以确保所述清洁机器人能够探索到预设地面介质信号,当角速度不变时,预设轨迹为圆弧轨迹,还可以根据情况需要设计为其他轨迹,在此不做限制。
在一些实施方式中,所述预定的角速度的方向由所述第一方向决定。具体的,所述第一方向为以清洁机器人为参照物顺时针方向时,所述预定的角速度的方向为垂直地面向外;所述第一方向为以清洁机器人为参照物逆时针方向时,所述预定的角速度的方向为垂直地面向内。
在一些实施方式中,所述清洁机器人至少设置有刷扫件以及拖擦件的其中一者,其中,所述刷扫件包括边扫件和/或中扫件;
所述控制所述清洁机器人进入所述预设地面介质对应的介质区域范围之前,所述方法还包括:
当所述清洁机器人设置有所述边扫件时,控制所述边扫件进入收起状态;
当所述清洁机器人设置有所述中扫件时,控制所述中扫件进入离地状态;
当所述清洁机器人设置有所述拖擦件时,控制所述拖擦件进入离地状态。
请参照图4,图4为本申请实施例提供的一种清洁机器人的结构示意图。
如图4所示,清洁机器人1设置有刷扫件以及拖擦件12,其中,刷扫件包括边扫件10和中扫件11,边扫件10用于刷扫清洁机器人的覆盖范围的前方两侧的垃圾,中扫件11用于刷扫清洁机器人的覆盖范围的中部区域的垃圾,而拖擦件12则用于对清洁机器人的覆盖范围进行拖擦。
当预设地面介质为地毯,并且清洁机器人1需要进入地毯进行内沿边探索时,在清洁机器人1进入预设地面介质对应的介质区域范围之前,控制边扫件10进入收起状态,并让中扫件11进入离地状态,可以避免清洁机器人1在进入介质区域范围2的过程中,边扫件10以及中扫件11被地毯缠绕阻碍而导致清洁机器人1无法进入地毯;另外,清洁机器人1控制拖擦件12也进入离地状态,则可以避免清洁机器人1进入介质区域范围2之后拖擦件12弄湿地毯。
在一些实施方式中,所述清洁机器人还设置有风机件,所述风机件用于吸取垃圾,所述控制所述清洁机器人进入所述预设地面介质对应的介质区域范围之前,所述方法还包括:
控制所述清洁机器人在预设时长内停止移动,并提高所述风机件的风机转速;
在所述预设时长后,降低所述风机件的风机转速,并控制所述清洁机器人进入所述预设地面介质对应的介质区域范围。
本申请人研究发现,当清洁机器人1控制中扫件11以及拖擦件12进入离地状态的过程中,粘附在中扫件11或者拖擦件12上的垃圾可能会掉落到地面上。此时,控制清洁机器人在原地驻留预设时长,并且提高风机件的风机转速,可以让风机将从中扫件11或者拖擦件12上掉下来的垃圾吸走,避免造成二次污染。在预设时长后,即可降低风机件的风机转速并控制清洁机器人进入介质区域范围2。
在一些实施方式中,预设时长可以设置为5秒、10秒或者15秒,当然,预设时长还可以根据情况需要设置为其他时长,在此不做限制。
在一些实施方式中,所述控制所述清洁机器人进入所述预设地面介质对应的介质区域范围之后,所述方法还包括:控制所述中扫件进入贴地工作状态,并提高所述风机件的风机转速。
如此,在清洁机器人1进入介质区域范围2之后,控制中扫件11进入贴地工作状态,则清洁机器人1在移动过程中,中扫件11可以对预设地面介质进行清扫;而提高风机件的风机转速,可以让清洁机器人1对预设地面介质进行清扫时,清扫的更加干净。
在一些实施方式中,所述清洁机器人还设置有用于驱动所述清洁机器人的驱动件,所述控制所述清洁机器人进入所述预设地面介质对应的介质区域范围之后,所述方法还包括:
在一些实施方式中,所述清洁机器人还设置有用于驱动所述清洁机器人的驱动件,所述控制所述清洁机器人进入所述预设地面介质对应的介质区域范围之后,所述方法还包括:
记录所述驱动件出现打滑状况的打滑次数,并记录所述驱动件出现卡死状况的驱动卡死次数;
当所述打滑次数大于第一预设次数时,或,当所述驱动卡死次数大于第二预设次数,控制所述清洁机器人进行警告提醒。
其中,驱动件用于驱动清洁机器人1执行前进、转向或者后退等移动操作。清洁机器人1在进入介质区域范围2后,开始监测驱动件是否发生打滑情况以及卡死情况,并记录驱动件发生打滑情况的次数作为打滑次数,且记录驱动件发生卡死情况的卡死次数作为驱动卡死次数。
可以理解,如果驱动件在介质区域范围2内出现卡死情况,可能会对清洁机器人1造成损坏;而如果驱动件在介质区域范围2内发生打滑,则会导致清洁机器人1难以移动。因此,当打滑次数大于第一预设次数,或者当清洁机器人1发现驱动卡死次数大于第二预设次数时进行警告提醒,以让察觉到警告提醒的用户帮助清洁机器人1脱离困境,避免损坏清洁机器人1.
在一些实施方式中,第一预设次数可以设置为2次、3次或者5次,第二预设次数可以设置为2次、3次或者5次,当然,第一预设次数与第二预设次数还可以根据情况需要设置为其他次数,在此不做限制。
在一些实施方式中,所述控制所述清洁机器人进入所述预设地面介质对应的介质区域范围之后,所述方法还包括:
当所述清洁机器人设置有所述刷扫件时,监测所述边扫件是否触发电流阈值保护,并记录所述中扫件在出现卡死状况的中扫卡死次数;
当监测到所述边扫件触发电流阈值保护时,控制所述边扫件进入自由状态;
当所述中扫卡死次数大于第三预设次数,控制所述清洁机器人进行警告提醒。
清洁机器人1在进入介质区域范围2后,开始监测边扫件是否触发电流阈值保护情况,并检测中扫件是否发生卡死情况,当中扫件发生卡死情况时,记录中扫件发生卡死情况的卡死次数作为中扫卡死次数。
可以理解,在控制清洁机器人1进入介质区域范围2之后,如果发现边扫件10有触发电流阈值保护的情况,说明预设地面介质对边扫件10的阻力较大,此时,控制边扫件10进入自由状态,则清洁机器人1不会继续控制边扫件10进行刷扫,而是让地面介质带动边扫件10进行自由运动。通过本实施方式所提供的技术方案,可以避免清洁机器人1后续在介质区域范围2内移动的过程中,因为地面介质阻力过大而损坏边扫件10。
另外,如果中扫件11在介质区域范围2内出现卡死情况,可能会对清洁机器人1造成损坏。因此,当清洁机器人1发现中扫卡死次数大于第三预设次数时进行警告提醒,以让察觉到警告提醒的用户帮助清洁机器人1脱离困境,避免损坏清洁机器人1.
在一些实施方式中,第三预设次数可以设置为2次、3次或者5次,还可以根据情况需要设置为其他次数,在此不做限制。
在一些实施方式中,清洁机器人1在进行警告提醒时,可能通过声音提醒、震动提醒、灯光提醒,或者通过手机等终端智能设备进行消息推送提送,另外,还可以根据情况需要采取其他提醒方式,在此不做限制。
在一些实施方式中,所述根据所述沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓,包括:当所述清洁机器人第一次检测到所述预设地面介质时,标记所述清洁机器人当前的位置为第一轮廓点位置;控制所述清洁机器人执行外沿边探索任务,以获取所述预设地面介质的轮廓点,直至所述清洁机器人再次到达所述第一轮廓点位置。可以理解,清洁机器人再次到达第一轮廓点位置时,说明清洁机器人回到了检测到第一轮廓点的位置,对预设地面介质的探索路径已经形成闭环,即清洁机器人已经完成对预设地面介质的探索。可以理解,清洁机器人再次到达第一轮廓点位置,并不限定于清洁机器人一定要回到与第一轮廓点重合的位置,当清洁机器人与第一轮廓点的距离小于预设距离阀值时,也可判定清洁机器人再次到达第一轮廓点。
在一些实施方式中,所述控制所述清洁机器人执行外沿边探索任务,以获取所述预设地面介质的轮廓点,包括:控制所述清洁机器人执行第二预定动作,其中,当所述清洁机器人完成所述第二预定动作时,所述清洁机器人检测到的地面介质为非预设地面介质;控制所述清洁机器人以预定角速度和预定线速度行进,当所述清洁机器人再次检测到所述预设地面介质时,获取所述清洁机器人当前的坐标并标记为所述轮廓点;重复执行所述控制所述清洁机器人执行第二预定动作的步骤,以继续获取所述轮廓点。
示例性的,如图5所示,清洁机器人沿边探索模式为外沿边探索模式,如图5(a)-(b)所示,清洁机器人1首次检测到预设地面介质,记录清洁机器人1的当前位置为第一轮廓点,然后,控制清洁机器人执行第二预定动作,以保证清洁机器人位于预设地面介质之外,且清洁机器人当前的位置靠近预设地面介质的边缘,以保证清洁机器人1接下来的行为是有效的沿边探索行为,接下来清洁机器人执行探索行为的过程中检测到的点能够确定为轮廓点;确定当前清洁机器人位于预设地面介质之外且位于靠近预设地面介质的边缘的位置之后,控制清洁机器人以预定的角速度和预定线速度行进,以使清洁机器人按照曲线路径逐渐靠近预设地面介质的边缘,当清洁机器人再次检测到预设地面介质时,表明清洁机器人再次检测到了轮廓点,依此类推,重复执行控制清洁机器人执行第二预定动作的步骤以确定清洁机器人位于预设地面介质之外并位于靠近预设地面介质的边缘的位置(即清洁机器人检测预设地面介质的传感器位于预设地面介质之外并位于靠近预设地面介质的边缘的位置),从而继续控制清洁机器人以预定角速度和预定线速度行进,如此循环,以继续获取其他的轮廓点。在一些实施方式中,在确定当前清洁机器人位于预设地面介质之外且位于靠近预设地面介质的边缘的位置之后后,还可以控制清洁机器人以预定的角速度和预定线速度行进,且角速度逐渐减小,只要能够使清洁机器人朝靠近预设地面介质的方向探索即可,在此不做限定。可以理解,控制清洁机器人以预定角速度和预定线速度行进,且角速度逐渐减小,可以使得清洁机器人探索的范围可以以清洁机器人为中心呈螺旋形逐渐扩大,可以保证清洁机器人能够探索到预设地面介质,即能够确保清洁机器人能够再次检测预设地面介质的轮廓点,从而顺利进行下一个探索动作继续对预设地面介质进行探索。
在一些实施方式中,所述第二预定动作为控制所述清洁机器人后退直至所述清洁机器人检测到所述非预设地面介质时,继续后退预定距离;或控制所述清洁机器人按预定方向旋转直至所述清洁机器人检测到所述非预设地面介质;或控制所述清洁机器人后退直至所述清洁机器人检测到所述非预设地面介质时,继续后退预定距离后,再控制所述清洁机器人按预定方向旋转预定角度。
示例性的,所述沿边探索模式为外沿边探索模式,清洁机器人可以选择沿边探索的方向,具体的,左沿或右沿,左沿指以清洁机器人行进方向为参考,清洁机器人的左侧靠近预设地面介质边缘执行外沿边探索任务,当探索方向为左沿时,所述第二预定动作中旋转预定角度的方向为顺时针旋转,清洁机器人的线速度方向的变化趋势为向逆时针方向变化(即清洁机器人的曲线形轨迹的延伸方向为逆时针),角速度方向为垂直清洁表面(即地面)向外;如图5(d)-(f)所示,当探索方向为右沿时,所述第二预定动作中旋转预定角度的方向为逆时针旋转,清洁机器的线速度方向的变化趋势为向顺时针方向变化(即清洁机器人的曲线形轨迹的延伸方向为顺时针),角速度方向为垂直机器人平面向外。
请参照图5,图5为本申请实施例提供的一种清洁机器人对预设地面介质执行外沿边探索的场景示意图。
如图5(a)-(b)所示,清洁机器人1首次检测到预设地面介质2,记录清洁机器人1的当前位置为第一轮廓点。如果预设地面介质的介质区域范围2的边缘上没有障碍物,则清洁机器人1绕着介质区域范围2的边沿移动可以回到第一轮廓点,或,当清洁机器人与第一轮廓点的距离小于预设距离阀值时,探索任务执行完成。
清洁机器人1在探索到第一轮廓点后,可能有部分机体进入了介质区域范围2,控制清洁机器人1执行第二预定动作,当清洁机器人1完成第二预定动作时,清洁机器人位于预设地面介质的介质区域范围2之外,即清洁机器人1检测到非预设地面介质,然后控制清洁机器人1以预定的角速度和预定线速度行进,当清洁机器人1再次检测到预设地面介质时,获取清洁机器人1当前的坐标为轮廓点,重复执行第二预定动作及控制清洁机器人1以预定的角速度和预定线速度行进(重复图5(d)-(f)的步骤),以寻找预设地面介质的下一个轮廓点。当清洁机器人1再次到达第一轮廓点时,或,当清洁机器人与第一轮廓点的距离小于预设距离阀值时,探索任务执行完成。本实施例中,在执行外沿边探索模式时,第二预定动作可以是控制所述清洁机器人1后退直至所述清洁机器人检测到非预设地面介质时,继续后退预定距离;第二预定动作还可以是控制清洁机器人1按预定方向旋转直至清洁机器人1检测到所述非预设地面介质;如图5(d)-(e)所示,第二预定动作还可是控制清洁机器人1后退直至清洁机器人1检测到所述非预设地面介质时,继续后退预定距离后,再控制清洁机器人1按预定方向旋转预定角度;通过控制清洁机器人后退预设距离可以确保清洁机器人在执行以预定的角速度和预定线速度行进的过程中,清洁机器人的拖擦件处于所述预设地面介质的外侧,即避免清洁机器人在执行以预定的角速度和预定线速度行进的过程中拖擦件进入介质区域范围而弄湿或污染该预设地面介质,具体的,以圆形清洁机器人为例,后退预设距离与拖布的旋转覆盖范围的正投影超出清洁机器人边缘的最长距离相关;而按预定方向旋转预定角度,可以延长清洁机器人执行以预定的角速度和预定线速度行进的轨迹,即可以减小清洁机器人探索轮廓点的密度,从而可以提高外沿边探索的效率,缩短清洁机器人1完成外沿边探索的时间。在一些实施方式中,在确定当前清洁机器人位于预设地面介质之外且位于靠近预设地面介质的边缘的位置之后,还可以控制清洁机器人以预定的角速度和预定线速度行进,且角速度逐渐减小。
可以理解,控制清洁机器人以预定的角速度和预定线速度行进,且角速度逐渐减小,可以使得清洁机器人探索的范围可以以清洁机器人为中心呈螺旋形逐渐扩大,可以保证清洁机器人能够探索到非预设地面介质,即能够确保清洁机器人能够再次靠近预设地面介质内侧的边缘,从而顺利进行下一个探索动作继续对预设地面介质进行探索。
可以理解,外沿边探索模式下,清洁机器人以预定的角速度和预定线速度行进,检测到所述预设地面介质的形成的轨迹可以为螺旋轨迹、圆弧轨迹,还可以根据情况需要设计为其他轨迹如折线轨迹,在此不做限制。
在一些实施方式中,当所述沿边探索模式为所述外沿边探索模式时,所述根据所述沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓,包括:当所述清洁机器人第一次检测到所述预设地面介质时,标记所述清洁机器人当前的位置为第一轮廓点位置;控制所述清洁机器人沿第二方向执行外沿边探索任务,以获取所述预设地面介质的轮廓点;
当所述清洁机器人检测到障碍物时,控制所述清洁机器人执行第三预定动作,并控制所述清洁机器人沿第三方向执行所述外沿边探索任务,以获取所述预设地面介质的轮廓点,所述第三方向与所述第二方向相反;当所述清洁机器人再次检测到障碍物时,结束所述外沿边探索任务。
可以理解,清洁机器人第一次检测到所述预设地面介质时,标记所述清洁机器人当前的位置为第一轮廓点位置,开始选择左沿或右沿的方向执行外沿边探索任务,当清洁机器人通过激光雷达或碰撞传感器等检测到障碍物时,控制清洁机器人执行第三预定动作,并沿与第二方向相反的第三方向执行外沿边探索任务,具体获取轮廓点的过程与前述外沿边探索任务相同,此处不再赘述,当清洁机器人再次检测到障碍物时,结束外沿边探索任务。由此可知,清洁机器人执行外沿边探索任务受到障碍物的阻碍时,可以控制清洁机器人回到获取第一轮廓点的位置向相反的方向继续执行外沿边探索任务,如此,清洁机器人可以最大程度地对预设地面介质进行沿边探索。
在一些实施方式中,所述第三预定动作为原地掉头;或导航至所述第一轮廓点。可以理解,清洁机器人可以原地掉头,沿与第二方向相反的第三方向继续外沿边探索任务,或导航至第一轮廓点后再沿与第二方向相反的第三方向继续外沿边探索任务。可以理解,原地掉头直接继续外沿边探索任务会对原来已经探索过的部分预设地面介质进行重复探索,因此清洁机器人导航至第一轮廓点后再继续外沿边探索任务相对于原地掉头直接继续外沿边探索任务效率更高。
在一些实施方式中,所述预定角速度逐渐减小,可以理解,清洁机器人以预定的角速度和预定线速度行进,且角速度逐渐减小,检测到所述预设地面介质的预设轨迹可以为螺旋轨迹,可以使得清洁机器人探索的范围可以以清洁机器人为中心呈螺旋形逐渐扩大,可以确保所述清洁机器人能够探索到预设地面介质信号,当角速度不变时,预设轨迹为圆弧轨迹,还可以根据情况需要设计为其他轨迹,在此不做限制。
请参照图6,图6为本申请实施例提供的一种清洁机器人对预设地面介质执行外沿边探索的又一场景示意图。
如图6所示,清洁机器人1以右沿方向对预设地面介质的介质区域范围2进行外沿边探索的过程中,位置20处为第一轮廓点,在位置21处第一次遇到了障碍物,此时,控制清洁机器人原地掉头沿与右沿方向相反的左沿方向继续外沿边探索任务,或,导航至第一轮廓点后再沿与右沿方向相反的左沿方向继续外沿边探索任务,在此不做限制。当清洁机器人1在位置22处第二次遇到障碍物时,沿边探索完成。在这个过程中,清洁机器人1所遇到的障碍物可以为同一个障碍物,也可以为不同的障碍物,在此不做限制。
在一些实施方式中,所述获取所述预设地面介质的轮廓之后,所述方法还包括:
根据所述轮廓点信息确定所述预设地面介质的轮廓。
可以理解,预设地面介质的轮廓由获取到的各个预设地面介质的轮廓点确定,清洁机器人1获取到预设地面介质的轮廓点之后,即可对多个轮廓点进行拟合以得到预设地面介质的轮廓。
在一些实施方式中,所述获取所述预设地面介质的轮廓之后,所述方法还包括:
当所述沿边探索模式为所述外沿边探索模式,且根据所述轮廓点无法确定所述预设地面介质的轮廓时,控制所述清洁机器人根据所述内沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓。
可以理解,例如,预设地面介质至少有一条边缘靠近房间墙壁,清洁机器人1以外沿边探索模式对预设地面介质进行探索时无法对靠近房间墙壁的一条边缘进行探索,则清洁机器人所检测到的轮廓点信息缺失过多,会出现无法确定预设地面介质的轮廓的情况。此时,结合内沿边探索的方式,可以提高预设地面介质的轮廓的完整性。
请参照图7-9,图7-9为本申请实施例提供的一种清洁机器人通过对轮廓点进行连接或拟合处理或图形匹配处理确定预设地面介质的轮廓的场景示意图。
如图7所示,清洁机器人1在内沿边探索模式下对介质区域范围2进行内沿边探索后,确定了多个轮廓点,连接各个轮廓点,即得到了预设地面介质的轮廓。
如图8所示,清洁机器人1在内沿边探索模式下对介质区域范围2进行内沿边探索后,确定了多个轮廓点,对各个轮廓点进行拟合处理,即得到了预设地面介质的比较平滑的轮廓。
请参照图9,图9为本申请实施例提供的一种对预设地面介质的轮廓进行图形匹配处理的场景示意图。
如图9所示,对各个轮廓点连接得到的边界轮廓进行图形匹配,得到一个呈矩形的预设地面介质的轮廓。
可以理解,预设地面介质通常为规则形状,在一些实施方式中,清洁机器人1在连接各个轮廓点后,得到第一图形,并通过计算包围第一图形的最小多边形与第一图形的匹配程度,来确定预设地面介质的轮廓。
示例性的,当清洁机器人1计算到包围第一图形的最小矩形与第一图形的匹配度为98%,而计算到包围第一图形的最小梯形与第一图像的匹配度为60%,则确定最小矩形为预设地面介质的轮廓。
在一些实施方式中,所述根据所述轮廓点确定所述预设地面介质的轮廓之后,所述方法还包括:
根据所述预设地面介质的轮廓确定第一介质区域,并从预构建好的清洁区域地图中获取与所述第一介质区域距离最近的第二介质区域,其中,所述第一介质区域与所述第二介质区域对应的地面介质类型相同;
当所述第一介质区域与所述第二介质区域之间的距离小于或等于预设间隔距离时,在所述清洁区域地图中合并所述第一介质区域与所述第二介质区域。
可以理解,清洁区域地图为清洁机器人1预构建好的、并且用于规划移动路径或者清洁路径的地图。根据预设地面介质的轮廓确定第一介质区域后,即可通过清洁区域地图判断是否存在与第一介质区域的地面介质类型相同的介质区域,如果存在与第一介质区域的地面介质类型相同的介质区域,则从中选取与第一介质区域距离最为接近的第二介质区域,两个介质区域之间的距离可以是两个区域的轮廓点之间的最短距离、最长距离等,此处不作限制。
其中,预设地面介质类型表征地面介质的类型,示例性的,如果第一介质区域的地面介质的类型为地毯类型,则第二介质区域对应的地面介质的类型也为地毯类型。
可以理解,第一介质区域与第二介质区域如果距离非常相近,则第一介质区域与第二介质区域极有可能归属于同一块预设地面介质。这种情况可能是因为该预设地面介质中放置有障碍物造成的。合并第一介质区域与第二介质区域之后,清洁机器人在后续更好的规划行进轨迹或任务,例如,本归属于同一预设地面介质的第一介质区域与第二介质区域,分别被识别合并后,清洁机器人将视为完整的一个介质区域,如果将该预设地面介质间隔开的障碍物被移除后,清洁机器人可以通过一次清洁规划完成对该预设地面介质的清洁,并且原先被障碍物占据的区域也会一同被清洁,无需分别对第一介质区域和第二介质区域规划清洁,不会出现原先被障碍物占据的区域被漏清洁的情况。
请参照图10,图10为本申请实施例提供的一种清洁机器人合并相邻介质区域的场景示意图。
如图10所示,A为清洁机器人1根据预设地面介质的轮廓确定的第一介质区域,B为从清洁区域地图中获取到的与第一介质区域A距离最接近的第二介质区域,当第一介质区域A与第二介质区域B之间的距离小于或等于预设间隔距离时,合并第一介质区域A以及第二介质区域B,得到介质区域C。
在一些实施方式中,预设间隔距离可以设置为20cm、30cm或者40cm,另外,预设间隔距离还可以根据情况需要设置为其他距离,在此不做限制。
在一些实施方式中,所述根据所述轮廓点确定所述预设地面介质的轮廓之后,所述方法还包括:
根据所述预设地面介质的轮廓,控制所述清洁机器人通过所述边扫件和/或所述中扫件件以第一弓形路径对所述预设地面介质进行清洁;
根据所述预设地面介质的轮廓,控制所述清洁机器人通过所述边扫件和/或所述中扫件以第二弓形路径对所述预设地面介质进行清洁,其中,所述第二弓形路径与所述第一弓形路径正交。
可以理解,确定预设地面介质的轮廓后,即可根据预设地面介质的轮廓确定清洁路径。如图11所示,清洁机器人1在依据第一弓形路径以及第二弓形路径进行移动的过程中,通过边扫件10对预设地面介质进行清洁。
另外,第二弓形路径与第一弓形路径正交,则第二弓形路径与第一弓形路径构成井字形路径,因此,清洁机器人1的移动轨迹覆盖了预设地面介质的所有区域,可以避免少扫漏扫。通过本实施方式所提供的技术方案,可以提高清洁机器人1对预设地面介质的清洁效果。
本申请中,当清洁机器人检测到预设地面介质时,获取清洁机器人的状态信息,并根据状态信息确定沿边探索模式,其中,沿边探索模式包括内沿边探索模式以及外沿边探索模式;根据沿边探索模式对预设地面介质进行沿边探索,以获取预设地面介质的轮廓。通过本申请所提供的技术方案,实现了在清洁机器人检测到地面介质为预设地面介质时,控制清洁机器人对预设地面介质进行探索。
相关技术的清洁机器人在对地面介质进行探索时,通常采用路径为折线或圆弧线的方式对预设地面介质进行探索,即控制清洁机器人旋转到预定方向并控制其直行直至清洁机器人检测到目标信号,之后再控制清洁机器人旋转到另一方向并控制清洁机器人远离检测到目标信号的位置,如此反复形成折线形探索路径;或者控制清洁机器人以恒定角速度和线速度进行直至清洁机器人检测到目标信号,之后再控制清洁机器人以恒定角速度和线速度远离检测到目标信号的位置,如此反复形成圆弧形探索路径;而不管是折线形路径探索方式还是圆弧形路径探索方式,探索范围都相对有限,无法兼顾探索的效率与完整性,如图12分别展示了采用折线、圆弧、螺旋轨迹对预设地面介质探索的轨迹。
本申请实施例提供一种地面介质探索方法、清洁机器人及存储介质。其中,该方法应用于清洁机器人,该清洁机器人可以为扫地机,还可以其他智能机器人,在此不做限制。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图13,图13为本申请实施例提供的一种地面介质探索方法的步骤流程示意图。
如图13所示,该地面介质探索方法包括步骤S1至步骤S4。
步骤S1、确定起始位置,所述清洁机器人在所述起始位置时检测到目标地面介质;
在一些实施方式中,清洁机器人在行进过程中通过传感器(如超声波传感器)检测到预设地面介质(如地毯、脚垫等需特殊处理的地面介质)及非预设地面介质,根据不同的探索动作,所述目标介质可以是预设地面介质或非预设地面介质,具体的,当采用外沿边探索动作,所述目标介质为预设地面介质;当采用内沿边探索动作,所述目标介质为非预设地面介质。当采用外沿边探索动作时,将清洁机器人第一次检测到预设地面介质时清洁机器人的位置作为起始位置。如果采用内沿边探索动作,可以将清洁机器人第一次检测到预设地面介质之后,再继续探索并检测到非预设地面介质时清洁机器人的位置作为起始位置。
步骤S2、控制所述清洁机器人执行预定动作;
在所述清洁机器人执行步骤S1或S2的过程中,还包括:获取预设地面介质的轮廓点,并将第一次获取的预设地面介质的轮廓点为第一轮廓点,所述第一轮廓点位置为所述清洁机器人获取到第一个所述轮廓点时清洁机器人的坐标,当清洁机器人的坐标与清洁机器人获取到第一个所述轮廓点时清洁机器人的坐标重合或距离预定距离时,可以确定清洁机器人再次到达第一轮廓点位置。在一些实施方式中,清洁机器人的坐标可以由检测地面介质的传感器的坐标确定。其中,所述预设地面介质的轮廓点为所述清洁机器人执行步骤S1或S2的过程中检测到预设地面介质时清洁机器人的坐标。
在一些实施方式中,所述清洁机器人确定所述起始位置后,执行预定动作,完成进行沿边探索动作的准备动作,不同的探索动作对应的预定动作不同。具体的,当所述清洁机器人采用外沿边探索动作,所述清洁机器人在执行所述步骤S1的过程中将第一次获取到的所述预设地面介质的轮廓点标记为第一轮廓点后,再执行所述步骤S2中的预定动作;当所述清洁机器人采取内沿边探索动作,由于需要确定预设地面介质边缘并调整机器人在开始探索动作的起始位姿,所述清洁机器人在执行所述步骤S2的过程中将执行预定动作过程中第一次获取到的所述预设地面介质的轮廓点标记为第一轮廓点。
步骤S3、控制所述清洁机器人以预定的角速度和预定线速度行进直至所述清洁机器人再次检测到目标信号,其中,所述角速度逐渐减小;
在一些实施方式中,所述清洁机器人以预定的角速度和预定线速度行进且角速度逐渐减小,直至所述清洁机器人再次检测到目标信号;根据不同的探索动作,所述目标信号可以是预设地面介质信号或非预设地面介质信号,具体的,当采用外沿边探索动作,所述目标信号为预设地面介质信号;当采用内沿边探索动作,所述目标信号为非预设地面介质信号。可以理解,控制清洁机器人以预定角速度和预定线速度行进,且控制角速度逐渐减小,可以使得清洁机器人探索的范围可以以清洁机器人为中心呈螺旋形逐渐扩大,可以保证清洁机器人能够探索到预设地面介质,即能够确保清洁机器人能够再次检测预设地面介质的轮廓点,从而顺利进行下一个探索动作继续对预设地面介质进行探索。
步骤S4、重复执行步骤S2和S3;
在一些实施方式中,所述清洁机器人重复执行所述步骤S2和S3,如此循环,以获取预设地面介质的其他的轮廓点。
在一些实施方式中,所述地面介质探索方法还包括:当确定所述清洁机器人再次到达第一轮廓点位置时,结束对所述预设地面介质的探索。所述清洁机器人执行所述步骤S1-S4后,获取了若干个预设地面介质的轮廓点,当所述清洁机器人检测再次到达第一轮廓点时,结束对所述预设地面介质的探索,可以理解,清洁机器人再次到达第一轮廓点位置时,说明清洁机器人回到了检测到第一轮廓点的位置,对预设地面介质的探索路径已经形成闭环,即清洁机器人已经完成对预设地面介质的探索。可以理解,清洁机器人再次到达第一轮廓点位置,并不限定于清洁机器人一定要回到与第一轮廓点重合的位置,当清洁机器人与第一轮廓点的距离小于预设距离阀值时,也可判定清洁机器人再次到达第一轮廓点。
在一些实施方式中,所述地面介质探索方法还包括:所述目标地面介质为预设地面介质;所述步骤S2包括:控制所述清洁机器人后退直至所述清洁机器人检测到非预设地面介质时,继续后退预定距离;或控制所述清洁机器人按预定方向旋转预定角度直至所述清洁机器人检测到所述非预设地面介质;或控制所述清洁机器人后退直至所述清洁机器人检测到所述非预设地面介质时,继续后退预定距离后,再控制所述清洁机器人按预定方向旋转预定角度。
可以理解,当所述目标地面介质为预设地面介质,所述清洁机器人采用的是外沿边探索动作,步骤S2可以是控制所述清洁机器人后退直至所述清洁机器人检测到非预设地面介质时,继续后退预定距离;步骤S2还可以是控制清洁机器人按预定方向旋转直至清洁机器人检测到所述非预设地面介质;如图5(d)-(e)所示,第二预定动作还可是控制清洁机器人后退直至清洁机器人检测到所述非预设地面介质时,继续后退预定距离后,再控制清洁机器人按预定方向旋转预定角度;通过控制清洁机器人后退预设距离,可以确保清洁机器人在执行以预定的角速度和预定线速度行进且角速度逐渐变小的过程中,清洁机器人的拖擦件处于所述预设地面介质的外侧,即避免清洁机器人在执行以预定的角速度和预定线速度行进且角速度逐渐变小的过程中,拖擦件进入介质区域范围而弄湿或污染该预设地面介质,具体的,以圆形清洁机器人为例,后退预设距离与拖布的旋转覆盖范围的正投影超出清洁机器人边缘的最长距离相关;而按预定方向旋转预定角度,可以延长清洁机器人执行以预定的角速度(角速度逐渐减小)和预定线速度行进的轨迹,即可以减小清洁机器人探索轮廓点的密度,从而可以提高外沿边探索的效率,缩短清洁机器人完成外沿边探索的时间。
在一些实施方式中,所述地面介质探索方法还包括:所述目标地面介质为预设地面介质,在所述清洁机器人执行步骤S2和S3的过程中,当所述清洁机器人检测到障碍物时,控制所述清洁机器人原地掉头或导航至所述第一轮廓点;当所述清洁机器人再次检测到障碍物时,结束对所述预设地面介质的探索。
可以理解,当所述清洁机器人采用的是外沿边探索动作,所述目标地面介质为预设地面介质,可以理解,原地掉头直接继续外沿边探索任务会对原来已经探索过的部分预设地面介质进行重复探索,因此清洁机器人导航至第一轮廓点后再继续外沿边探索任务相对于原地掉头直接继续外沿边探索任务效率更高。
请参照图6,图6为本申请实施例提供的一种清洁机器人对预设地面介质执行外沿边探索的又一场景示意图。
如图6所示,清洁机器人1以右沿方向对预设地面介质的介质区域范围2进行外沿边探索的过程中,位置20处为第一轮廓点,在位置21处第一次遇到了障碍物,此时,控制清洁机器人原地掉头沿与右沿方向相反的左沿方向继续外沿边探索任务,或,导航至第一轮廓点20后再沿与右沿方向相反的左沿方向继续外沿边探索任务,在此不做限制。当清洁机器人1在位置22处第二次遇到障碍物时,沿边探索完成。在这个过程中,清洁机器人1所遇到的障碍物可以为同一个障碍物,也可以为不同的障碍物,在此不做限制。
在一些实施方式中,所述地面介质探索方法还包括:所述目标地面介质为非预设地面介质;所述步骤S1包括:确定所述清洁机器人第一次检测到所述预设地面介质;控制所述清洁机器人旋转,实时获取所述清洁机器人旋转的角度及所述清洁机器人对地面介质的检测结果,确定所述清洁机器人对地面介质的检测结果为检测到所述非预设地面介质且确定获取所述清洁机器人旋转的角度小于180°,控制所述清洁机器人停止旋转;确定所述清洁机器人旋转角度到达180°且所述清洁机器人未检测到所述非预设地面介质时,控制所述清洁机器人停止旋转,并控制所述清洁机器人沿当前方向直行,直至所述清洁机器人检测到所述非预设地面介质,并将所述清洁机器人检测到所述非预设地面介质时的位置作为所述起始位置。
可以理解,当清洁机器人采用的是内沿边探索动作,所述目标地面介质为非预设地面介质,可以理解,因为传感器检测结果存在一定的滞后性,清洁机器人第一次检测到预设地面介质时,清洁机器人的大部分可能已经位于预设地面介质上,如果沿边探索模式为内沿边探索模式,为了更快地使清洁机器人去到预设地面介质的边缘,可以控制清洁机器人旋转,快速判断清洁机器人当前的位置是否靠近预设地面介质的边缘,如图2(a)-(b)所示,当清洁机器人检测到非预设地面介质且旋转角度小于180°时,可以确定清洁机器人当前的位置靠近预设地面介质的边缘,此时可以控制清洁机器人停止旋转;如图2(c)-(e)所示,如果清洁机器人旋转角度到达180°时仍未检测到非预设地面介质,则可以确定当前清洁机器人已经位于预设地面介质上,此时可以控制清洁机器人停止旋转,并控制清洁机器人沿当前方向直行,直至清洁机器人检测到非预设地面介质时,确定清洁机器人当前的位置靠近预设地面介质的边缘,可以控制清洁机器人停止行进,以进行接下来的内沿边探索行为。
在一些实施方式中,所述地面介质探索方法还包括:所述目标地面介质为非预设地面介质,所述步骤S2包括:控制所述清洁机器人沿第一方向旋转,直至所述清洁机器人检测到所述预设地面介质。
可以理解,当清洁机器人采用的是内沿边探索动作,所述目标地面介质为非预设地面介质,确定了当前清洁机器人的位置靠近预设地面介质的边缘时,即位于起始位置时,控制清洁机器人沿第一方向旋转,当清洁机器人再次检测到预设地面介质时,可以确定当前清洁机器人的坐标可以标记为第一轮廓点,可以理解,第一方向可以是以清洁机器人为参照物顺时针方向,也可以是以清洁机器人为参照物逆时针方向
本申请实施例提供清洁机器人包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现上述的地面介质探索方法的步骤。
请参阅图14,图14为本申请实施例提供的一种清洁机器人的结构示意性框图。该清洁机器人包括但不限定于扫地机。
如图14所示,该清洁机器人1包括通过系统总线连接的处理器101、存储器和网络接口,其中,存储器可以包括存储介质102和内存储器105,存储介质102可以是非易失性的,也可以是易失性的。
存储介质102可存储操作系统103和计算机程序104。该计算机程序104包括程序指令,该程序指令被执行时,可使得处理器101执行任意一种地面介质探索方法。
处理器101用于提供计算和控制能力,支撑整个清洁机器人的运行。
内存储器105为存储介质102中的计算机程序104的运行提供环境,该计算机程序104被处理器101执行时,可使得处理器101执行任意一种地面介质探索方法。
该网络接口用于进行网络通信,如发送或者获取分配的任务等。本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的清洁机器人的限定,具体的清洁机器人可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器101可以是中央处理单元(Central Processing Unit,CPU),该处理器101还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一些实施方式中,所述处理器101用于运行存储在存储器中的计算机程序104,以实现如下步骤:
当所述清洁机器人检测到预设地面介质时,获取所述清洁机器人的状态信息,并根据所述状态信息确定沿边探索模式,其中,所述沿边探索模式包括内沿边探索模式以及外沿边探索模式;
根据所述沿边探索模式对所述预设地面介质进行沿边探索,获取所述预设地面介质的轮廓。
在一些实施方式中,处理器101在获取所述清洁机器人的状态信息,并根据所述状态信息确定沿边探索模式时,用于实现:
获取所述清洁机器人的配置信息,并根据所述配置信息从所述内沿边探索模式以及所述外沿边探索模式中选取沿边探索模式;
或,获取所述清洁机器人周围的环境信息,并根据所述环境信息从所述内沿边探索模式以及所述外沿边探索模式中选取沿边探索模式。
在一些实施方式中,所述配置信息包括所述清洁机器人的工作模式和/或地面介质清洁功能状态。
在一些实施方式中,处理器101在根据所述沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓时,用于实现:
当所述清洁机器人检测到所述预设地面介质时,控制所述清洁机器人执行内沿边探索任务,以获取所述预设地面介质的轮廓点,直至所述清洁机器人再次到达第一轮廓点位置,所述第一轮廓点位置为所述清洁机器人获取到第一个所述轮廓点的位置。
在一些实施方式中,处理器101在控制所述清洁机器人执行内沿边探索任务,以获取所述预设地面介质的轮廓点时,用于实现:
控制所述清洁机器人执行第一预定动作直至所述清洁机器人检测到非预设地面介质;
控制所述清洁机器人沿第一方向旋转,当所述清洁机器人再次检测到所述预设地面介质时,获取所述清洁机器人当前的坐标并标记为所述轮廓点;
控制所述清洁机器人以预定的角速度和预定线速度行进,当所述清洁机器人再次检测到所述非预设地面介质时,重复执行所述控制所述清洁机器人沿第一方向旋转的步骤,以获取所述轮廓点。
在一些实施方式中,处理器101在控制所述清洁机器人执行第一预定动作直至所述清洁机器人检测到非预设地面介质时,用于实现:
控制所述清洁机器人旋转,实时获取所述清洁机器人旋转的角度及所述清洁机器人对地面介质的检测结果,确定所述清洁机器人对地面介质的检测结果为检测到所述非预设地面介质且确定获取所述清洁机器人旋转的角度小于180°,控制所述清洁机器人停止旋转;确定所述清洁机器人旋转角度到达180°且所述清洁机器人未检测到所述非预设地面介质时,控制所述清洁机器人停止旋转,并控制所述清洁机器人沿当前方向直行,直至所述清洁机器人检测到所述非预设地面介质。
在一些实施方式中,所述角速度的方向根据所述第一方向确定。
在一些实施方式中,所述角速度逐渐减小。
在一些实施方式中,所述清洁机器人至少设置有刷扫件以及拖擦件的其中一者,其中,所述刷扫件包括边扫件和/或中扫件;
当确定所述清洁机器人检测到所述预设地面介质时,所述方法还包括以下至少一种操作:
当所述清洁机器人设置有所述边扫件时,控制所述边扫件进入收起状态;
当所述清洁机器人设置有所述中扫件时,控制所述中扫件进入离地状态;
当所述清洁机器人设置有所述拖擦件时,控制所述拖擦件进入离地状态。
在一些实施方式中,处理器101在根据所述沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓时,用于实现:
当所述清洁机器人第一次检测到所述预设地面介质时,标记所述清洁机器人当前的位置为第一轮廓点位置;
控制所述清洁机器人执行外沿边探索任务,以获取所述预设地面介质的轮廓点,直至所述清洁机器人再次到达所述第一轮廓点位置。
在一些实施方式中,处理器101在控制所述清洁机器人执行外沿边探索任务,以获取所述预设地面介质的轮廓点时,用于实现:
控制所述清洁机器人执行第二预定动作,当所述清洁机器人完成所述第二预定动作时,所述清洁机器人检测到非预设地面介质;
控制所述清洁机器人以预定的角速度和预定线速度行进,当所述清洁机器人再次检测到所述预设地面介质时,获取所述清洁机器人当前的坐标并标记为所述轮廓点;
重复执行所述控制所述清洁机器人执行第二预定动作的步骤,以继续获取所述轮廓点
在一些实施方式中,所述第二预定动作为控制所述清洁机器人后退直至所述清洁机器人检测到所述非预设地面介质时,继续后退预定距离;或控制所述清洁机器人按预定方向旋转直至所述清洁机器人检测到所述非预设地面介质;或制所述清洁机器人后退直至所述清洁机器人检测到所述非预设地面介质时,继续后退预定距离后,再控制所述清洁机器人按预定方向旋转预定角度。
在一些实施方式中,所述角速度逐渐减小
在一些实施方式中,处理器101在根据所述沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓时,用于实现:
当所述清洁机器人第一次检测到所述预设地面介质时,标记所述清洁机器人当前的位置为第一轮廓点位置;
控制所述清洁机器人沿第二方向执行外沿边探索任务,以获取所述预设地面介质的轮廓点;
当所述清洁机器人检测到障碍物时,控制所述清洁机器人执行第三预定动作,并控制所述清洁机器人沿第三方向执行所述外沿边探索任务,以获取所述预设地面介质的轮廓点,所述第三方向与所述第二方向相反;
当所述清洁机器人再次检测到障碍物时,结束所述外沿边探索任务。
在一些实施方式中,所述第三预定动作为原地掉头;或导航至所述第一轮廓点。
在一些实施方式中,处理器101在获取所述预设地面介质的轮廓时,用于实现:
通过对所述轮廓点进行连接或拟合处理或图形匹配处理确定所述预设地面介质的轮廓。
在一些实施方式中,处理器101还用于实现:
当所述清洁机器人执行外沿边探索任务,且根据所述轮廓点无法确定所述预设地面介质的轮廓时,控制所述清洁机器人根据所述内沿边探索模式对所述预设地面介质进行沿边探索,以获取所述预设地面介质的轮廓。
在一些实施方式中,所述根据所述轮廓点确定所述预设地面介质的轮廓之后,处理器101还用于实现:
根据所述预设地面介质的轮廓确定第一介质区域,并从预构建好的清洁区域地图中获取与所述第一介质区域距离最近的第二介质区域,其中,所述第一介质区域与所述第二介质区域对应的地面介质类型相同;
当所述第一介质区域与所述第二介质区域之间的距离小于或等于预设间隔距离时,在所述清洁区域地图中合并所述第一介质区域与所述第二介质区域。
在一些实施方式中,根据所述轮廓点信息确定所述预设地面介质的轮廓之后,处理器101还用于实现:
根据所述预设地面介质的轮廓,控制所述清洁机器人通过所述边扫件和/或所述中扫件以第一弓形路径对所述预设地面介质进行清洁;
根据所述预设地面介质的轮廓,控制所述清洁机器人通过所述边扫件和/或所述中扫件以第二弓形路径对所述预设地面介质进行清洁,其中,所述第二弓形路径与所述第一弓形路径正交。
在一些实施方式中,所述处理器101用于运行存储在存储器中的计算机程序104,以实现如下步骤:
步骤S1:确定起始位置,所述清洁机器人在所述起始位置时检测到目标地面介质;
步骤S2:控制所述清洁机器人执行预定动作;
步骤S3:控制所述清洁机器人以预定的角速度和预定线速度行进直至所述清洁机器人再次检测到目标信号,其中,所述角速度逐渐减小;
步骤S4:重复执行步骤S2和S3;
在所述清洁机器人执行步骤S1或S2的过程中,还包括:获取预设地面介质的轮廓点,并将第一次获取的预设地面介质的轮廓点为第一轮廓点,其中,所述预设地面介质的轮廓点为所述清洁机器人执行步骤S1或S2的过程中检测到预设地面介质时的坐标。
在一些实施方式中,所述处理器101还用于实现:
当确定所述清洁机器人再次到达第一轮廓点位置时,结束对所述预设地面介质的探索。
在一些实施方式中,所述目标地面介质为预设地面介质;所述处理器101在控制所述清洁机器人执行预定动作时,用于实现:
控制所述清洁机器人后退直至所述清洁机器人检测到非预设地面介质时,继续后退预定距离;或
控制所述清洁机器人按预定方向旋转预定角度;或
控制所述清洁机器人后退直至所述清洁机器人检测到所述非预设地面介质时,继续后退预定距离后,再控制所述清洁机器人按预定方向旋转预定角度。
在一些实施方式中,所述处理器101还用于实现:
在所述清洁机器人执行步骤S2和S3的过程中,当所述清洁机器人检测到障碍物时,控制所述清洁机器人原地掉头或导航至所述第一轮廓点;
当所述清洁机器人再次检测到障碍物时,结束对所述预设地面介质的探索。
在一些实施方式中,所述目标地面介质为非预设地面介质;所述处理器101在确定起始位置,所述清洁机器人在所述起始位置时检测到目标地面介质时,用于实现:
确定所述清洁机器人第一次检测到所述预设地面介质;
控制所述清洁机器人旋转,实时获取所述清洁机器人旋转的角度及所述清洁机器人对地面介质的检测结果,确定所述清洁机器人对地面介质的检测结果为检测到所述非预设地面介质且确定获取所述清洁机器人旋转的角度小于180°,控制所述清洁机器人停止旋转;确定所述清洁机器人旋转角度到达180°且所述清洁机器人未检测到所述非预设地面介质时,控制所述清洁机器人停止旋转,并控制所述清洁机器人沿当前方向直行,直至所述清洁机器人检测到所述非预设地面介质,并将所述清洁机器人检测到所述非预设地面介质时的位置作为所述起始位置。
在一些实施方式中,所述处理器101在控制所述清洁机器人执行预定动作时,用于实现:
控制所述清洁机器人沿第一方向旋转,直至所述清洁机器人检测到所述预设地面介质。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述清洁机器人的具体工作过程,可以参考前述地面介质探索方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供一种存储介质,该存储介质为计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序中包括程序指令,所述程序指令被执行时所实现的方法可参照本申请地面介质探索方法的各个实施例。
其中,所述计算机可读存储介质可以是前述实施例所述的清洁机器人的内部存储单元,例如所述清洁机器人的硬盘或内存。所述计算机可读存储介质也可以是所述清洁机器人的外部存储设备,例如所述清洁机器人上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。