CN106541407B - 清洁机器人及其控制方法 - Google Patents

清洁机器人及其控制方法 Download PDF

Info

Publication number
CN106541407B
CN106541407B CN201610773063.XA CN201610773063A CN106541407B CN 106541407 B CN106541407 B CN 106541407B CN 201610773063 A CN201610773063 A CN 201610773063A CN 106541407 B CN106541407 B CN 106541407B
Authority
CN
China
Prior art keywords
cleaning robot
local map
map
sensor data
current position
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.)
Expired - Fee Related
Application number
CN201610773063.XA
Other languages
English (en)
Other versions
CN106541407A (zh
Inventor
朴舜镛
郭鲁山
卢庆植
尹硕浚
李素姬
崔珉镕
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 KR1020150132274A external-priority patent/KR102386361B1/ko
Priority claimed from KR1020150148434A external-priority patent/KR102471487B1/ko
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN106541407A publication Critical patent/CN106541407A/zh
Application granted granted Critical
Publication of CN106541407B publication Critical patent/CN106541407B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • 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
    • 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
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Mechanical Engineering (AREA)
  • Electromagnetism (AREA)
  • Optics & Photonics (AREA)
  • Robotics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Evolutionary Computation (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

提供一种清洁机器人及其控制方法,所述清洁机器人包括:数据获取单元,通过测量从当前位置到将要测量的对象的距离来获取实际的传感器数据;局部地图获取单元,基于预先储存的环境地图通过对当前位置的周围区域进行扫描来获取局部地图;处理器,通过执行局部地图与实际的传感器数据之间的匹配来确定当前位置针对局部地图的坐标,并且通过计算局部地图中存在的线段的主线段角来确定基于当前位置的行进方向。

Description

清洁机器人及其控制方法
技术领域
本公开的实施例涉及一种用于定位清洁机器人的设备、清洁机器人及其控制方法。
背景技术
清洁机器人是这样的设备:即使在没有用户的操作下,也能够在将要清洁的区域行进的同时自主地从地板清扫诸如灰尘的杂物,并且在根据预先设置的行进图案行进的同时执行清洁操作。此外,清洁机器人使用传感器来确定距障碍物(例如,清洁区域中安装的家具、墙壁、家电等)的距离,并且通过选择性地驱动左电机和右电机来自主地转换方向。
为了使上述清洁机器人在各种清洁环境中执行平稳的清洁操作,准确地确定清洁机器人的位置是重要的。清洁机器人的位置的确定按照这样的方式来实现:使用通过操作清洁机器人的环境地图和传感器测量的数据来估计清洁机器人的当前位置。
最常用作使用地图来确定位置的方法的技术是基于粒子滤波器的蒙特卡罗定位(在下文中,被表示为“MCL”)方法。在MCL方法中,粒子滤波器被实现为确定清洁机器人的位置,在地图上对指示在预定区域内的清洁机器人的虚拟位置的粒子进行随机抽样(随机取样),清洁机器人在沿任意方向运动预定距离的同时重复地执行用于使粒子聚集的操作。通过这个过程,粒子可最后聚集在一个位置,并且聚集的位置可被认为是清洁机器人的当前位置。
然而,当使用的粒子的数量少时,这样的定位方法可能不能定位清洁机器人,当粒子的数量多时,用于定位的计算时间增长。此外,清洁机器人会无意义地沿任意方向运动预定距离以将粒子聚集在一个位置,这明显是低效率的。
此外,假设清洁机器人被放置为倾斜地靠在墙壁表面,在保持清洁机器人位于最初所在的方向的同时,当清洁机器人开始清洁时,会产生低效率的行进路线,使得会错过很多清洁的区域。
因此,需要准确地确定清洁机器人的行进方向,以使清洁机器人可在清洁空间的全部区域行进。
发明内容
因此,本公开的一方面提供一种用于定位清洁机器人的设备、清洁机器人及其控制方法,当清洁机器人通过用户运动到任意位置时,在没有不必要的运动的情况下,所述清洁机器人可在原地快速且准确地识别清洁机器人的当前位置,并且使用清洁机器人执行清洁操作的环境地图以及清洁机器人在地图上的位置来确定清洁机器人的行进方向。
本公开的其它方面将在下面的描述中进行部分地阐述,部分将通过描述而明显,或者可通过本公开的实践而了解。
根据本公开的一方面,一种清洁机器人包括:数据获取单元,通过测量从当前位置到将要测量的对象的距离来获取实际的传感器数据;局部地图获取单元,基于预先储存的环境地图通过对当前位置的周围区域进行扫描来获取局部地图;处理器,通过执行局部地图与实际的传感器数据之间的匹配来确定当前位置针对局部地图的坐标,并且通过计算局部地图中存在的线段的主线段角来确定基于当前位置的行进方向。
处理器可通过根据角度将局部地图中存在的多条直线分类来确定主线段角。
处理器可根据基于当前位置的坐标确定的行进方向使清洁机器人原地转向行进方向。
数据获取单元可获取清洁机器人在停止状态下的实际的传感器数据,获取在清洁机器人以预定角原地旋转时的实际的传感器数据,或者获取在清洁机器人以360度的角原地旋转时针对所有方向的实际的传感器数据。
局部地图获取单元可通过在使清洁机器人在针对清洁机器人的当前位置选择的虚拟的传感器数据提取位置以360度的角旋转的同时对所有方向执行射线投射方法来提取虚拟的传感器数据,从而获取局部地图。
局部地图获取单元可从环境地图提取相对于针对清洁机器人的当前位置选择的多个局部地图提取位置中的每个具有预定尺寸的局部地图。
处理器还可包括:位置估计单元,确定清洁机器人针对局部地图的当前位置坐标;线段角计算单元,计算局部地图中存在的线段的主线段角;方向调节单元,根据主线段角使清洁机器人在当前位置转向行进方向。
位置估计单元还可包括:对应点获取单元,通过实际的传感器数据与局部地图之间的数据匹配来获取多个对应点;相对位置计算单元,使用获取的多个对应点来计算实际的传感器数据针对局部地图的相对位置;相似度计算单元,计算多个局部地图与实际的传感器数据之间的相似度;位置确定单元,将清洁机器人针对局部地图具有最高相似度的相对位置确定为清洁机器人针对环境地图的当前位置,从而确定当前位置坐标。
随着局部地图和实际的传感器数据中共同包括的数据点的数量越多,相似度计算单元可获得的相似度越高。
线段角计算单元还可包括:直线获取单元,从局部地图获取多条直线;主线段角计算单元,根据角度将所述多条直线分类并且确定主线段角。
清洁机器人还可包括测量距离的传感器,其中,数据获取单元通过使用传感器测量从传感器到将要测量的对象的距离来获取实际的传感器数据。
根据本公开的一个方面,一种清洁机器人的控制方法包括:通过对当前位置的周围区域进行扫描来获取局部地图;通过测量从当前位置到将要测量的对象的距离来获取实际的传感器数据;通过执行局部地图与实际的传感器数据之间的匹配来确定针对局部地图的当前位置坐标;通过计算局部地图中存在的线段的主线段角来确定行进方向;根据计算的主线段角来调节行进方向。
获取局部地图的步骤可包括基于预先存储的清洁机器人行进的环境地图通过对当前位置的周围区域进行扫描来获取局部地图。
获取局部地图的步骤还可包括:在使清洁机器人在针对清洁机器人的当前位置选择的虚拟的传感器数据提取位置以360度的角旋转的同时,通过针对所有方向执行射线投射方法来提取虚拟的传感器数据,从而获取局部地图,或者从环境地图提取相对于针对清洁机器人的当前位置选择的多个局部地图提取位置中的每个具有预定尺寸的局部地图。
确定当前位置坐标的步骤还可包括:通过实际的传感器数据与局部地图之间的数据匹配来获取多个对应点;使用获取的多个对应点来计算实际的传感器数据距局部地图的相对位置;计算多个局部地图与实际的传感器数据之间的相似度;将清洁机器人对局部地图具有最高相似度的相对位置确定为清洁机器人针对环境地图的当前位置。
计算相似度的步骤可包括:随着局部地图和实际的传感器数据中共同包括的数据点的数量越多,确定获得的相似度越高。
确定行进方向的步骤还可包括:从局部地图获取多条直线;通过根据角度将所述多条直线分类来计算主线段角。
计算主线段角的步骤还可包括:通过根据角度将所述多条直线分类来产生角度直方图,并且根据角度直方图的分布来确定主线段角。
根据本公开的一个方面,一种用于清洁机器人的定位设备,所述定位设备对通过用户而运动到任意位置的清洁机器人的位置进行识别,所述定位设备包括:数据获取单元,通过在任意位置测量从安装在清洁机器人中的传感器到将要测量的对象的距离来获取实际的传感器数据;局部地图获取单元,基于操作清洁机器人的环境的地图信息通过对任意位置的周围区域进行扫描来获取局部地图;处理器,通过执行局部地图与实际的传感器数据之间的匹配来识别清洁机器人针对局部地图的相对位置。
用于清洁机器人的定位设备还可包括:显示单元,显示用于通知完成了清洁机器人的定位的信息;声音输出单元,通知清洁机器人的定位完成。
附图说明
通过下面结合附图对实施例进行的描述,这些和/或其它方面将变得清楚,并且更易于理解,在附图中:
图1是示出根据本公开的实施例的清洁机器人系统的整体构造的示图。
图2是示出根据本公开的实施例的清洁机器人的外观的示意图。
图3是示出根据本公开的实施例的清洁机器人的组件的控制框图。
图4是示出根据本公开的实施例的清洁机器人被驱动的环境地图的示图。
图5是示出根据本公开的实施例的清洁机器人的当前位置的虚拟的传感器数据的提取位置的示图。
图6是示出计算图5的虚拟的传感器数据的提取位置的方法的示图。
图7是示出根据本公开的实施例的射线投射方法的示例的示图。
图8是示出使用图7的射线投射方法提取的虚拟的传感器数据的示例的示图。
图9是示出从根据本公开的实施例的清洁机器人的当前位置提取的小局部地图的位置的示图。
图10是示出使用小的局部地图提取位置提取的小局部地图的示例的示图。
图11是详细地示出图3的处理器的控制框图。
图12是详细地示出图11的位置估计单元的控制框图。
图13是示出根据本公开的实施例的通过清洁机器人获取的实际的传感器数据的示例的示图。
图14是示出根据本公开的实施例的通过清洁机器人获取的虚拟的的传感器数据的示例的示图。
图15是根据本公开的实施例的用于解释计算实际的传感器数据针对局部地图的相对位置的方法的示图。
图16是示出根据本公开的实施例的局部地图被扩大的状态的示图。
图17和图18是根据本公开的实施例的用于解释实际的传感器数据适用于局部地图的状态的示图。
图19是详细地示出图5的线段角计算单元的示图。
图20和图21是根据角度通过将经由边缘局部地图获取的直线分类而产生的角度直方图。
图22和图23是用于解释确定清洁机器人的行进方向的方法的示图。
图24是示出根据本公开的实施例的清洁机器人的控制方法的流程图。
图25是示出估计图24的清洁机器人的当前位置的方法的流程图。
图26是示出提取图24的线段角的方法的流程图。
图27是示出根据本公开的实施例的用于清洁机器人的定位设备的组件的控制框图。
具体实施方式
通过参照下面参照附图详细描述的示例性实施例,本发明及其实现方法的优点和特点将变得清楚。在整个附图中,在针对组件增加标号时,将注意的是,同样的标号指示同样的组件,即使组件在不同的附图中示出也是如此。此外,当确定与本发明有关的已知领域的详细描述会使本发明的主旨模糊时,将省略其详细的描述。在本说明书中,诸如第一、第二等的术语用于将一个组件与其它组件进行区分,因此,组件不局限于上述术语。
在下文中,将参照附图详细描述本公开的优选实施例。
图1是示出根据本公开的实施例的清洁机器人系统的整体构造的示图。
参照图1,清洁机器人系统1包括:清洁机器人100,在预定的区域内自主地运动的同时执行操作;装置200,与清洁机器人100分开,并且远程地控制清洁机器人100;充电站300,与清洁机器人100分开,并且对清洁机器人100的电池电源进行充电。
清洁机器人100是接收装置200的控制命令并且执行与控制命令对应的操作的设备,并且包括可充电电池和障碍物传感器,其中,障碍物传感器用于帮助清洁机器人在行进过程中避开障碍物,以使清洁机器人可在作业区域自主地行进的同时执行清洁操作。
此外,清洁机器人100可在没有关于清洁机器人100的周围区域的先验信息的情况下使用相机或各种传感器来识别它自身的位置,并且执行用于定位以及从利用环境的信息创建地图的地图构建的操作。
装置200是控制清洁机器人100的运动或者以无线的方式发送用于执行清洁机器人100的操作的控制指令的远程控制器,并且可包括移动电话、智能电话、个人数字助理(PDA)、便携式多媒体播放器(PMP)、笔记本电脑、数字广播终端、上网本、平板电脑、导航等。
此外,装置200包括可使用各种应用程序来实现各种功能的所有装置,例如,具有内置有线和无线通信功能的数码相机或摄像机。
此外,装置200可以是简单型普通远程控制器。远程控制器可通常使用由红外数据协会(IrDA)提出的IrDA通信技术将信号发送到清洁机器人100,并且从清洁机器人100接收信号。
此外,装置200可使用诸如射频(RF)、无线保真(Wi-Fi)、蓝牙、Zigbee、近场通信(NFC)、超宽带(UWB)通信等各种方法将无线通信信号发送到清洁机器人100并且从清洁机器人100接收无线通信信号,可使用任何方法,只要装置200可将无线通信信号发送到清洁机器人100并且从清洁机器人100接收无线通信信号即可。
此外,装置200可包括:电源按钮,用于控制清洁机器人100的电源的打开和关闭;充电返回按钮,用于指示清洁机器人100返回到充电站300,以对清洁机器人100的电池进行充电;模式按钮,用于改变清洁机器人100的控制模式;开始和停止按钮,用于开始或停止清洁机器人100的操作或者开始、取消和确认控制命令、拨号等。
充电站300是用于对清洁机器人100的电池进行充电的组件,用于引导清洁机器人100停靠的导向构件(未示出)设置在充电站300中,用于对设置在清洁机器人100中的电源单元(130,见图2)进行充电的连接端子(未示出)设置在导向构件(未示出)中。
图2是示出根据本公开的实施例的清洁机器人的外观的示意图。
如图2所示,清洁机器人100包括:主体110,形成外观;盖子120,覆盖主体110的上部;电源单元130,施加用于驱动主体110的驱动电源;驱动单元140,使主体110运动。
主体110形成清洁机器人100的外观,并且支撑安装在清洁机器人100中的各种组件。
电源单元130包括电连接到驱动单元140和用于驱动主体110的每个负载的电池,并且供应驱动电源。电池被设置为可再充电二次电池,并且当主体110完成操作然后结合到充电站300时,通过从充电站300接收供应的电力来充电。
此外,当剩余的电量不足时,电源单元130通过从充电站300接收供应的充电电流来充电。
此外,脚轮(未示出)可安装在主体110的前侧,清洁机器人100的旋转角通过脚轮根据清洁机器人100在其上运动的底表面的状态来改变。脚轮用于清洁机器人100的姿态稳定和防跌倒以支撑清洁机器人100,并且由滚轮或脚轮形状的轮子构成。
驱动单元140可分别设置在主体110的中部的两侧,并且在主体110行进的过程中使诸如向前运动、向后运动和旋转等的运动操作可行。
驱动单元140可根据稍后将描述的处理器(180,见图3)的命令沿向前的方向或向后的方向旋转,以使清洁机器人100可向前或向后运动或者旋转。例如,清洁机器人100可通过使驱动单元140沿向前的方向或向后的方向旋转来向前或向后行进。此外,清洁机器人100可通过使左驱动单元140沿向后的方向旋转的同时使右驱动单元140沿向前的方向旋转而基于前部沿左方向旋转,并且通过使右驱动单元140沿向后的方向旋转的同时使左驱动单元140沿向前的方向旋转而基于前部沿右方向旋转。
图3是示出根据本公开的实施例的清洁机器人的组件的控制框图。
如图3所示,除了图2中示出的组件之外,清洁机器人100还可包括数据获取单元151、传感器152、局部地图获取单元153、存储器160、输入单元171、显示单元173、声音输出单元175和处理器180。
数据获取单元151是获取清洁机器人100当前所在的空间的实际的传感器数据的组件,并且可通过测量清洁机器人100的当前位置与将要测量的对象之间的距离来获取实际的传感器数据。
更具体地讲,清洁机器人100可包括用于测量距离的传感器152,并且可根据安装在清洁机器人100中的二维(2D)传感器或三维(3D)传感器的扫描通过测量从传感器152到将要测量的对象的距离来获取清洁机器人100所在的真实环境的实际的传感器数据。传感器152可以是2D传感器或3D传感器。
此时,2D传感器可基于传感器的参考坐标系将距将要测量的对象的距离表示为(x,y)坐标,3D传感器可基于传感器的参考坐标系将距将要测量的对象的距离表示为(x,y,z)坐标。从这样的2D传感器或3D传感器输出的距离数据的片段数可根据传感器的视场角(FoV)和分辨率而变化。
也就是说,数据获取单元151可根据2D传感器或3D传感器的FoV来改变清洁机器人100的实际的传感器数据获取方法。当充分确保了传感器的FoV时,清洁机器人100获取停止状态下的实际的传感器数据。可选地,清洁机器人100获取原地以预定角度旋转时的实际的传感器数据,或者获取原地以360度的角旋转时针对所有方向的实际的传感器数据。
此时,当获取原地以预定角度旋转时的实际的传感器数据时,清洁机器人100可获取传感器的FoV之外的实际的传感器数据。
局部地图获取单元153可基于预先储存的环境地图通过对当前位置的周围区域进行扫描来获取局部地图。
更具体地讲,局部地图获取单元153使用基于储存在存储器160中的环境地图提取的虚拟的传感器数据来获取清洁机器人100的当前位置的周围区域的局部地图。
此时,操作清洁机器人的环境地图可与图4中的地图一致。假设预先提供操作清洁机器人100的环境地图500。如图4所示,环境地图500可以是2D网格地图或3D网格地图。网格地图是清洁机器人100的周围区域被分成小网格并且随机地表示对象存在于每个网格中的概率的地图,并且也被称作概率网格地图。
在下文中,将描述清洁机器人100位于环境地图500内的区域I中的情况。
在公开的发明中,提出使用2D网格地图的三种不同的方法作为获取局部地图的示例。显而易见的是,这些方法可扩展并且应用到3D网格地图。
图5是示出根据本公开的实施例的清洁机器人的当前位置中的虚拟的传感器数据的提取位置的示图,图6是示出计算图5的虚拟的传感器数据的提取位置的方法的示图,图7是示出根据本公开的实施例的射线投射方法的示例的示图,图8是示出使用图7的射线投射方法提取的虚拟的传感器数据的示例的示图。
首先,局部地图获取单元153可通过虚拟的传感器数据提取方法来获取局部地图。
在清洁机器人100在相对于当前位置选择的虚拟的传感器数据提取位置以360度的角旋转的同时,局部地图获取单元153可通过针对所有方向执行射线投射方法来提取虚拟的传感器数据,从而获取局部地图。
如图5所示,清洁机器人100在相对于当前位置S的预定距离内的地图上选择多个虚拟的传感器数据提取位置X。
关于虚拟的传感器数据提取位置X,关于当前位置S彼此垂直的线与半径为R的圆交叉处的点可被确定为提取位置X(见图6)。
在图6中,长度为2R的线段的四个端点成为虚拟的传感器数据的提取位置X。
接下来,如图7所示,可在每个虚拟的传感器数据提取位置X处通过对360度的所有方向执行射线投射方法来提取虚拟的传感器数据。图8示出了从如图7所示的虚拟的传感器数据提取位置X提取的虚拟的传感器数据的示例。
图9是示出根据本公开的实施例的从清洁机器人的当前位置提取小局部地图的位置的示图,图10是示出使用小局部地图提取位置提取的小局部地图的示例的示图。
其次,局部地图获取单元153可从环境地图500中提取相对于针对清洁机器人100的当前位置选择的多个局部地图提取位置中的每个具有预设尺寸的局部地图。
此时,局部地图可根据预设尺寸而分为小局部地图和面积比小局部地图的面积大的大局部地图。
参照图9,局部地图获取单元153在相对于清洁机器人100的当前位置S的预定距离内的地图上选择多个小局部地图提取位置X。
参照图10,局部地图获取单元153基于安装在清洁机器人100中的传感器的最大检测距离来确定小局部地图的宽度W和高度H。从环境地图提取相对于每个小局部地图提取位置X确定的尺寸为(W×H)的局部地图。图10示出了从显示的小局部地图提取位置X提取的小局部地图的示例。
当应用了大局部地图的提取方法时,局部地图获取单元153使用清洁机器人100的当前位置S作为大局部地图提取的中心从环境地图中提取比小局部地图宽的区域。
处理器180可通过执行局部地图与实际的传感器数据之间的匹配来确定当前位置针对局部地图的坐标,并且计算局部地图中存在的线段的主线段角(main segmentangle),从而确定相对于当前位置的行进方向。此时,当前位置的坐标可基于在图4中示出的环境地图上显示的参考坐标系{W}被定义为(x,y,θ)。这里,x和y指基于参考坐标系的位置坐标,θ指旋转角。
也就是说,处理器180是控制清洁机器人100的整体操作的组件,并且可通过执行局部地图与传感器数据之间的匹配来识别清洁机器人100关于局部地图的相对位置,并且针对清洁机器人100的相对位置确定行进方向。
此外,处理器180可根据角度通过将局部地图中存在的多条直线分类来确定主线段角。
此外,处理器180可基于根据当前位置的坐标确定的行进方向使清洁机器人100原地旋转。
参照图11,处理器180可包括:位置估计单元181,用于确定清洁机器人100关于局部地图的当前位置坐标;线段角估计单元183,用于计算局部地图中存在的线段的主线段角;方向调节单元185,用于调节清洁机器人100的行进方向,以使清洁机器人100可根据当前位置的主线段角旋转。
图12是详细地示出图11的位置估计单元的控制框图。
如图12所示,位置估计单元410可包括对应点获取单元411、相对位置计算单元413、相似度计算单元415和位置确定单元417。
对应点获取单元411通过由数据获取单元151获取的实际的传感器数据与由局部地图获取单元153获取的局部地图之间的数据匹配来获取多个对应点。
图13是示出根据本公开的实施例的通过清洁机器人获取的实际的传感器数据的示例的示图,图14是示出根据本公开的实施例的通过清洁机器人获取的虚拟的传感器数据的示例的示图。
参照图13和图14,每个传感器数据由多个数据点构成。例如,当实际的传感器数据中包括的任意点P作为P1且虚拟的传感器数据中包括的任意点P作为P2时,P1和P2是对应点关系。在2D传感器的情况下,构成实际的传感器数据的数据点基于清洁机器人100的参考坐标系被分别定义为(x,y)。构成虚拟的传感器数据的数据点基于环境地图的参考坐标系{W}(见图4)被定义为(x,y)。
按照这种方式,对应点获取单元411获取实际的传感器数据的基于清洁机器人100的参考坐标系被分别定义为(x,y)的数据点以及虚拟的传感器数据的基于环境地图的参考坐标系被分别定义为(x,y)的数据点。
此外,对应点获取单元411可去除获取的多个对应点中的异常值(outliers)。此时,异常值指的是实际的传感器数据和虚拟的传感器数据中共同不包括的数据点。
相对位置计算单元413使用通过对应点获取单元411获取的多个对应点来计算实际的传感器数据关于局部地图的相对位置,即,坐标变换参数(旋转和平移)。
相对位置计算单元413计算通过去除异常值获得的剩余的多个对应点(正常值(inlier))作为实际的传感器数据关于局部地图的相对位置。
此时,可通过计算用于使实际的传感器数据中包括的多个对应点(正常值)适配成对应于局部地图的每个数据点的多个对应点(正常值)的坐标变换参数(旋转和平移)来获得相对位置。可基于环境地图的参考坐标系来限定局部地图的每个数据点,因此,用于使实际的传感器数据适用的坐标变换参数指的是清洁机器人100关于环境地图的相对位置。
参照图15,坐标系{A}可被表示为局部地图的参考坐标系,坐标系{B}可被表示为传感器的参考坐标系。
如图15所示,当构成局部地图的数据点PA和实际的传感器数据的数据点PB彼此对应时,可获得关系式1。
[式1]
PA=R·PB+t
此时,R和t指的是坐标变换参数,R指的是旋转矩阵,t指的是平移向量。
也就是说,当坐标系{A}根据R旋转并且移动t时,坐标系{A}可成为与坐标系{B}相同的坐标系。在公开的实施例中,使用最小二乘法来计算R和t。
相似度计算单元415使用通过相对位置计算单元413计算的实际的传感器数据关于局部地图的相对位置来计算多个局部地图与实际的传感器数据之间的相似度。
图14中示出的局部地图可被视为二值图像。因此,如图16所示,局部地图可使用数字图像处理方法中的膨胀方法(dilation method)来扩大,通过使实际的传感器数据适配到扩大的局部地图中来计算相似度。
如图17所示,当成功地执行了局部地图与实际的传感器数据之间的适配时,实际的传感器数据与扩大的局部地图之间的重叠部分的量增多,使得相似度增大。
此时,随着局部地图和实际的传感器数据中共同包括的数据点的数量越多,相似度计算单元415获得的相似度越高。
另一方面,如图18所示,当局部地图和实际的传感器中共同包括的数据点的数量明显比图17中示出的局部地图和实际的传感器中通常包括的数据点的数量少或者为零时,或者当错误地计算坐标变换参数时,局部地图与实际的传感器数据之间的相似度减小。
位置确定单元417使用通过相似度计算单元415计算的相似度将清洁机器人100关于局部地图具有最高相似度的相对位置确定为清洁机器人100关于环境地图的当前位置,从而确定当前的位置坐标。
参照图19,线段角计算单元430可包括直线获取单元431和主线段角计算单元433。
直线获取单元431可从通过局部地图获取单元153获取的局部地图获取多条直线。此时,直线获取单元431可使用Hough变换来获取多条直线。
所述多条直线可以是局部地图中构成直线的多个点集,或者构成局部地图本身的多个点集。
更具体地讲,当通过使用构成从局部地图提取的多条直线的多个点执行Hough变换来计算投票矩阵(vote matrix)时,直线获取单元431获取局部地图的多条直线。此时,投票矩阵的行和列分别对应于线段的角度以及距参考坐标系的原点的距离。根据Hough变换获取的多条直线中的每条直线具有角。
主线段角计算单元433可通过根据角度将多条直线分类来计算主线段角。
更具体地讲,主线段角计算单元433可通过根据角度将多条直线分类来产生角度直方图,并且根据角度直方图的分布来确定主线段角。
例如,不需要线段的距离来确定清洁机器人100的行进方向,因此,主线段角计算单元433可根据角度将通过直线获取单元431获取的直线分类(如图20所示),并且将分类的直线变换成角度直方图。
此外,主线段角计算单元433可通过使用低通滤波器去除角度直方图的噪声来确定局部地图的主线段角。
参照图21,主线段角计算单元433可对角度直方图执行低通滤波,并且将具有最大投票值的角作为局部地图的主线段角。
此外,主线段角计算单元433可通过对彼此垂直或平行的直线进行合并来产生角度直方图。
特别地,主线段角计算单元433可根据预设条件将具有相互不同的角的直线合并。主线段角计算单元433可将彼此垂直的直线或彼此平行的直线合并,从而提高主线段角的分布的可靠性。
例如,主线段角计算单元433可将彼此平行(180度)的直线分类成相同的角,或者将彼此垂直(90度)的直线分类成相同的角。按照这种方式,主线段角计算单元433可通过将彼此垂直或平行的直线分类成单个角来将全部直线分类到特定的范围。
主线段角计算单元433可按照主线段角存在于-45°至+45°的范围内这样的方式通过将彼此垂直或平行的直线合并来产生角度直方图。特别地,图21中示出的θL和θL+90°彼此垂直。因此,主线段角计算单元433可通过使比+45°大的θL+90°移动90°而将θL+90°与θL分类在一起。
同时,主线段角计算单元433可将分布最多数量的直线组分(straight linecomponent)的角确定为主线段角。
参照图21,主线段角计算单元433可将最多数量的直线组分所存在的θL计算为主线段角。也就是说,主线段角计算单元433可对角直方图执行低通滤波,然后将具有最大投票值的角确定为主线段角。
方向调节单元185可将清洁机器人100的当前位置中的主线段角确定为行进方向,并且使清洁机器人100原地转向所确定的行进方向。
例如,当清洁机器人100基于如图22所示的参考坐标系{W}位于旋转角θR的方向上时,方向调节单元185可使清洁机器人100原地旋转,以使清洁机器人100位于与主线段角θL相同的方向上。
存储器160可存储清洁机器人100行进的环境地图、用于操作清洁机器人100的操作程序和行进图案、清洁机器人100的位置信息以及在行进过程中获取的障碍物信息等。
此外,在存储器160中,可储存用户输入信息(诸如,用于控制清洁机器人100的操作的控制数据)、在清洁机器人100的操作控制过程中使用的参考数据、在清洁机器人100执行预定操作的同时产生的操作数据、通过装置200输入以使清洁机器人100执行预定操作的设置数据等。
此外,存储器160可被实现为非易失性存储装置(诸如,只读存储器(ROM)、可编程只读存储器(PROM)、可擦可编程序只读存储器(EPROM)或闪存)、易失性存储装置(诸如,随机存取存储器(RAM))或者存储介质(诸如,硬盘、卡片式存储器(例如,SD或XD存储器)或光盘)。然而,存储器160不限于此,可使用设计者可考虑的多种存储介质。
输入单元171可通过用户的操作来接收用于操作清洁机器人100的多种控制信息。
显示单元173是用于以消息的形式输出指示清洁机器人100的行进方向完全根据主线段角来调节的信息的组件。此时,显示单元173可使用图标或LED来显示该信息。显示单元173不限于通知清洁机器人100完成了行进方向的调节,甚至当确定了当前位置时,也可输出确定了当前位置的通知。
按照这种方式,当显示单元173为能够显示图标或文本的液晶显示用户界面(LCDUI)时,显示单元173可使用图标或文本来显示清洁机器人100的定位和行进方向调节状态,以使用户可容易地确认显示的信息。
此外,当显示单元173为发光二极管用户界面(LED UI)时,显示单元173可通过发光或闪烁以及持续时间差异来显示清洁机器人100的行进方向调节状态,以使用户可容易地确认显示的信息。
此外,显示单元173可根据处理器180的显示控制信号来显示用户的输入信息和清洁机器人100的运行状态,并且显示从清洁机器人100接收的各种信息、通过装置从用户接收的各种控制命令等。
例如,显示单元173可显示时间设置、预约设置、直接输入控制命令时的时间或者清洁机器人100的速度,在其它情况下,显示单元173可显示当前时间、预约信息、剩余电量、运动距离、运动路线等。
此外,显示单元173可包括液晶显示器(LCD)、薄膜晶体管液晶显示器(TFT-LCD)、有机发光二极管(OLED)、柔性显示器和3D显示器中的至少一种。
声音输出单元175是用于以声音的形式输出指示清洁机器人100的行进方向完全根据主线段角来调节的信息的组件。声音输出单元175不限于通知清洁机器人100完成了行进方向的调节,甚至当确定了当前位置时,也可输出确定了当前位置的通知。
此外,声音输出单元175可包括扬声器,扬声器根据处理器180的声音控制信号使用声音(例如,蜂鸣声)来输出清洁机器人100的运行状态和清洁机器人100的行进方向的调节状态。
此外,声音输出单元175还可包括:数模变换器(DAC),将数字化电信号变换成模拟信号;放大器,将通过DAC变成模拟信号的电信号放大。
图24是示出根据本公开的实施例的清洁机器人的控制方法的流程图,图25是示出估计图24的清洁机器人的当前位置的方法的流程图,图26是示出提取图24的线段角的方法的流程图。
参照图24,在操作S110中,清洁机器人100可通过对当前位置的周围区域进行扫描来获取局部地图。
此时,清洁机器人100可基于预先储存的清洁机器人100行进的环境地图通过对当前位置的周围区域进行扫描来获取局部地图。环境地图可以是2D网格地图或3D网格地图。
上述操作S110的情况可包括这样的情况:清洁机器人100在操作过程中通过用户运动到预定距离内的不同的位置。
清洁机器人100可通过在相对于清洁机器人100的当前位置选择的虚拟的传感器数据提取位置以360度旋转的同时针对所有方向执行射线投射方法来提取虚拟的传感器数据,从而获取局部地图,或者针对相对于清洁机器人100的当前位置选择的多个局部地图提取位置中的每个来提取具有预设尺寸的局部地图(例如,小局部地图或大局部地图)。此时,在大局部地图方法中,可使用清洁机器人100所运动到的位置作为大局部地图提取的中心从环境地图提取比小局部地图宽的区域。
接下来,在操作S130中,清洁机器人100可通过测量从当前位置到将要测量的对象的距离来获取实际的传感器数据,并且通过执行局部地图与实际的传感器数据之间的匹配来确定针对局部地图的当前位置坐标。
参照图25,在操作S131中,清洁机器人100可通过测量从当前位置到将要测量的对象的距离来获取实际的传感器数据。
更具体地讲,清洁机器人100包括用于测量距离的传感器(未示出),并且可根据清洁机器人100中安装的2D传感器或3D传感器的扫描通过测量从传感器到将要测量的对象的距离来获取清洁机器人100所在的真实环境的实际的传感器数据。可选地,清洁机器人100可在原地以预定角旋转的同时获取传感器的FoV之外的数据,或者原地以360度的角旋转的同时获取针对所有方向的实际的传感器数据。
接下来,在操作S133中,清洁机器人100可通过实际的传感器数据与局部地图之间的数据匹配来获取多个对应点。
例如,清洁机器人100可获取实际的传感器数据的基于参考坐标系定义为(x,y)的数据点与虚拟的传感器数据的基于环境地图的参考坐标系定义为(x,y)的多个数据点之间彼此对应的对应点。
接下来,在操作S135中,清洁机器人100可去除多个对应点中的异常值。
接下来,在操作S137中,清洁机器人100可使用获取的多个对应点来计算实际的传感器数据关于局部地图的相对位置。
清洁机器人100可使用多个对应点来计算实际的传感器数据关于局部地图的相对位置,即,坐标变换参数(旋转和平移)。
接下来,在操作S139中,清洁机器人100可计算多个局部地图与实际的传感器数据之间的相似度。
此时,随着局部地图和实际的传感器数据中共同包括的数据点的数量越多,可获得的相似度越高。
接下来,在操作S141中,清洁机器人100可将清洁机器人针对局部地图具有最高的相似度的相对位置确定为清洁机器人针对环境地图的当前位置。此时,清洁机器人的当前位置可以以当前位置坐标的形式来提供。
接下来,在操作S143中,当确定了清洁机器人100的位置时,将指示完全识别了清洁机器人100的位置的信息通知给用户。在通知清洁机器人100的定位的方法中,显示单元173可通过图标或LED的发光和闪烁来显示定位,或者声音输出单元175可输出声音(例如,蜂鸣声),以使用户可容易地确认通知。此时,可根据操作者的需要省略操作S413。
接下来,在操作S150中,清洁机器人100可通过计算局部地图中存在的线段的主线段角来确定行进方向。
参照图26,在操作S151和S153中,清洁机器人100可从局部地图获取多条直线。
接下来,在操作S155中,清洁机器人100可根据角度将多条直线分类,并且计算主线段角。
操作S155可包括根据角度将多条直线分类并且产生角度直方图的操作以及根据角度直方图的分布来确定主线段角的操作。
此外,操作S155还可包括在直方图中将彼此垂直或平行的直线合并的操作。
接下来,在操作S170中,清洁机器人100可根据计算的主线段角来调节行进方向。
接下来,在操作S190中,清洁机器人100可以以信息或声音的形式输出指示根据主线段角调节清洁机器人的行进方向的信息。
图27是示出根据本公开的实施例的用于清洁机器人的定位设备的组件的控制框图。
在下文中,将省略图3、图11和图12中描述的相同组件的详细描述。
参照图27,用于清洁机器人的定位设备600包括数据获取单元610、存储器620、处理器630、显示单元640和声音输出单元650。
数据获取单元610获取清洁机器人100当前所在位置的实际的传感器数据,并且根据安装在清洁机器人100中的2D传感器或3D传感器的扫描来测量距将要测量的对象的距离,从而获取清洁机器人100所在的真实环境的距离数据。
也就是说,关于数据获取单元610,通过清洁机器人100的实际的传感器数据获取方法可根据2D传感器或3D传感器的FoV而变化。当充分地确保了传感器的FoV时,清洁机器人100获取停止状态下的实际的传感器数据。可选地,清洁机器人100获取原地以预定角旋转时的传感器的FoV之外的数据,或者获取原地以360度的角旋转时的针对所有方向实际的传感器数据。
存储器620储存操作清洁机器人的环境地图、用于操作清洁机器人100的操作程序和行进图案、清洁机器人100的位置信息以及在行进过程中获取的障碍物信息等。
此外,在存储器620中,可存储用户输入信息(诸如,用于控制清洁机器人100的操作的控制数据)、在清洁机器人100的操作控制过程中使用的参考数据、在清洁机器人100执行预定操作的同时产生的操作数据、通过装置200输入以使清洁机器人100执行预定的操作的设置数据等。
处理器630是控制清洁机器人100的整体操作的组件,并且可通过执行局部地图与传感器数据之间的匹配来识别清洁机器人100关于局部地图的相对位置。为此,处理器630还包括局部地图获取单元631、对应点获取单元632、相对位置计算单元633、相似度计算单元634和位置确定单元635。
局部地图获取单元631使用基于存储器620中储存的环境地图提取的虚拟的传感器数据来获取清洁机器人100所运动到的位置的周围区域的局部地图。
对应点获取单元632通过由数据获取单元610获取的实际的传感器数据与由局部地图获取单元631获取的局部地图之间的数据匹配来获取对应点。
相对位置计算单元633使用通过对应点获取单元632获取的对应点来计算实际的传感器数据关于局部地图的相对位置,即,坐标变换参数(旋转和平移)。
相似度计算单元634使用通过相对位置计算单元633计算的实际的传感器数据关于局部地图的相对位置来计算多个局部地图与实际的传感器数据之间的相似度。局部地图可被视为二值图像。局部地图可使用数字图像处理方法中的膨胀法而扩大,通过使实际的传感器数据适配到扩大的局部地图中来计算相似度。也就是说,将图13中示出的实际的传感器数据适配到图16中示出的扩大的局部地图中。实际的传感器的数据点中的与扩大的局部地图之间重叠的数据点的数量可用作相似度。
如图17所示,当成功地执行了局部地图与实际的传感器数据之间的适配时,实际的传感器数据与扩大的局部地图之间重叠部分的量增大,使得相似度增大。
另一方面,如图18所示,当局部地图和实际的传感器数据中共同包括的数据点的数量非常少或者为零时,或者当错误地计算坐标变换参数时,局部地图与实际的传感器数据之间的相似度减小。
位置确定单元635使用通过相似度计算单元634计算的相似度将清洁机器人100关于局部地图具有最高的相似度的相对位置确定为清洁机器人100关于环境地图的位置。
显示单元640使用图标或LED来显示用于通知完全识别了清洁机器人100的位置的信息。
声音输出单元650可包括扬声器,扬声器根据处理器630的声音控制信号使用声音(例如,蜂鸣声)来输出清洁机器人100的运行状态和定位状态。
在下文中,将描述根据本公开的实施例的清洁机器人以及清洁机器人的定位方法的操作过程和操作效果。
经常出现这样的情况:按照需要,用户强行地使在复杂的环境(例如,普通的家里)中操作的清洁机器人100运动。例如,当清洁机器人100在执行清洁操作的同时由于被卡在家具中而不能运动时,用户应抬起并且使清洁机器人100运动到不同的位置。按照这种方式,在清洁机器人100执行清洁操作时,当清洁机器人100的位置被用户强行改变时,清洁机器人100应快速且准确地识别清洁机器人将运动到的新位置。
然而,当使用现有的MCL方法来识别清洁机器人100所运动到的位置时,清洁机器人100将不必要地沿任意方向运动预定距离以使粒子聚集到一个位置,从而运动距离增大,这是低效率的。此外,需要数量尽可能多的粒子,以提高定位的成功率,从而针对定位的计算时间延长。
因此,在公开的发明中,提出了如下的一种方法:当清洁机器人100在操作过程中通过用户运动到预定距离内的不同位置时,在没有不必要的运动的情况下,在清洁机器人100原地以预定角或360度旋转的同时,通过对清洁机器人100所运动到的位置的周围区域进行扫描来快速且准确地识别清洁机器人100的当前位置。
如上所述,根据公开的发明,当清洁机器人在操作过程中通过用户运动到预定距离内的不同位置时,在没有不必要的运动的情况下,在清洁机器人在某位置以预定角或360度的旋转同时,通过对清洁机器人所运动到的位置的周围区域进行扫描来快速且准确地识别清洁机器人的当前位置,从而减少定位所需的时间。
此外,在对清洁机器人进行定位之后,可通过显示器或声音来通知指示完成定位的信息,从而提高产品的用户可靠性。
此外,可使用清洁机器人执行操作的环境地图以及清洁机器人在环境地图上的位置来确定清洁机器人的行进方向,因此,可确定更准确的行进方向,以不产生清洁遗漏区域,从而提高清洁操作的可靠性。
虽然已经示出并描述了本公开的一些实施例,但是本领域的技术人员应理解的是,在不脱离其范围由权利要求及其等同物限定的本公开的原理和精神的情况下,可对这些实施例做出改变。

Claims (14)

1.一种清洁机器人,包括:
数据获取单元,通过测量从清洁机器人的当前位置到将要测量的对象的距离来获取实际的传感器数据;
局部地图获取单元,基于预先储存的环境地图通过对当前位置的周围区域进行扫描来获取局部地图;
处理器,通过执行局部地图与实际的传感器数据之间的匹配来确定当前位置针对局部地图的坐标,并且通过计算局部地图中存在的直线的主线段角来确定基于当前位置的行进方向,其中,所述直线是构成局部地图中的直线的点集或者构成局部地图本身的点集,所述主线段角是分布数量最多的直线的角,
其中,局部地图获取单元从环境地图中提取相对于多个局部地图提取位置中的每个具有预定尺寸的多个小局部地图,使用所述当前位置作为局部地图提取的中心来从所述环境地图中提取比所述小局部地图宽的局部地图,其中,所述多个局部地图提取位置是针对清洁机器人的当前位置而选择的。
2.如权利要求1所述的清洁机器人,其中,处理器通过根据角度将局部地图中存在的多条直线分类来确定主线段角。
3.如权利要求1所述的清洁机器人,其中,处理器根据基于当前位置的坐标确定的行进方向使清洁机器人原地转向行进方向。
4.如权利要求1所述的清洁机器人,其中,数据获取单元获取清洁机器人在停止状态下的实际的传感器数据,获取清洁机器人以预定角原地旋转时的实际的传感器数据,或者获取清洁机器人以360度的角原地旋转时针对所有方向的实际的传感器数据。
5.如权利要求1所述的清洁机器人,其中,局部地图获取单元还通过在使清洁机器人在针对清洁机器人的当前位置选择的虚拟的传感器数据提取位置以360度的角旋转的同时对所有方向执行射线投射方法来提取虚拟的传感器数据,从而获取局部地图。
6.如权利要求1所述的清洁机器人,其中,处理器包括:
位置估计单元,确定清洁机器人针对局部地图的当前位置坐标;
线段角计算单元,计算局部地图中存在的直线的主线段角;
方向调节单元,根据主线段角使清洁机器人在当前位置转向行进方向。
7.如权利要求6所述的清洁机器人,其中,位置估计单元包括:
对应点获取单元,通过实际的传感器数据与局部地图之间的数据匹配来获取多个对应点;
相对位置计算单元,使用获取的多个对应点来计算实际的传感器数据针对局部地图的相对位置;
相似度计算单元,计算多个局部地图与实际的传感器数据之间的相似度;
位置确定单元,将清洁机器人针对局部地图具有最高相似度的相对位置确定为清洁机器人针对环境地图的当前位置,从而确定当前位置坐标。
8.如权利要求7所述的清洁机器人,其中,随着局部地图和实际的传感器数据中共同包括的数据点的数量越多,相似度计算单元获得的相似度越高。
9.如权利要求6所述的清洁机器人,其中,线段角计算单元包括:
直线获取单元,从局部地图获取多条直线;
主线段角计算单元,根据角度将所述多条直线分类并且确定主线段角。
10.一种清洁机器人的控制方法,包括:
基于预先存储的环境地图通过对清洁机器人的当前位置的周围区域进行扫描来获取局部地图;
通过测量从当前位置到将要测量的对象的距离来获取实际的传感器数据;
通过执行局部地图与实际的传感器数据之间的匹配来确定针对局部地图的当前位置坐标;
通过计算局部地图中存在的直线的主线段角来确定行进方向,其中,所述直线是构成局部地图中的直线的点集或者构成局部地图本身的点集,所述主线段角是分布数量最多的直线的角;
根据计算的主线段角来调节行进方向,
其中,获取局部地图的步骤包括:从环境地图中提取相对于多个局部地图提取位置中的每个具有预定尺寸的多个小局部地图,使用所述当前位置作为局部地图提取的中心来从所述环境地图中提取比所述小局部地图宽的局部地图,其中,所述多个局部地图提取位置是针对清洁机器人的当前位置而选择的。
11.如权利要求10所述的清洁机器人的控制方法,其中,获取局部地图的步骤包括基于预先存储的清洁机器人行进的环境地图通过对当前位置的周围区域进行扫描来获取局部地图。
12.如权利要求10所述的清洁机器人的控制方法,其中,获取局部地图的步骤还包括:
在使清洁机器人在针对清洁机器人的当前位置选择的虚拟的传感器数据提取位置以360度的角旋转的同时,通过针对所有方向执行射线投射方法来提取虚拟的传感器数据,从而获取局部地图。
13.如权利要求10所述的清洁机器人的控制方法,其中,确定当前位置坐标的步骤包括:
通过实际的传感器数据与局部地图之间的数据匹配来获取多个对应点;
使用获取的多个对应点来计算实际的传感器数据距局部地图的相对位置;
计算多个局部地图与实际的传感器数据之间的相似度;
将清洁机器人对局部地图具有最高相似度的相对位置确定为清洁机器人针对环境地图的当前位置,
其中,计算相似度的步骤包括:随着局部地图和实际的传感器数据中共同包括的数据点的数量越多,确定获得的相似度越高。
14.如权利要求10所述的清洁机器人的控制方法,其中,确定行进方向的步骤包括:
从局部地图获取多条直线;
通过根据角度将所述多条直线分类来计算主线段角。
CN201610773063.XA 2015-09-18 2016-08-30 清洁机器人及其控制方法 Expired - Fee Related CN106541407B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2015-0132274 2015-09-18
KR1020150132274A KR102386361B1 (ko) 2015-09-18 2015-09-18 이동 로봇의 위치 인식 장치 및 그 방법
KR10-2015-0148434 2015-10-26
KR1020150148434A KR102471487B1 (ko) 2015-10-26 2015-10-26 청소 로봇 및 그 제어방법

Publications (2)

Publication Number Publication Date
CN106541407A CN106541407A (zh) 2017-03-29
CN106541407B true CN106541407B (zh) 2020-05-19

Family

ID=56296577

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610773063.XA Expired - Fee Related CN106541407B (zh) 2015-09-18 2016-08-30 清洁机器人及其控制方法

Country Status (3)

Country Link
US (1) US10663972B2 (zh)
EP (1) EP3144765B1 (zh)
CN (1) CN106541407B (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2675363T3 (es) * 2014-06-05 2018-07-10 Softbank Robotics Europe Procedimiento de construcción de un mapa de probabilidad entre la ausencia y la presencia de obstáculos para un robot autónomo
US9751210B2 (en) * 2014-11-26 2017-09-05 Irobot Corporation Systems and methods for performing occlusion detection
US9519289B2 (en) 2014-11-26 2016-12-13 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
US9943959B2 (en) * 2016-04-25 2018-04-17 Disney Enterprises, Inc. Map localizing with partially obstructed ranging devices for autonomous robots and vehicles
EP3639167A4 (en) 2017-06-16 2021-02-17 Bayerische Motoren Werke Aktiengesellschaft METHOD AND DEVICE FOR SELECTING A CARD FOR A MOVING OBJECT, SYSTEM AND VEHICLE / ROBOT
JP7087290B2 (ja) * 2017-07-05 2022-06-21 カシオ計算機株式会社 自律移動装置、自律移動方法及びプログラム
CN109388093B (zh) * 2017-08-02 2020-09-15 苏州珊口智能科技有限公司 基于线特征识别的机器人姿态控制方法、系统及机器人
CN110998473A (zh) * 2017-09-04 2020-04-10 日本电产株式会社 位置推断系统和具有该位置推断系统的移动体
CN107976194B (zh) * 2017-11-24 2021-12-21 北京奇虎科技有限公司 环境地图的调整方法及装置
CN107932481A (zh) * 2017-12-04 2018-04-20 湖南瑞森可机器人科技有限公司 一种复合机器人及其控制方法
WO2019183804A1 (zh) * 2018-03-27 2019-10-03 尤中乾 一种机器人规避控制方法及相关装置
CN108507578B (zh) * 2018-04-03 2021-04-30 珠海市一微半导体有限公司 一种机器人的导航方法
US11687092B2 (en) * 2018-04-23 2023-06-27 Sharkninja Operating Llc Techniques for bounding cleaning operations of a robotic surface cleaning device within a region of interest
CN108606728B (zh) * 2018-05-08 2020-12-25 平安科技(深圳)有限公司 一种扫地机器人控制方法、设备、扫地机器人及存储介质
CN110856631B (zh) * 2018-08-24 2021-09-14 东芝生活电器株式会社 电动吸尘器以及电动吸尘系统
CN109900272B (zh) * 2019-02-25 2021-07-13 浙江大学 视觉定位与建图方法、装置及电子设备
CN112205937B (zh) * 2019-07-12 2022-04-05 北京石头世纪科技股份有限公司 一种自动清洁设备控制方法、装置、设备和介质
CN110909585B (zh) * 2019-08-15 2022-09-06 纳恩博(常州)科技有限公司 一种路线确定方法、可行进设备、和存储介质
CN110705385B (zh) * 2019-09-12 2022-05-03 深兰科技(上海)有限公司 一种障碍物角度的检测方法、装置、设备及介质
CN112747734B (zh) * 2019-10-31 2024-04-30 深圳拓邦股份有限公司 环境地图方向调整方法、系统及装置
WO2021125510A1 (en) 2019-12-20 2021-06-24 Samsung Electronics Co., Ltd. Method and device for navigating in dynamic environment
KR20210096523A (ko) * 2020-01-28 2021-08-05 엘지전자 주식회사 로봇의 위치 인식
CN113449054B (zh) * 2020-03-27 2023-08-04 杭州海康机器人股份有限公司 一种地图切换的方法和移动机器人
CN113729572B (zh) * 2020-05-29 2022-12-06 宝时得科技(中国)有限公司 清洁机器人及其控制方法
CN112437064B (zh) * 2020-11-12 2023-01-17 深圳银星智能集团股份有限公司 数据传输方法、数据读取方法、装置、设备及存储介质
CN112867977A (zh) * 2021-01-13 2021-05-28 华为技术有限公司 一种定位方法、装置和车辆
CN115363478A (zh) * 2021-05-17 2022-11-22 尚科宁家(中国)科技有限公司 一种清洁机器人重定位失败的清洁方法和清洁机器人
CN116033330A (zh) * 2021-10-25 2023-04-28 华为技术有限公司 一种基于人体感知的自动控制方法、第一电子设备及系统
CN113878582B (zh) * 2021-10-29 2023-05-12 上海擎朗智能科技有限公司 机器人行驶控制方法、装置、机器人和存储介质
CN114365983B (zh) * 2022-01-24 2023-01-24 北京卡普拉科技有限公司 清洁方法、装置、电子设备、存储介质及机器人设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101093503A (zh) * 2006-06-20 2007-12-26 三星电子株式会社 在移动机器人中建立网格地图的方法、设备和介质
CN101126645A (zh) * 2006-08-18 2008-02-20 三星电子株式会社 为机器人划分覆盖区域的方法及其装置
CN104848848A (zh) * 2015-03-30 2015-08-19 北京云迹科技有限公司 基于无线基站和激光传感器的机器人绘制地图和定位的方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950005403B1 (ko) 1993-04-28 1995-05-24 주식회사금성사 신경회로망을 이용한 자동 주행 청소기의 주행 제어방법
JP4243594B2 (ja) 2005-01-31 2009-03-25 パナソニック電工株式会社 清掃ロボット
KR101457148B1 (ko) * 2008-05-21 2014-10-31 삼성전자 주식회사 로봇의 위치 추정 장치 및 그 방법
KR20110085500A (ko) 2010-01-20 2011-07-27 엘지전자 주식회사 로봇 청소기 및 이의 제어 방법
KR101202108B1 (ko) 2010-06-03 2012-11-15 고려대학교 산학협력단 이동 로봇의 위치 추정 방법
KR101341204B1 (ko) 2012-02-29 2013-12-12 부산대학교 산학협력단 레이저 스캐너 및 구조물을 이용한 모바일 로봇의 위치추정장치 및 방법
KR101406175B1 (ko) 2012-10-09 2014-06-13 조선대학교산학협력단 이동로봇의 위치추정과 지도 작성 장치 및 방법
US9233472B2 (en) * 2013-01-18 2016-01-12 Irobot Corporation Mobile robot providing environmental mapping for household environmental control
JP6233706B2 (ja) 2013-04-02 2017-11-22 パナソニックIpマネジメント株式会社 自律移動装置及び自律移動装置の自己位置推定方法
KR102096398B1 (ko) * 2013-07-03 2020-04-03 삼성전자주식회사 자율 이동 로봇의 위치 인식 방법
KR102093177B1 (ko) 2013-10-31 2020-03-25 엘지전자 주식회사 이동 로봇 및 그 동작방법
KR20150136872A (ko) 2014-05-28 2015-12-08 삼성전자주식회사 청소 로봇 및 그 제어 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101093503A (zh) * 2006-06-20 2007-12-26 三星电子株式会社 在移动机器人中建立网格地图的方法、设备和介质
CN101126645A (zh) * 2006-08-18 2008-02-20 三星电子株式会社 为机器人划分覆盖区域的方法及其装置
CN104848848A (zh) * 2015-03-30 2015-08-19 北京云迹科技有限公司 基于无线基站和激光传感器的机器人绘制地图和定位的方法及系统

Also Published As

Publication number Publication date
EP3144765A1 (en) 2017-03-22
EP3144765B1 (en) 2020-01-08
US10663972B2 (en) 2020-05-26
US20170083023A1 (en) 2017-03-23
CN106541407A (zh) 2017-03-29

Similar Documents

Publication Publication Date Title
CN106541407B (zh) 清洁机器人及其控制方法
KR101857952B1 (ko) 청소로봇을 원격으로 제어하기 위한 원격 제어 장치, 제어 시스템 및 제어 방법
CN111565896B (zh) 用于清洁的移动装置、协作清洁系统及其控制方法
KR102457222B1 (ko) 이동 로봇 및 그 제어 방법
KR102567525B1 (ko) 이동 로봇 시스템, 이동 로봇 및 이동 로봇 시스템의 제어 방법
JP7484015B2 (ja) 障害物検出方法および装置、自走式ロボット並びに記憶媒体
EP3863813B1 (en) Cleaning robot and method of performing task thereof
TWI687784B (zh) 移動式機器人及其控制方法
KR102183012B1 (ko) 모바일 기기, 청소로봇 및 그 제어방법
US8265425B2 (en) Rectangular table detection using hybrid RGB and depth camera sensors
CN109381122B (zh) 运行自动前进的清洁设备的方法
KR102386361B1 (ko) 이동 로봇의 위치 인식 장치 및 그 방법
CN110997250B (zh) 清洁机器人及其控制方法
GB2567944A (en) Robotic virtual boundaries
KR102302199B1 (ko) 이동 장치 및 이동 장치의 객체 감지 방법
US20180224862A1 (en) Robot cleaner and method of controlling the same
KR20130092729A (ko) 로봇청소기 및 그 제어방법
US20220355692A1 (en) Systems and Methods for Electric Vehicle Charging Using Machine Learning
KR102471487B1 (ko) 청소 로봇 및 그 제어방법
EP3562369B1 (en) Robot cleaner and method of controlling the same
US11666195B2 (en) Robot and control method thereof
KR102543742B1 (ko) 이동 단말기 및 이동 단말기의 동작 방법을 기록한 컴퓨터로 읽을 수 있는 기록 매체
KR20220021581A (ko) 로봇 및 이의 제어 방법
RU2658092C2 (ru) Способ и система навигации подвижного объекта с использованием трехмерных датчиков
KR20210104530A (ko) 로봇 및 이의 제어 방법

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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200519