对多个区块割刈的方法、系统、机器人及计算机可读介质

文档序号:1061287 发布日期:2020-10-16 浏览:7次 >En<

阅读说明:本技术 对多个区块割刈的方法、系统、机器人及计算机可读介质 (Method, system, robot and computer readable medium for mowing a plurality of areas ) 是由 P.C.巴卢蒂斯 A.比利 B.雅莫奇 于 2015-09-16 设计创作,主要内容包括:本公开提供对多个区块割刈的方法、系统、机器人及计算机可读介质。所述对多个区块进行割刈的方法可以包括:通过生成指示第一区块的第一边界和第二区块的第二边界的数据,训练自主草坪割刈机器人割刈多个区块;通过生成指示用户选择的穿过第一区块的路线的数据,训练机器人横穿第一区块;将指示路线的数据以及指示第一边界和第二边界的数据传送到移动计算设备,以在移动计算设备的显示器上呈现第一边界、第二边界和路线的表示;以及发起割刈操作,机器人在割刈操作中自主地:禁用割刈功能,在禁用割刈功能后,通过遵循路线行进到第二区块,而不对第一区块进行割刈,以及在行进到第二区块后,激活割刈功能以对第二区块进行割刈。(The present disclosure provides methods, systems, robots, and computer readable media for mowing multiple areas. The method of mowing a plurality of areas may comprise: training the autonomous lawn-mowing robot to mow the plurality of areas by generating data indicative of a first boundary of the first area and a second boundary of the second area; training the robot to traverse the first tile by generating data indicative of a user-selected route through the first tile; transmitting data indicative of the route and data indicative of the first boundary and the second boundary to the mobile computing device to present representations of the first boundary, the second boundary, and the route on a display of the mobile computing device; and initiating a mowing operation, wherein the robot autonomously: disabling the mowing function, after disabling the mowing function, traveling to the second area by following the route without mowing the first area, and after traveling to the second area, activating the mowing function to mow the second area.)

对多个区块割刈的方法、系统、机器人及计算机可读介质

本申请是申请日为2015年9月16日、申请号为201580035206.0(国际 申请号为PCT/US2015/050482)、发明名称为“分离的草坪区块的机器人割刈” 的发明专利申请的分案申请。

技术领域

本发明涉及通过自主机器人割刈草坪区块和其它区块,更具体地说,涉 及割刈多个不毗邻区块。

背景技术

自主机器人可以编程为割刈(mow)草坪区块。必须谨慎保持这些机器人 不在所意图的区块外部进行割刈。所埋入的电引线一般定义机器人编程为不 穿越的草坪边界。也已经考虑其它形式的航行。

发明内容

本发明的一个方面表征一种对空间所分离的多个区块进行割刈的方法。 所述方法包括:训练机器人割刈器(mower)以割刈所述区块,包括:在存 储指示每个区块的边界相对于边界标记器的位置的数据的同时,在所述区块 周围移动所述机器人割刈器;所述方法还包括:训练所述机器人割刈器以移 动穿过分离所述区块的所述空间,包括:将所述机器人割刈器移动到所述区 块中的第一个的横穿启动点;存储指示所述横穿启动点的位置的数据;将所 述机器人割刈器移动到所述区块中的第二个的横穿着陆点;以及存储指示所述横穿着陆点的位置的数据。发起割刈操作,其使得所述机器人割刈器自主 地并且按顺序地:割刈所述区块中的所述第一个;移动到所述横穿启动点; 从所述横穿启动点穿过所述空间移动到所述横穿着陆点;以及然后割刈所述 区块中的所述第二个。

在一些示例中,所述方法还包括:训练所述机器人割刈器以移动穿过将 所述第二区块与待割刈的第三区块分离的第二空间。所述方法可以还包括: 生成表示所述区块和所述空间中的一个或多个的区格的2D网格,以及将值 分配给所述区格中的每一个。所述值指示特定区格是否为可割刈的。所述值 也可以指示所述区格是否处于所述边界中的一个或多个上。所述值可以指示 所述区格是否沿着所述横穿启动点与所述横穿着陆点之间的路径。

在一些示例中,在训练所述机器人割刈器以割刈所述区块中的第一个之 后并且在训练所述机器人割刈器以割刈所述区块中的第二个之前执行训练 所述机器人割刈器以移动穿过分离所述区块的所述空间。所述割刈器和边界 标记器中的每一个可以包括从5925MHz到7250MHz的频率操作的各个宽带 收发机。训练所述机器人割刈器以移动穿过所述空间可以还包括:存储指示 沿着所述横穿启动点与所述横穿着陆点之间的路径的至少一个中间方位的 数据;以及发起所述割刈操作可以使得所述机器人割刈器沿着所述路径移动 通过所述中间方位。

在一些情况下,发起所述割刈操作可以使得所述机器人割刈器根据部分 地由所述第一区块的形状确定的割刈模式来割刈所述第一区块。例如,所述 割刈模式可以是谷物行模式。发起所述割刈操作可以使得所述机器人割刈器 在割刈所述区块中的第二个之后自动地推断所述割刈操作,而不再次在所述 区块中的第一个内进行割刈。

在一些实施例中,所述横穿启动点处于所述第一区块的所述边界上。所 述横穿着陆点可以处于所述第二区块的所述边界上。

在一些实现方式中,在所述割刈操作期间,所述割刈器在直线中从所述 横穿启动点穿过所述空间移动到所述横穿着陆点。在所述割刈操作期间,所 述机器人割刈器可以在移动穿过所述空间的同时自动地禁用割刈功能,并且 然后可以在所述第二区块中重新激活所述割刈功能。

本发明的另一方面表征一种机器人割刈器,具有:有轮底盘;机动化杂 草切割器,由所述有轮底盘承载;以及控制器。所述控制器被配置为:存储 指示待割刈的至少两个区块中的每一个的边界的位置的数据,其中,所述至 少两个区块由不待割刈的空间分离;存储指示穿过所述不待割刈的空间的横 穿路径的数据,其中,所述区块中的第一个的横穿启动点和所述区块中的第 二个的横穿着陆点沿着所述横穿路径定位,以及控制所述机器人割刈器以执 行割刈操作。在割刈操作中,所述机器人割刈器自主地并且按顺序地:割刈 所述区块中的所述第一个;移动到所述横穿启动点;从所述横穿启动点穿过 所述空间并且沿着所述横穿路径移动到所述横穿着陆点;以及割刈所述区块 中的所述第二个。

在一些示例中,所述控制器进一步被配置为:将所述机器人割刈器在直 线中从所述横穿启动点移动到所述横穿着陆点。所述控制器可以进一步被配 置为:训练所述机器人割刈器以移动穿过将所述第二区块与待割刈的第三区 块分离的第二空间。所述控制器也可以被配置为:在所述机器人割刈器沿着 所述横穿路径移动的同时自动地禁用所述杂草切割器;以及一旦所述机器人 割刈器处于所述第二区块中就重新激活所述杂草切割器。所述控制器可以存 储指示沿着所述横穿路径的至少一个中间方位的数据,并且其中,所述割刈 操作使得所述机器人割刈器沿着所述横穿路径移动通过所述中间方位。

所述控制器可以被配置为:生成表示所述区块和所述空间中的一个或多 个的区格的2D网格,以及将值分配给所述区格中的每一个。例如,所述值 可以指示区格是否为可割刈的。所述值可以进一步指示所述区格是否处于所 述边界中的一个或多个上。所述值也可以指示所述区格是否沿着所述横穿启 动点与所述横穿着陆点之间的路径。

在所述机器人割刈器的一些实现方式中,所述控制器训练所述机器人割 刈器以在所述机器人割刈器受训练以割刈所述区块中的所述第一个之后并 且在所述机器人割刈器受训练以割刈所述区块中的第二个之前移动穿过分 离所述区块的所述空间。例如,所述机器人割刈器和边界标记器中的每一个 可以包括从5925MHz到7250MHz的频率操作的各个宽带收发机。所述控制 器可以存储指示沿着所述横穿路径的至少一个中间方位的数据,并且所述割 刈操作可以包括:所述机器人割刈器沿着所述路径移动通过所述中间方位。

很多草坪并非是规则形状的或构成于连续的杂草区域。例如,草坪可以 包括不可割刈区块(例如路径或车道)所分离的多个不同的可割刈区块。为 了割刈草坪的多个不毗邻区段或区块,在此所描述的机器人草坪割刈器在各 分离的草坪区块之间航行,以割刈多个区块。

在一些示例中,所述机器人包括控制器和子系统,被配置为:引导所述 机器人横穿将第一草坪区块与第二草坪区块分离的不可割刈区块。在一些情 况下,机器人控制其子系统,从而切割系统在割刈操作期间是可操作的,并 且在横穿各草坪区块之间的不可割刈区块而且旁路草坪区块以行进到另一 草坪区块期间是不可操作的。因此,单个机器人可以用于看管两个或更多个 物理上分离的草坪区块。

所述系统可以进一步允许训练机器人采取以完成割刈操作、旁路操作以 及横穿操作而且在各草坪区块之间移动的路线的自动化方法、手动方法或自 动化方法和手动方法的可选择的组合。所述自动化方法可以包括用于增加割 刈操作的效率的优化技术。用户也可以具有用于通过手动训练方法来僭越自 动化方法的灵活性。

本发明的另一个方面表征一种对多个区块进行割刈的方法,所述方法包 括:通过生成指示多个区块中的第一区块的第一边界和多个区块中的第二区 块的第二边界的数据,训练自主草坪割刈机器人割刈多个区块;通过生成指 示用户选择的穿过多个区块中的第一区块的路线的数据,训练所述机器人横 穿多个区块中的第一区块;将指示所述路线的数据以及指示所述第一边界和 所述第二边界的数据传送到移动计算设备,以在移动计算设备的显示器上呈 现所述第一边界、所述第二边界和所述路线的表示;以及发起割刈操作,所 述机器人在所述割刈操作中自主地:禁用割刈功能,在禁用割刈功能后,通 过遵循所述路线行进到多个区块中的第二区块,而不对多个区块中的第一区 块进行割刈,以及在行进到多个区块中的第二区块后,激活割刈功能以对多 个区块中的第二区块进行割刈。

本发明的另一个方面表征一种控制自主草坪割刈机器人对多个区块进 行割刈的方法,所述方法包括:发起训练模式,在所述训练模式下,用户使 所述机器人沿多个区块中的第一区块的第一边界以及沿多个区块中的第二 区块的第二边界航行;向所述机器人传送指示用户选择的穿过多个区块中的 第一区块的路线的数据,以训练所述机器人横穿多个区块中的第一区块,使 得在割刈操作期间,所述机器人自主地:禁用割刈功能;在禁用割刈功能后, 通过遵循所述路线行进到多个区块中的第二区块,而不对多个区块中的第一区块进行割刈,以及在行进到多个区块中的第二区块后,激活割刈功能以对 多个区块中的第二区块进行割刈;以及在移动计算设备的显示器上呈现所述 第一边界、所述第二边界和所述路线的表示。

本发明的另一个方面表征一种控制自主草坪割刈机器人对多个区块进 行割刈的方法,所述方法包括:使所述机器人沿多个区块中的第一区块的第 一边界航行;使所述机器人沿多个区块中的第二区块的第二边界航行,以训 练所述机器人割刈多个区块;选择穿过多个区块中的第一区块的路线,以训 练所述机器人横穿多个区块中的第一区块;发起所述第一边界、所述第二边 界和所述路线的表示在移动计算设备的显示器上的呈现;以及发起割刈操 作,所述机器人在割刈操作中自主地:禁用割刈功能,在禁用割刈功能后, 通过遵循所述路线行进到多个区块中的第二区块,而不对多个区块中的第一 区块进行割刈,以及在行进到多个区块中的第二区块后,激活割刈功能以 对多个区块中的第二区块进行割刈。

本发明的另一个方面表征一种方法,包括:发起自主草坪割刈机器人的 训练模式;以及在用户计算设备的用户接口上呈现,指示第一可割刈区块、 第二可割刈区块以及第一可割刈区块和第二可割刈区块之间的空间的地图, 穿过所述空间的路线的表示,所述机器人在对第一可割刈区块或第二可割刈 区块中的至少一个进行割刈的割刈操作期间沿着所述路线航行而不进行割 刈,所述机器人在训练模式下航行的第一可割刈区块的边界的表示,以及所 述机器人在训练模式下航行的第二可割刈区块的边界的表示。

本发明的另一个方面表征一种系统,包括计算设备,包括:用户接口; 存储器,被配置为存储指令;以及处理器,用于执行所述指令以执行操作, 所述操作包括:发起自主草坪割刈机器人的训练模式;以及在用户接口上呈 现,指示第一可割刈区块、第二可割刈区块以及第一可割刈区块和第二可割 刈区块之间的空间的地图,穿过所述空间的路线的表示,所述机器人在对第 一可割刈区块或第二可割刈区块中的至少一个进行割刈的割刈操作期间沿 着所述路线航行而不进行割刈,所述机器人在训练模式下航行的第一可割刈 区块的边界的表示,以及所述机器人在训练模式下航行的第二可割刈区块的 边界的表示。

本发明的另一个方面表征一个或多个非暂时性计算机可读介质,其存储 可由处理设备执行的指令,并在执行所述指令时使所述处理设备执行操作, 所述操作包括:发起自主草坪割刈机器人的训练模式;以及在用户计算设备 的用户接口上呈现,指示第一可割刈区块、第二可割刈区块以及第一可割刈 区块和第二可割刈区块之间的空间的地图,穿过所述空间的路线的表示,所 述机器人在对第一可割刈区块或第二可割刈区块中的至少一个进行割刈的 割刈操作期间沿着所述路线航行而不进行割刈,所述机器人在训练模式下航 行的第一可割刈区块的边界的表示,以及所述机器人在训练模式下航行的第 二可割刈区块的边界的表示。

本发明的另一个方面表征一种自主草坪割刈机器人,包括驱动系统,用 于使所述机器人在可割刈区块周围移动;切割系统,用于在所述机器人在可 割刈区块周围移动时对可割刈区块进行割刈;以及控制器,用于:根据调度 发起第一割刈操作以对可割刈区块中的第一可割刈区块进行割刈,以及根据 调度发起第二割刈操作以对可割刈区块中的第二可割刈区块进行割刈。

本发明的另一个方面表征一种方法,包括:由用户计算设备呈现可刈割 区块的地图的图形表示;以及由用户计算设备传送指示用户选择的调度的数 据,以发起自主草坪割刈机器人的割刈操作,其中指示所述调度的数据包括: 第一数据,所述第一数据使所述机器人根据调度发起所述割刈操作中的第一 割刈操作,以对可割刈区块中的第一割刈区块进行割刈,以及第二数据,所 述第二数据使所述机器人根据调度发起第二割刈操作,以对可割刈区块中的 第二割刈区块进行割刈。

本发明的另一个方面表征一种系统,包括计算设备,包括:用户接口; 存储器,被配置为存储指令;以及处理器,用于执行所述指令以执行操作, 所述操作包括:使用用户接口呈现可刈割区块的地图的图形表示;以及传送 指示用户选择的调度的数据,以发起自主草坪割刈机器人的割刈操作,其中 传送指示调度的数据包括传送:第一数据,所述第一数据使所述机器人根据 调度发起所述割刈操作中的第一割刈操作,以对可割刈区块中的第一割刈区 块进行割刈,以及第二数据,所述第二数据使所述机器人根据调度发起所述 割刈操作中的第二割刈操作,以对可割刈区块中的第二割刈区块进行割刈。

在附图和以下描述中阐述本发明一个或多个实施例的细节。本发明的其 它特征、目的和优点从描述和附图以及权利要求是清楚的。

附图说明

图1A是自主草坪割刈器机器人的示意性底视图。

图1B是图1A的机器人的示意性侧视图。

图1C是图1A的机器人的控制系统的框图。

图2是具有分离不毗邻草坪区块的横穿区域的示例不毗邻草坪区块集合 的示意图。

图3是图2的机器人的存储器结构的框图。

图4A-图4B是示出对机器人教导不毗邻草坪区块的边界的方法的示意 图。

图5A-图5B是示出对机器人教导横穿区域的横穿路线的方法的示意图。

图6是示出对机器人教导不毗邻草坪区块的旁路路线的方法的示意图。

图7A-图7B是均具有用于机器人的不同的覆盖路线的图2的示意图。

图8是安装有应用以控制机器人的计算设备的屏幕快照。

图9是训练机器人的示例方法的流程图。

图10A-图10B是用于操作机器人的示例的流程图。

各个附图中的相同标号指示相同要素。

具体实施方式

以下所描述的机器人草坪割刈器可以随着其自主地在草坪区块周围移 动而割刈不毗邻草坪区块,并且穿越分离草坪区块的横穿区域或空间。机器 人包括切割系统,具有切割刀片,用于随着其经由具有使得机器人移动的轮 的驱动系统沿着草坪路线移动而在草坪区块上切割杂草(“路线”在此又称为 “路径”)。切割系统与驱动系统解耦合,从而在驱动系统正运行的同时,机 器人可以禁用切割系统。例如,在机器人遵循穿过各草坪区块之间的横穿区 域的横穿路线的同时,机器人可以禁用切割系统。

控制器耦合到存储器存储元件,其存储各个操作期间的机器人的行为以 及用于割刈不毗邻草坪区块的调度。在一些调度中,机器人可以编程为割刈 与机器人的当前位置分离的目标草坪区块。机器人可以编程为在切割系统禁 用的情况下沿着穿过草坪区块的旁路路线移动,从而机器人可以到达目标草 坪区块,而不割刈处于机器人的位置与目标草坪区块之间的草坪区块。存储 器存储元件还存储例如与沿着草坪路线、横穿路线以及旁路路线的点或分段 对应的数据。用户进行的手动训练或机器人上所编程的子例程进行的自动化 路径规划的组合确定路线,并且存储器存储元件可以存储属于路线的数据。

图1A-图1B是自主草坪割刈器机器人10的示例的普通示意性概述,图 1C示出操作自主草坪割刈器机器人10的控制系统的框图。图1A以前向方 向F示出机器人10的示意性底视图,其包括主体20,主体20包含(图1C 所示的)驱动系统600的轮模块610a-b以及(图1C所示的)切割系统400 的切割器410。

轮模块610a-b包括轮、电机、以及变速箱,用于在前向方向和后向方向 上驱动机器人10。轮模块610a-b可以有差异地受操作,从而机器人可以基 于提供给每个轮的驱动的等级而转向。驱动系统600还包括脚(caster)轮 620a-b,其部分地支撑机器人10的重量。

切割器410是例如可旋转的往复式刀片,其可以随着(图1C所示的) 切割器驱动子系统420驱动切割器410以旋转而切割杂草。切割器410具有 割刈宽度WM,其定义机器人10随着机器人10在未切割的杂草上移动而切 割的杂草的宽度。切割器驱动子系统420包括高功率电机以及高扭矩变速箱, 其操作切割器410,从而电机、变速箱和切割器410可以按最高功率切割杂 草的厚割幅。

机器人10的底部部分可以还包括(图1C所示的)传感器系统650的传 感器部分。这些传感器可以包括:切割边沿传感器510a-b,其在切割的杂草 与未切割的杂草之间进行区分;杂草高度传感器,其测量机器人10之下的 杂草的高度;以及悬崖传感器,其检测机器人10下面的地形的陷落。

图1B是示例性机器人10的示意性侧视图。机器人10包括具有功率源 810的功率系统800、控制器1000、通信系统1100以及存储器存储元件900。 控制器1000控制机器人10的系统,将稍后参照图1C更详细对此进行描述。 功率系统800经由功率源810将功率提供给其它机器人系统。通信系统1100 允许控制器1000与计算设备(例如移动设备或基于web的设备)进行无线 通信。通信系统1100可以包括例如蓝牙收发机和/或WiFi收发机。

包括功率源810的功率系统800将功率提供给可通过机器人操作的系 统。功率源810是可调整的,从而功率系统800可以提供全部功率的某百分 比。功率系统800内的充电系统820可连接到外部充电坞,以对功率源810 进行充电。

机器人10的(图1C所示的)传感器系统650还包括(图1C所示的) 位置估计系统655。在一些示例中,位置估计系统655是基于飞行时间的系 统,其使用边界标记器(由此又称为“信标”或“标记器”)与机器人之间的飞 行时间以确定机器人的姿势。例如,可以沿着草坪的边界放置边界标记器。 虽然飞行时间系统使用已经描述为边界标记器的标记器,但标记器也可以放 置在草坪内或附近,以协助机器人草坪割刈器的定位。在一些情况下,边界 标记器发出机器人草坪割刈器解释以确定其相对于边界标记器的方位的信 号。在其它示例中,边界标记器是无源的,并且机器人草坪割刈器的辐射源 发射辐射,其反射离开位于草坪区块中的表面并且由机器人上的辐射检测器 检测。定位可以使用三角测量以确定边界内的机器人方位。边界标记器与位 于房产上的机器人之间所发送的信号允许机器人通过计算到达边界标记器 中的每一个的飞行时间并且使用三角测量以计算机器人的当前方位来估计 角度和距离。在另一示例中,并非使用飞行时间测量,系统可以使用固定角 度激光指示符以及CMOS成像器通过二者之间的已知基线来三角测量距对 象的距离。在这些示例中,在成像器处的接收到的信号的像素位置指示距对 象的距离。在一些特定示例中,边界标记器是5,925MHz至7,250MHz范围 中的宽带收发机或超宽带收发机。然而,可以使用其它飞行时间收发机。

此外,传感器系统650包括障碍物感测系统657,其还包括部署在机器 人10的横向侧上的接近度传感器680,从而机器人10可以检测其何时已经 与物理屏障接触或其何时紧密接近物理屏障。接近度传感器680可以采取接 触传感器的形式(例如,检测机器人上的防撞器对物理屏障的冲击的传感器) 和/或LIDAR(光检测和测距,其可能需要测量散射光的性质以寻找远距目 标的范围和/或其它信息的光学遥感)传感器,其检测机器人何时紧密靠近附 近对象。

传感器系统650还包括(图1C所示的)手柄感测系统670,其检测可 拆卸手柄675何时附连到机器人10。可拆卸手柄675在训练模式以及割刈模 式下是可用的。传感器系统650的其它传感器包括:全球定位系统(GPS), 作为用于确定机器人10的位置的附加部件;倾斜传感器,用于检测机器人 之下的地形的水平面;雨传感器,用于检测可能损坏机器人10的机电组件 的来自例如雨的水;以及可通过其它系统操作以辅助控制机器人10的传感 器和编码器。附加地或替代地,传感器系统650可以包括但不限于轮掉落传 感器、声纳、雷达等、红外悬崖传感器、相机(例如体积测定点云成像、三 维(3D)成像或深度映射传感器、可见光相机和/或红外相机)等。

参照图1C,为了实现可靠并且鲁棒的自主移动和切割,机器人10包括 控制器1000,其操作存储器存储元件900、通信系统1100、切割系统400、 传感器系统650、驱动系统600、航行系统700以及功率系统800。切割系统 400包括切割器驱动子系统420,其可以包括电机和变速箱,以驱动切割器。 传感器系统650还包括手柄感测系统670和位置估计系统655以及前述其它 传感器。控制器1000操作航行系统700,其被配置为:穿过草坪区块和/或横穿区域在存储器存储元件900中所存储的路径或路线中操纵机器人10。航 行系统700是控制器1000上所执行的基于行为的系统。航行系统700与传 感器系统650进行通信,以确定驱动命令并且将其发放到驱动系统600。具 体地说,控制器包括响应于来自障碍物感测系统657的传感器信号而实现的 障碍物检测和避开方法和行为。机器人可以使用其接近度传感器以检测在机 器人10前面大致附近的障碍物的普通几何形状,从而机器人10可以确定转 向哪个方向。例如,使用部署在机器人10的前部上的接近度传感器680,控 制器1000可以确定机器人何时将要与障碍物碰撞,并且将指令传递到航行 系统700和驱动系统600以避开障碍物。

存储器存储元件900存储属于操作(例如割刈操作或横穿操作)的数据 以及可以关于例如训练操作或割刈操作而实现的机器人的子例程。数据还包 括草坪路线数据、横穿路线数据、旁路路线数据、路径行为数据以及调度数 据,将稍后更详细地对其全部进行描述。控制器1000与存储器存储元件900 进行通信,以确定在操作期间激活或禁用哪些系统。可以按从0%(例如关 闭)到100%的等级激活系统(例如切割系统400、驱动系统600、功率系统 800)。存储器存储元件900包括与用于操作的激活等级关联的数据。例如, 在一些操作(例如横穿操作)中,控制器1000归因于对于横穿操作的较低 功率要求而按50%激活等级来激活功率系统800。控制器1000可以具有高 功率模式(例如功率系统800的75%-100%激活等级),以当割刈大的并且厚 的杂草的割幅时容纳切割系统400中的较大机械应力。

包括在此所公开并且示出的感测系统、切割系统、驱动系统、航行系统、 功率系统、通信系统的机电系统可以包括题为“Robot Confinement”的2007 年3月19日提交的美国专利申请序列号No.11/688,213中所公开的附加要素 和特征,其公开通过其完整引用合并到此。

通常,很多草坪是不规则形状的,或包括不连续杂草区域。例如,草坪 可以包括不可割刈区块(例如路径或车道)所分离的多个不同的可割刈区块。 为了割刈草坪的多个不毗邻区段或区块,在此所描述的机器人草坪割刈器在 各分离的草坪区块之间航行,以割刈多个区块。

图2描述具有三个不毗邻草坪区块102a-c的房产100的示例的示意图。 草坪区块102a-c分别具有边界106a-c。横穿区域104a分离草坪区块102a和 草坪区块102b,横穿区域104b分离草坪区块102b和草坪区块102c。草坪 区块102a具有玫瑰花园125,其为不可割刈的特征(例如区块102a的边界 内的保留或不可割刈的空间)。横穿区域104a包括将草坪区块102a与草坪 区块102b分离的混凝土走道115以及混凝土走道115内的花卉分隔区116。因此,如果机器人草坪割刈器将要割刈草坪区块102a和区块102b二者,则 其必须在没有花卉分隔区116的区域中穿越混凝土走道115。草坪区块102c 具有带有位于边界106c的分段处的树木127的非定型形状。横穿区域104b 是岩石区块117,其包括圆形火坑131。因此,为了在草坪区块102b与草坪 区块102c之间航行,机器人必须在避开火坑131的同时横穿区域104b。

示出停泊在充电坞50处的机器人10根据用户预先确定的调度来割刈草 坪区块102a-c。充电坞50恢复机器人10的(先前所描述的)功率源,并且 还充当(稍后更详细地描述的)用于机器人存储的路线数据的启动点1001。 机器人10可以经由横穿区域104a-b从一个草坪区块移动到另一草坪区块。

图3示出机器人可以执行以割刈不毗邻草坪区块集合的存储在(图1C 中所描述的)存储器存储元件900中的训练数据303的示例。为了训练机器 人10,如稍后将讨论的那样,可以通过自动化方法、手动方法或这两种方法 的组合来生成训练数据303。训练数据303包括边界数据305、内部边界数 据310、横穿路线数据315、旁路路线数据320、草坪路线数据325、路径行 为数据330以及调度数据335。(图1C中所描述的)控制器1000可以处理 并且执行训练数据303中的至少一些,以在草坪区块和横穿区域周围移动, 并且割刈目标草坪区块。

边界数据305是界定草坪区块的点集合。短暂返回参照图2,草坪区块 102a-c的边界106a-c可以分别表示为存储为边界数据305a-c的离散点集合 或在笛卡尔网格中的所标记的区格集合,稍后将更详细地对此进行描述。从 边界数据305,控制器可以确定草坪区块的几何特性,包括长度、宽度、面 积和形状。

内部边界数据310是界定无法横穿的障碍物的点集合。内部边界数据 310定义机器人草坪割刈器不应割刈的可割刈区块内的保留区带。例如,再 次短暂返回参照图2,玫瑰花园125和火坑131可以表示为存储为内部边界 数据310的离散点集合。

横穿路线数据315、旁路路线数据320和草坪路线数据325均包括点集 合。横穿路线数据315、旁路路线数据320和草坪路线数据325中所存储的 每个点包括一个或多个位置(例如从一个或多个数据点测量的X坐标、Y坐 标)。如稍后将更详细地描述的那样,一个或多个数据点可以对应于相对于 沿着边界放置的边界标记器的位置。边界标记器的位置充当关于边界数据 305、横穿路线数据315、旁路路线数据320和草坪路线数据325中所存储的其它点的基准点。通常相对于与边界标记器相对所建立的坐标系统而测量在 此的点的位置。

控制器可以使用路线数据315、320、325,以生成随着机器人10执行割 刈操作、横穿操作或旁路操作其遵循的移动的一个或多个路径。可以关于例 如草坪上的主方向和基准点所定义的笛卡尔坐标系统测量点和定向角度。点 对应于机器人的方位,定向对应于机器人的前部正面对的方向。控制器可以 控制驱动系统和航行系统,从而机器人放置到点的方位以及与该点关联的定 向中。控制器使用路线数据315、320、325的点以生成用于在草坪区块和横 穿区域周围移动的路线。

还参照图2,横穿路线数据315包括分别用于横穿区域104a和横穿区域 104b的横穿路线数据315a和横穿路线数据315b。通常,在横穿操作期间, 机器人在第一草坪区块的边界上开始,遵循穿越横穿区域的路线,并且在第 二草坪区块上结束。在图2的示例中,控制器使用横穿路线数据315a中所 存储的点,以生成用于机器人从草坪区块102a穿过横穿区域104a移动以到 达草坪区块102b的横穿路线。控制器使用横穿路线数据315b中所存储的点, 以生成用于机器人从草坪区块102b穿过横穿区域104b移动以到达草坪区块 102c的横穿路线。横穿路线数据至少包括横穿启动点和横穿着陆点。横穿启 动点和横穿着陆点可以是相对于边界标记器的地理位置或方位(例如坐标系 统中的X方位、Y方位)。横穿路线数据可以还包括中间横穿点。

横穿启动点通常对应于第一草坪路线的结束点;中间横穿点通常对应于 机器人行进的横穿区域中的点(例如路径或路线);横穿着陆点通常对应于 第二草坪路线的开始点。第一草坪路线在第一草坪区块与横穿区域之间的第 一接口处终止。第一接口由用于第一草坪区块的边界数据的点子集定义。

横穿路线内的中间横穿点对应于机器人在横穿区块的同时遵循的点。中 间横穿点可以进一步对应于机器人的系统(例如驱动系统、功率系统、航行 系统等)的行为的其它改变。例如,控制器可以在中间横穿点处增加功率等 级,以补偿中间横穿点处的地形的改变。地形可能对于机器人在穿越中间横 穿点之后更难以横穿,并且增加功率系统的功率等级将因此是有益的。中间 横穿路线可以包括一个或多个附加中间点,其与中间横穿点可以定义可以由 两个或更多个点表示的直线几何形状。例如,两个中间横穿点和一个中间点可以定义弧形。

横穿着陆点对应于横穿区域的结束,并且可以附加地对应于第二草坪路 线的开始点。第二草坪路线可以开始于第二草坪区块与横穿区域之间的第二 接口处。第二接口由用于第二草坪区块的边界数据的点子集定义。横穿路线 数据305a包括横穿启动点、中间横穿点和横穿着陆点。横穿路线数据305b 包括横穿启动点、中间横穿点、中间横穿路线和横穿着陆点。在此将更详细 地说明以上关于横穿路线数据305a-b所描述的点。

在一些情况下,可能期望移动到不同的草坪区块,而不首先割刈最靠近 机器人坞接站50的草坪区块。在其它情况下,可能有益的是,横穿草坪区 块,而不割刈该区块(例如,以从分离的草坪区块返回到坞接站50)。旁路 路线数据320a-b提供用于机器人草坪割刈器遵循以横穿草坪区块而不割刈 该区块的路径。

旁路路线数据包括用于草坪区块102a的旁路路线数据320a以及用于草 坪区块102b的旁路路线数据320b。还短暂参照图2,旁路路线数据320a中 所存储的点允许控制器生成从启动点1001穿过草坪区块102a去往用于横穿 区域104a的横穿路线的开始的旁路路线。旁路路线数据320b允许控制器生 成从用于横穿区域104a的横穿路线的开始穿过草坪区块102b去往用于横穿 区域104b的横穿路线的开始的旁路路线。

在割刈特定草坪区块期间,机器人草坪割刈器可以遵循预定路径或模式 以完成在草坪区块中切割杂草。关于路径的信息存储为草坪路线数据。机器 人草坪割刈器可以存储用于允许均根据对于草坪区块适当的模式得以割刈 的不同的草坪区块中的每一个的分离路线数据。草坪路线数据325包括用于 草坪区块102a的草坪路线数据325a、用于草坪区块102b的草坪路线数据 325b以及用于草坪区块102c的草坪路线数据325c。控制器使用草坪路线数 据325a-c,以通过覆盖草坪区块102a-c的区块的(以下结合图7更详细地描 述的)移动模式来引导机器人。机器人的覆盖面积由(上述)割刈宽度WM和机器人在执行草坪路线的同时所行进的距离的长度的乘积定义。草坪路线 数据325a-c均包括分别用于每个草坪区块102a-c的开始点和结束点以及移 动模式。控制器可以进一步计算每个草坪的面积以确定移动模式。在割刈操 作期间,所计算的面积允许控制器比较所计算的草坪面积与草坪的覆盖面 积,以确定机器人是否已经实现草坪的足够覆盖。在一些实现方式中,通过大于1的覆盖面积对所计算的面积的比率定义充分覆盖。

路径行为数据330指示机器人系统(例如驱动系统、切割系统、航行系 统)沿着路线数据315、320、325所定义的路线的分段的操作。例如,与草 坪路线数据325对应的部分或所有路线可以与指令控制器设置功率系统从而 驱动系统和切割系统都打开并且杂草在机器人横穿路线的同时受切割的路 径行为数据330关联。与横穿路线数据315和旁路数据320对应的部分或所 有路线可以与将驱动系统设置为预定驱动速度(例如当机器人很可能操控不 同转向时比割刈更慢,或如果机器人横穿长距离则比在割刈期间更快)并且 将切割系统设置为0%的激活等级(例如,禁用割刈)的路径行为数据330 关联。路径行为数据330可以还包括用于航行和/或驱动系统通过转向和前向 驱动使得机器人航行的指令。

用户可以经由移动应用或机器人上的用户接口来设置调度数据335。用 户可以设置使得机器人自动化以在不同的时间割刈每个草坪的调度。例如, 机器人可以设置为在一星期中的一天的用户选择的时间割刈草坪区块 102a-b,并且可以设置为在一星期中的另一天的用户所选择的另一时间割刈 草坪区块102c。调度数据335确定哪些路线315、320、325要组合以生成用 于在给定的时间的割刈操作的路径。

为了生成路线数据315、320、325,机器人可以由用户手动地训练或自 动地受训练。图4-图8描述训练机器人的自动化方法和手动方法二者的方面。 具体地说,图4A-图4B示出生成可以由控制器或用户用于生成路线数据315、 320、325的边界数据305的不同示例。图5A-图5B示出生成横穿路线数据 315的不同示例。图6描述生成旁路路线数据320的示例。图7示出可以基 于来自图4-图6的结果而生成的路线数据(例如草坪路线数据、横穿路线数 据以及旁路路线数据)的示例。随着生成路线数据315、320、325,路径行 为数据330可以(与图7关联而描述的)自动地或(与图8关联而描述的) 手动地与路线数据315、320、325中的每一个关联,从而机器人10的适当 系统得以激活并且禁用。虽然图6-图8中的每一个所示的示例用于所示几何 形状的草坪区块和横穿区域,但应理解,可以实现每个训练模式以关于各种 草坪几何形状和配置而训练机器人10。

图4A示出示例性草坪区块102c,其中,机器人10通过检测边界标记 器128a-c来确定其在草坪区块102c内的姿势。每个边界标记器位于已知位 置处,并且定位为这样的:随着机器人航行草坪,机器人可以检测每个边界 标记器。为了确定其在草坪上的方位,机器人从单独边界标记器接收信号。 机器人基于可以表示机器人相对于三个边界标记器的位置的信号而确定其 姿势。

可以基于从边界标记器接收到的信号(例如从机器人发送并且受边界标 记器反射的信号或边界标记器所生成的并且由机器人接收到的信号)而确定 机器人的姿势(例如P1、P2)。机器人草坪割刈器基于标记器与机器人之间 的飞行时间而确定机器人与边界标记器之间的距离。因此,基于来自多个边 界标记器的信息,可以基于从边界标记器中的每一个接收到的范围/朝向信息 而通过三角测量来确定机器人的姿势。通常,三角测量是通过使用圆形、球 形或三角形的几何形状来测量距离而确定点的绝对位置或相对位置的处理。在一个示例中,三角测量可以基于使用距离/飞行时间测量的最小二乘算法。 在另一示例中,可以通过测量信号与反射信号的接收之间的相移来间接地测 量飞行时间。替代地,可以通过以下操作来确定距离:从机器人发送信号, 测量信号到达每个边界标记器的时间,以及使用到达时间差技术以估计机器 人的位置。

使用示教再现(teach-and-playback)选路来训练边界106b,其中,用户 在边界106b周围推动机器人,并且机器人存储关于受训练的边界的位置的 信息。用于确定草坪边界的示例性处理的其它细节可以发现于例如2014年 10月10日提交的题为“Robotic LawnMowing Boundary Determination”的US 14/512,098中,其内容通过其完整引用合并到此。

图4B示出生成用于草坪区块102b的草坪边界数据的手动处理。用户通 过以可拆卸手柄675引导机器人10而在草坪区块102b的边界106b周围手 动地使得机器人10航行,并且机器人10随着其在草坪区块102b周围移动 而生成边界数据305b。用户70通过推动并且拉动手柄675来手动地操控机 器人10。机器人10自动地存储点,或用户70可以手动地触发点以待存储。 随着用户70移动机器人10,机器人10可以编程为存储用于草坪区块102b 的边界106b的在(以上参照图3所描述的)边界数据305b之下的与其当前 方位路线对应的点。在一些实现方式中,机器人10可以编程为自动地每秒 存储其当前方位。用户70也可以经由例如移动设备上的应用来手动地指令 机器人10存储其当前方位,稍后将更详细地对此进行描述。

在一些示例中,数据处理单元生成区格的2D网格,以表示草坪区块。 随着机器人草坪割刈器确定其相对于信标的方位,数据处理单元在其运动期 间确定并且保存包含机器人草坪割刈器的每个区格的坐标。对于每个草坪区 块,网格中的每个区格可以被分配指示区格是理解为NONMOWABLE(即, 在边界外部)、MOWABLE(即,在边界内部)还是BOUNDARY(即,在 边界上)的割刈区块值。网格的每个区格可以基于所选取的原点(0,0)区 格而被分配(X,Y)坐标。每个区格可以表示正方形区块,其中,每个区 格具有1cm至100cm之间的边长。例如,网格可以是均10cm x 10cm的区 格的网格。机器人草坪割刈器存储机器人草坪割刈器沿着在教导模式期间所 行进的实际教导路径所横穿的每个区格的(X,Y)坐标。机器人草坪割刈 器可以将实际教导路径标记为跟踪机器人通过单个区格的路径的简单直线。 替代地,机器人可以将机器人的足迹之下的所有区格标记为BOUNDARY(边 界)区格。在教导的开始时,所有区格的值初始化为NONMOWABLE(非 可割刈的)。操作者按压开始按钮以开始训练处理,并且然后在割刈区块的 边界周围进行驱动。随着机器人驱动,沿着其实际教导路径的所有区格的值 设置为BOUNDARY,区格的位置由距信标的距离确定。在行走边界之后,操作者按压按钮以结束教导处理。然后,操作者将机器人草坪割刈器定位在 割刈区块内的任何地方,并且按压按钮,对机器人草坪割刈器指示其处于边 界内部。响应于此,系统执行泛洪填充,以设置BOUNDARY区格所定义的 边界内部的所有区格的值,以将它们标记为待割刈的MOWABLE(可割刈 的)区格。

返回参照图3,横穿路线数据315指令机器人按路线移动穿过各分离的 草坪区块(例如图2所示的横穿区域104a-b)之间的横穿区域。通过概述的 方式,为了训练横穿路线数据,控制器确定并且存储至少横穿启动点和横穿 着陆点。在一些实现方式中,控制器进一步确定并且存储中间横穿点。图5A 和图5B分别描述关于(先前结合图3所描述的)横穿路线数据315a和315b 所生成的点的示例。横穿路线数据315a包含定义机器人采取以从草坪区块 102a移动到草坪区块102b的横穿区域104a内的横穿路线1500的点。横穿 路线数据315b包含定义机器人遵循以从草坪区块102b移动到草坪区块102c 的横穿区域104b内的横穿路线1600的点。

图5A-图5B分别示出分别关于横穿区域104a-b所生成的横穿路线1500、 1600的示例。在横穿操作期间,机器人10通过依次经过定义横穿路线1500、 1600的点航行穿过横穿区域104a-b。横穿路线1500由第一横穿启动点1540、 中间横穿点1550a-b以及第一横穿着陆点1560定义。机器人10在直线分段 中依次从点1540移动到点1550a、点1550b、点1560。参照图5B,横穿路 线1600由第二横穿启动点1640、中间横穿点1650以及第二横穿着陆点1660定义。为了移动穿过横穿区域104b,机器人10依次在直线分段中从点1640 移动到点1650、点1660。虽然图5A-图5B所示的示例示出用于横穿区域的 特定配置的横穿路线数据,但应理解,可以关于横穿区域的其它可横穿配置 生成横穿路线数据。

在一些示例中,可以使用与用于训练草坪的边界的处理相似的处理来训 练横穿启动点与横穿着陆点之间的路线。例如,用户可以将机器人放置到横 穿训练模式下,并且横穿启动点可以是机器人相对于信标的位置。用户然后 沿着路径推动机器人,并且机器人将路径存储在存储器中。路径的结束存储 为横穿着陆点。

虽然在上述示例中,手动地训练横穿路线,但在一些示例中,自动化处 理可以用于训练横穿路线。在训练横穿路线1500的自动化实现方式中,控 制器自动地生成横穿路线1500。参照图5A,控制器确定并且存储源边界(边 界106a)与目的地边界(边界106b)之间的最短可横穿路线。机器人10可 以通过多种方式来标识最短可横穿路线。例如,机器人可以标识机器人能够 在一个区块与其它区块之间驱动的位置(例如,确定无障碍物的区域)。给定先前所描述的草坪的基于网格的表示,快速地探索随机树(RRT)或概率 路标的路径规划算法(例如A*)可以于是用于寻找从机器人的当前位置到 目的地的最短路径。

在训练横穿路线1500、1600的手动实现方式中,经由(先前结合图4A- 图4B描述但图5中未示出的)可拆卸手柄手动地驱动机器人10。当用户将 可拆卸手柄附连到机器人10并且在应用中标注用户正执行横穿路线训练时, 控制器发起训练模式。关于横穿路线1500,用户使得机器人10航行通过横 穿路线1500,并且机器人系统(例如控制器和存储器存储元件)生成与横穿 路线1500对应的点。机器人系统经由机器人10的手动航行可以生成实质上 与以上所描述的点(例如横穿启动点1540、横穿着陆点1560和中间横穿点 1550a-b)相似的点,但应理解,用户可以使得机器人10沿着具有更少或更 多的中间横穿点的不同路线航行。当用户将机器人10推出草坪区块102a的 区域时,机器人10的控制器确认这种脱离,并且生成与机器人10退出草坪 区块102a的点对应的横穿启动点1540。机器人10的用户引导机器人通过转 向以避开花卉分隔区116的横穿路线1500,并且机器人10存储关于机器人 10在横穿路线训练期间遵循的路径的信息。当用户推动机器人10穿过边界 106b时,控制器可以基于草坪104b的映射数据而检测穿越,并且自动地生 成横穿着陆点1560。

关于横穿路线1600,用户在对角线方向上推动机器人10穿过边界106b, 并且控制器生成横穿启动点1640。用户手动地使得机器人10朝向边界106c 航行,避开火坑131,并且机器人10存储机器人10所遵循的路径。当机器 人10穿越边界106c时,控制器生成横穿着陆点1660,并且完成关于横穿区 域104b的横穿路线训练。

在一些示例中,如上所述,数据处理单元生成区格的2D网格以表示草 坪区块,并且每个区格得以指示为MOWABLE、NONMOWABLE或 BOUNDARY。在这种基于网格的系统中,在训练横穿区域期间,随着机器 人草坪割刈器确定其相对于信标的方位,数据处理单元在其运行期间(例如, 在横穿各草坪区块之间的边界区块的同时)确定并且保存包含机器人草坪割 刈器的每个区格的坐标。网格的每个区格可以基于所选取的原点(0,0)区 格而被分配(X,Y)坐标。机器人草坪割刈器存储机器人草坪割刈器沿着 在教导横穿路径期间所行进的实际教导路径所横穿的每个区格的(X,Y) 坐标。机器人草坪割刈器可以将实际教导路径标记为跟踪机器人通过单个区 格的路径的简单直线。替代地,机器人可以将机器人的足迹之下的所有区格 标记为TRAVERSAL PATH(横穿路径)区格。

在教导的开始时,多个割刈草坪区块之间的所有区格的值初始化为 NONMOWABLE。操作者按压开始按钮以开始教导处理,并且然后从一个草 坪区块驱动到另一草坪区块。随着机器人驱动,沿着其实际教导路径的所有 区格的值设置为TRAVERSAL PATH,区格的位置由距信标的距离确定。在 行走横穿路径之后,操作者按压按钮以结束教导处理。在操作期间,当机器 人草坪割刈器横穿标记为TRAVERSAL PATH的区格时,机器人草坪割刈器 禁用(关闭)其切割系统。

图6是训练分别提供控制器用于穿越通过草坪区块102a、102b的数据 的旁路路线数据320a、320b的示例。控制器生成与启动点1001对应的旁路 启动点1740。控制器进一步生成与横穿启动点1540一致的旁路着陆点1760。 旁路启动点和旁路着陆点是相对于信标的位置。控制器确定并且存储避开草 坪区块内的任何保留区带的旁路启动点1740与旁路着陆点1760之间的最短 路线。控制器选择用于最短路线的初始点。控制器命令机器人10经由最短 路线(例如直线)从旁路启动点1740移动到旁路着陆点1760。控制器从训 练可割刈空间的保留区带获知玫瑰花园125的位置,并且使用用于玫瑰花园 125的内部边界数据(例如图3中所描述的内部边界数据310)以确定避开 横穿所禁止的空间的旁路路线1700。作为该路线确定的结果,控制器存储旁 路启动点1740、中间旁路点1750以及旁路着陆点1760,如图6所示。

相似地,为了训练表示旁路路线1800的旁路路线数据320b,控制器生 成与横穿着陆点1560一致的旁路启动点1840以及与横穿启动点1640一致 的旁路着陆点1860。控制器确定并且存储避开所禁止的保留区块的旁路启动 点1840与旁路着陆点1860之间的最短路线(例如,确定停留在可割刈空间 内的路径)。在其它示例中,用户可以通过与用于通过在机器人存储关于路 径的信息的同时沿着期望的路径推动割刈器来训练边界的处理相似的方式 来训练旁路路线。

在一些示例中,如上所述,数据处理单元生成区格的2D网格以表示草 坪区块,并且每个区格得以指示为MOWABLE、NONMOWABLE或 BOUNDARY。各草坪区块之间的区域可以具有标记为TRAVERSAL PATH 区格的连接路径。在这种基于网格的系统中,在训练旁路路线期间,随着机 器人草坪割刈器确定其相对于信标的方位,数据处理单元在其运动期间(例如,在横穿穿过草坪区块的同时)确定并且保存包含机器人草坪割刈器的每 个区格的坐标。网格的每个区格可以基于所选取的原点(0,0)区格而被分 配(X,Y)坐标。机器人草坪割刈器存储机器人草坪割刈器沿着在教导旁 路路径期间所行进的实际教导路径所横穿的每个区格的(X,Y)坐标。机 器人草坪割刈器可以将实际教导路径标记为跟踪机器人通过单个区格的路 径的简单直线。替代地,机器人可以将机器人的足迹之下的所有区格标记为BYPASS(旁路)区格。

在教导的开始时,由于旁路路线处于待割刈的草坪区块内,因此所有区 格的值是MOWABLE。操作者按压开始按钮以开始教导处理,并且然后从 草坪区块内的一个方位驱动到草坪区块内的另一方位。随着机器人驱动,沿 着其实际教导路径的所有区格的值设置为BYPASS(或 MOWABLE/BYPASS),区格的位置由距信标的距离确定。在行走旁路路线 路径之后,操作者按压按钮以结束教导处理。

图7A-图7B描述自动化生成与以上所生成的路线数据315、320关联的 草坪路线数据325a-c以及不同的路径行为330。草坪路线数据325a-c包括开 始点、结束点以及移动模式。移动模式可以是例如螺旋模式、谷物行模式、 曲折模式等。用户可以选择用于草坪区块中的每一个的期望的移动模式,并 且不同的模式可以关于同一草坪的不同区块得以选择。

在一些示例中,庭院可能太长而无法在机器人草坪割刈器电池的单次充 电时进行割刈。在这些情况下,机器人可以在不同的时间割刈庭院的不同区 块,允许机器人返回到坞并且在割刈不同的区块之间对其电池进行充电。

图7A描述执行草坪区块102a、102b的割刈操作,此后机器人返回到充 电坞50。图7B描述执行草坪区块102c的割刈操作,此后机器人返回到充 电坞50。在所示示例中,基于开始点、结束点以及默认移动模式而自动地生 成草坪路线1900a-b。对于草坪区块102a,机器人在启动点1001处开始,并 且进入谷物行移动模式,直到机器人已经确定其已经覆盖草坪区块102a(例 如,完成覆盖模式,或确定例如机器人所覆盖的距离乘以切割元件的宽度所 定义的覆盖面积大于所计算的用于草坪区块102a的面积的100%)。谷物行 移动模式引导机器人来回穿过草坪,从而机器人在每次横穿期间稍微垂直于 模式的纵向移动而移动。在完成草坪区块102a的割刈时,为了从草坪区块 102a移动到草坪区块102b,控制器执行横穿路线数据320a,其定义横穿路 线1500。用于横穿路线数据320的关联路径行为数据330包括:禁用切割系 统。对于草坪路线数据325b,开始点定义为横穿着陆点1560,结束点定义为横穿启动点1640。在进入草坪区块102b时,机器人激活切割系统。在完 成之后,机器人返回到启动点1001。

参照图7B,在随后时间(例如,在充电之后),机器人继续通过割刈草 坪区块102c来对草坪进行割刈。为了从启动点1001移动到草坪区块102c, 控制器执行旁路路线数据320a、横穿路线数据315a、旁路路线数据320b以 及横穿路线数据315b。数据320a-b、315a-b一起定义用于将机器人从启动 点1001移动到草坪区块102c的旁路路线2100。用于旁路草坪区块102a-b 的旁路路线2100的关联路径行为数据330包括:禁用切割系统。在进入所 意图的区块以进行割刈时,机器人激活切割系统。草坪路线1900c的开始点 对应于旁路路线2100的结束点。机器人继续谷物行移动模式,直到机器人 已经确定其已经覆盖草坪区块102c。当机器人已经确定机器人已经覆盖草坪 区块102c时,控制器命令机器人10返回到启动点1001。

如贯穿本公开所示,用户可以通过安装在计算设备上的应用来监控并且 控制机器人以及机器人的训练的各个方面,这样允许用户启用例如其它功能 当中的例如调度、旁路、移动选择、草坪区块选择的功能性。用户可以经由 接口特征(例如触摸屏显示器、键盘、语音命令、手势或另一类型的交互) 与计算设备进行交互。虽然图8所示的计算设备是智能电话,但在其它实现 方式中,设备可以是便携式设备(例如智能眼镜、智能手表、膝上型计算机) 或计算设备(例如台式计算机)。

图8示出图2所示的示例性草坪区块的用户接口的屏幕快照。移动设备 显示菜单部分3000和地图部分3500。菜单部分3000显示选项,包括:“显 示路线”、“调度”以及“默认设置”。在菜单部分3000上拍击“显示路线”将显 露存储为训练横穿路线、旁路路线和草坪路线的结果的点或区格。如将讨论 的那样,用户可以与这些点进行交互。拍击“调度”允许用户修改用于机器人 的割刈操作的调度。拍击“默认设置”允许用户修改用于训练子例程的默认设 置。

地图部分3500包括用户想要割刈的草坪区块的卫星地图。卫星地图可 以由用户选择,并且可以从地图提供商服务下载。移动设备的处理器可以进 一步在卫星地图上识别边界和轮廓。在任何训练之前,用户可以与卫星地图 进行交互,以给出与用户希望割刈的草坪区块对应的普通区块。用户可以使 用触摸屏以绘制运作为可以在训练中协助机器人的虚拟区域的几何形状。用 户可以将虚拟区域设置为草坪区块,其可以对控制器给出用于草坪区块的边 界的普通位置。用户可以进一步设置用于横穿区域以及用于障碍物的虚拟区 域。此外,在训练之前,地图包括与充电坞的位置以及机器人10的当前位 置对应的启动点1001。用户也可以选择用于在此所描述的训练方法的默认设 置。

随着用户继续通过训练机器人的附加方面(例如边界训练、横穿路线训 练以及旁路路线训练),来自主菜单的附加选项变为可用的。在机器人已经 完成草坪区块的边界训练之后,地图可以包括(以上所描述的)边界数据305 的点。虽然用于每个横穿区域的横穿启动点和横穿着陆点已经描述为自动地 设置的,但用户也可以通过选择应用上的地图上所示的边界的点之一来僭越 自动地选择的点。在用户选择用于每个横穿区域的横穿启动点和横穿着陆点 之后,控制器可以进一步实现优化算法(例如准牛顿方法),其考虑横穿启动点和横穿着陆点的位置以计算横穿启动点与横穿着陆点之间的最短路线。 在一些实现方式中,用户可以在移动设备上标记可横穿和不可横穿的边界。

在确定并且存储用于横穿区域的横穿启动点和横穿结束点之后,用户可 以发起先前详细地描述的自动化或手动横穿路线训练。由于可以在已经定义 草坪路线开始点和草坪路线结束点之后定义割刈模式,因此用户也可以在实 现横穿路线训练之前选择每个草坪的割刈模式。

用户可以进一步创建用于机器人的调度。草坪的每个区块可以分离地受 调度。因此,机器人存储用于多个草坪区块中的每一个的调度数据。例如, 如果用户想要机器人与草坪区块102a-b分离地割刈草坪区块102c,则用户 可以经由用户接口选择草坪区块102c,并且设置用于对草坪区块102c进行 割刈的调度(例如星期的时间和天)。机器人可以受调度以在一个割刈操作 中对草坪区块102a-b进行割刈并且在另一割刈操作中对草坪区块102c进行 割刈。当机器人受调度以对草坪区块102b进行割刈时,机器人将遵从图7A 中所描述的路线。当机器人受调度以割刈草坪区块102c时,机器人将旁路 草坪区块102a-b以对草坪区块102c进行割刈,如图7B所示。

图9是用于训练机器人以对具有将第一草坪与第二草坪(例如图2的草 坪区块102a-b)分离的横穿区域第一草坪和第二草坪进行割刈的流程图。通 常,处理包括:标识第一草坪的边界,标识第二草坪的边界,选择横穿启动 点,训练第一草坪路线,选择中间横穿点,选择横穿着陆点,训练用于第一 草坪的旁路路线,选择用于第一草坪的移动模式,以及选择用于第二草坪区 块的移动模式。

在步骤S900,控制器训练机器人以标识第一草坪区块的边界。控制器 实现关于图4A-图4B所描述的边界训练方法中的一个或多个,以生成与第 一草坪区块的边界对应的点。

在步骤S905,控制器训练机器人以标识第二草坪区块的边界。控制器 实现关于图4A-图4B所描述的边界训练方法中的一个或多个,以生成与第 二草坪区块的边界对应的点。

在步骤S910,控制器训练横穿启动点。控制器可以经由图8中所描述 的应用上的用户选择来训练横穿启动点,或控制器可以实现(例如图5中所 描述的)路线训练以自动地选择横穿启动点。

在步骤S915,控制器训练用于第一草坪区块的第一草坪路线。第一草 坪区块路线使用通常通过充电站的位置预先确定的开始点,并且使用步骤 S910中所训练的横穿启动点所确定的结束点。控制器选择用于第一草坪路 线的割刈模式,其可以是用于第一草坪区块的几何形状的默认模式(例如谷 物行模式)。控制器可以进一步设置用于第一草坪路线的关联路径行为。

在步骤S920,控制器通过实现关于图5A-图5B所描述的横穿路线训练 来训练用于横穿区域的中间横穿点和横穿着陆点。控制器使得机器人航行到 步骤S910中所选择的横穿启动点,并且随着控制器实现横穿路线训练而命 令机器人通过横穿区域。如果横穿区域内存在障碍物,则控制器可以随着机 器人避开障碍物而生成中间横穿点。随着机器人穿越横穿区域并且进入第二 草坪,控制器生成横穿着陆点,并且因此完成训练横穿路线。控制器可以进 一步设置用于横穿路线的关联路径行为,包括:关闭机器人草坪割刈器的切 割系统。

在步骤S925,控制器训练用于第二草坪区块的第二草坪路线。用于第 二草坪的割刈模式使用通常由步骤S920中训练的横穿着陆点的位置所确定 的开始点。用于第二草坪的割刈模式使用通常由步骤S905中所训练的边界 点以及横穿着陆点所确定的结束点。在一些实现方式中,结束点是最远离横 穿着陆点的边界点。控制器选择用于第二草坪路线的第二割刈模式,其可以 是用于第一草坪区块的几何形状的默认模式(例如谷物行模式)。控制器可 以进一步设置用于第二草坪路线的关联路径行为。

在步骤S930,控制器训练旁路路线以从与充电站的位置对应的启动点 穿过第一草坪区块移动到横穿路线的开始。控制器实现图7中所描述的旁路 路线训练以生成旁路路线的点。控制器可以进一步设置用于旁路路线的关联 路径行为。

图10A-图10B是用于在已经采取图9的方法训练机器人之后的割刈操 作的流程图。

图10A是对第一草坪区块和第二草坪区块都进行割刈的割刈操作的流 程图。在步骤S1000A,机器人启用机器人的切割系统,并且对第一草坪区 块进行割刈。机器人遵循步骤S915中所确定的第一割刈模式。在机器人已 经覆盖第一草坪区块的至少100%的面积之后,割刈模式在步骤S910中所确 定的横穿启动点处结束。

在步骤S1005A,在机器人到达横穿路线的横穿启动点之后,机器人禁 用切割系统,并且开始经由步骤S910和S920中所确定的(包括横穿开始点、 中间横穿点和横穿结束点的)横穿路线横穿过横穿区域。机器人在步骤S920 中所确定的横穿结束点处完成横穿路线。

在步骤S1010A,在机器人横穿过横穿区域之后,机器人启用切割系统 并且开始经由步骤S925中所存储的第二草坪路线对第二草坪进行割刈。机 器人遵循第二割刈模式,直到机器人已经覆盖第二草坪区块的面积的至少 100%的区块。机器人然后在步骤S925中所确定的结束点处终止第二草坪路 线。

在步骤S1015A,在机器人到达第二草坪路线的结束点之后,机器人禁 用切割系统,并且返回到启动点。

图10B是旁路第一草坪并且对第二草坪区块进行割刈的割刈操作的流 程图。在步骤S1000B,机器人禁用割刈功能,经由步骤S935中所训练的旁 路路线来旁路第一草坪,经由步骤S910和S920中所训练的横穿路线横穿过 第一横穿区域,以到达第二草坪区块上的横穿着陆点。

在步骤S1005B,在机器人到达横穿路线的横穿着陆点之后,机器人启 用切割系统,并且开始经由步骤S925中所确定的第二草坪路线对第二草坪 进行割刈。机器人遵循第二割刈模式,直到机器人已经覆盖第二草坪区块的 至少100%的面积的区块。机器人然后在步骤S925中所确定的结束点处终止 第二草坪路线。

在步骤S1010B,在机器人到达第二草坪路线的结束点之后,机器人禁 用切割系统,并且返回到启动点。

虽然本公开中所描述的示例描述了三个不毗邻草坪区块102a-c,但在一 些实现方式中,机器人可以受训练为对更多或更少的草坪区块进行割刈。例 如,在一些实现方式中,机器人可以受训练为对连续草坪进行割刈,并且因 此无需横穿路线数据以移动穿过横穿区域。在其它实现方式中,机器人可以 受训练为对若干不毗邻草坪区块(例如四个或更多个)进行割刈。机器人可 以受调度以在不同的时间执行若干割刈操作,从而机器人的功率系统可以贯 穿整个割刈操作得以维持。机器人可以受训练为包括允许机器人旁路在割刈 操作中不待割刈的草坪区块的若干旁路路线。

虽然已经关于各个操作简要地描述了系统的激活等级的组合(例如,在 横穿操作期间的驱动系统的50%激活等级以及切割系统的0%激活等级),但 在一些实现方式中,设置激活等级可以是自适应的。例如,随着机器人执行 训练操作,机器人可以具有割幅传感器,其可以检测机器人经过的杂草的刚 度。随着机器人检测杂草的刚度,其可以在割刈操作期间修改切割系统的激 活等级,以容纳该刚度。如果杂草是刚硬的,则切割系统的激活等级可以增 加。机器人可以在驱动系统中还包括扭矩或力传感器,以确定用于驱动系统驱动轮模块以穿越各种地形的激活等级。

虽然调度数据335已经描述为由用户经由计算设备上的应用而得以设 置,但在一些实现方式中,控制器可以被配置为:自动地设置调度数据。控 制器可以例如计算不毗邻草坪区块中的每一个的面积以及潜在路线的距离, 并且使用这些计算以估计与特定路线选项关联的功耗量。控制器可以于是设 置路线的调度,从而机器人可以在功率的完全电量的情况下执行每个割刈操 作。

虽然路径规划算法(例如A*、快速探索随机树(RRT)、或概率路标) 已经描述为用于训练横穿路线和旁路路线,但在其它实现方式中,其它算法 (例如Floyd-Warshall算法、Johnson算法以及Dijkstra算法)可以用于减少 计算负担。例如,在点集合仅包括一个点或第二点集合仅包括一个点的情况 下,可以使用单个源或单个目的地最短路径算法(例如Dijkstra算法)。

虽然阈值割刈区块覆盖已经描述为草坪的面积的100%,但在一些实现 方式中,阈值割刈区块覆盖可以更大。在其它实现方式中,阈值割刈区块覆 盖可以大于例如草坪区块102a的面积的150%。

在手动模式中,虽然机器人已经描述为经由传感器系统来检测手柄,但 在一些实现方式中,用户可以手动地对机器人指令手柄已经附连。此外,在 具有自动点存储的手动模式下,机器人已经描述为每秒存储点。在其它实现 方式中,存储各点之间的时间的持续期可以由用户修改为更多或更少。例如, 对于较大的草坪区块,可能有益的是,存储更少的点,以减少专用于草坪路 线数据的存储空间的量。

虽然手柄675已经描述为可拆卸的,但在其它实现方式中,手柄保留在 机器人上,但可折叠或可装载。例如,手柄可以叠缩,从而手柄当不使用时 可以折叠为小形数。

虽然并未示出用于定义草坪区块102a-c的虚拟特性,但在一些实现方式 中,用户可以使用计算设备上的应用以手动地定义普通边界。应用上的手动 定义的边界可以生成机器人遵循以映射边界的虚拟标记器。

虽然用于表示草坪的区格的2D网格的区格已经描述为表示具有1cm至 100cm之间的边长的正方形区块,但在其它实现方式中,区格可以取决于性 质而更大或更小。例如,对于更大的房产(例如足球场、高尔夫球场),边 长可以处于1m至10m之间。在一些实现方式中,用户手动地设置边长。在 其它实现方式中,控制器基于用于草坪或房产的区块的输入而选择区格大 小。在其它示例中,控制器实现基于草坪的几何形状而确定区格大小的自适应算法。例如,对于无定形草坪形状,更大数量的区格可以用于反映无定形 几何形状。

在一些实现方式中,用户可以选择用于路径规划算法的目标函数。例如, 并非请求横穿启动点与横穿着陆点之间的具有最小距离的路线,用户可以选 择控制器最小化以选择具有最少数量的转向的路线、在特定点开始并且结束 的路线的目标函数(例如,用户预先定义横穿启动点和横穿着陆点)。用户 也可以选择多于一个的目标函数以最小化。例如,用户可能想要使得转向的 数量以及横穿启动点与横穿着陆点之间的距离最小化。

虽然用于横穿路线1500、1600和旁路路线1700、1800的训练方法已经 描述为在各个启动点与着陆点之间中包括一个或更少的障碍物,但在一些实 现方式中,在训练期间检测附加障碍物。在生成中间点并且尝试在训练期间 所生成的横穿路线或旁路路线之后,控制器确定附加障碍物的出现性。控制 器映射附加障碍物,并且生成附加中间点,以寻找优化的路径以避开障碍物。 控制器继续贯穿训练方法进行迭代,直到控制器命令机器人通过路线,而不 检测附加障碍物。

虽然横穿启动点和横穿着陆点已经描述为以自动化方式或经由安装在 移动设备上的用户应用而得以选择,但在一些实现方式中,沿着边界所放置 的边界标记器也可以充当横穿启动点和横穿着陆点。在这些实现方式中,与 依赖于用于横穿启动和着陆点的虚拟标记器相反,用户可以放置表示横穿启 动点和横穿着陆点的物理标记器(例如边界标记器)。

虽然本公开所示的路线分段的示例关注于各点之间的直线分段,但应理 解,可以通过路线上的点生成其它曲线几何形状(例如弧形)。将多项式与 路线上的两个点关联可以例如生成连接这两个点的样条几何形状。当机器人 到达样条几何形状的点之一时,控制器可以将航行系统与多项式函数相关, 从而机器人沿着样条几何形状移动。例如,对于具有不容易通过弧形定义的 障碍物,控制器可以生成用于近似用于避开障碍物几何形状的路线的样条几 何形状。

虽然第一横穿启动点1540、1640已经描述为在训练横穿路线的处理期 间得以选择,但在其它实现方式中,默认横穿启动点可以是充电坞。

虽然草坪区块102c已经描述为没有对应受训练的旁路路线,但在一些 实现方式中,最后的草坪可以具有可以用作返回路线的部分的受训练的旁路 路线。例如,在旁路路线训练期间,旁路路线可以关于草坪区块受训练,从 而机器人可以采取旁路路线的反向,以返回到充电站。并非关于旁路草坪区 块的旁路路线的结束点使用用于横穿区域的横穿启动点,旁路路线可以使用 用于草坪区块的割刈模式的结束点。

虽然草坪路线的割刈模式已经描述为在覆盖草坪之后完成,但在一些实 现方式中,控制器可以被编程,从而草坪路线的割刈模式在横穿启动点处终 止。例如,草坪路线的结束点可以在横穿路线的横穿启动点处终止。

在一些实现方式中,机器人在推断割刈操作时采取的返回路线可以是旁 路路线和横穿路线的合成。例如,短暂参照图7A,为了从草坪路线1900b 的结束点返回到充电站50,机器人10可以在相反方向上遵循旁路路线1800、 横穿路线1500以及旁路路线1700。

虽然路径行为数据330已经描述为在已经生成草坪路线数据325之后关 于图7分配给横穿路线数据315和旁路路线数据320,但应理解,可以随着 正生成每个路线数据而生成路径行为数据330。例如,随着正生成用于横穿 路线数据和旁路路线数据的点,可以设置与这些路线关联的路径行为数据, 从而驱动系统设置在中等范围激活等级,并且禁用切割系统。在一些实现方 式中,控制器可以被编程,从而训练旁路路线数据和横穿路线数据自动地将 这些路线数据与切割系统的禁用关联,并且训练草坪路线数据自动地将草坪 路线数据关联于切割系统的激活。

虽然在此所描述的草坪路线应用于连续草坪,但在一些实现方式中,草 坪可以分段为毗邻草坪区域的两个分离的草坪区域。机器人可以受调度以在 不同的时间对草坪区域进行割刈。

虽然横穿启动点和横穿着陆点的选择已经描述为基于横穿启动点距横 穿着陆点的距离的优化的自动化选择,但横穿启动点和横穿着陆点的修改可 以是手动操作。例如,用户可以在移动设备的应用上浏览对于草坪区块所存 储的边界数据,并且手动地选择用于横穿启动点和横穿着陆点的位置。

虽然图9-图10所示的流程图的步骤已经描述为依次产生,但应理解, 可以按不同的顺序执行一些步骤。例如,参照图9,训练第一区块与第二区 块之间的横穿路线可以产生在训练用于第一区块和第二区块的割刈操作之 后。训练旁路路线可以产生在训练第二草坪路线或训练横穿路线之前。

已经描述了多个本发明实施例。然而,应理解,可以在不脱离本发明的 精神和范围的情况下进行各种修改。

44页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种草坪机割草高度调节装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!