用于在行驶局限区内操作自主机器人作业机的系统和方法与流程

文档序号:21363705发布日期:2020-07-04 04:38阅读:225来源:国知局
用于在行驶局限区内操作自主机器人作业机的系统和方法与流程

本申请要求2017年12月18日提交的美国临时申请no.62/599,938和2017年11月20日提交的美国临时申请no.62/588,680的优先权,这两个申请的全部内容通过引用并入本文。

本发明的公开涉及包括诸如草坪剪草机之类的车辆在内的自主机器人作业机,并且更具体地涉及用于控制此类机械在地产或其它作业区域的操作的方法和系统。



背景技术:

草坪机械和花园机械已知用于执行各种任务。例如,业主和专业人士等都使用电动草坪剪草机来维护地产或庭院内的草地区域。

自主执行割草功能的机器人草坪剪草机也是已知的。机器人草坪剪草机通常由电池供电,并且通常限于在需要充电之前仅切割地产草坪的一部分,充电通常需要剪草机返回到充电基站。

机器人草坪剪草机通常还在固定的地产边界内以随机的行驶模式割草,其中,所述边界由连续的边界标记限定,例如,在地产边界处铺设在草坪上的或埋设在草坪下方的通电的导线。这样的边界导线也可以延伸到庭院的内部,以划定障碍物(例如,树木、花坛等)或其它排除区。然后,剪草机可以在边界导线所划界的区域内随机地移动。

尽管有效,但是剪草机的随机模式与边界的可变性(即,地产线的形状、障碍物的形状和尺寸等)相结合会产生问题。例如,剪草机有时在同一区域剪草的时间可能长于所需的时间,而遗漏的区域仍未剪草。当庭院的布局(例如,边界和排除的区域/障碍物)与剪草机的随机模式运动相结合导致进入某些区域(例如,庭院的具有狭窄进入通道的那些区域)的难度增加时,就会发生这种情况。如果剪草机不能进入这些区域,则可能会遗漏这样的区域,从而降低了能感知到的切割质量。相反,当剪草机能够到达这些区域时,它可能会被不适当地“搁置”,从而潜在地延长了在需要充电之前完成剪草任务所花费的时间。



技术实现要素:

本发明可以提供一种在预定的作业区域内操作自主作业车辆的方法,该方法包括:利用与作业车辆相关联的控制器,限定至少部分地处于作业区域内的行驶局限区,该行驶局限区限定小于作业区域的面积的区面积;在行驶局限区内自主地操作作业车辆;将作业车辆的位置约束在行驶局限区内;以及在作业车辆在行驶局限区内操作的同时,越过作业区域移动行驶局限区。

在另一实施例中,提供一种在预定的作业区域内操作自主作业车辆的方法,该方法包括:利用与作业车辆相关联的控制器,限定至少部分地处于作业区域内的行驶局限区,该行驶局限区限定小于作业区域的面积的区面积;自主地将作业车辆从行驶局限区之外的位置运送到行驶局限区内的位置;在行驶局限区内自主地操作附接至作业车辆的工具;以及,在作业车辆在行驶局限区内操作的同时,越过作业区域移动行驶局限区。

在又一实施例中,提供一种剪草系统,包括自主操作的剪草机,该剪草机适于随着剪草机在作业区域各处行驶而切割作业区域内生长的草。该剪草机包括:底盘,其由地面支撑构件支撑在草地表面上,其中,地面支撑构件中的一个或多个包括驱动构件;割草元件,其附接至底盘;马达,其适于为割草元件和驱动构件提供动力;以及控制器,其适于控制割草元件以及剪草机的速度和方向。控制器进一步适于:识别至少部分地在作业区域内的行驶局限区,该行驶局限区包括小于作业区域的面积的区面积;以及,随着行驶局限区越过作业区域行驶,将剪草机的操作约束在行驶局限区和作业区域两者内。

在又一实施例中,提供一种在预定的作业区域内操作自主作业车辆的方法,该方法包括:利用与作业车辆相关联的控制器,限定至少部分地处于作业区域内的行驶局限区,其中,作业区域划出第一组多个网格单元并且行驶局限区划出更小的第二组多个网格单元。该方法进一步包括;在行驶局限区内自主地操作作业车辆;将作业车辆的位置约束在行驶局限区内;在作业车辆在行驶局限区内操作的同时,越过作业区域移动行驶局限区;以及,利用控制器,决定使行驶局限区前进的方向。

在再一实施例中,提供一种在预定的作业区域内操作自主作业车辆的方法。该方法可以包括以下各项中的一项或多项:利用与作业车辆相关联的电子的控制器,限定至少部分地处于作业区域内的行驶局限区,该行驶局限区限定小于作业区域的面积的区面积;在行驶局限区内自主地操作作业车辆;将作业车辆的位置约束在行驶局限区内;以及在作业车辆在行驶局限区内操作的同时,越过作业区域移动行驶局限区。可以以任何组合另外地包括一个或多个方面,以产生又另外的实施例。例如,作业车辆可以构造为草坪剪草机。在另一方面,作业区域可以包括地产的草地表面。在另一方面,可以随着行驶局限区越过作业区域移动,改变行驶局限区的形状。在再一方面,方法可以进一步包括:在行驶局限区内以随机的方式移动作业车辆。在又一方面,方法包括:利用控制器,控制作业车辆的转向角度和地面速度。在又一方面,方法进一步包括:在越过作业区域移动行驶局限区之前,将行驶局限区的初始位置维持一段时间。在又一方面,方法包括:利用控制器,估计作业车辆跨越整个作业区域的操作将完成的时间。在再一方面,方法包括:随着行驶局限区越过作业区域移动,将行驶局限区的区面积维持恒定;或者,随着行驶局限区越过作业区域移动,改变行驶局限区的区面积。在又一方面,方法包括:当在行驶局限区内操作作业区域时,维持作业车辆的速度;或者,当在行驶局限区内操作作业区域时,改变作业车辆的速度。在又一方面,移动行驶局限区的步骤包括以恒定的速率或可变的速率移动行驶局限区。

在另一实施例中,提供一种剪草系统,包括自主操作的剪草机,该剪草机适于随着剪草机在作业区域各处行驶而切割作业区域内的草。在一方面,系统可以包括以下各项中的一项或多项:底盘,其由地面支撑构件支撑在草地表面上,其中,地面支撑构件中的一个或多个包括驱动构件;割草元件,其由底盘承载;一个或多个马达,其适于为割草元件和驱动构件提供动力;以及电子的控制器,其适于控制割草元件的操作以及剪草机的速度和方向。该控制器适于:识别至少部分地在作业区域内的行驶局限区,该行驶局限区包括小于作业区域的面积的区面积;以及,随着行驶局限区越过作业区域行驶,将剪草机的操作约束在行驶局限区和作业区域两者内。可以以任何组合另外地包括一个或多个方面,以产生又另外的实施例。例如,在一方面,在越过作业区域移动行驶局限区之前,控制器可以将行驶局限区的初始位置维持一段时间。在另一方面,剪草机进一步包括:适于估计剪草机在作业区域内的位置的定位系统,其中该定位系统能操作地连接至控制器。在又一方面,系统进一步包括:位于作业区域中或附近的基站。

在再一实施例中,提供一种在预定的作业区域内操作自主作业车辆的方法。在一方面,该方法可以包括以下各项中的一项或多项:利用与作业车辆相关联的电子的控制器,限定至少部分地处于作业区域内的行驶局限区,其中,作业区域划出第一组多个网格单元并且行驶局限区划出更小的第二组多个网格单元;在行驶局限区内自主地操作作业车辆;将作业车辆的位置约束在行驶局限区内;利用控制器,决定使行驶局限区的前缘前进的方向;以及,在作业车辆在行驶局限区内操作的同时,越过作业区域移动行驶局限区。可以以任何组合另外地包括一个或多个方面,以产生又另外的实施例。例如,在一方面,决定使行驶局限区前进的方向的步骤包括:对两个或更多个网格单元进行评分,该两个或更多个网格单元与行驶局限区的边界在外部相邻。在另一方面,对两个或更多个网格单元进行评分的步骤包括:评价两个或更多个网格单元中的每个单元的波前网格值。在另一方面,对两个或更多个网格单元进行评分的步骤包括:比较从两个或更多个网格单元中的每个单元到行驶局限区的质心的距离。在又一方面,方法进一步包括:当前缘与包含在作业区域内的排除区接触时,检测前缘分叉成至少第一段和第二段。在再一方面,方法进一步包括:用第一段或第二段替换前缘。在又一方面,移动行驶局限区的步骤包括:使行驶局限区的后缘前进,而在另一方面,移动行驶局限区的步骤包括:将来自第一组多个网格单元的网格单元添加到行驶局限区。在又一方面,移动行驶局限区的步骤包括:从行驶局限区去除网格单元。

以上概述并非旨在描述每个实施例或每一个实施方式。而是,参考附图,通过参考以下示例性实施例的详细描述和权利要求,对示例性实施例的更完整的理解将变得显而易见并得到领会。

附图说明

将参考附图进一步描述示例性实施例,其中:

图1a是根据本发明的公开的实施例的限定有作业区域、排除区和过渡区的示例性地产;

图1b是根据本发明的公开的实施例的自主作业车辆(例如,机器人草坪剪草机)的示意图;

图2示出了在作业区域的行驶局限区内操作剪草机的示例性方法;

图3a至图3k示出了在另一更复杂的作业区域操作剪草机的示例性方法,其中:图3a示出在时间t=t1时的初始行驶局限区;图3b示出在时间t=t2时的行驶局限区;图3c示出在时间t=t3时的行驶局限区;图3d示出在时间t=t4时的行驶局限区;图3e示出在时间t=t5时的行驶局限区,其中,示出了行驶局限区围绕排除区移动,以防止将行驶局限区分叉;图3f示出在时间t=t6时的行驶局限区;图3g示出在时间t=t7时的行驶局限区;图3h示出在时间t=t8时的行驶局限区;图3i示出在时间t=t9时的行驶局限区;图3j示出在时间t=t10时的行驶局限区;并且图3k示出在时间t=t11时的行驶局限区;

图4示出了由边界限定并且包含多个排除区的又一示例性作业区域的映射,该作业区域铺设在x-y网格上,该网格限定有多个网格单元;

图5是图4的作业区域映射的示例性波前网格的视觉描绘;

图6a至图6h示出了在图4的映射中所示的作业区域内操作剪草机的示例性计算机模拟方法,其中:图6a示出在时间t=t1时的行驶局限区;图6b示出在时间t=t2时的行驶局限区,示出了当遇到排除区时行驶局限区的前缘;图6c示出在时间t=t3时的行驶局限区;图6d示出在时间t=t4时的行驶局限区;图6e示出在时间t=t5时的行驶局限区;图6f示出在剪草机完成图6e所示区域且已重新定位到新的起始区域之后的时间t=t6时的行驶局限区;并且图6g示出了在剪草机已再次重新定位到新的起始区域之后的时间t=t7时的行驶局限区;并且图6h是图6b的行驶局限区的放大图;以及

图7示出了有助于防止行驶局限区的分叉或“分裂”的示例性过程。

这些图主要是为了清楚起见而给出的,因此不一定按比例绘制。此外,各种结构/部件,包括但不限于紧固件、电气部件(布线、电缆等)等可以被示意性地示出或者从一些或全部视图中被去除,以更好地示出所描绘的实施例的各方面,或者其中,对于理解本文所描述的各种示例性实施例,不是必须包括这样的结构/部件。然而,在特定附图中缺乏对这样的结构/部件的图示/描述不应当被解释为以任何方式限制各种实施例的范围。

具体实施方式

在以下对说明性实施例的详细描述中,参考了构成其一部分的附图。应理解的是,当然可以设想到本文没有描述和/或示出的其它实施例。

本文提供的所有标题都是为了方便读者,并且不应当用于限制标题后面的任何文本的含义,除非是如此规定的。此外,除非另有指出,否则说明书和权利要求中的表示数量的所有数字和表示方向/取向的所有术语(例如,竖直、平行、垂直等)在任何情况下均应理解为由术语“约”修饰。此外,术语“和/或”(如果使用的话)是指所列元件中的一个或所有,或者所列元件中的任何两个或多个的组合。又此外,“即”在本文中可以用作也就是说(idest)的缩写并且是指“也就是”,而“例如”可以用作示例性(exempligratia)的缩写并且是指“例如”。

本发明的公开的实施例提供了自主机器人作业车辆以及在预定作业区域内操作该自主机器人作业车辆的方法,以在操作期间实现作业区域的提高的车辆覆盖率(例如,与车辆相关联的实施)。例如,车辆可以是如下一种自主机器人剪草机,其适于随着剪草机横跨作业区域行驶,使用相关联的切割构件在位于作业区域内的作业表面(例如,住宅或商业地产的草皮(草地)表面)上割草。通过实施与本文中描述和示出的那些方法类似的方法,与利用已知的随机行驶覆盖方法以其它方式可能提供的切割覆盖相比,这样的剪草机可能能够实现更高效的切割覆盖率。

如本文中所使用的,“地产”被定义为由车辆可以在其中执行作业(例如,剪草)的固定边界所界定的地理区域(诸如庭院)。例如,图1a示出了由边界59限定的示例性地产或庭院50。“作业区域”(参见图1a中标记为“51”的区域)在本文中用于指代在车辆将要执行作业的地产边界59内包含(或主要包含)的那些区域。例如,作业区域可以由地产或庭院50的自主草坪剪草机将在其上操作的草地表面限定。如图1a中进一步所示,地产可以包含一个或多个作业区域51,包括例如前院区域和后院区域,或由人行道或车道52隔开的两个庭院区域。“排除区”在本文中被定义为作业区域内所包含的车辆不打算在其中操作(例如,不打算剪草)的区域。排除区的实例包括诸如图1a中所示的区域53等景观区域和花园、游泳池、建筑物、车道(例如参见车道52)以及其它庭院特征。“过渡区”(参见图1a中的过渡区55)可以在本文中用于指代当车辆在地产的不同作业区域之间行驶时可以采用的路径。通常,车辆在移动穿过过渡区时不执行作业。

虽然在本文中被描述为机器人剪草机,但是这样的构造仅是示例性的,因为本文描述的系统和方法也可应用于其它自主操作的机械/车辆,包括例如商用剪草产品、其它地面作业车辆(例如,碎屑鼓风机/真空吸尘器、曝气机、物料撒布机、除雪机)以及诸如真空吸尘器和地板洗涤器/清洁器之类的室内作业车辆。

应注意的是,术语“包括”及其变型在随附的说明书和权利要求书中出现这些术语的情况下不具有限制意义。此外,“一”、“一个”、“该”、“至少一个”和“一个或多个”在本文中可互换地使用。此外,诸如“左”、“右”、“前”、“前部”、“向前”、“后”、“后部”、“向后”、“顶部”、“底部”、“侧面”、“上”、“下”、“上方”、“下方”、“水平”、“竖直”等的相对术语可以在本文中被使用,并且如果使用的话,这些术语来自特定图中所示的视角,或者是当车辆100处于操作配置时(例如,当车辆100被定位成使得车轮106和108搁在大体水平的地面103上时,如图1b中所示)。然而,这些术语仅用于简化描述,而不是限制对所描述的任何实施例的解释。

图1b示出草坪剪草系统的自主操作的作业车辆(例如,机器人草坪剪草机100),该剪草机根据本发明的公开的示例性实施例构造(为了简化描述,示意性地示出剪草机100)。如该视图中所示,剪草机100可以包括框架或底盘102,该框架或底盘102承载和/或包围剪草机的各种部件,如下所述。剪草机可以进一步包括地面支撑构件,例如将底盘102支撑在地面(草地)表面103上的一个或多个后轮106和一个或多个前轮108。

地面支撑构件中的一个或多个可以包括驱动构件。例如,后轮106中的一个或两个可以被驱动(例如,由一个或多个电动轮马达104驱动)以将剪草机100在地面表面103上推进。在一些实施例中,前轮108可以相对于底盘102(例如,围绕竖直轴线)自由旋转。在这样的构造中,可以借助两个后轮106的差速旋转,以类似于传统零转弯半径(ztr)的乘坐式剪草机的方式,来控制剪草机的方向。也就是说,可以为左和右后轮106中的每一个设置单独的轮马达104,使得可以独立地控制每个后轮的速度和方向。另外地或作为替代方案,前轮108可以是能主动转向的(例如,使用一个或多个转向马达105),以辅助控制剪草机100的方向,和/或可以被驱动(即,以提供前轮驱动或所有车轮驱动的剪草机)。

割草元件(例如,刀片110)可以由底盘承载。例如,切割元件可以联接至切割马达112,该切割马达112本身附接至底盘102。当马达112和104被通电时,剪草机100可以在地面表面103上推进,使得剪草机所经过的植被(例如,草地)被刀片110切割。虽然在本文中示出为仅使用单个刀片110/马达112,但是在本发明的公开范围内,可以设想到包含由单个或多个马达提供动力的多个刀片的剪草机。此外,虽然在本文中在一个或多个传统“刀片”的背景下进行了描述,但是在不脱离本发明的公开范围的情况下,其它切割元件(包括例如尼龙弦或线元件、刀、切割卷筒等)当然是可能的。又此外,还可以设想到将各种切割元件(例如,旋转刀片)与边缘安装的绳式修剪机组合的实施例。

示例性剪草机100可以进一步包括动力源,在一个实施例中,动力源是具有基于锂的化学物质(例如,锂离子)的电池114。在不脱离本发明的公开范围的情况下,其它实施例可以利用其它化学物质的电池,或者完全利用其它动力源技术(例如,太阳能、燃料电池、内燃机)。应进一步注意的是,虽然示出为使用独立的刀片和轮马达,但是这样的构造仅是示例性的,因为还可以设想到刀片和车轮动力由单个原动机提供的实施例。

剪草机100可以进一步包括一个或多个传感器以提供位置数据。例如,一些实施例可以包括定位系统(例如,全球定位系统(gps)接收器116和/或可以提供类似数据的其它定位系统),定位系统适于估计剪草机100在作业区域内的位置并将这样的信息提供至控制器120(如下所述)。例如,车轮106、108中的一个或多个(例如,两个后轮106)可以包括编码器118,该编码器118提供可用于估计在给定作业区域内的剪草机位置(例如,基于初始起始位置)的车轮旋转/速度信息。现在已知或以后开发的其它传感器(例如,红外、无线电监测和测距(雷达)、光检测和测距(雷达)等)也可以被结合到剪草机100中。剪草机100可以进一步包括传感器115,传感器115适于当使用边界导线限定作业区域的边界时检测边界导线。

剪草机100还可以包括适于监测和控制各种剪草机功能的控制器120。示例性控制器120可以包括处理器122,处理器122接收各种输入并执行存储在存储器124中的一个或多个计算机程序或应用。存储器124可以包括计算机可读指令或应用,当例如由处理器122执行时,该计算机可读指令或应用使控制器120执行各种计算和/或发出命令。也就是说,处理器122和存储器124可以一起限定可操作用于处理输入数据并生成输入到一个或多个部件/装置的期望输出的计算设备。例如,控制器可以可操作地连接至定位系统,使得处理器122可以从gps接收器116和/或编码器118接收包括位置数据在内的输入数据,并且生成对一个或多个驱动轮马达114的速度和转向角度命令,以使驱动轮106旋转(以相同或不同的速度以及沿相同或不同的方向)。换言之,控制器120可以控制剪草机100的转向角度和地面速度(速度和方向),以及切割刀片110的操作(包括刀片致动/去致动(deactuation)和刀片转速)。

鉴于以上内容,将显而易见的是,控制器120的功能可以以本领域技术人员已知的任何方式来实现。例如,存储器124可以包括任何易失性、非易失性、磁性、光学和/或电性的介质,诸如随机存储存储器(ram)、只读存储器(rom)、非易失性ram(nvram)、电可擦除可编程rom(eeprom)、闪存和/或任何其它数字媒体。虽然示出为两者都被并入控制器120中,但是存储器124和处理器122可以被包含在单独的模块中。

处理器122可以包括以下各项中的任何一个或多个:微处理器、控制器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)和/或等效的离散或集成逻辑电路。在一些实施例中,处理器122可以包括多个部件,诸如一个或多个微处理器、一个或多个控制器、一个或多个dsp、一个或多个asic和/或一个或多个fpga以及其它离散或集成逻辑电路的任何组合。本文中归因于控制器120/处理器122的功能可以实现为软件、固件、硬件或它们的任何组合。

在图1b中,整体示出了控制器120与电池114、一个或多个轮马达104、刀片马达112、可选的边界导线传感器115、无线电设备117(其例如可以与诸如手机119等远程计算机进行通信)和gps接收器116之间的示意性连接。该互连仅是示例性的,因为剪草机100的各种子系统可以借助总线架构(例如,控制器局域网(can)总线)或借助准许数据/或动力在剪草机的各种部件之间传递的任何其它连接构造以几乎任何方式(例如,彼此直接地,无线地)连接。

现在将初始参考图2来描述使用剪草机100的示例性方法。该图示出了剪草机100可以在其中操作的常见矩形作业区域200(例如,住宅庭院)。为了描述示例性剪草机的操作,假设作业区域200(以及在作业区域内包含的任何排除区(如果存在的话)(例如参见图3a))的外周边界250对于剪草机100而言是已知的。例如,可以在训练阶段期间,用通电的边界导线来标记作业区域(及任何排除区)的边界250,该通电的边界导线可由设置在剪草机上的传感器(参见图1b中的传感器115)检测到。另外地或作为替代方案,边界250可以借助其它技术可检测或可知,而不脱离本发明的公开范围。例如,剪草机100可以检测位于该地产上的机器可见标记,或者可以在剪草机的训练阶段期间映射并存储边界信息。

在图2中,庭院的边界250包围并限定作业区域200。如上所述,示例性作业区域200的形状为大致矩形并且没有任何排除区(例如,花坛、树木等)。然而,这样的形状仅是示例性的,因为本发明的公开的实施例可以应用于具有大多数任何尺寸和形状且具有任何数量排除区的作业区域(例如,庭院)(例如参见图3a至图3k中所示的作业区域300)。

图2的阴影部分示出了将在本文中被称为行驶局限区202(参见示例性区202t1和202t2)的部分。行驶局限区202表示作业区域200的动态改变的(例如,行进、扩展、收缩或以其它方式移动的)子区域(即,行驶局限区至少部分地位于作业区域内,并且限定了小于作业区域的面积的区域面积)。出于以下将进一步描述的原因,随着行驶局限区在作业区域上行进,剪草机100的位置可以在操作期间的任何时间被约束为既在行驶局限区202内又在作业区域内。根据本发明的公开的实施例,行驶局限区202的至少一些部分可以由被电子限定并用控制器120识别的虚拟边界来划界,即,行驶局限区202的一些(或所有)部分可以不通过任何物理界限或传感器检测的接界来划界。应进一步注意的是,虽然示出为矩形,但是随着行驶局限区横跨作业区域移动,行驶局限区202的形状可以是变化的。

但是,与大体固定的作业区域200不同,行驶局限区202可以设计为横跨作业区域200移动或行进(当剪草机在行驶局限区内自主地操作的同时),使得作业区域200的所有作业表面(草地表面)最终被包围在行驶局限区内。例如,当启动剪草机操作时,控制器120(参见图1b)可以(例如,基于控制算法、作业区域的已知形状以及先前的切割历史,等等)限定或以其它方式识别初始行驶局限区202t1,如图2所示。再次,为了识别行驶局限区202,控制器120不仅可以利用作业区域200的物理边界250(例如,由边界导线限定的那个边界),而且可以利用通过控制器120产生的一个或多个虚拟边界252(例如,最终在作业区域的物理边界之间延伸的一个或多个边界)。在一些实施例中,行驶局限区202尽管在移动,但在整个剪草操作期间仍保持单个包围区域(例如,202t1、202t2)。

行驶局限区202能够提供整个作业区域200的大致均匀的覆盖。然而,这样的“均匀”覆盖可能并不总是最佳的。例如,作业区域200的一些区域的草生长速率与其它区域不同的情况并不少见。结果,控制器120可以保持与在作业区域300内的大多数任何给定位置处剪草机上的切割负荷有关的历史信息。如本文中所使用的,“切割负荷”是指剪草机割草所需的作业。因此,切割负荷可以是以下两者的函数:由切割马达112(参见图1b)汲取/供应至切割马达112的功率;和剪草机的推进或地面速度(其与由一个或多个轮马达104汲取/供应至一个或多个轮马达104的功率成正比)。因此,如果控制器120检测到切割负荷高于预定限值,则它可以减慢行驶局限区202的移动速度,以确保剪草机100具有充分的机会在行驶局限区202内割草。相反,当切割负荷低于预定限值时,控制器120可以增加行驶局限区202的移动速率。除了可以改变行驶局限区202的移动速度之外,或者代替改变行驶局限区202的移动速度,也可以增加或降低剪草机100的行驶速度。也就是,控制器可以在行驶局限区内自主地操作剪草机(该行驶局限区可以以恒定或可变的速率移动)的同时维持剪草机100的速度,或者作为替代方案,在行驶局限区内操作剪草机的同时改变剪草机的速度。

在一些实施例中,剪草机100可以在操作期间在行驶局限区202内自主地且以随机的方式移动。因为根据定义,行驶局限区202是作业区域200的地理子集,所以与作为整体的作业区域相比,行驶局限区(在任何给定时间)可能不太复杂(例如,具有更少的(或没有)狭窄通道或可能导致剪草机被搁置的“瓶颈”)并且在地理上更均一(例如,具有一致的草皮质量)。此外,与更大区域相比,行驶局限区还有可能具有更少的障碍物(即,与整个作业区域200内所包含的障碍物相比具有更少的障碍物)。结果,与随机移动的剪草机仅限于作业区域200的较大物理边界的情况相比,剪草机100更有可能(在随机移动期间)均匀地覆盖行驶局限区202的所有区域(并因此最终均匀地覆盖整个作业区域200)。

为了确保整个作业区域200被剪草机100覆盖(切割),随着剪草操作的进展,行驶局限区202可以横跨作业区域移动或行进,例如,图2中从左到右。行驶局限区的移动可以以恒定速率或可变速率发生。随着行驶局限区202在图2中描绘的作业区域200内移动,既将面积添加到区域202(例如,通过虚拟边界252的虚拟前缘252l的前进),又从区域202上减去面积(通过虚拟边界252的后缘252t的前进)。例如,在剪草机操作开始后的某个时间,行驶局限区202已从初始行驶局限区(在图2中描绘为行驶局限区202t1)移动到新位置(描绘为行驶局限区202t2)。在所示的实施例中,202t1和202t2的面积可以保持恒定(即,随着行驶局限区横跨作业区域移动,控制器可以将行驶局限区的区域面积维持恒定)。然而,在其它实施例中,行驶局限区202的面积可以改变(即,随着行驶局限区横跨作业区域移动,控制器可以改变行驶局限区的区域面积)。注意,关于局限区202的后缀“t1、t2等”仅用于表示剪草机操作的不同时间点。也就是说,图2中表示的行驶局限区202示出了在单独的瞬时时间点的切割区域。

实际上,至少在一些实施例中,通过前缘和后缘252l、252t的前进而添加到行驶局限区202的面积和从其中去除的面积可以设定为以下速率(恒定或可变):该速率被选择为确保行驶局限区的所有位置的充分的切割。虽然行驶局限区202的动态移动可以允许整个作业区域200的高效覆盖,但是可设想到,控制器120可偶尔将行驶局限区的移动减慢或停止一段给定时间。例如,可能有利的是,在行驶局限区横跨作业区域行进之前,将行驶局限区202t1的初始位置维持一段时间,以确保剪草机100有充分的机会覆盖与作业区域边界(图2中的最左侧边界250)相邻的草坪部分。是否将行驶局限区200的位置维持固定,以及将其保持固定多长时间,可以由控制器120基于例如行驶局限区的尺寸、剪草机100的尺寸和速度、切割负荷以及在存储器124(参见图1b)中可能保留的剪草机100的统计和/或历史覆盖信息来确定。

在其它实施例中,初始行驶局限区202t1可以不是被保持静止不动,而是实际上起始于其在地产的物理边界250外侧(例如,在图2中的左侧)的后缘252t(即,行驶局限区可延伸到作业区域之外)。尽管后缘252t位于边界250之外,但是剪草机100仍然可以被限制而不行驶超过作业区域200,即,剪草机可以在剪草期间一直都保持在作业区域内。结果,随着行驶局限区202在剪草机操作期间行进,地产的(例如,沿边界250的)最左侧边界将在行驶局限区中保持不变达某一段时间,即,保持到行驶局限区202的后缘252t移动通过庭院边界250(向右)。为了在实践中实施该功能,控制器120可以将初始行驶局限区设定为等于小的面积,然后移动前缘252l,直到行驶局限区的面积等于或“填充”到期望的面积,此时后缘252t被引入并且开始相对于前缘252l前进,以确保期望的面积保持恒定。下面更详细地示出了该过程(例如参见图6a至图6g)。

随着剪草机100的操作继续,行驶局限区202可以到达作业区域的最后部分,如图2中作业区域202tn所示。同样,控制器120可以将行驶局限区202tn的位置维持不变达固定的一段时间,以确保该局限区的部分(最右侧边界250)被充分地覆盖,或者它可以继续将局限区向右移动,从而随着行驶局限区的后缘252t接近作业区域200的最右侧边界250而有效地缩小或“清空”行驶局限区的面积。当然,控制器120可以防止行驶局限区变得太小以至于剪草操作受到损害,例如,行驶局限区可以避免收缩超过可能干涉剪草机的移动能力的最小尺寸。

通过如上所述控制剪草机100,剪草机在任何给定时间被限于在整体作业区域200的子区域(即,行驶局限区202)内操作。考虑到剪草机的随机行驶模式,因此,与没有被如此限制的剪草机相比,该剪草机更有可能均匀地覆盖整个作业区域(例如,避免留下未切割的草坪部分)。此外,通过将剪草机100局限到较小的行驶局限区,草坪的隔离区域(例如,排除区之间的狭窄草皮通道;将下面参考图3a至图3k描述)将更有可能被充分地覆盖,同时还使得剪草机在这样的隔离区域内长期被搁置或被困住的概率最小化。

行驶局限区202的实际移动可以以控制器120限定的增量发生。例如,一旦通过剪草机映射作业区域200(例如,在训练阶段期间),控制器120就可以在作业区域上覆盖虚拟网格(例如参见图2中的示例性网格单元或元素251),如下面将进一步描述的。网格元素尺寸可以是小的,从而有效地允许使用高分辨率边界来限定行驶局限区202(以控制器120的增加的计算负荷为代价)。作为替代方案,如果网格元素尺寸是大的,则行驶局限区202可以以相对较大的离散的步长移动,从而导致行驶局限区202具有较低分辨率(例如,“较粗”)的边界。在实践中,网格元素尺寸被选择为至少小至同剪草机100的物理占地面积一样,从而确保剪草机能够匹配的作业区域200的所有区域最终将被行驶局限区覆盖。然而,为了沿着作业区域和排除区(参见下述区354和355)的各种(例如,弯曲)边界(参见图3a中的边界350)充分地提供覆盖,网格单元尺寸可以设定为甚至小于剪草机占地面积。此外,虽然示出为四边形元素,但是在不脱离本发明的公开范围的情况下,其它网格单元可以具有任何多边形形状(例如,具有三边或更多边的任何形状(例如,三角形、五边形、六边形、八边形等形状的元素))。

然而,行驶局限区的移动速度可以与网格尺寸无关且不受网格尺寸的影响。而是,至少在一些实施例中,行驶局限区的移动可以由以下等式限定:

δa=b*t(等式1)

其中:

δa=添加到行驶局限区以及从行驶局限区减去的面积,例如,米2(m2);

b=剪草机在单位时间单位面积内覆盖区域的速率,例如,m2/秒;以及

t=时间间隔,例如,秒(sec)。

因此,添加到行驶局限区以及从行驶局限区去除的面积可以与实际局限区尺寸无关。而是,所添加/去除的面积(例如,网格单元)(δa)取决于参数b。b的标称或初始值可以直接取决于剪草机100的平均速度和切割宽度。例如,给定的机器人剪草机100可以以某一单位时间单位面积速率(本文中称为bo)覆盖地面区域。在正常操作期间,控制器120可以设定b=bo。然而,当控制器120确定期望更多或更少的切割时,可以调节参数b。例如,可以将b以增量值δb增加或减小(即,b=bo+δb)。最后,时间间隔t可以取决于δa和b两者。

作为实例,如图2所示,δa可以设定为等于一个(或多个)网格单元251(例如,δa可以设定为等于8个网格单元251,使得8个单元同时被添加到行驶局限区202以及从行驶局限区减去8个单元)。因此,参数t是网格单元251被添加到行驶局限区以及从行驶局限区去除的时间间隔(因此,在上面的等式1中,将δa和b视为因变量并将t视为独立的,可能是有建设性的)。

除了潜在地提高覆盖效率之外,动态行驶局限区202还可以允许控制器120更好地预测剪草操作的完成时间(time-to-completion)。也就是,通过知晓行驶局限区的移动速率以及庭院的尺寸和形状(这可以从剪草机的初始训练和/或历史剪草信息知晓),控制器能够精确地估计剪草机将完成整个地产的剪草的时间(例如,估计剪草机跨越整个作业区域(跨越作业区域的作业表面)的操作将完成的时间)。随着控制器120获知如何优化行驶局限区的移动,该估计可以随时间而改善。这种估计出的信息可以借助许多方法提供给房主或操作者。例如,剪草机可以包括显示器,该显示器除提供其它数据以外还提供完成时间估计。在其它实施例中,剪草机可以包括无线电设备(例如,图1b中所示的ieee802.11“wi-fi”无线电设备117),该无线电设备可以通过局域网或广域网与移动装置(例如,蜂窝电话119)通信。在后一种情况下,剪草机可以借助在移动装置上运行的应用或借助提供至移动装置的定期通知(例如,文本消息)来提供完成时间估计。

虽然图2示出了根据本发明的公开的实施例的基本方法论,但是大多数地产呈现比图2所示的矩形形状复杂的几何形状。图3a至图3k示出了根据本发明的公开的实施例的剪草机100的在这种示例性地产上的操作。

图3a示出了具有可由剪草机100检测和/或剪草机100已知的不规则边界350的地产或作业区域300。作业区域300可以进一步包括排除区354、355,该排除区354、355也可以由控制器120(参见图1b)识别为边界(该边界同样可以是物理的(例如,导线)或虚拟的(例如,控制器已知的或通过控制器以其它方式确定的作业区域300的电子地图))。与图2中所示的作业区域200不同,图3a的作业区域300呈现出更复杂的形状,这种更复杂的形状要求剪草机100的控制器120(参见图1b)针对如何覆盖作业区域相应地做出更复杂的决定。出于描述图3a至图3k的目的,瞬时或当前的行驶局限区302(参见初始区302t1)用阴影线来表示,作业区域的已经被剪草机覆盖的部分用双阴影线来表示,并且作业区域的未切割部分示出为无标记。

如图3a所示,控制器120可以选择初始行驶局限区302t1(图3a至图3k中所示的各种局限区可以被统称为“302”)并且控制剪草机的驱动轮,直到剪草机100位于区302t1内的某个位置。也就是说,如果剪草机100不在控制器所选择的行驶局限区内,则剪草机可以在自主剪草开始之前从行驶局限区之外的位置自主地被运送(在控制器的控制下)到期望局限区内的位置。例如,控制器120可以制定从剪草机的当前位置到行驶局限区内某处位置的路径,这样的路径在作业区域300内且在任何排除区(例如,区354、355)之外。一旦识别出路径,控制器120就可以控制驱动轮106(参见图1b)将剪草机运送到期望的位置。

初始行驶局限区可以基于许多因素来选择,例如包括在剪草机操作开始时剪草机100与区302t1的接近度以及自从上次给区302t1剪草之后经过了多长时间。在一些实施例中,控制器120可以利用波前网格(下面进一步描述),其中,控制器计算从每个网格单元到基本位置(该基本位置可以是剪草机基站(例如参见图2中的220)的位置)的线性距离。这种距离可以基于遵守所有边界(作业区域和排除区)的路径来计算。然后,可以将初始行驶局限区确定为包含距离基本位置最远的单元的区,即,由波前网格中的最大值识别出的位置。

一旦定位在行驶局限区302t1内,剪草机100就可以启动其切割马达112(参见图1b)并随着剪草机在行驶局限区302t1的范围内随机地移动而开始割草。如上所述,行驶局限区302t1可以固定达某一段时间,以确保作业区域的物理边界(图3a中的作业区域边界350的最左侧边缘)被充分地覆盖。作为替代方案,行驶局限区可以从在作业区域的物理边界350处或附近的初始位置向外(例如,向右)增长或“填充”,直到局限区达到期望的尺寸,此时局限区的后缘也会前进。在任一种场景下,虚拟边界352(例如,其前缘352l)可以开始随着时间的推移而行进(例如,图3a中向右)。如图3b所示,随着前缘352l前进,虚拟边界352的后缘352t最终会跟随。

因此,在一些实施例中,“前缘”是一组网格单元,该一组网格单元已由控制器迭代地进行评分并被添加到行驶局限区(但不是沿着前缘的所有网格单元都被增填(populate),因此避免了行驶局限区扩展到非计划的开放区域)。评分可以基于本文中其它地方描述的波前网格值来执行。以这种方式,控制器120可以更好地识别行驶局限区的移动方向,并确保局限区边界的充分覆盖。当然,当增填前缘网格单元时还可以考虑其它方面(例如,维持行驶局限区的形状质量)。

在一些实施例中,行驶局限区302的边界的行为可能有点像能够“变形”以适应大多数任何边界形状的虚拟的连续绳索。结果,行驶局限区302可以适应图3a中所示的作业区域300的不规则形状的左边界,然后,一旦后缘352t已经移动超过最左侧作业区域边界(例如,向右),后缘352t就可以呈现另一种(例如,线性)形状,如图3b中的行驶局限区302t2所示。虽然示出为过渡至线性后缘352t以允许高效的剪草机操作,但是这样的过渡仅为示例性的,因为在不脱离本发明的公开范围的情况下,行驶局限区的大多数任何形状都是可能的。事实上,当利用类似于本文描述的评分算法来推进行驶局限区时,行驶局限区的前缘(和后缘)(以及局限区的其它边缘)可能具有非线性形状,如例如图6a至图6g中示出的模拟所示。

再次,虽然在图3a至图3k中(以及图6a至图6g中),行驶局限区302被示出为在任何给定时间的不同区,但是这样的描述是示例性的,因为行驶局限区可以在剪草机操作期间横跨作业区域300大致连续地(例如,通过小的离散步长)或周期性地(例如,通过较大的离散步长)移动。因此,图中所示的行驶局限区仅旨在说明在不同的任意(但是,是离散的)时间点的行驶局限区的尺寸和形状。

在图3c中,示出了在紧接遇到第一排除区354之前的行驶局限区302(区302t3)的前缘352l。一旦前缘352l遇到区354,控制器120就决定前缘的哪段(即,位于排除区354上方的上段353-1,或位于排除区354下方的下段353-2,(在替代情况中,可能存在三个或更多个潜在的前缘))将成为有效的新前缘352l。换句话说,控制器120可以在此时决定是通过选择上段353-1还是下段353-2作为“新”前缘352l,而将行驶局限区移动到排除区354的任一侧(例如,沿着排除区354的顶部或底部)。如图3d所示,控制器120决定选择段353-2作为新前缘,因此行驶局限区302沿着排除区354的下侧滑动或变形,如行驶局限区302t4所示。通过利用确保行驶局限区的边界保持连续的算法,有效切割区域可以沿着排除区354的下边界移动(并且避免因排除区而发生分叉),同时控制器120记录下位于排除区354上方的区域356保持未切割。

在一些实施例中,当前缘352l“分裂”时(例如,如本文中所示当遇到排除区354时),可以通过控制器120将两个潜在的前缘(例如,段353-1和353-2)针对彼此进行评分,以帮助控制器选择潜在段中的一个成为新前缘(例如,使用波前网格值、最期望的区形状、最高效的剪草模式,等等)。一旦选择了最佳前缘段,控制器120然后就可以沿该选择段/前缘路径增填网格单元。该过程持续进行,直到前缘352l再次遇到边界。这样的遇到边界包括:遇到使前缘再次分裂成两个或更多段的另一边界(例如参见遇到图3f中的排除区355);以及通过撞到作业区域的边界(例如参见如图3k中所示遇到边界350)或通过撞到作业区域的先前已切割部分的边界(例如参见如图3j中所示遇到先前已剪草部分)而遇到死端(dead-end)。在遇到排除区的情况下,如上所述地评价潜在的前缘,并且如上所述继续操作。然而,当遇到死端时,一个或多个后缘352t可以朝向前缘352l移动,直到行驶局限区的面积有效地为零(在实践中,该区可以保留充分大的尺寸以避免约束剪草机的移动)。如果作业区域的一些区域仍然保持未切割,那么控制器120可以以与上面关于将剪草机移动到初始行驶局限区描述的方式类似的方式将剪草机100移动到这些未切割区域。发生后者的实例在图3j和图3k中示出并且将在下面描述。

在实践中,控制器120还可能需要应用如下的算法:该算法通常防止行驶局限区变得对于有效剪草机导航来说过于严格。例如,随着行驶局限区的进展(例如,从图3d中所示的区302t4朝向图3e中所示的区302t5),控制器120遇到各种决定点,诸如到达排除区354。当到达排除区354时,如上所述,行驶局限区302可以沿着排除区的下侧向下滑动,如图3d和图3e中所示。然而,当行驶局限区继续移动时,控制器120还必须对该区的形状施加一些约束。例如,控制器120可以防止图3e的后缘352t向右移动得太远以至于附图标记357表示的区域变得太窄,从而使得剪草机在该区域357中的导航成为问题。而是,如图3e所示,控制器120可以限制区域357的最小宽度,并且代替地,随着行驶局限区302t5向右扩展而开始向下绘制上后缘352tu。以这种方式,行驶局限区302可以在维持左后缘352t的位置的同时,添加一面积(如图3e所示通过移动前缘352l)且同时减去等效面积(通过使上后缘352tu向下滑动),以使剪草机导航问题最小化。

随着行驶局限区352继续横跨作业区域300行进,虚拟边界的前缘352l可能到达第二排除区355,如图3f中所示。当发生这种情况时,控制器120可以再次确定——基于网格单元评分(或随机选择)——是采取在排除区355上方的路线(例如,在区354与355之间的区358中),还是采取首先将剪草机100带到排除区355下方的路线(例如,在区355与作业区域边界之间),在图3f中用行驶局限区302t6示出后一路线。

一旦行驶局限区行进经过了排除区355,行驶局限区就可以朝向作业区域300的最右侧边界350(图3g中)以及向上扩展,如行驶局限区302t7和虚拟边界前缘352l所示。随着行驶局限区302移动到排除区355上方,它就可以扩展到先前未切割区358(在两个排除区354、355之间),在图3h中该先前未切割区358用行驶局限区302t8表示。

随着行驶局限区302继续移动(例如,在图3i中向上),它再次遇到排除区354并且可以开始围绕排除区的右侧和顶侧包围,以覆盖先前未切割区356,如图3i中行驶局限区302t9所示。一旦虚拟前缘352l遇到边界350,如图3i所示,在知晓作业区域300的两个隔离区域(356和359)保持未切割的情况下控制器120决定是向左(例如,进入区域356)还是向右(例如,进入区域359)移动。在图3j所示的实施例中,控制器120已决定将剪草机100向左移动并且对区域356进行剪草,该区域356用行驶局限区302t10表示。

一旦剪草机100完成了区域356的剪草,控制器120就可以辨别区域359保持未切割,并且可以命令剪草机前进到该区域。一旦位于该区域内,剪草机100就可以重新启动切割单元,并且继续对最后的未切割区域进行剪草,如图3k所示未切割区域用行驶局限区302t11表示。

如图3a至图3k所示,控制器120可以决定行驶局限区如何行进,以确保以高效的方式充分地覆盖作业区域300。随着剪草机100完成多个剪草期,控制器120还可以获知哪些决定造成了最高效的操作。例如,控制器120可以判断首先将行驶局限区过渡到排除区354上方(而不是如图3d所示在排除区的下方),将是更加高效的。一旦控制器已收集两个路径的数据,它就能够精确地确定哪条路径会造成最高效的操作并且在将来跟随该路径。在剪草过程期间的各点(例如,当遇到排除区355(参见图3f)或死端(参见图3j)时)可能需要这样的决定。在比较来自先前剪草期的历史数据之后,控制器120可以获得寻求优化剪草机效率以及准许精确估计工作完成时间的行驶局限区行进路径。虽然控制器120可以获知并提供对于大多数任何作业区域300来说最高效的切割路径,但是也可以提供如下算法:该算法准许剪草机在不同的剪草期间跟随替代路径,其中这种替代路径可以是有益的(例如,以防止当行驶局限区的一些边界重复位于同一位置时诸如草坪“磨损(burn-in)”之类的不期望的效果)。这样的替代路径可以通过存储多个波前网格(即,从作业区域上的不同的基本单元出发)来提供,使得剪草机可以在不同的初始位置开始剪草操作,并且在遇到各种边界和排除区时相应地做出潜在不同的决定。

图4、图5和图6a至图6h示出了根据本发明的公开的实施例的另一作业区域400的计算机模拟剪草覆盖。与作业区域300一样,作业区域400可以由边界450界定并且包括其中包含的各种排除区454-1、454-2和454-3(统称为“454”)。限定边界/排除区的数据可以例如在训练过程之后存储在存储器124中,或者以其它方式由控制器120知晓。这些图中的轴线上示出的值表示长度单位(例如,米)。

如图4所示,x-y网格可以以作业区域顶点451处为初始位置(例如,坐标0,0处的原点)叠加在作业区域400上。初始位置可以是当未使用时用于容纳剪草机并给剪草机充电的系统基站220的位置,该基站通常位于作业区域中或附近。虽然在图4中网格大体上被示出为二维的,但是在不脱离本发明的公开范围的情况下,它当然适用于高度水平具有变化的作业区域。

可以(例如,利用控制器120)计算从该初始位置开始传播的初始波前网格值。有关波前网格的一般信息,例如参见e.galceran,m.carreras的机器人技术覆盖路径规划调查(asurveyoncoveragepathplanningforrobotics),机器人技术与自主系统(roboticsandautonomoussystems)61(2013)1258-1276。

在图5中可视地示出了用于作业区域400的示例性波前网格500。在该图中,从初始单元到作业区域400内的任何其它单元的距离(沿着避免所有排除区的路径测量)用纵轴或z轴来表示。如该图中进一步所示,波前网格500还考虑了作业区域400的边界450以及排除区454两者。再次,虽然本文中示出了单个波前网格500,但是根据本发明的公开的实施例的剪草机和系统可以映射并存储例如从不同的初始单元发出的多个波前网格。

利用来自该映射的数据,在考虑了所有边界(包括作业区域的边界和排除区)的情况下,控制器120可以计算从基本单元(即,波前网格从其开始传播的单元,在图5的实例中,该单元位于坐标0,0处)到网格上的任何其它单元(例如,在作业区域400内)的最短行驶距离。因此,控制器120可以在操作期间根据需要识别高效的剪草机路线(例如,返回至基站,行驶至作业区域的新的未切割部分,等等)。例如,如果剪草机100在图4所示的位置时需要充电,则控制器120可以基于波前网格确定路线370比路线372短并选择前一行驶路径返回到基站220。

利用计算出并存储在存储器124的波前网格值,控制器120可以命令剪草机首先例如从初始单元(靠近基站220)移动到距离该初始位置最远的单元(即,具有最高波前网格值的单元)并开始剪草。在示例性作业空间400中,剪草机100因此将移动到边界450的顶点460最近的单元,并在此开始剪草,如图6a所示。

控制器120可以建立初始行驶局限区402t1(在图6a至图6g中,用深色阴影表示局限区,而用双阴影表示切割部分并且未剪草区域没有阴影)并且使该区从顶点460向外生长。为了确定行驶局限区402的扩展方向,控制器120可以执行扫描功能,在该扫描功能中分析并记录(例如,连续地或周期性地)关于与行驶局限区402的虚拟周边在外部相邻的每个网格单元的数据。例如,最初,行驶局限区402可以沿多个方向(例如,大体放射状地)扩展,如图6a所示。然而,如图6b所示,扩展的行驶局限区402的前缘可以最终接触排除区454-1的侧边,并且如区402t2的段452l-1和452l-2所示地分裂(如本文中所使用的,术语“段”用于识别由局限边界(例如,边界450)和/或排除区(例如,排除区454-1)定界的虚拟边界)。在该示例性模拟中,当前缘与排除区接触时,控制器120可以检测到前缘即将分叉成第一和第二段452l1-和452l-2。也就是说,一旦行驶局限区402的前进的虚拟周边接触到排除区454-1,为了避免使行驶局限区402/前缘452分叉,控制器120执行决策功能,在该决策功能中决定行驶局限区的前缘前进的方向。在所示实例中,控制器可以决定:将行驶局限区扩展到排除区454-1的上方(通过用第一段452l-1替换前缘而跟随剪草机移动);或者沿着排除区454-1的侧方向下扩展行驶局限区(通过用第二段452l-2替换前缘而跟随剪草机移动)。

为了做出该决定,控制器120可以识别与这些段中的每一个相邻但未在行驶局限区402t2内的网格单元(或者,行驶局限区先前未拜访过的网格单元)。然后,基于先前在波前网格中计算出的平均值对这些相邻的网格单元进行评分(在一些实施例中,也可以对单元的其它参数进行评分)。有关每个段分数的信息(以及诸如每个段所跨的边界的识别符(例如,接界450可以具有一个边界id,并且每个排除区454可以具有其自己的独一无二的边界id)和段的地理位置等其它信息)然后可以被传递至由控制器120执行的决策算法。

在图6b的模拟中所示的示例性作业区域400中,沿着段452l-2,波前网格值较高(例如参见图5)。结果,控制器120可以引导行驶局限区402向前移动,其中段452l-2成为行驶局限区的新前缘。

一旦关于跟随哪段做出了决定,控制器120就可以执行将单元添加到行驶局限区(例如,紧接在新前缘的前面)的增填功能以及可选的去除单元(例如,通过使行驶局限区的后缘前进)的削减功能。以这种方式,行驶局限区可以在剪草机在作业区域内操作的同时横跨该作业区域移动。

行驶局限区402可以继续向下行进(例如,以图6b中的前缘452l-2),从而增填前缘前面的单元并最终削减沿着后缘的单元(远离图6b中所示的段452l-1)。当前缘452l-2到达排除区454-1的下顶点461(参见图6c)时该过程继续。此时,行驶局限区402的前缘可以(在右边界450与局限区454-2之间)继续向下移动以及在局限区454-1与454-2之间向左移动。

然而,在图6c中,一旦行驶局限区的前缘接触到排除区454-2的右上顶点462,前缘就再次分裂成两段452l-3和452l-4。为再次避免行驶局限区/前缘的分叉,控制器120可以至少部分地基于波前网格中的单元值从扫描算法(其关于与这些段中的每一个在外部相邻的网格单元)接收单元分数,并且将这些分数提供至决策算法。如图5中明显看出的,沿着段452l-3的单元具有高于沿着段452l-4的单元的波前网格值。结果,并且如图6c所示,决策算法因此决定通过使作为新前缘的段452l-3前进而将行驶局限区402(402t3)向下移动。在某个时刻,段452l-4然后可以成为向下跟随行驶局限区的后缘,从而在该过程中削减单元。

扫描以及做出防止行驶局限区/前缘分叉的决定的该过程可以在整个作业区域400上继续进行。通常,决策算法将跟随评分较高的单元(即,具有较高波前网格值的那些单元)的增填。然而,评分也可以考虑其它参数,如下面将进一步讨论的。

如图6d所示,行驶局限区402(402t4)可以向下并且在排除区454-2的下方行进,然后基于前缘评分,沿排除区454-2的左侧向上行进。随着控制器120追踪已经拜访过的那些单元,行驶局限区可以最终覆盖排除区454-1与454-2(在图6c中与段454l-4邻接)之间的未切割区域。

如图6e所示,行驶局限区402(402t5)可能最终到死端(即,还示出在图6b中的段452l-1处)。当发生这种情况时,行驶局限区402可以溃缩到能最小导航的尺寸,以确保死端区域的充分覆盖。一旦覆盖完,剪草机100就可以禁用其切割刀片(例如,将马达112(图1b)断电),然后行驶到作业区域400的尚未切割的部分。该未切割部分可以再次通过评价作业区域400的余下的未切割单元的波前网格值并确定哪些单元具有最高分数来确定。在图6a至图6g中所示的模拟中(参见图5),控制器120因此可以命令剪草机100移动到作业区域400的如图6f所示在顶点463附近的单元中或周围的部分。然后,切割刀片可以再次启用,并且临时切割区402(402t6)可以生长/移动以覆盖作业区域的在图6f的左上象限中的部分。

行驶局限区402(例如,图6f中的区402t6)然后可以前进,直到它在作业区域400的先前已切割部分遇到死端。此时,剪草机100可以再次禁用其切割刀片并行驶到作业区域400的尚未切割的另一部分。再次,下一起始点的确定可以基于具有最高波前网格值的剩余单元(例如,图6g中作业区域的在顶点464附近的单元中或周围的部分)来选择。然后,行驶局限区402(402t7)可以扩展并行进以覆盖作业区域400的剩余未切割部分,例如,图6g中在排除区454-3上方、左侧以及下方的那些部分。一旦整个作业区域400都已被剪草机100覆盖,剪草机就可以使其一个或多个刀片断电并返回到基站220以进行充电。

图6e中所示的“死端”状况不是遇到物理边界(即,遇到边界450或排除区454)的结果,而是在所示实施例中实施的前缘分段算法的结果。也就是,图6e中遇到的死端实际上是由先前建立的段452l-1(参见图6b)所产生的“虚拟”死端。示出了独立于作业区域分段发生的硬死端场景的实例,例如,图3k中遇到边界350,以及图2中遇到最右侧边界250。

虽然未示出,但是根据本发明的公开的实施例的方法和系统可以避免这些虚拟死端中的至少一些。例如,在图6e所示的状况中,控制器将替代地辨别出先前的段452l-1最终将导致死端。然后,可以评价行驶局限区的其它段(例如,图6e中的最左侧边缘452l-5),以确定一条能避免这种死端结果的行驶路径。例如,不是溃缩成图6e中的死端,而是行驶局限区402t5将会在图6e中表示的时间或该时间之前开始利用前缘452l-5向左行进。在这种场景下,静态段452l-1最终也将开始向左行进,从而形成行驶局限区的后缘。然后,行驶局限区将会在作业区域400的左上象限中继续朝向最左侧边界450前进,然后它会在物理边界450遇到死端。

从上面关于图6a至图6g的描述可明显看出,根据本发明的公开的实施例的行驶局限区系统和方法可以涉及至少四个处理功能:扫描(对在外部相邻的单元进行评分);决策(决定将行驶局限区引导到哪里);增填单元(沿着行驶局限区的前缘添加单元);以及削减单元(即,沿着行驶局限区的后缘去除单元)。如本文中所使用的,“在外部相邻”在任何给定时间都是指在行驶局限区之外但是位于与局限区的边界相邻的位置处的单元。

图6h是图6b所示的区402t2的放大部分。为清楚起见,该图中所示的单元被放大。如上所述,实际的网格单元尺寸可以小于所示的尺寸(例如,以提供更高分辨率的网格)。作业区域自身可以划出第一组多个网格单元(该图中仅示出了这些单元中的一些(在边缘452l-1和452l-2周边或与之在外部相邻的单元)),而行驶局限区划出更小的第二组多个网格单元(第二组多个网格单元是第一组多个网格单元的子集)。

在图6h中所示的特定时间点,第一处理功能(扫描)可以对两个或更多个单元进行评分,其中该两个或更多个单元中的一个是从与边缘452l-1在外部相邻的单元453中选出的;并且该两个或更多个单元中的另一个是从与边缘452l-2在外部相邻的单元455中选出的。这样的评分再次可以基于一个或多个参数,包括例如:评价或比较这两个或更多个网格单元中的每一个单元的波前网格值;以及比较从这两个或更多个网格单元中的每个单元到行驶局限区的质心457的距离。基于该分析,控制器可以执行第二(决策)功能并且从这些边缘中选择一个,以形成行驶局限区的新前缘。然后,控制器可以沿着新前缘452l-2增填单元(例如,将单元455(例如,来自第一组多个网格单元)添加到行驶局限区)(第三功能),并且沿着现在是行驶局限区的后缘的边缘削减单元(例如,从行驶局限区去除单元459)(第四功能)。

图7是示出根据本发明的公开的实施例的(例如,由控制器120执行的)行驶局限区的决策过程700的流程图。如上所述,通过扫描功能对网格中的相关单元的值进行评分将是进入该算法之前已知的。

在701处进入该过程。在702处,基于本文别处描述的扫描功能,来确定行驶局限区是否遇到死端。如果答案为是,则过程进行到704,其中没有增填另外的单元,此后,该过程在706处退出。

如果在702处,行驶局限区没有遇到死端,则该过程可以接下来在708处确定是否有行驶局限区的先前选择的前缘。如果答案为否,则该过程可以在710处选择最高评分段以建立行驶局限区的前缘,此后,该过程进行到716。该过程在716处评价前缘是否遇到死端。如果答案为是,则该过程在718处声明死端并返回到702。然而,如果在716处确定前缘没有遇到死端,则该过程在720处进行增填前缘,此后,该过程结束。

另一方面,如果在708处答案为是,则该过程可以接下来在712处确定前缘是否已分叉或分裂。如果在712处的答案为否,则该过程可以直接进行到716。然而,如果712处的答案为是,则该过程可以在进行到716之前首先在714处从分裂中选择最高评分段。

增填器功能/算法可以仅在行驶局限区行进(前缘和后缘都移动)或填充(行驶局限区初始生长成期望尺寸的阶段,例如如图6a和图6b中所示)时期间才有效。

在一些实施例中,通过扫描功能确定的相关单元的“分数”可以是取决于不同因素的累积分数。例如,一个子分数值可以是基于如上所述的波前网格值,而第二子分数值可以是基于例如特定单元与当前行驶局限区的质心或其它几何特征的距离。然后,可以将这些子分数相加(确保相应子分数的单位或权重是一致的),以得出在决策算法中使用的总单元分数。此外,虽然整个前缘可以由扫描功能进行评分,但是控制器120可以仅增填(例如,将单元添加到行驶局限区)沿着前缘的单元的一部分,例如,最高处20%至50%(在一个实施例中为30%)。

与增填器功能一样,削减器也仅在某些时间期间有效,即,当行驶局限区行进(前缘和后缘都移动)或清空(行驶局限区收缩的阶段,诸如在图6e中所示的死端处)时。在一些实施例中,削减器功能可以简单地分析行驶局限区的整个接界并且去除其中的“最旧”单元的一部分,例如,最旧的40%至60%。然而,在其它实施例中,削减器功能也可以以类似于增填器功能的方式评价单独的“段”,以便更加高效地从行驶局限区去除单元。

此外,与增填器功能一样,削减器功能可以利用评分算法(例如,在扫描功能/阶段期间评价的)来计算各种单元子分数。例如,除了行驶局限区内的单元“年龄”之外,评分算法还对每个单元关于该单元与当前行驶局限区的质心或其它几何特征的距离进行子评分。再一次,子分数可以加起来以获得用于削减的总体单元分数。

削减的概念是迭代的过程,该过程寻求当行驶局限区行进时将与由增填功能添加的那些单元等效的目标数量的单元去除,并且当行驶局限区清空时将任意目标数量的单元去除(当行驶局限区填充时,削减器功能可以处于无效状态,直到该区达到期望的尺寸,并且此时削减器可以有效地去除单元)。

虽然本文中在单个剪草期的背景下进行了描述,但是剪草机100可能无法在单个期中完成整个作业区域的剪草而不用尽其电量。因此,控制器120可以一直记录位置数据并将关于哪些区域已剪草以及它们何时被剪草的这种数据存储起来。结果,剪草机可以在电池需要充电时暂停切割,然后在先前暂停切割的同一区域随后恢复切割(充电后)。

如图2、图4和图6a所示,剪草机系统还可以包括基站220,基站220可以位于作业区域中或附近。基站可以在剪草期之间容纳剪草机100并准许剪草机电池充电。在一些实施例中,剪草机控制器的一些方面可以被结合入基站中。例如,另外地或者作为替代方案,基站220可以包含控制器120。在这种情况下,基站220能够与剪草机无线且双向通信(例如,通过wi-fi),以从剪草机接收数据并将数据提供至剪草机。

本文引用的专利文件和其它各种出版物的完整公开内容通过引用整体并入,就好像每个文献都单独并入一样。在本申请的公开内容与通过引用并入本文的任何文件的一个或多个公开内容之间存在任何不一致的情况下,以本申请的公开内容为准。

描述了示例性实施例,并且已经对其进行了可能的变化。这些和其它变化、组合以及修改对本领域技术人员将是显而易见的,并且应当理解,权利要求书不限于本文阐述的说明性实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1