CN105717924A - 使用差动传感器或视觉测量的地毯偏移估计 - Google Patents

使用差动传感器或视觉测量的地毯偏移估计 Download PDF

Info

Publication number
CN105717924A
CN105717924A CN201610094587.6A CN201610094587A CN105717924A CN 105717924 A CN105717924 A CN 105717924A CN 201610094587 A CN201610094587 A CN 201610094587A CN 105717924 A CN105717924 A CN 105717924A
Authority
CN
China
Prior art keywords
robot device
carpet
sensor
controller
actuator system
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.)
Granted
Application number
CN201610094587.6A
Other languages
English (en)
Other versions
CN105717924B (zh
Inventor
迪拉杰·戈埃尔
伊桑·伊德
菲利普·方
马里奥·E·米尼希
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.)
iRobot Corp
Original Assignee
iRobot Corp
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=49712713&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN105717924(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by iRobot Corp filed Critical iRobot Corp
Publication of CN105717924A publication Critical patent/CN105717924A/zh
Application granted granted Critical
Publication of CN105717924B publication Critical patent/CN105717924B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0253Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • G05D1/24
    • G05D1/244
    • G05D1/40
    • G05D1/644
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)
  • Electric Vacuum Cleaner (AREA)

Abstract

本发明涉及使用差动传感器或视觉测量的地毯偏移估计。提供了一种机器人设备,该机器人设备包括:相机;被配置成使该机器人设备在地毯表面上移动的致动器系统,致动器系统包括分别通过左轨和右轨互连的多个左轮和多个右轮;以及耦接至相机的控制器,控制器被配置成:从由相机捕获的两个或更多个图像提取特征;将从该两个或更多个图像提取的特征相匹配;基于相匹配的所提取的特征相对于该两个或更多个图像的运动来生成视觉运动观察;至少基于视觉运动观察来估计地毯偏移;至少基于视觉运动观察来生成地毯偏移矢量;使用地毯偏移矢量来生成被配置成补偿所估计出的地毯偏移的命令;以及将所生成的命令发送至致动器系统以补偿所估计出的地毯偏移。

Description

使用差动传感器或视觉测量的地毯偏移估计
本专利申请是国际申请日为2013年6月7日、国家申请号为201380022811.5、发明名称为“使用差动传感器或视觉测量的地毯偏移估计”的专利申请的分案申请。
对相关申请的交叉引用
本申请要求于2012年6月8日提交的题为“CARPETDRIFTESTIMATIONUSINGDIFFERENTIALSENSORSANDVISUALMEASUREMENTS”的美国临时申请第61/657,399号的优先权,其全部内容通过参引合并至本文中。
技术领域
本公开内容涉及机器人系统,更特别地涉及被配置成在表面上移动的移动机器人系统。
背景技术
自主式机器人是可以在无连续人类引导的情况下在环境中执行期望任务的机器人。机器人可以在不同程度上自主并且可以以不同的方式处于自主。例如,自主式机器人可以在无连续人类引导的情况下通过非结构化环境的工作表面以执行一个或更多个任务。在其他示例中,自主式机器人可以在结构化环境中或者在人类监督下执行任务。在家用机器人、办公室机器人和/或消费者导向机器人的领域中,移动机器人已被用于执行例如真空除尘清洁、地板清洗、巡逻、剪草坪和其他这样的任务等功能。
然而,许多常规的自主式机器人未适当地或精确地确定机器人位置和/或姿势并且未适当地控制机器人的移动,从而不能确保机器人停留在给定路线上和/或达到指定位置和/或姿势。
发明内容
下面呈现出一个或更多个方面的简要概述以提供对这样的方面的基本理解。此概述不是对所有所考虑方面的广泛综述,并且既不意在确定所有方面的关键或重要元素,也不意在界定任何或所有方面的范围。其唯一目的在于以简单的形式呈现一个或更多个方面的一些概念作为后面呈现的更详细描述的前序。特别地,所考虑方面包括实施本文中所描述的一个或更多个方面的一些或所有概念的方法和非暂态计算机可读介质。
描述了下述系统和方法,该系统和方法用于估计通过机器人在表面例如地毯上移动所经历的偏移例如地毯偏移,并且该系统和方法用于补偿这样的偏移例如地毯偏移。通过另外的示例,所描述的某些系统和方法可以被配置成估计由于可能会影响机器人通过表面的运动的其他作用而引起的偏移,例如由于倾斜的地板、不稳定的表面(例如沙粒表面或泥浆表面)和/或由于风推动或拖拉机器人而引起的运动偏移。
某些示例性实施方式考虑一种机器人设备。所述机器人设备包括本体和被配置成使本体在表面上移动的致动器系统。所述机器人设备还可以包括被配置成感测致动器系统的致动特性的第一组传感器。所述机器人设备还可以包括被配置成感测本体的运动特性的第二组传感器。第一组传感器可以是与第二组传感器不同类型的传感器。所述机器人设备还可以包括至少基于由第一组传感器感测到的致动特性和由第二组传感器感测到的运动特性来估计偏移例如地毯偏移的控制器。在一种示例性实施方式中,致动器系统可以包括可旋转的轮子,并且第一组传感器被配置成感测致动器系统的轮子的旋转。第二组传感器可以包括被配置成感测本体的旋转的陀螺仪传感器。在一种示例性实施方式中,致动器系统包括可旋转的轮子,并且第一组传感器被配置成感测致动器系统的轮子的旋转。第二组传感器包括被配置成感测本体的旋转的陀螺仪传感器。控制器还被配置成至少基于根据所感测到的轮子旋转所估计出的航向与根据所感测到的本体旋转所估计出的航向之间的比较来估计地毯偏移。在一种示例性实施方式中,控制器还被配置成控制致动器系统执行将本体旋转至少约180度的机动动作。控制器还被配置成至少基于在所述机动动作期间感测到的致动特性与运动特性之间的多个比较来估计地毯偏移。在一种示例性实施方式中,控制器还被配置成至少基于在所述机动动作期间的总偏移与航向变化之比来估计地毯偏移的幅度。在一种示例性实施方式中,控制器还被配置成:响应于检测到障碍物,至少基于在机动动作期间感测到的致动特性与运动特性之间的多个比较来更新所估计出的地毯偏移。在一种示例性实施方式中,致动器系统包括可旋转的轮子,并且第一组传感器被配置成感测致动器系统的轮子的旋转。第二组传感器包括被配置成捕获两个或更多个图像的成像传感器。控制器被配置成通过比较所述两个或更多个图像来估计运动特性。在一种示例性实施方式中,控制器还被配置成检测所述两个或更多个图像中的每个图像的共同特征,其中控制器还被配置成至少基于比较在所述两个或更多个图像中检测到的共同特征的相对位置的变化来估计本体的航向。
在一种示例性实施方式中,考虑一种机器人设备。所述机器人设备包括可旋转的左驱动轮和可旋转的右驱动轮。所述机器人设备还包括驱动子系统,该驱动子系统被配置成基于驱动信号使左驱动轮和右驱动轮差动地旋转,使得机器人设备在表面上移动。所述机器人设备还包括被配置成生成左轮和右轮的旋转的测距测量的第一组传感器。所述机器人设备还包括被配置成生成机器人设备的航向测量的第二组传感器。所述机器人设备还包括被配置成生成驱动信号使得机器人设备执行具有航向角变化的机动动作的控制器。控制器还被配置成至少基于在机动动作期间的航向变化的估计和在机动动作期间的航向测量的变化来估计偏移,例如地毯偏移。航向变化的估计基于在机动动作期间的测距测量。在一种示例性实施方式中,控制器还被配置成使所述机动动作至少持续到航向测量指示至少约180度的航向变化为止。控制器还被配置成在机动动作期间采集多个测距测量。控制器还被配置成在机动动作期间采集多个航向测量。控制器还被配置成至少基于多个测距测量与多个航向测量之间的比较来估计地毯偏移。在一种示例性实施方式中,控制器还被配置成至少部分地响应于遇到障碍物来估计地毯偏移。在一种示例性实施方式中,控制器还被配置成响应于自执行先前估计以后行进比阈值距离大的距离来估计地毯偏移。
某些示例性实施方式考虑一种移动机器人设备。所述移动机器人设备包括被配置成生成测距测量的第一组传感器。所述移动机器人设备包括被配置成生成移动机器人设备的航向测量的第二组传感器。所述移动机器人设备包括被配置成捕获图像的相机。所述移动机器人设备包括在通信上耦接至第一组传感器和第二组传感器以及相机的控制器。控制器被配置成选择性地以第一模式操作和选择性地以第二模式操作。当以第一模式操作时,控制器还被配置成至少基于根据测距测量所估计出的航向和由第二组传感器生成的航向测量来估计偏移,例如地毯偏移。当以第二模式操作时,控制器还被配置成至少基于由相机捕获的图像中的两个或更多个图像来生成移动机器人设备的视觉运动观察。控制器还被配置成至少基于测距测量和视觉运动观察来估计地毯偏移。所述移动机器人还包括差动驱动的驱动轮。控制器还被配置成在驱动轮的绝对差动旋转大于阈值时以第一模式操作。在一种示例性实施方式中,控制器还被配置成计算与视觉运动观察相关联的不确定度,并且其中,控制器还被配置成在不确定度低于阈值时以第二模式操作。
某些示例性实施方式考虑一种机器人设备。所述机器人设备包括:相机;致动器系统,所述致动器系统被配置成使所述机器人设备在地毯表面上移动,所述致动器系统包括通过左轨互连的多个左轮以及通过右轨互连的多个右轮;以及控制器,所述控制器耦接至所述相机,其中,所述控制器被配置成:从由所述相机捕获的两个或更多个图像提取特征;将从所述两个或更多个图像提取的特征相匹配;基于相匹配的所提取的特征相对于所述两个或更多个图像的运动来生成视觉运动观察;至少基于所述视觉运动观察来估计地毯偏移;至少基于所述视觉运动观察来生成地毯偏移矢量;使用所述地毯偏移矢量来生成被配置成补偿所估计出的地毯偏移的命令;以及将所生成的命令发送至所述致动器系统以补偿所估计出的地毯偏移。
某些示例性实施方式考虑一种机器人设备。所述机器人设备包括:成像传感器;致动器系统,所述致动器系统被配置成使所述机器人设备在表面上移动,所述致动器系统包括通过左轨互连的多个左轮以及通过右轨互连的多个右轮;以及控制器,所述控制器在通信上耦接至所述成像传感器,其中,所述控制器被配置成:从由所述成像传感器捕获的两个或更多个图像提取特征;将从所述两个或更多个图像提取的特征相匹配;基于相匹配的所提取的特征相对于所述两个或更多个图像的运动来生成视觉运动观察;至少基于所述视觉运动观察来估计偏移;至少基于所述视觉运动观察来生成偏移矢量;使用所述偏移矢量来生成被配置成补偿所估计出的偏移的命令;以及将所生成的命令发送至所述致动器系统以补偿所估计出的偏移。
附图说明
在本文中提供这些附图和相关联的描述以示出本发明的具体实施方式,并且其并非意在限制性的。
图1是示出示例性机器人设备的顶视图的示意图。
图2是示出图1的机器人设备的示例性致动器系统的示例性实施方式的示意图。
图3是示出图1的机器人设备的示例性控制器的示例性实施方式的示意图。
图4是估计地毯偏移的示例性方法的流程图。
图5是示出至少基于来自测距传感器和陀螺仪传感器的测量来估计地毯偏移的示例性方法的示例性实施方式的流程图。
图6是示出至少基于来自测距传感器和成像传感器的测量来估计地毯偏移的示例性方法的示例性实施方式的流程图。
图7是示出确定视觉运动观察的示例性方法的示例性实施方式的流程图。
图8是示出执行统计滤波的示例性方法的示例性实施方式的流程图。
具体实施方式
描述了用于估计偏移例如地毯偏移的方法和系统。本文在用于估计清洁机器人所经历的地毯偏移的系统或方法的背景下描述示例性实施方式,但所述示例性实施方式将适用于其他类型的设备,例如能够通过地毯表面的移动机器人设备。要理解的是,术语地毯旨在包括可能具有纹理或绒毛的垫子和其他地板覆盖物。还要理解的是,本文所描述的示例性实施方式将适用于估计由于除地毯作用之外的作用而引起的偏移,例如举例来说,由于倾斜的地板、不稳定的表面(例如沙粒表面或泥浆表面)和/或由于风力(例如,相对恒定的或缓慢地随时间变化的风对机器人进行推动或拖拉)而引起的运动偏移。
地毯的制造过程可以对地毯的纤维进行排列使得纤维趋于沿特定方向弯曲。此纤维偏斜方向可以被称为地毯的纹理方向或绒毛方向。当对象在地毯上移动时,例如就对地毯进行真空除尘或者用手拂过地毯而言,对象可能会经历纹理方向的作用。如果对象沿纹理方向在地毯上移动,则地毯的纤维可能会趋于沿运动方向倒下,从而有助于机器人沿纹理方向移动。然而,如果对象逆纹理方向移动,则地毯的纤维可能会趋于竖起,从而阻挡或抑制机器人移动。
由于地毯纹理作用于移动对象而引起的地毯的方向依赖力可能会影响对象的运动。例如,自主式清洁设备的轨迹可能会通过地毯纹理的影响而受到干扰。地毯纹理对对象的运动的作用可以被称为地毯偏移。地毯偏移可以由具有幅度和方向二者的地毯偏移矢量表示。地毯偏移矢量可以是地毯的属性。
对于自主式机器人,地毯偏移可能会产生问题。特别地,自主式机器人可以依赖于通过使用传感器——例如轮编码器、陀螺仪、加速度计和/或类似传感器——所确定的对其位置和/或取向的估计。例如,轮编码器传感器可以用于基于感测机器人设备的轮子在一段时间内的旋转量来确定行进的距离。然而,当自主式机器人在铺有地毯的环境中航行(navigate)时,基于机器人相对于地毯纹理的运动,机器人的轮子可以使地毯纤维竖起或倒下。特别地,当纤维沿地毯纹理倒下时,地毯可以沿地毯纹理的方向推动或引导机器人。因此,当机器人沿地毯纹理的方向移动时,机器人可以行进比基于轮子的旋转所确定的距离长的距离。另一方面,当机器人逆地毯纹理在竖立的纤维上行进时,机器人可以行进比基于轮子的旋转所确定的距离短的距离。在任一情况下,所行进的实际距离可能与由传感器——例如用于航位推算的轮编码器和类似传感器——测量的距离不同。
当在特定地毯的环境中地毯偏移矢量方向可以固定或恒定时,偏移量可以与所行进的距离成比例或者在一定程度上相关。因此,在机器人通过地毯时,位置估计误差可能会随时间累积。因此,机器人可能无法建立准确的环境地图或者可能无法有效、准确和/或安全地航行于环境中,从而不能用于执行任务例如真空除尘。
可选地,可以完全或部分地基于机器人设备的并未被其测距传感器(例如集成的差动运动传感器)考虑的运动来生成地毯偏移的估计。特别地,可以可选地通过组合两种或更多种类型的传感器测量来估计地毯偏移。在一种示例性实施方式中,来自一个传感器的测量可以提供所期望运动或所命令运动的指示,而来自另一传感器(例如不同类型的传感器)的测量可以提供真正或实际运动的指示。例如,在一种示例性实施方式中,测距传感器(例如测量轮子旋转量的一个或更多个传感器)可以基于所测量或所命令的轮子旋转来提供所期望或所命令的运动的指示。另外地或替代地,可以使用致动器系统的其他特性,例如轮子速率、轮子加速度和/或电机控制信号。可以使用例如来自陀螺仪传感器、成像传感器或者类似传感器或其他传感器的任何组合的数据来估计真正运动,例如机器人设备取向或航向的变化。可以通过比较所期望运动和实际运动来估计地毯偏移(或地毯偏移矢量)。
地毯偏移的估计可以用于改善或校正运动估计。例如,所估计出的地毯偏移矢量可以与电机控制器一起使用以补偿地毯纹理的作用,和/或可以用于生成校正项以调整测距数据。地毯偏移的估计还可以用于估计机器人是在铺有地毯的地板上还是在未铺有地毯的地板上。
图1是示出示例性机器人设备100的顶视图的示意图(然而,要理解的是,机器人设备的内部部件被示意性地示出,并且该图示并非意在描绘这样的内部部件在机器人设备100内的实际定位或位置)。机器人设备100包括本体102、致动器系统104、通信总线106、控制器108、第一组传感器110、第二组传感器112、第三组传感器114和清洁机构116。
本体102可以包括形成机器人设备100的外表面的结构以及各种内部结构例如底盘。因此,本体102可以被配置成容纳致动器系统104、通信总线106、控制器108、第一组的一个或更多个传感器110、第二组的一个或更多个传感器112、第三组的一个或更多个传感器114和清洁机构116。要理解的是,可以使用更少的或附加的传感器组。
示例性机器人设备100的外表面可以限定任何适用的形状,包括但不限于:具有限定基本直线边缘的顶视图轮廓的形状,例如矩形和三角形构造;或者具有限定一个或更多个基本曲形或弧形边缘的顶视图轮廓的形状,例如圆形、椭圆形和D形构造;然而,本体102还可以限定其他形状。在操作中,外表面可能会与障碍物例如墙壁接触。因此,本体102的外表面可以包括由如下材料形成的部分:该材料具有使机器人设备100能够沿这样的障碍物滑动移动的摩擦系数。
致动器系统104被配置成使本体102在表面例如铺有地毯和/或未铺有地毯的地板上移动。例如,致动器系统104可以经由通信总线106接收来自控制器108的驱动命令,以用于控制由致动器系统104生成的致动器运动或力,例如用于驱动一个或更多个轮子在表面上旋转。致动器系统104和本体102可以在操作上耦接,使得所生成的致动器运动或力使本体102移动。致动器系统104可以包括任何合适数目的电机、轮子、传动装置和类似组件,以用于生成使本体102移动的力。随后将结合图2更详细地描述致动器系统104。
通信总线106被配置成使致动器系统104、控制器108、第一组传感器110、第二组传感器112和第三组传感器114在通信上互连。通信总线106可以传送电信号、光信号和/或机械信号。尽管所示实施方式示出作为共享总线的通信总线106,但本领域技术人员要理解的是,可以实现其他配置,例如在致动器系统104、控制器108、第一组传感器110、第二组传感器112和第三组传感器114中的任何个体或子组之间的另外或替选通信信道。
控制器108可以被配置成:接收来自传感器110、112、114的数据/测量作为输入,并且估计偏移例如地毯偏移。例如,控制器108可以被配置成至少基于从通信总线106所接收的、由第一组传感器110感测到的致动特性和由第二组传感器112感测到的运动特性来估计偏移例如地毯偏移。致动特性的示例包括但不限于轮子旋转位置、速度、加速度和/或提供所命令或所期望的运动的指示的类似致动器测量。例如,如果机器人设备100通过致动器系统104的轮子进行移动,则可以通过测距(例如基于轮子的旋转量和轮子的直径)来估计机器人设备100的期望位移。运动特性的示例包括但不限于本体102的旋转特性(例如角度取向、速率和/或加速度)、路径角(例如,在房间坐标系下机器人设备100的速率矢量的角度或该角度的变化)和/或提供机器人设备100的真正运动的指示的类似测量。例如,陀螺仪传感器可以提供机器人设备100的取向的旋转变化的测量。作为另外的示例,成像传感器可以提供与设备的路径角有关的测量。
另外,控制器108可以被配置成控制致动器系统104和/或清洁机构116的操作。例如,控制器108可以经由通信总线106向致动器系统104发送控制信号以使机器人设备100以期望轨迹移动。另外,在一些实施方式中,控制器108可以通过向致动器系统104发送控制信号或者直接向清洁机构116发送控制信号来使用清洁机构116。随后将参照图3更详细地描述控制器108。
第一组传感器110可以被配置成感测致动器系统104的致动特性。例如,第一组传感器110可以耦接至致动器系统104。在特定实施方式中,第一组传感器110可以包括:一个或更多个测距传感器,例如耦接至致动器系统104的一个或更多个轮子的线性或旋转编码器;或者测量或采集提供至致动器系统104的控制或电力信号的传感器或模块。这些测量可以提供一种通过测距法或航位推算法来估计机器人设备100的运动的方式。然而,例如由于地毯偏移,上述估计可能与实际运动偏离。
第二组传感器112可以被配置成感测本体102的运动特性。例如,第一组传感器110可以耦接至本体102以用于感测相对于环境或惯性坐标系的运动特性。所感测到的运动特性可以经由通信总线106提供至控制器108。在一种示例性实施方式中,第二组传感器112可以包括一个或更多个陀螺仪传感器以用于感测本体102的旋转。在另一实施方式中,第二组传感器112可以另外地或替代地包括用于捕获环境的图像的一个或更多个成像传感器,以用于估计机器人设备100的路径角。
可选地,可以包括第三组传感器114以用于感测本体102的第二运动特性。例如,尽管机器人设备100的一些实施方式可以感测本体旋转或路径角中仅一者的变化,但其他实施方式可以可选地使用例如第二组传感器112和第三组传感器114来感测本体旋转和路径角二者。因此,在一种示例性实施方式中,机器人设备100可以包括用于感测本体102的旋转的一个或更多个陀螺仪传感器、罗盘传感器和/或加速度计(例如对应于第二组传感器112),并且可以包括用于基于图像的航向估计的一个或更多个成像传感器(例如对应于第三组传感器114)。
如所述的,第一组传感器110、第二组传感器112和第三组传感器114中的每一组可以可选地为不同类型的传感器。例如,在一种示例性实施方式中,第一组传感器110可以包括一个或更多个测距传感器,第二组传感器112可以包括一个或更多个陀螺仪传感器,并且可选的第三组传感器114可以包括一个或更多个成像传感器。
清洁机构116可以被配置成从表面捕获灰尘。例如,清洁机构116可以包括耦接至本体102并且被定位成使得清洁机构116能够在机器人设备100通过表面时从该表面捕获灰尘的刷子、清洁垫和/或真空吸尘组件。在一些实施方式中,清洁机构可以被配置成由例如致动器系统104提供动力,以向刷子组件(其可以是柔韧的多叶片搅拌器或者可以在成排的刷子鬃毛之间具有柔韧的搅拌器挡帘)提供动力并且产生用于真空吸尘的吸力。要理解的是,不一定需要包括清洁机构116,其是可选的。
在操作中,控制器108可以命令致动器系统104将机器人设备100移动期望位移(和/或以期望速率进行移动),该期望位移在所示实施方式中由矢量a表示。如所述的,铺有地毯的地板可能部分地由于地毯的地毯纹理而影响机器人设备100的运动。因此,机器人设备100可能经历地毯偏移,该地毯偏移在所示实施方式中由矢量b表示。实际位移矢量c可以是期望位移矢量a和地毯偏移矢量b的叠加。
在操作中,控制器108可以经由通信总线106接收来自第一组传感器110的测量。例如,第一组传感器110的测量可以与期望位移矢量a相关。另外,控制器108可以经由通信总线106接收来自第二组传感器112的测量。例如,第二组传感器112的测量可以与实际运动矢量b相关。基于(完全或部分地)这些测量,控制器108可以估计地毯偏移矢量c的作用。该估计可以帮助校正来自第一组传感器110的测量(例如测距测量)和/或补偿地毯偏移。
图2是示出图1的机器人设备100的致动器系统104的示例性实施方式的示意图。致动器系统104包括可旋转的左轮202、可旋转的右轮204、左传动组件206、右传动组件208和驱动子系统210。
驱动子系统210可以被配置成生成用于使可旋转的左轮202和可旋转的右轮204旋转的动力,以用于移动机器人设备100。例如,左传动组件206可以被配置成传送由驱动子系统210生成的机械动力以使左轮202旋转。类似地,右传动组件208可以被配置成传送由驱动子系统210生成的机械动力以使右轮204旋转。左轮202和右轮204可以被差动地驱动。例如,驱动子系统210可以以速率vl驱动左轮202并且独立地以速率vr驱动右轮204。改变左轮202和右轮204的差动速率可以使机器人设备100基于差动速率的幅度和轮基距L(例如左轮202与右轮204之间的距离)而以一定半径转向。因此,所示出的致动器系统104的实施方式可以被配置成使机器人设备100在轮子202、204与地板接触地旋转时在可控制路径或航向上移动。
要理解的是,可以选择任何合适的轮子类型,并且左轮202和右轮204中的每一个可以是左右轮子系统(未示出)的一部分,该左右轮子系统可以与罐体的驱动子系统类似地包括通过左轨互连的多个左轮和通过右轨互连的多个右轮。还要理解的是,在其他实施方式中,致动器系统104可以包括一个或更多个左腿和一个或更多个右腿以用于提供移动。还要理解的是,在又一其他实施方式中,致动器系统104可以包括一个或更多个可旋转且可枢转的轮子,该一个或更多个可旋转且可枢转的轮子被配置成使机器人设备100在该轮子旋转时根据轮子枢转的角度沿可变方向移动。
当机器人设备100沿地毯纹理的方向移动时,由轮子202、204的旋转所估计(例如通过测距)的位移可能小于实际位移。当机器人设备100逆地毯纹理的方向移动和前进时,作用可能会完全或部分地相反。在图2所示的实施方式中,地毯偏移矢量c相对于机器人轮基距处于角θ。例如,如果以速率vl驱动左轮202并且以速度vr驱动右轮204,则在不存在地毯偏移和轮子打滑的情况下,机器人设备100将沿由vl、vr和L定义的弧线进行驱动。然而,地毯偏移可以使机器人设备100沿地毯偏移矢量c的方向移动,并且实际位移可能与所期望的位移不同。
为了进一步说明,如果左轮202和右轮204在一段持续时间(例如单位时间)内分别移动距离dl和dr,则该运动可以由位移传感器例如轮测距传感器感测。由该运动(例如,不存在地毯偏移、轮子打滑和类似的致动器干扰)引起的航向变化可以近似地由以下示例性公式建模:
Δα o d o m = d r - d l L (公式1)
考虑到沿轮子行进方向的地毯偏移,每个轮子的实际位移可以包括地毯偏移矢量c与轮子运动方向之间的点积作为附加项。作为结果,实际左位移dlc和实际右位移dlr可以近似地由以下示例性公式建模:
dlc=dl+dl|c|sin(θ)=dl+sgn(dl)|dl||c|sin(θ)(公式2a)
drc=dr+dr|c|sin(θ)=dr+sgn(dr)|dr||c|sin(θ)(公式2b)
在给定的此位移下,作为可以由航向传感器例如陀螺仪测量的内容的航向变化可以近似地由以下示例性公式建模:
Δα g y r o = d r c - d l c L = ( d r | - | d l | ) L + ( | d r | - | d l | ) L | c | sin ( θ ) (公式3)
由于地毯偏移而引起的航向变化可以通过取根据测距所计算的航向变化与从陀螺仪传感器所计算的航向变化之间的差来估计:
Δα d r i f t = Δα g y r o - Δα o d o m = ( d r | - | d l | ) L | c | sin ( θ ) (公式4)
Δαdrift∝sin(θ)(公式5)
如在公式5中明显看出的,从位移传感器(例如测距传感器)和航向传感器(如陀螺仪)所计算的航向差可以与地毯偏移方向相对于机器人航向成比例。根据公式4,各个轮子的绝对位移应当基本上不同并且恒定。因而,如果使机器人覆盖所有可能的取向(例如沿弧线移动以覆盖完整旋转),则如通过公式5所估计出的航向差应当产生正弦函数。当机器人分别近似地与沿地毯纹理的方向对齐和与沿地毯纹理的相反方向对齐时,应当出现正弦曲线的最大值和最小值。
图3是示出图1的机器人设备100的控制器108的示例性实施方式的示意图。控制器108包括处理器302和存储器304。存储器304包括致动器模块306、传感器模块308、控制器模块310和估计模块312。
处理器302包括电路系统例如微处理器或微控制器,该电路系统被配置成:执行来自存储器304的指令;以及控制和操作机器人系统100的致动器系统(例如图1的致动器系统104)、传感器(例如图1的第一组传感器110、第二组传感器112和第三组传感器114)、清洁机构(例如图1的清洁机构116)和/或类似部件。特别地,处理器302可以是通用的单芯片或多芯片微处理器(例如ARM)、专用微处理器(例如数字信号处理器(DSP))、微控制器、可编程门阵列等。尽管在控制器108中示出单个处理器302,但在可替选的配置中,可以使用处理器(例如ARM和DSP)的组合。
存储器304包括被配置成通过化学方式、磁性方式、电学方式、光学方式或类似方式来存储信息的有形非暂态计算机可读介质。例如,存储器304可以为:非易失性存储设备,例如闪速存储器或硬盘驱动器;和/或易失性存储设备,例如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM);或者非易失性存储器和易失性存储器的组合系统。
存储器304内是包括配置处理器302对机器人设备100的致动器进行操作的指令的致动器模块306。例如,致动器模块306可以包括使驻留在存储器304中的各种模块能够使用图1的致动器系统104的指令。特别地,致动器模块306可以包括形成如下驱动程序的指令:该驱动程序用于控制图1的控制器108与致动器系统104之间的数据和控制消息的通信。
存储器304内是包括配置处理器302对机器人设备100的传感器进行操作的指令的传感器模块308。例如,传感器模块308可以包括使驻留在存储器304中的各种模块能够使用图1的传感器110、112、114的指令。特别地,传感器模块308可以包括形成如下驱动程序的指令:该驱动程序用于控制图1的控制器108与传感器110、112、114之间的数据和控制消息的通信。
存储器304内是包括如下指令的控制器模块310:该指令配置处理器302对机器人系统100的致动器104和传感器110、112、114进行控制以及对致动器模块306、传感器模块308和估计模块312的执行进行控制。例如,控制器模块310可以包括如下指令:该指令与生成用于致动器的控制信号(例如电机控制律)有关,并且该指令针对致动器模块306的调用指令以用于将所生成的控制信号发送至致动器系统104。控制器模块310可以包括与传感器模块308的调用指令有关以用于接收来自传感器110、112、114的测量的指令。控制器模块310可以包括控制估计模块312的指令的执行以用于估计地毯偏移的指令。
存储器304内是包括配置处理器302对地毯偏移进行估计的指令的估计模块312。下面将结合图4至图8更详细地描述由示例性估计模块312实现的各种方法。
图4是估计地毯偏移的方法400的流程图。在一种示例性实施方式中,机器人设备100执行存储器304中的估计模块312的指令以用于执行方法400的操作。方法400始于块402并且转至块404以用于使机器人设备100以一定模式移动。例如,控制器108可以命令致动器系统104使机器人设备100在表面上移动。在一些实施方式中,移动机器人设备100可以是地毯偏移校准阶段的一部分(例如,在表面上的初始操作期间或在启动时)。例如,在校准过程中,可以命令机器人设备100执行将机器人设备100旋转至少约180度或至少约360度的机动动作。将机器人设备旋转至少180度会使机器人设备能够在旋转期间至少与地毯偏移矢量对齐或者逆向对齐。因此,可以例如通过公式5并且确定Δαdrift的最大值/最小值的位置来估计地毯偏移矢量c的方向。将机器人设备旋转至少360度会使机器人设备能够在旋转期间与地毯偏移矢量对齐和逆向对齐。因此,可以例如通过公式5并且确定Δαdrift的最大值和/或最小值的位置来估计地毯偏移矢量c的方向。另外地或可替选地,机器人设备100的移动可以作为单独任务例如覆盖或清洁空间的一部分来执行。例如,机动动作可以是响应于遇到障碍物例如墙壁而做出的转向。作为另一示例,机动动作可以可选地例如在机器人设备100从第一墙壁穿行到第二墙壁时处于基本直线路径。
在块404的操作期间或与块404的操作并存地,方法400可以执行块406以用于感测机器人设备100的致动器系统的致动特性。例如,控制器108可以接收使用第一组传感器110对致动特性的多个测量。致动特性例如可以与致动器系统104的一个或更多个轮子的旋转相对应以生成测距。如上面结合图3所讨论的,测距测量可以用于估计机器人设备100的期望航向变化。
在块404的操作期间或与块404的操作并存地,方法400可以执行块408以用于感测机器人设备100的运动特性。例如,控制器108可以接收使用第二组传感器112或第三组传感器114对运动特性的多个测量。运动特性例如可以与由陀螺仪传感器感测到的机器人设备100的旋转的变化相对应或与由基于图像的传感器感测到的路径角的变化相对应。
在采集致动特性和运动特性中的每一个的测量之后,方法400可以转至块410以用于至少基于致动特性和运动特性来估计地毯偏移。例如,控制器108可以将在机器人设备100执行机动动作时所采集的致动特性和运动特性的测量进行比较。在块410处执行的估计处理可以取决于运动特性的性质。例如,如果运动特性与机器人设备100的旋转相关,则控制器108可以使用一种估计方法(例如图5的方法410a),而如果运动特性与路径角相关,则控制器108可以使用另一种估计方法(例如图6的方法410b)。随后将结合图5至图8进一步详细地描述这样的示例性估计方法二者。
另外地或可替选地,估计方法可以取决于在块404处执行的机动动作。例如,如果机动动作包括基本旋转,例如至少约180度或至少约360度的旋转,则估计方法可以依据下面参照图5的描述。如果机动动作包括基本直线的期望轨迹,例如与左轮和右轮(例如图3的轮子202、204)的、处于小于约10%或小于约20%的差异的所命令差动旋转或速率相对应的期望轨迹,则该估计处理可以依据下面参照图6至图8的描述。然而,本领域技术人员要理解的是,图6至图8的估计处理可以不需要基本直线的期望轨迹,而可以使用其他轨迹例如曲形轨迹。
一旦估计出地毯偏移,方法400就继续至块412以用于施加地毯偏移校正。例如,可以通过添加与沿纹理方向的纹理幅度成比例的或以其他方式相关的偏移分量来校正测距读数。经校正的测距值可以用于估计机器人位置。校正可以显著地改进机器人设备100在铺有地毯的地板上的航位推算。
方法400可以可选地在机器人设备100的运行期间以一定时间间隔运行,以调整地毯偏移估计并且改进位置估计。例如,可以关于行进的时间或距离来周期性地运行方法400。例如,机器人设备100可以被配置成:在自执行先前估计以后行进比阈值距离(其可以可选地被预先指定)大的距离之后或响应于自执行先前估计以后行进比所述阈值距离大的距离来运行方法400。另外,方法400可以可选地被执行为评估机器人设备100是否在多地毯(或者多表面)环境中操作。例如,不同的铺有地毯的表面可以具有与其相关联的不同地毯偏移矢量。方法400可以被执行多次以生成多个地毯偏移估计。如果地毯偏移估计不同,则可以估计或确定存在多个铺有地毯的表面。另外,如果地毯偏移估计指示没有或者基本上没有地毯偏移,则可以估计或确定该设备在未铺有地毯的表面上工作。一旦方法400完成,则可以转至块414以结束。
图5是示出至少基于来自测距传感器和陀螺仪传感器的测量来估计地毯偏移的方法410a的示例性实施方式的流程图。例如,方法410a可以作为用于利用所估计出的地毯偏移来校正测距的校准阶段的一部分来执行。方法410a还可以在任务的执行期间执行以调整所估计出的地毯偏移。例如,方法410a可以在机器人设备100清洁房间的表面时执行。特别地,可以在机器人设备100例如响应于遇到障碍物或者在障碍物周围航行而旋转时执行方法410a。相比于例如基于图像的传感器,使用陀螺仪传感器的某些实施方式的其中一个可选优点可以为:提高的准确度以及在硬件、实现和运行时间计算方面降低的复杂度。在一种示例性实施方式中,机器人设备100执行存储器304中的估计模块312的指令以用于执行方法410a的操作。
方法410a始于块502并且转至块504以用于比较多个第一和第二航向估计。例如,在块502处开始方法410a之前,可以在机器人设备100执行包括例如通过围绕一个轮子旋转的完整旋转的机动动作的同时采集测量。还可以使用其他运动。例如,机动动作可以在驱动轮之间具有非零差动(例如|dr|-|dl|)的情况下执行。在一种示例性实施方式中,可以根据测距测量、通过使用公式1来生成N个第一航向估计Δαodom,n(n=1,2,..,N)。可以通过陀螺仪传感器来生成N个第二航向估计Δαgyro,n(n=1,2,..,N)。在一些实施方式中,可以以近似的时间间隔——例如每当机器人设备100相比于上次读数已经旋转0.1弧度时——采集成对的测量(Δαodom,n,Δαgyro,n)。由于地毯偏移Δαdrift,n而引起的航向差可以由以下示例性公式近似表示:
Δα d r i f t , n = Δα g y r o , n - Δα o d o m , n ∀ n ∈ { 1 , 2 , ... N } . (公式6)
方法410a可以转至块506以用于至少基于在块504处做出的比较的差来估计地毯偏移的方向。例如,完整旋转期间的Δαdrift,n的曲线可以近似于如在公式5中所建模的正弦信号。所估计出的由于地毯偏移而引起的航向变化Δαdrift,n的极值或峰值可能近似地在测距传感器和陀螺仪传感器差异最大时出现。例如,当机器人设备100与地毯纹理的方向完全对齐时,测距传感器可能会低估转向角度并且可能落后于由陀螺仪传感器测量的航向,从而导致最大值。相反,在机器人设备100与地毯纹理逆向对齐并且测距传感器可能高估转向角度时,可能会出现最小值。因此,可以基于对第一航向估计和第二航向估计的比较的峰值来估计地毯纹理方向。为此目的,可以使用标准或非标准的相关/卷积和/或搜索技术。
方法410a可以转至块508以用于至少基于总偏移和航向变化来估计地毯偏移的幅度。例如,可以使用以下示例性公式来获得地毯偏移幅度的估计:
| c | ≈ Σ n = 1 N Δα d r i f t , n 2 π (公式7)
公式7是总偏移与一次完整旋转(例如2π)之比。可以通过使用在机动动作期间的总航向变化替换公式7的分母而使用其他旋转量。
如果地板未铺有地毯,则Δαdrift,n的曲线可能不会类似于具有周期N的正弦波。因此,如果Δαdrift,n不具有基本周期N(或者如果Δαdrift,n不具有如根据公式5所预期的基本正弦波形),则地板可能会被估计或识别为未铺有地毯。然后,方法410a可以转至块510以结束。
估计地毯偏移的一个特定挑战在于利用陀螺仪传感器不能检测地毯偏移的某些作用。例如,如果命令机器人设备100遵循直线路径,则地毯偏移的一个方面可能会以基本上不使机器人设备100的航向旋转或改变的方式来影响机器人设备100的运动(例如通过改变路径角)。例如,地毯偏移可以影响机器人设备100的平移运动而不使机器人设备100旋转。因此,在具有基本直线的期望路径(例如,基本上为零绝对差动轮位移|dr|-|dl|)的机动动作期间和/或当基本上不存在航向变化时,对于估计地毯偏移的方面,陀螺仪传感器可能无效。因此需要改进的对地毯偏移的估计。
图6是示出至少基于来自测距传感器和成像传感器的测量来估计地毯偏移的方法410b的示例性实施方式的流程图。例如,如果机器人设备100配备有成像传感器例如相机,则基于图像的测量可以用于执行对地毯偏移的在线估计。在其他示例性实施方式中,机器人设备100可以不包括集成式成像传感器。例如,可以将由外部相机捕获的图像例如无线地传送至机器人设备100。另外地或可替选地,包括处理器和相机的外部系统可以对机器人成像并且根据图像来确定机器人设备100的位置和取向,以及将数据传送至机器人设备100。因此,下面在完全集成式机器人的背景下描述基于图像的估计,但该基于图像的估计将适用于独立的机器人相机系统。
基于图像的估计可以可选地对于具有多个地毯的环境、在硬地板上具有区域毯的环境和具有其他普通表面布置的环境有效。甚至在基本上未命令轮差动的情况下(例如在近似直线的机动动作期间),基于图像的感测也可以是有效的。换言之,对于在未命令机器人设备100旋转的机动动作期间估计地毯偏移,方法410b可以是有效的。在一种示例性实施方式中,机器人设备100执行存储器304中的估计模块312的指令以用于执行方法410b的操作。
方法410b始于块602并且转至块604以用于根据由成像传感器捕获的两个或更多个图像来确定视觉运动观察。存在根据视觉信息来确定视觉运动观察的各种方法,包括外极(epipolar)匹配、视觉测距、相位相关和运动求取结构。本领域技术人员要理解的是,可以使用用于确定视觉观察的任何合适的方法。下面结合图7更详细地描述涉及外极匹配的示例性实施方式。
在确定视觉运动观察之后,方法410b转至块606以用于执行统计滤波。可以使用统计估计滤波来组合从相机图像提取的对机器人设备100的运动的估计。统计估计滤波可以保持对地毯偏移或地毯偏移矢量的估计。存在可以组合视觉观察的各种统计估计滤波,包括扩展卡尔曼滤波(EKF)的变型、扩展信息滤波、非线性优化和粒子滤波。下面结合图8更详细地描述使用迭代EKF(IEKF)的示例性实施方式。方法410b可以在块608处结束。
在一种示例性实施方式中,机器人设备100可以实现方法410a或410b中的仅一种。然而,另一示例性实施方式可以实现方法410a、410b二者并且在操作期间在两种方法或模式之间进行切换。例如,机器人设备100可以包括陀螺仪传感器和成像传感器二者。机器人设备100可以在校准阶段期间和/或在命令机器人设备100旋转的某些机动动作期间执行方法410a。另外,机器人设备100可以在未命令机器人设备100旋转的某些机动动作期间执行方法410b。例如,在特定的示例性实施方式中,机器人设备100可以被配置成在两个墙壁之间重复地穿行以清洁房间的地板。同样地,机器人设备100可以被配置成沿基本直线从一个墙壁移动到另一墙壁。在此直线机动动作期间,机器人设备100可以被配置成选择性地执行方法410b。当机器人设备100遇到另一墙壁时,机器人设备100可以被配置成旋转(例如约180度)以面向第一墙壁。在此转向机动动作期间,机器人设备100可以被配置成选择性地执行方法410a。
然而,另一示例性实施方式可以并行地运行方法410a、410b二者,并且在操作期间在这两种方法之间进行切换。例如,图1的控制器108可以监视方法410a、410b的操作以选择可以提供最可靠估计的输出。例如,控制器108可以在轮子差动(例如,|dr|-|dl|)较大时选择使用执行方法410a的处理的输出,或者可以在轮子差动较小时选择离开。作为另一示例,当存在精确的视觉运动观察的指示时,控制器108可以选择使用执行方法410b的处理的输出。例如,如下面结合图7进一步详细描述的,方法410b可以计算确定性水平并且可以测量特征匹配的紧密度。在一种示例性实施方式中,当存在低不确定度和/或紧密的特征匹配时,可以选择方法410b。
另外地或可替选地,为了帮助在两种方法410a、410b或模式之间决策,控制器108可以对可以在线评估和比较的两个假设性能度量进行比较。例如,方法410a可以被分配可以在线评估的性能度量P1。对于度量的一种示例性选择可以为P1=μ1(|dr|-|dl|)-2,其中μ1可以是可以基于应用特定考虑来选择的设计变量。同样地,方法410b可以被分配类似或不同的性能度量P2。对于度量的一种示例性选择可以为P2=μ2||P||,其中μ2可以是可以基于应用特定考虑来选择的设计变量,并且||P||可以是用于生成偏移的基于视觉的估计的卡尔曼滤波的协方差矩阵P的矩阵范数(参见例如图8)。在一种示例性实施方式中,控制器108可以在P1<P2时选择使用方法410a的输出,并且可以在P2<P1时选择使用方法410b的输出。要理解的是,可以选择其他性能度量并且可以使用其他决策规则。
图7是示出确定视觉运动观察的方法604的示例性实施方式的流程图。例如,在一种示例性实施方式中,机器人设备100执行存储器304中的估计模块312的指令,以根据由成像传感器捕获的图像来生成指示机器人设备100的路径角的视觉观察。所示出的方法604的实施方式基于在图像中所检测的特征的外极匹配。外极匹配通过图像的匹配特征之间的外极关系来估计一个图像到另一图像中相机的平移(例如,当使用多个相机时)、平移方向和旋转。例如,所检测的特征在一个图像中的位置和/或取向相对于其在另一图像中的变化可以提供相机相对于所检测的特征的运动的指示。为简单起见,如下面所使用的“平移”可以是指平移和/或平移方向。例如,在具有单个相机的示例性实施方式的情况下,可以估计平移方向。有利地,外极匹配可以不需要相机正对其成像的场景的结构的知识(尽管可以使用这样的知识)。示例性视觉估计器的一个方面在于得到对如下平移的估计:该平移具有低不确定度并且相对于场景中对象的深度具有足够平移。例如,作为用于通过统计估计滤波的处理的观察,此类型的估计可能是有用的。因为外极匹配可以在同时具有两幅图像时有效,所以其可以例如基于运动求取结构而使用与其他视觉运动估计方法相比较少的计算。在一种示例性实施方式中,机器人设备100执行存储器304中的估计模块312的指令以用于执行方法604的操作。
方法604始于块702并且转至块704以用于通过将保存的特征集设置成空集并且通过重新设置测距测量来进行初始化。例如,保存的特征集可以存储在机器人设备100的存储器304中。在重新设置测距之后,方法604转至块706以用于检索下一测距数据和下一相机帧(例如图像)。例如,机器人设备100可以在表面上移动,并且可以利用包括测距传感器的第一组传感器来采集测距测量以及利用包括一个或更多个相机的第二组传感器来采集下一帧。
在采集下一帧之后,该方法可以从块706移至块708以用于提供帧的当前特征集。例如,可以从帧提取例如尺度不变特征变换(SIFT)或哈里斯(Harris)特征等特征。在块710处,方法604检查保存的特征集是否为空集。如果保存的特征集为空集,则方法604转至块712以用于将当前特征集存储为保存的特征集并且重新设置累积的测距。方法604可以返回到块706以用于检索下一测距数据和相机帧。
如果在块710处保存的特征集不为空,则方法转至714以用于得到当前特征集与保存的特征集之间的外极匹配。在得到外极匹配之后,方法604可以转至块716以用于检查匹配的阈值。例如,方法604可以检查匹配的充足性。特别地,可以通过来自系统中的其他源例如测距或来自其他视觉运动估计器的与期望运动有关的信息来辅助特征匹配。如果足够的特征相匹配并且匹配之间的误差(例如余差)足够低,则接受该匹配。例如,如果匹配数超过阈值量、匹配的不确定度低于某一限度和/或匹配的运动与通过测距预测出的运动之间的差异低于阈值,则匹配满足阈值。因此,匹配可以基于可靠的测量,并且因而确定可以使用该匹配。另一方面,在匹配之间包括过少的匹配特征或较大误差的这种匹配可以指示存在不可靠的测量,并且因而确定不应当使用该匹配。
如果匹配不满足阈值,则方法604转至块712以用于将当前特征集存储为保存的特征集并且重新设置累积的测距。方法604可以返回至块706以用于检索下一测距数据和相机帧。
如果在块716处匹配满足阈值,则方法转至块718以用于计算在保存的特征集和当前特征集之间相机的旋转和平移。例如,所计算的相机的旋转和平移可以基于当前特征集与保存的特征集之间的外极关系。例如,可以根据几何关系将特征在帧坐标下的平移和旋转映射为例如相机相对于固定或惯性坐标系(例如房间)的平移和旋转。在一种示例性实施方式中,从外极坐标到相机的平移和旋转的映射可以通过使用数值优化或者数学编程函数或方法来计算。
在计算旋转和平移之后,方法604转至块720以用于确定旋转和平移是否满足一些阈值。如果满足阈值,则方法604转至块721以用于设置视觉运动观察。例如,如果旋转和平移具有高于阈值的幅度并且不确定度低于阈值,则可以生成视觉运动观察,并且方法604可以在块722处终止。视觉运动观察可以包括所估计出的姿势变化、估计的不确定度以及两个相机位置之间基于测距的姿势的变化中的一个或更多个。
另一方面,如果旋转和/或平移具有低于阈值的幅度或者不确定度高于阈值,则方法604可以从块720移至块706以用于检索下一测距数据和相机帧。因此,未改变保存的特征集,并且检索新的图像和测距数据。这样可以在匹配的帧之间存在足够运动时做出另一观察尝试。对所观察的旋转和平移施加阈值的其中一个可选优点在于:在存在图像噪声(例如,相机抖动和传感器噪声)的情况下提高性能。
如上所述,在视觉运动观察中可能包含旋转和/或平移的不确定度。在一些示例性实施方式中,对于确定视觉信息可以被依赖的程度,不确定度信息可能是有用的。例如,和与相对较高的不确定度相关联的视觉观察相比,与相对较低的不确定度相关联的视觉观察可以被显著较重地加权。为此,可以通过各种因素——例如与在块708处提取的当前特征集和/或保存的特征集相关联的不确定度——来确定视觉观察的不确定度。另外,可以通过在块714处得到的匹配的紧密度来确定视觉观察的不确定度。与具有较差匹配的外极匹配相比,具有紧密匹配的外极匹配可以被分配较低的不确定度。
特征集水平处的不确定度可以基于预定不确定水平(例如,基于应用的设计选择和/或假设)、特征的特性以及图像的特性。例如,某些特征与其他特征相比可以提供较高质量的匹配。例如,特定形状与其他形状相比可以较容易地相匹配。例如,与具有仅模糊或低对比度边缘的特征相比,具有明显、高对比度边缘的特征可以与较低不确定度相关联。另外,具有转角的特征可以与较低的不确定度相关联。
特征水平处的不确定度可以被映射到旋转和平移水平(例如视觉观察水平)处的不确定度。例如,可以将不确定度输入到块718的用于将外极域映射到平移和旋转域的函数中。
图8是示出执行统计滤波的图6的方法606的示例性实施方式的流程图。在所示实施方式中,IEKF可以用于跟踪归一化的地毯偏移矢量(NCDV)。NCDV是每平移单位的地毯偏移矢量。NCDV可以是地板表面的属性,并且NCDV可以独立于机器人行进多远和机器人的取向。如下面进一步详细描述的,所示实施方式的IEKF可以用于估计NCDV。例如,IEKF的状态估计x可以与NCDV的估计相对应,并且状态x的协方差可以由P表示。优先于标准EKF使用IEKF的一个可选优点为通过减小由于线性化而引起的误差来提高准确度。本领域技术人员要理解的是,也可以使用其他估计技术。在一种示例性实施方式中,机器人设备100执行存储器304中的估计模块312的指令以用于执行方法606的操作。
因此,方法606始于块802并且转至块803以检索视觉运动观察。例如,可以根据结合图7所描述的方法604来确定视觉观察。视觉运动观察可以包含与所估计出的机器人设备100从时间ti到ti+1的相对姿势Ω有关的信息。姿势可以是指平移、平移方向和/或取向信息。例如,视觉运动观察可以被转化为以下形式:根据测距所估计出的相对姿势Ω和相关联的协方差B;通过图像处理(例如通过图6的块604)所估计出的在地平面中的运动方向θ和相关联的方差r。如果相机坐标系和机器人坐标系不同,则本领域技术人员要理解的是,应当对视觉运动估计和其相关联的协方差施加适当的变换,以使它们处于适当的坐标(例如处于房间坐标)。还给出在ti+1处将状态x旋转到Ω坐标系中的旋转矩阵M形式的所估计出的机器人取向。
在块803处检索到视觉观察数据之后,方法606转至块804以用于基于测距和当前状态估计来估计行进角用公式来表示,可以基于测距和当前状态估计使用以下公式来生成行进角的估计:
h = &Omega; + d &CenterDot; M x ^ (公式7)
&theta; ~ = a r c t a n 2 ( h 1 , h 0 ) (公式8)
J h = - h 1 h 0 | | h | | 2 (公式9)
H = J h BJ h T (公式10)
在公式7中,距离d是基于测距所估计出的在ti到ti+1之间所行进的距离。在公式8中,分量h0和h1是矢量h的分量。
在估计行进角之后,方法606从块804移至块806以用于计算所预测出的角的变化相对于状态的变化的雅可比行列式Jd。例如,在一些实施方式中,雅可比行列式可以被计算为
方法606从块806转至块808以计算新息(innovation)v和新息方差Q。例如,在一些实施方式中,新息v和新息方差Q可以通过以下公式来计算:
v = &theta; - &theta; ~ (公式11)
R=r+H(公式12)
Q = R + J d PJ d T (公式13)
在新息v和新息方差Q变得可用之后,方法606从块806继续进行以通过比较新息v和新息方差Q来选通观察。方法606从块810转至块812以更新新均值例如,新均值可以是用于下一次迭代的均值在一种示例性实施方式中,新均值可以通过以下公式来计算:
v 0 = x - x ^ (公式14)
Y = J d R - 1 J d T (公式15)
b = P - 1 v 0 + J d T R - 1 v (公式16)
x ^ n e x t = x ^ + ( Y + P - 1 ) - 1 b (公式17)
在完成块804至块812的一次迭代之后,方法606转至块814以检查方法是应当继续进行另一迭代还是应当在816处终止。如果迭代完成,则可以设置新状态和方差P=(Y+P-1)-1。IEKF的迭代数可以完全或部分地基于迭代之间的状态差来确定,或者基于固定迭代数来确定。
可以通过在每个时间步处对测距施加NCDV来获得经校正的测距估计。例如,给定姿势Ω的测距变化和所估计出的NCDVx,可以通过Ωc=Ω+d·Mx来估计经校正的姿势的测距变化。如先前所述,量d为根据测距所估计出的行进距离,并且M是将所估计出的NCDVx旋转到Ω坐标系中的旋转矩阵形式的所估计出的机器人取向。
因而,描述了用于估计偏移例如机器人在地毯上移动所经历的地毯偏移和用于补偿这样的地毯偏移的系统和方法。
前面的描述和权利要求可以是指如被“连接”或“耦接”在一起的元件或特征。如在本文中所使用的,除非明确声明,否则“连接”是指一个元件/特征被直接或间接地连接至另一元件/特征,并且不一定是机械连接。同样地,除非明确声明,否则“耦接”是指一个元件/特征被直接或间接地耦接至另一元件/特征,并且不一定是机械耦接。因而,尽管在图中示出的各种示意图描绘了元件和部件的示例性布置,但在实际的实施方式中可以存在另外的中间元件、设备、特征或部件(假定所描绘的电路的功能不会受到不利影响)。
本文所描述的方法和处理可以具有更少或另外的步骤或状态,并且所述步骤或状态可以以不同的顺序执行。并非需要实现所有的步骤或状态。本文所描述的方法和处理可以以由一个或更多个通用和/或专用计算机执行的软件代码模块来实施并且可以经由所述软件代码模块而完全或部分地自动化。代码模块可以存储在任何类型的计算机可读介质或其他计算机存储设备中。所公开的方法的结果可以存储在使用易失性和/或非易失性存储器(例如,磁盘存储装置、光学存储装置、EEPROM和/或固态RAM)的任何类型的计算机数据存储库中。
尽管已经根据某些实施方式描述了本发明,但对于本领域技术人员明显的其他实施方式——包括未提供本文所阐述的所有特征和优点的实施方式——也落入本发明的范围内。此外,上述各种实施方式可以进行组合以提供另外的实施方式。另外,在一个实施方式的上下文中示出的某些特征也可以并入其他实施方式。
发明构思
本发明提供了以下发明构思:
1.一种机器人设备,包括:
本体;
致动器系统,所述致动器系统被配置成使所述本体在表面上移动;
第一组传感器,所述第一组传感器被配置成感测所述致动器系统的致动特性;
第二组传感器,所述第二组传感器被配置成感测所述本体的运动特性,所述第一组传感器是与所述第二组传感器不同类型的传感器;以及
控制器,所述控制器被配置成至少基于由所述第一组传感器感测到的所述致动特性和由所述第二组传感器感测到的所述运动特性来估计地毯偏移。
2.根据发明构思1所述的机器人设备,其中,所述致动器系统包括可旋转的轮子,并且所述第一组传感器被配置成感测所述致动器系统的所述轮子的旋转,并且其中,所述第二组传感器包括被配置成感测所述本体的旋转的陀螺仪传感器。
3.根据发明构思1所述的机器人设备,其中:
所述致动器系统包括可旋转的轮子,并且所述第一组传感器被配置成感测所述致动器系统的所述轮子的旋转,
所述第二组传感器包括被配置成感测所述本体的旋转的陀螺仪传感器,以及
所述控制器还被配置成至少基于根据所感测到的轮子旋转所估计出的航向与根据所感测到的本体旋转所估计出的航向之间的比较来估计地毯偏移。
4.根据发明构思1所述的机器人设备,其中,所述控制器还被配置成控制所述致动器系统执行将所述本体旋转至少约180度的机动动作,并且其中,所述控制器还被配置成至少基于在所述机动动作期间感测到的致动特性与运动特性之间的多个比较来估计所述地毯偏移。
5.根据发明构思4所述的机器人设备,其中,所述控制器还被配置成至少基于在机动动作期间的总偏移与航向变化之比来估计所述地毯偏移的幅度。
6.根据发明构思1所述的机器人设备,其中,所述控制器还被配置成:响应于检测到障碍物,至少基于在机动动作期间感测到的致动特性与运动特性之间的多个比较来更新所估计出的地毯偏移。
7.根据发明构思1所述的机器人设备,其中:
所述致动器系统包括可旋转的轮子,并且所述第一组传感器被配置成感测所述致动器系统的所述轮子的旋转,
所述第二组传感器包括被配置成捕获两个或更多个图像的成像传感器,以及
所述控制器被配置成通过比较所述两个或更多个图像来估计所述运动特性。
8.根据发明构思7所述的机器人设备,其中,所述控制器还被配置成检测所述两个或更多个图像中的每个图像的共同特征,其中,所述控制器还被配置成至少基于比较在所述两个或更多个图像中检测到的所述共同特征的相对位置的变化来估计所述本体的航向。
9.一种机器人设备,包括:
可旋转的左驱动轮和可旋转的右驱动轮;
驱动子系统,所述驱动子系统被配置成利用驱动信号使所述可旋转的左驱动轮和所述可旋转的右驱动轮差动地旋转,使得所述机器人设备在地毯表面上移动;
第一组传感器,所述第一组传感器被配置成生成所述可旋转的左驱动轮和所述可旋转的右驱动轮的旋转的测距测量;
第二组传感器,所述第二组传感器被配置成生成所述机器人设备的航向测量;以及
控制器,所述控制器被配置成生成所述驱动信号使得所述机器人设备执行具有航向角变化的机动动作,其中,所述控制器还被配置成至少基于在所述机动动作期间的航向变化的估计和在所述机动动作期间的所述航向测量的变化来估计地毯偏移,所述航向变化的估计基于在所述机动动作期间的所述测距测量。
10.根据发明构思9所述的机器人设备,其中,所述控制器还被配置成使所述机动动作至少持续到所述航向测量指示至少约180度的航向变化为止,其中,所述控制器还被配置成在所述机动动作期间采集多个测距测量,其中,所述控制器还被配置成在所述机动动作期间采集多个航向测量,并且其中,所述控制器还被配置成至少基于所述多个测距测量与所述多个航向测量之间的比较来估计所述地毯偏移。
11.根据发明构思9所述的机器人设备,其中,所述控制器还被配置成至少部分地响应于遇到障碍物来估计所述地毯偏移。
12.根据发明构思9所述的机器人设备,其中,所述控制器还被配置成响应于自执行先前估计以后行进比阈值距离大的距离来估计所述地毯偏移。
13.根据发明构思9所述的机器人设备,其中,所述控制器还被配置成基于所估计出的地毯偏移来调整所述测距测量。
14.一种机器人设备,包括:
致动器系统,所述致动器系统还被配置成使所述机器人设备在地毯表面上移动;
一组传感器,所述一组传感器被配置成生成致动特性的测量;以及
控制器,所述控制器在通信上耦接至所述一组传感器,其中,所述控制器被配置成基于所述致动特性的测量来生成测距估计,并且其中,所述控制器还被配置成至少基于所述测距估计和视觉运动观察来估计地毯偏移,所述视觉运动观察至少基于由相机捕获的图像中的两个或更多个图像。
15.根据发明构思14所述的机器人设备,还包括所述相机,其中,所述控制器还被配置成至少基于由所述相机捕获的图像中的两个或更多个图像来生成所述机器人设备的所述视觉运动观察。
16.根据发明构思15所述的机器人设备,其中,所述控制器还被配置成:从所述两个或更多个图像提取特征;将从所述两个或更多个图像提取的特征相匹配;以及基于相匹配的特征相对于所述两个或更多个图像的运动来生成所述视觉运动观察。
17.根据发明构思14所述的机器人设备,其中,所述控制器还被配置成响应于所述相匹配的特征的运动与通过所述测距估计预测出的运动之间的差异低于阈值而生成所述视觉运动观察。
18.根据发明构思14所述的机器人设备,其中,所述控制器还被配置成至少基于使用卡尔曼滤波对视觉运动观察进行处理来估计所述地毯偏移。
19.一种移动机器人设备,包括:
第一组传感器,所述第一组传感器被配置成生成测距测量;
第二组传感器,所述第二组传感器被配置成生成所述移动机器人设备的航向测量;
相机,所述相机被配置成捕获图像;以及
控制器,所述控制器在通信上耦接至所述第一组传感器和所述第二组传感器以及所述相机,其中,所述控制器被配置成选择性地以第一模式操作和选择性地以第二模式操作,其中:
当以所述第一模式操作时,所述控制器还被配置成至少基于根据所述测距测量所估计出的航向和由所述第二组传感器生成的所述航向测量来估计地毯偏移;以及
当以所述第二模式操作时,所述控制器还被配置成至少基于由所述相机捕获的图像中的两个或更多个图像来生成所述移动机器人设备的视觉运动观察,并且其中,所述控制器还被配置成至少基于所述测距测量和所述视觉运动观察来估计地毯偏移。
20.根据发明构思19所述的移动机器人设备,还包括差动驱动的驱动轮,其中,所述控制器还被配置成在所述驱动轮的绝对差动旋转大于阈值时以所述第一模式操作。
21.根据发明构思19所述的移动机器人设备,其中,所述控制器还被配置成计算与所述视觉运动观察相关联的不确定度,并且其中,所述控制器还被配置成在所述不确定度低于阈值时以所述第二模式操作。

Claims (15)

1.一种机器人设备,包括:
相机;
致动器系统,所述致动器系统被配置成使所述机器人设备在地毯表面上移动,所述致动器系统包括通过左轨互连的多个左轮以及通过右轨互连的多个右轮;以及
控制器,所述控制器耦接至所述相机,其中,所述控制器被配置成:
从由所述相机捕获的两个或更多个图像提取特征;
将从所述两个或更多个图像提取的特征相匹配;
基于相匹配的所提取的特征相对于所述两个或更多个图像的运动来生成视觉运动观察;
至少基于所述视觉运动观察来估计地毯偏移;
至少基于所述视觉运动观察来生成地毯偏移矢量;
使用所述地毯偏移矢量来生成被配置成补偿所估计出的地毯偏移的命令;以及
将所生成的命令发送至所述致动器系统以补偿所估计出的地毯偏移。
2.根据权利要求1所述的机器人设备,其中,所述控制器还被配置成响应于确定了所述相匹配的特征的运动与通过测距估计预测出的运动之间的差异低于阈值而生成所述视觉运动观察。
3.根据权利要求1所述的机器人设备,其中,所述控制器还被配置成使用卡尔曼滤波处理视觉运动观察来估计所述地毯偏移。
4.根据权利要求1所述的机器人设备,其中,所述视觉运动观察指示所述机器人设备的路径角。
5.根据权利要求1所述的机器人设备,其中,所述机器人设备被配置成使用外极匹配来将从所述两个或更多个图像提取的特征相匹配。
6.根据权利要求1所述的机器人设备,其中,将从所述两个或更多个图像提取的特征相匹配包括平移方向估计和相机旋转估计。
7.根据权利要求1所述的机器人设备,其中,所述特征使用尺度不变特征变换来提取。
8.根据权利要求1所述的机器人设备,还包括真空组件以及包括鬃毛的刷子。
9.一种机器人设备,包括:
成像传感器;
致动器系统,所述致动器系统被配置成使所述机器人设备在表面上移动,所述致动器系统包括通过左轨互连的多个左轮以及通过右轨互连的多个右轮;以及
控制器,所述控制器在通信上耦接至所述成像传感器,其中,所述控制器被配置成:
从由所述成像传感器捕获的两个或更多个图像提取特征;
将从所述两个或更多个图像提取的特征相匹配;
基于相匹配的所提取的特征相对于所述两个或更多个图像的运动来生成视觉运动观察;
至少基于所述视觉运动观察来估计偏移;
至少基于所述视觉运动观察来生成偏移矢量;
使用所述偏移矢量来生成被配置成补偿所估计出的偏移的命令;以及
将所生成的命令发送至所述致动器系统以补偿所估计出的偏移。
10.根据权利要求9所述的机器人设备,其中,所述控制器还被配置成响应于确定了所述相匹配的特征的运动与通过测距估计预测出的运动之间的差异低于阈值而生成所述视觉运动观察。
11.根据权利要求9所述的机器人设备,其中,所述控制器还被配置成使用卡尔曼滤波处理视觉运动观察来估计所述偏移。
12.根据权利要求9所述的机器人设备,其中,所述视觉运动观察指示所述机器人设备的路径角。
13.根据权利要求9所述的机器人设备,其中,所述机器人设备被配置成使用外极匹配来将从所述两个或更多个图像提取的特征相匹配。
14.根据权利要求9所述的机器人设备,其中,将从所述两个或更多个图像提取的特征相匹配包括平移方向估计和成像传感器旋转估计。
15.根据权利要求9所述的机器人设备,还包括本体,所述本体包括弧形边缘。
CN201610094587.6A 2012-06-08 2013-06-07 使用差动传感器或视觉测量的地毯偏移估计 Active CN105717924B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261657399P 2012-06-08 2012-06-08
US61/657,399 2012-06-08
CN201380022811.5A CN104302453B (zh) 2012-06-08 2013-06-07 使用差动传感器或视觉测量的地毯偏移估计

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201380022811.5A Division CN104302453B (zh) 2012-06-08 2013-06-07 使用差动传感器或视觉测量的地毯偏移估计

Publications (2)

Publication Number Publication Date
CN105717924A true CN105717924A (zh) 2016-06-29
CN105717924B CN105717924B (zh) 2018-12-28

Family

ID=49712713

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201380022811.5A Active CN104302453B (zh) 2012-06-08 2013-06-07 使用差动传感器或视觉测量的地毯偏移估计
CN201610094587.6A Active CN105717924B (zh) 2012-06-08 2013-06-07 使用差动传感器或视觉测量的地毯偏移估计

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201380022811.5A Active CN104302453B (zh) 2012-06-08 2013-06-07 使用差动传感器或视觉测量的地毯偏移估计

Country Status (7)

Country Link
US (5) US9223312B2 (zh)
EP (2) EP3910440A1 (zh)
JP (1) JP5913743B2 (zh)
CN (2) CN104302453B (zh)
AU (2) AU2013270671B2 (zh)
CA (2) CA2948519C (zh)
WO (1) WO2013185102A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109358623A (zh) * 2018-10-23 2019-02-19 珠海市微半导体有限公司 一种机器人运动地毯偏移的识别方法、芯片及清洁机器人
CN109394095A (zh) * 2018-10-23 2019-03-01 珠海市微半导体有限公司 一种机器人运动地毯偏移的控制方法、芯片及清洁机器人
CN109506652A (zh) * 2018-10-23 2019-03-22 珠海市微半导体有限公司 一种基于地毯偏移的光流数据融合方法及清洁机器人
CN112004646A (zh) * 2018-08-14 2020-11-27 拜克门寇尔特公司 用于机器人的主动运动位移控制的系统
CN112219088A (zh) * 2018-05-31 2021-01-12 室内机器人有限公司 对区域绘制地图的可旋转可移动机器人和对区域绘制地图的方法

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9223312B2 (en) 2012-06-08 2015-12-29 Irobot Corporation Carpet drift estimation using differential sensors or visual measurements
US9259838B1 (en) * 2014-07-24 2016-02-16 Google Inc. Systems and methods for ground plane estimation
US9969337B2 (en) * 2014-09-03 2018-05-15 Sharp Laboratories Of America, Inc. Methods and systems for mobile-agent navigation
US10339389B2 (en) 2014-09-03 2019-07-02 Sharp Laboratories Of America, Inc. Methods and systems for vision-based motion estimation
US11099554B2 (en) 2015-04-17 2021-08-24 Aktiebolaget Electrolux Robotic cleaning device and a method of controlling the robotic cleaning device
CN104924312A (zh) * 2015-06-29 2015-09-23 深圳市百睿德科技有限公司 一种多功能自动巡逻安防机器人
JP2017038894A (ja) * 2015-08-23 2017-02-23 日本電産コパル株式会社 掃除ロボット
KR102588486B1 (ko) 2016-03-15 2023-10-11 에이비 엘렉트로룩스 로봇 청소 장치 및 로봇 청소 장치에서의 절벽 검출 실시 방법
US11172608B2 (en) 2016-06-30 2021-11-16 Tti (Macao Commercial Offshore) Limited Autonomous lawn mower and a system for navigating thereof
WO2018000922A1 (en) 2016-06-30 2018-01-04 Tti (Macao Commercial Offshore) Limited An autonomous lawn mower and a system for navigating thereof
US11216006B2 (en) * 2016-07-20 2022-01-04 Singapore University Of Technology And Design Robot and method for localizing a robot
US10732127B2 (en) * 2016-10-26 2020-08-04 Pixart Imaging Inc. Dirtiness level determining system and surface cleaning machine
CN110366381A (zh) * 2017-03-15 2019-10-22 伊莱克斯公司 机器人清洁设备的车轮滑移判断
JP7243967B2 (ja) 2017-06-02 2023-03-22 アクチエボラゲット エレクトロルックス ロボット清掃デバイスの前方の表面のレベル差を検出する方法
US10612929B2 (en) * 2017-10-17 2020-04-07 AI Incorporated Discovering and plotting the boundary of an enclosure
US11926038B2 (en) * 2018-01-10 2024-03-12 Sony Corporation Information processing apparatus and information processing method
US11525921B2 (en) 2018-04-03 2022-12-13 Sharkninja Operating Llc Time of flight sensor arrangement for robot navigation and methods of localization using same
CN112352244B (zh) 2018-04-23 2024-04-09 尚科宁家运营有限公司 控制系统和更新存储器中的地图的方法
CN108927805B (zh) * 2018-07-25 2021-04-20 哈尔滨工业大学 一种基于视觉补偿的机器人自动化插钉方法
EP3829824A4 (en) 2018-08-01 2022-06-15 SharkNinja Operating LLC ROBOTIC VACUUM CLEANER
CN109048899A (zh) * 2018-08-15 2018-12-21 深圳市烽焌信息科技有限公司 一种巡逻机器人及存储介质
CN111060129A (zh) * 2018-10-17 2020-04-24 郑州雷动智能技术有限公司 一种智能机器人判定地毯的方法
JP2022078372A (ja) * 2019-03-27 2022-05-25 パナソニックIpマネジメント株式会社 移動作業ロボット制御装置
US11185987B2 (en) 2019-04-26 2021-11-30 Invia Robotics, Inc. Isolated and environmental anomaly detection and correction using a distributed set of robots
CN111862321B (zh) * 2019-04-30 2024-05-03 北京四维图新科技股份有限公司 视差图的获取方法、装置、系统及存储介质
JP7407421B2 (ja) * 2019-08-09 2024-01-04 パナソニックIpマネジメント株式会社 移動ロボット、制御方法、及び制御プログラム
JP7429902B2 (ja) * 2019-08-21 2024-02-09 パナソニックIpマネジメント株式会社 自走式ロボット
DE102020006337A1 (de) * 2019-10-09 2021-04-15 Metralabs Gmbh Neue Technologien Und Systeme Autonomes Flurförderzeug
US11685049B2 (en) 2020-04-22 2023-06-27 Boston Dynamics, Inc. Robot localization using variance sampling
CN112008728B (zh) * 2020-09-01 2022-07-08 天津大学 基于选择性扰动补偿的全向移动机器人轨迹跟踪控制方法
CN113910267A (zh) * 2021-08-30 2022-01-11 淄博师范高等专科学校 一种机器人系统及控制方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1401289A (zh) * 2001-08-07 2003-03-12 三星光州电子株式会社 自动清洁器及其系统和控制方法
CN1586693A (zh) * 2004-08-13 2005-03-02 刘茂龙 智能玩具机器人
US20060293809A1 (en) * 2005-06-28 2006-12-28 Harwig Jeffrey L Methods to prevent wheel slip in an autonomous floor cleaner
EP2243412A2 (en) * 2009-04-22 2010-10-27 Yujin Robot Co., Ltd. Robot cleaner
WO2011052827A1 (ko) * 2009-10-30 2011-05-05 주식회사 유진로봇 이동 로봇의 슬립 감지 장치 및 방법
US20110125323A1 (en) * 2009-11-06 2011-05-26 Evolution Robotics, Inc. Localization by learning of wave-signal distributions

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6084610A (ja) 1983-10-17 1985-05-14 Hitachi Ltd 誘導装置
JPS61134805A (ja) * 1984-12-05 1986-06-21 Mitsubishi Heavy Ind Ltd 歩行機械の制御方法
US4815840A (en) 1986-05-16 1989-03-28 Benayad Cherif Faycal E K Position locating system for a vehicle
JP2691714B2 (ja) 1987-08-26 1997-12-17 東芝ケミカル株式会社 多層配線板の製造方法
US5109425A (en) 1988-09-30 1992-04-28 The United States Of America As Represented By The United States National Aeronautics And Space Administration Method and apparatus for predicting the direction of movement in machine vision
US5144685A (en) 1989-03-31 1992-09-01 Honeywell Inc. Landmark recognition for autonomous mobile robots
JPH03227710A (ja) 1990-01-31 1991-10-08 Nissan Motor Co Ltd 車両用荷重測定装置
US5111401A (en) 1990-05-19 1992-05-05 The United States Of America As Represented By The Secretary Of The Navy Navigational control system for an autonomous vehicle
JPH04263821A (ja) 1991-02-20 1992-09-18 Matsushita Electric Ind Co Ltd 自走式掃除機
JP3227710B2 (ja) * 1991-04-11 2001-11-12 松下電器産業株式会社 移動作業ロボット
JP3003260B2 (ja) 1991-05-14 2000-01-24 松下電器産業株式会社 じゅうたん目検出装置とこれを有する移動作業ロボット
JP3191334B2 (ja) 1991-09-03 2001-07-23 松下電器産業株式会社 移動作業ロボット
US5638116A (en) 1993-09-08 1997-06-10 Sumitomo Electric Industries, Ltd. Object recognition apparatus and method
JP3314477B2 (ja) * 1993-09-22 2002-08-12 松下電器産業株式会社 移動作業ロボット
JP3555159B2 (ja) 1994-03-02 2004-08-18 日本電気株式会社 3次元形状復元方法および装置
EP0779998B1 (de) 1994-09-06 1998-03-25 Siemens Aktiengesellschaft Verfahren zur bestimmung der position einer landmarke in der umgebungskarte einer selbstbeweglichen einheit, deren abstand zur einheit dynamisch von dieser ermittelt wird
JPH0895638A (ja) * 1994-09-28 1996-04-12 East Japan Railway Co 移動作業ロボットの走行制御装置
IT1271241B (it) 1994-10-04 1997-05-27 Consorzio Telerobot Sistema di navigazione per robot mobile autonomo
US5961571A (en) 1994-12-27 1999-10-05 Siemens Corporated Research, Inc Method and apparatus for automatically tracking the location of vehicles
JP3395874B2 (ja) 1996-08-12 2003-04-14 ミノルタ株式会社 移動走行車
US5999866A (en) 1996-11-05 1999-12-07 Carnegie Mellon University Infrastructure independent position determining system
US6047234A (en) 1997-10-16 2000-04-04 Navigation Technologies Corporation System and method for updating, enhancing or refining a geographic database using feedback
US6463368B1 (en) 1998-08-10 2002-10-08 Siemens Aktiengesellschaft Method and device for determining a path around a defined reference position
US6412133B1 (en) 1999-01-25 2002-07-02 Aqua Products, Inc. Water jet reversing propulsion and directional controls for automated swimming pool cleaners
US6711293B1 (en) 1999-03-08 2004-03-23 The University Of British Columbia Method and apparatus for identifying scale invariant features in an image and use of same for locating an object in an image
US6299699B1 (en) 1999-04-01 2001-10-09 Aqua Products Inc. Pool cleaner directional control method and apparatus
AU1775401A (en) 1999-11-18 2001-05-30 Procter & Gamble Company, The Home cleaning robot
CN1343551A (zh) * 2000-09-21 2002-04-10 上海大学 机器视觉分层模块结构模型
US6496754B2 (en) 2000-11-17 2002-12-17 Samsung Kwangju Electronics Co., Ltd. Mobile robot and course adjusting method thereof
US6996254B2 (en) 2001-06-18 2006-02-07 Microsoft Corporation Incremental motion estimation through local bundle adjustment
US6667592B2 (en) 2001-08-13 2003-12-23 Intellibot, L.L.C. Mapped robot system
US6766245B2 (en) 2002-03-14 2004-07-20 Microsoft Corporation Landmark-based location of users
US6836701B2 (en) 2002-05-10 2004-12-28 Royal Appliance Mfg. Co. Autonomous multi-platform robotic system
US6922632B2 (en) 2002-08-09 2005-07-26 Intersense, Inc. Tracking, auto-calibration, and map-building system
US7177737B2 (en) 2002-12-17 2007-02-13 Evolution Robotics, Inc. Systems and methods for correction of drift via global localization with a visual landmark
US7133746B2 (en) 2003-07-11 2006-11-07 F Robotics Acquistions, Ltd. Autonomous machine for docking with a docking station and method for docking
JP2005141636A (ja) 2003-11-10 2005-06-02 Matsushita Electric Ind Co Ltd 自律走行装置
JP2005222226A (ja) * 2004-02-04 2005-08-18 Funai Electric Co Ltd 自律走行ロボットクリーナー
US7689321B2 (en) 2004-02-13 2010-03-30 Evolution Robotics, Inc. Robust sensor fusion for mapping and localization in a simultaneous localization and mapping (SLAM) system
US7720554B2 (en) 2004-03-29 2010-05-18 Evolution Robotics, Inc. Methods and apparatus for position estimation using reflected light sources
US7617557B2 (en) * 2004-04-02 2009-11-17 Royal Appliance Mfg. Co. Powered cleaning appliance
KR20050108923A (ko) * 2004-05-14 2005-11-17 삼성광주전자 주식회사 모빌로봇, 모빌로봇 시스템, 및 그 경로보정방법
JP2005346477A (ja) * 2004-06-03 2005-12-15 Toshiba Tec Corp 自律走行体
DE102004029627A1 (de) * 2004-06-18 2006-01-12 Diehl Bgt Defence Gmbh & Co. Kg Fernsteuerbarer Funktionsträger
KR100792514B1 (ko) 2005-01-14 2008-01-10 삼성전자주식회사 이동물체의 방향검출방법 및 시스템
KR101240732B1 (ko) 2005-02-18 2013-03-07 아이로보트 코퍼레이션 습식 및 건식 청소를 위한 자동 표면 청소 로봇
JP2006313455A (ja) * 2005-05-09 2006-11-16 Funai Electric Co Ltd 自走式掃除ロボット、自走式ロボットおよび自走式ロボットの走行を制御するためのプログラム
EP2065774B1 (en) 2005-12-02 2013-10-23 iRobot Corporation Autonomous coverage robot navigation system
US7539557B2 (en) 2005-12-30 2009-05-26 Irobot Corporation Autonomous mobile robot
JP4195894B2 (ja) 2006-03-30 2008-12-17 株式会社東芝 ドッキングシステム
US20070271011A1 (en) 2006-05-12 2007-11-22 Samsung Electronics Co., Ltd. Indoor map building apparatus, method, and medium for mobile robot
US8340349B2 (en) * 2006-06-20 2012-12-25 Sri International Moving target detection in the presence of parallax
EP2041516A2 (en) 2006-06-22 2009-04-01 Roy Sandberg Method and apparatus for robotic path planning, selection, and visualization
JP5112666B2 (ja) 2006-09-11 2013-01-09 株式会社日立製作所 移動装置
JP2009025898A (ja) 2007-07-17 2009-02-05 Toyota Motor Corp 経路計画装置、経路計画方法及び移動体
US8632376B2 (en) 2007-09-20 2014-01-21 Irobot Corporation Robotic game systems and methods
KR101402273B1 (ko) 2007-12-14 2014-06-02 삼성전자주식회사 이동 로봇의 슬립 감지 장치 및 방법
JP2009186213A (ja) 2008-02-04 2009-08-20 Denso Corp ジャイロセンサユニット
WO2009132317A1 (en) 2008-04-24 2009-10-29 Evolution Robotics Application of localization, positioning & navigation systems for robotic enabled mobile products
JP2010167055A (ja) * 2009-01-22 2010-08-05 Panasonic Corp 自走式掃除機
KR20110021191A (ko) * 2009-08-25 2011-03-04 삼성전자주식회사 로봇의 슬립 감지 장치 및 방법
KR101083394B1 (ko) 2009-10-30 2011-11-14 주식회사 유진로봇 이동 로봇의 위치 인식을 위한 지도 생성 및 갱신 방법
EP2619742B1 (en) * 2010-09-24 2018-02-28 iRobot Corporation Systems and methods for vslam optimization
US9223312B2 (en) 2012-06-08 2015-12-29 Irobot Corporation Carpet drift estimation using differential sensors or visual measurements

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1401289A (zh) * 2001-08-07 2003-03-12 三星光州电子株式会社 自动清洁器及其系统和控制方法
CN1586693A (zh) * 2004-08-13 2005-03-02 刘茂龙 智能玩具机器人
US20060293809A1 (en) * 2005-06-28 2006-12-28 Harwig Jeffrey L Methods to prevent wheel slip in an autonomous floor cleaner
EP2243412A2 (en) * 2009-04-22 2010-10-27 Yujin Robot Co., Ltd. Robot cleaner
WO2011052827A1 (ko) * 2009-10-30 2011-05-05 주식회사 유진로봇 이동 로봇의 슬립 감지 장치 및 방법
US20110125323A1 (en) * 2009-11-06 2011-05-26 Evolution Robotics, Inc. Localization by learning of wave-signal distributions

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112219088A (zh) * 2018-05-31 2021-01-12 室内机器人有限公司 对区域绘制地图的可旋转可移动机器人和对区域绘制地图的方法
CN112004646A (zh) * 2018-08-14 2020-11-27 拜克门寇尔特公司 用于机器人的主动运动位移控制的系统
CN109358623A (zh) * 2018-10-23 2019-02-19 珠海市微半导体有限公司 一种机器人运动地毯偏移的识别方法、芯片及清洁机器人
CN109394095A (zh) * 2018-10-23 2019-03-01 珠海市微半导体有限公司 一种机器人运动地毯偏移的控制方法、芯片及清洁机器人
CN109506652A (zh) * 2018-10-23 2019-03-22 珠海市微半导体有限公司 一种基于地毯偏移的光流数据融合方法及清洁机器人
KR20210084526A (ko) * 2018-10-23 2021-07-07 아미크로 세미컨덕터 씨오., 엘티디. 로봇 운동시 카펫으로 인한 드리프트 제어방법, 칩 및 청소 로봇
KR102502219B1 (ko) 2018-10-23 2023-02-21 아미크로 세미컨덕터 씨오., 엘티디. 로봇 운동시 카펫으로 인한 드리프트 제어방법, 칩 및 청소 로봇
US11918175B2 (en) 2018-10-23 2024-03-05 Amicro Semiconductor Co., Ltd. Control method for carpet drift in robot motion, chip, and cleaning robot

Also Published As

Publication number Publication date
CN104302453B (zh) 2016-07-06
WO2013185102A1 (en) 2013-12-12
EP2858794A4 (en) 2016-04-20
US20180297208A1 (en) 2018-10-18
US9427875B2 (en) 2016-08-30
CA2948519A1 (en) 2013-12-12
AU2016213846A1 (en) 2016-09-01
JP5913743B2 (ja) 2016-04-27
US20160332304A1 (en) 2016-11-17
US11926066B2 (en) 2024-03-12
AU2013270671A1 (en) 2014-10-30
US9969089B2 (en) 2018-05-15
CA2870175C (en) 2017-01-03
EP2858794B1 (en) 2021-04-14
CN105717924B (zh) 2018-12-28
JP2015521760A (ja) 2015-07-30
US10974391B2 (en) 2021-04-13
EP3910440A1 (en) 2021-11-17
US20160075032A1 (en) 2016-03-17
EP2858794A1 (en) 2015-04-15
CN104302453A (zh) 2015-01-21
EP2858794B2 (en) 2024-02-28
AU2013270671B2 (en) 2016-05-26
US9223312B2 (en) 2015-12-29
CA2948519C (en) 2019-05-28
US20130331988A1 (en) 2013-12-12
US20210221003A1 (en) 2021-07-22
AU2016213846B2 (en) 2017-01-05
CA2870175A1 (en) 2013-12-12

Similar Documents

Publication Publication Date Title
CN104302453B (zh) 使用差动传感器或视觉测量的地毯偏移估计
CN109394095B (zh) 一种机器人运动地毯偏移的控制方法、芯片及清洁机器人
US9037396B2 (en) Simultaneous localization and mapping for a mobile robot
CN102666032B (zh) 用于移动机器人的滑动检测装置和方法
CN109358623A (zh) 一种机器人运动地毯偏移的识别方法、芯片及清洁机器人
CN109506652A (zh) 一种基于地毯偏移的光流数据融合方法及清洁机器人
Wooden A guide to vision-based map building
WO2023273311A1 (en) Method and apparatus for scale calibration and optimization of a monocular visual-inertial localization system
KR20050010591A (ko) 청소로봇의 청소경로 제어방법
CN112697153A (zh) 自主移动设备的定位方法、电子设备及存储介质
WO2023273310A1 (en) Method and apparatus for optimization of a monocular visual-inertial localization system
Zabaleta et al. Absolute position calculation for a desktop mobile rehabilitation robot based on three optical mouse sensors
Veerannapeta Low Power Indoor Robotic Vacuum Cleaner Using Sensors and SLAM
Kim et al. A sensor fusion method to solve the scale ambiguity of single image by combining IMU
Brahmanage Geometric Feature Based Rao-Blackwellized Particle Filter SLAM Using RGB-D Depth Images
CN117784125A (zh) 机器人的定位方法、机器人及存储介质
Schärer et al. Keystone rescue techniques

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant