自主多平台机器人系统的制作方法

文档序号:2371917阅读:149来源:国知局
专利名称:自主多平台机器人系统的制作方法
技术领域
本发明通常涉及移动机器人系统,更准确地说,涉及用于在一自主多平台机器人环境中分配绘图、定位、计划、控制和任务执行功能的系统和方法。
背景技术
已经研究、开发和使用了移动机器人来处理各种任务如清洁和保安。大多数移动机器人是非自主的即,它们不能自主导航。由非自主机器人提供的经济效益受到机器人的行动不灵活和大量安装费用的限制。必须雇用熟练的技术员并向其支付预编程的费用,该预先编制的程序使机器人沿指定的路线行进并执行指定的任务。可能必需在该环境中安装一些物体以引导机器人,如轨道、地下信号发射线、标志或传感器。还可能必需对环境进行进一步的改变以最小化安装和操作上的问题。
有些移动非自主机器人能检测阻碍它们路线的障碍物,且能停止或稍微偏离它们的路线以避开这些障碍物。然而,例如如果通过移动一个大件的家具使环境发生了显著改变,则传统的非自主机器人就不能正确地作出反应。通常必须重复部分或全部安装过程。由于该局限,非自主机器人通常仅在静止或高价值路线上使用。尽管这些非自主机器人依靠随机运动来执行它们的任务,如池清洁机器人,该方法仅用于少量的应用。
在过去几年中,全自主移动机器人已经开始在实验室出现。自主机器人能通过对它们的周围和环境状况进行检测和作出反应来穿过周围环境。自主机器人导航包含四个基本任务绘图、定位、计划和控制。这些紧密相关的概念类似于询问“我在哪儿?”(绘图和定位),接着询问“我要去哪儿?”或“我要干什么?”(计划),最后“我怎么才能到那儿?”或“我如何去做?”(控制)。
一旦绘图完成,则必须确定机器人在该地图中当前的位置、方位以及变化率。该过程被称为定位。依靠2D绘图和定位的自主机器人通常不能充分可靠地进行导航,因为该地图相对来说太简单。通常,机器人会迷路、被卡住或跌倒。相反,动态3D绘图和定位的使用会使导航更可靠,但会涉及复杂的计算,该计算要求大量计算开支。典型的3D绘图具有成百上千万的单元,使例如陆标提取、定位和计划的直接操作在计算上密集化。引起的操作延迟限制了机器人移动和任务执行的速度。
一旦绘图和定位完成,必须着手任务的计划和执行。在任务执行过程中仍将需要一些定位。对一个机器人来说,在执行任务的同时试图去定位会导致无法接受的延迟。如果使用多个机器人,上面所描述的折衷通常仍然存在,而且现在必须处理多次。
鉴于此,需要具有快速、准确和效能成本合算的绘图和定位以及有效的任务计划和分配的自主的、多机器人系统。

发明内容
本发明针对用于在多机器人环境中分配绘图、定位、计划、控制和任务执行功能的系统和方法。该系统包括至少一个导航机器人平台以及执行预定任务的一个或多个功能机器人平台。
对每一个任务,一导航机器人和一指定功能的机器人协力地工作。绘图、定位、计划和控制功能被指定给至少一个导航机器人,以及功能任务被指定给一个或多个功能机器人。在一次执行中,该系统被用于清洁一个房间或办公室的内部。在这次执行中,功能机器人执行吸尘、清扫、拖洗、清洁浴室设备等等的工作,而导航机器人导航、操纵和监视该功能机器人。
在一个实施例中,导航机器人为其自身和功能机器人执行用于绘图、定位、计划和控制的所有和基本上所有的计算。因此,导航机器人配置有执行这些任务所要求的传感器和传感器处理硬件。相反,在该实施例中,功能机器人不执行用于定位、计划或控制的任何哪怕是少量的运算,因此,未配置为这些目的所使用的传感器或硬件。
因此,在一个实施例中,所提供的一种自主机器人系统包括至少一个第一移动机器人,用来在一个区域内执行一个或多个重复任务;以及至少一个第二机器人,用来指挥所述至少第一机器人在该区域内的所有运动。
在另一个实施例中,提供一种在一区域内执行一重复任务的方法,该方法包括以下步骤由至少一个第一移动机器人执行该重复任务;以及由至少一个第二机器人指挥该至少一个第一移动机器人在该区域中的所有运动。
在本发明的另一实施例中,提供一个在一环境中自主的移动机器人系统。该系统包括一个或多个功能移动机器人,负责执行多种功能任务。该系统还包括一个或多个导航移动机器人,用来在该环境中定位自身和功能机器人,计划由功能机器人执行的任务,并且在任务执行过程中控制功能机器人。在一实施例中,当功能机器人正在运动时,控制它的导航机器人保持固定不动。
在本发明的另一个实施例中,提供用于自主的多机器人操作的方法。该方法包括步骤(a)提供至少一个导航机器人和至少一个功能机器人;(b)由该至少一个导航机器人创建该环境的一地图;(c)由该至少一个导航机器人在该地图内定位该至少一个导航机器人和该至少一个功能机器人;(d)用该至少一个导航机器人,计划将由该至少一个功能机器人执行的任务;(e)用该至少一个功能机器人,执行由该至少一个导航机器人计划的任务;(f)用该至少一个导航机器人,在任务执行过程中控制和跟踪该至少一个功能机器人。
本发明还提供了一种实现自主移动平台系统的方法。该方法包括以下步骤提供多个移动平台;分配绘图、定位、计划和控制功能给第一套移动平台;分配功能任务执行功能给第二套移动平台;绘图该环境,在该环境中定位基本上所有的平台并且由第一套移动平台计划任务的执行;由第二套移动平台执行任务;以及由第一套平台控制和跟踪第二套平台的任务执行。
本发明的其它的特征和优点以及各种实施例的操作结构将参考附图详细说明。


参考附图来描述本发明。在附图中,同样的参考数字表示相同或功能相似的元件。
图1是根据本发明的多机器人系统的框图。
图2是根据本发明的导航机器人的框图。
图3是描述导航机器人和功能机器人间的通信的框图。
图4是根据本发明的功能机器人的框图。
图5是描述导航机器人操纵功能机器人绕过一障碍物时的框图。
图6是描述导航机器人操作自身靠近一功能机器人的框图。
图7a是说明一个方法的流程图,导航者通过该方法在该环境的动态地图中定位自身。
图7b是说明一个方法的流程图,导航者通过该方法进行重新计划。
图7c是说明一个方法的流程图,导航者通过该方法在任务执行过程中控制和跟踪功能机器人。
图8是根据本发明的用于实现一多机器人系统的方法的流程图。
具体实施例方式
1.介绍本发明针对用于在一多机器人环境中分配绘图、定位、计划、控制和任务执行的系统和方法。具体地,根据本发明的一个实施例,绘图、定位、计划和控制功能被分配给一移动平台(导航者),而任务执行功能被分配给至少一个第二移动平台(功能机器人)。
本发明通过提供接近实时操纵和任务完成克服了目前使用的传统系统的缺点。本发明的一个理想的应用是在家庭或办公室清洁方面,其典型地涉及多种和重复任务如吸尘、清扫、拖洗。然而,本发明也可用于操纵多个机器人来执行分配的任务的任何环境中。
2.系统组件图1是根据本发明的多机器人系统100的框图。系统100包括导航移动机器人110、多个功能机器人120以及(可选择)基站130。应当注意,在提供下述优点的同时,基站130并不是所有实施例中均要求的。
基站130,如果包括的话,可能安装充电站来对移动机器人110和120再充电。此外,基站130可能用来参与任务的执行。例如,如果系统100用于一住宅清洁环境中,则基站130可安装一垃圾箱、废物箱、水贮备器以及类似的装置以帮助所要求的任务的执行。
在一实施例中,导航机器人110负责所有或基本上所有的绘图、定位、计划和控制功能。它创建并保持环境地图、需完成的任务清单、一任务安排表以及一充电时间表。导航机器人110配置有导航和操作自身及功能机器人120所需的所有传感器和硬件。在这方面,导航机器人110具有向功能机器人120发送命令的发射器。
功能机器人120执行指定任务且其大小和形状可被制成利于任务的执行。机器人120安装用于从导航机器人110接收命令的接收器,如图1所示,机器人120可使用独特的形状和标记以助于导航机器人110识别、定位及跟踪它们。在一个实施例中,当导航机器人110执行这些功能时,机器人120最好不安装另外的传感器、传感器硬件以及类似设备。然而,如果需要,机器人120也可能安装传感器和类似设备以便提高它们的功能性。
a.导航机器人图2是根据本发明一实施例的导航机器人110的框图。提供如图2所示的机器人110的特定的实施仅用于说明目的,而不应该被解释为导航机器人110需要一种特定的物理结构。
在导航机器人110上安装一传感器202。传感器202可以是适用于机器人环境的任何类型的传感器,且可能使用多个传感器。它可能被安装在一固定位置或可以被配置为使其能相对于导航机器人110改变位置和定向。依靠该传感器类型和系统复杂性,传感器202的位置和方位可以或可以不受导航机器人110的控制。
在一个实施例中,传感器202是记录周围环境的光学图像的摄像机。在另一个实施例中,传感器202包括一组摄像机,用来提供用于获得有关机器人环境的更详细和准确信息的立体视觉。其他传感器选择包括,但不局限于雷达、激光雷达、声纳和/或其组合。这些传感器的操作和结构对本领域的普通技术人员来说是很熟悉的。导航机器人110进一步包括控制器204、电源及供电系统206、发射器208、电动机控制器210、电动机212以及轮子214。控制器204包括一处理器或中央控制单元(CPU)216、一暂存器或RAM218以及一非易失性存储器220。如地图和任务表的信息存储在非易失性存储器220中,在一次执行中,该非易失性存储器是一EPROM或EEPROM。控制器204接收和处理来自传感器202的有关机器人周围环境的信息。这可能包括如导航机器人110的位置、其他功能机器人120的位置、附近的陆标等等信息。控制器204使用该信息来确定下一步应出现什么任务或运动。
基于现有的信息,控制器204控制导航机器人110的运动和操作。导航机器人110操纵自身和实现运动的方法和手段称为“控制环”,并包括电动机控制器210、电动机212以及轮子214。基于来自传感器202的信息,控制器204发送适当的命令给电动机控制器210。电动机控制器210根据这些命令指挥电动机212。接着,电动机212驱动轮子214。在某些实施中,依靠该方法和移动的复杂性,控制环可能也包括伺服器、激励器、发射器和类似设备。控制环也可能收集和发送里程数据给控制器204。
如图3所述,在一个实施例中,控制器204还经发射器208控制功能机器人120的运动。控制器204处理由传感器202接收的传感器的输入201来确定功能机器人下一步应当从事何种任务、运动或其它功能。发射器208发射适当的控制信号209给功能机器人120的接收器302。
发射器208和接收器302可使用任何合适的通信装置和媒介。在一个实际应用中,声波被用于导航机器人110和功能机器人间的通信。在一个实施例中,在一个频率的声波意味着沿一个方向移动(即,从导航机器人110到功能机器人120),而在另一频率的声波意味着沿另一个方向移动(即,从功能机器人120到导航机器人110)。其他合适的通信装置包括,但并不局限于有线或无线通信、红外线信号和磁感应。
b.功能机器人图4是根据本发明一实施例的一个功能机器人120的框图。同样,提供如图4中所示的机器人120的特定实施仅用于说明目的,而不应当解释为机器人120需要特定的物理结构。如上所述,功能机器人120包括一接收器302。用于移动和操作机器人120的控制环包括电源和供电系统402、电动机控制器404、电动机406和轮子408。从导航机器人110经接收器302接收的控制信号指挥电动机控制器404。控制器404控制电动机406,电动机又驱动轮子408。控制环也可能包括伺服器、激励器、发射器以及类似设备。
导航机器人110和功能机器人的电源和供电模块可以相似或相同。电源部分可以包括任何适当的电源,包括,但并不局限于电池、插座、燃料电池、内燃或其他发动机或其组合。供电部分制约电源并分配其去符合任何可应用的规格或要求。
3.系统操作如上所述,本发明提供用于在一商业多机器人环境中分配绘图、定位、计划、控制和任务执行的系统和方法。具体地,在一实施例中,绘图、定位、重新计划以及计划和控制功能被分配给一移动平台(导航机器人),而任务执行功能被分配给至少一个第二移动平台(功能机器人)。以下论述每一功能(绘图、定位、重新计划、计划和控制以及任务执行)。
a.绘图在一个实施例中,导航机器人110执行所有或基本上所有绘图功能。绘图是由传感器数据和预先编程的输入创建和更新对环境的表示的处理。可以保存具有不同分辨率水平、稳定性和/或坐标系统的几个地图。动态绘图保持当前的动态地图(CDM),其为机器人环境的随机的2维(2D)或3维(3D)地图。也可能创建环境的外周边(即房间围墙或院子边界)的静态图。由导航机器人110创建的地图存储在RAM218或非易失性存储器220中。
反复的绘图过程基本上包括以下步骤移动到一个新位置、收集当前周围区域内的目标和障碍物的传感器数据,执行定位、以及更新动态地图以加入来自新的传感器数据的信息。该过程中计算密集且消耗时间。然而,如将要解释的,导航机器人110中的这些绘图功能的加强使绘图的时间降低为传统系统所需时间的一小部分。
如上所提到的,除环境的动态地图外,可以创建环境的外部周边的静态地图。例如,该静态地图可包括建筑物的墙壁或院子的边界。它可能被预先确定并输入到导航机器人110中,或者,导航机器人110可在执行任务开始之前先绘制该环境的静态地图。在以下例子中,导航机器人110沿物理上明显的周边前进,在其移动时保持一动态地图,并将来自动态地图的周边信息加入到该静态地图中。直到静态地图完成、一致和稳定时该过程才结束。
该过程或者说创建该静态地图的过程是相对较长和不断反复的。最好,在将系统引入到一个新的环境时只做一次。用来创建该地图的准确的方法学将依靠于所使用的传感器和被选择来执行必要运算的算法。在一个实际应用中,静态地图一旦创建后,就永久存储在导航机器人110中。导航机器人110通过识别陆标和其他环境的属性以及通过在静态地图内调整CDM,能在静态地图中定位其位置。不要求原点和参考点。使用某种假设可能缩短时间和简化要求来创建该静态地图的计算。在一办公室或家庭环境中,例如,假定墙壁是正方形且平坦的。这种假设的使用减少了用于创建该静态地图的时间。
在一个实施例中,绘图过程包括从来自安装在导航机器人110上的一对立体数字摄像机的传感器数据创建的三种地图。在该实施中,第一种地图是导航机器人110的即时环境的临时地图(TM)。具体地,该临时地图是从即时周围环境的最后立体图像对创建的可能的3D表示。在该实施中第二种地图是当前动态地图(CDM)。该CDM是工作环境的可能的3D表示并且是通过反复加入来自连续临时地图的信息来创建的。在该实施中,每次导航机器人移动时该CDM就会被更新。在该实施中第三种地图是静态周边图(PM)。如上所述,当导航机器人110沿该环境的外周移动时创建该PM。
在另一个实施中,地图不是由导航机器人110创建的,而是被输入会预编入导航机器人110中的。在另外一个实施中,在任务初始化前,不创建或输入一静态地图。在该实施中,导航机器人110仅以一空白动态地图开始并且在执行任务时更新它。
b.定位在一个实施例中,导航机器人110负责在绘制的环境中导航其自身和功能机器人。在该实施例中,导航机器人110负责所有或基本上所有的导航方面,包括定位、计划和控制自身和功能机器人120。相反,在常规系统中,每一个移动机器人负责其自身的定位、计划和控制。在这样的系统中,每一个机器人负责导航和操纵自身进入正确的位置以执行任务。这样的系统受对所有机器人的定位计算延迟的支配,这导致任务完成慢且效率低。本发明的实施例避免了这样的延迟且通过将所有或基本上所有导航功能集合到一个导航机器人110中并减少该机器人的运动量来增加效率。
定位是确定机器人在该地图中的当前位置、方向以及变化率的过程。可使用不同的过程来定位该导航机器人和定位功能机器人。功能机器人的定位相对比较简单,因为在一个实施例中,当定位功能机器人时,导航机器人是固定的或基本上固定的,因此可获知其在当前动态地图中的位置时。在一个实际应用中,导航机器人仅使用其视觉系统(传感器)跟踪功能机器人,然后用一跟踪滤波器如一卡尔曼滤波器来过滤视觉数据。如果功能机器人仅移动或转动一小段距离,则导航机器人传感器202能检测该运动并定位该功能机器人。在使用一基站的实施中,也能快速确定基站附近的功能机器人的位置。
功能机器人120上的独特形状和/或几何标记122也能帮助导航机器人110定位机器人120。导航机器人110所使用的传感器202的类型会指示是否使用独特形状或标记以及如何对其进行识别。在一个实际应用中,导航机器人110使用一神经网络来处理传感器数据和识别特定的形状。在另一个实施中,导航机器人使用其视觉或传感器系统来识别任何标记和/或形状。
除定位功能机器人120外,在一个实施例中,导航机器人110必须在任何运动后定位自身。导航机器人的定位不可避免地要与绘图,特别是与当前动态地图的保持相联系(即为保持该CDM,导航机器人必须了解其在CDM中的位置)。在同时使用当前动态地图和静态周边地图的地方,定位包括在这些地图中确定导航机器人和功能机器人的位置。注意CDM可以被预先编程。
通常对该导航机器人的定位过程比对功能机器人的定位过程更复杂。导航机器人定位自身的可能的方法包括推算定位法、活动信标、有源传感器以及陆标识别方法。使用推算定位法,可使用测距法和惯性导航系统,保持对机器人位置改变的粗略估计。活动信标定位方法通过测量其距放置在该环境中的已知位置处的信标的距离来确定机器人的位置。然后可使用三角测量来指出机器人的位置。有源传感器定位方法用放置在已知固定位置处的传感器如数字摄像机来跟踪机器人的位置。陆标识别法可用于机器人识别和了解该环境内特征和陆标的位置。所识别的陆标位置用来计算机器人的位置。
由于其成本低且简单,在本发明的一实施例中最好使用一些推算定位(特别是测距法)形式。然而,由于如轮子滑动或失调的因素,推算定位的错误可能会随时间累计。为弥补这些错误,可结合如上面所论述的辅助技术与推算定位一起使用。现实因素和约束可能限制辅助技术的可行性。活动信标和传感器方法通常要求在机器人环境中安装外物如摄像机或反射磁带。而这些物体的安装在工厂或工业环境是可以接受的,而通常在家庭、办公室和室外环境中是不可能接受的。由于这些原因,在本发明的一个实施例中最好使用陆标识别来对推算定位进行补充。
即使当推算定位与诸如陆标识别的辅助技术一起使用,例如有限传感器分辨率的因素也通常使定位不可能完全准确。许多定位算法,如Markov和Monte Carlo算法可能被用来进一步提高定位准确性。
图7a为一子步骤的流程图,该子步骤可能包含在用于导航机器人110的绘图和定位过程720的一个实施例中。在步骤721,导航机器人110从它的周围环境获得传感器数据。在一个实施例中,一对数字立体摄像机被用来获得该传感器数据。根据该立体图像对,在步骤722中创建一新的临时地图(TM)且相对于当前动态地图(CDM)来对其进行调整(步骤723)以便调整该临时和当前地图,生成一组位置估计值PEn-1,1...PEn-1,m。一定位算法如Markov和MonteCarlo定位算法可被用来生成这组估计值。在位置估计值中错误的范围将指示系数m的大小。从该范围选择最佳估计值PEn-1,k(1≤k≤m),使用PEn-1,k,从该临时地图和传感器数据中提取信息并将其添加到当前动态地图(步骤724)。然后废除该临时地图。
导航机器人110可能保持不动(步骤725)以减少计算。在一个实施例中,导航机器人110在保持不动的情况下跟踪和控制功能机器人,如下所述。最终,导航机器人110需要移动且开始向一新目的地GPn-1移动(步骤726)。当导航机器人110移动时,它可能收集里程数据(在一个实际应用中使用如上所述的推算定位法),以便用于获得其距PEn的距离和方位的估计值(步骤727)。在一个实施例中,导航机器人110也跟踪一个或多个功能机器人的位置或其他可识别陆标(通过一跟踪滤波器)以便提供它的当前位置的更准确的估计。通过使用如上所述的推算定位和陆标识别,当导航机器人110确定其当前位置估计值PEn-1相对于新的目标位置GPn-1(决定节点)可接受的阈值内时,便停止且返回到步骤711以重复定位和绘图过程。
c.重新计划在一实施例中,导航机器人110可收集有关环境的信息并执行信息收集和重新计划。图7b更详细地示出可能包含在信息收集和重新计划处理的一实施例中的各种子步骤。应注意在图7b中描述的步骤可以以任何顺序执行且每一个步骤都是可自由选择的。即,信息收集和重新计划可能不需要所列的一些步骤就能完成,且所列的一些步骤可以被重新编写或输入到导航机器人110中。
在步骤731中,导航机器人110收集另外的数据,如其中存在一个或多个功能机器人的房间或环境的特征(即大小、清洁要求等等)以及在那些房间中存在的表面的类型。在一实施例中,收集该系统中每个功能机器人地数据。可使用用于绘图和定位的相同的传感器来收集该数据,或可使用不同的传感器来收集该数据。如果例如一声纳传感器被用于绘图和定位,则可能必需使用不同的传感器如一摄像机来收集数据,如房间地面类型。
在步骤732中,导航机器人110确定什么功能机器人120可用于任务执行。做为选择,该信息可被输入导航机器人110中或在该导航机器人110中预先被编程,或它可能仅仅是不必要的信息。其次,在步骤733中,导航机器人110确定必须执行什么任务。同样,可在导航机器人110中预先编程该信息,经一接口输入该信息或经重新编程和输入的组合来确定该信息。
使用在步骤731-733中收集的信息,导航机器人110将可用的功能机器人与待执行的任务匹配(步骤734)并生成一任务表(步骤735)。每一个任务可被分成多个子任务以便使导航机器人的移动最小化并增加效率。
d.计划和控制在一实施例中,导航机器人110控制功能机器人120来执行预定的任务。图7c中更详细地说明在计划和控制中包含的步骤。在步骤742中,导航机器人110等待一段时间(根据如上所述生成的任务表),开始执行下一个预定的任务。在下一个任务的时间到来时或之前,在步骤744中,导航机器人110递归计算下一个最低级子任务。最低级子任务的例子包括打开发动机并跟踪机器人直到一事件发生。导航机器人移动自身或/和或控制适当的功能机器人去执行每一个子任务(步骤746)。导航机器人110经它的发射器208向功能机器人120发布适当的控制信息209(参见图3)。该计划和控制环被重复直到完成全部任务(判定节点748)。
导航机器人110使用该功能机器人的控制环来指挥功能机器人120沿计划的路线行进。如上所述,在一实施例中,用于移动和操纵机器人120的控制环包括电源和供电系统402、电动机控制器404、电动机406以及轮子408。从导航机器人110经接收器302接收的控制信号指挥电动机控制器404。控制器404控制电动机406,依次驱动轮子408。该控制环还可包括伺服器、激励器、发射器以及类似的设备。
当功能机器人120移动时,在一个实施例中,导航机器人110保持不动且跟踪功能机器人的进程。许多合适的跟踪算法对本领域的普通技术人员来说是很熟悉的。保持导航机器人110不动极大地减少与跟踪算法有关的定位计算的开销。此外,使用固定的导航机器人减少了与导航绕过无法预知的障碍物有关的延迟。首先导航机器人110可使用一功能机器人来测试计划的路线。如果发生冲突,导航机器人110仍知道自己的位置并在指挥功能机器人改变行进路程的同时跟踪功能机器人的位置。如图5所示,导航机器人110经传感器输入530能“看到”障碍物510并且能经一控制环520指挥一功能机器人120绕过该障碍物510。其计算强度远不及如果导航机器人110需要自己执行一功能机器人的任务或如果该功能机器人120需要执行该跟踪过程情况下的计算强度。
在一个实施例中,当功能机器人以比在传统系统中快得多的速率移动时,导航机器人仍能跟踪和控制该功能机器人。具体地,在一个实施例中,本系统能以比每秒每1,000 MIPS1英尺快得多的速率移动。另外,导航机器人110可具有足够的处理能力去执行一些或全部绘图和定位功能,同时跟踪和控制功能机器人。
最后,导航机器人110可能需要重定位自身以便继续跟踪功能机器人120。通常,这将发生在当功能机器人需要走远或已经移出视线时。当导航机器人110确定它需要重新定位自身时,在一实施例中,它命令功能机器人停止运动,然后使用该功能机器人作为陆标,进行移动。
如图6所示,在一个实际应用中,当导航机器人110正在移动时,它使用传感器输入610对一功能机器人120和如房间或窗户的角落的另一个陆标612作三角形测量。使用该数据,导航机器人110然后移入正确位置。当导航机器人110到达该新位置时,它进行动态绘图和定位(如上所述)以保证了解其所处的位置。该过程可能需要几秒种,因为陆标可能很远或不清楚时,且可能在地图或定位数据中出现错误。与传统方法相比,该反复过程相对来说比较快,因为至少一个具有精确已知尺寸的陆标总是在导航机器人110的附近。一旦导航机器人110移动到非常靠近功能机器人120,在一个实际应用中,该方法返回步骤744(图7c),且导航机器人110计算下一个子任务以促进任务的执行。子任务的递归计算是基于使导航机器人的运动最小化的算法。
在一个实际应用中,导航机器人110在功能机器人执行任务时跟踪功能机器人。在一个实际应用中,导航机器人110使用该任务所要求的运动的运动模型来帮助跟踪机器人。运动模型包括用于一指定地面类型的功能机器人的所期望的线和角速度以及加速度,以及到机器人的发动机和激励器的一组输入。只要该运动模型提供功能机器人的位置的粗略估计值,导航机器人110就可使用其传感器202获得更准确的数据。可使用多种滤波算法来滤除运动模型误差。在一实施例中,使用卡尔曼滤波,也可使用本领域的普通技术人员来说已知的各种过滤算法如g-h和Benefict-Bordner。实质上,x-y和方位数据被跟踪且过滤算法降低了由于该运动模型和传感器输入引起的错误。
在判定节点748(图7c),导航机器人110确定整个任务或子任务是否完成。如果任务完成,该方法返回步骤742,导航机器人110等待开始下一个任务或子任务。在一个实际应用中,任务的完成包括导航机器人110和功能机器人返回到基站130(图1)充电。在这点上,应注意在整个运动和任务执行中,导航机器人110可估计和监视功能机器人的功率电平并且当必要时返回它们以便充电。
在移动和执行它们的任务中,有些功能机器人,如真空吸尘器可能要求来自墙上插座的电源而不是自含的电源。在使用这样的机器人的系统中,导航机器人110和功能机器人可能协同工作以便定位墙上插座并将功能机器人的插头插入到该插座中。当功能机器人需要移动到远离特定插座时,导航机器人110和功能机器人能从该插座拔出且移动到另一个插座。
通过举例可最好地表示本发明所呈现的较在先技术的进步之处。考虑对20′*20′房间的吸尘任务。假定,由于机器人的尺寸,机器人每打扫一平方英尺的地面不得不移动8纵尺。用每行进一纵尺需要在一100MIPS处理器上处理两秒的定位算法,定位计算将耗费20*20*8*2=6400秒。这是约13/4小时的计算延迟。
相反,根据本发明,在一个实施例中,功能机器人120在导航机器人110的控制下执行所有或基本上所有的吸尘。假定在吸尘过程中,导航机器人110必须移动四次到10英尺远的位置,使用每行进一纵尺需要40毫秒的跟踪算法,该定位计算要求4*10*2=80秒用于导航机器人110;且20*20*8*0.4=128秒用于功能机器人。
总延迟仅208秒,提高了30多倍。
4.其它实施例以上示出并描述了本发明的一个实施例。本发明的候选实施例也已经被预见。如本发明的第二实施例计划使用不止一个导航机器人。在第二实施例中,第一或导航机器人组平台(移动机器人)负责所有或基本上所有绘图、定位、计划和控制功能,而第二或功能组平台负责功能任务完成。则第一组机器人负责绘图、导航以及跟踪第二组机器人任务的执行。本发明的第二实施例在有太多功能机器人受一个导航机器人命令和控制或在功能机器人散布在一特别大的地理区域的情况下可能很合适。
在本发明的第三实施例中,每一机器人既是一导航机器人又是一功能机器人。从事运动和任务执行的机器人具有一些或全部由一个或多个其他机器人执行的其导航和相关的计算。其他机器人可能在执行导航和计算的同时保持不动。机器人能经一无线通信链路交换位置数据。由于机器人彼此跟踪且没有机器人跟踪自身,因此本实施例进一步简化了定位。
在本发明的第四实施例中,同时使用还能够绘图、定位、计划和控制的功能机器人。然而,在本实施例中,功能机器人自身携带一个或多个主动或被动的信标。机器人确定该信标的位置然后使用它们距信标的距离以便对它们的位置做三角测量。
最后,在上述任何一个实施例中,可专用一固定计算机或另外的移动平台来执行一些或全部处理和计算。在这样一种结构中,每一个导航机器人可安装适当的传感器用于收集数据。这些传感器数据,不管是原始的还是部分经过处理的,可经一无线网络或用于通信的任何其他适当的装置被发送给专用计算机或其他移动平台,用于进一步处理。该专用计算机可执行必要的计算,并将结果传送给导航机器人。
5.执行一多平台机器人系统的方法用于执行本发明的系统的方法在图8中说明。在步骤802中,提供包括两个或多个物理上不同的移动平台的一自主系统。在步骤804中,绘图、定位、计划和控制功能分配给包括至少一个不同物理平台的系统的第一子集。包含在第一子集中的平台被称为导航机器人平台。
在步骤806中,负责功能任务完成的责任被分配给系统的第二子集,其组成不包含在第一子集中的平台。包含在第二子集中的平台被称为功能平台。在步骤808中,导航机器人平台绘制该环境,在该环境中定位所有机器人并计划一任务执行表。这些任务可能被分成更小的任务以更易于跟踪并限制移动导航机器人的需要。在步骤810中,导航机器人可能在控制功能平台执行分配任务的同时保持不动。在步骤812中,是可选择的,导航机器人可能使用一个或多个功能平台作为一陆标来移动到一个新的位置。
以上示出本发明的不同实施例。这些实施例仅通过例子来呈现,且不应该解释为对本发明范畴的限制,本发明的范围是由下面的权利要求及其等效内容来定义的。
权利要求
1.在一环境内操作的一种自主的移动机器人系统,包括一个或多个功能移动机器人,负责执行功能任务;以及一个或多个导航移动机器人,其在该环境内定位自己和功能机器人,计划将由功能机器人执行的任务,以及在任务执行过程中控制功能机器人。
2.如权利要求1所述的系统,其中,当功能机器人移动时,导航机器人保持不动。
3.如权利要求1所述的系统,其中每一个导航机器人包括一个或多个传感器,用于从该环境收集数据;一控制器,用于指挥该导航机器人和功能机器人两者的操作;一存储器,用于存储环境地图;以及一发射器,用于发射控制信号给功能机器人。
4.如权利要求3所述的系统,其中每一个功能机器人包括一接收器,用于接收来自导航机器人的控制信号。
5.如权利要求3所述的系统,其中每一个导航机器人通过获得从其当前环境的传感器数据,从该传感器数据创建一临时地图,将该临时地图合并到动态地图中,并移动到一个新位置以获得新的传感器数据来生成该环境的一动态地图。
6.如权利要求3所述的系统,其中,每一个导航机器人通过沿着该环境的外部周边前进并绘制该外部周边来生成该环境的静态地图。
7.如权利要求3所述的系统,其中每一个导航机器人将待由功能机器人执行的任务存储在存储器中。
8.如权利要求7所述的系统,其中导航机器人通过确定什么任务需要完成、将功能机器人与一特定任务匹配并生成一任务表来计划待由功能机器人执行的任务。
9.如权利要求1所述的系统,进一步包括一基站,用于参与任务完成、功能机器人的跟踪及机器人的再充电。
10.如权利要求1所述的系统,其中与定位、计划和控制有关的计算由一固定计算机执行并被传送到导航机器人。
11.一种用于在一环境内进行自主的多机器人操作的方法,该方法包括(a)提供至少一个导航机器人和至少一个功能机器人;(b)由该至少一个导航机器人创建该环境的一地图;(c)由该至少一个导航机器人,在该地图内定位该至少一个导航机器人和该至少一个功能机器人;(d)由该至少一个导航机器人,计划将由该至少一个功能机器人执行的任务;(e)由该至少一个功能机器人,执行由该至少一个导航机器人计划的任务;(f)由该至少一个导航机器人,在该至少一个功能机器人执行任务的过程中对其进行控制和跟踪。
12.如权利要求11所述的方法,其中(b)包括通过以下步骤创建一当前动态地图从导航机器人的当前环境获得传感器数据;从所获得的传感器数据创建一临时地图;将该临时地图合并到一当前动态地图中;移动该导航机器人到一新的位置;以及通过获得该新位置处的传感器数据来重复(b)。
13.如权利要求12所述的方法,其中(b)进一步包括通过沿该环境的外部周边前进并对其进行绘制来创建一静态周边地图。
14.如权利要求11所述的方法,其中在(c)中,定位功能机器人包括使用安装在该导航机器人上的一可视系统来跟踪该功能机器人。
15.如权利要求11所述的方法,其中在(c)中,定位导航机器人包括以下步骤将该导航机器人移向一新位置;使用推算定位和/或陆标识别技术来估计导航机器人的当前位置;确定当前位置是否大约就是该新位置,且如果不是,继续向新位置移动;如果当前位置大约就是该新位置停止该导航机器人并获得新的传感器数据,由新的传感器数据创建一临时地图;使用一定位算法来用一环境地图对该临时地图进行调整;以及将来自临时地图的信息合并到该环境地图中。
16.如权利要求11所述的方法,其中(d)包含从以下组中选择的至少一个操作,该组包括收集在该环境中的有关房间和表面的数据;确定可用什么功能机器人来执行任务;确定需要完成什么任务;将该可用的功能机器人与需要完成的任务匹配;以及生成一任务表。
17.如权利要求11所述的方法,其中(f)包括以下步骤命令功能机器人移进一正确位置以开始任务执行;功能机器人移向正确位置时,对其进行跟踪;如果功能机器人移动太远而不允许跟踪,则命令该功能机器人停止且移动该导航机器人使其更靠近该功能机器人;当功能机器人到达该正确位置时,命令功能机器人开始任务的执行;以及在该功能机器人执行任务过程对其进行跟踪。
18.如权利要求17所述的方法,其中,导航机器人在跟踪功能机器人运动和任务执行的同时保持不动。
19.一种在一环境内实现一自主移动平台系统的方法,该方法包括提供多个移动平台;分配绘图、定位、计划和控制功能给第一组移动平台;分配功能任务执行的功能给第二组移动平台;绘制该环境,定位该环境中的几乎所有的平台,并由第一组移动平台计划任务的执行;由第二组移动平台执行任务;以及由第一组平台控制和跟踪第二组平台的任务执行。
20.如权利要求19所述的方法,其中第一组平台在控制和跟踪第二组平台的任务执行的同时保持不动。
21.如权利要求20所述的方法,其中第一组平台使用第二组平台作为一陆标移动到一新的位置。
22.一种自主机器人系统,该系统包括至少一个第一移动机器人,用来在一区域中执行一个或多个重复的任务;以及至少一个第二机器人,用来在该区域中指挥该至少一个第一机器人的全部运动。
23.如权利要求22所述的系统,其中,该至少一个第二机器人用于绘制该区域。
24.如权利要求23所述的系统,其中,该至少一个第二机器人用于确定该至少一个第一机器人在该区域中的位置。
25.如权利要求24所述的系统,其中,该至少一个第二机器人用来计划该至少一个第一机器人在该区域中的全部运动。
26.如权利要求25所述的系统,其中,该至少一个第二机器人用于跟踪该至少一个第一机器人在该区域中的全部运动。
27.一种在一区域内执行一重复任务的方法,该方法包括由至少一个第一移动机器人执行该重复任务;以及在该区域中由该至少一个第二机器人来指挥该至少一个第一机器人的全部运动。
28.如权利要求27所述的方法,进一步包括由该至少一个第二机器人绘制该区域。
29.如权利要求28所述的方法,进一步包括由该至少一个第二机器人来确定该至少一个第一机器人的位置。
30.如权利要求29所述的方法,进一步包括由该至少一个第二机器人计划该至少一个第一机器人在该区域中的全部运动。
31.如权利要求30所述的方法,进一步包括由该至少一个第二机器人跟踪该至少一个第一机器人在该区域中的全部运动。
全文摘要
一自主移动机器人系统分配绘图、定位、计划和控制功能给至少一个导航机器人,分配任务执行功能给一个或多个功能机器人。该至少一个导航机器人绘制工作环境,在地图中定位自身及功能机器人,计划将由该至少一个功能机器人执行的任务,并在该至少一个功能机器人执行任务期间对其进行控制和跟踪。该至少一个导航机器人执行用于其自身和功能机器人的绘图、定位、计划和控制的几乎所有的计算。在一个实际应用中,该至少一个导航机器人在控制和移动至少一个功能机器人的同时保持不动以便简化定位计算。在一实施例中,该至少一个导航机器人安装有执行这些任务所需的传感器和传感器处理硬件,而该至少一个功能机器人未安装用于此目的的传感器或硬件。
文档编号B25J13/00GK1399734SQ00816243
公开日2003年2月26日 申请日期2000年11月22日 优先权日1999年11月24日
发明者布雷特·A·沃勒克, 哈维·A·科塞卡, 戴维·L·戈拉赫 申请人:个人机器人技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1