割草机器人的地图构建的制作方法

文档序号:11160301阅读:667来源:国知局
割草机器人的地图构建的制造方法与工艺

本发明涉及对要由割草机器人(robot lawnmower)割剪的区域的地图构建。



背景技术:

目前,执行诸如地板清洁和草坪切割的家务功能的自主机器人是可以容易获得的消费者产品。一些机器人通常被限制在以下之内:(i)触碰到的墙壁和住所房间内的其它障碍物;(ii)IR检测到的通往下方的楼梯(断层);和/或用户放置的诸如有向IR光束、物理障碍物或磁性带的可检测障碍物。墙壁通常提供了大部分的限制周界。其它机器人会尝试使用复杂的传感器系统和/或主动或被动信标(例如,声呐、射频识别(RFID)或条形码检测,或者各种机器视觉)对住所进行地图构建。

一些自主割草机器人使用连续的边界标记(例如,边界线)来限制随机运动的割草机器人。该边界线意在将该机器人限制在草坪或其它适当区域之内,从而避免损坏院子的非植草区域或者侵入到邻居的领地。该边界线通常是围绕待割剪的领地的连续导电回路。虽然该边界线可以被拉入到位于半岛中的领地以包围花园或其它禁止进入的区域,但是其保持连续的回路,并且利用可以在数英尺距离处被检测为磁场的AC电流进行激励。该边界线回路必须被提供以通常来自于墙面插座的电力。在有界区域内,割草机器人可以在其接近引导导体时随机地“反弹”,或者可以遵循该引导导体。一些割草机还触碰到物理屏障并从其反弹。



技术实现要素:

在本公开的一些实施方式中,一种割草机器人系统包括:相对于待割剪区域放置的多个信标;割草机器人,包括:检测系统,其被配置为检测该信标;和控制器,其被配置为在行进于该待割剪区域的同时使用该检测系统检测该信标并且收集地图构建数据;一个或多个存储指令的计算机可读介质,该指令在由一个或多个计算设备的系统执行时使得该系统执行操作,该操作包括:从该割草机器人接收地图构建数据;至少接收在该区域内并且在该地图构建数据中被指定的第一和第二参考点的第一和第二地理坐标;使用该第一和第二地理坐标将该地图构建数据对准到该区域的地图图像的坐标系统;并且基于将该地图构建数据对准到坐标系统,显示该区域的地图图像。

这些和其它实施方式可选地包括以下特征。该操作包括接收用户对该待割剪区域的确认。该操作包括将该割草机器人的控制器配置为自主地割剪该区域。该割草机器人包括全球定位系统(GPS)接收器,并且该控制器被配置为将该割草机器人移动至该区域内的第一和第二参考点,并且在该第一和第二参考点使用该GPS接收器确定该第一和第二参考点的第一和第二地理坐标。该一个或多个计算设备的系统包括移动设备,该移动设备包括全球定位系统(GPS)接收器,并且接收该第一和第二参考点的第一和第二地理坐标包括:向用户显示将该移动设备移动至第一参考点的指令;响应于接收到指示该移动设备处于第一参考点的用户输入,使用该GPS接收器确定该第一地理坐标;向用户显示将该移动设备移动至第二参考点的指令;并且响应于接收到指示该移动设备处于第二参考点的用户输入,使用该GPS接收器确定该第二地理坐标。

该系统包括处于该第一或第二参考点的用于该割草机器人的对接站。该割草机器人包括第一全球定位系统(GPS)接收器;该对接站包括第二GPS接收器;接收该第一地理坐标包括使用该第一GPS接收器从该割草机器人接收该第一地理坐标;并且接收该第二地理坐标包括使用该第二GPS接收器从该对接站接收该第二地理坐标。该对接站包括第一全球定位系统(GPS)接收器;该一个或多个计算设备的系统包括移动设备,该移动设备包括第二GPS接收器;接收第一地理坐标包括使用该第一GPS接收器从该对接站接收该第一地理坐标;并且接收第二地理坐标包括使用该第二GPS接收器从该移动设备接收该第二地理坐标。该一个或多个计算设备的系统包括移动设备;从该割草机器人接收地图构建数据包括通过该割草机器人和移动设备之间的有线或无线通信链路接收该地图构建数据;并且将地图构建数据对准到地图图像的坐标系统包括将该地图构建数据提供至一个或多个计算机的地图构建服务器系统并且从该地图构建服务器系统接收该地图图像。

该地图构建数据包括割剪路径,并且其中显示该地图图像包括显示叠加有该割剪路径的视觉指示符的地图图像。显示该地图图像包括使用该地图构建数据显示该区域内的信标的位置的信标指示符。将地图构建数据对准到地图图像的坐标系统对准包括以下一种或多种:对该地图构建数据平移、旋转和缩放而使得该区域的地图图像上的第一和第二位置与该第一和第二参考位置匹配。该控制器被配置为使得该割草机器人从该第一或第二参考点开始在该区域行进。该操作可以包括:将该地图构建数据以及该第一和第二参考点的第一和第二地理坐标提供至一个或多个计算机的远程服务器系统;从该远程服务器系统接收该区域内的针对信标的一个或多个建议位置;并且在该地图图像上显示针对该信标的该建议位置的指示符。

该操作可以包括:针对至少一个信标,确定与该至少一个信标的第一和第二最接近相邻信标的第一和第二距离;确定该第一和第二距离之间的差异大于阈值距离;沿该待割剪区域的周界在该第一和第二最接近相邻信标之间的中点处针对该至少一个信标确定建议信标位置;并且在该地图图像上显示该至少一个信标的建议信标位置的指示符。该操作可以包括:在该割草机器人对该区域进行割剪的同时从该割草机器人接收跟踪数据;并且在该地图图像上显示指示该割草机器人的进展的图形叠加。该操作可以包括:预计割草机器人的完成对区域割剪的路径;并且在该地图图像上显示指示该割草机器人的预计路径的图形叠加。该操作可以包括:显示指示估计的待完成时间量的用户界面元素。该检测系统包括被配置为发射信号的发射器/接收器,并且其中该信标被配置为将来自该检测系统的发射的信号反射回到该检测系统上。

本发明的一个或多个实施例的细节在以下的附图和描述中给出。本发明的其它特征、对象和优势将由于该描述和附图以及由于权利要求而是显而易见的。

附图说明

图1A-1C是图示被配置为对草坪20进行割剪的自主割草机器人10的框图。

图2A-B是图示具有边界标记805所定义的周界的待割剪区域的框图。

图3是用于显示要由割草机器人10进行割剪的区域的地图的示例系统350的框图。

图4A-4K描绘了示例的地图图像和地图构建数据以对图3的系统350的使用进行说明。

图5是由例如移动设备502的计算设备所执行的用于显示待割剪区域的地图图像的示例方法5000的流程图。

图6是用于预计割草机器人10的剩余路径的示例方法6000的流程图。

图7是用于确定建议信标位置的示例方法7000的流程图。

各图中相似的附图标记指示相似的要素。

具体实施方式

图1A-1C是图示被配置为对草坪20进行割剪的自主割草机器人10的框图。自主割草机器人10围绕草坪20进行移动并且在其行进于草坪20时对草22进行切割。割草机器人10包括主体100、固定至主体100的表面处理器200、包括至少一个电动轮410的驱动系统400、以及具有至少一个表面传感器310的传感器系统,该表面传感器310被主体100所承载并且响应于至少一个表面特性。驱动系统400被主体100所承载。在一些实施方式中,驱动系统400被配置为在遵循至少一个表面特性的同时跨草坪20对割草机器人10进行操控。

在该示例中,表面处理器200包括浮动于后轮410上的往复运动的对称割草器。在一些示例中,轮子可以是连续轨道或者槽面。在其它示例中,表面处理器200可以包括旋转切割器、撒播器或收集器。草梳510也可以被主体100所承载。机器人主体100支撑用于对割草机器人10中包括驱动系统400在内的任意电气组件进行供电的电源106(例如,电池)。

例如无线操作者反馈单元502的计算设备向割草机器人10上与控制器150进行通信的发射器/接收器151发送信号。无线操作者反馈单元502可以是包括处理器、存储器和数字通信系统的移动设备。驱动系统400被配置为遵循从操作者反馈单元502所接收到的信号。割草机器人10可以在基站或对接站(dock)12进行对接。在一些示例中,对接站12包括对机器人主体100所容纳的电源106进行充电的充电系统。在一些实施方式中,机器人10包括磁力计315。该磁力计例如对于以旋转方式对准草坪20的地图是有用的。

为了准备使用割草机器人10,定义待割剪的草坪20的周界21。在一些实施方式中,作为安全措施,仅在周界已经被确定并且存储在割草机器人10的非瞬态存储器中后,才可以执行割草机器人10的自主使用。在一些实施方式中,如图1B所示,人工操作者500通过使用附接至机器人主体100的手柄116推动机器人10而以人工方式定义周界21。在一些实施方式中,人工操作者500通过使用驱动系统400而在机器人10移动时对机器人10进行控制来定义周界21。例如,出于安全考虑,人工操作者500可以站在至少距机器人10的某个距离之内而使用无线操作者反馈单元502来控制机器人10。一旦周界已经被教导,机器人就可以对待切割的草坪/区域进行导航而无需进一步的人工介入。

参考图1B,在周界教导模式中,人工操作者500以人工方式引导割草机器人10来建立操作20的周界21。确定周界21可以包括利用附接至主体100的推动杆或手柄116对割草机器人10进行引导。推动杆116可以从机器人主体100拆除或装载于其上。在一些情况下,推动杆116包括开关、速度设置或操纵以使得割草机器人10前进并转向。推动杆116可以包括允许刀片罩的移动的机械联动装置以用于贴合边缘切割能力。

在一些实施方式中,推动杆116包括一个或多个压力或应力传感器,割草机器人10对其进行监视从而以压力方向进行移动或转向(例如,两个传感器监视左右压力或杆体位移以使割草机器人10转弯)。在一些其他实施方式中,推动杆116包括与系统400进行通信的锁死(dead man)或锁闭(kill)开关117A以便关闭割草机器人10。开关117A可以被配置为锁死开关从而在推动杆116的操作者停止使用推动杆116或不再与之保持接触时关闭割草机器人10。开关117A可以被配置为在推动杆被装载时充当锁闭开关,这允许割草机器人10以自主模式进行操作。锁死或锁闭开关117A可以包括电容传感器或刹车杆。

在一些实施方式中,推动杆116包括用于接合/脱离驱动系统400的离合器117B。割草机器人10可以在通过推动杆116进行人工操作的同时以更快的速度进行操作。例如,割草机器人10可以以大约0.5米/秒的自主速度进行操作,并且以大于0.5米/秒的人工速度进行操作(包括可以达到正常速度的120-150%的“增压(turbo)速度”)。在一些示例中,推动杆116可以在机器人进行自主割草时被折叠或拆除。可替换地,推动杆116可以被配置为拉动杆、拉动皮带、刚性手柄或可折叠手柄之一。在一些实施例中,推动杆116可以被装载于机器人主体100之上或之中。

如以上所提到的,在自主修割草坪之前,割草机器人10完成教导阶段。在周界教导阶段期间,人工操作者500可以以要求校正的方式对割草机器人10进行试用,因此将割草机器人10置于不可教导的状态。当割草机器人10在教导过程中检测到其处于不可教导的状态时,割草机器人10就向操作者发出警告(例如,经由操作者反馈单元502,诸如移动设备上的显示器或者集成于手柄116中的显示器)以改变割草机器人10的方向或速度从而使得割草机器人10能够继续记录周界21和/或返回到在可行进地形上行进。例如,割草机器人10可以在操作者将割草机器人10推入割草机器人10在其中失去确定其位置能力的草坪20的区域中时、在用户在从第一教导路径变化到的第二教导路径时、或者当用户过快地或在过于颠簸或倾斜的地形上推动割草机器人10时进入该不可教导的状态。

例如,人工操作者可能尝试在草皮和岩石之间推动割草机器人10,这使得割草机器人10以过大角度(例如,超过30度)发生倾斜。或者,操作者可能尝试向割草机器人10教导穿过该割草机器人10无法以自主模式行进的地形的路径。在这样的情况下,割草机器人10向操作者发出警告(例如,经由操作者反馈单元502)以选择不同的路径。如之前所描述的,割草机器人10可以通过任意适当的反馈机制而经由操作者反馈单元502向操作者发出警告,例如显示器上的视觉信号、通过扬声器的听觉信号、嗅觉反馈信号和/或触觉信号,诸如来自操作者反馈单元502的振动单元的振动。

如果人工操作者在教导模式期间过快或过慢地推动割草机器人10而因此将机器人置于不可教导的状态,割草机器人10会提示用户提高或降低割草机器人10的速度。在一些示例中,操作者反馈单元502包括速度指示器,其将在割草机器人10以大于或低于阈值速度的速度行进时亮起或闪烁(绿色、黄色、红色灯光)。

如以下将参考图2A所讨论的,边界标记805可以沿草坪20的周界放置从而辅助对割草机器人10的定位。在一些情况下,边界标记805发出信号,割草机器人对该信号进行解释从而确定其相对于该边界标记805的位置。在其它示例中,边界标记805是被动的。在任一种情况下,当割草机器人10失去与边界标记805的联系时,割草机器人10会向用户发出警告,以例如改变路径以保持处于边界标记805的限制之内或者移动一个或多个边界标记805。

在一些示例中,该教导程序要求操作者第二次(或更多次)走过草坪20的周界21。一旦操作者完成了第一次教导过程,就完成了围绕待割剪区域的周界的闭合回路,割草机器人10可以警告操作者需要第二次教导过程。在一些示例中,操作者按下STOP按钮以确定指示已经完成草坪20的周界21的教导过程。在一些实施方式中,该教导程序例如在一个标度上确定所教导路径的级别或得分,从而帮助操作者理解之前对草坪20的行进距离被接受有多近。

在一些示例中,割草机器人10允许操作者在第一次教导过程之后马上完成第二次教导过程,或者等到稍后进行。如果操作者完成了第二次或后续的教导过程并且割草机器人检测到两次所确定周界之间的变化大于阈值变化,则割草机器人10向操作者警告该明显差异并且提示另一次教导从而学习草坪20的周界21。

当周界教导处理完成时,用户可以将割草机器人10对接在其对接站12(参见图1)中,这允许割草机器人10在割剪之前进行充电。

图2A-B是图示具有由边界标记805所定义的周界的待割剪区域的框图。在一些实施方式中,割草机器人10包括边界检测系统800,该边界检测系统800包括部署在机器人主体100上的发射器/接收器151以及边界标记805(图2A)。被动边界标记805的类型可以包括:激光雷达(LIDAR)扫描匹配、被动LIDAR后向反射器(信标)或者其二者。在一些示例中,边界标记805包括:雷达(RADAR)扫描匹配(可视信号(blips))、RADAR后向反射器或其二者。在包括沿草坪20的周界21放置的边界标记805的实施方式中,边界标记805可以由发射器/接收器151所执行的相邻扫描匹配数据所单独识别(参见图1B)。

在扫描匹配中,割草机器人10可以将在行驶时的给定时间所进行的扫描与存储器中作为每个边界标记805的特性所存储的扫描进行匹配,并且割草机器人10因此可以确定其相对应每个可以单独识别的边界标记805的位置。在一些实施方式中,边界标记805包括割草机器人10可以感知的其它单独的识别手段,诸如使得割草机器人10能够检测其相对位置的条形码或编码信号。

如图2A所示,边界标记805(例如,信标)被放置在草坪20的周界周围从而约束或影响割草机器人10的行为。用户将边界标记805放在沿周界21的所期望位置处。在一些示例中,边界标记805的每个位于相邻边界标记805的视线之内。

边界标记805可以包括操作者可以放置在指示全局原点(例如,对接站12或者两个并排放置的边界标记)的位置中的归属(home)标记。操作者尽可能均匀地沿草坪20的周界21分布边界标记805。

在一些示例中,信标可以被置于环境之中,并且机器人可以使用该信标来定位其位置。信标可以使用例如宽带(WD)或超宽带(UWB)技术、2.4GHz(802.11v)技术或者其它类型的射频飞行时间技术进行通信。这些信标可以被置于可割剪区域之内(例如,信标810b),或者被置于边界上(例如,信标810a),或者被置于边界之外(例如,信标810c)。这些信标810(图2B)包括互相通信以及与位于割草机器人10上的收发器11进行通信的收发器811。

相应的WB或UWB收发器被置于割草机器人10(例如,割草机器人10包括与每个信标810a-c进行通信的接收器/发射器151)上、每个信标810a-c上,并且可选地被置于对接站12上。若干信标810a-c围绕可割剪区域进行放置并且彼此间隔开,且与对接站12间隔开。如图2B中源自于割草机器人10的实线所示,割草机器人10与每个信标810a-c以及与对接站12进行通信。如虚线所示,每个信标810a-c与每个其它信标以及与对接站12进行通信。

如果来自位于院子周围的WB或UWB信标810a-c的WB或UWB信号被用来确定割草机器人在该院子内的位置,则WB或UWB信标810a-c的位置可以被该割草机器人所建立。通常,在WB或UWB系统初始设置时,执行初始化处理。该处理可以部分地基于被用来确定WB或UWB信标810相对于彼此的位置的多维缩放(multidimensional scaling)算法,上述算法进而可以被用来确定机器人10相对于信标的位置。

因此,人工操作者500并不需要在特定位置处放置WB或UWB信标810a-c,因为该系统在初始化时自动地确定WB或UWB信标810a-c的位置。在一些实施方式中,机器人10例如通过来自人工操作者500的用户输入而确定所部署信标的数量。在这些情况下,机器人10可以将所部署信标的数量与可以看到的信标的数量进行比较。如果可以看到的信标的数量小于所部署信标的数量,则机器人10可以向人工操作者500发出警告并且可以建议重新定位,例如通过信标标识符序号来识别无法被看到的信标。

WB或UWB信标810a-c的放置中的这种灵活性可以提供的优势在于,简化了自主草坪割剪机器人系统的安装和设置过程。此外,由于信号的全方向(omni-directional)属性,WB或UWB信标810a-c可以与某些基于视线的系统相比离地面更低,这是因为机器人10无需与为了从信标接收信号而(例如,在视线布置中)与信标进行对准。信号的该全方向属性还允许信标810a-c以非平面的方式放置和/或相对于彼此、对接站12和/或机器人10旋转/倾斜。

在一些示例中,信标具有距地面大约12英寸和大约24英寸之间的高度(例如,处于大约12英寸和大约24英寸之间;处于大约16英寸和大约20英寸之间;大约18英寸)。在后续使用时(例如,在割草机器人每次割剪草坪之前),可以执行校准或确认处理从而确定WB或UWB信标810a-c仍然处于它们预期的、之前所确定的位置。

在收集到定义周界21的地图构建数据之后,人工操作者500可能希望使用计算设备502—其可以是移动设备—来确认周界的位置。人工操作者500可以启动移动设备502上的地图构建应用。在执行该地图构建应用时,移动设备502显示待割剪区域的地图,该地图上叠加有人工操作者500所要确认的周界。

为了显示该地图,移动设备502从机器人10接收地图构建数据。移动设备502还接收该区域内的第一和第二参考点的第一和第二地理坐标。随后,移动设备502使用该第一和第二参考点将该地图构建数据对准到该区域的地图图像的坐标系统。移动设备502基于所对准的地图构建数据显示该区域的地图图像,该地图图像上叠加有周界的指示符。下文进一步参考图3和图5对用于显示该地图的示例系统和方法进行描述。

图3是用于显示要由割草机器人10进行割剪的区域的地图的示例系统350的框图。示例系统350包括割草机器人10、移动设备502和对接站12。这些设备可以通过数据通信网络158而与一个或多个计算机的地图构建系统600进行通信。网络158例如可以包括无线路由器,其与该设备进行无线通信并且连接至互联网从而与地图构建系统600进行通信。在其它示例中,机器人10和对接站12可以与移动设备进行通信,并且该移动设备可以将信息中继至地图构建系统。

割草机器人10包括控制器150,被配置为检测信标的检测系统160,以及可选的位置系统152,例如全球位置系统(GPS)接收器。移动设备502包括处理器系统510以及可选的位置系统512,后者例如GPS接收器。在一些实施方式中,对接站12可以是并不在网络158上进行通信的充电站,而在一些其它实施方式中,对接站12则可以具有控制器154和/或位置系统156,后者例如GPS接收器。

在操作中,割草机器人10行进于待割剪区域。为了训练割草机器人10,如以上参考图1A-C所描述的,人工操作者可以围绕待割剪区域的周界推动割草机器人10。机器人控制器150使用检测系统,在行进于该区域的同时来检测信标,并且收集指定待割剪区域的周界的地图构建数据。

在割草机器人10收集到该地图构建数据之后,割草机器人10将该地图构建数据传送至移动设备502。例如,割草机器人10可以通过蓝牙连接或者通过本地无线网络与移动设备502进行通信。移动设备502可以通过启动处理器系统510所执行的地图构建应用来发起传输。

移动设备502接收区域内的参考点的至少两个参考地理坐标。在一些示例中,该地理坐标包括经度和纬度。然而,可以使用其它的地理位置数据。该参考点对应于地图构建数据所指定的位置。移动设备502可以使用任意各种适当的技术来获得该参考坐标。出于说明的目的,考虑以下三个示例。

在第一示例中,假设割草机器人10和对接系统12不具有或者不使用位置系统152、156。移动设备502将使用其位置系统512来获取参考坐标。例如,在执行地图构建应用时,移动设备502可以指示人工操作者将移动设备502移动至对接站12,该对接站12可以是由于割草机器人10在对接站12开始同时收集地图构建数据而在该地图构建数据中所指定的点。当处于对接站12时,人工操作者向移动设备502提供指示该移动设备502处于对接站12的输入,并且移动设备502使用其位置系统512来获得第一地理参考坐标。

随后,移动设备502指示人工操作者将移动设备502移动至在地图构建数据中所指定的该区域中的另一个点。例如,移动设备502可以指示人工操作者将移动设备502移动至最接近的信标或另一个信标,或者移动设备502可以指示人工操作者沿着割草机器人10收集地图构建数据时所采用的路径行走某段距离。在人工操作者到达第二点时,移动设备502使用其位置系统512来获得第二地理参考坐标。

在第二示例中,假设割草机器人10具有位置系统152。割草机器人10在收集地图构建数据的同时还可以获得参考坐标。例如,当割草机器人10在对接站12的位置开始收集地图构建数据时,割草机器人10使用位置系统152来获得第一地理参考坐标(例如,经度和纬度坐标)。随后,在割草机器人10移动至该区域中距对接站12至少某个距离的另一个位置时,割草机器人10使用位置系统152获得额外的地理参考坐标。该处理可以被重复以获得任意数量的额外的地理参考坐标。割草机器人10将地图构建数据和地理参考坐标发送至移动设备502。在一些情况下,例如在参考点的位置尚未被指定的情况下,割草机器人10可以发送指定地理参考坐标如何对应于地图构建数据的数据。

在第三示例中,假设对接站12具有并使用位置系统156。对接站12可以提供第一地理参考坐标(例如,经度和纬度坐标),并且割草机器人10或移动设备502可以在该区域内距对接站12至少某个距离的点获得第二地理参考坐标。在对接站12而不是割草机器人10中具有位置系统156例如对于减少割草机器人10的重量可以是有用的。

移动设备502使用该地理参考坐标和地图构建数据来显示待割剪区域的地图图像。在一些实施方式中,移动设备502从地图构建系统600获得地图图像,将地图构建数据取向(orient)至来自地图构建系统600的地图图像的坐标系统,并且随后显示具有待割剪区域的周界的图形叠加的地图图像。在一些其它实施方式中,移动设备502将该地图构建数据和地理参考坐标发送至地图构建系统600,并且地图构建系统600生成具有待割剪区域的周界的图形叠加的地图图像。在一个特定示例中,第一地理参考坐标被用来识别地图图像和边界之间的共有位置,而第二地理参考则被用来以旋转方式将地图与地图构建数据对准。

图4A-4K描绘了示例的地图图像和地图构建数据以对图3的系统350的使用进行说明。

图4A描绘了待割剪区域的示例周界450。周界450可以以任意适当的数据结构进行存储,例如作为在坐标系统454中被引用的一系列的X,Y坐标。该坐标可以是距割草机器人10在其收集地图构建数据时的起始点—例如对接站12—的距离(例如,X和Y距离)。地图构建数据可以包括信标805的位置,其可以利用点或其它符号进行图示。图4I将周界450图示为被标记为处于可割剪区域的边界之内、之外或之上的单元的笛卡尔网格。

图4B描绘了待割剪区域的示例地图图像452。移动设备502可以从地图构建系统600获得地图图像452。地图构建系统600可以存储地图图像或者从另一个系统获得地图图像。为了获得适当的地图图像452,移动设备502将位置数据提供至地图构建系统600。例如,移动设备502可以将GPS坐标发送至地图构建系统,或者移动设备502可以提示人工操作者500输入地址。地图图像452参照坐标系统456进行显示。

图4C描绘了具有叠加在地图图像452上的周界450的地图图像452。周界450还没未被调节从而考虑不同的坐标系统456。结果,周界450并未准确地相对于地图图像452描绘待割剪区域的边界。

图4D描绘了地图构建数据已经被调节从而考虑不同坐标系统454、456之后的叠加有周界450的地图图像452。移动设备502和/或地图构建系统600可以通过对地图构建数据进行平移、旋转和/或缩放来调节地图构建数据,而使得该地图构建数据对准到地图图像452的坐标系统。在对准时,地图构建数据内的参考点的地理坐标将与地图图像的地理坐标相匹配。

在调节地图构建数据时,周界路径450被转换为与地图图像452相同的坐标框架。机器人坐标系统454中的第一参考点位置与图像坐标系统456中的第一参考点位置之间的差异得以被计算。机器人坐标系统454内的所有数据—包括信标位置805和周界路径450—都可以以该差异进行平移,这形成了转换数据。图像坐标系统中的第一参考点可以被用作顶点来计算来自所转换的机器人坐标系统454的第二参考点与来自图像坐标系统456的第二参考点之间的角度。该角度可以被用来将所有转换数据在图像坐标系统中进行旋转。

图4E描绘了所显示的地图图像460的示例截屏,其具有请求用户对地图图像上的边界的位置进行确认的用户界面元素462。用户可以检查地图图像460以确认周界450被割草机器人10正确捕捉和/或周界450已经与地图图像460正确地对准。由于地图图像460是用于用户对边界以及割剪位置/进展进行感知而并非被用来控制或识别割草机器人10的边界,所以该对准并非必然是精确的。更具体地,该机器人使用在训练处理期间所定义的坐标系统来确定其相对于所训练边界的位置。

图4F描绘了所显示的地图图像460的示例截屏,其具有示出割草机器人10在其修割草坪时的进展的图形叠加466。更具体地,机器人将有关其在割剪期间的位置的信息发送至移动设备并且移动设备502利用示出机器人10所行进路径的图形叠加来更新地图。地图图像460还包括描绘所估计的完成时间的用户界面元素464。该完成时间例如可以基于在待割剪区域的周界450内剩余的待割剪的区域进行估计。用户界面元素464可以是任意适当的用户界面元素。

图4G描绘了所显示的具有示出图形叠加468的地图图像460的示例截屏,该图形叠加468具有示出割草机器人10的进展的图形叠加466和所预计的割草机器人10在其修割草坪时的剩余路径。这允许用户对已经被割剪的院子的部分以及割草机器人10将要遵循从而完成院子的割剪的路径都进行视觉化呈现。该预计路径例如可以基于周界450的形状以及割草机器人10的当前进展进行预计。预计割草机器人10的剩余路径在下文中参考图6进一步详细描述。在一些示例中,割草机器人10在割剪过程期间会遇到意外的障碍物。例如,树枝会阻挡割草机器人10而使得其无法对院子的特定位置或区域进行割剪。在一些示例中,当割草机器人10遇到意外障碍物时,可以在显示器上提供其中遇到该意外障碍物的位置的指示符(未示出)。这可以向用户(例如,户主)提供他/她应当从院子移除该障碍物从而允许割草机器人10在其接下来所安排的割剪时间期间在该区域行进并且对该区域进行割剪的指示。

图4H描绘了所显示的地图图像460的示例截屏,其具有信标的建议位置470。该建议位置470可以是现有信标的位置的替代。由于用户可以选择他们自己的信标位置,所以参考地图图像460而针对信标提供建议的位置从而帮助用户示出信标放置在何处可以改善割草机器人10的性能因素(例如,准确性、效率)会是有用的。确定所建议信标位置在下文中参考图7进一步详细描述。

图5是例如由移动设备502的计算设备所执行的用于显示待割剪区域的地图图像的示例方法5000的流程图。出于图示的目的,方法5000将被描述为由图3的移动设备502所执行。移动设备502例如可以执行该方法而产生图4D-4H的截屏。移动设备502可以在用户启动移动设备502上的地图构建应用时执行方法5000。

移动设备502初始化与割草机器人10的通信(5002)。例如,移动设备502可以与割草机器人10建立蓝牙连接,或者移动设备502可以通过无线网络与割草机器人10进行连接。在一些实施方式中,移动设备502向用户提示用来正确识别割草机器人10的信息;在一些其它实施方式中,移动设备502被配置为以无线方式探测割草机器人10。在一些实施方式中,割草机器人10的控制器150针对移动设备502进行认证。

如果割草机器人10还没有行进于草坪以收集地图构建数据,则移动设备502可以提示用户使得割草机器人10收集该地图构建数据。例如,移动设备502可以为用户显示与割草机器人10进行交互的指令,并且移动设备502可以在用户想要获得人工帮助的情况下致电消费者服务部门。在一些实施方式中,用户围绕院子推动割草机器人10,例如,如以上参考图1A-C所描述的。

移动设备502从割草机器人10接收地图构建数据(5004)。该地图构建数据可以定义待割剪区域的周界以及其它数据,例如围绕待割剪区域放置的信标的位置。该地图构建数据可以以任意适当的数据结构进行存储,例如作为相对于起始点的坐标的列表、或者作为向量数据。

移动设备502接收该区域内的参考点的地理坐标(5006)。例如,移动设备502可以如以上参考图3所描述的接收参考点的地理坐标。移动设备502接收至少两个参考点的地理坐标。该参考点例如可以是对接站12的位置和最接近的信标850,或者是至少距对接站12某个距离的其它点。

移动设备502接收待割剪区域的地图图像(5007)。例如,移动设备502可以使用参考点之一(例如,精度和纬度)从地图图像的数据库检索该地图图像。在另一个示例中,移动设备可以请求用户输入地址并且使用该地址从地图图像的数据库检索地图图像。所接收到的地图图像可以是草坪的俯瞰照片以及周边图像,诸如卫星图像。

移动设备502将地图构建数据对准到待割剪区域的地图图像的坐标系统(5008)。例如,移动设备502可以获得地图图像以及与该地图图像相关联的指定该地图图像的各部分和地理坐标之间的对应性的数据。该移动设备随后可以通过将地图构建数据平移、旋转和/或缩放来对准该地图构建数据,而使得第一和第二参考点与该地图图像上如指定该地图图像的各部分与地理坐标之间的对应性的数据所指定的第一和第二位置相匹配。

在信息不足的情况下(例如,参考点之一缺失或者被认为存在噪声或不正确),移动设备502和/或地图构建系统可以搜索地图中与周界450相对应的特征。图像分类器可以被作用于地图图像452从而找出同样轨迹的特征,诸如房屋或建筑物的角、草坪边缘、或者与周界450良好匹配的任意其它不同路径。移动设备502还可以将其它信息源与相同的测地坐标系统整合为地图图像452,诸如公众边界和界址线。

在机器人10包括磁力计315的实施方式中,机器人10可以随地图构建数据一起包括方向数据。例如,作为参考点之一的替代或者除了两个参考点以外,移动设备502和/或地图构建系统然后可以使用该方向数据来改善对准。例如,机器人10可以随地图构建数据一起包括指示哪个方向为北方的数据。地图构建系统然后还可以针对地图图像而确定哪个方向面向北方,并且移动设备502和/或地图构建系统可以对准地图构建数据和/或地图图像从而使得两个方向匹配。

在一些实施方式中,来自计算机视觉的图像配准(registration)技术被用来将地图数据与地图图像进行对准。地图被转换为网格表示(如果其还没有处于该格式),其中每个单元被标记为处于可割剪区域之内或之外,并且每个单元值可以由具有不同强度的像素进行表示。例如,可割剪单元可以由白色像素标记,而非可割剪单元则可以由黑色像素标记。该地图图像还由基于每种颜色对应于可割剪区域的可能性将颜色转换为强度的算法进行处理。例如,绿色像素可以被转换为白色像素(高的可割剪的可能性),黄色和棕色像素可以被转换为灰色像素(中等的可割剪的可能性),而其它颜色的像素则可以被转换为黑色像素(低的可割剪的可能性)。

在一些实施方式中,机器学习算法(例如,支撑向量机、神经网络)可以被用来基于示例图像而学习地图图像的哪些颜色最可能表示可割剪区域。该机器学习算法随后可以与地图图像一起被用来创建两个草地可能性图像(GPI),一个针对可割剪区域而一个针对地图图像,随后可以使用标准图像配准技术进行对准。图4J图示了针对可割剪区域的示例的草地可能性图像480。图4K图示了针对地图图像的示例的草地可能性图像482。

这些技术可以包括基于强度的算法以及基于特征的算法。在这两种方法中,例如使用(机器人10、对接站12或移动设备502上的)GPS所测量的地理参考点可以被用作地图GPI和地图图像GPI之间的对准的初始猜测。在基于强度的方法中,地图GPI随后(使用平移和旋转)被变换并且与地图图像GPI进行关联,并且具有最高关联值的变换被用来对图像进行对准。变换空间的搜索可以在接近初始猜测的有限区域中是穷举的,或者诸如爬山法、梯度下降法或模拟退火法的非线性优化技术可以被用来减少对准所需的时间。

在基于特征的方法中,在地图GPI和地图图像GPI中检测局部特征。这些特征可以包括线条和角,以及诸如SIFT(尺度不变特征变换)、SURF(加速鲁棒特征)或HOG(方向梯度直方图)的尺度不变特征。一旦这些特征的位置在两个GPI中被检测到,就可以使用与以上针对基于强度的方法所描述的相同技术,对地图GPI中的特征位置变换并且与地图图像GPI中的那些相匹配。最佳变换随后被用于地图对准。

在一些实施方式中,移动设备502从地图构建系统600接收地图图像并且将地图构建数据对准到该地图图像。在一些其它实施方式中,移动设备502将地图构建数据和参考点的地理坐标提供至地图构建系统600,并且该地图构建系统对准该地图构建数据并且使用经对准的地图构建数据提供地图图像。该地图构建系统可以以任意适当的方式选择地图图像,例如使用参考点的地理坐标,或者通过使用用户的街道地址。

移动设备502使用经对准的地图构建数据显示地图图像(5010)。例如,移动设备502可以显示具有图示出待割剪区域的周界的图形叠加的地图图像。在另一个示例中,移动设备502可以显示具有待割剪区域被高亮或加阴影显示的地图图像。

一旦地图构建数据已经对准到地图图像的坐标系统,地图图像和地图构建数据就可以被用于各种可选任务(5012)。例如,移动设备502可以提示用户确认该待割剪区域。移动设备502可以呈现出实时或近实时地示出割草机器人10在其割剪草坪时的进展的显示,例如通过使得割草机器人10在其割剪草坪时将其位置传输至移动设备502。移动设备502可以呈现出示出割草机器人10的预计剩余路径和/或割草机器人10完成草坪割剪的预计剩余时间的显示。

图6是用于对割草机器人10的剩余路径进行预计的示例方法6000的流程图。方法6000由计算设备—例如,图3的移动设备502—所执行。出于说明的目的,方法6000将被描述为由图3的移动设备502所执行。

移动设备502接收定义了围绕待割剪区域的周界的地图构建数据(6002)。移动设备502接收指定该区域中已经被割草机器人10所割剪的部分的跟踪数据(6004)。

移动设备502根据割草机器人的当前位置来绘制割草机器人10的预计路径,该预计路径可以由割草机器人10遵循以完成周界内还未被割剪的区域的割剪(6006)。在一些实施方式中,移动设备502通过模拟存储在割草机器人10的控制器150上的导航算法来绘制该预计路径。

在一些实施方式中,该控制器基于应用于草坪的网格地图表示的转行交替(Boustrephedon)(例如,谷物巡回(cornrow))算法来生成覆盖路径。在该网格地图中,单元被标记为处于可割剪区域的边界之内、之外或之上。在一些情况下,该机器人在草坪的一角处开始(如图4F中的示例),并且随后平行于草坪边缘移动直至其遇到草坪边缘的单元。机器人在该点进行180度的转弯并且随后向下对平行于第一行的新的路径进行割剪,并且横向偏移量不超过切割机构的宽度(从而确保每一行的割草之间没有间隙)。

用户还可以选择这些队列的取向(垂直、水平或者他们所偏好的任意角度)。用户还可以在草坪中隔出他们不希望割草机器人在其当前任务期间所覆盖的区域,或者指定应当更加彻底割剪的区域(通过更慢的移动或者多次通过的方式)。在一些实施方式中,该“阻进”区的边界在网格地图中被标记为边界单元,而该阻进区之内的单元被标记为非可割剪的。路径可以具有允许用户在不同的割剪图案或风格之间进行选择的其它可配置度量,或者可以具有允许生成有所变化的路径的伪随机属性。

移动设备502生成具有预计路径的图形叠加的待割剪区域的地图图像(6008)。如以上参考图5所进一步描述的,移动设备可以将地图构建数据和跟踪数据对准到地图图像的坐标系统。移动设备可以在该地图图像中包括各种特征,例如示出割草机器人10已经割剪过的区域的第一图形叠加,以及示出预计路径和预计完成时间的指示符的第二图形叠加。预计完成时间例如可以基于待割剪的区域的大小和割草机器人10的速度以及行/队列之间的重叠量。剩余时间还可以基于割草机器人10的剩余电池电量,并且可以通过电池中的剩余能量的量和/或电池中的剩余能量减去使得割草机器人10返回对接站10所需能量的量除以平均功耗来计算。修割草坪的总剩余时间也可以被显示,包括返回至充电器、重新充电并且随后割剪剩余区域所需的时间。

图7是用于确定建议信标位置的示例方法7000的流程图。方法7000由计算设备—例如图3的地图构建系统—所执行。出于说明的目的,方法7000将被描述为由图3的地图构建系统600所执行。

地图构建系统600接收定义待割剪区域的周界的地图构建数据(7002)。该地图构建数据还指定若干导航信标的位置。地图构建系统600从割草机器人10接收该地图构建数据。例如,割草机器人10可以将该地图构建数据提供至移动设备502,移动设备502随后例如可以在用户请求时将该地图构建数据提供至地图构建系统600。

地图构建系统600针对可能的建议位置而检查每个信标位置(7004)。例如,地图构建系统可以对于每个信标确定到两个最接近信标的距离。如果信标距最接近信标中的一个比另一个更近,则该地图构建系统可以确定建议位置,该建议位置更接近于沿周界的两个信标之间的中点。在另一个示例中,该地图构建系统可以使用标高(elevation)数据来确定两个相邻信标处于两个不同标高,其高度距离超过了阈值。该地图构建系统可以确定处于这两个不同标高之间的标高处的建议位置。

割草机器人10可以识别出从位置系统估计的位置不太具有置信度的地方。该地图构建系统可以建议在这些置信度较低的地方附近放置信标。还可以通过分析信标之间的距离上的长的间隙或者由于阻隔而仅可以与几个信标通信的信标,使建议位置基于信标位置地图。

地图构建系统600对任何建议信标位置提供在地图图像上的显示(7006)。例如,地图构建系统600可以通过将地图构建数据对准到地图图像而生成具有当前信标位置以及建议信标位置的图形指示符的地图图像。在另一个示例中,地图构建系统600将建议位置提供至移动设备502,并且移动设备502生成示出建议信标位置的地图图像。

虽然该说明书包含了许多具体细节,但是这些并不应当被理解为是对本公开请求或者所要求保护的范围的限制,而是作为对本公开特定实施方式的具体特征的描述。在该说明书中在单独实施方式的上下文中进行描述的某些特征也可以在单一实施方式中相结合地实施。相反,在单一实施方式的上下文中进行描述的各种特征也可以在多种实施方式中单独实施或者以任意适当的子组合实施。此外,虽然特征在上文中可以被描述为以某种组合进行工作并且甚至最初要求保护如此,但是来自所请求保护的组合的一个或多个特征在一些情况下可以脱离该组合,并且所请求保护的组合可以针对于子组合或者子组合的变化形式。

类似地,虽然操作在图中以特定顺序被描绘,但是这并不应当被理解为要求这些操作以所示出的特定顺序或先后顺序来执行,或者所有所图示的操作都要被执行从而实现所期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,在以上所描述实施例中的各种系统组件的分离并不应当被理解为在所有实施例中都要求这样的分离,并且应当理解的是,所描述的程序组件和系统一般可以在单个软件产品中被整合在一起或者被封装至多个软件产品中。

因此,其它实施例在以下权利要求的范围之内。

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