控制机器人的方法与流程

文档序号:18950948发布日期:2019-10-23 02:12阅读:239来源:国知局
本发明涉及智能机器人,尤其涉及一种控制机器人的方法。
背景技术
::对于清洁机器人来说,其任务就是清洁所属环境的每一个空间,因此如何快速并有效率地提升清洁覆盖率就显示格外重要。在成本与技术考量下,大部分的清洁机器人多属于随机覆盖式的路径模式。在此路径模式下不需定位也没有地图供参考,因此无法对路径进行规划,所以其移动路径的行为需仰赖内部的移动运算。而运算的优劣最终也会决定其清洁效率的高低。随机覆盖式的检测寻路系统指的是远距离感应加上近距离碰撞检测的检测寻路系统,其根据一定的移动规则法(例如随机、多边形、螺旋、沿边、或是牛耕轨迹等)进行尝试性移动覆盖。当检测到障碍物时,则转向避开障碍物后继续移动。所述移动方式是以时间换取空间的低成本策略,缺点是需要花费大量的时间。随机覆盖式的检测寻路系统可分两种,一种为不采用惯性导航传感器,另一种则是采用惯性导航传感器。不采用惯性导航传感器的检测寻路系统的优点是覆盖率较高,而缺点是没有空间规划,导致重复打扫使得时间过长。采用惯性导航传感器的检测寻路系统的优点是在能有效定位的情况下效率较好,但若在无法准确定位且多障碍的环境下,也未能有效移动到未覆盖区域,导致在同一空间重复移动甚至无法跨越空间区域,因而覆盖率低无法达成预期的清洁效果。技术实现要素:本发明提供一种控制机器人的方法,结合沿边模式与牛耕模式,以进行高效率的清扫。本发明的控制机器人的方法,其用以控制机器人的行走方式。所述方法包括:在沿边模式下,执行下述动作,即,驱使机器人朝向沿边方向并紧贴于沿边物行走,判断是否检测到路径转折点或已行走预设距离,以及在检测到路径转折点或已行走预设距离时,切换至牛耕模式;在牛耕模式下,驱使机器人基于已沿着沿边物行走的移动距离来进行牛耕式移动。在本发明一实施例中,在牛耕模式下,驱使机器人基于已沿着沿边物行走的移动距离来进行牛耕式移动的步骤包括:在牛耕范围内,以垂直于沿边方向的方式而朝向与沿边方向相反的方向进行牛耕式移动,并在牛耕范围内的牛耕式移动结束之后,驱使机器人转向至沿边方向,而于沿着沿边方向移动至模式切换位置之后,切换至沿边模式,其中模式切换位置为在检测到路径转折点或已行走预设距离时的位置。在本发明一实施例中,在牛耕模式下,驱使机器人基于已沿着沿边物行走的一段移动距离来进行牛耕式移动的步骤包括:朝向与沿边方向相反的方向一段行走所述移动距离后,在牛耕范围内,以垂直于沿边方向的方式而朝向沿边方向来进行牛耕式移动,并且在牛耕范围内的牛耕式移动结束且机器人回到模式切换位置之后,自牛耕模式切换至沿边模式。在本发明一实施例中,在牛耕模式下,驱使机器人基于已沿着沿边物行走的移动距离来进行牛耕式移动的步骤包括:在牛耕范围内,以平行于沿边方向的方式进行牛耕式移动,并在牛耕范围内的牛耕式移动结束且机器人回到模式切换位置之后,自牛耕模式切换至沿边模式。在本发明一实施例中,在牛耕模式下,驱使机器人基于已沿着沿边物行走的移动距离来进行牛耕式移动的步骤包括:先往垂直于沿边方向的方向行走一段宽度距离之后,在牛耕范围内,以平行于沿边方向的方式进行牛耕式移动,并在牛耕范围内的牛耕式移动结束且机器人回到模式切换位置之后,自牛耕模式切换至沿边模式。在本发明一实施例中,上述控制机器人的方法还包括:在沿边模式下,记录紧贴于沿边物行走时的起始时间;在检测到路径转折点或已行走预设距离时,记录结束时间;以及在切换至牛耕模式之后,基于所记录的起始时间、结束时间以及紧贴于沿边物行走的移动速度,决定牛耕式移动的牛耕范围。在本发明一实施例中,上述在检测到路径转折点时,还包括:判断自紧贴于沿边物行走时的起始时间开始是否经过预设时间,倘若未经过预设时间,则不切换至牛耕模式,在路径转折点进行转向而紧贴于另一沿边物行走,并执行判断是否检测到路径转折点或已行走预设距离的步骤。在本发明一实施例中,上述控制机器人的方法还包括:在沿边模式下,倘若已行走预设距离仍未检测到路径转折点,则切换至牛耕模式。在本发明一实施例中,上述控制机器人的方法还包括:在结束沿边移动之前的剩余时间,记录结束时间,并且切换至牛耕模式。在本发明一实施例中,上述机器人包括至少一沿边感测模块。上述控制机器人的方法还包括:可通过上述沿边感测模块来感测沿边物,让机器人得以紧贴于沿边物行走,且通过上述沿边感测模块来检测沿边物是否已经结束准备进入转角,其中转角也就是路径转折点。在本发明一实施例中,上述机器人包括至少一障碍物感测模块,其配置于机器人的前侧。上述控制机器人的方法还包括:通过上述障碍物感测模块来检测机器人于沿边方向移动时是否存在有死角,其中死角也就是路径转折点。基于上述,本发明可以使机器人在沿边模式下行走时,通过传感器所提供的资讯以及机器人本身的移动距离,有效检测可进行牛耕式移动的区域以动态决定是否切换至牛耕模式。据此可有效避免重复性覆盖,快速提升整体的清洁覆盖率。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。附图说明图1是依照本发明一实施例的机器人的方块图;图2是依照本发明一实施例的控制机器人的方法流程图;图3a~图3d是依照本发明一实施例的多种控制机器人的方法的示意图;图4是依照本发明一实施例的控制机器人的方法流程图。附图标记说明100:机器人;110:移动机构;120:控制器;130:存储器;140:沿边感测模块;150:障碍物感测模块;170:控制模块;30:沿边物;31:沿边方向;32a~32d:牛耕范围;301~304:牛耕路径;a~d:位置;s201~s205:控制机器人的方法各步骤;s401~s413:控制机器人的方法各步骤。具体实施方式现今自动移动机器人的应用层面越来越广,用于扫地的机器人更是已经深入居家成为新一代白色家电。本提案提出一种控制机器人扫地的方法,可快速提升空间的清洁率覆盖。为了使本发明的内容更为明了,以下特举实施例作为本发明确实能够据以实施的范例。图1是依照本发明一实施例的机器人100的方块图。请参照图1,机器人100包括移动机构110、控制器120、存储器130、沿边感测模块140以及障碍物感测模块150。控制器120耦接至移动机构110、存储器130、沿边感测模块140以及障碍物感测模块150。移动机构110例如为具有马达的轮子,通过马达来驱动轮子进行转动,使得机器人100进行行走。控制器120例如为中央处理单元(centralprocessingunit,cpu)、图像处理单元(graphicprocessingunit,gpu)、物理处理单元(physicsprocessingunit,ppu)、可程序化的微处理器(microprocessor)、嵌入式控制芯片、数字信号处理器(digitalsignalprocessor,dsp)、特殊应用集成电路(applicationspecificintegratedcircuits,asic)或其他类似装置。存储器130例如是任意型式的固定式或可移动式随机存取存储器(randomaccessmemory,ram)、只读存储器(read-onlymemory,rom)、快闪存储器(flashmemory)、安全数字卡(securedigitalmemorycard,sd)、硬盘或其他类似装置或这些装置的组合。存储器130存储有控制模块170。控制模块170例如是由至少一程序码片段所组成,而控制器120通过读取存储器130内的控制模块170来执行控制机器人的方法。沿边感测模块140例如为距离传感器,配置于机器人100本体的两侧。控制器120会搭配沿边感测模块140的感测结果来控制移动机构110,使得机器人100在沿边模式下紧贴沿边物(例如墙壁、椅脚、桌边或床沿等)行走。即,通过沿边感测模块140来感测沿边物,以驱使机器人100紧贴于沿边物行走,并且检测沿边物在沿边方向上是否存在转角(路径转折点)。沿边感测模块140用以感测距离,使机器人100可以不接触到沿边物的方式进行移动,或者也可采取直接接触沿边物的方式进行移动。障碍物感测模块150例如为距离传感器,配置于机器人100本体的前方。控制器120会通过障碍物感测模块150来检测机器人100于沿边方向上是否存在有死角(路径转折点)。在此,沿边感测模块140以及障碍物感测模块150可视情况来决定所要安装的数量。控制器120搭配沿边感测模块140以及障碍物感测模块150可判断沿边物上是否存在路径转折点(例如转角或死角)。底下即搭配上述机器人100进一步来描述控制机器人100的方法各步骤。图2是依照本发明一实施例的控制机器人的方法流程图。在步骤s201中,机器人100进入沿边模式。接着,在步骤s202中,驱使机器人100朝向沿边方向并紧贴于沿边物行走。之后,在步骤s203中,控制器120判断是否检测到路径转折点或已行走预设距离。若未检测到路径转折点或已行走预设距离,重复执行步骤s203直到机器人100检测到路径转折点或已行走预设距离。在此,路径转折点例如为死角或是转角。在检测到路径转折点或已行走预设距离时,如步骤s204所示,切换至牛耕模式。在此,机器人100进行沿边行走时,不一定要在检测到路径转折点才切换至牛耕模式,也可以在行走一段预设距离之后,便切换至牛耕模式。例如,在沿边模式下,倘若机器人100已行走预设距离仍未检测到路径转折点,则可直接切换至牛耕模式。在此,为了避免在检测到路径转折点时所经过的区域不足以进行牛耕式移动,因此,可进一步设定为:在检测到路径转折点时,判断自紧贴于沿边物行走时的起始时间开始是否经过一段预设时间。倘若未经过所述预设时间,则不切换至牛耕模式,并于路径转折点进行转向而紧贴于另一沿边物行走,并继续执行步骤s203。例如,在检测到路径转折点时,判断自起始时间起是否经过10秒。在判断经过10秒之后,才切换至牛耕模式;否则,即便检测到路径转折点也不会切换至牛耕模式,而继续在沿边模式下行走。之后,在牛耕模式下,如步骤s205所示,驱使机器人100进行牛耕式移动。所谓的牛耕式移动以横向移动而言,假设第一行是由左向右移动,第二行则由右向左移动,下一行又是由左向右移动,以此类推;又,假设第一行是由右向左移动,第二行则由左向右移动,下一行又是由右向左移动,以此类推。另外,以直向移动的牛耕式移动而言,假设第一行是由上往下移动,第二行则由下往上移动,下一行又是由上往下移动,以此类推;又,假设第一行是由下往上移动,第二行则由上往下移动,下一行又是由下往上移动,以此类推。而在完成牛耕式移动之后,控制器120会控制移动机构110,通过移动机构110使得机器人100回到模式切换位置,即,在检测到路径转折点的位置或是已行走预设距离时的位置,使得机器人100能够在回到沿边模式后接续尚未行走过的区域行走。图3a~图3d是依照本发明一实施例的多种牛耕式移动方法的示意图。图3a~图3d分别表示进行牛耕式移动所行走的牛耕路径301~304。图3a与图3b是以垂直于沿边物30的方式而在牛耕范围32a、32b内来进行牛耕式移动,图3c与图3d是以平行于沿边物30的方式而在牛耕范围32c、32d内来进行牛耕式移动。在切换至牛耕模式之后,控制器120会先决定牛耕式移动的牛耕范围32a~32d。例如,控制器120执行下述动作:在沿边模式下,控制器120记录紧贴于沿边物行走时的起始时间tstart;而在检测到路径转折点或是已行走预设距离时,记录结束时间tend;在切换至牛耕模式之后,基于起始时间tstart、结束时间tend以及紧贴于沿边物行走的移动速度v,来决定牛耕式移动的牛耕范围。例如,牛耕范围的长度l=(tend-tstart)×v。牛耕范围的宽度w=2/3×l,并且宽度最长不超过150cm。在图3a中,机器人100朝向沿边方向31并紧贴于沿边物30行走。假设控制器120在位置a(即,模式切换位置)检测到路径转折点,此时,控制器120会自沿边模式切换至牛耕模式,以驱使机器人100在牛耕范围32a内以垂直于沿边方向31的方式而朝向与沿边方向31相反的方向进行牛耕式移动,如牛耕路径301所示。在牛耕范围32a内的牛耕式移动结束之后,控制器120驱使机器人100转向至沿边方向31,而沿着沿边方向31移动至位置a之后,才切换至沿边模式继续行走。在图3b中,机器人100朝向沿边方向31并紧贴于沿边物30行走。假设控制器120在位置b(即,模式切换位置)检测到路径转折点,此时,控制器120会自沿边模式切换至牛耕模式,以驱使机器人100朝向与沿边方向31相反的方向行走一段移动距离(在沿边模式下所行走的距离)后,在牛耕范围32b内,以垂直于沿边方向31的方式而朝向沿边方向31来进行牛耕式移动,如牛耕路径302所示。并且,在牛耕范围32b内的牛耕式移动结束且机器人100回到位置b之后,自牛耕模式切换至沿边模式。在图3c中,机器人100朝向沿边方向31并紧贴于沿边物30行走。假设控制器120在位置c(即,模式切换位置)检测到路径转折点,此时,控制器120会自沿边模式切换至牛耕模式,以驱使机器人100在牛耕范围32c内,以平行于沿边方向31的方式进行牛耕式移动,如牛耕路径303所示。并且,在牛耕范围32c内的牛耕式移动结束且机器人100回到位置c之后,自牛耕模式切换至沿边模式。在图3d中,机器人100朝向沿边方向31并紧贴于沿边物30行走。假设控制器120在位置d(即,模式切换位置)检测到路径转折点,此时,控制器120会自沿边模式切换至牛耕模式,以驱使机器人100先往垂直于沿边方向31的方向行走一段宽度距离(为牛耕范围32d的宽度)之后,在牛耕范围32d内,以平行于沿边方向31的方式进行牛耕式移动,如牛耕路径304所示。并且,在牛耕范围32d内的牛耕式移动结束且机器人100回到位置d之后,自牛耕模式切换至沿边模式。在此,图3a~图3d所示的牛耕路径301~304仅为举例说明,牛耕式移动的方式也可为其他方式,并不以此为限。底下再举一例来更进一步说明控制机器人的方法的更详细的步骤。图4是依照本发明一实施例控制机器人的方法流程图。请同时参照图1及图2,在步骤s401中,驱使机器人100开始沿边移动。此时,记录开始进行沿边移动的时间t0。接着,在步骤s402中,在检测到沿边物(在此以墙面为例)之后,进入沿边模式。此时,控制器120控制移动机构110使得机器人100自动转向平行于墙面,并且记录下此时的起始时间tstart。之后,在步骤s403中,在沿边模式下,机器人100紧贴于沿边物行走。并且,在步骤s404中,机器人100通过控制器120、沿边感测模块140以及障碍物感测模块150来判断是否检测到路径转折点。此外,可进一步设定一预设时间。例如,可进一步根据墙面是否为平整或非平整来设定预设时间,即,在平整墙面的情况下预设时间设定为tstable,在非平整墙面的情况下预设时间设定为tnon-stable。若检测到路径转折点,记录一结束时间tend,并且,在步骤s405中,判断是否经过预设时间。倘若未经过预设时间(tstable或tnon-stable),表示所行走过的移动距离并不足以来进行牛耕式移动,因此不切换至牛耕模式,而在步骤s409中,于路径转折点进行转向。之后,返回步骤s403,并且重新设定预设时间。另外,除了检测到死角、转角等路径转折点会记录下结束时间tend之外,也可在沿边移动即将结束的前几秒(例如为前2秒),记录结束时间tend,并切换至牛耕模式。若检测到路径转折点且已经过预设时间,表示所行走过的移动距离能够进行牛耕式移动,则在步骤s406中,切换至牛耕模式。并且,基于起始时间tstart、结束时间tend以及紧贴于沿边物行走的移动速度v,来决定牛耕式移动的牛耕范围。之后,在步骤s407中,于牛耕范围内进行牛耕式移动(如图3c~图3d所示)。接着,在步骤s408中,结束牛耕式移动,离开牛耕范围。之后,在步骤s409中,于路径转折点进行转向。返回步骤s404,若未检测到路径转折点,则在步骤s410中,控制器120判断是否已行走预设距离。若未行走预设距离,则返回步骤s403,在沿边模式下,紧贴于沿边物行走。另一方面,在步骤s410中,若未检测到路径转折点,但已行走了预设距离,则在步骤s411中,切换至牛耕模式。之后,在步骤s412,在牛耕范围内进行牛耕式移动(如图3c~图3d所示)。并且,在步骤s413中,在牛耕范围内的牛耕式移动结束之后,离开牛耕范围。最后再回到步骤s403,在沿边模式下,紧贴于沿边物行走。当机器人100进入沿边移动时,还可进一步区分墙面是否为平整或非平整墙面。针对平整或非平整墙面有各自预先设定的移动时间。一旦机器人100行走了所设定的移动时间之后,发现前方即将进入死角、转角或是沿边移动结束之前,就会触发牛耕式移动。而进行牛耕式移动的牛耕范围可根据前面沿边移动的总距离来自动调整其长度与宽度。并且,当牛耕式移动结束后,会自动判断原来墙面的方向并转向墙面,移动至墙面后,切换回沿边模式,并持续行走直到沿边移动的时间结束。综上所述,所述实施方式使机器人在沿边模式下行走时,能够有效检测可进行牛耕式移动的区域。当所述区域被牛耕式移动完全覆盖完毕后,再回复到沿边模式来接续先前的沿边移动,以此方式,可避免重复性覆盖,并可快速提高该空间的清洁覆盖率。据此,对于远距离感应加上近距离碰撞检测的检测寻路系统,本发明改进了随机检测寻路系统中,缺少空间规划而导致重复打扫缺乏效率的缺点,以及牛耕式检测寻路系统之中在无法有效定位情况下所造成的无法跨区的缺点,提供了一种可以判断适合进行牛耕式清扫区域的方法,让使用者得以用低成本的方式获得高效率的清扫效果。虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属
技术领域
:中技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求所界定者为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1