本发明涉及一种行走机器人,更具体地,涉及一种能够在预定操作区域内进行作业的行走机器人、控制该行走机器人的方法以及包括该行走机器人的行走机器人系统。
背景技术:
:目前市场上存在各种各样的行走机器人,如用于割草的机器人、用于扫地的机器人和用于拖地的机器人等。以割草机器人为例,主流的割草机器人通常采用沿随机路径行走的模式进行割草作业。这种沿随机路径行走的割草模式能够较好地满足规则草坪的修剪,然而,要达到一定的遍历程度(例如至少99%遍历),需要较长的时间。并且,这种割草模式会使得大量区域被重复性修剪,从而造成能源利用率低下和设备加速折旧。针对上述问题,本领域已经提出了一些按照规则路径行走的行走机器人。例如,可以在割草机器人上安装高精度的定位装置(如gps模块)。通过定位装置的精确定位,割草机器人能够按照预定的规则路径,例如往复曲折路线或螺旋路线等,行走,从而实现高效率遍历的效果。然而,这种高效率遍历的效果主要依赖于割草机器人上安装的定位装置的高精度,这使得这种割草机器人的成本大大增加。另一方面,如果定位精度不足,则难以保证割草机器人按照预定的路线进行作业,从而导致在相邻行进路径之间出现遗漏。技术实现要素:针对上述问题中的至少一个,一方面,本发明提出了一种通过确定行走机器人的操作区域的特征点来便于行走机器人遍历整个操作区域的方案。另一方面,本发明还提出了一种即使在低精度定位的情况下也能实现操作区域的高效遍历的方案。根据本发明的一些方面,提供了一种行走机器人。该行走机器人包括:主体;以及控制机构,该控制机构包括存储器,该存储器内存储有预定操作区域的地图信息,该地图信息包括该预定操作区域内的至少一个边界特征点的坐标,该控制机构被配置为控制该主体以使得其在该预定操作区域内执行如下操作,包括:控制该主体以第一方向沿着该预定操作区域的边界线行走,当该主体到达该至少一个边界特征点中的一个边界特征点附近时,控制该主体以调整该主体以使得该主体沿着该边界线在该边界特征点处的法线方向进入该预定操作区域,以及当该主体沿着该边界线在该边界特征点处的法线方向进入该预定操作区域达一预定距离时,调整该主体以使得该主体沿着该边界线在该边界特征点处的切线方向行走。根据本发明的另一些方面,提供了一种行走机器人系统。该行走机器人系统包括如上所述的行走机器人和基站,该基站包括馈电模块,用于向与其相连的边界线馈电。根据本发明的又一些方面,提供了一种控制行走机器人的方法。该行走机器人内存储有预定操作区域的地图信息,该地图信息包括该预定操作区域内的至少一个边界特征点的坐标。该方法包括:控制该行走机器人的主体以使得其在该预定操作区域内执行如下操作,包括:控制该主体以第一方向沿着预定操作区域的边界线行走,当该主体到达该至少一个边界特征点中的一个边界特征点附近时,控制该主体以调整该主体以使得该主体沿着该边界线在该边界特征点处的法线方向进入该预定操作区域,以及当该主体沿着该边界线在该边界特征点处的法线方向进入该预定操作区域达一预定距离时,调整该主体以使得该主体沿着该边界线在该边界特征点处的切线方向行走。附图说明图1示出了根据本发明的行走机器人的外观示意图;图2示出了根据本发明的行走机器人的内部结构的示意图;图3示出了根据本发明的行走机器人的操作区域的示意图;图4示出了根据本发明的行走机器人处于一种工作模式下的操作方法的流程图;图5示出了根据本发明的行走机器人处于另一种工作模式下的操作方法的流程图;图6示出了根据本发明的行走机器人到达一个边界特征点时的状态的示意图;图7a和7b示出了配置有低精度定位装置的行走机器人在边界特征点附近产生的遗漏部分的示意图;图8示出了根据本发明的行走机器人对边界特征点附近的遗漏部分进行处理的一种方法的示意图;图9示出了根据本发明的行走机器人对边界特征点附近的遗漏部分进行处理的另一种方法的示意图;以及图10示出了根据本发明的不规则的操作区域的示意图。具体实施方式以下将结合附图对本发明的各实施例进行详细说明,以便更清楚理解本发明的目的、特点和优点。应理解的是,附图所示的实施例并不是对本发明范围的限制,而只是为了说明本发明技术方案的实质精神。在下文的描述中,出于说明各种公开的实施例的目的阐述了某些具体细节以提供对各种公开实施例的透彻理解。但是,相关领域技术人员将认识到可在无这些具体细节中的一个或多个细节的情况来实践实施例。在其它情形下,与本申请相关联的熟知的装置、结构和技术可能并未详细地示出或描述从而避免不必要地混淆实施例的描述。除非语境有其它需要,在整个说明书和权利要求中,词语“包括”和其变型,诸如“包含”和“具有”应被理解为开放的、包含的含义,即应解释为“包括,但不限于”。在整个说明书中对“一个实施例”或“一实施例”的提及表示结合实施例所描述的特定特点、结构或特征包括于至少一个实施例中。因此,在整个说明书的各个位置“在一个实施例中”或“在一实施例”中的出现无需全都指相同实施例。另外,特定特点、结构或特征可在一个或多个实施例中以任何方式组合。如该说明书和所附权利要求中所用的单数形式“一”和“所述”包括复数指代物,除非文中清楚地另外规定。应当指出的是术语“或”通常以其包括“和/或”的含义使用,除非文中清楚地另外规定。在以下描述中,为了清楚展示本发明的结构及工作方式,将借助诸多方向性词语进行描述,但是应当将“前”、“后”、“左”、“右”、“外”、“内”、“向外”、“向内”、“上”、“下”等词语理解为方便用语,而不应当理解为限定性词语。图1示出了根据本发明的行走机器人1的外观示意图。图2示出了根据本发明的行走机器人1的内部结构的示意图。行走机器人1从外观上可以类似于现有技术中的一些行走机器人,如公开号为cn109673241a的中国发明专利申请中所描述的。具体地,如图1所示,行走机器人1可以包括主体10和控制机构20。控制机构20可以设置在主体10内部或外部,用于控制主体10的行走路线。主体10还包括行走机构30。在一些实现中,行走机构30包括设置在主体10后部的一对主动轮32和设置在主体10前部的一个或多个被动轮(图中未示出)。在这些实现中,主体10还包括一个或一对驱动电机12(见图2),用于在控制机构20的控制下对主动轮32进行驱动从而驱动主体10行走,例如驱动主体10前进、后退和转向等。被动轮可以设置为万向轮,其与主动轮32一起支撑主体10并随着主动轮32的运动而运动。本领域技术人员可以理解,行走机构30的设置并不局限于本文中所描述以及图中所示出的,而是可以根据行走机器人1的功能和结构具有各种不同的设置形式。例如,在行走机器人1是外形为圆形的扫地机器人或拖地机器人的情况下,行走机构30的主动轮32可以设置在圆形底面的一条直径的两端,而被动轮可以设置在与主动轮32所在的直径垂直的另一条直径的一端或者两端,或者也可以不设置被动轮。此外,行走机器人1还可以包括作业机构(图中未示出),其在主体10在特定操作区域内行走时执行特定的操作功能。例如,在行走机器人1是割草机器人的情况下,作业机构可以包括作业驱动电机以及设置在主体10下方、受作业驱动电机驱动的作业装置,如切割装置,用于随着行走机器人1的行走而对行走路径上的草皮进行修剪。又例如,在行走机器人1是扫地机器人的情况下,作业机构可以包括作业驱动电机以及设置在主体10下方、受作业驱动电机驱动的作业装置,如一个或多个清扫刷和吸尘口等。此外,行走机器人1还可以包括能源机构(图中未示出)。在一些实现中,该能源机构包括可拆卸或者不可拆卸的锂离子电池包或者其他可充电电池等。或者,在一些实现中,能源机构也可以包括电源线和交直流转换器等,以与外部的交流电源相连。控制机构20被配置为实现各种功能,这些功能包括:控制主体10沿着预定操作区域的边界线行走,并且对该边界线进行采样以获取边界线上的所有边界采样点的集合。图3示出了根据本发明的行走机器人1的操作区域4的示意图。如图3中所示,操作区域4是行走机器人1进行诸如割草、扫地等作业的工作区域,围绕该操作区域4预先设置有边界线3,用来限定该操作区域4。图3以矩形形状示例性地示出了操作区域4,然而本领域技术人员可以理解,操作区域4也可以是任何其它可能的形状。在初始情况下,行走机器人1例如可以位于由边界线3构成的闭合回路上或内的任何一点处。为简单起见,假设行走机器人1初始时位于边界线3上安装的基站2处,如图3中所示。基站2例如可以包括馈电模块,用于向与其相连的边界线3馈电,从而在边界线3周围产生电磁信号。行走机器人1在行走时能够持续感测该电磁信号,以在不同工作模式下沿着边界线3行走或者根据所感测的电磁信号的极性判断其是否位于操作区域4内。这里,边界线3例如可以是能够接收馈电并且产生电磁信号的金属导线,然而,本领域技术人员可以理解,边界线3也可以是其他形式的有形或无形的边界。在一些实现中,基站2还可以包括充电模块,其在行走机器人1留驻在其上时对行走机器人1进行充电。图4示出了根据本发明的行走机器人1处于一种工作模式下的操作方法400的流程图。具体地,图4示出了行走机器人1在初始状态下确定操作区域4的地图信息的方法400的流程图。以下,结合图1至图4对方法400进行描述。在方法400中,在步骤410,控制机构20首先确定行走机器人1是否处于初始位置。为简化起见,假设行走机器人1位于基站2时处于初始位置,如图3中所示。例如,控制机构20可以通过判断行走机器人1是否与基站2相连或者二者的距离是否小于一个非常小的数值来确定行走机器人1是否位于基站2处,从而确定行走机器人1是否处于初始位置。如果控制机构20确定行走机器人1不处于初始位置,方法400进行到步骤420,其中行走机器人1被调整到初始位置。这里,可以通过各种方式将行走机器人1调整到初始位置。例如,在一些实现中,行走机器人1可以感测边界线3周围的电磁信号,从而捕捉到边界线3,并且沿着边界线3回到初始位置(如基站2处)。或者,在一些其它实现中,也可以通过操作员人工将行走机器人1放置在基站2处。本发明在此方面并不进行限制。另一方面,如果控制机构20确定行走机器人1处于初始位置,方法400进行到步骤430,其中控制机构20建立坐标系,以用于后续的边界点采样。例如,控制机构20可以以行走机器人1的中心或者以连接一对主动轮32的轮轴的中点在水平面上的投影位置作为坐标原点o建立笛卡尔平面坐标系xoy,以行走机器人1从基站2向边界线3沿第一方向(如顺时针方向)的延伸方向为x轴,如图3中所示。然而,本领域技术人员可以理解,本发明并不局限于此,而是可以根据需要建立各种其他的坐标系,如平面极坐标系等,并且坐标原点也不局限于行走机器人1的中心,而是可以是任何其他参考点,如行走机器人1的几何中心在水平面上的投影位置,或者作业机构的几何中心在水平面上的投影位置等。此外,平面坐标系xoy的建立也不局限于上述方式,而是可以将图3中所示的x轴和y轴的方向调换,或者可以任意设置x轴和y轴的方向。在行走机器人1装配有地磁传感器的实施方式中,也可选择使x轴或y轴朝向地磁北极或南极延伸。接下来,在步骤440,控制机构20控制行走机器人1从基站2沿着边界线3以预定方向(如顺时针方向)行走,并且对边界线3进行采样。在一些实现中,控制机构20可以进一步包括主控制器22、与主控制器22相连的里程获取模块24和航向获取模块26以及存储器28,如图2中所示。里程获取模块24可以用于获取行走机器人1的行走里程,方向获取模块26可以用于获取行走机器人1的航向偏转角度。具体地,驱动电机12上可以设置有光电编码器来检测主动轮32在一定时间内转过的弧度,里程获取模块24和航向获取模块26可以根据光电编码器检测到的结果结合主动轮32的半径来计算在一定时间内行走机器人1的移动里程和航向偏转角度。在其他实施方式中,可使用陀螺仪来替代光电编码器。在另一些实施方式中,可以同时使用陀螺仪和光电编码器以进行相互修正。进一步地,可以在主体10上设置地磁传感器来对光电编码器和/或陀螺仪的累计误差进行补偿,以提高精度。在步骤440中,控制机构20每隔预定时间或预定距离对边界线3上的点进行采样,这些点称为边界采样点。进一步地,控制机构20(如主控制器22)可以根据行走里程和航向偏转角度计算边界采样点的坐标,并将边界采样点的坐标以链表的形式存储在存储器28内。行走机器人1的行走方式可以是从初始位置沿着第一方向驶离后,原地旋转180°后沿边界线3行走,也可以是直接沿着第一方向以向后的方式行走,这主要取决于行走机器人1是否支持后退的行走方式。接下来,在步骤450,控制机构20确定是否已经获得了边界线3上的所有边界采样点的集合的数据。例如,控制机构20可以确定其行进路径是否构成一个封闭曲线,或者确定行走机器人1是否再次回到初始位置,如与基站2相接触或者距离非常近,以确定是否已经完成了对整个边界线3的采样。具体地,在获取了所有边界采样点的坐标之后,控制机构20例如可以将所有边界采样点的坐标存储在存储器28中,如表1中所示。表1边界采样点列表这里,可以将表1中所示的边界采样点的全集表示为bn={b1,b2,b3,…,bn-1,bn},其中边界采样点bi(1≤i≤n)的坐标为(ui,vi),n表示边界线3上获得的边界采样点的数量,并且n为正整数。如果在步骤450判断未获取所有边界采样点,则方法400返回步骤440继续。另一方面,在完成了整个边界线3的采样之后,在步骤460,控制机构20可以从边界采样点的集合bn中确定边界特征点,以形成操作区域4的地图信息。其中,该地图信息至少包括边界特征点的坐标的列表。根据如表1中所示的边界采样点的坐标信息,控制机构20可以确定操作区域4的概况信息,如面积和形状等。进一步地,控制机构20可以根据操作区域4的概况信息确定所需要的边界特征点的数量阈值条件,如数量阈值或数量阈值范围,然后从边界采样点的集合bn中选择符合该数量阈值或数量阈值范围的边界特征点。在一些实施方式中,可以对边界采样点进行曲线拟合,并将拟合后的曲线上曲率较大的点选择作为边界特征点。例如,可以使用曲率法、外接圆法或向量法等对边界采样点的集合进行拟合以确定每个边界采样点的曲率,从而从中选择相应的边界特征点。以下以曲率法为例详细描述控制机构20如何从边界采样点中选择边界特征点。如上所述,控制机构20可以根据如表1所示的边界采样点的坐标确定操作区域4的形状和面积,从而自动生成特征点数量阈值m0或数量阈值范围[mmin,mmax]。通常,对于一个特定的操作区域来说,其面积越大、形状越复杂,则需要的边界特征点就会越多。例如,若操作区域面积过小或形状过于简单,如是凸多边形,则可以将边界特征点数量阈值确定为一个较小的值,如3。边界特征点的数量阈值m0或数量阈值范围[mmin,mmax]可以是从存储器28中存储的一些备选阈值或阈值范围列表中选取的。当以某个曲率阈值计算的操作区域4内的边界特征点的数量等于数量阈值m0或落入数量阈值范围[mmin,mmax]时,能够确定操作区域4内存在满足条件的边界特征点并且能够确定相应的边界特征点。在一种实现中,控制机构20设定用于操作区域4的曲率阈值k0。控制机构20可以对表1中所示的边界采样点的集合bn进行曲线拟合以计算每个边界采样点的曲率ki(1≤i≤n),并将每个边界采样点的曲率ki分别与曲率阈值k0进行比较,以确定大于曲率阈值k0的边界采样点,设数量为m1。控制机构20确定大于曲率阈值k0的边界采样点的数量m1是否等于数量阈值m0或落入数量阈值范围[mmin,mmax]。如果m1等于数量阈值m0或落入数量阈值范围[mmin,mmax],则将该m1个边界采样点确定为边界特征点。另一方面,在一些实施方式中,如果m1不等于数量阈值m0或未落入数量阈值范围[mmin,mmax],则控制机构20可以进一步确定边界采样点的集合的至少两个不同的真子集,其中每个真子集的元素个数相同,为n-(k-1),这里n是边界采样点的集合bn中的元素个数,k是真子集的数量。优选的,每个真子集中的相邻元素之间的间距相等。控制机构20可以将k个真子集中的边界采样点的曲率分别与曲率阈值进行比较,以确定每个真子集中曲率大于曲率阈值的边界采样点的数量。如果k个真子集中只有一个真子集满足该数量阈值条件,将该真子集中的边界采样点选择作为边界特征点;如果k个真子集中有多于一个真子集满足该数量阈值条件,则将该多于一个真子集中的任意一个的边界采样点选择作为边界特征点;以及如果k个真子集都不满足该数量阈值条件,则可以进一步将集合bn划分成更多个真子集(如l个,l>k)并且重复上述操作。例如,假设k=2,控制机构20可以确定集合bn的两个真子集和接下来,控制机构20分别对这两个真子集进行曲线拟合,进而计算得到每个真子集中的每个边界采样点处的曲率,将获得的曲率分别与曲率阈值k0进行比较以分别确定这两个真子集中曲率大于曲率阈值k0的边界采样点的数量,假设分别为m21和m22。接下来,控制机构20确定数量m21和m22是否等于数量阈值m0或落入数量阈值范围[mmin,mmax]。如果数量m21或m22等于数量阈值m0或落入数量阈值范围[mmin,mmax],则将相应的m21或m22个边界采样点选择作为边界特征点。如果数量m21和m22都等于数量阈值m0或落入数量阈值范围[mmin,mmax],则任意选择这m21或m22个边界采样点作为边界特征点。相反,如果数量m21和m22都不等于数量阈值m0或都未落入数量阈值范围[mmin,mmax],则控制机构20可以进一步确定边界采样点的集合bn的至少三个不同的真子集,其中每个真子集的元素个数相同,为n-(l-1),其中n是集合bn中的边界采样点的数量,l是真子集的数量,并且l>k。优选的,每个真子集中的相邻元素之间的间距相等。例如,假设l=3,控制机构20可以确定集合bn的三个真子集和接下来,控制机构20分别对这三个真子集进行曲线拟合,进而计算得到每个真子集中的每个边界采样点处的曲率,将获得的曲率分别与曲率阈值k0进行比较以分别确定这三个真子集中曲率大于曲率阈值k0的边界采样点的数量,假设分别为m31、m32和m33。接下来,控制机构20确定数量m31、m32和m33是否等于数量阈值m0或落入数量阈值范围[mmin,mmax]。如果数量m31、m32和m33中的一个等于数量阈值m0或落入数量阈值范围[mmin,mmax],则将相应的m31、m32或m33个边界采样点选择作为边界特征点。如果数量m31、m32和m33中的至少二个都等于数量阈值m0或落入数量阈值范围[mmin,mmax],则任意选择这至少二个满足的真子集中的任意一个的边界采样点作为边界特征点。若这三个真子集仍然都不满足阈值条件,则该算法可以继续进行,直到找到满足边界特征点的数量阈值条件的子集为止。确定边界特征点的实施方式并不局限于上面所述的那些。在另一些实施方式中,真子集的划分可以有不同的形式。具体地,如果m1不等于数量阈值m0或未落入数量阈值范围[mmin,mmax],则控制机构20可以进一步确定边界采样点的集合的至少两个真子集,其中每个真子集的元素互不相同,并且每个真子集的元素个数基本上等于集合bn的元素个数的1/k,其中k是真子集的数量,即,基本上平均地划分集合bn。控制机构20可以将k个真子集中的边界采样点的曲率分别与曲率阈值进行比较,以确定每个真子集中曲率大于曲率阈值的边界采样点的数量。如果k个真子集中只有一个真子集满足该数量阈值条件,将该真子集中的边界采样点选择作为边界特征点;如果k个真子集中有多于一个真子集满足该数量阈值条件,则将该多于一个真子集中的任意一个的边界采样点选择作为边界特征点;以及如果k个真子集都不满足该数量阈值条件,则可以进一步将集合bn划分成更多个真子集(如l个,l>k)并且重复上述操作。例如,假设k=2,控制机构20可以确定集合bn的两个真子集和如果根据这两个真子集得到的数量m21和m22都不满足数量阈值条件,则控制机构20可以进一步确定边界采样点的集合bn的至少三个真子集,其中每个真子集的元素互不相同,并且每个真子集的元素个数基本上等于集合bn的元素个数的1/l,其中l是真子集的个数,并且l>k,即,基本上平均地划分集合bn。优选的,每个真子集中的相邻元素之间的间距基本上相等。例如,假设l=3,控制机构20可以确定集合bn的三个真子集和接下来,控制机构20分别对这三个真子集进行曲线拟合,以确定是否满足数量阈值条件。与上述实施方式类似,该算法可以继续进行,直到找到满足边界特征点的数量阈值条件的子集为止。在上述方法中,若始终不能找到满足边界特征点的数量阈值条件的子集,控制机构20还可以调整曲率阈值k0,并重复上述计算。例如,如果如上计算的每个子集的满足曲率阈值k0的采样点的个数都小于特征点数量阈值条件,则可以减小曲率阈值k0后重复上述计算;如果每个子集的满足曲率阈值k0的采样点的个数都大于特征点数量阈值条件,则可以增大曲率阈值k0后重复上述计算。通过上述方法,控制机构20可以获得所有边界特征点的坐标,并且例如可以将这些坐标存储在存储器28中,如表2中所示。表2边界特征点列表特征点序号特征点坐标1(x1,y1)2(x2,y2)……m(xm,ym)其中,m表示整个操作区域4的边界特征点的数量,并且m为正整数。具体地,图4中示出了操作区域4内的四个边界特征点(x1,y1)、(x2,y2)、(x3,y3)和(x4,y4)。可选地,方法400还可以包括:控制机构20基于步骤460获得的操作区域4的地图信息,将操作区域4分成至少两个子区域,并且记录每个子区域的信息。其中,子区域的信息至少包括该子区域内的边界特征点的坐标。此外,子区域的信息还可以包括该子区域的形状、面积和/或该子区域内的边界采样点的坐标等。具体地,控制机构20可以以操作区域4的每个边界采样点分别作为无权无向图的顶点,并且判断该顶点与边界采样点的集合bn中的另一边界采样点之间是否贯通。这里,两点之间贯通是指这两点之间的连线全部落在一个闭合的边界区域内或边界上。若该顶点与该另一边界采样点之间贯通,则可以在该顶点与该另一边界采样点之间增加一条边线(可以是逻辑上而非物理上的边线)。控制机构20遍历边界采样点的集合bn以产生所有边线的集合,从而所产生的所有边线的集合和所有边界采样点构成至少一个完全图,控制机构20将位于同一个完全图中的边界采样点划分为一个子区域。然而,在很多实际情况中,边界线3不可能布置成标准的直线,而是会不可避免地会出现弯弯曲曲的情况,本发明为这种情况下的子区域的划分提供了冗余机制。例如,如果两个采样点位于边界线3上的直线段内,理论上这两个采样点之间的连线与拟合的边界线重合,即这两个采样点间的每个采样点均在该连线上。在这种情况下,在划分子区域时可以不考虑这两个采样点之间的连线。另一方面,在边界线3不是直线的情况下,连线与边界线3可能会存在多个交点。在这种情况下,可以预先设置一个距离阈值l0,计算相邻的两个交点之间的距离,并且确定该距离是否小于该距离阈值l0。如果该距离小于该距离阈值l0,则认为交点无效,即认为在划分子区域时不应考虑该连线。具体地,假设采样点a和采样点b之间的连线与边界线3的交点依次为{x1,x2,x3,…,xn}(从a到b),则以xi为基准,判断与l0之间的大小关系。若大于或等于l0,则继续以xi+1为基准,判断与l0的大小关系。只要任意相邻节点之间的距离小于该距离阈值l0,就将a和b之间的连线从上述边线的集合中去除(或者在产生上述边线的集合时直接不予考虑)。在实际的工作场景中,操作区域4常常是不规则的,例如整个操作区域4是一个由矩形和圆形或扇形组成的不规则图形。图10示出了根据本发明的不规则的操作区域4的示意图。在图10所示的不规则的操作区域4的情况下,例如按照步骤410至460的方法确定整个操作区域4的边界特征点为101至106,该数量可能满足数量阈值条件,但是在操作区域4的一些特殊部分,如圆形或扇形部分110,由于这些部分的边界线比较平滑(即边界线上的每个点的曲率基本上相同),因此这些点要么都满足曲率阈值,要么都不满足曲率阈值,从而根据上述曲率法通常无法得到满足上述数量阈值条件的特征点。在这种情况下,可以如上所述将整个操作区域4划分成多个子区域110、120和130,并且针对每个子区域分别执行上述的步骤410至460。即,将每个子区域分别视为一个独立的封闭图形来确定边界特征点。在另一种实施例中,可以在获得边界线3上的所有边界采样点(步骤440)之后,基于其中的至少三个边界采样点将操作区域4划分成多个子区域,并且对于每个子区域,分别确定子区域的信息,该子区域的信息至少包括该子区域内的边界采样点的坐标。例如,这里可以采用与上述边界特征点类似的方式来基于边界采样点对操作区域4进行划分。具体地,以至少三个边界采样点中的每个边界采样点分别作为无权无向图的顶点,判断该顶点与至少三个边界采样点中的另一边界采样点之间是否贯通,若该顶点与另一边界采样点之间贯通,则在该顶点与另一边界采样点之间增加一条边线(可以是逻辑上而非物理上的边线),遍历这些至少三个边界采样点以产生所有边线的集合,从而所产生的所有边线的集合和至少三个边界采样点构成至少两个完全图,以及将位于其中一个完全图中的边界采样点划分为一个子区域。接下来,可以以步骤460中所述的类似方法,针对每个子区域确定该子区域内的边界特征点,以形成该子区域的信息,在此不再赘述。以上分别描述了基于边界特征点和边界采样点进行子区域划分的方法。然而,在任一情况下,对于具有基本上平滑的边界线的子区域来说,由于该边界线上的每个点的曲率基本上相同,上述方法在该子区域可能仍然不能获取足够的边界特征点。在这种情况下,可以基于子区域内的边界采样点的坐标,确定该子区域是否具有基本上平滑的边界线。或者,在按照上述步骤460所述的方式在子区域内无法找到满足该数量阈值条件的特征点时,确定该子区域具有基本上平滑的边界线。对于具有平滑的边界线的子区域(如图10中所示的子区域110)来说,可以在该子区域的边界线上随机选择满足阈值数量条件的特征点,如图10中所示的特征点107、108和109。例如,所选择的特征点可以均匀地分布在该子区域的边界上。类似地,对于一些特殊形状的操作区域4,例如平滑的圆形区域,由于其边界线3上的每个点的曲率基本上相同,上述方法在整个操作区域4中可能仍然不能获取足够的边界特征点。在这种情况下,可以基于整个操作区域内的边界采样点的坐标,确定该操作区域4是否具有基本上平滑的边界线3。或者,在按照上述步骤460所述的方式在操作区域4内无法找到满足该数量阈值条件的特征点时,确定该操作区域4具有基本上平滑的边界线。对于这种具有平滑边界线的操作区域来说,也可以在该操作区域的边界线上随机生成满足数量阈值条件的特征点,这些特征点例如可均匀地分布在该操作区域的边界线上。上面结合图1至图4对根据本发明的一些方面的行走机器人1进行了描述,更具体的,描述了行走机器人1在特定操作区域4内开始执行作业任务之前对该操作区域4进行测绘以形成便于后续作业的地图信息的过程。进一步地,行走机器人1还可以将操作区域4划分成多个子区域以使得进行作业时能够更好地遍历整个操作区域4而不会遗漏任何部分。在根据本发明的另一些方面中,行走机器人1还能够在即使利用低精度定位的情况下也能实现对操作区域4的高效遍历。图5示出了根据本发明所述的行走机器人1处于另一种工作模式下的操作方法500的流程图。以下,结合图3和图5对方法500进行描述。行走机器人1例如可以是上面结合图1和图2所描述的行走机器人1。并且,在控制机构20的存储器28中,存储有操作区域4的地图信息,该地图信息包括操作区域4内的多个边界特征点的坐标,如表2中所示。额外地或者可选地,存储器28中还可以存储有操作区域4的多个子区域的信息,该子区域的信息至少包括相应子区域内的边界特征点的坐标。在一种实现中,上述地图信息和/或子区域的信息是由控制机构20提前控制行走机器人1遍历整个操作区域4得到的,如通过上面结合图4所述的方法400。然而,本发明并不局限于此,上述地图信息和/或子区域的信息也可以是以其他方式提前设置在存储器28中的。例如,对于一些配有手机或电脑桌端应用的行走机器人1,可以在手机或电脑端应用上绘制操作区域4的图形并人工指定边界特征点。在方法500中,在步骤510,控制机构20首先确定行走机器人1是否处于初始位置。与图4的方法400类似,假设行走机器人1位于基站2时处于初始位置,如图3中所示。例如,控制机构20可以通过判断行走机器人1是否与基站2相连或者二者的距离是否小于一个非常小的数值来确定行走机器人1是否位于基站2处,从而确定行走机器人是否处于初始位置。如果控制机构20确定行走机器人1不处于初始位置,方法500进行到步骤520,其中行走机器人1被调整到初始位置。这里,可以通过各种方式将行走机器人1调整到初始位置。例如,在一些实现中,行走机器人1可以感测边界线3周围的电磁信号,从而捕捉到边界线3,并且沿着边界线3回到初始位置(如基站2处)。或者,在一些其它实现中,也可以通过操作员人工将行走机器人1放置在基站2处。本发明在此方面并不进行限制。另一方面,如果控制机构20确定行走机器人1处于初始位置,方法500进行到步骤530,其中控制机构20控制主体10从初始位置沿着边界线3以预定的第一方向(如顺时针方向)行走。在步骤540,当主体10到达其中一个边界特征点附近时,控制机构20控制主体10以调整主体10以使得主体10沿着边界线3在该边界特征点处的法线方向进入操作区域4。这里,一方面,出于行走机器人1的作业目的,行走机器人1需要在到达边界特征点时开始进入操作区域4进行作业。另一方面,由于行走机器人1本身的定位误差以及累积误差,使得行走机器人1很难在确切的边界特征点处开始进入操作区域4,而是通常在边界特征点附近即认为达到了边界特征点。这是由行走机器人1的工作原理决定的,行走机器人1从其存储器内调取计划到达的边界特征点的坐标,从初始位置(如基站2处)出发,例如利用里程获取模块和方向获取模块推算出其自身的实时位置坐标。当推算出的实时位置坐标落在以计划到达的边界特征点坐标为中心的特定区域内(如圆形或其他形状区域)时,判断其自身到达了计划到达的边界特征点。在这种情况下,实际位置与计划到达的边界特征点之间产生了定位误差。进一步地,由于定位误差的累积而产生累积误差,行走机器人1进入操作区域4时的实际位置与边界特征点之间的位置偏差会越来越大。图6示出了根据本发明的行走机器人1到达一个边界特征点时的状态的示意图。例如,假设行走机器人1到达了边界特征点(x1,y1),边界线3在该边界特征点(x1,y1)处的法线方向为t-t,切线方向为n-n。在这种情况下,行走机器人1停止沿着边界线3行走,并且可以将主体10旋转以使得其沿着法线方向t-t进入操作区域4。以下,也可以将沿着切线方向n-n的行走路径称之为横向路径,而将沿着法线方向t-t的行走路径称之为纵向路径。横向路径被控制为尽可能的直线,而纵向路径可以是直线或者弧线。此外,在一些实现方式中,在主体10到达边界特征点(x1,y1)时,控制机构20启动行走机器人1的作业机构,使其开始在操作区域4内进行作业。例如,在行走机器人1是用于割草的机器人的情况下,控制机构20启动其作业机构以使得其作业装置(割草装置)随着行走机器人1的行走而对行走路径上的草皮进行修剪。接下来,在步骤550,当控制机构20确定主体10沿着边界线3在边界特征点(x1,y1)处的法线方向t-t进入操作区域4达一预定距离wl时,调整主体10以使得主体10沿着边界线3在边界特征点(x1,y1)处的切线方向n-n行走。这里,该预定距离wl通常被设置为等于或小于主体10的宽度,或者被设置为等于或小于行走机器人1的作业装置(如上文所述的割草装置、清扫刷或吸尘口等)的有效作业宽度。接下来,在步骤560,当主体10沿着边界线3在边界特征点(x1,y1)处的切线方向n-n行走至到达边界线3时,控制机构20确定主体10沿着该切线方向n-n的行走是否达到预定停止条件。如果在步骤560确定主体10沿着切线方向n-n的行走未达到预定停止条件,则操作返回至步骤540,控制机构20调整主体10以使得主体10再次沿着边界线3在边界特征点处的法线方向t-t朝向操作区域4行走预定距离wl。也就是说,如图6中所示,行走机器人1在操作区域4内沿着纵向路径和横向路径往复折返,以弓字形路线行进。另一方面,如果在步骤560确定主体10沿着切线方向n-n的行走达到预定停止条件,则方法500进行到步骤570,其中控制机构20调整主体10以使得主体10回到初始位置,例如可以是沿着边界线3或者以其他方式回到初始位置。这里,初始位置例如可以是如图3中所示的基站2的位置。在一种实施例中,预定停止时间包括预定时长。在这种情况下,将主体10在步骤540第一次沿着法线方向进入操作区域4作为计时起点,当主体10在操作区域4内的行走时间达到或超过该预定时长时,在步骤560确定达到该预定停止条件。在另一种实施例中,预定停止条件包括横向路径的长度和长度变化。例如,考虑到在许多情况下,横向路径的长度通常会经历由小到大,再由大到小的变化,如图6中所示。在这种情况下,在步骤560,可以确定主体10沿着切线方向行走的距离是否小于或等于预定值wh并且主体10沿着切线方向行走的距离(横向路径长度)是否小于或等于上一次沿着切线方向行走的距离(上一横向路径长度)。在确定主体10的横向路径长度小于或等于预定值wh并且主体10的横向路径长度小于或等于上一横向路径长度时,步骤560判断满足预定停止条件,方法500进入步骤570。通过这种方式,与仅仅通过横向路径长度本身进行判断相比,避免了在主体10刚刚进入操作区域4时即被判断为达到停止条件的错误发生。这里,预定值wh可以是一个与主体10的长度可比的数值,例如长度的0.3倍至0.5倍。至此,完成了对操作区域4的一次作业,在该次作业中行走机器人1实际工作的区域也可以称为一个工作块。在回到初始位置之后,控制机构20可以重置其里程获取模块获取的行走里程和方向获取模块获取的航向偏转角度,以消除上次作业中累积的误差,避免对下次作业产生影响。接下来,控制机构20控制主体10从初始位置开始行走至下一边界特征点(x2,y2)并重复上述方法500的操作,直至遍历所有边界特征点。在操作区域4是规则形状,如图3中所示的规则矩形的情况下,以每个边界特征点开始的工作块基本上能够覆盖整个操作区域4,这样上述方法能够很好地遍历整个操作区域4。然而,在操作区域4是不规则形状,如图10中所示的不规则形状的情况下,通过将整个操作区域4划分为子区域才能够更好地遍历整个操作区域4。具体地,在这种情况下,存储器28中还存储有操作区域4的多个子区域的信息。这里,将操作区域4划分成多个子区域的方法可以是上面结合图4所述的方法。然而,本发明并不局限于此,多个子区域的划分也可以是通过其他方式,例如几何分割或者人工预先指定等。在操作区域4被划分成多个子区域的情况下,控制机构20可以控制行走机器人1在每个子区域内分别执行如方法500所述的操作。在这种情况下,以每个边界特征点开始的工作块不能覆盖整个操作区域4,而只能覆盖一个子区域和相邻子区域的一部分。然而,以所有边界特征点101至109开始的工作块能够很好地覆盖整个操作区域4。尤其是,在行走机器人1配置的不是诸如gps之类的高精度定位装置而是上面所述的光电编码器、陀螺仪和/或地磁传感器等低精度定位装置的情况下,行走机器人1很可能不能准确地定位每个边界特征点,从而出现实际上早于或晚于边界特征点进入操作区域4的情况。在这种情况下,按照上面图5的方法500的操作可能会在操作区域4内产生遗漏部分。图7a和7b示出了配置有低精度定位装置的行走机器人1在边界特征点附近产生的遗漏部分a1的示意图。如图7a和7b中所示,行走机器人1在实际到达边界特征点(x1,y1)之前的位置处就判断其到达了边界特征点(x1,y1),并且开始进行上述方法500的操作,从而造成边界特征点(x1,y1)附近的区域a1未被处理。类似的,在行走机器人1在实际到达边界特征点(x1,y1)之后的位置处才判断其到达了边界特征点(x1,y1)的情况下也会在边界特征点(x1,y1)附近产生类似的遗漏部分。在这种情况下,通过上述的在互相重叠的多个工作块中分别进行作业有可能对该遗漏部分a1进行处理。例如,在如图3所示的矩形操作区域4的情况下,在从边界特征点(x1,y1)开始的第一工作块的作业中可能产生的遗漏部分a1将在以边界特征点(x2,y2)和边界特征点(x4,y4)开始的第二工作块和第四工作块的作业中进行处理。然而,对于一些形状更复杂的操作区域,上述方式进行作业可能仍然不足以覆盖所有边界特征点附近的遗漏部分。对此,本发明进一步改进了上述方法500,通过对边界特征点附近的区域进行放射状作业来消除遗漏部分。图8示出了根据本发明的行走机器人1对边界特征点附近的遗漏部分a1进行处理的一种方法的示意图。在图8所示的方法中,行走机器人1在操作区域4中可以沿着p0→p1→p2→p3→p4→p5→p6→p7→p8→p9→p10→p11→p12→p13的路径进行作业。与上面类似地,将沿着切线方向n-n的行走路径称之为横向路径或者标准横向路径,而将沿着法线方向t-t的行走路径称之为纵向路径或者标准纵向路径。路径p0→p1、p2→p3、p4→p5、p6→p7、p8→p9、p10→p11与边界线3存在着明显的夹角,可以称为临时横向路径,路径p1→p2、p3→p4、p5→p6、p7→p8、p9→p10、p11→p12与边界线3基本重合,可以称为临时纵向路径。其中,行走机器人1在临时横向路径p0→p1、p2→p3、p4→p5、p6→p7、p8→p9、p10→p11上的作业可以看作是在遗漏部分a1的放射状作业。可以看出,在图8所示的路径中,临时纵向路径p1→p2、p3→p4、p5→p6、p7→p8、p9→p10、p11→p12都很短,这主要是由于行走机器人1本身的宽度原因,使得其必须执行如图所示的临时纵向路径。事实上,在一种理想的操作情况下,临时纵向路径的长度为0,即p1/p2重合、p5/p6重合、p9/p10重合、p0/p3/p4/p7/p8/p11/p12重合,从而使得行走机器人1每次变更角度时均从p0出发,保证了角度控制的准确性。以下,以这种理想情况为例进行描述,并且将p0/p3/p4/p7/p8/p11/p12统称为第一位置p0,将p1/p2统称为第二位置p1、将p5/p6统称为第三位置p5、将p9/p10统称为第四位置p9。具体地,在图8中所示的方法中,假设主体10沿着边界线3行走时,由于定位精度之类的原因将边界特征点(x1,y1)之前的第一位置p0错误识别为边界特征点(x1,y1)而停止前进,并且假设行走机器人1沿着边界线3行走的方向(即边界线3在第一位置处的切线方向)与在所述边界特征点处的切线方向n-n(即标准横向路径方向)之间的夹角为第一角度α0。在一些实施方式中,当主体10在第一位置p0处停止时,控制机构20控制主体10从第一位置p0进入操作区域4并沿着第二角度α1行走,直到到达边界线3,例如到达边界线3上的第二位置p1。这里,第二角度α1小于第一角度α0。例如,控制机构20可以在第一位置p0处控制主体10以第二角度α1向操作区域4转向并沿直线在操作区域4中行走。当到达第二位置p1时,行走机器人1在遗漏部分a1完成了第一次放射状作业p0→p1。在一些实现中,控制机构20可以根据第一角度α0的大小(以及可能的其他因素,如主体10的宽度或作业宽度和/或操作区域4或相应的操作区块的大小等)确定对边界特征点(x1,y1)附近的区域a1进行放射状作业的往复次数,并且相应地确定第二角度α1。例如,如图8中所示,假设控制机构20根据第一角度α0确定在区域a1中执行q次(图8中假设为4次(将往复记为1次))放射状作业,则控制机构20可以确定如图8中所示的角度α1、α2、α3和α4。其中,α4=α0。角度α1、α2、α3和α4可以为等差数列,即,每次放射状作业相对于前一次向右偏移角度并且第一次放射状作业的角度然而,本发明并不局限于此,角度α1、α2、α3和α4也可以不是等差数列。或者,也可以通过其他方式确定上述角度α1、α2、α3和α4。例如,可以预先设置一个小的角度δ作为每次调整的角度差。事实上,只要在遗漏部分a1内以小于第一角度α0的第二角度α1至少执行一次如图8所示的放射状作业,都将有效改善遗漏部分a1的处理。当主体10沿着第二角度α1到达边界线3上的第二位置p1时,控制机构20控制主体10从第二位置p1返回至第一位置p0。此时,控制机构20可以确定一个大于第二角度α1的第三角度α2,例如如上所述α2=α1+δ,并且确定第三角度α2是否大于或等于第一角度α0。如果确定第三角度α2小于第一角度α0,则控制机构20控制主体10从第一位置p0以第三角度α2穿过操作区域4到达边界线3,例如到达边界线上的第三位置p5。这样,行走机器人1在遗漏部分a1完成了第二次放射状作业p0→p5。另一方面,如果第三角度α2大于或等于第一角度α0,则控制机构20控制行走机器人1以横向路径方向(n-n)进入操作区域4。即,如果第三角度α2大于或等于第一角度α0,操作转为如上面结合图5所述的标准操作。类似地,上述过程可以重复执行,直至下一次从第一位置p0出发的偏转角度大于或等于第一角度α0为止。例如,在如上所述控制机构20控制主体10从第一位置p0以第三角度α2穿过操作区域4到达边界线3上的第三位置p5之后,控制机构20还可以控制主体10从边界线3上的第三位置p5返回第一位置p0。此时,控制机构20可以确定一个大于第三角度α2的第四角度α3,例如α3=α2+δ,并且确定第四角度α3是否大于或等于第一角度α0。如果确定第四角度α3小于第一角度α0,则控制机构20控制主体10从第一位置p0以第四角度α3穿过操作区域4到达边界线3,例如到达边界线3上的第四位置p9。这样,行走机器人1在遗漏部分a1完成了第三次放射状作业p0→p9。以此类推,行走机器人1可以在遗漏部分a1进行多次放射状行走,直至下一次偏转角度大于或等于第一角度α0。此时,行走机器人1可以被再次调整按照标准横向路径方向(即边界特征点(x1,y1)的切线方向n-n)行走。在行走机器人1需要执行某种特定作业(如割草、扫地等)的情况下,控制机构20可以在行走机器人1每次进入操作区域4时启动作业机构,例如从p0→p1和从p1→p0、从p0→p5和从p5→p0,以及从p0→p9和从p9→p0的往返过程中都对操作区域4进行作业。或者,控制机构20也可以控制行走机器人1仅在每次从第一位置p0出发的行走过程中对操作区域4进行作业,而在返回过程中不进行作业。这样一方面可以节省行走机器人1的能量消耗,另一方面又避免了对操作区域4中某些部分重复作业以及由此带来的行走机器人1的损耗。此外,行走机器人1在遗漏部分a1内的行走路径也不局限于上面描述的,而是可以包含其他方式。例如,在行走机器人1从第一位置p0行进至第二位置p1之后,其可以不返回第一位置p0而是沿着边界线3以第一方向(如顺时针方向)行进特定距离至第三位置p2,并且从第三位置p2返回第一位置p0。该特定距离可以是根据角度δ计算的(角度α1、α2、α3和α4是等差数列的情况),也可以是根据其他因素,如主体10的宽度或作业宽度等确定的。通过这种方式,可以节省行走机器人1在操作区域4内的行走次数,使得每次行走都可以进行有效作业。然而,这种方式增大了控制机构20对行走机器人1的行走路径进行计算的计算量。图9示出了根据本发明的行走机器人1对边界特征点附近的遗漏部分进行处理的另一种方法的示意图。图9可以视为图8中所述方法的一种简化实现方式。如图9中所示,与图8中类似,假设主体10在边界线3上的第一位置p0停止前进并且从第一位置p0沿着角度β1到达边界线3上的第二位置p1时,控制机构20控制主体10以第二方向旋转角度β2并进入操作区域4。其中第二方向与第一方向相反。例如,在第一方向是顺时针方向的情况下,第二方向是逆时针方向,反之亦然。并且,角度β2是第一角度α0与角度β1之差的组角,即,β2=360°-(α0-β1)。在主体10沿着第二方向旋转角度β2之后,主体10的方向与边界线3在边界特征点处的切线方向n-n(即标准横向路径方向)平行,此时控制机构20可以控制主体10沿着边界线3在边界特征点处的切线方向n-n进入操作区域4,从而开始执行如图9中所示的第一次标准横向路径方向的操作p1→p2。可以理解,图8和图9中以行走机器人1的停止点(第一位置p0)在边界特征点之前为例进行了描述,然而本领域技术人员可以理解,本发明的方案可以容易地扩展到停止点在边界特征点之后的情况。例如,假设第一位置在边界特征点之前时,第一方向是顺时针方向,则当第一位置在边界特征点之后时,第一方向可以是逆时针方向。在任一种情况下,停止点应当统一地位于边界特征点之前或者统一地位于边界特征点之后。此外,为了减少停止点p0处的重复行走对操作区域4造成的磨损(例如在行走机器人1是割草机器人的情况下),还可以设置不同的提前或延后量以每次得到不同的停止点p0。以上结合图5至图9描述了本发明的另一些方面,其中根据本发明的行走机器人1能够在控制机构20的控制下在操作区域4内进行作业,使得能够更加容易地遍历整个操作区域4。进一步地,在这些方面中,即使行走机器人1配备的是低精度的定位装置,控制机构20也能够控制行走机器人1遍历整个操作区域4,从而避免有明显的遗漏。以上结合附图描述了本发明的各种实现方式。在一个或多个示例性实现中,可以用硬件、软件、固件或它们的任意组合来实现本申请所述的功能。例如,如果用软件来实现,则可以将控制机构20所实现的功能作为一个或多个指令或代码存储在计算机可读介质(如存储器28等)上,或者作为计算机可读介质上的一个或多个指令或代码来分发。本领域普通技术人员还应当理解,结合本申请的各个实施方式描述的控制机构20或其组成部分可以实现为多个分立硬件组件,也可以集成地实现在一个硬件组件,如处理器上。例如,可以用通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑器件、分立门或者晶体管逻辑、分立硬件组件或用于执行本文所述的功能的任意组合来实现或执行结合本公开所描述的控制机构20或其组成部分主控制器22、里程获取模块24或航向获取模块26。本公开的以上描述用于使本领域的任何普通技术人员能够实现或使用本公开。对于本领域普通技术人员来说,本公开的各种修改都是显而易见的,并且本文定义的一般性原理也可以在不脱离本公开的精神和保护范围的情况下应用于其它变形。因此,本公开并不限于本文所述的实例和设计,而是与本文公开的原理和新颖性特性的最广范围相一致。当前第1页12