CN111526973B - 用移动清洁机器人映射、控制和显示网络设备 - Google Patents
用移动清洁机器人映射、控制和显示网络设备 Download PDFInfo
- Publication number
- CN111526973B CN111526973B CN201880078951.7A CN201880078951A CN111526973B CN 111526973 B CN111526973 B CN 111526973B CN 201880078951 A CN201880078951 A CN 201880078951A CN 111526973 B CN111526973 B CN 111526973B
- Authority
- CN
- China
- Prior art keywords
- robot
- environment
- connected devices
- mobile robot
- devices
- 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.)
- Active
Links
- 238000004140 cleaning Methods 0.000 title claims abstract description 38
- 238000013507 mapping Methods 0.000 title description 12
- 230000000007 visual effect Effects 0.000 claims abstract description 46
- 238000004891 communication Methods 0.000 claims abstract description 30
- 230000004044 response Effects 0.000 claims description 21
- 230000003068 static effect Effects 0.000 claims description 16
- 230000007613 environmental effect Effects 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims 2
- 238000005259 measurement Methods 0.000 abstract description 9
- 238000000034 method Methods 0.000 description 30
- 230000000875 corresponding effect Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 18
- 238000003032 molecular docking Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000003860 storage Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000001276 controlling effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000033001 locomotion Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000004807 localization Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000000691 measurement method Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 239000004606 Fillers/Extenders Substances 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012806 monitoring device Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 241000394635 Acetomicrobium mobile Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 239000012636 effector Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 238000009423 ventilation Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0011—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
- G05D1/0044—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement by providing the operator with a computer generated representation of the environment of the vehicle, e.g. virtual reality, maps
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details 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/28—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
- A47L9/2805—Parameters or conditions being sensed
- A47L9/2826—Parameters or conditions being sensed the condition of the floor
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details 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/28—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
- A47L9/2894—Details related to signal transmission in suction cleaners
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0011—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
- G05D1/0022—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement characterised by the communication link
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0234—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
- G05D1/028—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45098—Vacuum cleaning robot
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Human Computer Interaction (AREA)
- Electromagnetism (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
一种移动清洁机器人,包括:驱动系统,其被配置为在运行环境中导航;测距设备,其被配置为与运行环境中的各个电子设备的其他测距设备进行通信;处理器,其与测距设备进行通信,以从存在于运行环境中的各个电子设备接收距离测量,每个距离测量代表移动清洁机器人与一个相应电子设备之间的距离,用指示移动清洁机器人在运行环境中的空间位置的位置数据标记每个距离测量,确定每个电子设备在运行环境中的空间位置,以及用电子设备在运行环境中的视觉指示填充运行环境的视觉表示。
Description
技术领域
本申请涉及连接的设备以及用于连接的设备之间交互的系统和方法。
背景技术
当前已计划为家用设备提供连接(包括至互联网和远程客户端的无线连接)。术语“物联网”(IoT)代表了一种观念,即各种家用物品都可以连接到公共互联网。连接后,这些物品可以向服务器和客户端设备报告各种数据。例如,“智能”灯泡可以连接到家用WLAN(无线局域网)。每个灯泡都可以具有微处理器、存储器、一些检测或解译状态的工具、电源以及无线连接。使用这些组件,灯泡可以报告其状态、可以进行轮询(poll)等。
可以认为IoT的概念与一般的家用连接(例如,连接的计算机、电缆箱、媒体设备等)不同,因为IoT设备通常可能不具有足够的计算资源或通信能力以有意义地连接到公共互联网。传统的冰箱无法连接到互联网,而要作为物联网设备,相同的设备将包括计算、传感器和通信硬件以及足够的软件,以成为可在远程和本地寻址(addressable)的实体;期望该互联网冰箱能够报告其各种状态(功耗等)并可响应远程命令(升高或降低内部温度)。
家用移动机器人也可以成为物联网设备。在某些方面,家用移动机器人可被视为该组中的独特种类。特别是,家用移动机器人的自主性可以使其与其他设备区分开,即其他设备不会在不可预测和变化的环境条件下运行,也无法基于数十或数百个传感器输入做出自主决策以完成任务。例如,洗碗机(即使是IoT洗碗机)对其内容物一无所知,而仅运行与用于控制电机和泵的简单脚本等同的操作,这可能会被简单的堵塞或其他传感器打断。相比之下,吸尘机器人(例如机器人)在执行任务的过程中可能会以各种方式检测其自身状态,可以灵活地摆脱家庭中充满挑战性的情况,并可以进行预测和计划活动。因此,将家用移动机器人的自主行为与IoT设备功能集成在一起可能会遇到挑战。
发明内容
根据本申请的一些实施例,一种操作用户终端的方法包括:响应于移动机器人对运行环境的导航,接收对于运行环境的占用数据;以及基于占用数据显示运行环境的视觉表示。所述方法还包括:接收标识运行环境本地的多个电子设备及它们各自的运行状态的信息;以及用电子设备各自在运行环境中的空间位置的视觉指示和电子设备各自运行状态的状态指示填充(populating)运行环境的视觉表示。
根据本公开的一些实施例,一种操作计算设备的方法包括:响应于移动机器人对运行环境的导航接收对于运行环境的占用数据,并基于占用数据将该运行环境本地的电子设备与运行环境中的相应空间位置相关联。所述方法还包括基于与电子设备相关联的各个空间位置向一个或多个电子设备发送控制信号以控制它们的操作。
本领域普通技术人员通过阅读附图和随后的具体实施方式,将理解本申请的进一步的特征、优点和细节,包括实施例的任何和所有组合。这样的描述仅是本申请的说明。
附图说明
图1A是表示根据本申请的实施例的系统的示意图。
图1B是表示根据本申请的实施例的运行环境的示意图,其中运行环境包括安装在其中的图1A的系统。
图2A和2B分别是根据本申请的实施例的移动机器人的顶部和底部透视图,该移动机器人被配置为在图1A的系统中运行。
图2C是表示根据本申请的实施例的移动机器人的示意图,该移动机器人被配置为在图1A的系统中运行。
图3是表示根据本申请的实施例的计算设备的示意图,该计算设备被配置为在图1A的系统中运行。
图4是表示根据本申请的实施例的用户终端的示意图,该用户终端被配置为在图1A的系统中运行。
图5是表示图2A-2C的移动机器人映射移动机器人环境中连接的设备的位置的示意图。
图6A-6C是示例性的用户界面,其示出了根据本申请实施例的用于在邻近居住空间中映射、控制和显示连接的设备的示例性操作。
图7是表示图2A-2C的移动机器人在移动机器人环境中使用连接的设备定位的示意图。
图8-9是表示可以由图2A-2C的移动机器人执行的操作的流程图,该操作用于在移动机器人的环境中映射、控制和显示连接的设备。
图10是示出图2A-2C的移动机器人在移动机器人环境中映射连接的设备的位置的示意图。
具体实施方式
本申请的实施例可以基于以下认识:移动机器人的自主功能可以基于其独立的定位能力而呈现出与物联网和/或其他本地设备功能集成的独特优势。特别地,可以利用移动机器人在运行环境中导航时(例如,在家庭运行环境中执行清洁任务或巡逻任务时)收集的占用数据确定在运行环境的相关空间背景内其他电子设备各自的空间位置和运行状态,从而提供设备位置和运行状态的“全家”快照。还可以响应于用户请求存储和呈现电子设备的历史和计划运行状态信息,以允许查看实际的过去或当前运行状态和/或预期的未来运行状态。如本申请的实施例所提供的,对设备空间位置和运行状态的理解可以进一步允许基于连接的电子设备的各自的空间位置、它们所位于的运行环境的区域的相关空间背景和/或运行环境相邻区域中的运行条件来控制连接的电子设备。
移动机器人确定其他支持网络的电子设备在运行环境的相关空间背景中的相应空间位置和运行状态。移动机器人基于从每个连接的设备接收的信号来确定每个支持网络的电子设备(也称为“连接的设备”)在运行环境中的位置。移动机器人包括测距设备(在下文中参照图2C进一步详细描述),并且连接的设备也均包括对应的测距设备,其中对应的测距设备被配置为与移动机器人的测距设备通信。移动机器人的测距设备提供了与运行环境中的每个连接的设备的每个对应测距设备的距离。移动机器人被配置为当机器人对运行环境导航时确定每个连接的设备在机器人地图中的位置。当移动机器人对运行环境导航并从连接的设备收集附加测距数据时,移动机器人可以细化(refine)对连接的设备在移动机器人地图中的位置的估计。下文参考图5-9更详细地描述该过程。
移动机器人可以指包括处理器、存储器和用于对可变环境条件导航并基于多个传感器输入做出自主决定的驱动系统的任何设备。如本文所述的移动机器人可包括机器人清洁器(诸如和/或BRAAVA JetTM清洁器),以及自主巡逻机器人。一些这样的自主巡逻机器人可以包括伸缩桅杆(telescoping mast),其上安装有(或以其他方式可操作地与其关联)一个或多个传感器元件。
连接的设备可以指包括或耦接到网络接口的任何设备,用于经由有线或无线的个人网络、局域网络和/或广域网发送和/或接收有线或无线通信信号。此类连接的设备可以包括但不限于网络控制器、传感器、终端和/或IoT设备。此类连接的设备的其他示例可以包括但不限于自动个人助理(例如,Echo,/>Assistant等)、电灯/灯泡、门/窗传感器、门锁、扬声器、恒温器、家用电器、环境传感器(温度、湿度、空气质量、照明度)、窗帘、语音接口设备、监控摄像头、运动传感器等,它们具有到网络接口的集成连接或其他连接。无线通信信号可以包括射频信号,包括但不限于Wi-Fi信号、蓝牙信号、ZigBee信号和/或Z波信号和/或光信号。这样的电子设备可以包括也可以不包括足够的计算资源或通信能力以有意义地连接到公共互联网。参照本文的运行环境描述的其他电子设备可能缺少网络接口,并且可以被称为“非连接的设备”。
参考图1A、1B,根据本申请的实施例的系统100被安装在相关联的居住建筑10中。建筑10可以是房屋或居民住宅,包括但不限于单户房屋、多户住宅(例如,复式单元、公寓、公寓楼等)、活动房屋或商业起居空间(例如,办公室或工作室)。建筑10可限定居住空间或内部空间20,在本文中也称为运行环境。居住空间20可以(在物理上、空间上和/或功能上)细分为一个或多个限定的区域(图示为区域A-C)。在一些实施例中,这些区域可以对应于居住建筑10中的房间区域,例如区域A是厨房,区域B是起居室,区域C是卧室。定义的区域A-C可以由墙壁隔开,或者如图所示,可以是具有多个相邻房间的代表一个较宽的连续居住空间的开放概念区域而无需分隔墙壁。建筑10具有窗户30(具有耦接至控制器126的窗帘30A)、门32、灯具34和排气灯34A(耦接至控制器128)、电视36(或其他电子设备),以及加热、通风和空调系统(HVAC)40(耦接到控制器127)。用户P可以居住在居住空间20。
系统100包括节点,这些节点包括具有网络功能的移动机器人200、一个或多个无线接入点(WAP)164、网关和/或集线器(hub)110,它们互连不同的联网方法以形成局域网专用网络160,该局域网专用网络160互连具有网络功能或“连接”的电子设备(包括IoT设备)120、122、124,具有网络功能的自动化控制设备126、127、128,可以是具有网络功能的自动化控制设备的机器人停靠站(robot dock)140,以及可能会结合多个这些功能的产品。专用网络160可以包括一个或多个无线接入点(WAP)164、网关或集线器110,其具有组合的无线范围以充分覆盖由居住建筑10界定的全部或大部分居住空间20或周围。在一些实施例中,网络节点110、126、127、128、200、140、142、144和150中的一个或多个可以定义连接的计算设备(例如,图3的计算设备300),计算设备被配置为基于一个或多个其他的连接的电子设备30A、34/34A、36、40、120、122、124、126、127、128、200、140、142、144和/或与其连接的电子设备在运行环境20中的各自的空间位置而控制这些设备。
通过WAN接口170A及其关联的WAN连接170B,连接到专用网络160的联网设备可以通过路由器/防火墙162与远程管理服务150通信,以接入公共网络170。例如,远程管理服务150可以是云计算设备,公共网络170可以是因特网,WAN接口170A可以是DSL、DOCSIS或蜂窝调制解调器,其相关联的WAN连接170B可以由因特网服务提供商(ISP)提供。路由器162、WAP164和/或调制解调器170A可以以各种配置集成到单个设备中。本地用户终端142可以连接(有线或无线地)到专用网络160。远程用户终端144可以经由公共网络170连接到远程服务器150和/或专用网络160。例如,用户终端142、144可以是PC、智能电话或平板计算机。集线器110,机器人200,控制器126、127、128和用户终端142、144均可通过包含在目标设备中的公共网络服务(例如,通过客户端设备上的网络浏览器呈现UI的Web服务器)进行访问或通过专用客户端(例如,可下载或预安装的应用软件程序)进行访问,从而实现节点110、126、127、128、200、140、142、144和150之间的通信和控制,如本文所述。本文所讨论的网络实体是在网络上注册的机器和/或控制器,其被分配了用于发送和接收通信信号的唯一地址,并且可以对相同网络或连接的网络上的其他网络实体机器和/或控制器可用。
在一些实施例中,“相同网络”可以指在路由网络实体162后面的专用IP(因特网协议)子网上的一组专用地址,路由网络实体162在公共因特网和专用网络之间提供网络地址转换(Network Address Translation,NAT)。连接到专用网络的每个网络实体都可以通过观察其他活动网络实体的网络通信和/或扫描专用网络的可能IP子网来寻找响应从而推断其他活动网络实体的网络地址。一些网关/集线器提供了网络服务,这些网络服务可以枚举与该网关/集线器关联和/或可通过该网关/集线器到达的设备。这些技术产生(yield)每个活动设备的IP地址和/或其MAC(媒体访问控制)地址中的一个或两个。地址解析协议(Address Resolution Protocol,ARP)网络服务可以将一种地址类型映射到另一种地址类型。在一些实施例中,在网络实体(例如,移动机器人200)的处理器上运行的例程(routine)可以收集其他网络实体(例如,连接设备120、122、124、126、127、128)的网络地址并识别网络实体的类型、制造商和/或模型,以及它们在居住结构10中的相对空间位置。
机器人停靠站140可以包括或连接到电源,并且包括充电器,当移动机器人200有效地对接在机器人停靠站140上时,充电器可操作以为移动机器人200的电池充电。停靠站140可以是排空站(evacuation station),其可包括电动容器,电容容器可致动以清空机器人200中的碎屑。在一些实施例中,停靠站140连接(有线或无线地)到专用网络160,以实现或促进数据从机器人200到专用网络160的传输,和/或数据从专用网络160到移动机器人200的传输。因此,机器人停靠站140可被视为自动化控制设备。在一些实施例中,机器人停靠站140通过无线的方式与移动机器人200直接通信,该无线的方式包括但不限于蓝牙、近场感应、IR和/或无线电通信信号。每个连接的设备120、122、124、126、127、128、140、142、144都可以包括无线收发器(例如Wi-Fi收发器),以经由WAP 164与集线器110和/或专用网络160通信。尽管通过示例示出了特定的连接的设备30A、34/34A、36、40、110、120、122、124、126、127、128、140、142、144、150、200,但是更少或更多的连接的设备可以包括在运行环境10中并且可以与专用网络160通信。
移动机器人200可以是任何合适的机器人和相关联的计算设备,并且应当理解,在根据本申请的实施例的移动机器人中,本文描述的所有组件、特征和功能都是非必需的。参考图2A至图2C所示,示例性的移动机器人200可包括机架210、控制器220、存储器222、电池224、电池充电器226、人机接口(HMI)228、驱动系统230、映射/导航系统240、服务操作系统242(在本文中也称为“清洁系统”和“清洁头”)、无线通信系统250、IR发射器260、环境传感器270A-H、碎屑箱242A(用于存储碎屑)、箱位传感器242B、灰尘提取传感器242C(用于检测通过清洁操作收集的碎屑的特征密度)、指示灯274A、音频变换器274B、测距设备276、清洁模式选择开关或按钮274C。
如图2A的顶部透视图所示,环境传感器270A-270H可以包括安装在移动机器人200的顶表面上的相机270B。相机270B可用于对机器人200进行导航并获取图像以用于其他操作用途。在一些实施例中,相机270B是视觉同步定位和映射(visual simultaneouslocation and mapping,VSLAM)相机,并且用于检测运行环境中的特征和地标并基于特征和地标来构建占用地图。
如图2B的底部透视图所示,移动机器人200可进一步包括保险杠104、悬崖传感器195A-195D、安装或以其他方式定位在移动机器人壳体106的外围的边缘刷111。如图2A-2B所示,壳体106具有安装有保险杠104的正方形前部。然而,在其他实施例中,壳体可以具有弧形或圆形形状。脚轮196可以设置在移动机器人200的下侧。在一些实施例中,脚轮196可以布置在移动机器人200的与清洁头242相反的一端,其中驱动辊/轨道232A、232B在它们之间,从而使清洁头242可以成为悬臂式布置。移动机器人200还可以包括面向下或面向地板的相机197。在一些实施例中,移动机器人200通常可以按照
地板清洁机器人和/或美国专利7,024,278和美国专利申请US8374721描述的机器人来配置或包括它们的特征,其中美国专利7,024,278和美国专利申请US8374721的公开内容通过引用及适当修改并入本文。在其他实施例中,移动机器人200通常可以被配置为自主巡逻机器人,其包括伸缩桅杆,该伸缩桅杆具有一个或多个与传感器元件270A-H和/或与无线通信电路或系统250相关联的元件,其中元件安装在传感器元件270A-H和/或无线通信电路或系统250上或以其他方式与它们可操作的相关联。
控制器220可以包括任何适当配置的一个或多个处理器。处理器可以包括一个或多个数据处理电路,例如可以在一个或多个网络上并置或分布(collocated ordistributed)的通用和/或专用处理器(例如微处理器和/或数字信号处理器)。处理器被配置为执行存储在存储器222中的程序代码(以下将存储器222描述为计算机可读存储介质),以执行以上针对一个或多个实施例描述的一些或全部操作和方法。存储器222代表根据本申请的一些实施例的一个或多个存储设备,其包含用于帮助机器人运行的软件和数据。存储器222可以包括但不限于以下类型的设备:高速缓存、ROM、PROM、EPROM、EEPROM、闪存、SRAM和DRAM。因此,处理器与控制器200、存储器222、清洁系统242以及驱动系统230通信。
驱动系统230可包括用于主动且可控制地使机器人200穿过居住空间20的任何合适的机构或系统。根据一些实施例,驱动系统230包括一个或多个辊、一个或多个轨道232A/232B以及控制器220可操作的一个或多个机载(即,由移动机器人200携带)电动马达234(在本文中统称为“驱动器”或“驱动系统”),以在运行环境10的整个地板上驱动机器人200。
服务操作系统242在一些实施例中可以是可选的,并且可操作以在居住空间20中执行服务操作。根据一些实施例,服务操作系统242包括地板清洁系统,在机器人200穿过居住空间20时,地板清洁系统可清洁居住空间20的地板表面。在一些实施例中,服务操作系统242包括吸头和机载真空生成器,以真空清洁地板。在一些实施例中,服务操作系统242包括末端执行器,例如(但不限于)清扫或拖把机构、一个或多个旋转刷、辊、湿的或干的固定或振荡和/或振动的布或多层垫组件。
无线通信系统250包括无线通信收发器或模块252和相关联的天线254,以使机器人200能够与运行环境10中的各种其他连接的设备120、122、124、126、127、128以及WAP、网关和集线器(它们构成了专用网络160)所服务的网络部分进行无线通信,在其中移动机器人200构成节点。例如,无线通信收发器或模块252可以是Wi-Fi模块。
在一些实施例中,机器人200可以使用窄带或宽带RF通信而直接与停靠站140进行无线通信。例如,如果机器人200未配备与WAP 164兼容的发射器,则机器人200可与停靠站140通信,停靠站140可继而将数据从机器人200中继到专用网络160上并转发到预期网络实体(例如远程管理服务器150)。在一些实施例中,停靠站140包括网桥设备,该网桥设备接收并转换来自机器人200的RF信号,并将RF信号以路由器支持的格式中继到路由器162,以传递给远程管理服务器150或专用网络160中的另一设备。在某些实施例中,停靠站140包括采用网状拓扑的低功率网状数据网络,其中RF通信信号在移动机器人200和停靠站140之间从节点中继到节点。在这种情况下,连接设备120、122、124、126、127、128、140和范围扩展器模块(如果有;未显示)可以用作网格节点。同样,移动机器人200可用作在停靠站140和其他节点(例如支持网络的传感器设备120、122、124、126、127、128、140和范围扩展器)之间中继信号的节点。
测距设备276包括可以与各个连接的设备的对应测距传感器(例如,图3的连接的计算设备300的测距设备340)通信的测距传感器。测距设备276被配置为从对应的测距设备接收信号,并确定测距设备和对应的测距设备之间的距离。该距离约等于移动机器人200与连接的设备之间的距离。测距设备276可以包括射频(RF)收发器,该射频收发器被配置为向/从各个连接的设备的相应测距设备发送/接收RF信号。测距设备276使用飞行时间(Timeof Flight,TOF)测量方法、接收信号强度(Received Signal Strength,RSS)测量方法、到达角(angle of Arrival,AoA)测量方法或它们的组合来确定到相应设备的距离。测距设备276向移动机器人200提供信号,该信号指示身份(例如,设备标识符)和到相应的连接的设备的距离。在一些方面,测距设备276可以包括指示何时从相应的测距设备接收到信号的时间戳。测距设备可以包括由Locix公司(Locix,Inc.)制造的测距板和传感器。测距设备可以包括处理器、收发器以及用于本地接收/处理和存储数据的数据存储器中的一个或多个组件。测距设备276与移动机器人200的一个或多个处理设备通信。
测距设备276被配置为自动与附近的各个连接的设备的相应测距设备对接(例如,在同一房间、在运行环境中等)。测距设备276接收周期性地从连接的设备发送的信号(例如,连接的设备广播的信号)。当移动机器人200从连接的设备接收到信号时,移动机器人存储到各个连接的设备的测量距离、与该信号相关联的连接的设备的标识符以及移动机器人的当前姿态。这些数据用于确定连接的设备在运行环境中的位置,如关于图5进一步详细描述的。
在一些实施方式中,测距设备276使用非RF信号和技术来确定两个设备之间的距离。测距设备276可以包括视觉信号。具有相机或类似传感器的移动机器人200在视觉上识别并定位具有相应视觉信号的连接的设备。预定数据(例如连接的设备的实际大小以及指示来自不同已知定位和位置的设备的轮廓的数据)可以作为一组校准图像用于估计移动机器人与连接的设备之间的距离。移动机器人200可以从连接的设备接收视觉信号,例如视觉信标(例如,LED),该视觉信号以移动机器人知道并能检测到的特定颜色或特定图案闪烁。通过观察来自多个位置的视觉信号,移动机器人200可以估计连接的设备的位置。替代地或附加地,连接的设备可以包括视觉标签(例如,诸如AprilTag或QR Code之类的经校准的条形码状标签)。当移动机器人200观察视觉标签时,移动机器人200可以基于视觉标签的已知属性来确定到标签的距离和角度,从而确定到连接的设备的距离和角度。在另一示例中,移动机器人200切换(toggle)连接的设备的运行方式(例如,打开和关闭灯泡)。移动机器人200检测对运行环境的相应改变(例如,利用相机的照明度变化以定位该特定的灯泡)。替代地或另外地,移动机器人200包括麦克风阵列。连接的设备发出移动机器人可检测到的音频信号(例如,啾啾声、哔哔声或其他已知模式的声音)。移动机器人200可以在多次检测声音发出的方向后定位连接的设备。在一些实施方式中,UWB测距解决方案(例如,由Decawave、Time Domain等提供)也可以用于确定测距数据。
虽然可以使用直接优化以传递准确测距信息的信号(例如,UWB),但是也可以使用其他较不准确的信号来推断本质上不准确的距离(例如,WiFi信号强度、音频、视觉等)。通过移动机器人200在移动时进行多次读取,可以确定轨迹优化收集的测距信息,并且可以确定连接的设备的精确位置。例如,如图10所示,移动机器人200可以在环境1000中的位置T1、T2、T3和T4处获取读数。可以一起处理多个读数以更准确地估计连接的设备1002、1004和1006的位置。移动机器人200知道移动机器人的穿越轨迹1008,可用来为T1、T2、T3和T4处接收到的测量提供额外的背景(context)。
参照图3所示,连接的计算设备300可以是任何合适的计算设备、计算机服务器或云服务或它们的组合,并且将意识到,根据本申请的实施例的计算设备中并非需要所有描述的组件、特征和功能。计算设备300包括一个或多个网络接口330、处理器电路(“处理器”)310和包含程序代码322的存储器320。网络接口330可以包括一个或多个网络发送器/接收器/收发器,它们被配置为通过一个或多个有线和/或无线网络与任何关联的可用服务器和/或数据存储库通信。处理器310可以包括一个或多个数据处理电路,例如可以在一个或多个网络上并置或分布的通用和/或专用处理器(例如微处理器和/或数字信号处理器)。处理器310被配置为执行存储器320(以下将其描述为计算机可读存储介质)中的程序代码322,以执行以上针对一个或多个实施例描述的一些或全部操作和方法。存储器320代表一个或多个存储设备,所述一个或多个存储设备包含根据本申请的一些实施例的用于帮助操作的软件和数据。存储器320可以包括但不限于以下类型的设备:高速缓存、ROM、PROM、EPROM、EEPROM、闪存、SRAM和DRAM。
图3的计算设备300因此示出了硬件/软件架构,可用于生成视觉状态指示从而根据本申请所述的一些实施例用于运行环境中的连接的设备或在运行环境中控制连接的设备。然而,将理解,本申请的实施例不限于这种配置,而是旨在涵盖能够执行本文所述的操作的任何配置。因此,计算设备300可以更一般地表示具有接收、处理、增强、存储和从在使用中的一个或多个连接的设备30A、34/34A、36、40、120、122、124、126、127、128、140、142、144、200或向这些连接的设备传输数据或命令的能力的任何设备或设备网络,所述设备或设备网络可以使用相关方法和技术的任何适当组合。计算设备300还可以提供额外的处理以支持具有与机器人200不同的需求的其他客户端,例如用于呈现在用户终端142、144上的可视化和其他丰富的UI交互。在一些实施例中,此处分配给计算设备300的功能也可以全部或部分的在机器人上本地执行,或者与一组机器人和/或服务器或通信中的其他计算设备协同/协调执行。
测距设备340包括对应的测距传感器,其与上面关于图2描述的测距设备276对接(interface)并与之类似(例如,与之相同)。测距设备340与移动机器人200的测距设备276以及与其他连接的设备中的一个或多个测距设备通信。测距设备340可以向连接的计算设备300提供数据,该数据指示到移动机器人200和其他连接的计算设备的距离。在一些实施方式中,除了传输连接的计算设备300和移动机器人200之间的距离之外,连接的计算设备300还被配置为将连接的计算设备300和其他连接的设备之间的测量距离传输到移动机器人200。连接的计算设备300的测距设备340可以被配置为充当信标并且周期性地在本地(例如,无线地向运行环境)发送数据,以便检测其他连接的设备的测距设备并与之对接。例如,移动机器人200的测距设备276被配置为检测信标信号并确定发送(例如,信标)信号的连接的计算设备的距离。一旦接收到信号,移动机器人200的测距设备276与测距设备340握手,并且交换测距数据。
移动机器人200上的测距设备276与测距设备340之间的握手可以由测距设备276本身来处理,而无需来自移动机器人的输入。在一些实施方式中,来自测距设备276、340的测距数据可以被发送到远程设备(例如,到云服务器等),使得测距设备276、240不直接交换测距数据。在该示例中,测距设备276、340交换较少量的数据,这些数据被配置为由远程设备、移动机器人200或其他设备进一步处理,以最终确定测距数据。
图1A的用户终端142、144可以是任何合适的固定或移动计算设备(包括台式计算机,笔记本电脑和“智能手机”),并且应当理解,在根据本申请的实施例的用户终端中,本文描述的所有组件、特征和功能都是非必需的,并且可以由图4的用户终端400更一般地表示。参考图4的示例,用户终端400被配置为通过多个有线和/或无线通信接口发送和/或接收通信信号。例如,根据一些实施例的用户终端400的收发器440可以包括蜂窝通信模块、红外(IR)通信模块、全球定位系统(GPS)模块、WLAN模块、无线个人局域网(WPAN)模块,例如蓝牙、Wi-Fi、ZigBee和/或Z-wave模块,和/或其他类型的通信模块。
用户终端400的用户界面410包括显示器408,诸如液晶显示器(LCD)和/或有机发光二极管(OLED)显示器。用户界面410可以可选地在用户终端400的壳体上包括小键盘402或其他用户输入机构。在一些实施例中,显示器408可以具有触摸屏功能以替换和/或补充小键盘402。接口410可以进一步包括麦克风406和耳机/扬声器404。当耳机/扬声器404抵靠用户的头部放置时,壳体可以被设计为形成对用户的耳朵的声密封。
键盘402、显示器408、麦克风406、扬声器404和相机424可以耦接至处理器427,例如微处理器或微控制器,其可以被配置为控制用户终端400的操作。用户终端400可以进一步包括耦接到处理器427的收发器440和存储器428。其他电子电路,例如WLAN通信接口、蓝牙接口、GPS接口、数字信号处理器等,也可以包括在户终端400的电子电路中。
存储器428可以是通用存储器,其用于存储处理器427的程序指令422以及诸如音频数据、视频数据、配置数据和/或可被访问的其他数据之类的数据。存储器428可以包括非易失性读/写存储器、只读存储器和/或易失性读/写存储器。特别地,存储器428可以包括其中存储有基本操作系统指令的只读存储器,其中存储诸如配置信息、目录信息和其他信息之类的可重用数据的非易失性读/写存储器,也可以包括易失性读/写存储器,其中可以存储短期指令和/或临时数据。
收发器440包括发射器电路442、接收器电路444和调制解调器446,它们协作以经由天线阵列450A、450B向远程收发器发送和接收射频信号。在用户终端400和远程收发器之间发送的射频信号可以包括业务和控制信号(例如,呼入呼叫的寻呼(paging)信号/消息),其用于建立和维持与另一方或目的地的通信。更具体地,收发器440可以与处理器427合作,并可被配置为用于根据多种无线电接入和/或无线联网技术进行通信,包括(但不限于)蜂窝、WLAN(包括802.11)、WiMAX(全球微波接入互操作性)、Wi-Fi、蓝牙、ZigBee和/或Z-wave。在根据本申请的实施例中,也可以使用其他无线电接入技术和/或频带。
再次参考图2C,移动机器人200可以包括以硬件、软件或其组合实现的定位器,该定位器可以构建基于度量和距离的墙壁和障碍物地图(例如,使用激光测距仪、声纳、雷达、三角测量、飞行时间或相位差计算)和/或自由空间(例如,可穿越的地面空间,或未被物体或固定装置占用的地面空间)的占用图(occupancy map)。移动机器人200可以使用诸如扫描匹配、ICP(迭代最近点法)和/或RANSAC(随机样本一致性算法)之类的技术在地图上对机器人进行定位。附加地或替代地,移动机器人200可以包括定位电路,该定位电路在自由空间占用图中构建特征、地标、基准点和/或信标的基于特征的印痕(fingerprinted)星座图或拓扑图(例如,使用相机或生成点云的3D扫描仪,与特征变换一起确定、存储和识别自然或人工关键点、特征和或地标),并可以使用VSLAM(基于视觉的/视觉同步的定位和映射)等技术在此占用图上定位机器人。通常将由移动机器人200的定位器基于在环境中的导航收集的数据称为环境的占用数据。终端用户可以通过任意一种网络实体的用户界面将唯一房间或区域(显示为区域1、区域2、区域3)的唯一标识与家庭房间类型或唯一房间标签(“客厅”)相关联,或者可以通过识别其中的地标或设备来自动确定。占用数据(可以在视觉上表示为运行环境的“全局地图”)可以包括定义环境10的多个表面位置的数据(例如,通过像素),每个表面位置具有一个值,该值表示像素位置对应于一个被占用的表面位置、对应于一个可被移动机器人200穿越的表面位置或是未被探索的表面位置。
定位电路可以由来自移动机器人200的传感器270A-270H和测距设备276中的一个或多个的输入来定义,控制器220可以使用这些输入在运行环境10中执行定位。更具体地,定位传感器270A-270H和测距设备276中的一个或多个被配置为从位于运行环境10中的对象检测传感器读数,控制器220被配置为基于定位传感器270A-270H和测距设备276所检测到的定位数据确定移动机器人200相对于被观察的对象(“对象”不仅包括可观察特征的物理对象,还包括由光学或其他方式检测到的表面特性形成的表面“对象”,例如拐角、路线、图案)的当前姿态(“姿态”包括绝对姿态或相对位置,以及可选的绝对或相对方向)。也可以确定对象的姿态。移动机器人200可以进一步被配置为将机器人姿态(例如,位置、方位等)与房间标识符相关联,其中房间标识符具体与观察到的对象或观察到的对象在房间中配置的姿态的或在房间的组件上(墙壁、天花板、照明、出入口、家具)可观察到的姿态相关联,如占用地图所指示的。下文将结合图7更详细地描述使用来自测距设备276的测距数据来确定移动机器人200的姿态。
转向图5,示出了移动机器人200在其中导航的运行环境500。移动机器人200被配置为确定运行环境500的一个或多个连接的设备502、504、506的空间位置。在该示例中,运行环境500包括单个房间,但是运行环境也可以包括多个房间。如上所述,移动机器人200对运行环境500进行导航,并使用从定位传感器270A-270H收集的占用数据来构建地图。移动机器人200确定其在第一时间在运行环境500中的姿态是(X,Y)。机器人200确定的姿态是指移动机器人相对于全局坐标系(也称为全局地图或绝对地图)的位置(可选的,还包括方向)。(X,Y)的坐标指代由移动机器人确定的在全局地图中的移动机器人200的位置(例如,使用如上所述的VSLAM技术)。
移动机器人200和连接的设备502、504、506是在运行环境500中形成网络的节点。移动机器人200在运行环境500中移动并且可以被标记为动态节点。连接的设备502、504、506通常在运行环境500中是固定的,并且可以被移动机器人200以及被彼此标记为静态节点。静态节点通常在它们之间具有网络已知的固定距离,如在连接的设备502和504之间的距离A1,在连接的设备504和506之间的距离A2,以及在连接的设备506和502之间的距离A3。距离A1、A2和A3可以被发送到移动机器人200(例如,响应于间歇性的查询等)。移动机器人200可以使用距离A1、A2、A3以确定运行环境500中连接的设备的位置。
在一些方面,设备502、504、506中的一个或多个不是静态的并且没有被标记为静态节点。例如,如果移动机器人200确定连接的设备502、504、506中的一个设备已经相对于运行环境500的其他连接的设备移动,则移动机器人200可以将适当的设备标记为另一动态节点。将连接的设备标记为动态节点可消除以下假设:该连接的设备与运行环境500中的其他连接的设备之间的距离A1、A2、A3中的一个或多个距离是静态的,这可以更改移动机器人200估算连接的设备在运行环境中的位置的方式。
在位置(X,Y),移动机器人(表示为移动机器人200a)从每个连接的设备502、504、506接收数据。在本示例中,设备506是虚拟助手,设备502是冰箱,设备504是电灯开关,并且这三个连接的设备都是静态的(并且距离A1、A2和A3不变)。移动机器人200a接收到每个设备的距离:到设备502的距离D1,到设备504的距离D2和到设备506的距离D3。
距离A1、A2、A3、D1、D2和D3可以采用移动机器人的测距设备276支持的任何格式,并且可以采用任何单位。例如,虚拟助手506可以报告D3是八英尺,244厘米,依此类推。在一些实施方式中,报告的距离包括误差因子。
移动机器人200接收包括距离D1、D2和D3及其各自的设备标识符的数据,并在移动机器人200的全局地图中用移动机器人200的当前姿态(例如,位置)标记每个接收到的数据,如下表1所示:
表1:在位置(X,Y)的距离数据
设备ID | 距离 | 当前姿态 |
502 | D1 | (X,Y,Z°) |
504 | D2 | (X,Y,Z°) |
506 | D3 | (X,Y,Z°) |
在某些方面,除了代表移动机器人200的姿态的位置数据之外,还存储了移动机器人200的方向(在表1中显示为Z°)。该方向可用于确定测距设备276相对于移动机器人200的中心或用作参考点的其他部分的精确位置,以表示移动机器人在全局地图中的位置。所确定的移动机器人姿态的方向数据提高了运行环境500中连接的设备502、504、506的估计位置的精度以及在全局地图中对连接的设备的坐标的分配和显示。
移动机器人执行对连接的设备502、504、506在运行环境500中的空间位置的估算,并在全局地图上绘制估计的位置,这些估计的位置可以显示在终端设备(例如设备400)上。距离数据(包括每个连接的设备502、504、506相对于移动机器人200的相对位置)被转换为每个连接的设备在运行环境500中的相对于移动机器人200的全局地图坐标的绝对位置数据。如上所述,可以由移动机器人200基于VSLAM(或其他定位和映射算法)构造全局地图。可使用测得的距离D1、D2、D3以及可选的使用距离A1、A2、A3(如果可用)执行位置估算。
在存在一个连接的设备的情况下或者在距离A1、A2、A3中的一个或全部距离不存在或不可用的其他情况下,设备502、504、506的位置的初始估算可能具有较大的不确定值。在这样的情况下,移动设备200可以避免在显示器上显示连接的设备502、504、506的估算位置(例如,如下面相对于图6A-6C所示),直到不确定值小于一个阈值。当移动机器人200在运行环境500中移动并收集其他测距数据(例如,D1’、D2’、D3’)时,不确定值会减小。
移动机器人200移动到位置(X’,Y’)(示为移动机器人200b)。移动机器人200从每个连接的设备502、504、506接收更新的距离数据,它们分别包括距离D1’、D2’和D3’。移动机器人200以移动机器人的更新姿态来标记更新的距离数据,从而生成类似于表1的另一张表。移动机器人200可以使用更新的距离D1’、D2’、D3’和初始测量距离D1、D2、D3来在全局地图中更新连接的设备502、504、506的位置估计。如果可用,则可以使用A1、A2和A3进一步完善连接的设备502、504、506的估计空间位置。
在一些实施方式中,距离数据由移动机器人200记录。给定时间段的测量值被使用三角测量、SLAM和/或vSLAM以及其他优化方法批次性处理,以作为一个过程的一部分根据所有的收集测量值联合确定距离值。距离数据可以存储在移动机器人200的存储器上或远程存储。来自移动机器人200的先前任务的数据可以用于改善当前任务的定位。例如,移动机器人200可以记录从每个连接的设备502、504、506接收的N个测量值,并确定移动机器人相对于每个连接的设备的矢量。相比于每次与接收到的距离数据迭代之后移动机器人在全局地图中为每个连接的设备502、504、506确定新的估计位置的过程相比,这样的批处理可以提高移动机器人200的定位。
转向参照图6A-6C,可以在用户终端400上显示由移动机器人200的定位器响应于对运行环境的导航而收集的占用数据的视觉表示,以增强对运行环境本地的电子设备的运行状态的认识和/或控制,例如参照图6A-6C所述的连接的设备30A、34/34A、36、40、110、120、122、124、126、127、128、140、200。图6A是根据本申请的实施例的用户终端400的平面图,其中用户终端400包括示例用户界面410,示例用户界面410被配置为在其中指示运行状态和/或控制连接的设备。
参照图6A,用户终端400的用户界面410被配置为显示占用地图的视觉表示50,在此也称为全局地图。全局地图50指示运行环境的一个区域或房间相对于另一区域或房间(示为小房间、书房、走廊、餐厅、厨房和客厅)的相对位置或空间背景(例如基于区域之间存在物理边界或不存在物理边界,如占用数据所示)。房间名称/类型/标签可以由用户手动输入,或者可以基于对物体或其中连接的设备的识别来自动确定。全局地图50填充有图标30a和34a-34c,它们表示在运行环境的边界内或本地的连接的设备(例如,诸如图5的设备502、504、506)。如上关于图5所述,将图标30a和34a-34c放置在全局地图50上指示电子设备相对于房间/区域的相应空间位置,如由移动机器人200所确定的。在一些方面,图标30a和34a-34c的图形特性指示这些电子设备的相应运行状态。用户界面410还可以被配置为显示在运行环境本地的设备的列表420以及用户输入元件550,其中用户输入元件550被配置为接收用户指定的期望运行状态信息的时间,如下面更详细描述的。
图6A-6C中示出了连接的设备30a、34a-f和40a的映射、显示以及控制。将理解,本申请的实施例不限于此,而是可以包括显示和/或控制在运行环境50本地的其他连接的设备的操作,包括但不限于灯/灯泡、门/窗传感器、门锁、扬声器、恒温器、环境传感器(包括但不限于温度、湿度、空气质量和照明水平传感器)、窗帘、语音接口设备、监控摄像头等。
图6A-6C的用户界面410示出了根据本申请的实施例的运行环境的示例视觉表示,其视觉上指示设备的相对空间位置及其运行状态。更具体地,图6A-6C示出了用户终端(例如用户终端142、144、400)的示例用户界面410的场景,其用于显示运行环境(例如图1A-1B的居住空间20)的视觉表示50。视觉表示被示为全局地图50,其上填充有图标30a、34a-34f、40a,图标指示运行环境中电子设备的相应空间位置和运行状态。
在图6A的示例中,由图标34a和34c表示的电子设备是连接的灯泡/灯具(例如图1B的照明设备34和/或排气灯34A),由图标34b表示的电子设备是智能助手,由图标30a表示的电子设备是连接的窗帘(例如图1B的窗帘30A)。填充的全局地图50提供了运行环境的可视“快照”,其中图标30a和34a-34c指示检测到的或用户指定的设备的位置和状态。用户界面510因此可以在视觉上指示由图标30a和34a-34c表示的设备的位置。在一些方面,图标可以指示所显示的设备是否正在根据用户的期望运行和/或协作。
参考图6A-6C所示,图标30a、34a-34c、40a可以自动地(即,无需人工干预)和/或响应于经由用户界面410的用户输入而填充到全局地图50。例如,用户终端执行某个应用,该应用提供的用户界面410可以从一个或多个网络源接收信息,该信息标识运行环境中的电子设备(包括连接的和未连接的设备)的信息和/或它们各自的运行状态,包括但不限于移动机器人200、集线器110、控制器120或其他连接的设备。因此可以生成标识本地设备和/或运行状态的列表420。
同样,如上关于图5所述,由图标30a、34a-34f、40a表示的设备的各个空间位置是自动确定的(例如,根据移动机器人收集的占用数据和/或无线信号覆盖数据)。
图6A-6C的用户界面410还包括用户输入元件550,该用户输入元件550被配置为接收命令的用户说明,该命令用于操作期望的由图标30a、34a-34f和/或40a表示的一个或多个所识别和显示的连接的设备。在图6B的示例中,用户输入元件550被示为调光器-滑动条,其被配置为接收将滑动元件1000沿条形元件1010的长度操纵到各个位置的用户输入。条形元件1010在视觉上表示可以传递到元件34d的功率范围。在一些方面,输入元件550中可以包括诸如用于恒温器的拨盘,用于智能助手的命令等控件。
图标30a、34a-34f、40a可以以多种方式在视觉上表示或指示运行状态,包括通过阴影、颜色、符号、标点和/或文本。例如,如图6C所示,代表起居室中的灯泡/灯具的图标34f具有实心图案以指示这些灯泡/灯具处于开启状态,而代表小房间中的灯泡/灯具的图标34a被阴影化以指示该灯泡是关闭的。代表餐厅、走廊和厨房中的灯泡/灯具(在空间上都与起居室相邻)的图标34c和34d带有斑点,表示灯泡/灯具变暗。这些视觉指示仅以示例的方式提供,并且将理解,响应于通过用户输入元件550输入的用户命令,用户界面410可以显示其他视觉指示和/或文本以指示由图标34a-34f表示的设备的实际或预期/预定的运行状态。
响应于对运行环境的导航,移动机器人的传感器(诸如图2A-2C中的移动机器人200的传感器270A-H)检测占用数据,可以基于检测的占用数据而生成本文所述的全局地图。在一些实施例中,可以基于占用数据和/或基于由移动机器人的无线收发器(诸如图2A-2C的移动机器人200的无线收发器252)获取的信号覆盖范围数据来确定本地电子设备的相对空间位置。在2017年5月5日提交的共同拥有的美国专利申请15/588,117中进一步描述了基于由移动机器人获取的占用数据和/或信号覆盖范围数据来生成地图和确定空间位置的操作,该申请通过引用整体并入本文。
可以基于经由网络160或170接收到的标识设备和/或设备运行状态的信息来生成运行环境本地的电子设备的列表420。例如,可以通过请求网关/集线器(例如图1B的集线器110)保存的、有关它们耦接到的设备的信息来识别设备和/或运行状态。在特定示例中,集线器110可以包括用于从合并的用户界面(例如,SmartThingsTM或Wink集线器)连接并控制IoT设备的硬件/软件,并且耦接到SmartThingsTM或Wink集线器的设备可以通过询问集线器而识别。在另一个示例中,联网的家庭能源监视设备(例如Sense家庭能源监视器)可以基于其功率消耗自动检测和识别设备和运行数据(无论是否启用网络)。用于获取设备标识的其他操作可以包括(但不限于)执行端口扫描以标识暴露的服务,针对接收到的响应进行模式匹配和/或与发现的服务进行交互以提取更多的结构化信息(例如,设备通过UPnP或mDNS等网络“发现”协议进行广告发布)。附加地或可替代地,可以经由用户界面(例如通过在设备列表420中的手动输入)来接收标识设备、设备的运行状态和/或设备空间位置的信息。
如本文所述的连接的计算设备可以进一步被配置成基于运行环境中的一个或多个电子设备各自的空间位置以及它们在其中的区域的相对空间背景来发送控制信号以控制一个或多个电子设备的操作。在一些实施例中,全局地图50可以指示是否存在墙壁和/或障碍物将运行环境的一个区域/房间(以及位于该区域/房间中的设备)与另一区域/房间隔开。可以基于连接的设备之间的空间关系(例如,在指定区域的一部分,彼此之间的距离在一个阈值内等)而将一个或多个连接的设备彼此关联。可以将包括空间关联关系的一个或多个连接的设备(例如,由终端设备400的用户指定的关联关系或由移动机器人200自动指定的关联关系)作为一个组进行控制(例如,图6C的设备34c)。
图6A-6C一起示出了移动机器人200在运行环境50中驱动时的任务的示例。随着移动机器人200在运行环境50中驱动,移动机器人200发现并定位了其他连接的设备并填充了本地设备列表420。如上所述,可以使用终端设备400的用户界面410而在本地设备列表420中进行选择,并且可以将命令发送到所选择的本地设备(例如,通过控件550)。
在图6A中,移动机器人200已经在餐厅、小房间和书房中导航过,并且当前在走廊中。已发现连接的设备30a、34a-c,并且已将连接的设备的位置自动添加到用户界面中显示的可视化界面中。图标30a、34a-c的位置表示已由移动机器人200确定并已添加到表示运行环境50的全局地图中的连接的设备的各个位置。
在图6B中,移动机器人200已经移至厨房并发现了另外的连接的设备34e。移动机器人200可以使用来自先前发现的、由图标30a和34a-c表示的连接的设备的信号来确定由图标34e表示的连接的设备的位置。该设备被添加到本地设备列表420。终端设备400的用户可以选择设备(例如,由走廊中的图标34d表示的设备),并且出现调光条1010。即使移动机器人200在厨房中,用户也可以使走廊中的图标34d所代表的灯变暗。
在图6C中,移动机器人200在起居室中并且发现了另外的连接的设备34f和40a。移动机器人200可以基于从新发现的、由图标34f和40a表示的连接的设备接收到的数据来细化连接的设备30a和34a-e的确定位置。例如,移动机器人200可以使用图标34f的三个灯中的每一个的位置来定位电子设备40a和由图标34e表示的冰箱的位置。因此,在该示例中,可以通过使用连接的设备的所存储的距离数据以及通过使用距离数据的新读数来基于新发现的设备更新整个全局地图。
可以在由移动机器人200执行的多个任务的背景下(例如,而不仅仅是移动机器人200的单次运行)来处理对各个连接的设备的距离捕获和连接的设备的位置映射。在延长的时间段内(例如,在移动机器人200的使用期限内),机器人将持续收集此类测距信息以细化连接的设备的位置,识别连接的设备何时移动并重新定位,并使用连接的设备的已知位置提高移动机器人200本身在运行环境50中的定位。
如本文所述的连接的计算设备可以进一步被配置为基于运行环境的相邻区域中的设备操作和/或环境条件来传输控制信号以预测性地控制一个或多个连接的电子设备的操作。例如,在控制诸如照明的动作感应(motion-activated)事件中,可能期望在用户进入空间之前(或当用户进入空间时)而不是在检测到用户在空间中存在之后控制连接的电子设备的操作。此外,可以基于电子设备的相对空间位置和/或它们所位于的房间的相关空间背景分别响应于检测到同一事件而对电子设备进行不同的控制。
根据本申请的实施例的进一步的操作和优点可以包括响应于将设备与运行环境中的各个空间位置相关联而自动生成和/或定制用于控制连接的设备的自动规则。例如,响应于确定全局地图中连接的设备的空间位置,可以基于设备的类型、与该位置相对应或邻近的房间的类型和/或该房间相对于运行环境中其他房间和/或设备的空间背景来自动生成用于设备操作的一个或多个条件指令。例如,响应于在地图上检测到房间的运动传感器类型的设备,当检测到运动时,可以自动生成连接的家庭规则以打开该房间中的灯。在另一个示例中,响应于检测到卧室中的照明设备被关闭,可以不响应于检测到相邻走廊中的运动而发送用于打开卧室中的照明设备的控制信号。房间类型可以通过接收房间名称的用户输入来确定,或者可以基于确定对象在房间中和/或房间中的电子设备的标识来自动检测房间类型。即,可以基于设备与空间位置的关联来自动创建用于操作电子设备的条件指令,并且可以响应于条件指令指示的一个或多个条件的出现来操作设备。还可以基于检测到运行环境中存在一个或多个用户和/或基于这些用户在相对空间环境中的位置来自动调整用于操作电子设备的条件指令。
本申请的实施例不限于表示运行环境中连接的设备的空间位置和状态信息。例如,一些实施例可以基于设备能量监视来提供瞬时状态信息,甚至对于运行环境本地的未连接的设备也是如此。特别是,可以使用联网的能源监控设备(例如Sense家用能源监控器)来确定未连接的设备的能源使用情况,能源监控设备会根据未连接的设备的功耗曲线自动检测和识别未连接的设备。例如,可以基于它们各自的能量使用和功率消耗曲线来唯一地识别运行环境中的空调单元和冰箱。也可以从能量使用和电源插座的相应位置来确定此类未连接的设备的运行状态信息和相应的空间位置。在对运行环境的导航期间,这样的未连接的设备的空间位置还可以由移动机器人在视觉上识别。因此,可以识别未连接的设备,它们会被添加到全局地图中以指示它们各自的空间位置,同时它们的能量使用信息可以相互关联,以提供如本文所述的运行环境中的位置和状态的视觉指示。
图7示出了示例的运行环境700,其中使用从一个或多个连接的设备702、704、706接收的测距数据来增强移动机器人200的定位。当移动机器人200导航通过运行环境700时,移动机器人以上面详细描述的方式根据占用数据生成全局信息。移动机器人200可以使用从每个连接的设备702、704、706接收到的距离数据在全局地图中定位移动机器人。
移动机器人200的定位可以结合其他定位技术(例如vSLAM或激光SLAM)执行。例如,由移动机器人200的相机接收的视觉数据可以用于识别路标并在运行环境700中定位移动机器人。在一些实施方式中,还接收来自一个或多个其他传感器的数据以用于在运行环境700中定位移动机器人200,诸如障碍物检测装置(例如,LiDAR、超声传感器等)、移动机器人的驱动系统的轴编码器等。轴编码器的滑移(slippage)、识别视觉路标的光线不足等会导致移动机器人200的位置估计错误。移动机器人200从连接的设备702、704和706中的一个或多个接收测距数据,并且使用这些附加的数据来验证移动机器人的估计位置的准确性。
在图7所示的场景中,移动机器人200在全局地图中移动了测量距离L1之后,将其在全局地图中的位置估计为(X,Y),由标记为710a的移动机器人示出。移动机器人200从传感器702、704和706中的一个或多个传感器接收测距数据。在该示例中,移动机器人200确定到连接的灯开关704的范围不是期望的S1,而是S1’。移动机器人200使用来自连接的设备702、704、706的距离数据来确定全局地图中标记为移动机器人710b的校正位置(X’,Y’)。移动机器人200实际上已经移动了距离L1',但是轮子的滑移、光线不足等导致定位错误。移动机器人200可以周期性地校正全局地图(以及障碍物、连接的设备等在全局地图中的位置)。例如,在图7中,移动机器人将其在运行环境700中的估计位置更新距离ΔE。
在某些方面,移动机器人200完全通过从连接的设备702、704、706接收的距离数据来确定其在运行环境700中的位置。移动机器人200基于接收到的信息生成运行环境700的全局地图,并在一段时间内存储距离数据。当从每个连接的设备702、704、706接收到新的测量迭代时,移动机器人200会更新全局地图。距离数据可以与一个或多个其他传感器(例如,LiDAR、超声波、碰撞开关等)结合使用以生成占用数据并根据占用数据生成全局地图。在一些实施方式中,距离数据是用于确定移动机器人200在全局地图中的位置的唯一数据。在一些实施方式中,移动机器人200将每个连接的设备标记为用于SLAM的地标,而不是使用视觉数据识别的地标。在一些实施方式中,移动机器人200使用与上述技术类似的技术利用WiFi距离数据(例如,接收到的信号强度数据)来确定移动机器人在全局地图中的位置。
图8-9是示出根据本申请的实施例可以由计算设备的至少一个处理器执行或响应于来自计算设备的至少一个处理器的指令而执行的流程图。图8-9的操作可以表示存储在非暂时性计算机可读介质(例如本文所述的存储设备222、320、428)中的可执行例程或指令,并且可以由一个或多个处理器(例如本文所述的处理器220、310和/或427)执行,以实现指定的例程或指令。
图8示出了用于确定运行环境中一个或多个连接的设备的位置的示例过程800。移动机器人获得(802)由静态设备测量的静态节点(例如,连接的设备)之间的距离。移动机器人(也称为动态节点)对移动机器人到每个静态节点的距离数据进行采样(804)。在对距离数据进行采样后,与移动机器人的位置一起在全局地图中标记(806)距离数据。将距离数据从移动机器人和每个连接的设备之间的局部距离转换(808)为全局地图上的每个连接的设备的绝对位置。在这种情况下,移动机器人的当前姿态(可同时包含位置和方向数据)被用作采样距离数据的原点坐标。距离数据可用于在全局地图中找到连接的设备相对于机器人位置的位置。静态节点的估计位置被显示(810)在用户界面中,其中用户界面包括移动机器人的全局地图(例如,运行环境)的可视化界面。也可以在全局地图中显示移动机器人的位置。
图9包括用于确定运行环境中一个或多个连接的设备的位置的过程900的示例。移动机器人(也称为动态节点)对到静态节点的距离数据进行采样(902)。在对距离数据进行采样后,与移动机器人的位置一起在全局地图中标记(904)距离数据。确定(906)是否已经存储了距离数据(例如来自其他连接的设备的距离数据)以及是否已估计了其他连接的设备的位置。如果全局地图中存在距离数据和连接的设备的先前估计位置,则可以基于移动机器人的姿态变化(以及附加距离数据的收集)来更新(908)位置的估计。如果没有存储连接设备的位置或距离数据,则将距离数据从移动机器人和每个连接的设备之间的局部距离转换(910)为全局地图上每个连接的设备的绝对位置。在这种情况下,移动机器人的当前姿态(可同时包含位置和方向数据)被用作采样距离数据的原点坐标。距离数据可用于在全局地图中找到连接的设备相对于机器人位置的位置。静态节点的估计位置被显示(912)在用户界面中,其中用户界面包括移动机器人的全局地图(例如,运行环境)的可视化界面。也可以在全局地图中显示移动机器人的位置。
基于占用数据,使运行环境中的电子设备与运行环境的各个空间位置相关联。如上所述,可以根据占用数据和/或由移动机器人响应于运行环境的导航而收集的无线信号覆盖数据和/或通过用户界面接收的用户输入来确定电子设备的空间位置。另外,例如,占用数据可以基于导航期间移动机器人遇到的、运行环境的区域之间的物理边界或不存在所述物理边界来指示运行环境中的房间。可以基于占用数据进一步识别房间在运行环境中的相关空间背景,并且可以根据房间在运行环境中的相对空间背景以及基于各个电子设备的空间位置而将电子设备分割或分组为各个子集。例如,在同一房间内/附近或在连续房间的边界内/附近的电子设备可以被分组为同一子集,而在一个房间或连续房间的边界之外的电子设备可以被分组为不同的子集。
控制信号可以被发送到一个或多个电子设备以基于它们各自的空间位置(和/或基于与各个空间位置相对应的房间的相对空间背景)来控制它们的操作。例如,控制信号可以根据它们在公共房间或连续空间中的对应分组或子集而被发送到一个或多个电子设备。在特定示例中,尽管空间上位于运行环境的相邻区域中的照明设备物理上位于不同的房间中,但是可以基于它们在公共子集中的分组来类似地控制它们。而且,可以基于与它们各自的空间位置相对应的房间的类型,和/或邻近它们各自的空间位置的运行环境的区域中的设备活动和/或环境条件,将控制信号发送到一个或多个电子设备。
也就是说,如本文所述,可以基于电子设备在运行环境中的相应空间位置、对应于它们各自空间位置的房间的相对空间背景和/或电子设备在运行环境(包括其他电子设备的操作状态和/或环境条件)的相邻区域中的操作条件来不同地控制电子设备。还可以将指示电子设备的实际操作的数据与指示电子设备的预期或计划操作的数据一起记录并存储在数据库中,以用于生成和显示瞬时状态信息,从而可以在用户选择的时间点呈现电子设备的运行状态。因此,基于在运行环境中的导航期间由移动机器人收集的占用数据,可以生成用户界面,该用户界面提供设备位置和设备的过去/当前/未来运行状态的可视表示,并且还允许对电子设备的当前或将来的运行状态进行控制。
在以上对本申请的各种实施例的描述中,本申请的各个方面在本文中描述和展示为多个可授予专利的类别或背景中的任意类别或背景,包括任何新的和实用的方法、机器、生产工艺、物质组成以及它们的任意实用改进。因此,本申请的各方面可以全部用硬件、全部用软件(包括固件、常驻软件、微代码等)或在总体上都统称为“电路”、“模块”、“组件”或“系统”的软件和硬件实现的组合来实施。此外,本申请的方面可以采取计算机程序产品的形式,该计算机程序产品包括在其上体现有计算机可读程序代码的一个或多个计算机可读介质。
可以使用一种或多种计算机可读介质的任何组合。所述计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。例如,计算机可读存储介质可以是但不限于:电子、磁性、光学、电磁或半导体的系统、装置或设备,或前述的任何合适的组合。计算机可读存储介质的更具体示例(非详尽列表)将包括以下内容:硬盘驱动器、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪存)、具有中继器的适当光纤、便携式光盘只读存储器(CD-ROM)、光学存储设备、磁存储设备或上述的任意合适组合。在本文的上下文中,计算机可读存储介质可以是任何非暂时性介质,其可以包含或存储程序供指令执行系统、装置或设备使用或与其结合使用。
计算机可读信号介质可以包括例如在基带中或作为载波的一部分的传播的数据信号,其中包含嵌入在其中的计算机可读信息。这样的传播信号可以采取多种形式中的任何一种,包括但不限于电磁、光学或其任何合适的组合。计算机可读信号介质可以是不是计算机可读存储介质的任何计算机可读介质,并且可以通信、传播或传输供指令执行系统、装置或设备使用或与其结合使用的程序。嵌入在计算机可读信号介质上的计算机可读信息(例如,作为程序代码)可以使用任何适当的介质进行传输,包括但不限于无线、有线、光缆、RF等,或前述的任何适当组合。
可以以一种或多种编程语言的任何组合来编写用于执行本申请的各方面操作的计算机程序代码。程序代码可以完全在本申请所述的用户终端、移动机器人或远程服务器上执行,或部分地在每个中的一个或多个上执行。在后一种情况下,远程服务器可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户终端和/或移动机器人。也可连接到外部计算机(例如,通过使用因特网服务提供商的因特网)和/或在云计算环境中或作为服务(例如软件即服务(Software as a Service,SaaS))提供。
在此参考根据本申请的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各方面。将理解的是,流程图图示和/或框图的每个框以及流程图图示和/或框图中的框的组合可以由计算机程序指令来实现。可以将这些计算机程序指令提供给通用计算机、专用计算机或其他可编程数据处理设备的处理器,以产生机制,从而使得经由计算机或其他可编程指令执行设备的处理器执行的指令创建一种机制来实现流程图和/或框图中指定的功能/动作。
这些计算机程序指令还可以存储在计算机可读介质中,这些计算机程序指令在被执行时可以指导计算机、其他可编程数据处理装置或其他设备以特定方式起作用,使得该指令在存储在计算机可读介质中时产生包括指令的制造产品,该指令在被执行时使计算机执行流程图和/或框图的框中指定的功能/动作。所述计算机程序指令还可以被加载到计算机、其他可编程指令执行设备或其他设备上,以使得在计算机、其他可编程设备或其他设备上执行一系列操作步骤以产生计算机实现的过程,从而使得在计算机或其他可编程装置上执行的指令提供了用于实现流程图和/或框图的框中指定的功能/动作的过程。
应当理解,本文所使用的术语仅是出于描述特定实施方式的目的,并不旨在限制本发明。除非另有定义,否则本文中使用的所有术语(包括技术和科学术语)具有与本申请所属领域的普通技术人员通常所理解的相同含义。还将理解的是,诸如在常用词典中定义的术语应被解释为具有与其在本说明书和相关技术的上下文中的含义一致的含义,并且将不被理想化或过度解释,除非本文明确定义。
附图中的流程图和框图示出了根据本申请各个方面的系统、方法和计算机程序产品的可能实现的体系结构、功能和操作。就这一点而言,流程图或框图中的每个框可以代表代码的模块、分段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。还应注意,在一些替代实施方式中,方框中指出的功能可以不按图中指出的顺序发生。例如,取决于所涉及的功能,实际上可以基本上同时执行连续示出的两个框,或者有时可以以相反的顺序执行这些框。还应注意,框图和/或流程图说明的每个框以及框图和/或流程图说明中的框的组合可以由执行指定功能或动作的基于专用硬件的系统或专用硬件和计算机指令的组合来实现。
前述内容是本申请的实施例的说明,并且不应解释为对其的限制。尽管已经描述了一些示例实施例,但是本领域技术人员将容易理解,在实质上不背离本发明的教导和优点的情况下,可以对示例实施例进行许多修改。因此,所有这样的修改意在包括在本发明的范围内。因此,应当理解,前述内容是对本发明的说明,并且不应解释为限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改也被包括在本发明的范围内。
Claims (31)
1.一种自主清洁机器人,其特征在于,所述自主清洁机器人包括:
驱动系统,所述驱动系统用于在清洁任务期间在环境中移动所述机器人;
清洁头,所述清洁头被配置为从地板表面移除碎屑;
测距设备,所述测距设备用于检测位于所述环境中的多个连接的设备;以及
控制器,所述控制器用于
使用来自所述测距设备的数据确定所述多个连接的设备的位置,以及
发送数据以使远程用户设备呈现所述环境的视觉表示和指示所述多个连接的设备在所述环境中的位置的视觉指示。
2.根据权利要求1所述的自主清洁机器人,其特征在于,所述测距设备被配置为在视觉上检测所述多个连接的设备。
3.根据权利要求2所述的自主清洁机器人,其特征在于,所述自主清洁机器人被配置为启动单个连接的设备的切换操作并检测所述环境的相应变化。
4.根据权利要求3所述的自主清洁机器人,其特征在于,所述自主清洁机器人被配置为基于所检测到的所述环境的变化来定位所述单个连接的设备。
5.根据权利要求1所述的自主清洁机器人,其特征在于,所述控制器被配置为启动向所述远程用户设备的数据传输,所述数据指示所述多个连接的设备中的一个连接的设备的运行状态,以使所述远程用户设备呈现指示所述连接的设备的运行状态的视觉指示。
6.根据权利要求1所述的自主清洁机器人,其特征在于,所述控制器被配置为通过所述自主清洁机器人执行的多个任务确定所述多个连接的设备的位置。
7.根据权利要求6所述的自主清洁机器人,其特征在于,所述自主清洁机器人执行的所述多个任务包括至少一个清洁任务。
8.根据权利要求6所述的自主清洁机器人,其特征在于,所述自主清洁机器人执行的所述多个任务包括至少一个巡逻任务。
9.根据权利要求1所述的自主清洁机器人,其特征在于,所述多个连接的设备分布在所述环境的多个区域中。
10.根据权利要求1所述的自主清洁机器人,其特征在于,所述控制器被配置为确定单个连接的设备相对于另一连接的设备已经在所述环境中移动,并且将所述单个连接的设备标识为动态节点。
11.根据权利要求1所述的自主清洁机器人,其特征在于,所述控制器被配置为确定单个连接的设备相对于另一连接的设备在所述环境中是静态的,并且将所述单个连接的设备标识为静态节点。
12.根据权利要求1所述的自主清洁机器人,其特征在于,所述控制器被配置为确定所述环境中的成对的单个连接的设备之间的距离。
13.一种机器人,其特征在于,所述机器人包括:
驱动系统,所述驱动系统用于在环境中移动机器人;
测距设备,所述测距设备用于检测位于所述环境中的多个连接的设备;以及
控制器,所述控制器用于
使用来自所述测距设备的数据确定所述多个连接的设备的位置,以及
发送数据以使远程用户设备呈现所述环境的视觉表示和指示所述多个连接的设备在所述环境中的位置的视觉指示。
14.根据权利要求13所述的机器人,其特征在于,所述测距设备被配置为在视觉上检测所述多个连接的设备。
15.根据权利要求14所述的机器人,其特征在于,所述机器人被配置为启动单个连接的设备的切换操作并检测所述环境的相应变化。
16.根据权利要求15所述的机器人,其特征在于,所述机器人被配置为基于所检测到的所述环境的变化来定位所述单个连接的设备。
17.根据权利要求13所述的机器人,其特征在于,所述控制器被配置为启动向所述远程用户设备的数据传输,所述数据指示所述多个连接的设备中的一个连接的设备的运行状态,以使所述远程用户设备呈现指示所述连接的设备的运行状态的视觉指示。
18.根据权利要求13所述的机器人,其特征在于,所述控制器被配置为通过所述自主清洁机器人执行的多个任务确定所述多个连接的设备的位置。
19.根据权利要求13所述的机器人,其特征在于,所述多个连接的设备分布在所述环境的多个区域中。
20.根据权利要求13所述的机器人,其特征在于,所述控制器被配置为确定单个连接的设备相对于另一连接的设备已经在所述环境中移动,并且将所述单个连接的设备标识为动态节点。
21.根据权利要求13所述的机器人,其特征在于,所述控制器被配置为确定单个连接的设备相对于另一连接的设备在所述环境中是静态的,并且将所述单个连接的设备标识为静态节点。
22.根据权利要求13所述的机器人,其特征在于,所述控制器被配置为确定所述环境中的成对的单个连接的设备之间的距离。
23.一种用户终端,其特征在于,所述用户终端包括:
显示器;
用户输入设备;
无线通信设备;以及
控制器,所述控制器与所述显示器、所述无线通信设备和所述用户输入设备通信,所述控制器被配置为
使用所述无线通信设备接收数据,所述数据指示移动清洁机器人在环境中检测到的多个连接的设备的位置,
使用所述显示器呈现所述环境的视觉表示和指示所述多个连接的设备相对于所述环境的位置的视觉指示,
从所述用户输入设备接收命令,所述命令用于控制所述多个连接的设备中的一个连接的设备的运行状态,以及
使用所述无线通信设备发送数据,所述数据指示所述用于控制所述多个连接的设备中的一个连接的设备的运行状态的命令。
24.根据权利要求23所述的用户终端,其特征在于,所述多个连接的设备包括至少一个灯、灯泡、门传感器、窗户传感器、门锁、扬声器、恒温器、环境传感器、窗帘、语音接口设备或监控摄像机。
25.根据权利要求23所述的用户终端,其特征在于,所述控制器被配置为当所述移动清洁机器人在所述环境中移动并检测所述多个连接的设备的位置时接收所述数据。
26.根据权利要求23所述的用户终端,其特征在于,所述控制器被配置为:接收指示与所述多个连接的设备不同的另一连接的设备的位置的数据以及指示所述另一连接的设备的位置的不确定性的数据,并且响应于所述不确定性,呈现所述多个连接的设备的视觉指示但不呈现所述另一连接的设备的位置的视觉指示。
27.根据权利要求23所述的用户终端,其特征在于,所述控制器被配置为响应于所述移动清洁机器人检测到与所述多个连接的设备不同的其他连接的设备,对指示所述多个连接的设备的位置的多个视觉指示中的一个视觉指示进行更新。
28.根据权利要求23所述的用户终端,其特征在于,所述控制器被配置为接收信息,所述信息指示未连接的设备的类型,其中所述未连接的设备的类型是基于能量使用或功率消耗曲线确定的。
29.根据权利要求23所述的用户终端,其特征在于,所述控制器被配置为呈现所述连接的设备的运行状态的视觉指示。
30.根据权利要求23所述的用户终端,其特征在于,所述控制器被配置为从网关集线器接收所述多个连接的设备的运行状态。
31.根据权利要求23所述的用户终端,其特征在于,所述视觉指示用于指示所述连接的设备的过去、当前和将来的运行状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862614182P | 2018-01-05 | 2018-01-05 | |
US62/614,182 | 2018-01-05 | ||
PCT/US2018/068144 WO2019136019A1 (en) | 2018-01-05 | 2018-12-31 | Mapping, controlling, and displaying networked devices with a mobile cleaning robot |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111526973A CN111526973A (zh) | 2020-08-11 |
CN111526973B true CN111526973B (zh) | 2023-10-20 |
Family
ID=67140892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880078951.7A Active CN111526973B (zh) | 2018-01-05 | 2018-12-31 | 用移动清洁机器人映射、控制和显示网络设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11556125B2 (zh) |
EP (1) | EP3735340B1 (zh) |
CN (1) | CN111526973B (zh) |
WO (1) | WO2019136019A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102291884B1 (ko) * | 2018-08-03 | 2021-08-20 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법 |
US11960278B2 (en) | 2018-08-05 | 2024-04-16 | Lg Electronics Inc. | Moving robot and controlling method thereof |
KR102238352B1 (ko) | 2018-08-05 | 2021-04-09 | 엘지전자 주식회사 | 스테이션 장치 및 이동 로봇 시스템 |
US11303707B1 (en) * | 2018-08-14 | 2022-04-12 | Joelle Adler | Internet of things sanitization system and method of operation through a blockchain network |
US11272823B2 (en) * | 2018-08-31 | 2022-03-15 | Neato Robotics, Inc. | Zone cleaning apparatus and method |
US20220005332A1 (en) * | 2018-10-29 | 2022-01-06 | Hexagon Technology Center Gmbh | Facility surveillance systems and methods |
US11507769B2 (en) * | 2018-12-12 | 2022-11-22 | International Business Machines Corporation | Interpreting sensor transmission patterns to analyze anomalies in a smart environment |
US11358274B2 (en) * | 2019-06-13 | 2022-06-14 | Lingdong Technology (Beijing) Co. Ltd | Autonomous mobile robot with adjustable display screen |
CN110443175A (zh) * | 2019-07-29 | 2019-11-12 | 苏州维众数据技术有限公司 | 基于分离式视觉检测的清洁机器人控制系统及控制方法 |
KR20210015211A (ko) * | 2019-08-01 | 2021-02-10 | 엘지전자 주식회사 | 실시간으로 클라우드 슬램을 수행하는 방법 및 이를 구현하는 로봇과 클라우드 서버 |
CN111242996B (zh) * | 2020-01-08 | 2021-03-16 | 郭轩 | 一种基于Apriltag标签与因子图的SLAM方法 |
GB2592414B (en) * | 2020-02-27 | 2022-08-31 | Dyson Technology Ltd | Robot |
TWI848107B (zh) | 2020-05-06 | 2024-07-11 | 微星科技股份有限公司 | 在一slam地圖中重新定位一移動載具的方法及移動載具 |
US20220083062A1 (en) * | 2020-09-11 | 2022-03-17 | Locus Robotics Corp. | Robot navigation management between zones in an environment |
WO2022108757A1 (en) * | 2020-11-18 | 2022-05-27 | Arris Enterprises Llc | Management of opening a connection to the internet for smart assistant devices |
DE102020216317A1 (de) | 2020-12-18 | 2022-06-23 | Zf Friedrichshafen Ag | Innenraumlokalisierung beweglicher Objekte |
US12007785B2 (en) * | 2021-08-31 | 2024-06-11 | Samsung Electronics Co., Ltd. | Cleaning robot capable of obtaining map of indoor space and operating method thereof |
CN114286442A (zh) * | 2022-01-24 | 2022-04-05 | 杭州涂鸦信息技术有限公司 | 定位方法、待定位设备的控制方法、移动设备及存储介质 |
WO2023168707A1 (en) | 2022-03-11 | 2023-09-14 | Intelligent Cleaning Equipment Holdings Co. Ltd. | Systems and methods for tracking and scoring cleaning |
US20240144125A1 (en) * | 2022-10-28 | 2024-05-02 | Carnegie Robotics, Llc | Method for planning cleaning operations at a facility |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2570772A1 (en) * | 2011-09-16 | 2013-03-20 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | Method for localisation and mapping of pedestrians or robots using wireless access points |
CN106037589A (zh) * | 2015-04-16 | 2016-10-26 | Lg电子株式会社 | 机器人清洁器 |
CN106444786A (zh) * | 2016-11-29 | 2017-02-22 | 北京小米移动软件有限公司 | 扫地机器人的控制方法及装置和电子设备 |
CN106687878A (zh) * | 2014-10-31 | 2017-05-17 | 深圳市大疆创新科技有限公司 | 用于利用视觉标记进行监视的系统和方法 |
CN106993980A (zh) * | 2017-03-21 | 2017-08-01 | 美的智慧家居科技有限公司 | 扫地机器人及其控制方法 |
CN107518826A (zh) * | 2013-01-18 | 2017-12-29 | 艾罗伯特公司 | 提供用于家庭环境控制的环境绘图的移动机器人 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003270581A1 (en) | 2002-09-13 | 2004-04-30 | Mark J. Chiappetta | A navigational control system for a robotic device |
EP2466411B1 (en) | 2005-12-02 | 2018-10-17 | iRobot Corporation | Robot system |
WO2009038772A2 (en) | 2007-09-20 | 2009-03-26 | Evolution Robotics | Transferable intelligent control device |
US9233472B2 (en) * | 2013-01-18 | 2016-01-12 | Irobot Corporation | Mobile robot providing environmental mapping for household environmental control |
US9375847B2 (en) | 2013-01-18 | 2016-06-28 | Irobot Corporation | Environmental management systems including mobile robots and methods using same |
CN112220406A (zh) | 2014-03-24 | 2021-01-15 | 智能清洁设备控股有限公司 | 具有智能系统的地板清洁机器 |
US10254744B2 (en) * | 2015-09-25 | 2019-04-09 | Intel Corporation | Telerobotic controller |
CN105279897B (zh) * | 2015-10-13 | 2018-07-31 | 小米科技有限责任公司 | 车辆报警方法及装置 |
JP6565607B2 (ja) * | 2015-10-30 | 2019-08-28 | 株式会社リコー | 通信システム、コンテンツ取得方法、およびプログラム |
JP6995770B2 (ja) * | 2016-06-15 | 2022-01-17 | アイロボット・コーポレーション | 自律移動ロボットを制御するためのシステムおよび方法 |
US20210147150A1 (en) * | 2016-10-08 | 2021-05-20 | Zhejiang Guozi Robot Technology Co., Ltd. | Position and orientation deviation detection method and system for shelf based on graphic with feature information |
US10528059B2 (en) * | 2017-05-24 | 2020-01-07 | Uatc, Llc | Systems and methods for controlling autonomous vehicles that provide a vehicle service to users |
US11348269B1 (en) * | 2017-07-27 | 2022-05-31 | AI Incorporated | Method and apparatus for combining data to construct a floor plan |
-
2018
- 2018-12-31 CN CN201880078951.7A patent/CN111526973B/zh active Active
- 2018-12-31 US US16/236,844 patent/US11556125B2/en active Active
- 2018-12-31 EP EP18898160.9A patent/EP3735340B1/en active Active
- 2018-12-31 WO PCT/US2018/068144 patent/WO2019136019A1/en unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2570772A1 (en) * | 2011-09-16 | 2013-03-20 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | Method for localisation and mapping of pedestrians or robots using wireless access points |
CN107518826A (zh) * | 2013-01-18 | 2017-12-29 | 艾罗伯特公司 | 提供用于家庭环境控制的环境绘图的移动机器人 |
CN106687878A (zh) * | 2014-10-31 | 2017-05-17 | 深圳市大疆创新科技有限公司 | 用于利用视觉标记进行监视的系统和方法 |
CN106037589A (zh) * | 2015-04-16 | 2016-10-26 | Lg电子株式会社 | 机器人清洁器 |
CN106444786A (zh) * | 2016-11-29 | 2017-02-22 | 北京小米移动软件有限公司 | 扫地机器人的控制方法及装置和电子设备 |
CN106993980A (zh) * | 2017-03-21 | 2017-08-01 | 美的智慧家居科技有限公司 | 扫地机器人及其控制方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3735340A1 (en) | 2020-11-11 |
US11556125B2 (en) | 2023-01-17 |
CN111526973A (zh) | 2020-08-11 |
WO2019136019A1 (en) | 2019-07-11 |
EP3735340A4 (en) | 2022-01-19 |
EP3735340B1 (en) | 2023-06-07 |
US20190212730A1 (en) | 2019-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111526973B (zh) | 用移动清洁机器人映射、控制和显示网络设备 | |
JP7476162B2 (ja) | 移動ロボットの案内のためにワイヤレス通信信号のマップを作成するための方法、システム、およびデバイス | |
JP7362814B2 (ja) | デバイスのステータスのマップを作成し、デバイスのステータスを制御し、表示するための方法、システム、およびデバイス | |
US20240051153A1 (en) | Mobile robot providing environmental mapping for household environmental control | |
JP7025170B2 (ja) | 家庭環境制御のための環境マッピングを提供する移動ロボット |
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 |