CN118000610A - 一种机器人的清洁方法及机器人 - Google Patents
一种机器人的清洁方法及机器人 Download PDFInfo
- Publication number
- CN118000610A CN118000610A CN202410157993.7A CN202410157993A CN118000610A CN 118000610 A CN118000610 A CN 118000610A CN 202410157993 A CN202410157993 A CN 202410157993A CN 118000610 A CN118000610 A CN 118000610A
- Authority
- CN
- China
- Prior art keywords
- robot
- target
- state
- straight line
- climbing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004140 cleaning Methods 0.000 title claims abstract description 95
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000009194 climbing Effects 0.000 claims abstract description 119
- 238000001514 detection method Methods 0.000 claims description 81
- 230000033001 locomotion Effects 0.000 claims description 30
- 238000005259 measurement Methods 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 13
- 239000000428 dust Substances 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010926 purge Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请实施例涉及机器人技术领域,具体涉及一种机器人的清洁方法及机器人。清洁方法包括:检测机器人是否处于爬坡状态,爬坡状态为机器人在目标斜坡上爬升的状态,目标斜坡位于目标平面上,若机器人处于爬坡状态,确定第一干扰直线,第一干扰直线为机器人在目标斜坡上扫描目标平面而得到的直线,当机器人结束爬坡状态时,确定第二干扰直线,第二干扰直线为机器人在目标平面上扫描目标斜坡而得到的直线,在预存的栅格地图中清除第一干扰直线及第二干扰直线,得到目标栅格地图,控制机器人按照目标栅格地图执行清洁操作。由于机器人遇到斜坡时,会在地图中清除被视为障碍物的斜坡和地面,确保机器人能够清扫整个斜坡,从而提高清洁覆盖率。
Description
技术领域
本申请实施例涉及机器人技术领域,具体涉及一种机器人的清洁方法及机器人。
背景技术
相关技术提供的机器人在运动过程中遇到斜坡时,由于机器人会扫描到斜坡,因此会将斜坡作为类似于墙面的障碍物,从而阻碍机器人在斜坡上进行清扫,即使机器人爬上了斜坡,机器人也会扫描到地面,将地面也作为类似于墙面的障碍物,从而阻碍了机器人返回地面上进行清扫,进而会降低清洁覆盖率。
发明内容
本申请实施例的一个目的旨在提供一种机器人的清洁方法及机器人,用于解决相关技术中清洁覆盖率低的技术问题。
在第一方面,本申请实施例提供一种机器人的清洁方法,包括:
检测所述机器人是否处于爬坡状态,所述爬坡状态为所述机器人在目标斜坡上爬升的状态,所述目标斜坡位于目标平面上;
若所述机器人处于爬坡状态,确定第一干扰直线,所述第一干扰直线为所述机器人在所述目标斜坡上扫描所述目标平面而得到的直线;
当所述机器人结束爬坡状态时,确定第二干扰直线,所述第二干扰直线为所述机器人在所述目标平面上扫描所述目标斜坡而得到的直线;
在预存的栅格地图中清除所述第一干扰直线及所述第二干扰直线,得到目标栅格地图;
控制所述机器人按照所述目标栅格地图执行清洁操作。
可选地,获取所述惯性测量单元的俯仰角及所述地面检测传感器采集的地检数据;
根据所述俯仰角,判断所述机器人是否满足第一状态判定条件;
若满足所述第一状态判定条件,则根据所述地检数据,判断所述机器人是否满足第二状态判定条件;
若满足所述第二状态判定条件,则确定所述机器人处于爬坡状态;
若未满足所述第二状态判定条件,则返回执行所述获取所述惯性测量单元的俯仰角及所述地面检测传感器采集的地检数据的步骤。
可选地,所述根据所述俯仰角,判断所述机器人是否满足第一状态判定条件包括:
判断所述俯仰角是否大于预设角度阈值;
若所述俯仰角大于所述预设角度阈值,则确定第一击中点的目标位置,所述第一击中点为所述机器人在当前位置扫描所述目标平面而击中的位置点;
判断在预存的栅格地图中与所述目标位置对应的栅格是否处于占据状态;
若处于占据状态,则判断所述机器人满足所述第一状态判定条件;
若未处于占据状态,则判断所述机器人未满足所述第一状态判定条件并返回执行所述获取所述惯性测量单元的俯仰角及所述地面检测传感器采集的地检数据的步骤。
可选地,所述确定目标位置包括:
获取所述当前位置与所述第一击中点之间的第一直线长度;
根据所述俯仰角及所述第一直线长度,确定所述当前位置与所述第一击中点之间的第一水平距离;
根据所述第一水平距离及所述当前位置,确定目标位置。
可选地,所述根据所述地检数据,判断所述机器人是否满足第二状态判定条件包括:
根据所述地检数据,检测每个所述地面检测传感器的离障高度,所述离障高度为所述机器人与机器人下方的障碍物之间的高度;
根据所述离障高度,判断所述机器人是否由不稳定运动状态变化为稳定运动状态;
若是由不稳定运动状态变化为稳定运动状态,则判断所述机器人满足所述第二状态判定条件;
若不是由不稳定运动状态变化为稳定运动状态,则判断所述机器人未满足所述第二状态判定条件。
可选地,所述确定第一干扰直线包括:
确定所述目标斜坡的斜坡角度,所述斜坡角度为所述目标斜坡的倾斜面与所述目标平面之间的夹角;
获取所述机器人的爬坡起点位置及所述机器人与第二击中点之间的第二直线长度,所述爬坡起点位置为检测到所述机器人处于爬坡状态时记录得到的所述机器人的位置,所述第二击中点为所述机器人在所述爬坡起点位置扫描所述目标平面而击中的位置点;
根据所述斜坡角度及所述第二直线长度,确定所述爬坡起点位置与所述第二击中点之间的第二水平距离;
根据所述第二水平距离及所述爬坡起点位置,确定第一干扰直线。
可选地,所述确定第二干扰直线包括:
获取所述机器人的爬坡终点位置、机身高度及机身半径,所述爬坡终点位置为所述机器人结束爬坡状态时记录得到的所述机器人的位置,所述机身高度为第三击中点与所述目标平面之间的高度,所述第三击中点为所述机器人在所述目标平面扫描所述目标斜坡而击中的位置点;
根据所述机身高度及所述斜坡角度,确定所述第三击中点与所述目标斜坡的坡脚之间的第三水平距离;
根据所述第三水平距离、所述爬坡终点位置及所述机身半径,确定第二干扰直线。
可选地,所述将所述第一干扰直线及所述第二干扰直线在预存的栅格地图中清除,得到目标栅格地图包括:
确定所述第一干扰直线及所述第二干扰直线在所述预存的栅格地图中对应的目标栅格,每个所述目标栅格具有对应的占据概率值,所述占据概率值用于表示所述目标栅格被占据的概率;
将所述目标栅格的占据概率值更新为目标概率值,得到目标栅格地图,所述目标概率值用于表示所述机器人可通行。
可选地,在所述将所述第一干扰直线及所述第二干扰直线在预存的栅格地图中清除,得到目标栅格地图之前,还包括:
判断所述机器人是否结束沿墙操作;
若所述机器人结束沿墙操作,则执行将所述第一干扰直线及所述第二干扰直线在预存的栅格地图中清除,得到目标栅格地图的步骤;
若所述机器人未结束沿墙操作,则返回执行所述检测所述机器人是否处于爬坡状态的步骤。
在第二方面,本申请实施例提供一种非易失性可读存储介质,所述非易失性可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使机器人执行如上所述的机器人的清洁方法。
在第三方面,本申请实施例提供一种机器人,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的机器人的清洁方法。
在本申请实施例提供的机器人的清洁方法中,检测机器人是否处于爬坡状态,爬坡状态为机器人在目标斜坡上爬升的状态,目标斜坡位于目标平面上,若机器人处于爬坡状态,确定第一干扰直线,第一干扰直线为机器人在目标斜坡上扫描目标平面而得到的直线,当机器人结束爬坡状态时,确定第二干扰直线,第二干扰直线为机器人在目标平面上扫描目标斜坡而得到的直线,在预存的栅格地图中清除第一干扰直线及第二干扰直线,得到目标栅格地图,控制机器人按照目标栅格地图执行清洁操作。由于机器人遇到斜坡时,会在地图中清除被视为障碍物的斜坡和地面,确保机器人在清扫斜坡时即使扫描到斜坡或地面也不会停止清扫,从而确保机器人能够清扫整个斜坡,进而提高清洁覆盖率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种机器人的结构示意图;
图2为本申请实施例提供的一种机器人的清洁方法的流程示意图;
图3为本申请实施例提供的一种家庭环境示意图;
图4为本申请另一实施例提供的一种家庭环境示意图;
图5是本申请实施例提供的一种机器人的工作状态示意图;
图6是本申请另一实施例提供的一种机器人的工作状态示意图;
图7是本申请实施例提供的第一干扰直线及第二干扰直线示意图;
图8是本申请实施例提供的一种栅格地图示意图;
图9是本申请另一实施例提供的一种栅格地图示意图;
图10是本申请实施例提供的一种清扫方式示意图;
图11是图2所述的S21的流程示意图;
图12是本申请实施例提供的一种确定目标位置的原理示意图;
图13是本申请实施例提供的一种确定第一干扰直线的原理示意图;
图14是本申请实施例提供的一种确定第二干扰直线的原理示意图;
图15是本申请实施例提供的一种机器人的清洁装置的结构示意图;
图16是图15所示的检测模块151的结构示意图;
图17是图15所示的第一确定模块152的结构示意图;
图18是图15所示的第二确定模块153的结构示意图;
图19是图15所示的清除模块154的结构示意图;
图20是本申请实施例提供的一种控制器的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,如果不冲突,本申请实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。再者,本申请所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
本申请实施例提供一种机器人,机器人可为清洁机器人、搬运机器人、引导机器人、送餐机器人等,清洁机器人包括扫地机器人、洗地机器人、拖地机器人、扫拖一体机器人、吸尘机器人等。
请参阅图1,机器人100包括控制器11、驱动组件12、清洁组件13、墙面检测传感器14、地面检测传感器15、惯性测量单元16及激光雷达17。
控制器11作为机器人100的控制核心,用于控制机器人100完成相关逻辑操作,以及执行如下文所述的机器人的清洁方法。
驱动组件12与控制器11电连接,在本实施例中,驱动组件12受控制器11的控制,驱动机器人100前进或后退,以便完成清洁作业或回充作业等。在一些实施例中,驱动组件12包括左轮驱动单元和右轮驱动单元。以左轮驱动单元为例,左轮驱动单元包括电机、轮驱动机构和左轮,电机的转轴与轮驱动机构连接,左轮与轮驱动机构连接,电机与控制器11电连接,电机接收控制器11发送的控制指令而转动其转轴,并通过轮驱动机构将扭矩传输至左轮,从而实现左轮的转动。于是,在左轮驱动单元与右轮驱动单元的相互配合下,可驱动机器人100前进或后退。
清洁组件13与控制器11电连接,在本实施例中,清洁组件13用于清洁地面,且可被配置成任意合适清洁结构,例如,在一些实施例中,清洁组件13包括清洁电机及辊刷,辊刷的表面设置有清洁部,辊刷通过驱动机构与清洁电机连接,清洁电机与控制器11电连接,控制器11可以向清洁电机发送指令,控制清洁电机驱动辊刷转动,使得其清洁部能够有效地清洁地面。在一些实施例中,清洁组件13还包括集尘盒和吸尘风机,集尘盒与吸尘风机连通,且吸尘风机与控制器11电连接,吸尘风机接收控制器11的控制指令而产生吸力,以便将辊刷转动时搅起的灰尘或垃圾吸入集尘盒内。
墙面检测传感器14设于机器人100侧边,用于检测机器人100与墙壁之间的距离,墙面检测传感器14与控制器11电连接,可将该距离信息传输至控制器11,确保控制器11可以控制机器人100始终贴着墙壁边缘行走,或者在清扫墙边缝隙的过程中控制机器人100始终与墙壁保持一定距离,例如10毫米,如此机器人100可以对墙边缝隙进行更好的清扫,将墙边缝隙的灰尘清理干净。
地面检测传感器15设于机器人100底部,它是机器人100中非常重要的传感器,在机器人100的导航和避障功能中发挥着非常关键的作用,主要用于通过检测机器人100与地面之间高度来检测地面上的障碍和坑洞,地面检测传感器15与控制器11电连接,可将该高度信息传输至控制器11,以便控制器11能够控制机器人100避开这些障碍物,或者防止机器人100遇到台阶时跌落,例如,机器人100行进至台阶边缘时,若检测到机器人100与地面之间的高度超过预设高度阈值,则向控制器11发送信号,控制器11控制机器人100进行转向,改变机器人100前进方向,从而实现防止跌落的目的。
地面检测传感器15可以为采用任意合适测距方法的传感器,例如红外线测距或激光测距等,其中,采用红外线测距的地面检测传感器15通常由反射式红外线探测器和红外线LED灯组成,反射式红外线探测器能够检测红外线LED发出的光线,当光线被地面的障碍物反射时,反射式红外线探测器会接收到反射光信号,从而检测到机器人100与地面之间的高度;采用激光测距的地面检测传感器15利用超声波测得机器人100与地面之间的高度。
在一些实施例中,地面检测传感器15的数量为至少两个,例如三个或四个等。可以理解的是,当机器人100在平整地面上行走时,多个地面检测传感器15检测到机器人100与地面之间的距离都是一个固定值,此时多个地面检测传感器15都未处于悬空状态,悬空状态是指地面检测传感器20检测到机器人100与地面之间的距离大于预设高度阈值时的状态,当机器人100在不平整地面上行走时,例如行走至地面上的一个斜坡时,由于斜坡与地面之间存在落差,一个或多个地面检测传感器15可能会处于悬空状态,亦即,机器人100由平整地面行走至斜坡上的过程中,多个地面检测传感器15将由同时未处于悬空状态变为不同时未处于悬空状态,最后又变为同时未处于悬空状态。
惯性测量单元16与控制器11电连接,它在机器人100中的作用主要是实时检测机器人100的运动变化信息,如角速率、加速度、方位等,并将这些信息给到控制器11进行处理后,可以解算出机器人100的位置和姿态,从而实现机器人100的定位、避障、路径规划、导航等。在一些实施例中,惯性测量单元16包含一个3轴加速度计和一个3轴陀螺仪,3轴加速度计和3轴陀螺仪分别用来测量机器人100在三维空间中的加速度和角速度,从而解算出机器人100的位置和姿态。惯性测量单元16还可以检测机器人100的倾斜和突然碰撞等情况,从而避免机器人100跌落或者发生其他意外。
激光雷达17与控制器11电连接,它可向周围环境发射激光并根据从物体反射回来的信号时间差来计算激光雷达17与物体之间的距离,并将距离信息给到控制器11进行处理,确保控制器110控制机器人100行走至障碍物前方时及时避开障碍物,防止机器人100与障碍物发生碰撞。激光雷达17还可通过不断旋转扫描,采集机器人100周围环境的实时环境数据并传输至控制器11,控制器11可以根据实时环境数据进行环境感知和定位,并通过地图构建算法处理实时环境数据来生成地图,其中,地图构建算法可以为诸如SLAM(Simultaneous Localization and Mapping,即时定位与地图构建)算法等任意类型算法,控制器11还可以不断地从激光雷达17获取实时环境数据来不断地更新和优化地图,有利于机器人100逐渐学习并优化清扫路径,提高清扫效率。
本实施例提供的地图可为栅格地图或其它图形化的地图。当地图为栅格地图时,地图由多个栅格组成。为了能够体现出环境中物体的分布情况,可以给每个栅格设置对应的占据概率值,占据概率值为栅格对应的区域被占据的概率值,占据概率值越大,说明该栅格对应的区域被占据的概率越大,占据概率值越小,说明该栅格对应的区域被占据的概率越小,因此占据概率值可体现对应的栅格的状态,栅格的状态用于表示环境中相应像素点的情况。单个栅格的状态可为以下一种:空闲状态、占据状态、未知状态。其中,空闲状态用于表示对应的像素点属于环境中无障碍物占据的区域的像素,占据状态用于表示对应的像素点属于环境中被障碍物占据的区域的像素,未知状态用于表示对应的像素点属于环境中未知区域的像素。为了方便描述,可以将空闲状态对应的栅格类型、占据状态对应的栅格类型、未知状态对应的栅格类型分别确定为空闲栅格、占据栅格、未知栅格。在一些实施例中,空闲栅格对应的占据概率值、占据栅格对应的占据概率值、未知栅格对应的占据概率值分别为0.49、0.99、0。
本申请实施例提供一种机器人的清洁方法。请参阅图2,机器人的清洁方法包括:
S21、检测机器人是否处于爬坡状态,爬坡状态为机器人在目标斜坡上爬升的状态,目标斜坡位于目标平面上;
本步骤中,目标斜坡为机器人需要清扫的、具有一定坡度的倾斜平面,目标平面可以为诸如地面、地台等平面,例如,请结合图3及图4,图3所示的家庭环境包括主卧、卫生间、次卧、阳台、客厅及厨房,客厅的一墙角设有目标斜坡200,目标斜坡200的相邻两侧面与墙角的相邻两侧面相抵,目标斜坡200倾斜面21由坡顶22延伸至坡脚23,坡脚23与客厅的地面300(目标平面)接触。在一些实施例中,控制器控制机器人执行区域沿墙操作时实时检测机器人是否处于爬坡状态,控制器可以实时获取来自惯性测量单元、激光雷达或地面检测传感器的检测数据,并根据这些检测数据实时检测机器人是否处于爬坡状态,例如,控制器可以结合惯性测量单元及激光雷达的检测数据实时检测机器人是否处于爬坡状态,或者,控制器可以结合惯性测量单元、激光雷达及地面检测传感器的检测数据实时检测机器人是否处于爬坡状态。区域沿墙操作是指在目标区域内沿着墙壁边缘进行清扫的操作,目标区域可以由机器人根据预设规则进行确定,亦可以由用户指定。
S22、若机器人处于爬坡状态,确定第一干扰直线,第一干扰直线为机器人在目标斜坡上扫描目标平面而得到的直线;
本步骤中,第一干扰直线为在栅格地图中阻碍机器人在目标斜坡上清扫时返回到目标平面上进行清扫的直线,该直线可以对应多个占据栅格。机器人处于爬坡状态时,请结合图5及图7,机器人位于目标斜坡上,此时激光雷达旋转扫描时会扫描到目标平面,由于目标斜坡的倾斜面与目标平面之间的夹角及激光雷达的安装角度是一定的,因此在机器人爬升过程中,激光雷达发射的激光会不断击中目标平面上某些固定的位置点,这些固定的位置点即可认为是形成第一干扰直线line1的位置点。第一干扰直线line1的存在会让控制器误认为目标平面存在类似于墙面的障碍物,若控制器不在栅格地图中清除第一干扰直线line1,则控制器根据栅格地图控制机器人执行清扫操作时,不会越过第一干扰直线line1对应的位置进行清扫,阻碍机器人从目标斜坡上返回到目标平面上进行全面清扫。
S23、当机器人结束爬坡状态时,确定第二干扰直线,第二干扰直线为机器人在目标平面上扫描目标斜坡而得到的直线;
本步骤中,机器人处于爬坡状态时,控制器可以实时检测机器人是否结束爬坡状态,可以理解的是,机器人结束爬坡状态时,机器人未位于目标斜坡上而位于诸如地面等目标平面上。控制器可以实时获取来自惯性测量单元、激光雷达或地面检测传感器的检测数据,并根据这些检测数据实时检测机器人是否结束爬坡状态,例如,控制器可以根据惯性测量单元的检测数据实时检测机器人是否结束爬坡状态,或者,控制器可以结合惯性测量单元及激光雷达的检测数据实时检测机器人是否结束爬坡状态,或者,控制器可以根据地面检测传感器的检测数据实时检测机器人是否结束爬坡状态。
第二干扰直线为在栅格地图中阻碍机器人目标平面上清扫时爬到目标斜坡上进行清扫的直线,该直线可以对应多个占据栅格。请结合图6及图7,机器人位于目标斜坡前方时,激光雷达旋转扫描时会扫描到目标斜坡,由于目标斜坡的倾斜面与目标平面之间的夹角及激光雷达的安装角度是一定的,因此在机器人朝着目标斜坡行走的过程中,激光雷达发射的激光会不断击中目标斜坡上某些固定的位置点,这些固定的位置点即可认为是形成第二干扰直线line2的位置点。第二干扰直线line2的存在会让控制器误认为目标斜坡存在类似于墙面的障碍物,若控制器不在栅格地图中清除第二干扰直线line2,则控制器根据栅格地图控制机器人执行清扫操作时,不会越过第二干扰直线line2对应的位置进行清扫,阻碍机器人从目标平面爬到目标斜坡上对整个目标斜坡进行全面清扫。
S24、在预存的栅格地图中清除第一干扰直线及第二干扰直线,得到目标栅格地图;
本步骤中,控制器执行区域沿墙操作时,会根据从激光雷达获取的环境数据生成并不断地更新栅格地图,每次更新后的栅格地图被存储于控制器的存储器中。由于机器人尚未爬上目标斜坡时,机器人在目标平面上朝着目标斜坡行走的过程中激光雷达会扫描到目标斜坡,激光雷达发射的激光分别击中目标斜坡上的多个位置点,由于该多个位置点会被重复击中,因此在控制器生成的栅格地图中,该多个位置点在栅格地图中对应的栅格的占据概率值会升高,最终这些栅格的占据概率值升高至可表示占据状态的占据概率值,请参阅图8,这些栅格(图8左侧的黑色格子)的类型都为占据栅格。可以理解的是,由于机器人尚未爬上目标斜坡时,激光雷达不会扫描到目标平面,因此在栅格地图中与目标平面对应的栅格的状态几乎都为空闲状态。
当机器人爬上目标斜坡后,激光雷达在机器人爬坡过程中会扫描到目标平面,激光雷达发射的激光分别击中目标平面上的多个位置点,由于该多个位置点会被重复击中,因此在控制器生成的栅格地图中,该多个位置点在栅格地图中对应的栅格的占据概率值会升高,最终这些栅格的占据概率值升高至可表示占据状态的占据概率值,如图8所示,这些栅格(图8右侧的黑色格子)类型都为占据栅格。因此,机器人结束爬坡状态时,控制器预存的栅格地图中存在由激光雷达扫描到目标斜坡上的多个位置点对应到栅格地图中的占据栅格所形成的第一干扰直线,以及由激光雷达扫描到目标平面上的多个位置点对应到栅格地图中的占据栅格所形成的第二干扰直线。
控制器在预存的栅格地图中清除第一干扰直线及第二干扰直线时,确定第一干扰直线及第二干扰直线在预存的栅格地图中对应的目标栅格,每个目标栅格具有对应的占据概率值,此时每个目标栅格对应的占据概率值都用于表示机器人在这些目标栅格对应的区域不可通行,例如每个目标栅格对应的占据概率值都为0.99,接着控制器可以将目标栅格的占据概率值更新为目标概率值,例如将第一干扰直线对应的目标栅格的占据概率值降低预设阈值或直接配置为一个用于表示空闲状态的任意占据概率值,以将这些目标栅格的占据概率值更新为目标概率值,例如目标概率值为0.49,并且将第二干扰直线对应的目标栅格的占据概率值也降低预设阈值或直接配置为一个用于表示空闲状态的任意占据概率值,同样将这些目标栅格的占据概率值更新为目标概率值。因此,请参阅图9,在预存的栅格地图中清除第一干扰直线及第二干扰直线后,得到的目标栅格地图中将不会存在第一干扰直线及第二干扰直线。
S25、控制机器人按照目标栅格地图执行清洁操作。
本步骤中,由于目标栅格地图中已不存在第一干扰直线及第二干扰直线的干扰,因此消除了控制器控制机器人在斜坡上清扫的阻碍,当控制机器人按照目标栅格地图执行清洁操作时,即使激光雷达扫描到第一干扰直线或第二干扰直线对应的位置点,这些位置点对应的栅格的栅格状态也不会重新变为占据状态,于是,此时控制器可以使用任意合适的路径规划算法,按照目标栅格地图对需要清扫的区域进行任意清扫方式,例如弓字形清扫、回字形清扫等,请参阅图10,图10给出了弓字形清扫的其中一种清扫方式。
由于机器人遇到斜坡时,会在地图中清除被视为障碍物的斜坡和地面,确保机器人在清扫斜坡时即使扫描到斜坡或地面也不会停止清扫,从而确保机器人能够清扫整个斜坡,进而提高清洁覆盖率。
在一些实施例中,请参阅图11,S21包括:
S211、获取惯性测量单元的俯仰角及地面检测传感器采集的地检数据;
本步骤中,俯仰角为平行于机器人机身轴线并指向机器人前方的向量与目标平面之间的夹角,地检数据为用于检测机器人与机器人底部的障碍物之间的距离的物理参数,可以理解的是,机器人底部的障碍物可以为目标平面,亦可以不为目标平面,例如可以为目标斜坡。
S212、根据俯仰角,判断机器人是否满足第一状态判定条件;
本步骤中,由于机器人处于爬坡状态时,俯仰角会发生较大变化,因此俯仰角是检测机器人是否爬坡状态的一个重要参考参数,但是,由于惯性测量单元采集的数据可能出现异常或机器人可能爬上诸如落地扇底座等障碍物时,俯仰角也可能会发生较大变化,因此,若直接采用俯仰角检测机器人是否爬坡状态存在误检的可能性。在一些实施例中,控制器可以先使用俯仰角进行初步检测,初步检测通过后再进行进一步检测,如此能够提高检测准确性。
在一些实施例中,控制器先判断俯仰角是否大于预设角度阈值,预设角度阈值可以根据实际需求进行设置,例如可以将预设角度阈值设置为15度,若检测到俯仰角大于预设角度阈值,则控制器可以利用该俯仰角及从激光雷达获取的检测数据来确定第一击中点的目标位置,第一击中点为机器人在当前位置扫描目标平面而击中的位置点,接着控制器判断在预存的栅格地图中与目标位置对应的栅格是否为占据状态,若为占据状态,则判断机器人满足第一状态判定条件,若不为占据状态,则返回执行S211。
在一些实施例中,控制器确定目标位置时,获取当前位置与第一击中点之间的第一直线长度,根据俯仰角及第一直线长度,确定当前位置与第一击中点之间的第一水平距离,根据第一水平距离及当前位置,确定目标位置。
举例而言,请参阅图12,控制器根据激光雷达的检测数据确定机器人的当前位置A1与第一击中点B之间的第一直线长度为L1,接着根据公式d1=L1*cosθ确定当前位置A1与第一击中点B之间的第一水平距离d1,由于控制器生成的栅格地图是二维的,因此控制器根据当前位置A1投影于目标平面上的二维坐标A2及第一水平距离d1即可确定第一击中点B的二维坐标,该二维坐标用于表示第一击中点B在栅格地图中的位置,即目标位置。
由于控制器每更新一次栅格地图都是需要时间的,因此,虽然机器人在当前位置A1扫描到目标平面的第一击中点B,但是此时第一击中点B的位置在栅格地图中对应的占据概率值不会立即从0.49跳变到0.99,只有当激光雷达在一段时间内重复扫描到第一击中点B时,该位置的在栅格地图中的占据概率值才会变为0.99并存储于更新后的栅格地图中。而机器人遇到目标平面上的小障碍物时即使机器人的俯仰角大于预设角度阈值,但是激光雷达在一段时间内一般不会重复扫描到目标平面上相同的一个点,在此种情况下,控制器下次更新栅格地图时这个点在栅格地图中对应的栅格的状态可能不会变为占据状态,通常只有机器人在一个斜坡上爬升时,激光雷达在一段时间才会重复扫描到目标平面上相同的一个点,在此种情况下,控制器下次更新栅格地图时这个点在栅格地图中对应的栅格的状态就有可能变为占据状态,因此,通过此种方式,本实施例能够更加准确检测机器人是否处于爬坡状态,从而提高检测准确性。
S213、若机器人满足第一状态判定条件,则根据地检数据,判断机器人是否满足第二状态判定条件;
可以理解的是,如前所述,由于目标位置的确定需要使用惯性测量单元的俯仰值,而俯仰角可能是不够准确的,则确定出的目标位置也可能是不够准确的,或者存在可能影响第一状态判定条件判断的情况,或者存在其它即使机器人满足第一状态判定条件但实际上机器人未处于爬坡状态的情况,因此,即使确定机器人满足第一状态判定条件也不能说明机器人一定就处于爬坡状态,于是,控制器判断机器人满足第一状态判定条件后,进一步根据从地面检测传感器获取的地检数据,判断机器人是否满足第二状态判定条件。
在一些实施例中,控制器判断机器人是否满足第二状态判定条件时,根据地检数据,检测每个地面检测传感器的离障高度,离障高度为机器人与机器人下方的障碍物之间的高度,根据离障高度,判断机器人是否由不稳定运动状态变化为稳定运动状态,若是由不稳定运动状态变化为稳定运动状态,则判断机器人满足第二状态判定条件,否则判断机器人未满足第二状态判定条件。
举例而言,机器人包括三个地面检测传感器,如前所述,当机器人在目标地面上行走时,三个地面检测传感器检测到机器人与机器人下方的障碍物(目标平面)之间的高度,即离障高度都是落入预设高度范围内的,说明三个地面检测传感器一直未处于悬空状态,也说明机器人处于稳定运动状态,当机器人从目标平面爬上目标斜坡瞬间,可能会存在至少一个地面检测传感器处于悬空状态,此时机器人处于不稳定运动状态,当机器人完全爬上目标斜坡时,三个地面检测传感器检测到机器人与目标斜坡的倾斜面之间的高度都落入预设高度范围内,此时机器人重新处于稳定运动状态。因此,控制器通过检测机器人是否存在由不稳定运动状态变为稳定运动状态的变化过程,即可进一步验证机器人是否真正处于爬坡状态,从而能够进一步提高机器人爬坡状态检测准确性。
S214、若机器人满足第二状态判定条件,则确定机器人处于爬坡状态;
因此,本实施例结合了多类传感器的检测数据检测机器人是否处于爬坡状态,能够避免出现判断机器人是否处于爬坡状态时存在误检的情况,从而有利于提高机器人爬坡状态检测的可靠性和准确性。
S215、若机器人未满足第二状态判定条件,则返回执行S211。
在一些实施例中,控制器检测到机器人处于爬坡状态后,可以通过判断机器人是否仍然满足第一状态判定条件或第二状态判定条件来检测机器人是否结束爬坡状态,例如,当机器人的俯仰角小于预设角度阈值,判断机器人未满足第一状态判定条件,据此来确定机器人已结束爬坡状态。
在一些实施例中,控制器确定第一干扰直线时,可确定目标斜坡的斜坡角度,斜坡角度为目标斜坡的倾斜面与目标平面之间的夹角,获取机器人的爬坡起点位置及机器人与第二击中点之间的第二直线长度,爬坡起点位置为检测到机器人处于爬坡状态时记录得到的机器人的位置,第二击中点为机器人在爬坡起点位置扫描目标平面而击中的位置点,根据斜坡角度及第二直线长度,确定爬坡起点位置与第二击中点之间的第二水平距离,根据第二水平距离及爬坡起点位置,确定第一干扰直线。
在本实施例中,控制器检测到机器人处于爬坡状态时,获取此时从惯性测量单元获取到的俯仰角,将该俯仰角确定为目标斜坡的斜坡角度,并且记录下此时机器人的当前位置作为爬坡起点位置。
请结合图13,此时机器人位于爬坡起点位置C1处,控制器根据激光雷达的检测数据确定机器人的爬坡起点位置C1与第二击中点D之间的第二直线长度为L2,接着根据公式d2=L2*cosα确定爬坡起点位置C1与第二击中点D之间的第二水平距离d2,由于控制器生成的栅格地图是二维的,因此控制器根据爬坡起点位置C1投影于目标平面上的二维坐标C2及第二水平距离d2即可确定第二击中点D的二维坐标,例如爬坡起点位置C1投影于目标平面上的二维坐标C2减去或加上第二水平距离d2后得到第二击中点D的二维坐标,其中,具体是减去还是加上可以根据实际设计进行确定。
可以理解的是,由于机器人位于爬坡起点位置C1时激光雷达会扫描到目标平面上的多个第二击中点,因此控制器也根据上述方法可以确定每个第二击中点的二维坐标,再根据多个第二击中点的二维坐标拟合成一条直线,该直线即为第一干扰直线。
在一些实施例中,控制器也可以采用诸如广度优先搜索算法(Breadth FirstSearch,BFS)等遍历算法,以第二击中点D的二维坐标为起点向周围遍历,探索全局的坐标或领域内的数据,从而确定第一干扰直线。
在一些实施例中,控制器确定第二干扰直线时,获取机器人的爬坡终点位置、机身高度及机身半径爬坡终点位置为机器人结束爬坡状态时记录得到的机器人的位置,机身高度为第三击中点与目标平面之间的高度,第三击中点为机器人在目标平面扫描目标斜坡而击中的位置点,根据机身高度及斜坡角度,确定第三击中点与目标斜坡的坡脚之间的第三水平距离,根据第三水平距离、爬坡终点位置及机身半径,确定第二干扰直线。
请结合图14,此时机器人位于爬坡终点位置E1处,机身高度(第三击中点F1与目标平面之间的高度)为h1,控制器根据公式d3=h1/tanα确定第三击中点F1与目标斜坡的坡脚之间的第三水平距离d3,由于控制器生成的栅格地图是二维的,因此控制器根据第三水平距离d3、爬坡终点位置E1及机身半径d4即可确定机器人在目标平面上扫描目标斜坡的位置点的二维坐标,例如,将爬坡终点位置E1投影在目标平面上的二维坐标E2减去或加上第三水平距离d3与机身半径d4的和后得到第三击中点F1投影在目标平面上的二维坐标F2,其中,具体是减去还是加上可以根据实际设计进行确定。
在一些实施例中,控制器可以采用诸如广度优先搜索算法等任意合适的遍历算法,以第三击中点F1投影在目标平面上的的二维坐标F2为起点向周围遍历,探索全局的坐标或邻域内的数据,从而确定第二干扰直线。
在一些实施例中,控制器将第一干扰直线及第二干扰直线在预存的栅格地图中清除,得到目标栅格地图之前,还判断机器人是否结束区域沿墙操作,若机器人结束区域沿墙操作,则执行将第一干扰直线及第二干扰直线在预存的栅格地图中清除,得到目标栅格地图的步骤,若机器人未结束区域沿墙操作,则返回执行检测机器人是否处于爬坡状态的步骤。
由于机器人执行区域沿墙操作时,可能会遇到多个目标斜坡,因此,控制器检测到一个目标斜坡后,并不能马上执行清扫操作,而是要将在执行区域沿墙操作的过程中检测到所有目标斜坡并在区域沿墙操作结束时,将每个目标斜坡对应的第一干扰直线及第二干扰直线清除,才可执行清扫操作,因此,本实施例能够避免出现漏检情况,从而能够提高清扫覆盖率。
在一些实施例中,控制器未检测机器人处于爬坡状态或者检测到机器人处于爬坡状态但未结束爬坡状态时,实时判断机器人是否结束区域沿墙操作,若机器人结束区域沿墙操作,则直接执行清扫操作,若机器人未结束区域沿墙操作,则返回到检测机器人是否处于爬坡状态的步骤。
因此,本实施例能够确保机器人在执行区域沿墙操作时遇到异常情况也可实现沿墙闭环并执行清扫操作。
需要说明的是,在上述各个实施方式中,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员根据本申请实施方式的描述可以理解,不同实施方式中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。
本申请实施例提供一种机器人的清洁装置。其中,机器人的清洁装置可以为软件模块,所述软件模块包括若干指令,其存储在存储器内,处理器可以访问该存储器,调用指令进行执行,以完成上述各个实施方式所阐述的机器人的清洁方法。
在一些实施方式中,机器人的清洁装置亦可以由硬件器件搭建成的,例如,机器人的清洁装置可以由一个或两个以上的芯片搭建而成,各个芯片可以互相协调工作,以完成上述各个实施方式所阐述的机器人的清洁方法。再例如,机器人的清洁装置还可以由各类逻辑器件搭建而成,诸如由通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、单片机、ARM(Acorn RISC Machine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合而搭建成。
请参阅图15,清洁装置1500包括检测模块151、第一确定模块152、第二确定模块153、清除模块154及控制模块155。
检测模块151用于检测机器人是否处于爬坡状态,爬坡状态为机器人在目标斜坡上爬升的状态,目标斜坡位于目标平面上,第一确定模块152用于检测到机器人处于爬坡状态,确定第一干扰直线,第一干扰直线为机器人在目标斜坡上扫描目标平面而得到的直线,第二确定模块153用于当机器人结束爬坡状态时,确定第二干扰直线,第二干扰直线为机器人在目标平面上扫描目标斜坡而得到的直线,清除模块154用于在预存的栅格地图中清除第一干扰直线及第二干扰直线,得到目标栅格地图,控制模块155用于控制机器人按照目标栅格地图执行清洁操作。
在一些实施例中,请参阅图16,检测模块151包括第一获取单元1511、第一判断单元1512、第二判断单元1513及第一确定单元1514。
第一获取单元1511用于获取惯性测量单元的俯仰角及地面检测传感器采集的地检数据,第一判断单元1512用于根据俯仰角,检测机器人是否满足第一状态判定条件,第二判断单元1513用于在满足第一状态判定条件时,根据地检数据,检测机器人是否满足第二状态判定条件,第一确定单元1514用于当机器人满足第二状态判定条件时,确定机器人处于爬坡状态,当机器人满足第二状态判定条件时,确定机器人未处于爬坡状态。
在一些实施例中,第一判断单元1512具体用于:判断俯仰角是否大于预设角度阈值,若俯仰角大于预设角度阈值,则确定第一击中点的目标位置,第一击中点为机器人在当前位置扫描目标平面而击中的位置点,判断在预存的栅格地图中与目标位置对应的栅格是否为占据状态,若为占据状态,则判断机器人满足第一状态判定条件,若不为占据状态,则判断机器人未满足第一状态判定条件。
在一些实施例中,第二判断单元1513具体用于:根据地检数据,检测每个地面检测传感器的离障高度,离障高度为机器人与机器人下方的障碍物之间的高度,根据离障高度,判断机器人是否由不稳定运动状态变化为稳定运动状态,若是由不稳定运动状态变化为稳定运动状态,则判断机器人满足第二状态判定条件,若不是由不稳定运动状态变化为稳定运动状态,则判断机器人未满足第二状态判定条件。
在一些实施例中,请参阅图17,第一确定模块152包括第二确定单元1521、第二获取单元1522、第三确定单元1523及第四确定单元1524。
第二确定单元1521用于确定目标斜坡的斜坡角度,斜坡角度为目标斜坡的倾斜面与目标平面之间的夹角,第二获取单元1522用于获取机器人的爬坡起点位置及机器人与第二击中点之间的第二直线长度,爬坡起点位置为检测到机器人处于爬坡状态时记录得到的机器人的位置,第二击中点为机器人在爬坡起点位置扫描目标平面而击中的位置点,第三确定单元1523用于根据斜坡角度及第二直线长度,确定爬坡起点位置与第二击中点之间的第二水平距离,第四确定单元1524用于根据第二水平距离及爬坡起点位置,确定第一干扰直线。
在一些实施例中,请参阅图18,第二确定模块153包括第三获取单元1531、第五确定单元1532及第六确定单元1533。
第三获取单元1531用于获取机器人的爬坡终点位置、机身高度及机身半径,爬坡终点位置为机器人结束爬坡状态时记录得到的机器人的位置,机身高度为第三击中点与目标平面之间的高度,第三击中点为机器人在目标平面扫描目标斜坡而击中的位置点,第五确定单元1532用于根据机身高度及斜坡角度,确定第三击中点与目标斜坡的坡脚之间的第三水平距离,第六确定单元1533用于根据第三水平距离、爬坡终点位置及机身半径,确定第二干扰直线。
在一些实施例中,请参阅图19,清除模块154包括第七确定单元1541及更新单元1542。
第七确定单元1541用于确定第一干扰直线及第二干扰直线在预存的栅格地图中对应的目标栅格,每个目标栅格具有对应的占据概率值,占据概率值用于表示目标栅格被占据的概率,更新单元1542用于将目标栅格的占据概率值更新为目标概率值,得到目标栅格地图,目标概率值用于表示机器人可通行。
需要说明的是,上述机器人的清洁装置可执行本申请实施方式所提供的机器人的清洁方法,具备执行方法相应的功能模块和有益效果。未在机器人的清洁装置实施方式中详尽描述的技术细节,可参见本申请实施方式所提供的机器人的清洁方法。
请参阅图20,图20为本申请实施例提供一种控制器的硬件结构示意图。如图20所示,控制器11包括一个或多个处理器111及存储器112,图20中以一个处理器111为例。
处理器111被配置为支持该计算机设备执行上述方法实施例中的方法中相应的功能。处理器111可以是中央处理器(central processing unit,CPU),网络处理器(networkprocessor,NP),硬件芯片或者其任意组合。上述硬件芯片可以是专用集成电路(application specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器112用于存储程序代码等。存储器112可以包括易失性存储器(volatilememory,VM),例如随机存取存储器(random access memory,RAM);存储器也可以包括非易失性存储器(non-volatile memory,NVM),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器112还可以包括上述种类的存储器的组合。
存储器112可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的机器人的清洁方法对应的程序指令/模块。处理器111通过运行存储在存储器112中的非易失性软件程序、指令以及模块,从而执行机器人的清洁方法和机器人的清洁装置的各种功能应用以及数据处理,即实现上述方法实施例提供的机器人的清洁方法以及机器人的清洁装置的各个模块或单元的功能。
存储器112可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序。存储数据区可存储根据机器人的清洁装置的使用所创建的数据等。在一些实施例中,存储器112可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至机器人的清洁装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器112中,当被所述一个或者多个处理器111执行时,执行上述任意方法实施例中的机器人的清洁方法,例如,执行以上方法实施例描述的方法步骤,实现以上装置实施例描述的模块的功能。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被计算机执行时使所述计算机执行如前述实施例所述的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only memory,ROM)或随机存储记忆体(Random Accessmemory,RAM)等。
最后要说明的是,本申请可以通过许多不同的形式来实现,并不限于本说明书所描述的实施例,这些实施例不作为对本申请内容的额外限制,提供这些实施方式的目的是使对本申请的公开内容的理解更加透彻全面。并且在本申请的思路下,上述各技术特征继续相互组合,并存在如上所述的本申请不同方面的许多其它变化,均视为本申请说明书记载的范围;进一步地,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本申请所附权利要求的保护范围。
Claims (11)
1.一种机器人的清洁方法,其特征在于,包括:
检测所述机器人是否处于爬坡状态,所述爬坡状态为所述机器人在目标斜坡上爬升的状态,所述目标斜坡位于目标平面上;
若所述机器人处于爬坡状态,确定第一干扰直线,所述第一干扰直线为所述机器人在所述目标斜坡上扫描所述目标平面而得到的直线;
当所述机器人结束爬坡状态时,确定第二干扰直线,所述第二干扰直线为所述机器人在所述目标平面上扫描所述目标斜坡而得到的直线;
在预存的栅格地图中清除所述第一干扰直线及所述第二干扰直线,得到目标栅格地图;
控制所述机器人按照所述目标栅格地图执行清洁操作。
2.根据权利要求1所述的方法,其特征在于,所述机器人配置有惯性测量单元及至少两个地面检测传感器,所述检测机器人是否处于爬坡状态包括:
获取所述惯性测量单元的俯仰角及所述地面检测传感器采集的地检数据;
根据所述俯仰角,判断所述机器人是否满足第一状态判定条件;
若满足所述第一状态判定条件,则根据所述地检数据,判断所述机器人是否满足第二状态判定条件;
若满足所述第二状态判定条件,则确定所述机器人处于爬坡状态;
若未满足所述第二状态判定条件,则返回执行所述获取所述惯性测量单元的俯仰角及所述地面检测传感器采集的地检数据的步骤。
3.根据权利要求2所述的方法,其特征在于,所述根据所述俯仰角,判断所述机器人是否满足第一状态判定条件包括:
判断所述俯仰角是否大于预设角度阈值;
若所述俯仰角大于所述预设角度阈值,则确定第一击中点的目标位置,所述第一击中点为所述机器人在当前位置扫描所述目标平面而击中的位置点;
判断在预存的栅格地图中与所述目标位置对应的栅格是否为占据状态;
若为占据状态,则判断所述机器人满足所述第一状态判定条件;
若不为占据状态,则判断所述机器人未满足所述第一状态判定条件并返回执行所述获取所述惯性测量单元的俯仰角及所述地面检测传感器采集的地检数据的步骤。
4.根据权利要求3所述的方法,其特征在于,所述确定第一击中点的目标位置包括:
获取所述当前位置与所述第一击中点之间的第一直线长度;
根据所述俯仰角及所述第一直线长度,确定所述当前位置与所述第一击中点之间的第一水平距离;
根据所述第一水平距离及所述当前位置,确定第一击中点的目标位置。
5.根据权利要求2所述的方法,其特征在于,所述根据所述地检数据,判断所述机器人是否满足第二状态判定条件包括:
根据所述地检数据,检测每个所述地面检测传感器的离障高度,所述离障高度为所述机器人与所述机器人下方的障碍物之间的高度;
根据所述离障高度,判断所述机器人是否由不稳定运动状态变化为稳定运动状态;
若是由不稳定运动状态变化为稳定运动状态,则判断所述机器人满足所述第二状态判定条件;
若不是由不稳定运动状态变化为稳定运动状态,则判断所述机器人未满足所述第二状态判定条件。
6.根据权利要求1所述的方法,其特征在于,所述确定第一干扰直线包括:
确定所述目标斜坡的斜坡角度,所述斜坡角度为所述目标斜坡的倾斜面与所述目标平面之间的夹角;
获取所述机器人的爬坡起点位置及所述机器人与第二击中点之间的第二直线长度,所述爬坡起点位置为检测到所述机器人处于爬坡状态时记录得到的所述机器人的位置,所述第二击中点为所述机器人在所述爬坡起点位置扫描所述目标平面而击中的位置点;
根据所述斜坡角度及所述第二直线长度,确定所述爬坡起点位置与所述第二击中点之间的第二水平距离;
根据所述第二水平距离及所述爬坡起点位置,确定第一干扰直线。
7.根据权利要求6所述的方法,其特征在于,所述确定第二干扰直线包括:
获取所述机器人的爬坡终点位置、机身高度及机身半径,所述爬坡终点位置为所述机器人结束爬坡状态时记录得到的所述机器人的位置,所述机身高度为第三击中点与所述目标平面之间的高度,所述第三击中点为所述机器人在所述目标平面扫描所述目标斜坡而击中的位置点;
根据所述机身高度及所述斜坡角度,确定所述第三击中点与所述目标斜坡的坡脚之间的第三水平距离;
根据所述第三水平距离、所述爬坡终点位置及所述机身半径,确定第二干扰直线。
8.根据权利要求1所述的方法,其特征在于,所述将所述第一干扰直线及所述第二干扰直线在预存的栅格地图中清除,得到目标栅格地图包括:
确定所述第一干扰直线及所述第二干扰直线在所述预存的栅格地图中对应的目标栅格,每个所述目标栅格具有对应的占据概率值,所述占据概率值用于表示所述目标栅格被占据的概率;
将所述目标栅格的占据概率值更新为目标概率值,得到目标栅格地图,所述目标概率值用于表示所述机器人可通行。
9.根据权利要求1至8任一项所述的方法,其特征在于,在所述将所述第一干扰直线及所述第二干扰直线在预存的栅格地图中清除,得到目标栅格地图之前,还包括:
判断所述机器人是否结束沿墙运动;
若所述机器人结束沿墙运动,则执行将所述第一干扰直线及所述第二干扰直线在预存的栅格地图中清除,得到目标栅格地图的步骤;
若所述机器人未结束沿墙运动,则返回执行所述检测所述机器人是否处于爬坡状态的步骤。
10.一种非易失性可读存储介质,其特征在于,所述非易失性可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使机器人执行如权利要求1至9任一项所述的机器人的清洁方法。
11.一种机器人,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至9任一项所述的机器人的清洁方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410157993.7A CN118000610A (zh) | 2024-02-01 | 2024-02-01 | 一种机器人的清洁方法及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410157993.7A CN118000610A (zh) | 2024-02-01 | 2024-02-01 | 一种机器人的清洁方法及机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118000610A true CN118000610A (zh) | 2024-05-10 |
Family
ID=90946689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410157993.7A Pending CN118000610A (zh) | 2024-02-01 | 2024-02-01 | 一种机器人的清洁方法及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118000610A (zh) |
-
2024
- 2024-02-01 CN CN202410157993.7A patent/CN118000610A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6633568B2 (ja) | 自律式カバレッジロボット | |
CN112656311B (zh) | 移动机器人区域清扫 | |
CN106489104B (zh) | 用于移动机器人中的光学量程传感器的使用的系统和方法 | |
US9400501B2 (en) | Simultaneous localization and mapping for a mobile robot | |
CN110974091B (zh) | 清洁机器人及其控制方法、存储介质 | |
EP3271784B1 (en) | Localization and mapping using physical features | |
EP2888603B1 (en) | Robot positioning system | |
CN108007452B (zh) | 根据障碍物更新环境地图的方法、装置及机器人 | |
CN110908378B (zh) | 一种机器人沿边的方法及机器人 | |
CN111399516B (zh) | 一种机器人路径规划方法、装置以及机器人 | |
JP5826795B2 (ja) | 自律移動体、その制御システム、および自己位置検出方法 | |
CN110870720B (zh) | 自主移动机器人的导航 | |
CN112363513B (zh) | 一种基于深度信息的障碍物分类避障控制方法 | |
CN108628318B (zh) | 拥堵环境检测方法、装置、机器人及存储介质 | |
US12019147B2 (en) | Apparatus and methods for multi-sensor SLAM systems | |
CN113841098A (zh) | 使用线阵列检测物体 | |
US11960296B2 (en) | Method and apparatus for autonomous mobile device | |
US20220047135A1 (en) | Robot cleaner and method for operating same | |
CN117169848A (zh) | 过滤玻璃噪点的方法、激光雷达及机器人 | |
CN118000610A (zh) | 一种机器人的清洁方法及机器人 | |
EP4349234A1 (en) | Self-moving device | |
CN118151656A (zh) | 回到基站的方法、移动机器人及存储介质 | |
CN114115241B (zh) | 障碍物检测方法、基于障碍物的导航方法、装置和机器人 | |
CN118092446A (zh) | 一种分区清扫排序方法及机器人 | |
CN114510049A (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 |