CN115176213A - 机器人 - Google Patents
机器人 Download PDFInfo
- Publication number
- CN115176213A CN115176213A CN202180016802.XA CN202180016802A CN115176213A CN 115176213 A CN115176213 A CN 115176213A CN 202180016802 A CN202180016802 A CN 202180016802A CN 115176213 A CN115176213 A CN 115176213A
- Authority
- CN
- China
- Prior art keywords
- robot
- environment
- user device
- list
- control data
- 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
- 230000004044 response Effects 0.000 claims abstract description 63
- 238000000034 method Methods 0.000 claims description 62
- 238000004590 computer program Methods 0.000 claims description 15
- 230000008859 change Effects 0.000 claims description 9
- 230000009471 action Effects 0.000 description 68
- 238000004140 cleaning Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000015654 memory Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 238000012790 confirmation Methods 0.000 description 9
- 230000003370 grooming effect Effects 0.000 description 7
- 238000010407 vacuum cleaning Methods 0.000 description 7
- 238000010410 dusting Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
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/0003—Home robots, i.e. small robots for domestic use
-
- 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
-
- 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
-
- 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
- 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/1615—Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
- B25J9/162—Mobile manipulator, movable base with manipulator arm mounted on it
-
- 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/1628—Programme controls characterised by the control loop
- B25J9/1653—Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
-
- 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/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- 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
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- 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/40411—Robot assists human in non-industrial environment like home or office
-
- 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/40543—Identification and location, position of components, objects
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Manipulator (AREA)
- User Interface Of Digital Computer (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Electric Vacuum Cleaner (AREA)
Abstract
一种用于操作具有一个或多个传感器的机器人的措施。通过操作该一个或多个传感器来感测表示机器人环境的一组参数,生成机器人环境的表示。生成环境中的对象列表以及列表中每个对象的相关联标识符。从电子用户装置接收控制数据。该控制数据包括所述电子用户装置的用户希望在所述环境中定位的、位于所生成的列表中的对象的标识符。响应于对控制数据的接收,操作机器人和该一个或多个传感器来搜索环境,以确定所识别的对象在环境中的位置。
Description
技术领域
本公开涉及一种机器人。具体地,但不排他地,本公开涉及用于控制机器人和操作机器人的措施,包括方法、设备和计算机程序产品。
背景技术
移动机器人正变得越来越普遍,并且可以在家庭环境中用于执行诸如清洁和整理之类的任务。
在机器人清洁装置领域,尤其是机器人真空吸尘器和拖地机器人领域,已经有了快速的发展,其主要目的是在清洁地面的同时自主且不引人注目地在用户家中导航。通常希望这些机器人需要尽可能少的人类使用者的帮助,优选不需要人类的帮助。
在执行清洁或整理任务时,机器人必须在需要清洁的区域导航。优选地,机器人可以自主导航并越过其环境中的障碍物。机器人通常配备有许多传感器,使它们能够在环境中导航。
一些清洁机器人配备有基本的导航系统,由此机器人使用“随机反弹”方法,由此机器人将沿任何给定方向行进,直到它遇到障碍物,此时机器人将转向并沿另一个随机方向行进,直到遇到另一个障碍物。随着时间的推移,希望机器人能够覆盖尽可能多的需要清洁的地面空间。不幸的是,这些随机反弹导航方案被发现是缺乏的,并且经常会完全错过应该被清洁的大面积地面。这些导航系统也不适用于要求机器人遵循特定路径而不是覆盖大面积空间的情况。
一些机器人开始采用同步定位和地图绘制(SLAM)技术。这些SLAM技术允许机器人通过观察、理解和识别周围的区域来采用更系统的导航模式。使用SLAM技术,可以实现更系统的导航模式,因此,在清洁机器人的情况下,机器人将能够更有效地清洁所需区域。
预计在操作过程中,机器人会不时遇到问题。例如,机器人可能在环境中遇到未知对象,并且可能不知道如何处理这样的对象,或者机器人可能被卡在特定位置。通常,这样的问题需要人工干预。然而,人工干预可能会被认为是一种麻烦,特别是如果它需要用户手动干预机器人。
发明内容
根据本公开的一方面,提供了一种控制机器人的方法,该方法包括在电子用户装置处:
从机器人接收表示机器人环境的数据,所接收的数据指示环境中至少一个可移动对象的位置;
响应于对表示数据的接收,在所述电子用户装置的图形显示器上显示所述机器人环境的表示;
从电子用户装置的用户接收指示所述至少一个可移动对象在机器人环境中的期望位置的输入;以及
响应于对用户输入的接收,将控制数据传输到机器人,该控制数据可操作来使机器人将该至少一个对象移动到机器人环境中的期望位置。
在实施例中,机器人环境是房子或房子的一区域。在实施例中,电子用户装置例如是平板电脑或膝上型电脑,其由用户操作,并且向用户显示表示机器人环境的数据,例如作为房子的房间的图像,指示一个或多个可移动对象的当前位置。在实施例中,指示环境中至少一个可移动对象的位置的数据指示用户可能希望整理或移动的家居物品的位置。在实施例中,使用电子用户装置,用户输入这些物品的期望位置,并且响应于该用户输入,机器人被指示将物品移动到期望位置。使用机器人和电子用户装置之间的数据通信,用户因此可以指导机器人整理或重新配置家庭物品。例如,用户可以指导机器人整理衣服、整理厨房或重新布置房间内的家具。在实施例中,控制数据可以指定到期望位置的路径。在其他实施例中,控制数据可以指定期望的结束位置,并且机器人可以确定到期望位置的路径。
在实施例中,通过电子用户装置的显示器接收用户输入。在实施例中,用户与显示器交互以输入所显示对象的期望位置。
在实施例中,用户输入包括从该至少一个可移动对象的当前位置到期望位置的拖放动作。在实施例中,用户选择显示在图形显示器上的机器人环境内的可移动对象,并将它们拖动到环境内的不同位置,这也显示在图形显示器上,在期望的位置处释放对象。这为用户向机器人提供指令提供了直观和交互式的方法。在其他实施例中,用户输入包括键入的指令。使用显示器,用户可以键入要移动到期望位置的对象,并且可以键入该对象的期望位置。
在实施例中,经由麦克风接收用户输入,并且该输入包括该至少一个可移动对象的期望位置的听觉指示。在实施例中,用户可以口头指示要移动到期望位置的对象,并且可以口头指示期望位置。这实现了电子用户装置的免提操作,并且不需要与显示器的视觉交互。
在实施例中,该方法包括从机器人接收确认该至少一个可移动对象已经移动到期望位置的确认数据,并且响应于对确认数据的接收,在图形显示器上显示机器人的更新的环境,其中更新的环境指示该至少一个可移动对象的位置。在实施例中,当机器人已经将对象移动到期望位置时,可以显示表示环境的更新图像,例如房屋的房间的更新图像,指示机器人的新位置。这使得用户能够确定机器人是否已经正确地将对象移动到期望位置,并确定是否需要进一步的移动。
在实施例中,该方法包括从机器人接收请求用户提供环境中的一个或多个对象的标识符的请求数据,以及从电子用户装置的用户接收指示机器人环境中的该至少一个对象的期望标识符的输入。在实施例中,电子用户装置向机器人发送响应数据,该响应数据包括期望标识符。在实施例中,当不响应控制数据时,机器人在空闲时间期间识别其环境中的未知或未识别的对象。在实施例中,电子装置的用户通过电子用户装置的显示器输入期望标识符。该标识符例如可以是特定对象专用的标识符,或者可以是一类对象的公共标识符。期望标识符可以被存储在机器人的存储器中,替代地,标识符可以存储在机器人之外,例如存储在“云”/外部装置中,使得用户和/或机器人可以在未来的动作中使用这些标识符来识别对象。虽然向用户请求数据限制了机器人自主操作的能力,但是请求用户识别对象可以简化机器人所需的功能,因为不要求机器人具有预先存在的(或如此详细的)分类或表面知识。请求用户输入也有助于避免机器人的错误分类,特别是在疑似情况下、已经识别出新对象的情况下或者机器人不确定的情况下。用户还可以输入自定义标识符,例如,用户可以输入标识符“Bob的杯子”,而不是更一般的分类器“杯子”。
根据本公开的一方面,提供了一种用于在电子用户装置处控制机器人的设备,该设备配置成:
从机器人接收表示机器人环境的数据,所接收的数据指示环境中至少一个可移动对象的位置;
响应于对表示数据的接收,在所述电子用户装置的图形显示器上显示所述机器人环境的表示;
从电子用户装置的用户接收指示该至少一个可移动对象在机器人环境中的期望位置的输入;以及
响应于对用户输入的接收,向机器人传输控制数据,该控制数据可操作来使机器人将该至少一个可移动对象移动到机器人环境中的期望位置。
在实施例中,机器人和电子用户装置配置成经由无线网络进行交互,使得用户可以远程控制机器人。因此,用户可以控制在家中的机器人,例如在工作时、出门时或在房子的另一个区域时。
根据本公开的一方面,提供了一种包括一组指令的计算机程序产品,当由计算机化装置执行时,该一组指令使得计算机化装置执行经由网络控制机器人的方法,该方法包括在电子用户装置处:
经由网络从机器人接收表示机器人环境的数据,所接收的数据指示环境中至少一个可移动对象的位置;
响应于对表示数据的接收,在电子用户装置的图形显示器上显示机器人环境;
从电子用户装置的用户接收指示该至少一个可移动对象在机器人环境中的期望位置的输入;以及
响应于对用户输入的接收,经由网络向机器人传输控制数据,该控制数据可操作来使机器人将该至少一个对象移动到机器人环境中的期望位置。
根据本公开的一方面,提供了一种操作机器人的方法,该机器人具有一个或多个传感器,该方法包括在机器人处:
通过操作一个或多个传感器来感测表示机器人环境的一组参数,生成机器人环境的表示,其中该表示包括环境中至少一个可移动对象的位置;
向电子用户装置传输表示机器人环境的数据;
从电子用户装置接收控制数据,该控制数据指示该至少一个可移动对象在机器人环境中的期望位置;以及
响应于对控制数据的接收,操作机器人以将该至少一个对象移动到机器人环境中的期望位置。
在实施例中,机器人具有图像传感器、接近传感器和触摸传感器中的至少一个。在实施例中,至少一个传感器感测对象的位置,该位置可以是二维或三维的位置,或者是对象的维度。在实施例中,传感器感测对象的形状和/或对象的表面纹理。
在实施例中,生成机器人环境的表示的步骤包括生成已知对象列表和相关联标识符,以及存储已知对象的列表和列表中每个对象的标识符。在实施例中,生成步骤包括识别不在列表中的未知对象,并且响应于该识别,向电子用户装置传输识别未知对象的请求。在实施例中,生成步骤包括从电子用户装置接收指示未知对象的标识符的数据,并且响应于对指示标识符的数据的接收,更新列表以将标识符与未知对象相关联。
在实施例中,机器人将感测到的对象区分为已知对象和未知对象,已知对象可以与它们的标识符一起存储在列表中。在实施例中,已知对象是先前已经由用户或其他识别的对象,并且被存储在机器人的存储器或“云”/外部装置中。在实施例中,已知对象和相关联的标识符的列表被存储,并且该列表随着用户识别更多未知对象而增加。随着时间的推移,这可以促进机器人更容易的操作,因为机器人将能够识别更多的对象并与之交互,而不需要那么多的用户输入。
在实施例中,该方法包括通过周期性地更新所生成的表示以及响应于指示该组中的一个或多个参数的变化的一个或多个传感器的操作来更新表示中的一个或多个,在机器人或外部装置处维护所生成的表示。
在实施例中,机器人在不响应控制数据的空闲时间期间更新表示,并将更新后的表示传输给电子用户装置。在实施例中,机器人以固定的时间间隔周期性地更新表示,并将更新后的表示传输到电子用户装置。在实施例中,如果参数有变化,机器人将更新后的表示传输到电子用户装置。这使得用户能够做出反应,并且如果用户希望机器人响应于环境的改变而执行动作,则将控制数据传输给机器人。
在实施例中,机器人向外部装置传输表示,并且外部装置更新所存储的表示。该表示可以被存储在用户可访问的“云”或其他网络存储器中。
在实施例中,存储在机器人处的列表包括列表中至少一个对象的归属位置。在实施例中,用户已经使用电子用户装置预先输入了该至少一个对象的归属位置。在实施例中,如果没有指定其他期望位置,则归属位置指定对象的默认期望位置。因此,用户能够请求将对象返回到它们的归属位置,而不是输入特定的期望位置。
在实施例中,列表包括具有相同标识符的多个对象,并且多个对象中的对象具有相同的归属位置。在实施例中,如果列表被更新以包括具有与列表中已经存在的对象相同的标识符的新对象,则新对象被自动分配相同的归属位置。因此,可以自动分配所识别对象的归属位置,而不需要额外的用户输入。
在实施例中,向电子用户装置传输的请求还包括指定未知对象的归属位置的请求,并且在机器人处接收的数据包括指定未知对象的归属位置的数据。在实施例中,更新列表包括更新列表以包括未知对象的指定归属位置。
在实施例中,操作机器人以将至少一个对象移动到机器人环境中的期望位置包括操作机器人以将至少一个对象移动到其归属位置。在实施例中,操作机器人包括操作机器人将多个对象移动到它们的归属位置。这使得用户能够操作机器人将多个对象移动到不同的“归属”位置,而不必为每个对象指定单独的期望位置。
根据本公开的一方面,提供了一种用于操作机器人的设备,该机器人具有一个或多个传感器,该设备配置为:
通过操作一个或多个传感器来感测表示机器人环境的一组参数,生成机器人环境的表示,其中该表示包括环境中至少一个可移动对象的位置;
向电子用户装置传输表示机器人环境的数据;
从电子用户装置接收控制数据,该控制数据指示该至少一个可移动对象在机器人环境中的期望位置;以及
响应于对控制数据的接收,操作机器人以将该至少一个对象移动到机器人环境中的期望位置。
该设备可包括可插入机器人的计算机芯片或控制模块。
根据本公开的一方面,提供了一种包括一组指令的计算机程序产品,当由计算机化装置执行时,该一组指令使得计算机化装置执行操作机器人的方法,该机器人具有一个或多个传感器,该方法包括:
通过操作一个或多个传感器来感测表示机器人环境的一组参数,生成机器人环境的表示,其中该表示包括环境中至少一个可移动对象的位置;
向电子用户装置传输表示机器人环境的数据;
从电子用户装置接收控制数据,该控制数据指示该至少一个可移动对象在机器人环境中的期望位置;以及
响应于对控制数据的接收,操作机器人以将该至少一个对象移动到机器人环境中的期望位置。
根据本公开的一方面,提供了一种具有一个或多个传感器的机器人,该机器人配置为:
通过操作一个或多个传感器来感测表示机器人环境的一组参数,生成机器人环境的表示,其中该表示包括环境中至少一个可移动对象的位置;
向电子用户装置传输表示机器人环境的数据;
从电子用户装置接收控制数据,该控制数据指示该至少一个可移动对象在机器人环境中的期望位置;以及
响应于对控制数据的接收,将该至少一个对象移动到机器人环境中的期望位置。
根据本公开的一方面,提供了一种操作机器人的方法,该机器人具有一个或多个传感器,该方法包括:
通过以下步骤生成机器人环境的表示:
操作该一个或多个传感器来感测表示机器人环境的一组参数;以及
创建环境中的对象列表以及列表中每个对象的相关联的标识符;
从电子用户装置接收控制数据,该控制数据包括电子用户装置的用户希望在环境中定位的、所生成的列表中的对象的标识符;以及
响应于对控制数据的接收,操作机器人和该一个或多个传感器来搜索环境,以确定所识别的对象在环境中的位置。
因此,机器人的操作可以为用户定位对象。在实施例中,机器人使用图像传感器和/或接近传感器来确定其环境中的对象列表。在实施例中,对象列表可以通过使用一个或多个机器学习工具来确定,例如卷积神经网络。在其他实施例中,对象可以由用户识别。
在实施例中,用户将标识符输入到电子用户装置中,该标识符可以在由机器人生成的列表中。例如,用户可以将“汽车钥匙”输入到电子用户装置中。在实施例中,机器人将搜索其环境,并将使用图像传感器、接近传感器和/或触摸传感器来定位所识别的对象。
在实施例中,该方法包括通过以下一项或多项来维护所生成的表示:周期性地更新所生成的表示,以及响应于一个或多个传感器的操作来更新该表示,一个或多个传感器的操作指示该组中的一个或多个参数的变化。在实施例中,在机器人处维护该表示。在实施例中,在外部装置处维护该表示。在实施例中,外部装置在“云”中、服务器或网络元件中。
在实施例中,该方法包括向电子用户装置传输所识别的对象在环境中的确定位置的指示。因此,可以经由用户的电子用户装置向用户通知对象的位置。在实施例中,如果所识别的对象不能位于环境中,则机器人向电子用户装置传输指示。在实施例中,该指示可以是显示所识别对象的位置的图像的形式。
在实施例中,该方法包括将生成的列表传输到电子用户装置。因此,用户只能请求机器人从已识别对象的列表中定位已知对象。在实施例中,列表以图形方式显示给用户,并且用户可以使用电子用户装置的用户接口来选择他们希望定位的对象。
在实施例中,表示机器人环境的一组参数被传输到电子用户装置。在实施例中,表示机器人环境的图像被传输,并在电子用户装置上以图像方式显示。在实施例中,图像使得用户能够确定机器人位于房子的哪个房间,或者机器人在房子的哪个楼层。在实施例中,该一组参数包括机器人附近或可接近的表面。
在实施例中,创建对象列表包括确定列表中至少一个对象的最后已知位置。因此,用户可以查阅该列表,并且在这样做时,用户能够找到对象的可能性增加了。在实施例中,机器人确定列表中至少一个对象的最后已知位置。在实施例中,用户输入列表中至少一个对象的最后已知位置。在实施例中,该列表包括机器人当前环境中机器人已知的对象及其当前位置。例如,该列表可以包括标识符“钥匙”和“厨房餐具柜”的最后已知位置,该位置也可以是当前位置。
在实施例中,操作机器人包括操作机器人移动到所识别对象的最后已知位置附近。因此,用户能够从机器人的位置确定对象的最后已知位置,并且用户可以请求机器人在对象处执行动作。例如,如果列表包括最后位于“厨房餐具柜”上的“钥匙”,用户可以向电子用户装置输入请求,并且电子用户装置可以传输控制数据来操作机器人移动到厨房餐具柜。
在实施例中,操作机器人包括操作机器人将所识别的对象移动到给定位置。因此,用户可以去给定位置并期望看到对象,或者用户可以期望机器人在给定位置处将对象带给他们。在实施例中,该给定位置被包含在所接收的控制数据中。在实施例中,一旦机器人已经到达所识别对象的最后已知位置,传输到机器人的控制数据操作机器人移动所识别对象。在实施例中,机器人使用一个或多个抓取器来拾取对象。在实施例中,该给定位置是电子装置的用户的当前位置。在实施例中,该给定位置是所识别对象的归属位置。在实施例中,给定位置是电子装置的用户的位置(或者用户旁边/附近的位置)。
在实施例中,机器人可以在所识别对象的位置处拍摄照片或视频,并将照片或视频传输到电子用户装置。
根据本公开的一方面,提供了一种用于操作机器人的设备,该机器人具有一个或多个传感器。该设备配置成:
通过以下步骤生成机器人环境的表示:
操作所述一个或多个传感器来感测表示机器人环境的一组参数;以及
创建环境中的对象列表以及列表中每个对象的相关联标识符;
从电子用户装置接收控制数据,该控制数据包括所生成列表中的、电子用户装置的用户希望在环境中定位的对象的标识符;以及
响应于对控制数据的接收,操作机器人和一个或多个传感器来搜索环境,以确定所识别对象在环境中的位置。
该设备可包括用于插入机器人的计算机芯片或模块。
根据本公开的一方面,提供了一种包括一组指令的计算机程序产品。当由计算机化装置执行时,指令使得计算机化装置执行操作机器人的方法,该机器人具有一个或多个传感器,该方法包括:
通过以下步骤生成机器人环境的表示:
操作所述一个或多个传感器来感测表示机器人环境的一组参数;以及
创建环境中的对象列表以及列表中每个对象的相关联标识符;
从电子用户装置接收控制数据,该控制数据包括所生成列表中的、电子用户装置的用户希望在所述环境中定位的对象的标识符;以及
响应于对控制数据的接收,操作机器人和一个或多个传感器来搜索环境,以确定所识别对象在环境中的位置。
根据本公开的一方面,提供了一种具有一个或多个传感器的机器人。该机器人配置成:
通过以下步骤生成机器人环境的表示:
操作所述一个或多个传感器来感测表示机器人环境的一组参数;以及
创建或从电子用户装置接收环境中的对象列表以及列表中每个对象的相关联标识符;
从电子用户装置接收控制数据,该控制数据包括所生成的列表中的、电子用户装置的用户希望在所述环境中定位的对象的标识符;以及
响应于对控制数据的接收,操作机器人和一个或多个传感器来搜索环境,以确定所识别对象在环境中的位置。
根据本公开的一方面,提供了一种操作机器人的方法,该机器人具有一个或多个传感器。该方法包括:
在机器人处,通过操作一个或多个传感器来感测表示机器人环境的一组参数,生成机器人环境的表示,其中该表示包括环境中除了机器人位于其上的表面之外的至少一个表面;
在机器人处从电子用户装置接收控制数据,该控制数据指示要在机器人环境中的至少一个表面处执行的期望动作;以及
响应于对控制数据的接收,使机器人在机器人环境中的至少一个表面处执行期望动作。
因此,机器人的操作可以便于在环境中的表面处执行期望动作。在实施例中,机器人所在的表面是房子房间的地面。在实施例中,该表示包括至少一个离地表面(即,离面表面不是地面表面)。在实施例中,该表示包括诸如桌面、工作表面、地毯/装饰或瓷砖区域、窗户、门和窗台的表面。在实施例中,传感器在二维或三维上感测表面的位置,并且因此可以感测表面的高度。在实施例中,传感器感测表面的纹理,例如,区分地毯/装饰表面、瓷砖表面、玻璃表面或层压表面。
在实施例中,该方法包括将表示机器人环境的数据传输到电子用户装置。在实施例中,机器人环境的表示在电子用户装置上被图形地显示为图像。该图像可以允许电子用户装置的用户确定机器人的当前位置,例如机器人在哪个房间,并且确定何时以及是否已经执行了期望动作。
在实施例中,机器人包括表面清洁部件,并且期望动作包括清洁动作。因此,机器人的操作可以促进表面的清洁,例如,在房子的房间内。在实施例中,机器人包括清洁臂,其可以是可拆卸的清洁臂,其可以与其他清洁臂互换。
在实施例中,清洁动作包括真空清洁、擦拭、拖地、整理和除尘中的一种或多种。因此,可以执行各种不同的清洁动作;所执行的动作可以取决于用户输入。在实施例中,期望动作取决于表面。例如,地毯的期望动作可以是真空清洁,而桌子的期望动作可以是擦拭。在实施例中,机器人包括多个可拆卸的清洁臂,包括真空清洁臂、擦拭臂、拖地臂、整理臂和除尘臂。可拆卸的臂可以互换,使得它们可以被移除和替换。
在实施例中,生成环境的表示包括生成环境中的表面列表和列表中每个表面的相关联标识符。在实施例中,该方法包括向电子用户装置传输所生成的列表,其中所接收的控制数据包括所存储的列表上要执行期望动作的至少一个表面的相关联标识符。因此,用户只能请求机器人在已识别表面列表中的已知表面上执行动作。在实施例中,列表在电子用户装置上以图形方式显示给用户。在实施例中,列表中的表面是机器人先前已经识别的表面,例如,由用户或由机器人自动识别的表面。
在实施例中,该方法包括,当在机器人环境中的至少一个表面上完成执行期望动作时,向电子用户装置传输期望动作完成通知。在实施例中,该通知可以包括允许在电子用户装置处向用户显示表面的更新图像的数据。这可以使用户能够确定期望动作是否已经正确完成并且达到足够的标准。
在实施例中,该方法包括通过周期性地更新所生成的表示以及响应于指示该一组参数中的一个或多个参数的变化的一个或多个传感器的操作来更新所生成的表示中的一个或多个,在机器人或外部装置处维护所生成的表示。因此,用户可以跟踪环境中的变化,例如,以便识别期望动作是否已经被执行或者需要在环境中的表面处被执行。在实施例中,在空闲时间,机器人更新所生成的表示,并且可以向用户传输表示其环境的数据。在实施例中,机器人以周期性的时间间隔更新所生成的表示。在实施例中,在完成期望动作时生成更新的表示。在实施例中,传感器感测到表面的参数已经改变,例如,如果表面不再清洁。在实施例中,响应于这样的改变,生成更新的表示。在实施例中,位于“云”或网络服务器中的外部装置更新所生成的表示。
根据本公开的一方面,提供了一种用于操作机器人的设备,该机器人具有一个或多个传感器,该设备配置为:
通过操作一个或多个传感器来感测表示机器人环境的一组参数,在机器人处生成机器人环境的表示,其中该表示包括环境中除了机器人所在的表面之外的至少一个表面;
在机器人处从电子用户装置接收控制数据,该控制数据指示要在机器人环境中的至少一个表面处执行的期望动作;以及
响应于对控制数据的接收,使机器人在机器人环境中的至少一个表面处执行期望动作。
根据本公开的一方面,提供了一种包括一组指令的计算机程序产品。当由计算机化装置执行时,指令使得计算机化装置执行操作机器人的方法,机器人具有一个或多个传感器,该方法包括:
通过操作一个或多个传感器来感测表示机器人环境的一组参数,在机器人处生成机器人环境的表示,其中该表示包括环境中除了机器人所在的表面之外的至少一个表面;
在机器人处从电子用户装置接收控制数据,该控制数据指示要在机器人环境中的至少一个表面处执行的期望动作;以及
响应于对控制数据的接收,使机器人在机器人环境中的至少一个表面处执行期望动作。
根据本公开的一方面,提供了一种具有一个或多个传感器的机器人。该机器人配置成:
通过操作该一个或多个传感器来感测表示机器人环境的一组参数,生成机器人环境的表示,其中该表示包括环境中除了机器人所在的表面之外的至少一个表面;
从电子用户装置接收控制数据,该控制数据指示要在机器人环境中的该至少一个表面处执行的期望动作;以及
响应于对控制数据的接收,在机器人环境中的至少一个表面处执行期望动作。
根据本公开的一方面,提供了一种控制机器人的方法。该方法包括在电子用户装置处:
从机器人接收表示机器人环境的数据,所接收的数据指示环境中除了机器人所在的表面之外的至少一个表面;
响应于对该表示数据的接收,在电子用户装置的图形显示器上显示机器人环境的表示;
从电子用户装置的用户接收输入,该输入指示要在机器人环境中的至少一个表面处执行的期望动作;以及
响应于对用户输入的接收,将控制数据传输到机器人,该控制数据可操作以使机器人在机器人环境中的至少一个表面处执行期望动作。
在实施例中,机器人环境是房子或房子的一区域。在实施例中,电子用户装置例如是平板电脑或膝上型电脑,其由用户操作,并且向用户显示表示机器人环境的数据,例如作为房子的房间的图像,指示一个或多个可移动对象的当前位置。在实施例中,指示环境中除了机器人所在的表面之外的至少一个表面的数据指示用户可能希望被清洁的表面。在实施例中,使用电子用户装置,用户输入要在这些表面处执行的期望动作,并且响应于该用户输入,机器人被引导成在这些表面处执行该期望动作。使用机器人和电子用户装置之间的数据通信,用户因此可以指导清洁在机器人环境中的表面。例如,用户可以指导机器人真空吸尘地毯、擦拭表面或拖地面。
在实施例中,经由电子用户装置的显示器接收指示期望动作的用户输入。因此,用户可以使用电子装置为机器人输入指令。用户可以从机器人远程输入指令。在实施例中,用户与显示器交互以输入要在表面处执行的期望动作。这为用户向机器人提供指令提供了直观和交互式的方法。在其他实施例中,用户输入包括键入的指令。使用显示器,用户可以键入要在表面处执行的动作,或者例如可以从可能的动作列表中选择动作。
在实施例中,经由麦克风接收用户输入,并且该输入包括要在机器人环境中的至少一个表面处执行的期望动作的听觉指示。因此,用户能够使用电子用户装置为机器人输入方向或指令,而无需与电子用户装置物理接触。在实施例中,用户可以口头指示要在表面处执行的期望动作。这实现了电子用户装置的免提操作,并且不需要与显示器的视觉交互。
在实施例中,该方法包括从机器人接收确认数据,该确认数据确认已经在机器人环境中的至少一个表面处执行了期望动作;在实施例中,响应于对确认数据的接收,在图形显示器上显示更新的机器人环境,其中更新的环境指示期望动作已经在机器人环境中的至少一个表面处被执行。
在实施例中,当机器人已经在表面处执行了期望动作时,可以显示环境的更新图像表示,例如示出表面。这可以使用户能够确定机器人是否已经以足够高的标准正确地执行了期望动作,并且确定是否需要进一步的动作。
在实施例中,该方法需要从机器人接收请求数据,该请求数据请求用户提供机器人环境中的给定表面的标识符。在实施例中,该方法需要从电子用户装置的用户接收指示机器人环境中的给定表面的期望标识符的输入,并向机器人传输响应数据,该响应数据包括期望标识符。
虽然向用户请求数据限制了机器人自主操作的能力,但是请求用户提供表面的标识符可以简化机器人所需的功能,因为不要求机器人具有预先存在的(或如此详细的)分类或对象的知识。请求用户输入也有助于避免机器人的错误分类,特别是在疑似情况下、已经识别出新对象的情况下或者机器人不确定的情况下。用户还可以输入自定义标识符,例如,用户可以输入标识符“Bob的杯子”,而不是更一般的分类器“杯子”。
请求用户识别表面也可以有助于避免机器人的错误分类,特别是在疑似情况下、已经识别出新表面的情况下或者机器人不确定的情况下。
在实施例中,期望动作包括清洁动作。在实施例中,清洁动作包括真空清洁、擦拭、拖地、整理和除尘中的一种或多种。因此,根据用户输入,机器人可以执行各种不同的清洁动作。
当然可以理解,关于本发明的一个方面描述的特征可以结合到本发明的其他方面。例如,本发明的方法可以结合参考本发明的装置描述的任何特征,反之亦然。
附图说明
现在将参考附图仅以示例的方式描述本公开的实施例,其中:
图1是根据实施例的机器人和电子用户装置的系统图;
图2是根据实施例的电子用户装置的框图;
图3是根据实施例的机器人的示意图;
图4是示出根据实施例机器人和电子用户装置之间的数据通信的消息流程图;
图5是示出根据实施例的机器人和电子用户装置之间的数据通信的消息流程图;
图6是示出根据实施例的机器人和电子用户装置之间的数据通信的消息流程图;
图7是示出根据实施例的机器人和电子用户装置之间的数据通信的消息流程图;和
图8是示出根据实施例的机器人和电子用户装置之间的数据通信的消息流程图。
具体实施方式
图1示出了根据实施例的机器人103和电子用户装置105的系统图。在实施例中,电子用户装置105从机器人103接收表示机器人103环境109的数据。所接收的数据指示环境109中至少一个可移动对象107的位置。响应于对表示数据的接收,机器人103环境109的表示被显示在电子用户装置105的图形显示器上。电子用户装置105接收来自用户的输入,该输入指示该至少一个可移动对象107在机器人103环境109中的期望位置。响应于对用户输入的接收,控制数据被传输到机器人103,该控制数据可操作来使机器人103将该至少一个对象107移动到机器人103环境109中的期望位置。数据在机器人103和电子用户装置105之间传输,反之亦然。在实施例中,机器人103和电子用户装置105通过网络交互;在这样的实施例中,机器人103和电子用户装置105通常不位于彼此附近。网络可以包括一个或多个有线网络和/或一个或多个无线网络。在实施例中,机器人103和电子用户装置105经由直接空中接口交互(例如,经由诸如蓝牙TM或WiFi DirectTM的无线通信协议的通信);在这样的实施例中,机器人103和电子用户装置105通常位于彼此附近。在实施例中,机器人103环境109包括建筑物,例如房子、建筑物的一层或多层、和/或建筑物的一个或多个房间。在实施例中,对象107包括家用物品、一件衣服或一件家具等。
图2示出了根据实施例的电子用户装置105的框图。电子用户装置105包括图形显示器201。电子用户装置105包括用户接口203,用户接口203可以包括触摸屏显示器204和/或麦克风205,用于允许用户输入。在实施例中,图形显示器201包括触摸屏显示器204,并且经由电子装置105的触摸屏显示器204接收用户输入。电子装置105包括收发器209,用于向机器人103传输数据(例如控制数据)和从机器人103接收数据(例如表示环境109的数据)。根据实施例,电子用户装置105包括用于执行各种数据处理功能的处理器系统207。根据实施例,电子用户装置105包括用于存储各种数据的一个或多个存储器211。
在实施例中,电子用户装置105从机器人103接收表示机器人103环境109的数据,指示至少一个可移动对象107在环境109中的位置。电子用户装置105在图形显示器201上显示机器人3环境109的表示。在实施例中,用户输入包括从该至少一个可移动对象107的当前位置到期望位置的拖放动作。在实施例中,该拖放动作由用户经由触摸屏显示器204来执行。
用户接口可以包括麦克风205,并且可以经由麦克风205接收用户输入。在一些这样的实施例中,用户输入包括该至少一个可移动对象107的期望位置的听觉指示。
在实施例中,电子用户装置105包括移动计算机、个人计算机系统、无线装置、电话装置、台式计算机、膝上型计算机、笔记本电脑、上网本计算机、手持计算机、遥控器、消费电子装置,或者通常任何类型的计算或电子装置。
图3示出了根据实施例的机器人103。机器人103包括一个或多个传感器301。传感器301感测表示机器人103环境的一组参数。机器人103包括收发器309,用于从电子用户装置105接收数据和向电子用户装置105传输数据。机器人103包括用于处理来自电子用户装置105的数据的处理器系统307,以及用于存储数据的数据存储模块312。在实施例中,机器人103包括成像传感器302(例如,照相机),并且机器人103可以向电子用户装置105传送图像数据。在实施例中,机器人103使用收发器309将表示机器人103环境9的图像数据传输到电子装置105。所传输的数据可以与环境109内的对象107的三维位置或方位相关。所传输的数据可以包括指示对象在环境109内放置的高度的数据。
在实施例中,机器人103包括用于移动对象的一个或多个机械臂311。机械臂311可以包括抓取器,用于抓取(拾取或以其他方式抓住)对象。可以在机器人103的收发器309处从电子用户装置105接收控制数据。控制数据可以使机械臂311将对象107从其当前位置移动到期望位置。
实施例包括用于使用电子用户装置105控制机器人103的方法、设备和计算机程序。在实施例中,如图4所示,在机器人103和电子用户装置105之间进行数据通信。
在步骤401中,经由收发器209在电子用户装置105处接收表示机器人103环境109的数据。所接收的数据指示环境109中至少一个对象的位置。
在步骤402,电子用户装置105的处理系统207处理所接收的数据。响应于对表示数据的接收,机器人103环境被显示在电子用户装置105的图形显示器201上。
在步骤403中,电子用户装置105从电子用户装置105的用户接收用户输入,该用户输入指示至少一个可移动对象107在机器人103环境109中的期望位置。
在实施例中,电子用户装置105的用户接口包括触摸屏显示器,并且通过用户将至少一个可移动对象107从显示器109内的当前位置拖动到期望位置并将该对象放到期望位置来提供用户输入。
在实施例中,电子用户装置105的用户接口包括麦克风205,并且用户输入由用户听觉地指示对象在环境109内的期望位置而提供。
在步骤405中,响应于从电子装置105的用户接收到指示至少一个可移动对象107在机器人103环境109中的期望位置的输入,数据由处理器系统207处理,并且使用收发器209将控制数据传输到机器人103。控制数据可操作来使机器人103将至少一个可移动对象107移动到机器人103环境109中的期望位置。
在步骤406中,控制数据在机器人103的收发器309处被接收,并由机器人103的处理器系统307处理。在实施例中,控制数据控制机器人103到环境109中的期望位置的路径。在实施例中,控制数据包括环境9中的期望结束位置,并且机器人103确定到该位置的路径。
在步骤407中,在电子用户装置105的收发器207处,从机器人103接收确认数据,确认至少一个可移动对象107已经移动到环境109内的期望位置。
在步骤409中,在电子用户装置105的处理器系统207处处理确认数据,并且响应于对确认数据的接收,电子用户装置105在图形显示器201上显示更新的机器人103环境109;更新的环境109指示该至少一个可移动对象107的位置。
在步骤411中,电子用户装置105的收发器209从机器人103的收发器309接收请求数据,请求用户提供环境109中的一个或多个对象107的标识符。
在实施例中,对象107是已经由机器人103使用传感器303感测到的对象,但是机器人103还没有移动。在实施例中,对象107是先前已经被机器人103移动的对象107。在实施例中,在空闲时间期间,请求数据被传输到电子用户装置,在空闲时间期间,机器人103没有将对象107移动到期望位置,而是感测环境109内的对象107。
在步骤413中,电子用户装置105接收来自用户的输入,该输入指示机器人103环境109中的至少一个对象107的期望标识符。在实施例中,标识符包括标签,该标签可以特定于对象,或者可以将对象分类到特定的组或类中。例如,标识符可以用诸如“衣服”或“家具”的组标签来标记对象,或者可以用诸如“最喜欢的杯子”的特定标签来标记对象。可以使用图像处理和/或机器学习来确定对象的标签和/或位置。例如,可以教授“碗”的形状,也可以教授“碗”和“橱柜”之间的关联。
在实施例中,用户通过例如使用小键盘或键盘或使用触摸屏显示器204将标识符键入电子用户装置105来输入至少一个对象107的期望标识符。在实施例中,用户使用在电子用户装置105的麦克风205处接收的听觉命令来输入期望的标识符。在实施例中,用户可以从存储在电子用户装置105的存储器211中的标识符列表中选择标识符。
在步骤415中,包括所提供的期望标识符的响应数据从电子用户装置105传输到机器人103。在实施例中,在步骤417中,响应数据由机器人103的处理器系统307处理,并且可以存储在机器人103的存储模块312中,使得在未来使用期间,机器人103将能够使用标识符来识别该对象107。
实施例包括用于操作机器人103的方法、设备和计算机程序,机器人103具有一个或多个传感器303。如图5所示,在机器人103和电子用户装置105之间进行数据通信。
在步骤501中,在机器人103处,通过操作机器人103的至少一个传感器301来感测表示机器人103环境109的一组参数,生成机器人103环境109的表示。该表示包括环境109中至少一个可移动对象107的位置。
在步骤502中,表示机器人103环境的数据从机器人103的收发器传输到电子用户装置105的收发器。机器人103环境109可以显示在电子用户装置105的图形显示器201上。
在步骤503中,机器人103的收发器309从电子用户装置105的收发器209接收控制数据。控制数据指示至少一个可移动对象107在机器人103环境109中的期望位置。
在步骤504中,响应于从电子装置105接收到控制数据,操作机器人103以将至少一个对象107移动到机器人103环境109中的期望位置。
在步骤505中,生成机器人103环境的表示包括在机器人103处生成已知对象的列表和相关联标识符。
在实施例中,响应于从电子用户装置105接收到指示对象107的期望标识符的数据,该列表由机器人103的处理器系统307生成。在实施例中,已知对象107的列表和列表中每个对象107的标识符被存储在机器人103的存储模块312中。
在实施例中,在机器人103处,识别不在列表中的未知对象107。在步骤507中,响应于未知对象的识别,从机器人103的收发器309向电子用户装置的收发器209传输请求,以识别未知对象107。在实施例中,未知对象107被显示在图形用户显示器201上。
在步骤508中,机器人103的收发器309从电子用户装置105接收指示未知对象107的标识符的数据。在实施例中,标识符由用户输入到电子用户装置105中。
在实施例中,在步骤509,响应于对指示标识符的数据的接收,在机器人103处,列表被更新以将标识符与未知对象107相关联。在实施例中,更新的列表被存储在机器人103的存储模块312中。
在实施例中,维护所生成的机器人103环境的表示。在步骤511中,该表示被周期性地更新。在实施例中,该表示响应于一个或多个传感器301的操作而更新,该操作指示该组中一个或多个参数的变化。
在实施例中,更新的表示被显示在电子用户装置105的图形显示器201上。
在实施例中,列表包括列表中至少一个对象107的归属位置。在实施例中,列表包括指示对象107是什么的标签(例如,杯子),或者按照对象107的类型对对象107分组的标签(例如,衣服)和归属位置(例如,对象107是杯子,归属位置是橱柜)的标签。
在实施例中,列表包括具有相同标识符的多个对象107,其中该多个对象中的对象107具有相同的归属位置。例如,多个对象107可以具有标识符杯子,并且这些对象中的每一个可以具有橱柜的归属位置。
在实施例中,列表包括一对象或具有相同标识符的多个对象,其中对象具有多个归属位置。例如,一对象或多个对象可以具有标识符杯子,并且该杯子可以具有多个归属位置,例如“橱柜1”和“橱柜2”。
在实施例中,步骤507,其中传输识别未知对象107的请求,还包括指定未知对象的归属位置的请求。在实施例中,步骤508,其中在机器人103处接收数据,所接收的数据包括指定未知对象107的归属位置的数据。在实施例中,包括更新列表的步骤509包括更新列表以包括未知对象107的指定归属位置。
在实施例中,包括操作机器人103将至少一个对象107移动到机器人103环境109中的期望位置的步骤504包括操作机器人103将至少一个对象107移动到其归属位置。
实施例包括操作机器人的方法、用于使用电子用户装置105操作机器人103的设备和计算机程序,其中机器人具有一个或多个传感器301。如图1的系统图所示,数据在机器人103和电子用户装置105之间传输,反之亦然。在实施例中,电子用户装置是参照图2描述的电子用户装置。在实施例中,机器人103是参照图3中描述的机器人103。如图6所示,在机器人103和用户装置105之间进行数据通信。
在实施例中,在机器人103处,在步骤601中,生成机器人103环境109的表示。该表示是通过操作一个或多个传感器301来感测表示机器人103环境109的一组参数而生成的。在实施例中,图像传感器302用于生成该表示。在实施例中,该一组参数描述机器人103的位置,例如,机器人103所在的房间,或者机器人103所在的房屋的楼层。
在步骤603中,在机器人103处,生成环境109中的对象107列表以及列表中每个对象的相关联标识符。在实施例中,对象107和相关联的标识符可以是机器人103已知的对象107和标识符,作为用户先前识别的结果。在实施例中,对象和相关联标识符可以是存储在机器人103的存储模块312中的对象和相关联标识符。
在步骤605中,在机器人103的收发器309处接收来自电子用户装置105的控制数据。控制数据包括电子装置105的用户希望在环境中定位的、位于所生成列表中的对象107的标识符。例如,控制数据可以将一组钥匙(例如房门钥匙或汽车钥匙)识别为用户希望在环境中定位的对象。
在步骤607中,响应于对控制数据的接收,机器人103和一个或多个传感器301被操作来搜索环境109,以确定所识别的对象107在环境109中的位置。
在实施例中,在步骤609,机器人103可以向电子用户装置105传输所识别对象107在环境109中的确定位置的指示。
在实施例中,作为步骤603的一部分,在步骤603’,机器人103或外部装置将所生成的对象列表传输给电子用户装置105。
在实施例中,作为步骤601的一部分,在步骤601’,机器人103或外部装置将表示机器人103环境109的一组参数传输到电子用户装置105。
在实施例中,作为步骤603的一部分,生成列表中至少一个对象的最后已知位置。例如,该列表可以包括对象107和作为“钥匙”的标识符,并且可以将最后已知的位置列为“厨房桌子”。
在实施例中,步骤607包括操作机器人103移动到所识别对象107的最后已知位置附近。例如,步骤607可以包括操作机器人移动到“厨房桌子”附近,这是“钥匙”的最后已知位置。
在实施例中,步骤607包括操作机器人103将所识别的对象107移动到给定位置。该位置可以是与环境中最后已知位置不同的位置。例如,在实施例中,步骤607包括操作机器人103将“钥匙”移动到“钥匙钩”。在实施例中,位置可以是用户在环境中的位置,使得步骤607包括操作机器人103将“钥匙”带给用户。
在实施例中,在步骤605,控制数据可以包括对象107的新的给定位置。因此,控制数据可以指定“钥匙”应该具有“钥匙钩”的新位置。响应于该控制数据,在实施例中,机器人103被操作以将“钥匙”移动到“钥匙钩”。
实施例包括操作机器人的方法、用于使用电子用户装置105操作机器人103的设备和计算机程序,其中机器人103具有一个或多个传感器301。
如图1的系统图所示,数据在机器人103和电子用户装置105之间传输,反之亦然。在实施例中,电子用户装置105是参照图2描述的电子用户装置。在实施例中,机器人103是参照图3描述的机器人103。如图7所示,在机器人103和电子用户装置105之间进行数据通信。
在步骤701中,在机器人103处,通过操作一个或多个传感器301来感测表示机器人103环境109的一组参数,生成环境109的表示。该表示包括环境中除了机器人103所在的表面之外的至少一个表面。在实施例中,通过操作图像传感器302来生成该表示。在实施例中,该表示包括一个或多个表面,例如餐具柜表面、桌面、室内装潢表面等。
在步骤703中,在机器人103处,从电子用户装置105的收发器209接收控制数据,该控制数据指示要在机器人103环境109中的至少一个表面处执行的期望动作。
在步骤705中,响应于对控制数据的接收,使得机器人103在机器人103环境109中的至少一个表面处执行期望动作。
在实施例中,步骤701包括在步骤701’将表示机器人103环境109的数据传输到电子用户装置105。在实施例中,数据包括通知用户机器人103当前在环境109的哪个房间,或者机器人103当前位于环境109内的房屋的哪个楼层的信息。在实施例中,数据包括关于机器人103可接近的表面的信息。
在实施例中,机器人103包括表面清洁部件。在实施例中,机器人103的机械臂311包括表面清洁部件。在实施例中,表面清洁部件是可以安装在机器人103的机械臂311上的附件。例如,附件可以是抛光附件、真空清洁附件、拖地附件、擦拭附件、除尘附件等。
在实施例中,期望动作包括清洁动作。在实施例中,清洁动作包括真空清洁、擦拭、拖地、整理和除尘中的一种或多种。
在实施例中,生成机器人103环境109的表示的第一步骤701包括生成环境109中的已知表面列表以及列表中每个表面的相关联标识符。该列表可以包括例如当前与机器人103在环境109的同一房间中的已知表面和相关联的标识符。在实施例中,已知表面和相关联标识符将已经由电子装置105的用户预先识别给机器人103。在实施例中,已知表面和相关联标识符将存储在机器人103的存储模块312中。在实施例中,步骤701包括,在步骤701”,将生成的列表传输到电子用户装置105。
在实施例中,在步骤703,在机器人103处接收的控制数据包括所存储的列表上的至少一个表面的相关联标识符,在该表面上将执行期望动作。例如,所存储的列表可以包括厨房中的表面及其相关联标识符,并且在机器人103处接收的控制数据可以包括标识符“厨房桌子”并且可以指示“厨房桌子”将被擦拭。
在步骤707中,当在机器人103环境109中的至少一个表面处完成执行期望动作时,期望动作完成通知被传输到电子用户装置105。在实施例中,通知在图形显示器201上显示给电子用户装置105的用户。在实施例中,通知包括机器人103环境109的更新表示。
在实施例中,维护所生成的机器人103环境109的表示。在实施例中,维护所生成的表示包括周期性地更新所生成的表示,并且响应于一个或多个传感器301的操作来更新所生成的表示,该一个或多个传感器301的操作指示该一组参数中的一个或多个参数的变化。在实施例中,所生成的更新后的表示被传输到电子用户装置105,并被显示在图形显示器201上。
本公开的实施例包括用于在电子用户装置处控制机器人的方法、设备和计算机程序。如图8所示,在机器人103和电子用户装置105之间进行数据通信。
在步骤801中,电子用户装置105的收发器209从机器人103的收发器309接收表示机器人103环境109的数据。所接收的数据指示机器人103环境109中除了机器人所在的表面之外的至少一个表面。
在步骤802中,响应于对表示数据的接收,机器人103的环境109的表示被显示在电子用户装置105的图形显示器201上。
在步骤803中,从电子用户装置105的用户接收输入,该输入指示要在机器人103环境中的至少一个表面处执行的期望动作。
在步骤805中,响应于对用户输入的接收,控制数据从电子用户装置105的收发器209传输到机器人103的收发器309。
在实施例中,在步骤806中,控制数据在机器人103的收发器309处被接收,并由机器人103的处理器307处理。在实施例中,控制数据控制机器人103到环境109中的期望位置的路径。在实施例中,控制数据包括环境9中的期望结束位置,并且机器人103确定到该位置的路径。
在实施例中,控制数据可操作来使机器人103在机器人103环境109中的至少一个表面处执行期望动作。
在步骤803,通过电子用户装置105的显示器接收用户输入。在实施例中,电子用户装置105的用户接口203包括触摸屏显示器204,并且用户输入通过用户使用触摸屏显示器来提供,以将机器人103指引到环境109内的表面。在实施例中,小键盘或键盘用于允许用户输入机器人103的期望动作。
在实施例中,电子用户装置105的用户接口203包括麦克风205,并且经由麦克风205接收用户输入。在这样的实施例中,用户输入包括要在机器人103环境中的至少一个表面处执行的期望动作的听觉指示。
在步骤807中,电子用户装置105的收发器209从机器人103的收发器309接收确认数据,确认已经在机器人103环境109中的至少一个表面处执行了期望动作。
在步骤809中,响应于对确认数据的接收,更新的机器人103环境109被显示在电子用户装置105的图形显示器201上。更新的环境109指示已经在机器人103环境109中的至少一个表面处执行了期望动作。
在步骤811中,电子用户装置105的收发器209从机器人103接收请求,请求用户提供机器人103环境109中的给定表面的标识符。在实施例中,机器人103的传感器301可以感测未知表面,并且作为响应,可以向电子用户装置105传输请求,请求用户提供该表面的标识符。
在步骤813中,电子用户装置105可以接收来自电子用户装置105的用户的输入,该输入指示机器人103环境中的给定表面的期望标识符。在实施例中,该标识符是标签,其可以特定于表面,或者可以将对象分类到特定的组或类别中。例如,标识符可以用诸如“地毯”或“瓷砖”的组标签来标记表面,或者可以用诸如“厨房工作台面”的特定标签来标记对象。
在步骤815中,电子用户装置105的收发器209向机器人103传输响应数据,该响应数据包括期望标识符。
在实施例中,期望动作包括清洁动作。在实施例中,清洁动作包括真空清洁、擦拭、拖地、整理和除尘中的一种或多种。
在本公开的实施例中,机器人103和电子用户装置105包括处理系统(分别为307、207)。每个处理系统可以包括一个或多个处理器和/或存储器。如关于本文描述的任何示例所描述的每个装置、部件或功能,例如电子用户装置105的图形显示器201或麦克风205,可以类似地包括处理器或者可以被包括在包括处理器的设备中。本文描述的实施例的一个或多个方面包括由设备执行的过程。在一些示例中,该设备包括配置成执行这些过程的一个或多个处理器。在这点上,实施例可以至少部分地通过被存储在(非暂时性)存储器中并且可由处理器执行的计算机软件、或者通过硬件、或者通过有形存储的软件和硬件(以及有形存储的固件)的组合来实现。实施例还扩展到计算机程序,特别是载体上或载体中的计算机程序,适于将上述实施例付诸实践。该程序可以是非暂时性源代码、目标代码的形式,或者是适于在根据实施例的过程的实现中使用的任何其他非暂时性形式。载体可以是能够承载程序的任何实体或设备,例如RAM、ROM或光学存储装置等。
处理系统307、207的一个或多个处理器可以包括中央处理单元(CPU)。一个或多个处理器可以包括图形处理单元(GPU)。一个或多个处理器可以包括现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)或复杂可编程逻辑器件(CPLD)中的一个或多个。该一个或多个处理器可以包括专用集成电路(ASIC)。本领域技术人员将理解,除了所提供的示例之外,许多其他类型的装置可以被用于提供一个或多个处理器。该一个或多个处理器可以包括多个协同定位的处理器或多个不同定位的处理器。由一个或多个处理器执行的操作可以由硬件、固件和软件中的一个或多个来执行。
在实施例中,机器人103、电子用户装置105和处理器系统307、207包括数据存储器(或“存储器”,或“数据存储模块312”)。数据存储器可以包括易失性和非易失性存储器中的一个或两者。数据存储器可以包括随机存取存储器(RAM)、只读存储器(ROM)、磁盘或光盘和磁盘驱动器、或者固态驱动器(SSD)中的一个或多个。本领域技术人员将会理解,除了所提供的示例之外,许多其他类型的存储器可以被用于存储所捕获的视频。本领域技术人员将会理解,处理系统可以包括比所描述的更多、更少和/或不同的部件。
这里描述的技术可以用软件或硬件来实现,或者可以使用软件和硬件的组合来实现。它们可以包括配置装置来执行和/或支持这里描述的任何或所有技术。尽管在此参考附图描述的示例的至少一些方面包括在处理系统或处理器中执行的计算机过程,但是在此描述的示例也扩展到计算机程序,例如载体上或载体中的计算机程序,适于将示例付诸实践。载体可以是能够承载程序的任何实体或装置。载体可以包括计算机可读存储介质。有形计算机可读存储介质的示例包括但不限于光学介质(例如,CD-ROM、DVD-ROM或蓝光)、闪存卡、软盘或硬盘或能够在至少一个ROM或RAM或可编程ROM(PROM)芯片中存储诸如固件或微代码的计算机可读指令的任何其他介质。
在前面的描述中,提到了具有已知的、显而易见的或可预见的等同物的整体或元件,那么这些等同物被结合在此,如同被单独阐述一样。应当参考权利要求来确定本公开的真实范围,其应当被解释为包括任何这样的等同物。读者还将理解,被描述为优选、有利、方便等的本公开的整体或特征是可选的,并且不限制独立权利要求的范围。此外,应当理解,这些可选的整体或特征虽然在本公开的一些实施例中可能是有益的,但在其他实施例中可能是不期望的,因此可能是不存在的。
Claims (14)
1.一种操作机器人的方法,所述机器人具有一个或多个传感器,所述方法包括:
通过以下步骤生成机器人环境的表示:
操作所述一个或多个传感器来感测表示机器人环境的一组参数;以及
创建环境中的对象列表以及列表中每个对象的相关联标识符;
从所述电子用户装置接收控制数据,所述控制数据包括所述电子用户装置的用户希望在所述环境中定位的、位于所生成的列表中的对象的标识符;以及
响应于对控制数据的接收,操作机器人和一个或多个传感器来搜索环境,以确定所识别的对象在环境中的位置。
2.根据权利要求1所述的方法,包括通过以下一项或多项来维护所生成的表示:
周期性地更新所生成的表示,以及
响应于所述一个或多个传感器的指示所述组中的一个或多个参数的变化的操作,更新所述表示。
3.根据权利要求1或权利要求2所述的方法,包括向所述电子用户装置传输所识别的对象在所述环境中的确定的位置的指示。
4.根据权利要求1至3中任一项所述的方法,包括将所生成的列表传输到电子用户装置。
5.根据权利要求1至4中任一项所述的方法,包括将表示机器人环境的一组参数传输到电子用户装置。
6.根据权利要求1至5中任一项所述的方法,其中创建对象列表包括确定列表中至少一个对象的最后已知位置。
7.根据权利要求6所述的方法,其中操作机器人包括操作机器人移动到所识别对象的最后已知位置附近。
8.根据权利要求7所述的方法,其中操作机器人包括操作机器人将所识别的对象移动到给定位置。
9.根据权利要求8所述的方法,其中给定位置被包含在所接收的控制数据中。
10.根据权利要求9所述的方法,其中给定位置是电子装置的用户的位置。
11.一种用于操作机器人的设备,该机器人具有一个或多个传感器,该设备配置成:
通过以下步骤生成机器人环境的表示:
操作所述一个或多个传感器来感测表示机器人环境的一组参数;以及
创建环境中的对象列表以及列表中每个对象的相关联标识符;
从所述电子用户装置接收控制数据,所述控制数据包括所述电子用户装置的用户希望在所述环境中定位的、位于所生成的列表中的对象的标识符;以及
响应于对控制数据的接收,操作机器人和所述一个或多个传感器来搜索环境,以确定所识别的对象在环境中的位置。
12.一种计算机程序产品,包括一组指令,当由计算机化装置执行时,所述一组指令使得计算机化装置执行权利要求1-10中任一项的方法,所述机器人具有一个或多个传感器,所述方法包括:
通过以下步骤生成机器人环境的表示:
操作所述一个或多个传感器来感测表示机器人环境的一组参数;以及
创建环境中的对象列表以及列表中每个对象的相关联标识符;
从所述电子用户装置接收控制数据,所述控制数据包括所述电子用户装置的用户希望在所述环境中定位的、位于所生成的列表中的对象的标识符;以及
响应于对控制数据的接收,操作机器人和所述一个或多个传感器来搜索环境,以确定所识别的对象在环境中的位置。
13.一种具有一个或多个传感器的机器人,所述机器人配置成:
通过以下步骤生成机器人环境的表示:
操作所述一个或多个传感器来感测表示机器人环境的一组参数;以及
从电子用户装置创建或接收环境中的对象列表以及列表中每个对象的相关联标识符;
从所述电子用户装置接收控制数据,所述控制数据包括所述电子用户装置的用户希望在所述环境中定位的、位于所生成的列表中的对象的标识符;以及
响应于对控制数据的接收,操作机器人和所述一个或多个传感器来搜索环境,以确定所识别的对象在环境中的位置。
14.一种机器人,配置为执行权利要求1至10中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB2002781.9A GB2592413B8 (en) | 2020-02-27 | 2020-02-27 | Robot |
GB2002781.9 | 2020-02-27 | ||
PCT/GB2021/050469 WO2021171012A1 (en) | 2020-02-27 | 2021-02-24 | Robot |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115176213A true CN115176213A (zh) | 2022-10-11 |
Family
ID=70278542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180016802.XA Pending CN115176213A (zh) | 2020-02-27 | 2021-02-24 | 机器人 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230114258A1 (zh) |
JP (1) | JP2023516194A (zh) |
KR (1) | KR20220147119A (zh) |
CN (1) | CN115176213A (zh) |
GB (1) | GB2592413B8 (zh) |
WO (1) | WO2021171012A1 (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ATE524784T1 (de) * | 2005-09-30 | 2011-09-15 | Irobot Corp | Begleitroboter für persönliche interaktion |
KR100834577B1 (ko) * | 2006-12-07 | 2008-06-02 | 한국전자통신연구원 | 스테레오 비전 처리를 통해 목표물 검색 및 추종 방법, 및이를 적용한 가정용 지능형 서비스 로봇 장치 |
WO2008104912A2 (en) * | 2007-02-28 | 2008-09-04 | Philips Intellectual Property & Standards Gmbh | Method of locating objects using an autonomously moveable device |
US10058997B1 (en) * | 2016-06-16 | 2018-08-28 | X Development Llc | Space extrapolation for robot task performance |
US10427306B1 (en) * | 2017-07-06 | 2019-10-01 | X Development Llc | Multimodal object identification |
US11614746B2 (en) * | 2018-01-05 | 2023-03-28 | Irobot Corporation | Mobile cleaning robot teaming and persistent mapping |
US10754343B2 (en) * | 2018-02-15 | 2020-08-25 | X Development Llc | Semantic mapping of environments for autonomous devices |
-
2020
- 2020-02-27 GB GB2002781.9A patent/GB2592413B8/en active Active
-
2021
- 2021-02-24 US US17/801,787 patent/US20230114258A1/en active Pending
- 2021-02-24 KR KR1020227033497A patent/KR20220147119A/ko unknown
- 2021-02-24 WO PCT/GB2021/050469 patent/WO2021171012A1/en active Application Filing
- 2021-02-24 JP JP2022551810A patent/JP2023516194A/ja active Pending
- 2021-02-24 CN CN202180016802.XA patent/CN115176213A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
GB2592413A8 (en) | 2022-08-03 |
JP2023516194A (ja) | 2023-04-18 |
KR20220147119A (ko) | 2022-11-02 |
GB2592413B8 (en) | 2022-08-03 |
WO2021171012A1 (en) | 2021-09-02 |
GB2592413A (en) | 2021-09-01 |
GB202002781D0 (en) | 2020-04-15 |
GB2592413B (en) | 2022-07-06 |
US20230114258A1 (en) | 2023-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4041837B2 (ja) | 物品保持システム、ロボット及びロボット制御方法 | |
JP4646943B2 (ja) | ロボット | |
US10365659B2 (en) | Robot cleaner, control apparatus, control system, and control method of robot cleaner | |
US7187998B2 (en) | Article handling system and method and article management system and method | |
US20230101981A1 (en) | Cleaning robot | |
US20210220997A1 (en) | Inspection apparatus and method for observing level of consumption of consumable item | |
JPWO2005015466A1 (ja) | 生活支援システム及びその制御用プログラム | |
JP3738256B2 (ja) | 生活空間用の物品移動システム、及びロボット操作装置 | |
KR20230113337A (ko) | 클러터-청소 로봇 시스템 | |
JP2023534989A (ja) | コンテキストおよびユーザ体験ベースのロボット制御 | |
WO2022257553A9 (zh) | 清洁设备和清洁路径、清洁地图生成方法及生成系统 | |
US20230084228A1 (en) | Robot | |
CN111487980B (zh) | 智能设备的控制方法、存储介质及电子设备 | |
JP3713021B2 (ja) | 生活空間用の物品取扱いシステム及びロボット操作装置 | |
US20230114258A1 (en) | Robot | |
JP7454161B2 (ja) | ロボット制御装置、ロボット制御システム及びロボット制御方法 | |
JP2006338059A (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 |