CN109421067A - 机器人虚拟边界 - Google Patents
机器人虚拟边界 Download PDFInfo
- Publication number
- CN109421067A CN109421067A CN201811011610.6A CN201811011610A CN109421067A CN 109421067 A CN109421067 A CN 109421067A CN 201811011610 A CN201811011610 A CN 201811011610A CN 109421067 A CN109421067 A CN 109421067A
- Authority
- CN
- China
- Prior art keywords
- robot
- boundary
- virtual boundary
- map
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 29
- 238000012549 training Methods 0.000 claims abstract description 16
- 230000008859 change Effects 0.000 claims abstract description 9
- 230000015654 memory Effects 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 10
- 239000003550 marker Substances 0.000 claims description 9
- 230000033001 locomotion Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000000007 visual effect Effects 0.000 claims description 3
- 238000009434 installation Methods 0.000 claims 2
- 241001463139 Vitta Species 0.000 claims 1
- 238000004140 cleaning Methods 0.000 abstract description 23
- 238000003860 storage Methods 0.000 description 72
- 238000012545 processing Methods 0.000 description 40
- 238000004891 communication Methods 0.000 description 27
- 230000004888 barrier function Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 7
- 238000012937 correction Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 239000011800 void material Substances 0.000 description 5
- 239000000428 dust Substances 0.000 description 4
- 230000035611 feeding Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000000712 assembly Effects 0.000 description 3
- 238000000429 assembly Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000011469 building brick Substances 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 235000001275 Bouea macrophylla Nutrition 0.000 description 1
- 240000001160 Bouea macrophylla Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 241000755666 Neato Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000002591 computed tomography Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 238000004851 dishwashing Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000002595 magnetic resonance imaging Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000005204 segregation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000003325 tomography Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/008—Manipulators for service tasks
- B25J11/0085—Cleaning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/006—Controls for manipulators by means of a wireless system for controlling one or several manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme 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/1697—Vision controlled systems
-
- 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
-
- 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/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
- G05D1/024—Control 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
-
- 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/0259—Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means
- G05D1/0263—Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means using magnetic strips
-
- 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/40—Robotics, robotics mapping to robotics vision
- G05B2219/40478—Graphic display of work area of robot, forbidden, permitted zone
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/02—Arm motion controller
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/46—Sensing device
- Y10S901/47—Optical
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Electromagnetism (AREA)
- General Engineering & Computer Science (AREA)
- Optics & Photonics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electric Vacuum Cleaner (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Navigation (AREA)
- Instructional Devices (AREA)
Abstract
本公开提供了一种清洁机器人及一种操控所述清洁机器人的方法。在一个实施例中,提供区域地图的全局坐标中的虚拟边界,且将虚拟边界转换为对应于多个部分地图的多个线段。在一个实施例中,在训练/绘制地图的运行期间使用物理边界标记,将位置添加到区域地图,随后移走物理边界标记。在一个实施例中,虚拟边界随时间改变以改变清洁区域、充当门、改变相关的清洁模式等。在一个实施例中,由用户选择具有边界的虚拟区域。
Description
技术领域
本发明涉及设置边界以限制机器人可以到达的位置,特别涉及具有虚拟边界的清洁机器人。
背景技术
Neato机器人配备有磁传感器,该磁传感器可以检测磁场并使得机器人可以做出行为决定。用户可沿地板放置磁条以防止机器人越过磁条。iRobot为其Roomba扫地机器人提供了一个灯塔,该灯塔通过在门口或其他位置发射锥形红外(IR)光束来提供Virtual边界,具体取决于用户放置灯塔的位置。灯塔也可以作为一个门起作用,允许机器人在清洁边界一侧的区域后通过。Ecovacs Deebot R95通过允许用户在机器人清洁区域的地图上绘制线路来指示机器人不可越过的线路,从而提供虚拟边界。提供一种改进的虚拟边界系统是期望的。
发明内容
在一个实施例中,用户在机器人的地图生成运行期间将磁条、IR应答器或其他边界指示标记放置在一个或多个位置处。机器人在区域中的位置被绘制成地图时将边界信息与地图一起记录。然后,用户可以移除边界指示标记,或将其移动到另一个位置以进行相同的地图生成运行。此后,机器人可以识别对应于记录的边界位置的虚拟边界,而不需要物理边界标记留在原位。或者,用户可以在房间的门框上放置标签以指示虚拟边界。标签可以是条形码、QR码、可通过IR检测的黑色标签、彩色条带、图案或任何其他标签。标签可以表示机器人应该避开该区域,仅清洁而不为该区域绘制地图,使用特殊的清洁模式等。
在一个实施例中,虚拟边界随时间改变。例如,可以设置虚拟边界以控制机器人每隔一个清洁例程到高流量区域。在另一个示例中,虚拟边界可以充当门,控制机器人到特定区域直到该区域被清洁,然后打开边界以允许机器人清洁另一区域,或返回其基地。在另一个示例中,特定清洁模式可以与边界所指示的区域的不同时间相关联,例如按预定计划一次沿纵向清洁,以及在另一次沿横向清洁。
在一个实施例中,用户为特定机器人在区域地图上的指示虚拟边界。然后机器人将自动校正边界,并且可以在显示画面上向用户呈现建议的校正。在一个示例中,机器人确定虚拟边界没有一直扩展到墙壁,并且实际上不是边界,因为机器人有空间绕着线路行进。机器人可以建议将边界扩展到最近的墙壁。在另一示例中,机器人可以检测到边界围绕障碍物,并且机器人可以比边界线更靠近障碍物移动。然后机器人可以将边界调整为更接近障碍物。或者,机器人可以确定虚拟边界太靠近物体,并且它碰撞到物体或者被物体缠绕。然后,机器人可以将虚拟边界远离物体移动以避免问题。
在一个实施例中,机器人生成其自己的虚拟边界,或向用户建议虚拟边界。机器人可以建议在检测到跌落(例如,楼梯),或者其检测可能导致缠结的障碍物(例如,线),或者之前被卡住的地方设置边界。机器人可以设置其自己的虚拟边界,例如以避开具有许多障碍物将花费大量时间来导航的区域,如果其具有足够的电池寿命来清洁该区域,则提升虚拟边界。
在一个实施例中,机器人需要在用户可以标记期望的虚拟边界之前生成地图。可能需要训练课程以允许机器人绘制该区域的地图并将该地图呈现给用户。为避免长时间延迟,机器人可以使用更宽的车道来绘制该区域的地图。机器人覆盖其LIDAR或其他测绘传感器范围内的区域,而不是像正常清洁模式那样覆盖地板的每一寸。例如,这可能意味着对应于LIDAR的6英尺车道,并且可选地也意味着沿着墙壁移动。对于基于图像的SLAM算法,单次通过房间可能就足够了。
在一个实施例中,用户为特定机器人在区域地图上指示虚拟边界。虚拟边界在区域地图的全局坐标中被提供给远程服务器。然后虚拟边界被下载到机器人。机器人通过将虚拟边界分割成对应于多个部分地图的多个线段来转换全局坐标中的虚拟边界。线段被转换为对应每个部分地图的局部坐标。在进入每个部分地图区域时,机器人将线段与部分地图进行比较以确定部分地图的虚拟边界。
在一个实施例中,可以将区域添加到具有虚拟边界的地图。调整地图的坐标以考虑原始坐标区域之外的新区域(例如,在0,0坐标的左侧的区域)。然后调整虚拟边界的坐标以反映新的坐标系。
在一个实施例中,所述虚拟边界指示一区域,例如要避开的区域或要清洁的区域。边界区域可以由用户指示机器人的全局地图上的多个标记区域中的特定一个来选择。
附图说明
图1是根据一实施例的具有LIDAR转台的清洁机器人的图。
图2是根据一实施例的清洁机器人和充电站的图。
图3是根据一实施例的清洁机器人的底面的图。
图4是根据一实施例的用于清洁机器人的智能手机控制应用的显示画面的图。
图5是根据一实施例的用于清洁机器人的智能手表控制应用的显示画面的图。
图6是根据一实施例的用于清洁机器人的电子系统的图。
图7是可用于实现本发明的某些实施例的代表性计算系统和客户端计算系统的简化框图。
图8是根据一实施例的带有对应于清洁机器人的用户绘制的虚拟边界的机器人的全局地图的图。
图9是根据一实施例的用于为部分地图生成虚拟边界段的过程的流程图。
图10是示出用于更新地图坐标系的实施例的图。
具体实施方式
总体结构
图1是根据一实施例的具有LIDAR转台的清洁机器人的图。清洁机器人102具有发射旋转激光束106的LIDAR(光检测和测距)转台104。检测到的来自物体的反射激光束用于计算物体的距离及清洁机器人的位置。距离计算的一个实施例在专利号8,996,172,名称为“距离传感器系统和方法”的美国专利文件中详细阐述,其公开内容通过引用并入本文。或者,可以使用VSLAM(使用图像传感器的可视SLAM)或其他定位方法。所收集的数据还用于使用SLAM(即时定位与地图构建)算法创建地图。SLAM算法的一个实施例描述于专利号8,903,589,名称为“用于移动机器人环境的即时定位与地图构建的方法和装置”,其公开内容通过引用并入本文。
图2是根据一实施例的清洁机器人和充电站的图。示出了具有转台104的清洁机器人102。还示出了盖204,盖204可以打开以接近集尘袋和刷子的顶侧。按钮202使得能够进行机器人清洁器的基本操作,例如开始清洁操作。显示器205向用户提供信息。清洁机器人102可以与充电站206对接,并通过充电触点208接收电力。
图3是根据一实施例的清洁机器人的底部的图。轮子302使清洁机器人移动,刷子304有助于使自由尘土被吸尘到尘土袋中。
图4是根据一实施例的用于清洁机器人的智能手机控制应用的显示画面的图。智能手机402具有下载的应用程序以控制清洁机器人。易于使用的界面具有开始按钮404以启动清洁。
图5是根据一实施例的用于清洁机器人的智能手表控制应用的显示画面的图。示出了示例性的显示画面。显示画面502提供易于使用的开始按钮。显示画面504提供控制多个清洁机器人的能力。显示画面506向用户提供反馈,例如清洁机器人已完成清扫的消息。
图6是根据一实施例的用于清洁机器人的电子系统的系统结构图。清洁机器人602包括处理器604,处理器604运行下载到存储器606的程序。处理器604使用总线634或其他电连接与其他组件通信。在清洁模式中,轮子马达608独立地控制轮子以移动和操纵机器人。刷子和真空马达610清洁地板,并且可以以不同的模式操作,例如更高功率密集清洁模式或正常功率模式。
LINDAR模块616包括激光器620和检测器618。或者,VSLAM操作中可以使用图像传感器。转台马达622移动激光器和检测器以检测360度围绕清洁机器人的物体。每秒多次旋转,例如每秒约5次旋转。各种传感器向处理器604提供输入,诸如撞击传感器624指示与物体接触,接近传感器626指示物体的接近程度,以及加速度计和倾斜传感器628指示清洁机器人的跌落(例如,楼梯)或倾斜(例如,在越过障碍物时)。清洁机器人(例如,在越过障碍物时)。这些用于清洁机器人的导航和其他控制的传感器的使用示例在专利号8,855,914,名称为“使用机器人表面处理装置穿行地板区域的角落的方法和装置”的美国专利文献中详述,其公开内容通过引用并入本文。其他传感器可以包括在其他实施例中,例如用于检测被吸获的污垢量的污垢传感器、用于检测马达何时过载的马达电流传感器(例如由于被某物缠绕)、用于检测地板类型的地板传感器以及用于提供环境和物体图像的图像传感器(相机)。
电池614通过电源连接(未示出)向电子产品的其他部分供电。当清洁机器人与图2的充电站206对接时,电池充电电路612向电池614提供充电电流。输入按钮623与显示器630一起允许直接控制清洁机器人602。或者,通过收发器632,可以远程控制清洁机器人602,并将数据传输到远程位置。
通过因特网636和/或其他网络,可以控制清洁机器人,并且可以将信息传输回远程用户。远程服务器638可以提供命令,并且可以处理从清洁机器人上传的数据。用户可以操作手持智能手机或手表640以直接向清洁机器人602传输命令(通过蓝牙、直接RF、WiFiLAN等),或者可以通过与互联网636的连接传输命令。命令可以被传输到服务器638以进行进一步处理,然后通过因特网636以修改的形式转发到清洁机器人602。
媒体平台和客户端系统的计算机系统
可以在计算机系统上实现本文描述的各种操作。图7示出了可用于实现本发明的某些实施例的代表性计算系统702和客户端计算系统704的简化框图。在各种实施例中,计算系统702或类似系统可以实现为清洁机器人处理器系统、远程服务器或本文描述的任何其他计算系统或其部分。客户端计算系统704或类似系统可以实现为诸如具有清洁机器人应用程序的智能手机或手表等用户设备。
计算系统702可以是各种类型中的一种,包括处理器和存储器、手持便携式设备(例如,手机、计算平板电脑、PDA)、可穿戴设备(例如,头戴式显示器)、个人计算机、工作站、主机、自助服务终端、服务器机架或任何其他数据处理系统。
计算系统702可包括处理子系统710。处理子系统710可以经由总线子系统770与多个外围系统通信。这些外围系统可以包括I/O子系统730、存储子系统768和通信子系统740。
总线子系统770提供用于使客户端计算系统704的各种组件和子系统按预期彼此通信的机制。尽管总线子系统770示意性地示为单个总线,但总线子系统的替代实施例可以使用多个总线。总线子系统770可以形成支持处理子系统710和服务器计算系统702的其他组件中的通信的局域网。总线子系统770可以使用各种技术来实现,包括服务器机架、集线器、路由器等。总线子系统770可以是几种类型的总线结构中的任何一种,包括存储器总线或存储器控制器、外围总线和使用各种总线架构中任何一种的本地总线。例如,这种架构可以包括工业标准结构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围部件互连(PCI)总线,其可以实现为根据IEEE P1386.1标准制造的夹层总线等。
I/O子系统730可以包括用于将信息输入到计算系统702和/或用于从计算系统702或经由计算系统702输出信息的设备和机制。通常,使用术语“输入设备”旨在包括用于向计算系统702输入信息的所有可能类型的设备和机制。用户界面输入设备可以包括例如键盘、诸如鼠标或轨迹球的指示设备、结合到显示器中的触摸板或触摸屏、滚轮、点击轮、拨盘、按钮、开关、键盘、具有语音命令识别系统的音频输入设备、麦克风和其他类型的输入设备。用户界面输入设备还可以包括运动感测和/或姿势识别设备,诸如Microsoft 运动传感器,使得用户能够控制输入设备并与之交互;Microsoft 360游戏控制器,提供用于使用手势和口头命令接收输入的接口的设备。用户界面输入设备还可以包括眼姿识别设备,诸如Google 眨眼检测器,其检测用户的眼睛活动(例如,在拍照和/或进行菜单选择时“眨眼”)并且将眼姿变换为输入,输入到输入设备(例如,)中。另外,用户界面输入设备可以包括语音识别传感设备,其使得用户能够通过语音命令与语音识别系统(例如,导航器)交互。
用户界面输入设备的其他示例包括但不限于三维(3D)鼠标,操纵杆或指点杆,游戏手柄和图形平板,以及诸如扬声器、数码相机、数字便携式摄像机、便携式媒体播放器、网络摄像头、图像扫描仪、指纹扫描仪、条形码阅读器3D扫描仪、3D打印机、激光测距仪和眼睛注视跟踪设备的音频/视频设备。另外,用户界面输入设备可以包括例如医学成像输入设备,诸如计算机断层扫描、磁共振成像、正电子发射断层扫描、医学超声波设备。用户界面输入设备还可以包括例如音频输入设备,例如MIDI键盘,数字乐器等。
用户界面输出设备可以包括显示子系统,指示灯或诸如音频输出设备等的非视觉显示器。显示子系统可以是阴极射线管(CRT);平板设备,例如使用的液晶显示器(LCD)或等离子显示器的平板设备;投影设备;触摸屏等。通常,使用术语“输出设备”旨在包括用于将信息从计算系统702输出到用户或其他计算机的所有可能类型的设备和机制。例如,用户界面输出设备可以包括但不限于可视地传达文本、图形和音频/视频信息的各种显示设备,例如监视器、打印机、扬声器、耳机、汽车导航系统、绘图仪、语音输出设备以及调制解调器。
处理子系统710控制计算系统702的操作,并且可包括一个或多个处理单元712、714等。处理单元可包括一个或多个处理器,包括单核处理器或多核处理器、一个或多个核的处理器或其组合。在一些实施例中,处理子系统710可以包括一个或多个专用协处理器,例如图形处理器、数字信号处理器(DSP)等。在一些实施例中,处理子系统710的一些或所有处理单元可以使用定制电路来实现,例如专用集成电路(ASIC)或现场可编程门阵列(FPGA)。在一些实施例中,这样的集成电路执行存储在电路自身上的指令。在其他实施例中,处理单元可以执行存储在本地存储器中的指令,例如本地存储器722、724。任何组合的任何类型的处理器可以包括在处理单元712、714中。
在一些实施例中,处理子系统710可以以模块化设计实现,该模块化设计包含任意数量的模块(例如,刀片式服务器中的刀片)。每个模块可以包括处理单元和本地存储器。例如,处理子系统710可以包括处理单元712和对应的本地存储器722,以及处理单元714和对应的本地存储器724。
本地存储器722、724可以包括易失性存储介质(例如,传统的DRAM、SRAM、SDRAM等)和/或非易失性存储介质(例如,磁盘或光盘、闪存等)。包含在本地存储器722、724中的存储介质可以根据需要是固定的、可移除的或可升级的。本地存储器722、724可以在物理上或逻辑上划分为各种子单元,例如系统存储器、ROM和永久存储设备。系统存储器可以是读写存储器设备或易失性读写存储器,例如动态随机存取存储器。系统存储器可以存储处理单元712、714在运行时需要的一些或全部指令和数据。ROM可以存储处理单元712、714所需的静态数据和指令。永久存储设备可以是非易失性读写存储设备,即使当包括一个或多个处理单元712、714和本地存储722、724的模块断电时,该存储设备也可以存储指令和数据。这里使用的术语“任何介质”包括其中数据可以无限期地存储(经受重写、电干扰、功率损耗等)的任何介质,并且不包括无线传输或通过有线连接传播的载波和瞬时电子信号。
在一些实施例中,本地存储器722、724可以存储要由处理单元712、714执行的一个或多个软件程序,例如操作系统和/或实现各种服务器功能的程序,例如UPP系统102的功能或与UPP系统102相关联的任何其他服务器。软件通常指的是指令序列,当由处理单元712、714执行时,使得计算系统702(或其部分)执行各种操作,从而定义执行软件操作的一个或多个特定机器实现方式。指令可以存储为驻留在只读存储器中的固件和/或存储在非易失性存储介质中的程序代码,该非易失性存储介质可以被读入易失性工作存储器以供处理单元712、714执行。在一些实施例中,指令可以由存储子系统768(例如,计算机可读存储介质)存储。在各种实施例中,处理单元可以执行各种程序或代码指令,并且可以维护多个同时执行的程序或进程。在任何给定时间,要执行的一些或所有程序代码可以驻留在本地存储器722、724和/或存储子系统中,存储子系统可能包括在一个或多个存储设备上。软件可以实现为单个程序或者根据需要进行交互的单独程序或程序模块的集合。从本地存储器722、724(或下面描述的非本地存储器),处理单元712、714可以检索要执行的程序指令和要处理的数据,以便执行上述各种操作。
存储子系统768提供用于存储计算系统702使用的信息的存储库或数据存储。存储子系统768提供有形的非暂时性计算机可读存储介质,用于存储提供一些实施例的功能的基本编程和数据构造。当由处理子系统710执行时提供上述功能的软件(程序,代码模块,指令)可以存储在存储子系统768中。该软件可以由处理子系统710的一个或多个处理单元执行。存储子系统768还可以提供用于存储根据本发明使用的数据的存储库。
存储子系统768可以包括一个或多个非暂时性存储器设备,包括易失性和非易失性存储器设备。如图7所示,存储子系统768包括系统存储器760和计算机可读存储介质752。系统存储器760可以包括多个存储器,包括用于在程序执行期间存储指令和数据的易失性主RAM,以及存储固定指令的非易失性ROM或闪存。在一些实施方式中,包含有助于在计算系统702内的元件之间传送信息的基本例程的基本输入/输出系统(BIOS),例如在启动期间,通常可以存储在ROM中。RAM通常包含当前由处理子系统710操作和执行的数据和/或程序模块。在一些实施方式中,系统存储器760可以包括多种不同类型的存储器,例如静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)。存储子系统768可以基于磁、光、半导体或其他数据存储介质。可以使用直接附加存储、存储区域网络、网络附加存储等。本文描述为由服务或服务器生成、消费或维护的任何数据存储或其他数据集合可以存储在存储子系统768中。
作为示例而非限制,如图7所示,系统存储器760可以存储应用程序762,应用程序可以包括客户端应用程序、Web浏览器、中间层应用程序、关系数据库管理系统(RDBMS)等;程序数据764;以及一个或多个操作系统766。举例来说,示例性的操作系统可以包括各种版本的Microsoft Apple 和/或Linux操作系统,各种商用或类UNIX操作系统(包括但不限于各种类型的GNU/Linux操作系统,Google操作系统等)和/或移动操作系统,如iOS、 Phone、 OS、10OS和 OS操作系统。
计算机可读存储介质752可以存储提供一些实施例的功能的编程和数据构造。当由处理子系统710执行时,提供上述功能的软件(程序、代码模块、指令)可以存储在存储子系统768中。作为示例,计算机可读存储介质752可以包括非易失性存储器,诸如硬盘驱动器,磁盘驱动器,诸如CD ROM、DVD、盘的光盘驱动器,或其他光学介质。计算机可读存储介质752可以包括但不限于驱动器、闪存卡、通用串行总线(USB)闪存驱动器、安全数字(SD)卡、DVD盘、数字录像带等。计算机可读存储介质752还可以包括基于非易失性存储器的固态驱动器(SSD),例如基于闪存的SSD、企业闪存驱动器、固态ROM等,基于易失性存储器的SSD,例如固态RAM、动态RAM、静态RAM、基于DRAM的SSD、磁阻RAM(MRAM)SSD以及使用DRAM和基于闪存的SSD组合的混合SSD。计算机可读介质752可以为计算系统702提供计算机可读指令、数据结构、程序模块和其他数据的存储。
在某些实施例中,存储子系统768还可以包括计算机可读存储介质读取器750,其还可以连接到计算机可读存储介质752。计算机可读存储介质752与系统存储器760一起,以及可选地与系统存储器760组合,可以全面地表示远程、本地、固定和/或可移动存储设备以及用于存储计算机可读信息的存储介质。
在某些实施例中,计算系统702可以为执行一个或多个虚拟机的提供支持。计算系统702可以执行诸如管理程序之类的程序,以便于配置和管理虚拟机。可以为每个虚拟机分配存储、计算(例如,处理器、核)、I/O和网络资源。每个虚拟机通常运行其自己的操作系统,该操作系统可以与由计算系统702执行的其他虚拟机执行的操作系统相同或不同。因此,计算系统702可能同时运行多个操作系统。每个虚拟机通常独立于其他虚拟机运行。
通信子系统740为其他计算机系统和网络提供接口。通信子系统740用作从计算系统702的其他系统接收数据和向计算系统702的其他系统传输数据的接口。例如,通信子系统740可以使计算系统702能够通过因特网建立到一个或多个客户端计算设备的通信信道以从客户端计算设备接收信息和向客户端计算设备传输信息。
通信子系统740可以支持有线和/或无线通信协议。例如,在某些实施例中,通信子系统740可以包括用于访问无线语音和/或数据网络的射频(RF)收发器组件(例如,使用蜂窝电话技术,高级数据网络技术,例如3G,4G)或EDGE(增强的用于全球演进的数据速率)、WiFi(IEEE 802.11系列标准或其他移动通信技术,或其任何组合)、全球定位系统(GPS)接收器组件和/或其他组件。在一些实施例中,除了无线接口之外或代替无线接口,通信子系统740可以提供有线网络连接(例如,以太网)。
通信子系统740可以以各种形式接收和传输数据。例如,在一些实施例中,通信子系统740可以以结构化和/或非结构化数据馈送、事件流、事件更新等的形式接收输入通信。例如,通信子系统740可以被配置为从社交媒体网络的用户和/或诸如的馈送,更新,诸如丰富站点摘要(RSS)馈送之类的web馈送和/或来自一个或多个第三方信息源的实时更新的其他通信服务实时接收(或传输)数据馈送。
在某些实施例中,通信子系统740可以被配置为以连续数据流的形式接收数据,连续数据流可以包括实时事件和/或事件更新的事件流,其本质上可以是连续的或无界的,没有明确的结束。生成连续数据的应用的示例可以包括例如传感器数据应用、金融代码、网络性能测量工具(例如,网络监控和流量管理应用)、点击流分析工具、汽车交通监控等。
通信子系统740还可以被配置为将结构化和/或非结构化数据馈送、事件流、事件更新等输出到可以与耦合到计算系统702的一个或多个流数据源计算机通信的一个或多个数据库。
通信子系统740可以提供通信接口742,例如WAN接口,其可以在局域网(总线子系统770)和更大的网络(例如因特网)之间提供数据通信能力。可以使用常规或其他通信技术,包括有线(例如,以太网、IEEE 802.3标准)和/或无线技术(例如,Wi-Fi、IEEE 802.11标准)。
计算系统702可以响应于经由通信接口742接收的请求而运行。此外,在一些实施例中,通信接口742可以将计算系统702彼此连接,从而提供能够管理大量活动的可扩展系统。可以使用用于管理服务器系统和服务器群的常规或其他技术(协作的服务器系统的集合),包括动态资源分配和重新分配。
计算系统702可以经由诸如因特网的广域网与各种用户拥有的或用户操作的设备交互。用户操作设备的示例在图7中以客户端计算系统702的形式示出。客户端计算系统704可以被实现为例如消费者设备,诸如智能电话、其他移动电话、平板电脑、可穿戴计算设备(例如,智能手表、眼镜)、台式计算机、膝上型计算机等。
例如,客户端计算系统704可以通过通信接口742与计算系统702通信。客户端计算系统704可以包括传统的计算机组件,诸如处理单元782、存储设备784、网络接口780、用户输入设备786和用户输出设备788。客户端计算系统704可以是以各种形式因素实现的计算设备,诸如台式计算机、膝上型计算机、平板计算机、智能电话、其他移动计算设备、可穿戴计算设备等。
处理单元782和存储设备784可以类似于上述处理单元712、714和本地存储器722、724。可以基于要放置在客户端计算系统704上的需求来选择合适的设备;例如,客户端计算系统704可以实现为“薄”的、具有有限处理能力的客户端或实现为高性能计算设备。客户端计算系统704可以设有可由处理单元782执行的程序代码,以实现与消息管理服务的计算系统702的各种交互,诸如访问消息、对消息执行动作以及上述其他交互。一些客户端计算系统704还可以独立于消息管理服务与消息传递服务交互。
网络接口780可以提供到广域网(例如,因特网)的连接,计算系统702的通信接口740也连接到该广域网。在各种实施例中,网络接口780可以包括有线接口(例如,以太网)和/或实现各种RF数据通信标准诸如Wi-Fi、蓝牙或蜂窝数据网络标准(例如,3G、4G、LTE等)的无线接口。
用户输入设备786可以包括用户可以通过其向客户端计算系统704提供信号的任何设备(或多个设备);客户端计算系统704可以将信号解释为指示特定用户请求或信息。在各种实施例中,用户输入设备786可以包括键盘、触摸板、触摸屏、鼠标或其他指示设备、滚轮、点击轮、拨号盘、按钮、开关、小键盘、麦克风等中的任何一个或全部。
用户输出设备788可以包括客户端计算系统704可以通过其向用户提供信息的任何设备。例如,用户输出设备788可以包括显示器以显示由客户端计算系统704生成或传递到客户端计算系统704的图像。显示器可以包括各种图像生成技术,例如液晶显示器(LCD),包括有机发光二极管(OLED)的发光二极管(LED),投影系统,阴极射线管(CRT)等;以及支持电子设备(例如,数模或模数转换器、信号处理器等)。一些实施例可以包括诸如触摸屏的设备,其用作输入和输出设备。在一些实施例中,除了显示器之外或代替显示器,可以提供其他用户输出设备788。示例包括指示灯、扬声器、触觉“显示”设备、打印机等。
一些实施例包括电子组件,诸如将计算机程序指令存储在计算机可读存储介质中的微处理器、存储器和内存。本说明书中描述的许多特征可以实现为被指定为在计算机可读存储介质上编码的一组程序指令的过程。当这些程序指令由一个或多个处理单元执行时,它们使处理单元执行程序指令中指示的各种操作。程序指令或计算机代码的示例包括诸如由编译器产生的机器代码,以及包括由计算机,电子组件或使用解释器的微处理器执行的更高级代码的文件。通过适当的编程,处理单元712、714和782可以为计算系统702和客户端计算系统704提供各种功能,包括本文描述为由服务器或客户端执行的任何功能,或者与消息管理服务相关联的其他功能。
应当理解,计算系统702和客户端计算系统704是说明性的,并且变化和修改是可能的。结合本发明的实施例使用的计算机系统可具有本文未具体描述的其他能力。此外,虽然参考特定块描述了计算系统702和客户端计算系统704,但是应该理解,这些块是为了便于描述而定义的,并不意味着暗示组件部分的特定物理布置。例如,不同的块可以但不必位于相同的设施中,位于相同的服务器机架中,或者位于同一主板上。此外,块不需要对应于物理上不同的组件。块可以被配置为执行各种操作,例如,通过编程处理器或提供适当的控制电路,并且取决于如何获得初始配置,各种块可以是或可以不是可重新配置的。可以在包括使用电路和软件的任何组合实现的电子设备的各种设备中实现本发明的实施例。
虚拟边界
在一个实施例中,用户首先以“训练”模式启动机器人。在此模式下,机器人将跟随并探索地面并构建地图。用户可以在用户设备上的机器人应用程序上选择训练图标或软键。用户将打开门并确保机器人可以访问所有需要的区域。完成此过程后,机器人将生成一个覆盖地图,显示已探索的区域并将其上载到远程服务器。然后,服务器将覆盖地图下载到用户设备上的用户应用程序(例如移动应用程序)。用户现在可以选择保存此地图以用于虚拟边界或取消并重试探索。一旦用户对得到的探索性地图感到满意,用户现在使用移动应用程序绘制虚拟边界。该应用程序支持插入和删除边界。在保存所需边界之后,用户可以开始清洁运行,其中机器人尊重这些虚拟边界。在清洁时尊重虚拟边界取决于机器人位于在先前清洁/训练运行生成的覆盖地图中。
在一个实施例中,用户使用手指在触摸屏上绘制地图上的虚拟边界。或者,可以使用触笔或其他绘图元素,例如鼠标,指轮等。或者,可以标记地图的部分,并且用户可以指示机器人要避开哪些部分,然后应用程序确定需要绘制虚拟边界的位置以对机器人关闭这些部分。用户可以通过下拉列表、触摸电话上的这些部分、键入标签、说出标签(使用语音识别)等选择这些部分。在一个示例中,用户可以通过点击该区域而在清洁指定区域和标记其为禁止区域之间切换。每次点击都会在通过和不通过之间切换设置。地图上的不同房间可以用不同的颜色指示,或者颜色或其他视觉指示可以用于指示要清洁的区域和要避开的区域。例如,交叉影线可以叠加在地图上要避开的区域上。用户可以在任何设备上指示虚拟边界并将其传送到另一个设备。例如,用户可能想要在大的台式计算机显示器上指定边界,然后将标记过的地图传送到智能手机以进一步与机器人交互。
图8是根据一实施例的带有用户绘制的适用于清洁机器人的虚拟边界804和806的机器人的全局地图800的图。示出了基站802处的机器人位置。可以看出,虚拟边界804和806将机器人限制在其所在房间的部分808,并防止机器人前往部分810或其他房间。用户可以通过触摸边界图标808,然后用用户的手指绘制线804和806来开始边界绘制。或者,图标808可以被拖动到期望的位置,并且展开,收缩和旋转以将其放置在期望的位置。
边界扩展
在一个实施例中,用户指示地图800上的虚拟边界812。机器人将注意到边界的末端与墙壁814之间存在间隙,允许机器人通过,使边界无意义。机器人可以自动校正边界,并且可以在显示画面上向用户呈现建议的校正即虚线816,以将虚拟边界扩展到最近的墙壁814。如果用户接受校正,则扩展边界。在一个实施例中,在不向用户提供校正的情况下,或者在用户没有响应的情况下,都可以扩展边界。
边界修改
在一个实施例中,机器人可以检测到边界围绕障碍物,并且机器人可以比边界线更靠近障碍物移动。然后机器人可以将边界调整为更接近障碍物。例如,虚拟边界818可以围绕障碍物820绘制。机器人可以确定它可以毫无问题地靠近障碍物,并且可以建议新的虚拟边界822。如在上面的扩展边界示例中,如果用户接受校正,则调整边界。在一个实施例中,在不向用户提供校正的情况下,或者在用户没有响应的情况下,都可以调整边界。或者,机器人可以确定虚拟边界太靠近物体,并且它碰撞到物体或者被物体缠住。然后,机器人可以移动虚拟边界远离物体以避免问题。
在一个实施例中,机器人生成其自己的虚拟边界,或向用户建议虚拟边界。机器人可以建议在其检测到跌落(例如,楼梯)或者在其检测到可能导致缠结的障碍物(例如,线),或者在其之前被卡住的地方设置边界。机器人可以设置其自己的虚拟边界,例如以避开具有许多障碍物将花费大量时间来导航的区域,如果其具有足够的电池寿命来清洁该区域,则提升虚拟边界。机器人可以拍摄虚拟边界后面的物体并将其传输给用户以帮助确认虚拟边界,或者仅提示用户移动物体。
在一个实施例中,机器人感测物体,并且由远程服务器或机器人执行物体识别。可以通过使用相机、IR、超声波或其他传感器成像,或者与凸块或接触传感器的物理接触来感测物体。然后机器人应用程序可以自动绘制虚拟边界以避开危险区域,例如电视机边缠绕的电线、地板上的宠物水碗等。然后用户可以接受边界或被激发移动危险物体。
在一个实施例中,机器人可以使用虚拟边界来指定不同类型的清洁区域,而不仅仅指定要避开的区域。例如,木质或瓷砖地板区域可以表示为需要不同的刷子高度、附件或不同的机器人。下降可能只是指示一个使用较慢的速度谨慎处理的区域。
电池优化边界线
在一个实施例中,由于需要紧密操纵,机器人可以绘制在需要很长时间清洁的物体和区域周围的临时虚拟边界。然后机器人可以清理更容易的区域,并且如果剩余足够的电池电量来处理这些区域,则提升虚拟边界。
在一个实施例中,机器人可以绘制临时虚拟边界以优化电池寿命。例如,机器人可能需要几个充电周期来清洁大的地板平面。典型的机器人充电周期会使电池电量降至10%以下,然后再充电至约80%。充电至80%以上需要很长时间,因此优化了总清洁时间(清洁+充电时间)。例如,机器人可以通过绘制阻挡平面图的最后部分(例如20%)的虚拟边界来确定它将实现更快的总清洁时间,然后再充电至60%或者需要的任何数量来清理最后一部分。这可能比清洁除了5%的所有,然后必须等待再次充电至80%的效率更高,此时较低的充电量足以支持最后5%加上虚拟边界后面的附加量。
训练运行
在一个实施例中,机器人需要在用户可以标记期望的虚拟边界之前生成地图。可能需要训练项目以允许机器人绘制该区域的地图并将该地图呈现给用户。为避免长时间延迟,机器人可以使用更宽的车道来绘制该区域的地图。机器人不是覆盖地板的每一寸,而是覆盖其LINDAR或其他地图传感器范围内的区域。例如,这可能意味着对应于LIDAR的6英尺车道,并且可选地也意味着沿着墙壁移动。对于基于图像的SLAM算法,单次通过房间可能就足够了。或者,用户可以使用遥控器手动地将机器人引导到要清洁的区域的边界周围。可以检测并绘制那些边界之外的任何东西,并用虚拟边界标记。
在一个实施例中,使用户尽可能无缝地进行该过程。用户可以简单放置机器人并点击“开始清洁”按钮。在一个实施例中,显示画面然后可以提示用户是否继续并清理所有物品,或者进行训练运行以绘制该区域的地图,并将该地图呈现给用户以标记任何虚拟边界。或者,机器人可以仅启动训练运行,并在准备好后为用户提供地图和建议的边界,同时使用建议的虚拟边界开始完全清洁运行,直到用户拒绝或添加它们为止。可以将地图直接提供给用户,例如使用本地WiFi网络、蓝牙或任何其他传输技术,以传输到用户设备,例如智能电话、平板电脑或计算机。或者,可以将地图传输到远程服务器,然后下载到用户设备。
部分地图到全局地图
图9是根据一实施例的用于为部分地图生成虚拟边界段的过程的流程图。机器人在训练运行期间绘制其环境的地图(902)。可选地,机器人也可以在训练运行期间进行清洁。机器人使用其传感器和SLAM(即时定位与地图构建)算法来绘制该区域的地图,并在该地图上生成物体(墙壁、障碍物等)的坐标(904)。机器人从存储的坐标生成地图的便携式网络图形(PNG)图像(906)。然后将PNG地图上载到远程服务器(908)。还生成了地图的便携灰度图格式(PGM)的图像以用于调试目的。
服务器通过因特网或其他网络或通信信道将PNG地图提供给在用户设备上运行的应用程序(910)。用户指示地图上的虚拟边界(912),如结合图8所示。用户应用程序移除地图外的绘制边界的任何部分(914)。如果线路没有一直扩展到墙壁,或者不能作为任何区域的障碍,应用程序可以提示用户延长线路,或者可以自动扩展线路。用户App计算虚拟边界的全局坐标,并将它们传输到服务器(916)。服务器向机器人提供虚拟边界的全局坐标(918)。机器人将虚拟边界分割成与存储在机器人的存储器中的部分地图相对应的片段,并将全局坐标转换为对应于部分地图的局部坐标。部分地图可以对应于机器人上的LIDAR或其他定位系统的期望范围。部分地图可以重叠以确保完整的覆盖范围以及在从一个部分地图移动到另一个部分地图时跟踪位置的能力。在一个实施例中,部分地图是5x5米的区域,或者任何截面中小于10米的其他尺寸。
当机器人执行清洁运行时,它将根据需要访问每个部分地图,并且还将访问对应该部分地图的虚拟边界段的局部坐标。机器人处理器将使用LIDAR或其他机制连续检测其当前位置,并将其坐标与虚拟边界段的坐标进行比较。到达边界段时,机器人将改变方向。机器人将检测机器人的前边缘何时足够靠近边界至仍然允许机器人转向,移动到相邻的未清洁的条带,然后反向继续清洁。
坐标修订
图10示出了更新坐标系的实施例。如图所示,机器人已经绘制了具有房间1002、1004和1006的初始地图。在点1008处建立从0,0开始的坐标系。然后,用户在地图上绘制虚拟边界1010。区域1012先前被用关闭的门、虚拟或物理边界或其他阻挡。如果随后开放区域1012,则需要将其添加到地图中并且坐标将改变,从将0,0点改变为点1014开始。这将需要改变地图上其他点的坐标,包括构成虚拟边界1010的点。点1008和点1014之间的差异可以容易地添加到地图上的每个点以用于新的坐标空间。
可拆卸物理边界标记
在一个实施例中,用户在机器人的地图生成运行期间在一个或多个位置放置磁条、IR应答器或其他边界指示标记。机器人在区域中的位置被绘入地图时将边界信息与地图一起记录。然后,用户可以移除边界指示标记,或将其移动到另一个位置以进行相同的地图生成运行。例如,用户可以将边界指示标记移动到机器人将遇到的下一个门或走廊入口。此后,机器人可以识别对应于记录的边界位置的虚拟边界,而不需要将物理边界标记保持在适当位置。因此,无需用户在地图上标记边界,机器人在生成地图和每个部分地图时生成边界。如上所述,机器人可以扩展不会一直扩展到墙壁的边界或者使各边界更接近物体。边界段存储在机器人的用于存储每个部分地图的本地存储器中。当地图绘制完成时,机器人生成地图的PNG图像,其包括在地图上描绘的虚拟边界。然后将带有虚拟边界的PNG图像上载到服务器,然后下载到用户设备上的应用程序。
在一个实施例中,用户然后可以确认边界和地图,或者修改它。例如,用户可能意识到边界不在正确的位置,以致例如机器人将清洁到距离门一英寸,而不是到达门边缘或门下方的区域。。
在一个实施例中,虚拟边界随时间改变。例如,虚拟边界可以设置为每隔一个清洁例程控制机器人到高流量区域。用户可以通过上述任何机制或任何其他机制在地图上指示虚拟边界。然后,用户可以将地图与时间表相关联,例如每周二中午。然后,用户可以提取另一个未标记的地图副本,并指示一组单独的虚拟边界,或者没有虚拟边界。然后,用户可以将该标记的地图与时间表上的另一时间相关联,例如每隔一个星期六下午5点。然后,应用程序会将时间表和全局坐标中的多个线段上传到服务器。然后,服务器将时间表和虚拟边界下载到机器人。如上所述,机器人将第一计划虚拟边界转换为部分地图段。边界和时间表参考适当的部分地图存储。存储器中的相同部分地图也用于第二个或更多个虚拟边界段和计划时间。该时间表还可以指示某些区域将受到更强烈的清洁,例如较慢的机器人清洁器速度和/或较高的真空功率,或者清洁机器人操作的其他操作修改。密集清洁或其他操作修改也可以处于非预定模式。例如,用户可以在应用程序的地图上绘制一个涡轮式经过或以温和模式重复经过的部分,然后让机器人立即前往该部分。因此,用户可以针对预定或非预定操作指示用于不同处理的虚拟边界或区域的其他指示。对于立即操作,可以在操作之后丢弃用户指示,或者可以提示用户使用虚拟边界来保存或调度操作。
在另一个示例中,虚拟边界可以充当门,控制机器人到特定区域直到该区域被清洁,然后打开边界以允许机器人清洁另一区域,或返回其基地。存储在机器人存储器中的程序可以识别何时所有被墙壁、障碍物和虚拟边界完全限制的区域已被清洁。然后机器人被指示前往虚拟边界,但当坐标与虚拟边界匹配时停止的命令被禁止。机器人随后清洁下一个封闭区域,或者,如果已经清洁,可以前往基地。
在另一个示例中,特定清洁模式可以与边界所指示的区域的不同时间相关联,例如按预定计划的一次纵向清洁,以及在另一次横向清洁。这可以随着时间的推移提供更彻底的清洁,而不需要在单次清洁运行期间在多个方向上多次通过,因此限制了单次清洁运行的时间。
在一个实施例中,将具有虚拟边界的地图的预览提供给用户以供接受。机器人App可以基于虚拟边界和时间表来提出建议,例如考虑到虚拟边界建议基站重新定位以优化清洁时间。
在一个实施例中,提供多个全局地图,例如机器人被移动到不同楼层的地图。每个楼层都有自己的地图,以及自己的虚拟边界和时间表。
在一个实施例中,机器人具有一个或多个指示标记,该指示标记将在其遇到虚拟边界时向用户显示。指示灯可以是到达边界时闪烁红色的灯。这将告知用户机器人转向的原因是虚拟边界。指示标记也可以是从机器人向两个方向投射的可见光线,以指示虚拟边界的完整范围。灯可以闪烁,为不同的颜色,或以其他方式指示永久的虚拟边界而不仅仅是本次预定时间的边界。如果情况已经改变,这可以提示用户重置虚拟边界,例如用户刚刚在很少使用到的房间中开了派对。反馈也可以是听觉的,并且可以直接来自机器人,或者由用户设备上的应用程序指示。在一个实施例中,如果用户设备上的App打开,则在用户设备上提供反馈。如果应用程序关闭,则反馈是由机器人本身提供的。
在一个实施例中,用户可以通过像遥控器一般使用移动设备上的机器人App来设置虚拟边界。当用户观察到机器人接近禁区时,用户可以按下应用程序上的虚拟边界按钮。然后信号被直接(使用IR、蓝牙、本地WiFi等)或通过服务器(然后是因特网,然后是局域网到机器人)传输到机器人。机器人将该点识别为线的一部分,并且如果它识别出门,则将自动将该点外推到该点两侧的墙壁。
多个机器人
在一个实施例中,使用多个清洁机器人。这提供了多种优点。在初次使用时,可以将一个机器人指定为训练机器人,为该区域绘制地图并建议虚拟边界。第二个(第3个,第4个等)机器人可以跟在后面,进行正常清洁,从而在每个房间或空间中花费更多时间。训练机器人可以将生成的每个房间的地图传输给第二机器人,因此第二机器人不需要进行地图绘制,也不需要包括地图绘制所需的处理。该传输可以通过用户设备直接传输,或者通过上传到远程服务器然后下载到第二机器人。在一个示例中,新机器人可以是替补机器人。可以共享多个楼层或楼层平面图的多个地图。例如,通常在二楼的第二机器人可以检测到它已经移动到第一层,并且可以切换到第一层地图。
可以基于机器人类型或简单地以职责划分来绘制虚拟线。对于多个机器人,每个机器人可以被分配一部分待清洁区域,而由其他机器人处理的区域被虚拟边界阻挡。因此,将为每个机器人提供不同的虚拟边界。更便宜的机器人可用于更容易清洁的区域,例如硬木地板。或者不同的机器人可以具有不同的优化电池存储。例如,训练或绘图机器人可以仅具有地图绘制和图像获取能力,并且没有清洁设备,具有用于短训练运行的有限电池功率。因此,训练机器人可以更小和更便宜。清洁机器人可以有更多的电池电量,以延长清洁运行时间。
用户互动
在一个实施例中,机器人具有相机并且可以向用户提供图像或视频以指示虚拟边界区域。用户可以通过遥控器指引摄像机视点,以便更好地查看该区域。此外,用户生成虚拟边界的命令可以通过任何方法,而不是用手指或触笔简单地在显示的地图上绘制线条。例如,机器人可以生成区域地图并识别它们,例如通过图像识别(洗碗机意味着它是厨房等),或者通过提示用户标记来自地图和/或图像的区域。然后,用户可以简单地说,例如,“不要清理厨房”,机器人将在厨房的入口处绘制虚拟边界。或者,可以在地图上标识物体或区域,并且用户可以点击它们以设置限制,并且双击以移除虚拟边界(或反之亦然)。然后机器人将在指示的物体或区域周围绘制虚拟边界。或者,可以在点击后使用下拉菜单或任何其他GUI界面。
在一个实施例中,用户可以拍摄要避开的区域或物体的照片,并且机器人上的程序(或用户设备或远程服务器中的程序)可以将这些照片与视觉SLAM地图中的图像,或链接到LIDAR SLAM地图构建中的图像或任何其他方法匹配。然后可以围绕图像中的物体或区域绘制虚拟边界。人工智能可用于自动裁剪图像,就像机器人发现它可以毫无困难地靠近物体时可以将绘制的虚拟边界移动到更接近物体的位置时一样。
虽然已经关于特定实施例描述了本发明,但是本领域技术人员将认识到可以进行多种修改。可以使用包括但不限于这里描述的特定示例的各种计算机系统和通信技术来实现本发明的实施例。例如,本发明的实施例不仅可以应用于清洁机器人,而且可以应用于其他机器人,例如割草机器人(某些区域可能需要更频繁地割草,或者可能需要通过虚拟边界来避开花朵)。虚拟边界可以指示安全机器人不需要监视哪些区域,或者不需要经常检查。用于测量温度、空气质量或其他功能的机器人可以类似地使用虚拟边界。
可以使用专用组件和/或可编程处理器和/或其他可编程设备的任何组合来实现本发明的实施例。这里描述的各种过程可以以任何组合在同一处理器或不同处理器上实现。在将组件描述为被配置为执行某些操作的情况下,可以例如通过设计电子电路来执行操作,通过编程可编程电子电路(例如微处理器)来执行操作或其任何组合来完成这样的配置。虽然上述实施例可以参考特定的硬件和软件组件,但是本领域技术人员将理解,也可以使用硬件和/或软件组件的不同组合,并且被描述为以硬件实现的特定操作也可以以软件实现,反之亦然。
包含本发明的各种特征的计算机程序可以被编码并存储在各种计算机可读存储介质上;合适的介质包括磁盘或磁带,光学存储介质,例如光盘(CD)或DVD(数字通用光盘),闪存和其他非暂时性介质。用程序代码编码的计算机可读介质可以与兼容的电子设备封装在一起,或者程序代码可以与电子设备分开提供(例如,通过因特网下载或作为单独封装的计算机可读存储介质)。
因此,尽管已经结合特定实施例描述了本发明,但是应当理解,本发明旨在覆盖所附权利要求范围内的所有修改和等同物。
Claims (19)
1.一种用于操作机器人的方法,包括:
使用所述机器人上的传感器检测物理边界标记;
在用于所述机器人的区域地图上指示对应于所述物理边界标记的位置的虚拟边界;
在随后移除所述物理边界标记时保留所述虚拟边界;以及
所述机器人避开超出所述虚拟边界的区域。
2.如权利要求1的方法,还包括:
检测所述物理边界或所述虚拟边界与相邻墙壁之间的间隙;
将所述虚拟边界扩展到所述相邻墙壁。
3.如权利要求1的方法,还包括:
确定所述机器人可以从所述虚拟边界后面的物体相比从所述虚拟边界移动差异距离;以及
将所述虚拟边界调整为距所述物体所述差异距离。
4.如权利要求1的方法,还包括:
从用户接收所述区域地图上的所述虚拟边界的指示。
5.如权利要求4所述的方法,还包括:
在所述机器人的训练运行过程中开发所述区域地图;并
在接收所述虚拟边界的指示之前,向所述用户提供所述区域地图。
6.如权利要求5的方法,还包括:
在所述训练运行过程中,行进足以产生所述区域地图的距离和图案,而无需行进清洁所述区域地图上指示的区域所需的全部距离和图案。
7.如权利要求1的方法,还包括:
向远程服务器提供所述区域地图的全局坐标中的所述虚拟边界;
将所述虚拟边界下载到所述机器人;
通过将所述虚拟边界分割成对应于多个部分地图的多个线段,由所述机器人将所述全局坐标中的所述虚拟边界转换为段;以及
由所述机器人比较所述线段与当前部分地图,以确定所述当前部分地图的虚拟边界。
8.如权利要求1所述的方法,其中,所述物理边界标记是磁条、IR光束、条形码、QR码、彩色条、IR可检测标签或视觉图案中的一种。
9.一种方法,包括:
接收用于机器人的区域地图上的虚拟边界的指示;
调整所述虚拟边界以改变距物体的距离或扩展所述虚拟边界至相邻墙壁;以及
所述机器人避开超过所述虚拟边界的区域。
10.如权利要求9的方法,还包括:
使用所述机器人上的传感器检测物理边界标记;
在用于所述机器人的区域地图上指示对应于所述物理边界标记的位置的所述虚拟边界;
在随后移除所述物理边界标记时保留所述虚拟边界;以及
所述机器人避开超出所述虚拟边界的区域。
11.如权利要求9的方法,还包括:
在所述机器人的训练运行期间开发所述区域地图并向用户提供所述区域地图;以及
从所述用户接收所述区域地图上的所述虚拟边界的指示。
12.一种用于安装在机器人上的非暂时性计算机可读介质,包括指令,所述指令当由计算机执行时使得所述计算机:
使用所述机器人上的传感器检测物理边界标记;
在用于所述机器人的区域地图上指示对应于所述物理边界标记的位置的虚拟边界;
在随后移除所述物理边界标记时保留所述虚拟边界;以及
所述机器人避开超出所述虚拟边界的区域。
13.如权利要求12所述的非暂时性计算机可读介质,还包括用于以下的指令:
检测所述物理边界或所述虚拟边界与相邻墙壁之间的间隙;以及
将所述虚拟边界扩展到所述相邻墙壁。
14.如权利要求12所述的非暂时性计算机可读介质,还包括用于以下的指令:
确定所述机器人可以从所述虚拟边界后面的物体相比从所述虚拟边界移动差异距离;以及
将所述虚拟边界调整为距所述物体所述差异距离。
15.如权利要求12所述的非暂时性计算机可读介质,还包括用于以下的指令:
在所述机器人的训练运行期间开发所述区域地图并向用户提供所述区域地图;以及
从所述用户接收所述区域地图上的所述虚拟边界的指示。
16.一种清洁机器人,包括:
地板行进机器人;
所述地板行进机器人的机器人壳体;
安装在所述壳体内、用于移动所述地板行进机器人的马达;
与所述马达连接以向所述马达提供电力的电池;
安装在所述机器人中、用于检测周围环境的传感器;
安装在所述机器人中的处理器;
所述机器人中的存储器;
所述机器人中的定位模块;
所述存储器中的非暂时性计算机可读代码,所述非暂时性计算机可读代码具有以下指令:
使用所述机器人上的传感器检测物理边界标记;
在用于所述机器人的区域地图上指示对应于所述物理边界标记的位置的虚拟边界;
在随后移除所述物理边界标记时保留所述虚拟边界;以及
所述机器人避开超出所述虚拟边界的区域。
17.如权利要求16所述的清洁机器人,其中,所述存储器中的非暂时性计算机可读代码还具有以下指令::
检测所述虚拟边界与相邻墙壁之间的间隙;以及
将所述虚拟边界扩展到所述相邻墙壁。
18.如权利要求16所述的清洁机器人,其中,所述存储器中的非暂时性计算机可读代码还具有以下指令:
向远程服务器提供所述区域地图的全局坐标中的所述虚拟边界;
将所述虚拟边界下载到所述机器人;
通过将所述虚拟边界分割成对应于多个部分地图的多个线段,由所述机器人将所述全局坐标中的所述虚拟边界转换为段;以及
由所述机器人比较所述线段与当前部分地图,以确定所述当前部分地图对应的虚拟边界。
19.如权利要求16所述的清洁机器人,其中,所述存储器中的非暂时性计算机可读代码还具有以下指令:
在所述机器人的训练运行期间开发所述区域地图并向用户提供所述区域地图;以及
从所述用户接收所述区域地图上的所述虚拟边界的指示。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762552790P | 2017-08-31 | 2017-08-31 | |
US62/552,790 | 2017-08-31 | ||
US15/996,290 US10583561B2 (en) | 2017-08-31 | 2018-06-01 | Robotic virtual boundaries |
US15/996,290 | 2018-06-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109421067A true CN109421067A (zh) | 2019-03-05 |
Family
ID=65436506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811011610.6A Pending CN109421067A (zh) | 2017-08-31 | 2018-08-31 | 机器人虚拟边界 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10583561B2 (zh) |
JP (1) | JP2019071046A (zh) |
CN (1) | CN109421067A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110081885A (zh) * | 2019-04-02 | 2019-08-02 | 北京云迹科技有限公司 | 运行区域划分方法及装置 |
CN110251000A (zh) * | 2019-05-20 | 2019-09-20 | 广东宝乐机器人股份有限公司 | 一种提高扫地机器人清洁效率的方法 |
CN110347152A (zh) * | 2019-06-11 | 2019-10-18 | 深圳拓邦股份有限公司 | 虚拟墙设置方法、系统及装置 |
CN111399502A (zh) * | 2020-03-09 | 2020-07-10 | 惠州拓邦电气技术有限公司 | 移动机器人的建图方法、装置及移动机器人 |
CN111489362A (zh) * | 2020-04-03 | 2020-08-04 | 小狗电器互联网科技(北京)股份有限公司 | 一种空间划分方法、装置、可读介质及电子设备 |
WO2020259274A1 (zh) * | 2019-06-24 | 2020-12-30 | 广东宝乐机器人股份有限公司 | 区域识别方法、机器人和存储介质 |
CN112631267A (zh) * | 2019-10-09 | 2021-04-09 | 苏州宝时得电动工具有限公司 | 自动行走设备控制方法及自动行走设备 |
CN112684786A (zh) * | 2019-10-18 | 2021-04-20 | 南京德朔实业有限公司 | 自行走割草系统和户外行走设备 |
CN112799389A (zh) * | 2019-11-12 | 2021-05-14 | 苏州宝时得电动工具有限公司 | 自动行走区域路径规划方法及自动行走设备 |
CN113064409A (zh) * | 2019-12-13 | 2021-07-02 | 深圳拓邦股份有限公司 | 一种动态分区方法、系统及清洁设备 |
WO2022257809A1 (zh) * | 2021-06-09 | 2022-12-15 | 丰疆智能科技股份有限公司 | 导航虚拟墙的自动生成方法、装置、电子设备及存储介质 |
CN117984331A (zh) * | 2024-04-03 | 2024-05-07 | 追觅创新科技(苏州)有限公司 | 多机器人协作下的禁区处理方法、装置、机器人及系统 |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017152390A1 (zh) * | 2016-03-09 | 2017-09-14 | 广州艾若博机器人科技有限公司 | 地图构建方法、纠正方法及装置 |
KR20180082264A (ko) * | 2017-01-10 | 2018-07-18 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법 |
KR102021834B1 (ko) * | 2017-07-12 | 2019-09-17 | 엘지전자 주식회사 | 이동 로봇 시스템 및 그 제어방법 |
US11240854B2 (en) * | 2017-08-22 | 2022-02-01 | AI Incorporated | Methods and systems for pairing mobile robotic device docking stations with a wireless router and cloud service |
CN107553497B (zh) * | 2017-10-20 | 2023-12-22 | 苏州瑞得恩光能科技有限公司 | 太阳能面板清扫机器人的边缘定位装置及其定位方法 |
CN107566743B (zh) * | 2017-10-30 | 2019-10-11 | 珠海市一微半导体有限公司 | 移动机器人的视频监控方法 |
US10878294B2 (en) * | 2018-01-05 | 2020-12-29 | Irobot Corporation | Mobile cleaning robot artificial intelligence for situational awareness |
EP3835907A4 (en) * | 2018-08-08 | 2022-04-20 | Positec Power Tools (Suzhou) Co., Ltd | SELF-MOBILE DEVICE, AUTOMATIC OPERATING SYSTEM AND CONTROL METHOD THEREOF |
US10835096B2 (en) * | 2018-08-30 | 2020-11-17 | Irobot Corporation | Map based training and interface for mobile robots |
KR102629036B1 (ko) * | 2018-08-30 | 2024-01-25 | 삼성전자주식회사 | 로봇 및 그의 제어 방법 |
US11007644B2 (en) * | 2018-09-04 | 2021-05-18 | Irobot Corporation | Mapping interface for mobile robots |
US10831212B2 (en) * | 2018-09-19 | 2020-11-10 | International Business Machines Corporation | Autonomous roving vehicle management using laser barriers |
US20200100639A1 (en) * | 2018-10-01 | 2020-04-02 | International Business Machines Corporation | Robotic vacuum cleaners |
US10463217B1 (en) * | 2019-01-31 | 2019-11-05 | Irobot Corporation | Cleaning of pet areas by autonomous cleaning robots |
US11191407B2 (en) | 2019-01-31 | 2021-12-07 | Irobot Corporation | Cleaning of pet areas by autonomous cleaning robots |
KR102224637B1 (ko) | 2019-07-05 | 2021-03-08 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법 |
KR102275300B1 (ko) | 2019-07-05 | 2021-07-08 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법 |
KR102297496B1 (ko) * | 2019-07-11 | 2021-09-02 | 엘지전자 주식회사 | 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법 |
KR102305206B1 (ko) * | 2019-07-11 | 2021-09-28 | 엘지전자 주식회사 | 인공 지능을 통해 바닥 상황을 고려하여 청소하는 로봇 청소기 및 그 방법 |
KR102361130B1 (ko) | 2019-07-11 | 2022-02-09 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법 |
CN110385719B (zh) * | 2019-07-23 | 2020-08-28 | 珠海市一微半导体有限公司 | 机器人判断是否碰撞虚拟墙的方法和芯片以及智能机器人 |
CN110909585B (zh) * | 2019-08-15 | 2022-09-06 | 纳恩博(常州)科技有限公司 | 一种路线确定方法、可行进设备、和存储介质 |
US11327483B2 (en) * | 2019-09-30 | 2022-05-10 | Irobot Corporation | Image capture devices for autonomous mobile robots and related systems and methods |
CN113128747B (zh) * | 2019-12-30 | 2024-03-19 | 南京泉峰科技有限公司 | 智能割草系统及其自主建图方法 |
JP7337011B2 (ja) | 2020-03-12 | 2023-09-01 | 本田技研工業株式会社 | 情報処理装置、情報提供システムおよび情報処理方法 |
US11730328B2 (en) * | 2020-08-14 | 2023-08-22 | Irobot Corporation | Visual fiducial for behavior control zone |
EP3958086A1 (en) * | 2020-08-19 | 2022-02-23 | Carnegie Robotics, LLC | A method and a system of improving a map for a robot |
CN111930131B (zh) * | 2020-09-30 | 2021-01-12 | 四川中水成勘院工程物探检测有限公司 | 一种适用于复杂环境的获取图形的装置和应用方法 |
CN114468845B (zh) * | 2020-10-23 | 2023-01-20 | 好样科技有限公司 | 自行走装置及其控制方法 |
DE102020134400A1 (de) * | 2020-12-21 | 2022-06-23 | Vorwerk & Co. Interholding Gesellschaft mit beschränkter Haftung | Verfahren zum Betrieb eines sich selbsttätig fortbewegenden Bodenbearbeitungsgerätes |
WO2022149715A1 (ko) * | 2021-01-11 | 2022-07-14 | 삼성전자주식회사 | 청소 로봇 및 그 제어 방법 |
CN113449058B (zh) | 2021-06-25 | 2023-06-02 | 安克创新科技股份有限公司 | 一种地图数据传输方法、清洁机器人及存储介质 |
US11953908B2 (en) | 2021-10-12 | 2024-04-09 | Google Llc | Deployable safety fence for mobile robots |
US11940808B2 (en) * | 2021-11-09 | 2024-03-26 | Irobot Corporation | Seasonal cleaning zones for mobile cleaning robot |
CN114545938A (zh) * | 2022-02-17 | 2022-05-27 | 上海擎朗智能科技有限公司 | 一种路径规划方法、装置、机器人及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1161268A (zh) * | 1995-12-01 | 1997-10-08 | 三星电子株式会社 | 机器人的环境识别装置及其控制方法 |
KR0168189B1 (ko) * | 1995-12-01 | 1999-02-01 | 김광호 | 로보트의 환경인식장치 및 그 제어방법 |
CN205458451U (zh) * | 2015-04-09 | 2016-08-17 | 美国iRobot公司 | 机器人 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9827779D0 (en) | 1998-12-18 | 1999-02-10 | Notetry Ltd | Improvements in or relating to appliances |
AU2006284577B2 (en) | 2005-09-02 | 2012-09-13 | Neato Robotics, Inc. | Multi-function robotic device |
ES2681523T3 (es) | 2006-03-17 | 2018-09-13 | Irobot Corporation | Robot para el cuidado del césped |
US8996172B2 (en) | 2006-09-01 | 2015-03-31 | Neato Robotics, Inc. | Distance sensor system and method |
CA2859112C (en) | 2009-08-31 | 2017-08-15 | Neato Robotics, Inc. | Method and apparatus for simultaneous localization and mapping of mobile robot environment |
US9072218B2 (en) | 2012-07-09 | 2015-07-07 | Deere & Company | Boundary sensor assembly for a robotic lawn mower, robotic lawn mower and robotic lawn mower system |
US8855914B1 (en) | 2012-08-31 | 2014-10-07 | Neato Robotics, Inc. | Method and apparatus for traversing corners of a floored area with a robotic surface treatment apparatus |
US9233472B2 (en) * | 2013-01-18 | 2016-01-12 | Irobot Corporation | Mobile robot providing environmental mapping for household environmental control |
-
2018
- 2018-06-01 US US15/996,290 patent/US10583561B2/en active Active
- 2018-08-30 JP JP2018161535A patent/JP2019071046A/ja active Pending
- 2018-08-31 CN CN201811011610.6A patent/CN109421067A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1161268A (zh) * | 1995-12-01 | 1997-10-08 | 三星电子株式会社 | 机器人的环境识别装置及其控制方法 |
KR0168189B1 (ko) * | 1995-12-01 | 1999-02-01 | 김광호 | 로보트의 환경인식장치 및 그 제어방법 |
US5896488A (en) * | 1995-12-01 | 1999-04-20 | Samsung Electronics Co., Ltd. | Methods and apparatus for enabling a self-propelled robot to create a map of a work area |
JP3217281B2 (ja) * | 1995-12-01 | 2001-10-09 | 三星電子株式会社 | ロボットの環境認識装置およびその制御方法 |
CN205458451U (zh) * | 2015-04-09 | 2016-08-17 | 美国iRobot公司 | 机器人 |
US20160297072A1 (en) * | 2015-04-09 | 2016-10-13 | Irobot Corporation | Restricting movement of a mobile robot |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110081885A (zh) * | 2019-04-02 | 2019-08-02 | 北京云迹科技有限公司 | 运行区域划分方法及装置 |
CN110251000A (zh) * | 2019-05-20 | 2019-09-20 | 广东宝乐机器人股份有限公司 | 一种提高扫地机器人清洁效率的方法 |
CN110347152A (zh) * | 2019-06-11 | 2019-10-18 | 深圳拓邦股份有限公司 | 虚拟墙设置方法、系统及装置 |
WO2020259274A1 (zh) * | 2019-06-24 | 2020-12-30 | 广东宝乐机器人股份有限公司 | 区域识别方法、机器人和存储介质 |
CN112631267A (zh) * | 2019-10-09 | 2021-04-09 | 苏州宝时得电动工具有限公司 | 自动行走设备控制方法及自动行走设备 |
CN112684786A (zh) * | 2019-10-18 | 2021-04-20 | 南京德朔实业有限公司 | 自行走割草系统和户外行走设备 |
WO2021093469A1 (zh) * | 2019-11-12 | 2021-05-20 | 苏州宝时得电动工具有限公司 | 自动行走区域路径规划方法及自动行走设备 |
CN112799389A (zh) * | 2019-11-12 | 2021-05-14 | 苏州宝时得电动工具有限公司 | 自动行走区域路径规划方法及自动行走设备 |
CN112799389B (zh) * | 2019-11-12 | 2022-05-13 | 苏州宝时得电动工具有限公司 | 自动行走区域路径规划方法及自动行走设备 |
CN113064409A (zh) * | 2019-12-13 | 2021-07-02 | 深圳拓邦股份有限公司 | 一种动态分区方法、系统及清洁设备 |
CN111399502A (zh) * | 2020-03-09 | 2020-07-10 | 惠州拓邦电气技术有限公司 | 移动机器人的建图方法、装置及移动机器人 |
CN111489362A (zh) * | 2020-04-03 | 2020-08-04 | 小狗电器互联网科技(北京)股份有限公司 | 一种空间划分方法、装置、可读介质及电子设备 |
CN111489362B (zh) * | 2020-04-03 | 2023-12-05 | 北京小狗吸尘器集团股份有限公司 | 一种空间划分方法、装置、可读介质及电子设备 |
WO2022257809A1 (zh) * | 2021-06-09 | 2022-12-15 | 丰疆智能科技股份有限公司 | 导航虚拟墙的自动生成方法、装置、电子设备及存储介质 |
CN117984331A (zh) * | 2024-04-03 | 2024-05-07 | 追觅创新科技(苏州)有限公司 | 多机器人协作下的禁区处理方法、装置、机器人及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20190061157A1 (en) | 2019-02-28 |
JP2019071046A (ja) | 2019-05-09 |
US10583561B2 (en) | 2020-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109421067A (zh) | 机器人虚拟边界 | |
US11272823B2 (en) | Zone cleaning apparatus and method | |
US10394246B2 (en) | Robot with automatic styles | |
CN109998421B (zh) | 移动清洁机器人组合及持久性制图 | |
US11709497B2 (en) | Method for controlling an autonomous mobile robot | |
US20210224579A1 (en) | Mobile Cleaning Robot Artificial Intelligence for Situational Awareness | |
CN108247647B (zh) | 一种清洁机器人 | |
CN109303521A (zh) | 灰尘检测层级和激光反向散射灰尘检测 | |
JP7377837B2 (ja) | ゲームプレイを介して環境の詳細データセットを生成する方法およびシステム | |
JP6054136B2 (ja) | 機器制御装置、および自走式電子機器 | |
GB2567944A (en) | Robotic virtual boundaries | |
US20200047337A1 (en) | Robotic platform with event based mode change | |
US20220074762A1 (en) | Exploration Of A Robot Deployment Area By An Autonomous Mobile Robot | |
CN109431381A (zh) | 机器人的定位方法及装置、电子设备、存储介质 | |
US20210096579A1 (en) | Method For Controlling An Autonomous Mobile Robot | |
US20200142074A1 (en) | Systems and methods for improvements in scanning and mapping | |
CN108242102B (zh) | 信息处理方法及装置、电子设备及存储介质 | |
US20170273527A1 (en) | Cleaning robot and method of controlling the cleaning robot | |
JP2020518906A (ja) | ロボットのナビゲーションの方法 | |
CN106737709B (zh) | 清扫方法及装置 | |
CN107533372A (zh) | 附连数据的混合环境显示 | |
CN113226667A (zh) | 清洁机器人及其执行任务的方法 | |
US20230367324A1 (en) | Expandable wheel | |
CN107289952A (zh) | 室内双向导航方法 | |
JP6809267B2 (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190305 |
|
WD01 | Invention patent application deemed withdrawn after publication |