CN109804325A - 用于控制自主移动机器人的方法 - Google Patents

用于控制自主移动机器人的方法 Download PDF

Info

Publication number
CN109804325A
CN109804325A CN201780061402.4A CN201780061402A CN109804325A CN 109804325 A CN109804325 A CN 109804325A CN 201780061402 A CN201780061402 A CN 201780061402A CN 109804325 A CN109804325 A CN 109804325A
Authority
CN
China
Prior art keywords
robot
map
area
task
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201780061402.4A
Other languages
English (en)
Inventor
H·阿特斯
M·萨哈帕
D·西塔勒
R·福格尔
D·巴特尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robart GmbH
Original Assignee
Robart GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from DE102016114593.9A external-priority patent/DE102016114593A1/de
Priority claimed from DE102016114594.7A external-priority patent/DE102016114594A1/de
Application filed by Robart GmbH filed Critical Robart GmbH
Publication of CN109804325A publication Critical patent/CN109804325A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/246Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/383Indoor data

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

描述了一种用于控制自主移动机器人的方法。根据一个实施例,所述方法包括存储和管理对应于一机器人使用区域的至少一个地图和导航所述机器人通过所述机器人使用区域,其中,所述机器人连续地确定其在地图中的位置。所述方法此外包括检测换位过程,在该换位过程期间所述机器人执行它本身不能控制的运动。在该换位过程期间,所述机器人借助于传感器检测关于其位置和/或其运动状态的信息并且‑基于检测到的信息‑确定用于其位置的估计值。

Description

用于控制自主移动机器人的方法
技术领域
这里描述的实施例涉及一种自主移动服务机器人,例如一种用于处理表面(清洁地板)或用于监视和检查借助于一个或多个地图导航的区域的机器人。
背景技术
在最近几年中,自主移动机器人,特别是服务机器人越来越多地应用于家庭领域,例如用于清洁或用于监视住宅。在这种情况下,越来越多地使用这样的系统,该系统创建环境的地图,用以在使用SLAM算法(英语:Simultaneous Localization and Mapping(即时定位与地图构建),德语:simultane Lokalisierung und Kartenerstellung,例如参见,H.Durrant-Whyte和T.Bailey的:“Simultaneous Localization and Mapping(SLAM):PartI The Essential Algorithms”,in:IEEE Robotics and Automation Magazine,Bd.13,Nr.2,S.99-110,Juni 2006)(“即时定位与地图构建(SLAM):部分I基本算法”,在:IEEE机器人与自动化杂志,第13卷,第2期,第99-110页,2006年6月))下进行目标明确的导航。在这种情况下,借助于传感器(例如,激光测距扫描仪、照相机、触摸传感器、里程表、加速度传感器等等)确定地图和机器人在地图中的位置。在许多情况下,只创建一个临时的地图,也就是说,在每个工作过程中都重新创建地图。
与临时的地图不同,永久存储的地图的使用使得能够更有效地使用机器人,因为不需要为了创建地图而重复地探察环境并且可以预先计算出用于完成工作过程的优化策略。为了确定所述策略,可以确定附加的、环境特定的信息并且将其存储在地图中,以便可以在后续的工作过程中再次使用这些信息。因此,机器人例如可以识别出特别脏污的区域并且在随后的工作过程中更频繁地或更集中地清洁这些区域。附加地,可以在地图中永久地存储使用者特定的信息,例如应集中地处理的区域或不应在其中行驶的区域。
迄今为止阻碍在私人家庭中广泛使用的各种问题超过了所述永久存储的地图的优点。问题例如可能在于,使用者在不同的环境中(例如在房屋的不同的楼层中)使用机器人。因此,机器人必须能够处理多个地图并且可靠地确定是否它位于其中的一个地图中并且如果需要的话确定它当前位于哪个地图中。这种能力也称为全局自定位(英语:globalself-localization,例如参见"Active Global Localization for a Mobile Robotusing Multiple Hypothesis Tracking"(采用多重假设跟踪的用于移动机器人的主动全局定位),在:IEEE Transactionson Robotics and Automation(机器人和自动化学报),2001)。但是,用于全局自定位的已知方法是耗时的,由此延迟了通过机器人对实际的工作过程的执行。
另一个问题例如可能在于,在住宅中机器人的环境并且由此所属的地图在不断地变化。除了其它原因以外,这些变化的原因例如在于被移动的日用品例如椅子、被打开和关闭的门以及新的或被拆卸下来的家具物品。因此,除了其它方面以外,本发明基于的目的可以在以下方面中看出,即确保在变化的环境中对永久存储的地图进行稳健的处理并且改善机器人在地图中的自定位。
发明内容
上面所述的目的将通过一种根据权利要求1、6、24、28、30、53或57所述的方法以及通过一种根据权利要求29或60所述的控制单元来实现。各种不同的实施例和扩展方案是从属权利要求的主题。
描述了一种用于控制自主移动机器人的方法。根据一个实施例,所述方法包括存储和管理对应于一机器人使用区域的至少一个地图和接收通过所述机器人在机器人使用区域中执行任务的指令,对于所述机器人使用区域存在存储的地图。所述方法还包括确定用于执行所述任务所需要的地图和确定所述机器人在所确定的地图中的位置(全局自定位)。此外,创建所确定的地图的新的工作副本,并且所述工作副本被用于在执行所述任务时所述机器人通过所述机器人使用区域的导航。所述导航在这种情况下包括借助于传感器收集关于环境和所述机器人的运动状态的信息、基于所收集的信息连续地确定所述机器人的位置以及当识别出所述环境的变化时更新所述地图的工作副本(例如借助于SLAM)。但是所述永久存储的地图保持不变。
此外,描述了一种用于在至少一个机器人使用区域的至少一个永久存储的地图中自定位自主移动机器人的方法,其中,所述机器人确定它是否位于所述至少一个地图中和/或在所述至少一个地图中位于何处。根据一个实施例,所述方法包括确定在所述至少一个永久存储的地图和由所述机器人确定的相关机器人使用区域的实际环境之间的差异。评估所述确定的差异,以确定所述差异是否是由可运动的物体引起的。根据该评估,所述机器人确定其在所述至少一个永久存储的地图中的位置或放弃所述自定位。
根据一个实施例,所述用于自定位的方法包括确定在一个或多个地图内的相似和/或相同的区域。所述方法还包括确定所述机器人处于一个这样的相似的区域中。然后所述机器人等待最终确定它位于哪个地图中在哪个位置上,直到它识别出明确的区别特征。一旦所述机器人已经确定它在所述相似的区域内的位置,所述机器人才开始执行分派给它的任务。
此外,描述了另一种用于控制自主移动机器人的方法。根据一个实施例,所述方法包括存储和管理对应于一机器人使用区域的至少一个地图和导航所述机器人通过所述机器人使用区域,其中,所述机器人连续地确定其在地图中的位置。所述方法此外包括检测换位过程,在所述换位过程期间所述机器人执行它本身不能控制的运动。在该换位过程期间,所述机器人借助于传感器检测关于其位置和/或其运动状态的信息并且-基于所述检测的信息-确定用于其位置的估计值。
根据一个实施例,所述用于控制自主移动机器人的方法包括存储和管理对应于两个或更多个机器人使用区域的地图,其中,所述机器人使用区域具有不同的地理高度。所述机器人导航通过所述机器人使用区域并且在这种情况下连续地确定所述机器人的其在相应的地图中的位置。所述方法此外包括测量空气压力以及评估所测量的空气压力和-基于在空气压力中的变化-确定所述机器人已经离开其当前的机器人使用区域。
根据另一个实施例,所述用于控制自主移动机器人的方法包括存储对应于两个或更多个机器人使用区域的地图,其中,所述机器人使用区域具有不同的地理高度。所述机器人测量空气压力并且评估所述测量的空气压力。接下来,所述机器人可以根据所述测量的空气压力选择所述机器人的所述机器人使用区域的地图并且将其用于导航。
根据另一个实施例,所述用于控制自主移动机器人的方法包括存储和管理至少一个地图,所述至少一个地图对应于至少一个机器人使用区域。所述方法此外包括接收用于通过所述机器人来执行任务的指令,其中,所述任务可以属于第一组任务或第二组任务。为了执行所述任务,所述机器人导航通过所述机器人使用区域。来自所述第一组中的任务与基于地图的信息相关联,并且所述机器人在执行所述任务时借助于所述被存储的地图导航,所述基于地图的信息涉及所述被存储的地图。来自所述第二组中的任务不与基于地图的信息相关联。
描述了一种用于控制自主移动机器人的方法。根据一个实施例,所述方法包括永久地存储和管理对应于机器人使用区域的至少一个地图并且接收通过机器人在一机器人使用区域中执行任务的指令,针对所述机器人使用区域存在被存储的地图。所述方法此外包括确定用于执行所述任务所需要的地图并且确定所述机器人在所述确定的地图中的位置(全局自定位)。此外创建所述确定的地图的新的工作副本,并且在执行所述任务时使用所述工作副本,用于所述机器人通过所述机器人使用区域的导航。所述导航在这种情况下包括借助于传感器收集关于环境和所述机器人的运动状态的信息、基于所述收集的信息连续地确定所述机器人的位置以及在识别出所述环境的变化时更新所述地图的所述工作副本(例如借助于SLAM)。但是所述永久存储的地图保持不变。
此外,描述了一种用于在至少一个机器人使用区域的至少一个永久存储的地图中自定位自主移动机器人的方法,其中,所述机器人确定,是否它位于所述至少一个地图中和/或它位于所述至少一个地图中的何处。根据一个实施例,所述方法包括确定在所述至少一个永久存储的地图和由所述机器人确定的相关的机器人使用区域的实际环境之间的差异。评估所述差异,以便确定,是否所述差异是由可运动的物体引起的。基于所述评估,所述机器人确定其在所述至少一个永久存储的地图中的位置或者放弃所述自定位。
根据一个实施例,所述用于自定位的方法包括确定在一个或多个地图内的相似和/或相同的区域。所述方法此外包括确定所述机器人处于一个这样的相似的区域中。然后机器人等待最终确定它位于哪个地图中在哪个位置上,直到它识别出明确的区别特征。一旦所述机器人已经确定其在所述相似的区域内的位置,所述机器人才开始执行分派给它的任务。
此外,描述了另一种用于控制自主移动机器人的方法。根据一个实施例,所述方法包括存储和管理对应于一机器人使用区域的至少一个地图和导航所述机器人通过所述机器人使用区域,其中,所述机器人连续地确定其在所述地图中的位置。所述方法此外包括检测换位过程,在所述换位过程期间所述机器人执行它本身不能控制的运动。在该换位过程期间,所述机器人借助于传感器检测关于其位置和/或其运动状态的信息并且-基于所述检测的信息-确定用于其位置的估计值。
在一个实施例中,控制自主移动机器人的方法包括存储和管理包括存储对应于两个或更多个机器人使用区域的地图,其中机器人使用区域具有不同的地理高度。机器人导航通过机器人使用区域并连续地确定其在相应地图中的位置。该方法还包括测量空气压力和评估测量的空气压力,并且基于空气压力的变化确定机器人已经离开其当前的机器人使用区域。
根据另一实施例,所述用于控制自主移动机器人的方法包括存储对应于两个或更多个机器人使用区域的地图,其中,所述机器人使用区域具有不同的地理高度。所述机器人测量空气压力并且评估所测量的空气压力。接下来,所述机器人可以根据所述测量的空气压力选择所述机器人的机器人使用区域的地图并且将其用于导航。
根据另一个实施例,所述用于控制自主移动机器人的方法包括存储和管理至少一个地图,所述至少一个地图对应于至少一个机器人使用区域。所述方法此外包括接收用于通过所述机器人来执行任务的指令,其中,所述任务可以属于第一组任务或第二组任务。为了执行所述任务,所述机器人导航通过所述机器人使用区域。来自所述第一组中的任务与基于地图的信息相关联,并且所述机器人在执行所述任务时借助于所述被存储的地图来导航,所述基于地图的信息涉及所述被存储的地图。来自所述第二组中的任务不与基于地图的信息相关联。
此外,描述了一种用于自主移动机器人的控制单元以及一种具有这种控制单元的机器人。根据一个实施例,所述机器人或用于所述机器人的所述控制单元具有至少一个处理器和至少一个具有软件指令的存储器,当所述软件指令在所述处理器上被执行时,所述软件指令促使所述自主移动机器人执行在此处描述的方法之一。最后,描述了一种被存储在数据载体上的计算机程序产品,所述计算机程序产品具有软件指令,当所述软件指令由处理器执行时,所述软件指令可以执行在此处描述的方法。
附图说明
以下借助于在附图中所示出的示例对本发明更详细地进行解释。这些视图不是强制性地按照正确比例进行绘制的并且本发明不局限于所示出的方面。相反,重点在于展示本发明基于的基本原理。在附图中示出:
图1示出了一个框块图,该框块图举例说明地示出了一个自主移动机器人的结构。
图2示出了在两个不同的使用区域中使用机器人的示意性的示例。
图3以示例的方式示出了两个地图,该地图覆盖在图2中所示的两个机器人使用区域。
图4示出了用于永久存储的地图以及通过关闭门来改变地图构建的环境的变化的示例。
图5借助于示例示出了对在永久存储的地图中的可运动的物体的检测。
图6以示例的方式示出了部分地图的生成,该部分地图示出一个机器人使用区域或两个不同的机器人使用区域的相似的区域。
具体实施方式
图1借助于框块图示出了自主移动机器人100的示例性的结构。机器人100可以作为服务机器人自动地执行一个或多个任务,例如家庭的清洁或监视或在家庭内的物品的运输。针对清洁机器人的使用通过示例的方式对以下的构思进行了描述。但是,这些构思不局限于这种清洁机器人,而是可以应用于所有这样的领域,在这些领域中自主移动式工作机器应该在一个区域中执行任务,在该区域中所述自主移动式工作机器借助于地图自动地运动(或导航)。
一般地,可由机器人100使用的(电子的)地图是用于存储关于机器人使用区域(部署区域)的与位置相关的信息以及关于在该使用区域中与机器人相关的环境的信息的数据结构。一种类型的与位置相关的信息,这种信息可以被存储在地图中,例如是关于在机器人的使用区域中的障碍物(例如墙壁、关闭的门、家具、机器人基站和其它可运动的和不可运动的物体等等)的位置的信息。障碍物的位置通常借助于坐标来限定并且由机器人例如借助于SLAM方法(度量和拓扑图)来确定。另一种类型的与位置相关的信息例如是这样的信息,即哪些表面分区已经被处理过和特别是已经被清洁过、机器人在其活动期间已经接近过的位置,等等。另一种类型的与位置相关的信息例如是使用区域被划分成多个房间。这种划分可以由机器人100自动地完成或者也可以借助于使用者完成,使用者可以手动地进行划分或者手动地修改已自动进行的划分。这些房间的命名(例如“走廊”、“厨房”、“起居室”、“卧室”等等)可以被存储在地图中。另一种类型的与位置相关的信息可以是将各个房间进一步细分为子区域(例如“用餐区域”、“入口区域”等等),它们可以被分配有不同的属性(例如“禁止进入”、“难以行驶”、“严重脏污”或地板覆盖物的类型)或时间表(例如清洁间隔)。对于不同的机器人使用区域(例如房屋的不同的楼层)可以存储不同的地图。
根据在图1中所示的示例,机器人100具有各种不同的模块。在这里,一个模块可以是一个独立的组件(硬件)、一个用于控制在特定的机器人使用区域中执行期望的任务的机器人的软件的部件,或这两者的组合(例如专用硬件与连接的外围部件和适当的软件/固件)。负责机器人100的行为的软件可以在机器人100的控制模块150中(借助于相应的处理器和存储元件)被执行或者至少部分地被交换到外部计算机(例如个人计算机、服务器等等)上,该外部计算机例如可以在家庭网络中或通过因特网(云)达到。当特定的方法步骤或子步骤“被机器人”执行时,则整个方法步骤或子步骤不一定必须仅仅由在机器人中的硬件和软件来完成。也可能的是,机器人100(通常是机器人的控制模块150)促使所述方法步骤或子步骤的执行,而所述方法步骤或子步骤的实际的执行由外部的硬件和/或软件(例如由通过数据连接与机器人通信的外部计算机或服务器)来完成。此外应注意的是,机器人的“智能”也可以被分布到机器人的各种不同的模块中并且不一定必须集中在中央控制模块上。当特定的方法步骤或子步骤“被机器人”执行时,则所述方法步骤或子步骤可以由机器人的一个模块(例如控制模块150)完成、由多个模块共同地完成和/或借助于外部的硬件和软件来完成。
在本示例中,自主移动机器人100具有驱动模块101,该驱动模块可以具有例如电动机、传动装置和轮子。借助于驱动模块101,机器人100-在理论上-可以驶近它的使用区域的每个点。机器人100此外可以具有通信模块103,以建立到人机界面200(human-machineinterface,HMI)的通信链路300。通信链路300例如可以是直接的无线连接(例如蓝牙)、本地无线网络连接(例如WiFi或Zig-Bee(无线个域网))或互联网连接(例如到云服务)。人机界面200的示例是平板PC(个人计算机)、智能手机、智能手表,计算机或智能电视。在一些情况下,人机界面200也可以被直接地集成到机器人中并且可以通过按键、手势和/或语音输入来操作。上面提到的外部的硬件和软件也可以至少部分地位于人机界面200中。
机器人100此外可以具有工作模块102,例如用于清洁地板表面的清洁模块(刷子、真空吸尘装置)或用于抓取和运输物品的抓持臂。在某些情况下,例如在远程临场机器人或监视机器人的情况下,工作模块102是不需要的。因此,远程临场机器人具有更复杂的通信模块103,该通信模块具有由例如麦克风、照相机和屏幕组成的多媒体单元,以便能够在多个在空间上远离的人员之间进行通信。另一个示例是监视机器人,监视机器人可以在控制运行下借助于传感器模块130识别特定的事件(例如火、光、未经授权的人等等)并且例如可以相应地通知控制部门。
为了能够自主地执行任务,在本示例中的机器人100具有导航模块110,通过该导航模块,机器人可以在其环境中例如借助于导航特征(navigation features,也就是说,机器人借此可以辨别方向的特征),例如地标(landmarks,例如家具、门框、房间的角落等等),该地标可以借助于传感器模块130来检测,辨别方向和导航。导航模块110可以例如借助于障碍物避开策略和/或SLAM算法来工作和/或借助于机器人使用区域的一个或多个地图来工作。机器人可以在使用期间重新创建机器人使用区域的这个或这些地图或者可以使用在使用开始时就已经存在的地图。存在的地图可以由机器人本身在先前的使用期间,例如在探察行驶期间创建,或者可以由另一个机器人和/或人类提供并且例如被持久地(永久地)存储在存储器模块120中。存储器模块120优选地由非易失性存储器(例如固态盘,SSD)组成。备选地,机器人使用区域的要永久存储的地图也可以被存储在机器人外部,例如存储在机器人的使用者的家庭中的计算机上(例如平板个人计算机、家庭服务器)或者可以存储在可通过因特网访问的计算机上(例如云服务器)。
传感器模块130例如可以具有用于测量与在环境中的物体之间的距离的传感器,例如光学的和/或声学的传感器,该传感器借助于被发射的信号的三角测量或渡越时间测量来工作(三角测量传感器、渡越时间照相机、激光扫描仪、超声波传感器)。用于合适的传感器的其它典型的示例是照相机、触觉传感器、加速度传感器,轮子转速传感器、里程表和/或地面距离传感器。
为了能够在没有大量的使用者交互作用的情况下工作,机器人例如具有基站190,机器人在完成任务之后自动地返回到该基站。在该基站处,机器人可以例如为它的蓄电池充电和/或(在清洁机器人的情况下)清除掉被捕获的脏物。机器人可以具有中央控制单元,该中央控制单元可以包括控制模块150和可选地还可以包括上述模块中的其它模块。在一个示例中,控制单元例如包括控制模块150、导航模块110和至少传感器模块130的一些部分。
图2示出了一种用于自动移动服务机器人100的可能的使用场景,该自动移动服务机器人被在房屋的两个楼层F1、F2中使用。特别地,两个机器人使用区域F1、F2在空间上彼此被这样地分开,即机器人不能自动地从一个使用区域移动进入到另一个使用区域中。从第一机器人使用区域F1到第二机器人使用区域F2的转换例如通过人类使用者手动地实现或者在借助于诸如电梯的其它技术辅助工具下实现。应注意的是,机器人使用区域不一定必须对应于房屋的楼层。因此,同样可能的是,在住宅内的各个房间彼此被高的门槛或台阶分开,机器人在没有外界帮助的情况下无法克服这些门槛或台阶。机器人使用区域也可以位于不同的地理位置上,例如被放置在两个不同的房屋(例如市区房子、度周末的郊外小住宅)中。
在当前商业上可获得的系统中,机器人100可以在各种不同的机器人使用区域中使用,其中,机器人在每次使用中构建新的临时的地图。但是这与机器人的低效率、低灵活性和缺乏“智能”和学习能力相关联。为了克服这些缺点,由机器人100创建的地图可以被永久地存储并在以后的机器人使用中再次使用。-除了其它方面以外-由此导致例如以下的好处:
·通过更快地完成任务并且因此更少的能源需求而提高效率,特别是由于
-取消了为了创建地图而对环境的重新探察以及
-基于已知的地图预先规划有效的工作流程的可能性;
·借助于地图改进和简化使用者交互作用,尤其是通过
-房间和子区域的识别和命名(例如“起居室”、“卧室”、“用餐区域”),
-有关可预先确定的地点例如特定的房间的有针对性的工作指令(例如“清洁起居室”),
-输入危险区域(“Keep-Out-Areas(禁止进入区域)”),机器人不允许在该危险区域中自动行驶,以及
-输入与地点相关的清洁方式(例如“每天两次清洁用餐区域”、“用高抽吸力清洁走廊”);
·机器人的学习能力:例如机器人可以快速记住脏污的区域并且更频繁地清洁这些区域。此外,机器人可以记住在使用区域中的一些地点,在这些地点处机器人被卡住,由此机器人在将来可以避开这些地点或者小心地行驶。
为了机器人能够可靠地处理一个或多个永久存储的地图,机器人至少需要以下的能力:
1.创建新的地图;
2.确定是否机器人位于永久存储的地图中和必要时位于永久存储的地图中何处(全局自定位),以及
3.借助于地图来导航(同时掌握自己在地图中的位置,也就是说局部自定位)。
不仅对于第一能力而且对于第三能力,可以使用SLAM方法。
在这种情况下,机器人基于其运动和已知的地图数据连续地确定其位置。由于在这种情况下机器人在地图中的位置总是基于先前已知的位置来确定,因此在这种情况下这被称为“局部定位”或“位置跟踪”。因此,这种局部定位以关于最后已知位置的“先验知识”为基础。如果机器人借助于其传感器识别出环境的新的导航特征(例如障碍物,如墙壁或家具),这些新的导航特征还没有被记录在地图中,那么机器人就会将这些新的导航特征添加到地图数据中。由此可以创建新的地图或使存在的地图与可变化的环境相适应。这使得能够在可变化的环境中利用地图进行稳健的导航,在该可变化的环境中,例如人或动物在运动、门被打开或关闭,或者诸如椅子或周围的鞋子之类的障碍物被移动。
当机器人被换位或被重新开动时,第二种能力是重要的,并且它应该检查,它是否位于存在的地图中的任一个地图中和必要时位于在该地图中的何处。这种类型的问题也被称为“迷路机器人问题(lost-robot problem)”或“下落问题(drop-off problem)”。与在SLAM方法中的局部定位不同,这种用于在没有或仅仅具有有限的(关于机器人在地图中的前面紧挨着的位置的)先验知识的情况下确定机器人的位置的能力被称为“全局(自)定位”(“global(self-)localization”)(例如参见B.Filliat和J.Meyer的:“Map-basednavigation in mobile robots:I.A review of localization strategies”,in:Cognitive Systems Research,Vol.4(4),243-282,Dezember 2003(在移动机器人中的基于地图的导航:I.定位策略的综述”,在:认知系统研究,第4卷(4),243-282,2003年12月))。
已知有许多用于全局自定位的方法。例如在这种情况下使用模式识别(“patternrecognition and matching(模式识别与匹配)”)的算法。为了执行自定位,机器人例如可以开始构建新的地图并且检查与对于自定位重要的地图的一致性。为此目的,例如定义抽象的度量,该度量根据机器人的各种可能的位置评估地图的差异,其中,值0描述完美的一致性并且因此描述成功的自定位。可替代的变型方案可以确定机器人位于地图中在特定的位置上的概率,其中,值1描述可靠的成功的自定位。在实践中,很难达到这个理想值,因此使用阈值,当低于(或超过)该阈值时,则假定成功的自定位。如果在机器人的环境与现有的地图之间的偏差太大,则确定,机器人不位于地图构建的使用区域中。
为了使机器人100具有用于借助于永久存储的地图进行工作的尽可能好的基础,机器人100可以执行学习行驶。在学习行驶之前,例如可以要求使用者清理机器人使用区域并且打开所有的门,以便机器人100可以例如借助于SLAM方法构建它的使用区域的完整的并且无干扰的地图。在学习行驶期间,例如借助于测量距离的传感器测量在机器人使用区域中的所有障碍物(例如墙壁、家具)的位置。备选地或附加地,机器人可以巡视机器人使用区域的整个可行驶的表面。特别地,所述学习行驶可以与例如清洁之类的任务的执行相结合。例如,在学习行驶期间和/或之后,使用者可以向机器人提供关于它的周围环境的提示,例如机器人当前所位于的房间的名称,或者机器人不应该在房间的一定的区域(“禁止进入区域”的定义)中行驶。
在学习行驶结束之后,可以在使用者的帮助下或者自动地确定其它的基于位置和基于地图的信息。因此,可以在人机界面200(例如平板计算机,参见图1)上向使用者显示所述地图,从而使用者可以确认地图、识别和命名房间。显示的地图可以示出在学习行驶期间确定的被简化和再处理的数据。备选地,可以自动地检查地图的一致性并且可以进行房间的划分。例如,借助于在机器人上安装的照相机(例如传感器模块130的一部分)可以识别门过道并且基于识别的门过道可以生成自动的房间划分。在这两种情况下目标都是识别并且避免在地图构建中的错误并且为(以后的)使用者交互作用准备地图。最后,针对(在其中已经进行了学习行驶的)使用区域,存储地图数据,该地图数据不仅代表已经通过SLAM方法确定的状态,而且代表附加的特别是个性化的信息(例如房间的划分和命名)。该数据可以描述不同的抽象层面,例如度量数据(例如障碍物的位置)、拓扑数据(例如被识别的房间的位置关系),和语义学数据(例如房间的命名)。在可替代的实施方案中,地图也可以由另一个机器人提供给机器人100(因为该另一个机器人例如已经进行了学习行驶)和/或由使用者提供。
图3示例性地示出了两个地图10、20,机器人例如已经在来自图2的房屋的楼层F1和F2中构建了该地图。机器人可以将这些地图10、20持久地(永久地)存储在非易失性的存储器模块120中(参见图1)。存储器模块120例如可以包含存储器芯片,例如安装在机器人100中的闪速存储器。备选地或附加地,地图被存储在诸如计算机(例如家庭服务器)之类的外部设备或云服务(因特网服务器)上。只要机器人100对如此存储的地图10、20具有容易并且持久的访问权限(例如通过无线网络连接或通过因特网),这种形式的非本地的存储也被认为是非易失性的存储器。结合在这里所描述的实施例,如果一个地图为了在一个或任意多个机器人使用中重复使用(例如在机器人100被关闭和重新接通之后)被存储在非易失性的存储器中,则该地图是被持久地(永久地)存储的。与此相反地,临时的地图通常仅仅被保持在易失性的存储器(例如RAM,即随机存取存储器)中。与所使用的存储介质相独立地,临时的地图通常不是供在以后的机器人使用中重复使用的。
在一个或多个地图10、20被永久存储之后,可以给机器人下达与这些地图相关联的任务(例如“清洁”)。这例如经由人机界面200通过直接的使用者命令(例如对用于执行特定的任务的机器人的工作指令)、通过在可确定的时间点给出可确定的命令的日历功能、或通过在家庭自动化设备(“智能家居”)中编程的动作中发生。该任务的出发点例如是由使用者选择的地点或机器人的基站190。
一般地,由机器人要执行的任务(Tasks)和对机器人的与此相关的指令可以被划分成两个组。属于第一组的任务或指令是那些与基于地图的信息相关联的任务和指令(例如与多个地图中的特定的地图、与一个地图的特定的区域(例如特定的房间)或与在地图中的特定的位置相关联的任务和指令)。属于第二组的任务或指令是不与基于地图的信息相关联的任务和指令。如果机器人获得来自第一组中的工作指令(与基于地图的信息相关联的任务),则根据一个实施例机器人可以借助于基于地图的信息所属的任一个地图来导航。在这种情况下可以考虑在地图中输入的属性(例如禁止进入区域、难以行驶的区域等等)。如果机器人获得来自第二组中的工作指令(与地图没有关联的任务),则机器人可以在执行任务时创建新的地图。在这种情况下不考虑在可能存在的地图中输入的属性。备选地,也可以检查,是否机器人处在地图构建的使用区域中,如果是,则机器人可以使用分配给该地图构建的使用区域的地图进行导航。
在机器人100开始执行任务(Task)之前,例如可以检查,
1.是否一个地图构建的使用区域F1、F2与所述任务相关联并且如果是的话,
2.是否机器人100位于与所述任务相关联的所述使用区域F1、F2中并且如果是的话,
3.机器人100位于与所述任务相关联的所述使用区域F1、F2中的何处(全局自定位)。
所述任务例如可以是一般性的并且可以在所有地图中或甚至在非地图构建的使用区域中实现。例如,这是一个用于清洁当前的使用区域的命令(“清洁”)。在这种情况下,点2和3对应于在所有存储的地图中的全局自定位。如果在这种情况下确定机器人位于一个非地图构建的使用区域中,则该机器人为了完成它的任务而会创建新的地图。这种一般性的任务的另一个示例是清洁整个可行驶的表面(“清洁全部”),特别是不关注由使用者在地图中定义的“禁止进入区域”。在开始执行这样的任务之前,可以检查,是否机器人位于地图构建的使用区域F1、F2中以及位于该地图构建的使用区域中的何处或者总是可以创建新的地图。
由机器人要执行的任务也可以与具体的位置相关联(例如“清洁起居室”)。在这种情况下检查,哪个地图将被用于此目的(例如起居室位于其中的那个使用区域的地图)。在一个简单的设计方案中,连同每个任务一起直接地通知要使用的地图。因此,例如针对任务“清洁楼层F1”和“清洁楼层F2”的任务各给出一个命令,用于完全清洁使用区域F1、F2。
在第2点中首先检查是否机器人100位于指定的使用区域是可信的(可信性检查)。这种可信性检查例如可以基于机器人的最后已知的位置(例如机器人的上一个使用区域)并且基于检测机器人的换位的结果来进行。例如,机器人的最后一次使用是在楼层Fl中。然后,如果以后的使用也是在楼层F1中,只要机器人没有检测到换位并且在此期间没有被完全关闭,那么就是可靠的。如果机器人自最后一次使用以来(例如借助于传感器)检测到它被使用者换位,则在楼层2中的使用也是可信的。如果机器人自最后一次使用以来没有检测到换位,则在楼层2中的使用是不可信的。在这种情况下,机器人例如可以向使用者发送消息(例如“请检查我的位置。”)。
接下来,确定机器人在至少一个要使用的地图中的位置(全局自定位)。如果自定位不成功,则机器人可以(如先前一样)通知使用者或基于新创建的临时地图执行任务。
已知的系统将(例如借助于全局自定位)确定的被存储的地图直接用于机器人的导航,其中,存在两种不同的方法。或者使地图保持不变或者使其适应环境的变化(更新被存储的地图)。两种方法都有其优点和缺点。因此,用于可靠导航的先决条件是,地图尽可能准确地描述机器人使用区域。因此,如果诸如基站190的新的位置或新的障碍之类的改变被收入到地图中,则是有利的。但是,这也可能导致将临时的改变,例如关闭的门收入到地图中。这会导致,在随后的使用中在没有再次探察位于门后的房间的情况下,不能够为机器人规划位于门后的房间的路径。在最坏的情况下,由于诸如测量误差或在错误的使用区域中使用地图之类的机器人的问题,可能使该地图不能够用于将来的机器人使用。
为了避免这样的问题,可以在投入工作的开始时创建永久存储的地图10、20的至少一部分的工作副本。因此可以确保在学习行驶期间确定的地图(参考地图)不被改变,并且在每次使用时该地图完全可供使用。同时,可以在工作副本中考虑环境的所有变化。这特别是意味着,删除不再存在的导航特征、重新定位被移动的导航特征以及添加新的导航特征。如提到的那样,创建工作副本并不一定包括完全复制被作为地图10、20永久存储的所有信息。在一些情况下,用于导航所需要的信息(例如开始时借助于SLAM确定的障碍物)的副本就可以满足。
工作副本可以至少包括对于导航来说相关的地图数据。这些地图数据例如包括重要的障碍物的位置(例如墙壁、橱柜)和/或导航特征(机器人可以借此辨别方向的特征)的位置。不必将不会改变或者不会快速改变的地图数据收入到工作副本中。因此,例如房间的划分对于机器人的定向和导航来说是不需要的信息,并且该信息不会改变。此外,例如椅子或鞋子的位置是变化很大的,因此它们不会为机器人的导航提供任何的信息获取,因此它们不必被收入到工作副本中(如果这些信息甚至包含在永久存储的地图中的话)。在上面描述的方法中,可能仍然存在先前的机器人使用区域的旧的工作副本。如果创建了新的工作副本,则可以删除这个旧的工作副本。
旧的工作副本可以用于检查,是否机器人100处于指定的使用区域中以及处于指定的使用区域中的何处,由此可以容易地实现更上面提到的可信性检查。特别地,可以将机器人的位置从地图10或20的旧的工作副本转移到新的工作副本中。如果两个工作副本都基于相同的永久存储的地图并且机器人位置是有效的(例如,如果机器人没有被换位或关闭),则这是可能的。由此全局自定位可以取消并且机器人100可以立即开始执行其任务。
在一个可能的实施例中,可以检查,是否地图的旧工作副本应该被删除或可以被再次使用。对于被限制在特定的区域上的任务,继续使用现有的旧的工作副本可能是有意义的。这样的任务例如可以是清洁房间或房间的一部分。如果这个房间在地图的当前的工作副本中是可达到的,则机器人可以继续使用这个工作副本来完成它的任务。例如当任务包括在当前的工作副本中不能够达到的区域时,例如在机器人的最后一次使用中由于关闭的门而不能达到的房间,则可以创建新的工作副本。对于一些任务而言,删除旧的工作副本并且创建永久存储的地图10或20的新的工作副本可能总是有意义的。例如,如果机器人100的任务包括接近使用区域的所有区域,如例如这在完全清洁或完全检查机器人使用区域时发生的那样,就是这种情况。
如果假设环境由于人类活动而改变,即特别是通向房间的门被打开或关闭,则删除旧的工作副本并且创建永久存储的地图10、20的新的工作副本也是有意义的。为此目的,例如可以为机器人确定一个没有工作指令(对机器人执行特定的任务的命令)的固定时间段(例如5小时),在该固定时间段结束之后,针对机器人的新的工作指令创建新的工作副本。其它的决定特征例如可以是人员在机器人使用区域中的时间或存在和活动。例如,机器人可以被设计成用于检测存在的人员(例如通过在WLAN中可达到的个人移动设备如智能手机或通过借助于照相机进行的人员识别)。如果生活在家庭中的人中没有人在现场或者他们正在睡觉,则预期在使用区域中没有发生变化,因此继续使用旧的工作副本可能是有意义的。如果有人员离开或进入机器人使用区域(例如房屋),则可能导致较大的变化。因此,例如当使用者离开他的住宅时,使用者可以打开通向一个房间的门,期望机器人在他不在现场时清洁这个房间。在这种情况下重要的是,机器人用一个新的工作副本替换旧的工作副本,在旧的工作副本中门被标记为是关闭的,在新的工作副本中所有房间都被标记为是可达到的。
可能发生机器人在全局自定位的阶段中错误地确定地图和/或它在地图中的位置。这例如由此发生,即机器人在楼层F1中位于走廊11中并且它收到在属于楼层F2的并且被记录在地图20中的房间24中完成任务例如清洁房间24的命令。由于在这种情况下向机器人通知了要使用的地图20,因此自定位仅仅在该地图中进行。由于在地图10中的走廊11与在地图20中的走廊21的强烈的相似性,机器人在全局自定位期间可以确定用于地图20的位置,尽管机器人位于另一个楼层F1中。如果机器人运动到房间14中(假设它正在运动到房间24中),那么在使用的地图20与在那里地图构建的房间24以及在房间14中的实际环境之间将检测到大的偏差。在SLAM方法内,机器人100的导航模块110将如此地修正永久存储的地图20的工作副本,即,使隔墙的位置与房间13和14的事实情况相适配。因此,通过使用工作副本,永久存储的地图和工作副本之间的差异可以使用普通的导航算法来修正,而不会损坏永久存储的地图。在本示例中,尽管机器人将在“错误的”楼层(即在房间14中而不是在房间24中)执行其任务。但是,通过将工作副本和永久存储的地图进行比较,使用工作副本可以实现对这种错误的检测。由于永久存储的地图没有被(使用者的)错误损坏,因此机器人在使用者造成的操作错误方面上是更加稳健的。
此外,使用工作副本允许在完成任务期间持续地检查,是否自定位是正确的还是错误的(即,是否机器人实际地处于与被使用的地图相关联的区域中)。为此目的,例如可以将地图20的在导航期间改变的工作副本连续地与永久存储的地图20进行比较。为此目的,例如可以使用与其在全局自定位时为了确定机器人在地图中所使用的相同的算法。备选地或附加地,也可以评估在地图20的工作副本中的必要的适配。因此,例如对新的或缺失的墙壁的检测是针对使用错误的地图和/或位置的明显的标志(如在房间14和房间24混淆的情况下)。相反,小的变化是由于日常生活和/或由于在正常范围内的通常的测量和导航误差造成的。
为了能够将使用错误的地图(即,使用来自另一个使用区域的地图)的情况与由所提到的测量和导航误差造成的在存储的地图和环境的所测量的实际状态之间的偏差的那些情况区分开,可以使用度量和拓扑测度功能。度量测度例如检测新识别出的或缺失的导航特征的尺寸(长度)或受这些改变影响的区域的面积。例如,如果机器人(如先前一样)位于楼层F1中,但是借助于楼层F2的地图20进行导航,那么会发现,地图构建的房间24的面积(但是该房间实际上是房间14)超过一倍。同时,房间23(但是该房间实际上是房间13)的面积被减少了相同的量。拓扑测度探测被识别的房间和被识别的房间边界的相对位置。因此,例如在地图10中的房间13和房间14之间的房间边界是垂直定向的,而在地图20中的房间23和房间24之间的房间边界是水平定向的。所提到的度量或拓扑测度可以被用于识别出机器人100在用错误的地图导航。
如果确定机器人100不处在所使用的地图中,则存在各种不同的操作选项。因此,机器人可以例如中断处理并且返回到它的起始位置(例如基站),机器人可以继续处理,或者机器人可以向使用者发送消息并且请求指示。备选地,机器人100可以在所有永久存储的地图中开始重新的全局自定位。在这种情况下,机器人可以特别地使用当前的工作副本的已经行驶过的部分。例如,可以对地图数据设置时间戳,借助于该时间戳可以将最新的观察与旧的观察区分开来。由此机器人可以在当前的工作副本中区分导航特征,这些导航特征来自于永久存储的地图并且机器人已经在当前的运行中观察了这些导航特征并且因此对于自定位来说可能是相关的。
永久存储的地图的工作副本的另一个优点是改进的学习能力。因此,机器人可以在结束机器人使用区域中的任务之后将在导航期间更新的工作副本的地图数据与永久存储的地图进行比较。在这种情况下识别出的差异例如可以通过三种方式进行处理:
·放弃而不更改永久存储的地图,
·记下而不直接更改永久存储的地图,
·直接输入到永久存储的地图中。
例如可以忘记何时房间由于至少一个关闭的门而不能够达到。同样地,在测量精确度的范围中的小的变化或由于小的可运动的障碍物(例如被搁下的手提包)造成的小的变化是不相关的并且因此可以被忽视(放弃)。诸如基站的位置的改变之类的其它的改变是如此的重要,以至于应该立即相应地更新永久存储的地图。
大部分的变化不能够被直接地划分成“相关的”或“不相关的”。这些变化被与永久存储的地图关联起来和/或被存储起来。例如,在每次通过之后,评估被如此收集的信息,是否将它们删除、保留下来以进行进一步的分析、或是导致对永久存储的地图的更改。在下文中更详细地解释了三个示例。
示例1-学习新的障碍:使用者可以在机器人使用区域中放置新的障碍物,例如新的家具或包裹。机器人将通过它的传感器检测这些障碍物并且相应地适配永久存储的地图的工作副本。通过将工作副本与永久存储的地图进行比较,机器人可以将障碍物识别为新的。但不是立刻清楚是否这个障碍物持久地留在这个位置上(例如新的家具)或仅仅一次地或偶尔处在这个位置上(例如包裹)。因此,根据一个实施例,在第一次观察到新的障碍物(例如包裹或新的家具)时,可以将该新的障碍物与地图相关联地存储起来。但是,在下一次机器人使用时并不一定意味着先前存储的障碍物处于它首次被观察到所在的那个位置上。因此,该障碍物在永久存储的地图中还没有被如此地输入,即在创建新的工作副本时自动地包含该障碍物。如果至少在下一次使用期间再次观察到该障碍物,则可以将该障碍物持久地记录到地图中,以便在每次进一步的机器人使用时该障碍物都是已知的。在将新的障碍物持久地记录到地图中之前,可以向使用者提出询问,是否这是期望的。如果该障碍物在后续的使用中不再存在,那么放弃(删除)与其相关的信息并且永久存储的地图保持不变。类似的方法是可能的,以便持久地识别不再存在的障碍物并且将其从永久存储的地图中删除,例如如果使用者将一个柜子从机器人使用区域中移除的话。
示例2-学习可自由行驶的区域:诸如站立在周围的鞋子或椅子腿之类的小的移动障碍物给机器人的导航造成困难,因为这些障碍物一般地都是以成堆的方式出现的(一双鞋、一张桌子旁的多把椅子)并且机器人必须小心地绕开这些障碍物行驶。因此,例如可以将机器人使用区域的地板表面划分为具有极大的可能性使机器人能够自由行驶的区域以及由于可能存在小的移动障碍物而难以行驶的区域。对于从使用区域的一部分到另一部分的过渡行驶,机器人可以尽可能地利用可自由行驶的区域并且尽可能地避免难以行驶的区域。由此机器人可以以更高的速度行驶并且避免复杂的情况,例如绕开大量的椅子腿的行驶,由此提高系统的效率。
小的移动障碍物的具体的位置是不相关的,因为它们在从一个使用到下一个使用中可以很容易地改变。因此,该信息不会或仅仅有限地在永久存储的地图中被记录和/或被更新。但是,为了学习地图的在其中预计具有这种类型的障碍物的区域,根据每个工作指令借助于永久存储的地图的工作副本确定小的障碍物的位置并且作为信息与地图相关联和/或被存储起来。为此目的,例如将工作副本与永久存储的地图进行比较并且确定所有新的障碍物的位置,例如这些新的障碍物的最大尺寸小于机器人的宽度。通过综合来自多个机器人的信息得出在其中小的移动障碍物不存在的区域和在其中小的移动障碍物非常密集地存在的区域。这种密度例如可以被用作将机器人使用区域划分为“可自由行驶”和“难以行驶”的区域的量度。可以在地图中为相应的区域分配相应的属性。以相似的方式,也可以确定在机器人使用区域的某个区域中的小的临时存在的障碍物的相对频率。基于所确定的相对频率,还可以进行在“可自由行驶”和“难以行驶”的属性之间的区分。
为了机器人能够适应在机器人使用区域中人类使用者的改变的习惯,例如针对小的移动障碍物的位置的信息存储时间戳。因此,在何种程度上考虑小的移动障碍物的位置的尺度可以取决于对其观察的时间。例如,可以在一定的时间之后删除或放弃(“忘记”)关于小的移动障碍物的位置的信息。
在多个地图中的定位-为了能够在多个对于机器人100来说在物理上被彼此分开的机器人使用区域(例如房屋的楼层F1、F2)中借助于所属的永久存储的地图10、20可靠地使用自主移动机器人100,该机器人必须能够可靠地确定,是否它位于其中的一个地图中并且如果需要的话,它位于特定的地图中的何处(全局自定位)。为了加速全局自定位,例如可以通过使用者预先规定关于要使用的地图和大致的起始位置的信息。这种起始位置例如是基站190或在该基站的附近。例如,如果在具有两个楼层的房屋中使用机器人100(参见图2),其中,机器人通过人经由楼梯3从楼层FL被送到楼层F2,那么例如“在楼梯的附近”可以被选择作为大致的起始位置。特别地,在全局自定位的情况下,可能的机器人位置的检查可以限于一个部分地图上,该部分地图例如描述与起始位置相关联的房间。全局自定位因此可以例如被局限在房间11或21(走廊)的地图部分上,楼梯3位于该房间11或21(走廊)中(见图3)。但是,所需要的使用者输入对于使用者来说是不舒服的并且可能容易出错。
例如,当机器人被使用者换位时(也就是说,不是自动地从一个地点运动到另一个地点),全局自定位是必要的。为了使这种全局自定位更快速和更可靠,根据在下文中描述的实施例:
·检测机器人100的换位的开始和结束,
·在换位期间收集关于机器人的位置和/或运动状态的信息,以及
·基于该收集的信息,估计机器人在存储的地图中的位置。
在下一个步骤中,基于机器人100的估计的位置和要使用的地图,可以执行加速的全局自定位,其中,如通过使用者输入的信息那样,可以以可比较的方式和方法使用所述估计(也就是说,机器人的估计的位置)。在一些情况下,所述估计是如此的准确,以至于可以放弃全局自定位并且将所述估计直接用作导航的出发点,由此机器人可以更快地开始执行其任务并且因此提高其效率。在所述估计的范围内,例如可以计算用于机器人的位置的概率分布。例如这是一种正态分布,该正态分布通过期望值(预期的位置)和标准偏差来表征。可以确定预期值和标准偏差。此外,可以借助于在换位期间确定的信息来确定是否机器人位于上一个机器人使用区域中或者已经被换位到另一个机器人使用区域中。
对换位的开始和结束的检测可以借助于机器人100的传感器模块130的传感器来实现。在这种情况下例如具有以下的可能性:
·轮子接触开关检测,是否机器人100与地板接触。
·地面距离传感器(例如悬崖传感器)检测,是否地板在机器人100下方并且-在一些实施例中–地板与机器人之间处于何种距离下。
·加速度传感器测量机器人的加速度,例如在抬起机器人时垂直于地板表面的加速度或在移动机器人时平行于地板表面的加速度。为了提高对机器人的抬起或放回的检测的可靠性,可以组合多个传感器。
在换位期间借助于传感器模块130的传感器探测信息。这些信息包括关于机器人的位置和它的运动的信息,例如加速度、速度、方向、角速度和高度。在此基础上可以估计机器人的位置。为了测量所述的信息,例如可以使用集成的MEMS陀螺仪和加速度传感器。多个这样的传感器可以被组合在所谓的“惯性测量单元”(inertial measurement unit,IMU)中。后面还将更详细地讨论所使用的传感器。
为了补偿例如由噪声引起的传感器的测量误差,可以组合多个传感器。为此目的,已知有各种不同的传感器和数据融合的方法。例如,所述估计基于传感器数据借助于(扩展的)卡尔曼滤波器来进行,其中,对机器人的位置的预期值和标准偏差(正态分布)进行估计。由此有可能得出对所述估计的精确度的结论。备选地,可以使用粒子滤波器,该粒子滤波器能够确定非正态分布的概率分布(例如参见S.Thrun:Particle Filters inRobotics,in:Proc.of the18th annual Conf.on Uncertainty in ArtificialIntelligence(UAI 2002),San Francisco,Ca.,S.511-518,2002(机器人中的粒子滤波器,在:第18届年度会议论文集,论人工智能中的不确定性(UAI 2002),加州旧金山,第511-518页,2002)。
在惯性导航(inertial navigation)的情况下,针对所有三个空间维度测量加速度和角速度并且由此(尤其通过积分)确定机器人在房间中的轨迹并且因此也确定位置的变化。从已知的位置出发,在该位置上机器人100例如被使用者抬起,可以借助于惯性导航来估计在以后放下机器人100时的位置。在这种情况下IMU可以被用作传感器。一个这样的IMU可以包含一个或多个加速度计(accelerometer)和角速率传感器(angular ratesensor,例如陀螺仪),它们例如被集成在一个MEMS芯片(MEMS=Mikro-Elektro-Mechanisches-Systeme(微机电系统))中。在短距离(大约最远10米)上惯性导航非常有效地起作用。对于更长的距离,或者,为了提高估计的精确度,可以将惯性导航与其它方法组合或者将其替换。例如可以通过借助于附加的或替代的测量方法(例如借助于卡尔曼滤波器(Kalmanfilter))确定在一个或多个时间点的位置和/或速度来改善惯性导航的精确度。
一种可能性例如在于使用磁力计,该磁力计可以被集成在IMU中。借助于磁力计可以确定地球磁场并因此确定机器人相对于地球磁场的方向。如果附加地考虑地心引力的方向(例如借助于倾斜传感器),那么可以确定机器人相对于绝对(空间固定的)坐标系的方向,从而改善位置估计的精确度(在被重新放回到地板上时对机器人100的位置的估计)。
确定位置的另一个可能性在于,基于测量的位置变化(由借助于IMU测量的加速度和旋转速率来确定)跟踪正在将机器人换位并且将机器人抓持在手里的使用者的运动。因此,例如可以检测,是否使用者在一直向前行走或者围绕拐角处行走或者在向上或向下走楼梯。例如,如果检测到使用者正在使用楼梯(参见图3,楼梯3),那么由此可以推断,机器人使用区域正在被更换(例如从楼层F1更换到楼层F2)。此外,在大多数家庭中的楼梯的位置是明确的。因此机器人的位置在通过使用者以大约一米的精确度结束爬楼梯之后是已知的。
或者机器人在楼梯的末端处被放下,从而机器人可以利用这个信息开始自定位,或者机器人被进一步搬送到另一个区域中,该另一个区域借助于前面谈及的惯性导航来确定。其它典型的运动模式同样可以与在房间中的位置相关联,例如在细长形的房间中的直线行走、拐弯,以便通过门进入房间、或者环绕立在房间中的障碍物如桌子行走。为了从位置变化的数据中推断出使用者的运动形式并由此推断出在地图中的位置,例如使用机器学习(Machine Learning)的方法,例如神经网络。这些方法将基于在不同示例情况下收集的真实数据来训练,以便由此能够学习典型的运动模式并且能够在以后检测它们。对机器人的使用区域进行如下分析,即这些典型的运动模式将在哪些位置处出现,例如楼梯位于哪个位置处。
执行和/或改进位置估计的另一种可能性是,在机器人被使用者换位期间确定机器人的至少一个速度分量。这例如借助于用于探测环境的传感器来进行,机器人在正常运行中借助于这些传感器在其环境中辨别方向。例如这是用于距离测量的传感器,例如光学和/或声学传感器,该传感器借助于三角测量或发出的信号的渡越时间测量来工作(三角测量传感器、渡越时间照相机、激光扫描仪,超声波传感器)。由于在被抬起的状态下,机器人检测到与站立在地板上时不同的障碍物之间的距离,因此很难在此基础上直接地确定机器人的位置。但是,由这些距离的变化可以确定机器人的至少一个速度分量。该速度可以被用于修正在惯性导航中确定的速度。
用于探测环境的传感器的另一个示例是照相机。利用照相机例如可以借助于边缘检测来识别环境的特征性的特征。如果这些特征的距离至少部分地是已知的,那么通过在照相机的两个连续的照片中这些特征的位置的变化可以确定机器人的位置的变化并因此确定机器人的至少一个速度分量。例如,照相机被指向地板并且在那里识别出一个瓷砖地板。在这种情况下,在瓷砖之间的接缝是可识别的并且它们的距离例如是已知的,或者机器人可以在“正常运行”中(当在瓷砖地板上行驶时)确定这些。
照相机也可以用于进行直接的位置确定,其方式是在照片中借助于图像和物体的识别来识别环境的特征,这些环境的特征可以被明确地分配给特定的位置。因此,照相机例如可以被指向地板并且在那里识别出瓷砖地板。如果这种类型的瓷砖地板只能在一个房间中找到,那么机器人100可以识别出它处在所涉及的房间中。由从瓷砖地板到另一种地板覆盖物的过渡,可以推断出,例如通过门离开所述房间。由照相机的视角和机器人100在房间中的取向,可以确定机器人的位置。机器人100在房间中的取向例如可以借助于IMU来确定,其方式是测量机器人100相对于地球的引力场和相对于地球的磁场的角度位置。
要确定的重要信息是,是否机器人被在其当的前机器人使用区域内换位、或者被换位到另一个已知的机器人使用区域(对于该机器人使用区域存储了地图),或者被换位到一个新的机器人使用区域(对于该机器人使用区域还没有地图存在)。为此目的,例如确定,是否在换位之前和之后的(地理)高度是相同的或者已经被改变。例如可以借助于惯性导航确定,机器人在换位过程中被抬起约3米并且因此位于另一个楼层中。在两个机器人使用区域之间的高度差可以例如由使用者输入、基于在使用国家中的标准进行估计,或者通过机器人在一次或多次换位之后自动地学习。例如可以对特定的机器人使用区域的地图分配地理高度,其中,高于正常高度零的绝对高度是无关紧要的并且仅仅考虑在不同的机器人使用区域之间的高度差(例如机器人使用区域Fl,地图10,高度0米,机器人使用区域F2,地图20,高度3米)。因此,在一个具有三层楼的独户住宅中,例如可以通过高度测量来明确地识别机器人使用区域。
(地理)高度的变化例如也可以通过用于测量空气压力的传感器来确定。特别地,在换位期间连续的空气压力测量和由此导出的高度变化可以用于修正和提高惯性导航的测量的精确度。借助于空气压力对(地理)高度的测量的精确度例如可以受到天气波动的干扰。为了对此进行补偿并获得绝对高度测量,可以将在机器人上测量的空气压力与固定的测量站的测量进行比较。在两个测量值之间的差异对于任何机器人使用区域来说是与当前的天气形势无关的,这允许与机器人使用区域的精确的分配。固定的测量站例如是在智能家庭中的气象站,该气象站经由通信链路(例如WLAN(无线局域网络))与机器人相连接。
在测量高度变化的范围内,机器人也可以检测到它已经被放置在一个高于机器人使用区域的高度的临界高度上,例如,机器人例如“仅仅”被抬起到桌子和工作台面的大约为80-120厘米的典型高度。通过这种方式,机器人例如可以检测到它现在位于桌子上并且例如向使用者发送警告和/或非常小心地(例如缓慢地)行驶。
在动态环境中的自定位-在典型的家庭中,与机器人相关的环境例如由于人类使用者使用房间而可以不断地变化。使用者可以例如将鞋子留在走廊上、将手提包或行李箱放在地板上、将门打开和关闭或者将家具(例如椅子)移动。如果在当前识别到的环境与永久存储的地图之间的差异变得太大,那么这些变化可以给机器人的可靠的自定位造成困难。小的可移动的物体例如处在周围的鞋子、放置在墙壁上的手提袋或者被移动的椅子例如可以在执行自定位时不加考虑。但是,如果在环境中的变化较大,例如被支承在滚轮上的并且因此可容易地移动的箱子(滚动容器)或者被封闭的门,由此整个房间不再是可到达的,那么基于度量或概率模型的自定位可能会失败。为了提高自定位的可靠性,根据在下面描述的实施例,可以分析并且如下地评估在当前检测到的机器人的环境与机器人应在其中定位的永久存储的地图之间的差异,是否该差异是由可运动的物体造成的。
应该注意的是,以下的示例是被大大简化的并且仅仅用于说明基本原理。特别地,在自定位成功之前,机器人100不必探察整个环境,而只需要探察整个环境的一部分区域。在图4中示出的示例中(机器人使用区域F1,地图10),由于关闭的门D形式的可运动的障碍物,房间12是不可进入的。由于不可进入的房间12,实际的机器人环境与永久存储的地图10之间有差异,由此可能导致自定位失败。但是,如果使用没有不可进入的房间12的地图10',则自定位可以是成功地进行。为此目的,例如基于在永久存储的地图10中记录的门和/或房间边界的位置,计算在关闭的门D的情况下可实现的修改的地图10'。这可以通过关闭的门的不同的变型方案来完成,并且通过这些如此计算的修改的地图,可以检查,是否在这些地图中的自定位是成功的。在永久存储的地图10中记录的门和/或房间边界的位置可以在创建地图时被自动地确定和/或通过使用者来输入。
备选地,通过照相机和图像识别,可以将关闭的门D识别为门并且在为了自定位所提供的永久存储的地图中检查,是否有和在何处有门通道并且基于该信息来执行自定位。
图5示出了具有可运动的障碍物H的示例,该可运动的障碍物呈可移动的家具的形式,例如支承在滚轮上的箱子。该箱子是如此地与众不同,以至于它被用于在该环境中的导航和定向。通过移动障碍物H,可能导致自定位失败,因为从机器人的角度来看,在地图30中原始地记录的障碍物H没有了并且取而代之地在先前空置的位置处检测到新的障碍物H'(参见地图30')。但是,通过分析在永久存储的地图30与机器人的被检测的环境30'之间的差异,可以识别出,障碍物H'是被移动了的障碍物H。因此,可以例如形成在永久存储的地图30和被识别的环境30'之间的差异地图30-30',从而仅仅留下原始存储的障碍物H和在被识别的环境中被移动了的障碍物H'。两者仅仅在它们的位置和定向上有差异,但是在形状和大小上没有差异。基于这一事实,机器人可以检测出这是一个(唯一的、被移动了的)障碍物。为了再次识别出该障碍物,还可以利用障碍物H的其它的特性,机器人100可以通过它的传感器模块130感知这些其它的特性。例如,通过照相机可以记录诸如障碍物H的颜色之类的图像信息并且将其用于再次识别。
在永久存储的地图30中,被识别为可运动的障碍物H可以被标记为“可运动的”并且在将来的自定位中被忽视或被以受限制的方式使用。被以受限制的方式使用例如意味着,可运动的障碍物H的缺失不会导致对可能的(估计的)机器人位置的评估的变差。如果在机器人使用区域中的另一个位置处检测到可运动的障碍物H'(即,具有相同形状和/或尺寸或其它的可由机器人检测的特征的障碍物),则这可以导致对可能的机器人的位置的评估的额外的改进并且因此导致可靠的自定位。此外也可能的是,使用者在地图创建期间或之后将障碍物标记为是可运动的。另一种可能性是,机器人借助于照相机拍摄障碍物、将该照片与图像数据库进行比较并且由此将其识别为是可运动的障碍物。
处理相似的地图-通常,地图构建的机器人使用区域在至少一些区域中是相似的。例如,在房屋的不同的楼层F1、F2中的走廊以及部分地房间划分(平面布置图)是非常相似的(参见图2和图3)。因此,对于具有其有限的传感器的机器人100来说,仅仅在一些位置上可以进行明确的区分。图6例如示出了房屋的两个楼层F1、F2的地图10、20,在该地图中走廊11、21和房间12、22各自是非常相似的并且依据示出的平面布置图仅仅可以在房间13、23以及14、24上进行区分。
另一个示例是例如在宾馆(或医院或居住区等等)的走廊中使用机器人,其中许多相邻的房间具有相同的大小和布置。在这种情况下,在一个地图内将存在多个非常相似的区域。如果机器人被换位到其中的一个房间中,那么该机器人就不能够在不离开该房间的情况下明确地确定自己的位置。但是,机器人的目的是尽可能快地开始它的工作,例如清洁宾馆房间。为此目的,机器人不应该只是先离开该房间。为了改善自定位,根据在下面描述的实施例,可以针对不能够实现明确的自定位的相似区域来分析永久存储的地图并且可以将结果与永久存储的地图10、20相关联地进行存储。这种分析不必持续地重复进行,而是例如仅仅在创建新的永久存储的地图时或在现有的永久存储的地图中通过使用者和/或自动地进行修改时才进行。该分析可以在机器人上进行计算,例如在对蓄电池充电或类似情况期间的非工作时间中。备选地,该分析也可以在使用者的家中的外部计算机上或在因特网上进行。
为了分析永久存储的地图10、20,可以使用例如来自模式识别的很多的方法。一种可能性是使用自定位的算法,用以检查地图和地图的一些部分的相似性。特别地,可以使用房间的划分来检查包含在永久存储的地图中的各单个房间11,...,14、21,...,24的相似性。
备选地,可以借助于蒙特卡罗模拟(Monte-Carlo Simulation)来检查永久存储的地图的、不能够实现明确的自定位的相似区域。为此目的,模拟当机器人在地图(例如地图10)中被放置在随机的位置时机器人的自定位是如何运行的。通过大量的重复可以由此确定这样的区域,在这些区域中机器人快速并且准确地确定它的位置,并且在这些区域中由于存在的相似性而具有问题。
例如可以将关于相似的区域的信息直接地存储在永久存储的地图中。备选地,可以生成包括所述相似的区域的一个(或多个)新的部分地图10/20。机器人例如可以使用这些部分地图10/20来完成任务。这一点在下面借助于具有多个相似的宾馆房间的宾馆走廊的示例简要地进行说明。
使用者例如将机器人搬到要清洁的宾馆房间中、将它在那里放下并且向它分派任务“清洁房间并且行驶到基站”。机器人以自定位开始它的活动,在该自定位期间确定,机器人位于多个相似的宾馆房间之一中。接着,加载属于这些房间的部分地图并且机器人在此基础上开始它的活动。在清洁结束之后,机器人从刚刚被清洁的宾馆房间中行驶出来(如果可能的话)并且继续进行自定位。由此确定它在含有多个相似的宾馆房间的永久存储的地图中的位置。因此可以确定,哪个宾馆房间已经被清洁了。例如可以将相应的信息发送给宾馆管理部门。此外,基于永久存储的地图例如可以确定,基站位于何处以及机器人如何到达该基站,以完成它的工作指令。特别是在宾馆房间的情况下,机器人可以通过照相机和适合的图像识别软件例如借助于通过房间号码为宾馆客人所注意的房间标记来确定它的位置。这些房间号码可以用作地标和/或作为(任何代表这些房间的地图区域的或者这些房间的入口区域的)属性被存储在相关的机器人使用区域的地图中。
对于在图6中所示的示例可以以相同的方式进行。上面提到的对地图10和20在相似性方面的分析产生了例如部分地图10/20,该部分地图例如可以包含房间11/21和12/22。因此,机器人100例如可以由使用者放置在走廊11中并且被分派任务“清洁”。在机器人尝试自定位期间确定,机器人位于地图10的房间11或地图20的房间21中。然后可以加载部分地图10/20,该部分地图将房间11和21表示为房间11/21并且以清洁走廊开始。在完成走廊的清洁之后,机器人可以运动到下一个房间(例如房间24),以便在那里继续它的活动。在这个房间中,自定位将如下地继续进行,其中检查,机器人位于这两个所涉及的地图10、20中的哪个地图中(在房间24的示例中将是地图20)。
对于使用者来说,存在这样的可能性,即将单个的区域和/或整个房间从通过机器人进行的自动行驶和/或工作指令的执行中排除出去(“禁止进入区域”)。例如,房间22可以是儿童房间,并且使用者不希望机器人进行自动清洁,因为在这里通常在周围散乱地放着诸如玩具之类的小部件。在这种情况下会产生这样的问题,即在具有房间12和22的地图10和20中具有相似的区域,但是该区域应该以不同的方式进行处理。根据在这里描述的实施例,可以将这个用于处理部分区域的信息(例如针对房间22的“禁止进入”的信息),该信息已经连同永久存储的地图10和20一起被存储,与一种优先权相关联并且在借助于部分地图工作期间对其相应地进行考虑。在这种情况下,用于避免通过机器人造成的损坏的信息(例如“禁止进入区域”)获得更高的优先权。在前面的示例中,机器人不会在被记录在地图中的房间12/22中行驶并且为此将信息“禁止进入区域”收入到部分地图10/20中。只有在已经明确地确定机器人处于地图10中之后才开始自动地清洁现在被识别为房间12的房间。
如果已经确定,在永久存储的地图中存在相似的区域,这些相似的区域使可靠的自定位变得困难,那么也可以检查,在哪些区域中存在明显的差异。在需要的情况下,机器人可以有针对性地驶近这些区域,以获得快速的、明确的并且可靠的自定位。例如,在图6中示出的地图10和20中,由于大小差异,在房间13、23和14、24中的明确的定位是可以实现的。这一点在部分地图10/20中已经通过标记DA注明。

Claims (60)

1.一种用于控制自主移动机器人的方法,所述方法具有以下步骤:
存储和管理至少一个地图,所述至少一个地图对应于至少一个机器人使用区域,
接收通过所述机器人来执行任务的指令,其中所述任务属于第一组任务或第二组任务,
导航所述机器人通过所述机器人使用区域以执行所述任务,
其中,来自第一组中的任务与基于地图的信息相关联,并且其中,在执行所述任务时借助于所述基于地图的信息所涉及的、被存储的地图导航所述机器人,以及
其中,来自第二组中的任务不与基于地图的信息相关联。
2.根据权利要求1所述的方法,其中,所述机器人在执行来自所述第二组中的任务时为了导航在执行所述任务之前和/或期间创建新的地图。
3.根据权利要求1或2所述的方法,其中,在来自所述第二组的任务的情况下,所述机器人在执行所述任务之前和/或期间检查所述机器人是否处于已地图构建的机器人使用区域中,并且如果是,则使用对应于这个机器人使用区域的地图来导航。
4.根据权利要求1至3中任一项所述的方法,其中,所述机器人在执行来自所述第一组中的任务时仅仅在地图中标记为可行驶的区域上行驶并且在执行来自所述第二组中的任务时在所有对所述机器人来说都可到达的区域上行驶。
5.根据权利要求1至4中任一项所述的方法,其中,所述基于地图的信息表示:
多个地图中的特定的地图或者
特定的地图的一个或多个区域或者
在特定的地图中的具体的位置。
6.一种用于控制自主移动机器人(100)的方法,所述方法包括:
存储和管理对应于机器人使用区域(F1、F2)的至少一个地图(10、20);
导航所述机器人(100)通过所述机器人使用区域(F1、F2),其中,连续地确定所述机器人在所述地图(10、20)中的位置,
检测换位过程,在此换位过程期间所述机器人(100)执行它本身不能控制的运动,
其中,在所述换位过程期间,所述机器人(100)借助于传感器检测关于其位置和/或其运动状态的信息并且基于检测到的信息确定用于其位置的估计值。
7.根据权利要求6所述的方法,其中,通过所述机器人(100)识别所述机器人(100)的抬起和/或放下来检测所述换位过程的开始和结束。
8.根据权利要求7所述的方法,其中,借助于轮子接触开关、用于测量到地板的距离的传感器、用于检测地板的传感器和/或加速度传感器来检测所述机器人(100)的抬起和/或放下。
9.根据权利要求6至8中任一项所述的方法,其中,所述机器人基于在所述换位过程期间检测到的关于其位置和/或其运动状态的信息来确定在所述换位过程结束时用于其位置的估计值。
10.根据权利要求9所述的方法,所述方法还包括:
在考虑在所述换位过程结束时用于所述机器人的位置的估计值的情况下,在所存储的地图中执行全局自定位。
11.根据权利要求6至10中任一项所述的方法,其中,所述确定用于所述机器人的位置的估计值包括计算概率分布,所述概率分布描述所述机器人在所述至少一个地图中处在特定的位置上的概率。
12.根据权利要求6至11中任一项所述的方法,其中,在所述换位过程期间所检测的关于所述机器人的位置和/或运动状态的信息包括关于所述机器人的加速度和/或角速度和/或方向的信息。
13.根据权利要求12所述的方法,其中,基于检测的信息,估计所述机器人在所述换位过程期间运动所沿着的轨迹。
14.根据权利要求12或13所述的方法,其中,为了确定所述机器人的方向,使用地心引力的方向和地球磁场的方向。
15.根据权利要求6至14中任一项所述的方法,其中,借助于惯性导航来确定用于所述机器人的位置的估计值。
16.根据权利要求6至15中任一项所述的方法,其中,所述机器人基于在所述换位过程期间检测到的信息检测是否所述机器人在所述换位过程期间已经从所述先前的机器使用区域中运动出去。
17.根据权利要求16所述的方法,其中,如果所述机器人已经从先前的机器人使用区域中运动出去,那么所述机器人基于在换位过程结束时的所估计的位置检测是否估计的位置位于一为其存储了地图的机器人使用区域中,并且,如果是的话,那么这个估计的位置位于哪个地图中。
18.根据权利要求6至17中任一项所述的方法,其中,在所述换位过程期间所检测的所述信息包括至少一个速度分量,所述至少一个速度分量借助于一个或多个传感器来确定,所述一个或多个传感器也被用于导航所述机器人。
19.根据权利要求18所述的方法,其中,也用于导航所述机器人的所述一个或多个传感器包括距离传感器,借助于所述距离传感器测量到在所述环境中的障碍物的距离,其中,基于所测量的距离的变化来确定所述至少一个速度分量。
20.根据权利要求19所述的方法,其中,也用于导航所述机器人的所述一个或多个传感器包括照相机,其中,基于由所述照相机测量的图像信息的变化来确定所述至少一个速度分量。
21.根据权利要求6至19中任一项所述的方法,其中,在所述换位过程期间借助于照相机获取图像信息并且基于这些图像信息来确定用于所述机器人的位置的估计值。
22.根据权利要求21所述的方法,其中,所述获取的图像信息是房间号码,所述房间号码表明所述机器人使用区域(F1、F2)的具体房间并且作为对应于所述房间的地图区域的属性被存储在所属的地图(10、20)中,
并且其中,基于所述房间号码来确定用于所述机器人的位置的估计值。
23.根据权利要求21或22所述的方法,其中,基于所述图像信息,执行在所述环境中的物体的物体识别,并且
其中,在检测到的物体的情况下基于它的位置确定用于所述机器人位置的估计值。
24.一种用于控制自主移动机器人(100)的方法,所述方法包括:
存储和管理对应于两个或更多个机器人使用区域(F1、F2)的地图(10、20),其中,所述机器人使用区域具有不同的地理高度;
导航所述机器人(F1)通过所述机器人使用区域(F1、F2),其中,连续地确定所述机器人在所述地图(10、20)中的位置,
测量空气压力以及评估所测量的空气压力,
并且基于在空气压力中的变化,确定所述机器人已经离开其当前的机器人使用区域。
25.根据权利要求24所述的方法,所述方法还具有:
检测换位过程,在所述换位过程期间所述机器人(100)执行它本身不能够控制的运动,
其中,在所述换位过程期间和之后对空气压力进行评估。
26.根据权利要求25所述的方法,其中,所述空气压力的评估包括:基于由所述机器人测量的空气压力和由固定的参考传感器测量的空气压力来确定空气压力变化。
27.根据权利要求26所述的方法,其中,所述空气压力的评估包括:基于所确定的空气压力变化,确定所述机器人在换位时是否已经被带到超过机器人使用区域的高度的临界高度。
28.一种用于控制自主移动机器人(100)的方法,所述方法包括:
存储和管理对应于两个或更多个机器人使用区域(F1、F2)的地图(10、20),其中,所述机器人使用区域具有不同的地理高度;
测量空气压力以及评估所测量的空气压力,并且
根据所测量的空气压力选择用于导航所述机器人的机器人使用区域的地图。
29.一种用于自主移动机器人的控制单元,所述控制单元包括以下部分:
至少一个处理器和至少一个具有指令的存储器,当所述指令在所述处理器上执行时,所述指令促使所述机器人执行根据权利要求1至28中任一项所述的方法。
30.一种用于控制自主移动机器人(100)的方法,所述方法包括:
持久地存储和管理对应于机器人使用区域(F1、F2)的至少一个地图(10、20);
接收通过机器人在存储的地图存在的机器人使用区域中执行任务的指令;
确定用于执行所述任务所需要的地图并且确定所述机器人在确定的地图中的位置;
创建所述确定的地图的新的工作副本,
在执行所述任务时使用所述工作副本用于所述机器人通过所述机器人使用区域的导航;
其中,所述导航包括借助于传感器收集关于环境和所述机器人的运动状态的信息、基于所收集的信息连续地确定所述机器人的位置以及在识别出所述环境的变化时更新所述地图的工作副本,
并且其中,所述永久存储的地图保持不变。
31.根据权利要求30所述的方法,其中,所述至少一个永久存储的地图由所述机器人本身在学习行驶中和/或在执行第一个任务时确定和/或
其中,所述至少一个永久存储的地图由使用者和/或另一个机器人提供给所述机器人。
32.根据权利要求30或31所述的方法,其中,所述至少一个永久存储的地图包含关于所述机器人的环境的信息,并且其中,
关于所述机器人的环境的信息代表借助于SLAM已经确定的状态。
33.根据权利要求30至32中任一项所述的方法,其中,所述永久存储的地图包含基于使用者输入的信息。
34.根据权利要求30至33中任一项所述的方法,其中,在创建新的工作副本之前删除地图的旧的工作副本。
35.根据权利要求30至34中任一项所述的方法,其中,确定用于执行所述任务所需要的地图通过以下方式完成:与在其中应执行所述任务的机器人使用区域相关联的地图由所述使用者来预先给定。
36.根据权利要求30至34中任一项所述的方法,其中,确定用于执行所述任务所需要的地图和确定所述机器人在被确定的地图中的位置通过以下方式完成:所述机器人在所述永久存储的地图的至少一个中执行全局自定位。
37.根据权利要求36所述的方法,其中,如果所述全局自定位失败,则通知所述使用者和/或不执行所述任务。
38.根据权利要求36或37所述的方法,其中,在所述地图中存储优选的起始位置,所述优选的起始位置用于加速全局自定位。
39.根据权利要求36至38中任一项所述的方法,其中,在成功的全局自定位之后,检查所述地图的工作副本与永久存储的地图的一致性并且如果有偏差,则确定先前执行的全局自定位是错误的。
40.根据权利要求39所述的方法,其中,在确定错误的自定位的情况下,所述机器人停止其工作并且行驶返回到起始点,和/或
在确定错误的自定位的情况下,所述机器人将此情况通知所述使用者并且请求进一步的指示,和/或
其中,在确定错误的自定位的情况下,所述机器人执行新的全局自定位,其中,先前执行的全局自定位被考虑。
41.根据权利要求30至40中任一项所述的方法,其中,所述机器人在任务的执行结束之后将在执行任务期间更新的工作副本与原始永久存储的地图进行比较。
42.根据权利要求41所述的方法,其中,评估在比较中识别出的在工作副本和所述永久存储的地图之间的差异,并且根据所述评估:
或者忽视和删除或者永久存储所述差异,或者
基于所述工作副本更新所述永久存储的地图的至少一部分。
43.根据权利要求41或42所述的方法,其中,除了永久存储的地图之外,还永久地存储关于所述工作副本的至少一部分的数据以供以后使用,并且
其中,在评估在未来创建的工作副本和永久存储的地图之间的差异时考虑这些附加存储的数据。
44.根据权利要求30至43中任一项所述的方法,其中,所述机器人在创建所述永久存储的地图的工作副本之前检查是否所述机器人位于对应于所述永久存储的地图的机器人使用区域中是可信的。
45.根据权利要求44所述的方法,其中,在可信性检查中检查是否所述机器人在先前的使用期间已经位于所述机器人使用区域中并且从那时以来没有检测到换位。
46.根据权利要求30至45中任一项所述的方法,其中,如果已经存在所述机器人使用区域的地图的工作副本,则检查是否所述已经存在的工作副本被删除并且新的工作副本被创建或者是否已存在的工作副本被保留并且在执行所述任务时被使用。
47.根据权利要求46所述的方法,其中,如果不能够在旧的工作副本内完全地执行所述任务,则创建新的工作副本。
48.根据权利要求47所述的方法,其中,如果所述任务包括整个机器人使用区域,则创建新的工作副本。
49.根据权利要求46至48中任一项所述的方法,其中,如果能够完全地在已经存在的工作副本内执行所述任务,则使用已经存在的工作副本。
50.根据权利要求46至49中任一项所述的方法,其中,如果自创建和/或最后使用所述已经存在的工作副本起已经过去了可预先确定的最大提前时间,则创建新的工作副本。
51.根据权利要求30至50中任一项所述的方法,其中,创建确定的永久存储的地图的工作副本包括:
复制用于导航所述机器人所需要的关于在所述机器人使用区域中的环境的信息。
52.根据权利要求51所述的方法,其中,所述用于导航所述机器人所需要的关于在所述机器人使用区域中的环境的信息至少是借助于SLAM确定的信息。
53.一种用于在至少一个机器人使用区域的至少一个永久存储的地图中自定位自主移动机器人的方法,其中,所述机器人确定是否它位于所述至少一个地图中和/或它位于所述至少一个地图中的何处;所述方法包括:
确定在所述至少一个永久存储的地图和由所述机器人确定的相关的机器人使用区域的实际环境之间的差异;
评估所述差异,以便确定是否所述差异是由可运动的物体引起的;
基于所述评估,放弃所述自定位或者确定所述机器人在所述至少一个永久存储的地图中的位置。
54.根据权利要求53所述的方法,其中,所述可运动的物体是门,并且在所述永久存储的地图和由所述机器人确定的实际环境之间的差异在于,所述门是关闭的并且位于所述门后面的房间是不可到达的。
55.根据权利要求53或54所述的方法,其中,所述可运动的物体是房间的家具物品并且在所述永久存储的地图和由所述机器人确定的实际环境之间的差异在于,所述家具物品相对于它的地图构建的位置被移动和/或被旋转,或者所述家具物品不再位于所述使用区域中或者重新位于所述使用区域中。
56.根据权利要求53至55中任一项所述的方法,其中,如果所述评估表明,不能明确是否所确定的差异是由可运动的物体引起的或者是否所述机器人位于未对应于所述地图的机器人使用区域中,则对使用者进行询问。
57.一种用于在至少一个机器人使用区域的至少一个永久存储的地图中自定位自主移动机器人的方法,其中,所述机器人确定是否它位于所述至少一个地图中和/或它位于所述至少一个地图中的何处;所述方法包括:
确定在一个或多个地图内的相似和/或相同的区域,
确定所述机器人位于这样的相似的区域中,
等待最终确定所述机器人位于哪个地图中在哪个位置上,直到所述机器人识别出明确的区别特征,
其中,一旦所述机器人已经确定它在所述相似的区域内的位置,所述机器人就开始执行分派给它的任务。
58.根据权利要求57所述的方法,其中,所述机器人借助于所述至少一个地图基于区别特征分析所述相同和/或相似的区域并且尝试检测这些区域,以便最终确定所述机器人位于哪个地图中在哪个位置上。
59.根据权利要求58所述的方法,其特征在于,其中,在具有在所述相同和/或相似的区域的至少一个区域中记录的、所述机器人不应在其中行驶的限制区域的情况下,所述限制区域被考虑,直到所述机器人已经最终确定所述机器人位于哪个地图中在哪个位置上。
60.一种用于自主移动机器人的控制单元,所述控制单元具有以下部分:
至少一个处理器和至少一个具有指令的存储器,当所述指令在所述处理器上执行时,所述指令促使所述机器人执行根据权利要求30至59中任一项所述的方法。
CN201780061402.4A 2016-08-05 2017-08-04 用于控制自主移动机器人的方法 Pending CN109804325A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
DE102016114593.9 2016-08-05
DE102016114594.7 2016-08-05
DE102016114593.9A DE102016114593A1 (de) 2016-08-05 2016-08-05 Verfahren zur Steuerung eines autonomen mobilen Roboters
DE102016114594.7A DE102016114594A1 (de) 2016-08-05 2016-08-05 Verfahren zur Steuerung eines autonomen mobilen Roboters
PCT/EP2017/069827 WO2018024897A1 (de) 2016-08-05 2017-08-04 Verfahren zur steuerung eines autonomen mobilen roboters

Publications (1)

Publication Number Publication Date
CN109804325A true CN109804325A (zh) 2019-05-24

Family

ID=59702669

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780061402.4A Pending CN109804325A (zh) 2016-08-05 2017-08-04 用于控制自主移动机器人的方法

Country Status (5)

Country Link
US (1) US20210096579A1 (zh)
EP (1) EP3494446B1 (zh)
JP (1) JP7073336B2 (zh)
CN (1) CN109804325A (zh)
WO (1) WO2018024897A1 (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110347161A (zh) * 2019-07-22 2019-10-18 浙江大华机器人技术有限公司 自动导引运输车的调度方法及装置
CN110376934A (zh) * 2019-06-12 2019-10-25 深圳飞科机器人有限公司 清洁机器人、清洁机器人控制方法及终端控制方法
CN110840335A (zh) * 2019-11-07 2020-02-28 深圳市银星智能科技股份有限公司 机器人位置状态检测方法及其机器人
CN111158374A (zh) * 2020-01-10 2020-05-15 惠州拓邦电气技术有限公司 重定位方法、系统、移动机器人及存储介质
CN112087573A (zh) * 2019-06-12 2020-12-15 戴森技术有限公司 环境的绘制
CN113143114A (zh) * 2021-03-10 2021-07-23 深圳市杉川机器人有限公司 扫地机及其清扫区域的命名方法,计算机可读存储介质
CN113664840A (zh) * 2020-05-15 2021-11-19 Uvd机器人设备公司 一种机器人装置
CN114035579A (zh) * 2021-11-11 2022-02-11 上海景吾智能科技有限公司 清扫机器人地图加载和切换方法及系统
CN114180428A (zh) * 2021-11-29 2022-03-15 北京云迹科技有限公司 一种机器人恢复任务的方法及装置
CN114413901A (zh) * 2020-10-28 2022-04-29 光宝电子(广州)有限公司 楼层定位与地图构建系统及其方法
CN114993304A (zh) * 2022-06-29 2022-09-02 北京石头创新科技有限公司 一种机器人位置的确定方法、装置、介质和电子设备
CN115336936A (zh) * 2021-05-12 2022-11-15 尚科宁家(中国)科技有限公司 一种清洁机器人跨楼层的控制方法和清洁机器人
CN117387649A (zh) * 2023-10-26 2024-01-12 苏州大学 概率自更新的不确定环境机器人自适应导航方法及系统
EP4194987A4 (en) * 2020-08-06 2024-02-21 OMRON Corporation SYSTEM AND PROGRAM FOR ENVIRONMENTAL CHANGE SUGGESTIONS

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446350B (zh) * 2014-09-26 2018-05-29 科沃斯机器人股份有限公司 自移动机器人移动界限划定方法
WO2019068222A1 (en) * 2017-10-06 2019-04-11 Qualcomm Incorporated SIMULTANEOUS RELOCATION AND RESETTING OF VSLAM
JP7336682B2 (ja) * 2017-12-14 2023-09-01 パナソニックIpマネジメント株式会社 掃除機システム、および表示装置
US10575699B2 (en) * 2018-01-05 2020-03-03 Irobot Corporation System for spot cleaning by a mobile robot
JP7063066B2 (ja) * 2018-03-30 2022-05-09 トヨタ自動車株式会社 経路計画装置、経路計画方法及びプログラム
JP7025990B2 (ja) * 2018-05-14 2022-02-25 日立グローバルライフソリューションズ株式会社 移動体、および、移動体の地図共有方法
CN116509280A (zh) * 2018-07-19 2023-08-01 科沃斯机器人股份有限公司 机器人控制方法、机器人及存储介质
CN110836668A (zh) * 2018-08-16 2020-02-25 科沃斯商用机器人有限公司 定位导航方法、装置、机器人及存储介质
US10835096B2 (en) * 2018-08-30 2020-11-17 Irobot Corporation Map based training and interface for mobile robots
DE102018121365A1 (de) * 2018-08-31 2020-04-23 RobArt GmbH Exploration eines robotereinsatzgebietes durch einen autonomen mobilen roboter
CN109945871B (zh) * 2019-03-15 2021-03-02 中山大学 一种通信带宽与距离受限情况下的多无人平台同步定位与地图构建方法
CN112493924B (zh) 2019-08-26 2023-03-10 苏州宝时得电动工具有限公司 清洁机器人及其控制方法
EP4024154A4 (en) * 2019-08-27 2022-10-19 Sony Group Corporation INFORMATION PROCESSING DEVICE, CONTROL METHOD, AND PROGRAM
US12072714B2 (en) * 2020-01-09 2024-08-27 Brain Corporation Systems and methods for detection of features within data collected by a plurality of robots by a centralized server
US20230350422A1 (en) 2020-06-16 2023-11-02 Sony Group Corporation Information processing apparatus, information processing method, and information processing program
JP7574568B2 (ja) * 2020-08-17 2024-10-29 村田機械株式会社 自律走行経路計画方法
JP7558718B2 (ja) 2020-08-25 2024-10-01 日本信号株式会社 床掃除機
CN112214018B (zh) * 2020-09-10 2024-08-20 深圳优地科技有限公司 机器人路径规划方法及装置
WO2022186598A1 (ko) * 2021-03-05 2022-09-09 삼성전자주식회사 로봇 청소기 및 이의 제어 방법
CN115209032B (zh) * 2021-04-09 2024-04-16 美智纵横科技有限责任公司 基于清洁机器人的图像采集方法、装置、电子设备及介质
CN115507836B (zh) * 2021-06-23 2024-02-02 同方威视技术股份有限公司 用于确定机器人位置的方法以及机器人
CN114018268B (zh) * 2021-11-05 2024-06-28 上海景吾智能科技有限公司 室内移动机器人导航方法
CN114359692A (zh) * 2021-12-09 2022-04-15 深圳市优必选科技股份有限公司 房间识别方法、装置、电子设备及存储介质
CN115633302A (zh) * 2022-09-28 2023-01-20 珠海格力电器股份有限公司 设备部署方法、装置、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101920498A (zh) * 2009-06-16 2010-12-22 泰怡凯电器(苏州)有限公司 实现室内服务机器人同时定位和地图创建的装置及机器人
CN102866706A (zh) * 2012-09-13 2013-01-09 深圳市银星智能科技股份有限公司 一种采用智能手机导航的清扫机器人及其导航清扫方法
US20130206177A1 (en) * 2012-02-09 2013-08-15 Samsung Electronics Co., Ltd Apparatus and method for controlling cleaning in robotic cleaner
CN103885444A (zh) * 2012-12-21 2014-06-25 联想(北京)有限公司 信息处理方法、可移动电子设备和决策控制设备
CN104115082A (zh) * 2012-02-08 2014-10-22 罗伯特有限责任公司 自动启动自定位过程的方法
CN105593775A (zh) * 2013-08-06 2016-05-18 阿尔弗雷德·凯驰两合公司 用于运行地板清洁机的方法以及地板清洁机

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6667592B2 (en) * 2001-08-13 2003-12-23 Intellibot, L.L.C. Mapped robot system
JP5793851B2 (ja) 2010-11-08 2015-10-14 富士通株式会社 位置推定方法、位置推定装置及びプログラム
KR101566207B1 (ko) * 2011-06-28 2015-11-13 삼성전자 주식회사 로봇 청소기 및 그 제어방법
TW201305761A (zh) * 2011-07-21 2013-02-01 Ememe Robot Co Ltd 自走機器人及其定位方法
KR101910382B1 (ko) * 2011-12-08 2018-10-22 엘지전자 주식회사 자동 이동 장치 및 그 수동 조작 방법
DE102012109004A1 (de) * 2012-09-24 2014-03-27 RobArt GmbH Roboter und Verfahren zur autonomen Inspektion oder Bearbeitung von Bodenflächen
KR102082757B1 (ko) * 2013-07-11 2020-02-28 삼성전자주식회사 청소 로봇 및 그 제어 방법
KR102158695B1 (ko) 2014-02-12 2020-10-23 엘지전자 주식회사 로봇 청소기 및 이의 제어방법
KR20150104311A (ko) * 2014-03-05 2015-09-15 엘지전자 주식회사 로봇 청소기 및 그의 제어방법
DE102014110265A1 (de) * 2014-07-22 2016-01-28 Vorwerk & Co. Interholding Gmbh Verfahren zur Reinigung oder Bearbeitung eines Raumes mittels eines selbsttätig verfahrbaren Gerätes
US10488865B2 (en) * 2014-12-16 2019-11-26 Al Incorporated Methods and systems for robotic surface coverage

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101920498A (zh) * 2009-06-16 2010-12-22 泰怡凯电器(苏州)有限公司 实现室内服务机器人同时定位和地图创建的装置及机器人
CN104115082A (zh) * 2012-02-08 2014-10-22 罗伯特有限责任公司 自动启动自定位过程的方法
US20160008982A1 (en) * 2012-02-08 2016-01-14 RobArt GmbH Method for automatically triggering a self-positioning process
US20130206177A1 (en) * 2012-02-09 2013-08-15 Samsung Electronics Co., Ltd Apparatus and method for controlling cleaning in robotic cleaner
CN102866706A (zh) * 2012-09-13 2013-01-09 深圳市银星智能科技股份有限公司 一种采用智能手机导航的清扫机器人及其导航清扫方法
CN103885444A (zh) * 2012-12-21 2014-06-25 联想(北京)有限公司 信息处理方法、可移动电子设备和决策控制设备
CN105593775A (zh) * 2013-08-06 2016-05-18 阿尔弗雷德·凯驰两合公司 用于运行地板清洁机的方法以及地板清洁机

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MIN CHIE CHIU,ET AL.: "Positioning and path planning for a swarm robotic cleaner", 《ADVANCED MATERIALS RESEARCH》 *
王东署 等: "未知环境中移动机器人的环境探索与地图构建", 《郑州大学学报》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110376934A (zh) * 2019-06-12 2019-10-25 深圳飞科机器人有限公司 清洁机器人、清洁机器人控制方法及终端控制方法
CN112087573A (zh) * 2019-06-12 2020-12-15 戴森技术有限公司 环境的绘制
CN110376934B (zh) * 2019-06-12 2024-08-23 上海飞科电器股份有限公司 清洁机器人、清洁机器人控制方法及终端控制方法
CN110347161A (zh) * 2019-07-22 2019-10-18 浙江大华机器人技术有限公司 自动导引运输车的调度方法及装置
CN110840335A (zh) * 2019-11-07 2020-02-28 深圳市银星智能科技股份有限公司 机器人位置状态检测方法及其机器人
CN110840335B (zh) * 2019-11-07 2021-09-10 深圳市银星智能科技股份有限公司 机器人位置状态检测方法及其机器人
CN111158374A (zh) * 2020-01-10 2020-05-15 惠州拓邦电气技术有限公司 重定位方法、系统、移动机器人及存储介质
CN113664840A (zh) * 2020-05-15 2021-11-19 Uvd机器人设备公司 一种机器人装置
EP4194987A4 (en) * 2020-08-06 2024-02-21 OMRON Corporation SYSTEM AND PROGRAM FOR ENVIRONMENTAL CHANGE SUGGESTIONS
CN114413901A (zh) * 2020-10-28 2022-04-29 光宝电子(广州)有限公司 楼层定位与地图构建系统及其方法
CN113143114A (zh) * 2021-03-10 2021-07-23 深圳市杉川机器人有限公司 扫地机及其清扫区域的命名方法,计算机可读存储介质
CN115336936A (zh) * 2021-05-12 2022-11-15 尚科宁家(中国)科技有限公司 一种清洁机器人跨楼层的控制方法和清洁机器人
CN114035579A (zh) * 2021-11-11 2022-02-11 上海景吾智能科技有限公司 清扫机器人地图加载和切换方法及系统
CN114180428A (zh) * 2021-11-29 2022-03-15 北京云迹科技有限公司 一种机器人恢复任务的方法及装置
CN114993304A (zh) * 2022-06-29 2022-09-02 北京石头创新科技有限公司 一种机器人位置的确定方法、装置、介质和电子设备
CN117387649A (zh) * 2023-10-26 2024-01-12 苏州大学 概率自更新的不确定环境机器人自适应导航方法及系统

Also Published As

Publication number Publication date
JP7073336B2 (ja) 2022-05-23
WO2018024897A1 (de) 2018-02-08
EP3494446A1 (de) 2019-06-12
JP2019525342A (ja) 2019-09-05
EP3494446B1 (de) 2023-09-13
US20210096579A1 (en) 2021-04-01

Similar Documents

Publication Publication Date Title
CN109804325A (zh) 用于控制自主移动机器人的方法
US20230409032A1 (en) Method for controlling an autonomous, mobile robot
JP2021535485A (ja) 自律移動ロボットによるロボット使用領域の探索
EP3785093B1 (en) Robot contextualization of map regions
CN104536445B (zh) 移动导航方法和系统
Elfes A sonar-based mapping and navigation system
US20200306989A1 (en) Magnetometer for robot navigation
CN109998429A (zh) 用于情境感知的移动清洁机器人人工智能
EP2249999B1 (en) Methods for repurposing temporal-spatial information collected by service robots
CN109998421A (zh) 移动清洁机器人组合及持久性制图
CN111328386A (zh) 通过自主移动机器人对未知环境的探察
CN103472823B (zh) 一种智能机器人用的栅格地图创建方法
CN106530946A (zh) 用于编辑室内地图的方法及装置
CN106584472A (zh) 用于控制自主移动式设备的方法及装置
KR20170053351A (ko) 청소 로봇 및 그 제어 방법
CN106200633A (zh) 使用物理特征定位和制图
DE102016114594A1 (de) Verfahren zur Steuerung eines autonomen mobilen Roboters
Grzonka et al. Activity-based estimation of human trajectories
CN103869814A (zh) 一种终端定位和导航方法以及可移动的终端
CN102189557A (zh) 控制设备、控制方法和程序
CN106767755A (zh) 用于规划自主移动式设备工作点的方法及装置
CN106782030A (zh) 用于生成具有语义描述的室内地图的方法及装置
CN106595664A (zh) 室内地图生成、显示、发送的方法及装置
CN106782029A (zh) 室内地图生成方法及装置
DE102016114593A1 (de) Verfahren zur Steuerung eines autonomen mobilen Roboters

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination