CN112074383A - 使用2d和3d路径规划的机器人导航 - Google Patents

使用2d和3d路径规划的机器人导航 Download PDF

Info

Publication number
CN112074383A
CN112074383A CN201980029757.4A CN201980029757A CN112074383A CN 112074383 A CN112074383 A CN 112074383A CN 201980029757 A CN201980029757 A CN 201980029757A CN 112074383 A CN112074383 A CN 112074383A
Authority
CN
China
Prior art keywords
robot
path
space
dimensional shape
computers
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
Application number
CN201980029757.4A
Other languages
English (en)
Inventor
B.霍尔森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
X Development LLC
Original Assignee
X Development LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by X Development LLC filed Critical X Development LLC
Publication of CN112074383A publication Critical patent/CN112074383A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40476Collision, planning for collision free path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40477Plan path independent from obstacles, then correction for obstacles
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • Y10S901/06Communication with another machine
    • Y10S901/07Conveyor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • Y10S901/09Closed loop, sensor feedback controls arm movement
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/46Sensing device
    • Y10S901/47Optical

Landscapes

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

Abstract

提供了一种用于使用2D和3D路径规划的机器人导航的方法、系统和装置,包括计算机可读存储设备。在所公开的方法中,机器人访问指示空间中物体的二维布局的地图数据,并评估供机器人穿过的候选路径。响应于确定候选路径不包括用于机器人的二维轮廓跨越空间的无碰撞路径,机器人相对于空间中物体的三维形状评估机器人的三维形状。基于对三维形状的评估,机器人确定穿过空间的无碰撞路径。

Description

使用2D和3D路径规划的机器人导航
技术领域
本公开一般涉及机器人导航。
背景技术
当机器人在空间中移动时,它们可能需要在它们的环境中的障碍物和物体周围导航。
发明内容
机器人可以基于遇到的条件在二维(two-dimensional,2D)路径规划和三维(three-dimensional,3D)路径规划之间动态切换。例如,为了计算效率,机器人大部分时间可以使用2D路径规划器。机器人的2D规划器可以使用类似于地面平面图(floor plan)的2D占据格栅(occupancy grid)来绘制空间中物体的位置。2D规划器还使用机器人的2D轮廓(例如,机器人在地面平面上的投影)来确定机器人在空间中的物体周围是否存在无碰撞路径。如果机器人使用2D占据格栅识别出无碰撞路径,则机器人可以使用2D技术安全地导航,同时避免对潜在障碍物的3D分析的更高的计算需求。
如果机器人不能使用2D分析识别出无碰撞路径,则机器人可以暂时切换到3D路径规划,以执行更细粒度的评估是否存在无碰撞路径。3D技术使用更多的计算资源,但允许机器人更准确地评估其导航受限空间的能力。在使用3D路径规划的情况下,机器人可以检测特定场景或路径段。这包括检测何时机器人的最大2D轮廓(例如,指示机器人的最大宽度)不适合通过区域,但机器人的最小2D轮廓(例如,指示机器人的最小宽度)适合通过该区域。该分析可以通过仅在潜在路径存在时使用3D路径规划来节省功率和计算资源。如果即使机器人的最小尺寸也不适合通过区域,则当2D路径规划显示不存在潜在路径时,避免了3D路径规划的不必要的计算。
互补2D和3D路径规划的使用提高了机器人导航复杂环境的能力,同时保持了效率。例如,对于房间中的圆桌,桌面的整个区域将在2D占据格栅中被显示为被阻挡(blocked)。然而,桌子的底座可能明显比桌面更窄,窄得足以当机器人的一部分稍微延伸到桌面的下方或上方时让机器人通过。3D分析将机器人的垂直轮廓与桌子的垂直轮廓进行比较,以确定机器人是否可以安全通过而不与桌子碰撞。此外,3D分析还可以确定如何改变机器人的姿态,例如升高或降低机器人臂或其他组件,以改变机器人的垂直轮廓并在狭窄空间中提供空隙。
在一些实施方式中,方法由机器人执行,并且包括(i)由机器人访问指示空间中物体的2D布局的地图数据;(ii)由机器人基于地图数据评估用于机器人穿过空间的候选路径;(iii)由机器人确定候选路径不包括用于机器人的2D轮廓跨越该空间的无碰撞路径;(iv)响应于所述确定,由机器人相对于空间中物体的3D形状来评估机器人的三维形状;以及(v)由机器人基于相对于空间中物体的3D形状评估机器人的3D形状来确定路径。
在一些实施方式中,机器人的2D轮廓是机器人的最小2D轮廓。
在一些实施方式中,该方法包括通过由机器人确定空间中物体的位置和物体所占据的区域,以及由机器人生成供机器人穿过的路径段,来基于地图数据评估用于机器人穿过空间的候选路径,其中,路径段不与物体所占据的区域相交。在一些实施方式中,机器人可以通过(i)通过沿路径段的长追踪机器人的2D轮廓生成沿路径段的2D区域,以及(ii)确定沿路径段的区域与物体所占据的区域相交,来确定候选路径不包括用于机器人的2D轮廓跨越该空间的无碰撞路径。
在一些实施方式中,机器人的3D形状是对应于机器人的第一配置的第一3D形状,并且基于相对于空间中物体的3D形状评估机器人的3D形状来确定路径包括(i)基于相对于空间中物体的3D形状评估机器人的第一3D形状,由机器人确定机器人的第一3D形状与物体的3D形状相交,以及(ii)响应于所述确定,基于由机器人相对于物体的3D形状评估机器人的第二3D形状来确定路径,机器人的第二3D形状对应于机器人的第二配置。
在一些实施方式中,访问指示空间中物体的2D布局的地图数据包括由机器人通过通信网络从服务器接收地图数据。
在一些实施方式中,基于地图数据评估用于机器人穿过空间的候选路径包括由机器人评估用于机器人穿过空间的一个以上的候选路径。在这样的实施方式中,机器人可以通过确定一个以上的候选路径中没有一个包括用于机器人的2D轮廓跨越该空间的无碰撞路径来确定候选路径不包括跨越该空间的无碰撞路径。
在一些实施方式中,所描述的方法和操作可以由机器人执行。在一些实施方式中,一个或多个非暂时性计算机可读介质可以存储指令,当所述指令被一个或多个计算机执行时,使得一个或多个计算机执行所描述的操作。
所公开的系统和技术的某些实施方式可以具有特定的优点。通过配对2D和3D路径规划,机器人可以降低其计算负荷,同时仍然确保其将识别无碰撞路径(如果存在)。降低计算需求节省电池电量,并为其他任务释放处理能力。
通过主要使用2D路径规划进行导航,机器人可以在导航开放空间时利用2D分析技术的计算效率。此外,2D分析的效率允许机器人具有高刷新率和高响应性。因此,2D路径规划系统可以执行分析循环,从而更快速地调整以适应障碍物位置的改变,并更快地改变机器人的路线。凭借更高的响应性和更快的规划,机器人可以以更高的速度移动,同时动态调整其路径以应对障碍物。当2D规划没有识别出无碰撞路径时,通过切换到3D路径规划,机器人可以利用3D分析的准确性来在受限空间中导航。3D分析还增加了导航选项的范围,允许机器人规划通过单独的2D分析可能出现为被阻挡的路径。
在附图和下面的描述中阐述了一个或多个实施方式的细节。根据说明书、附图和权利要求,本公开的其他潜在特征和优点将是明显的。
附图说明
图1是示出用于使用2D和3D路径规划的本地机器人导航的系统的示例的图。
图2A-图2B是图示2D路径规划的示例的图。
图2C是图示3D路径规划的示例的图。
图2D是示出使用3D路径规划的本地机器人导航的示例的图。
图3A是示出用于使用2D和3D路径规划的本地机器人导航的过程的示例的流程图。
图3B是示出使用2D和3D路径规划的本地机器人导航的示例的图。
图4是示出用于使用2D和3D路径规划的本地机器人导航的方法的示例的流程图。
不同附图中相同的附图标记和名称指示相同的元素。
具体实施方式
图1是示出用于使用2D和3D路径规划的本地机器人导航的系统100的示例的图。系统100包括机器人110,机器人110具有本地导航系统130,本地导航系统130包括路径规划模块140和导航模块150。机器人110还包括传感器160。系统100还包括通过网络105与机器人110通信的服务器170。图1示出了房间120中的机器人110,房间120包括桌子122和植物124。在示例中,机器人110尝试在房间120中导航,找到桌子122和植物124之间的路径。
一般地,机器人是指包括计算设备和在环境中移动或操纵环境中的物体的能力的机器或装置。机器人通常具有使得机器人能够在其周围环境中行进的移动系统,诸如机动腿、轮子或踏板。机器人的动作和功能可以由一个或多个可编程嵌入式或外部计算系统来控制,这使得机器人能够自主地或半自主地确定和执行动作(包括导航和移动)而无需来自人类用户的输入或仅需有限的输入。
许多应用需要机器人在空间中移动来执行各种任务和动作。在包括各种障碍物或物体的空间中导航可以使用涉及全局路径规划阶段和本地路径规划阶段两者的多阶段过程绘制机器人的无碰撞路径来执行。在许多情况下,全局路径规划和本地路径规划表示使用不同具体性级别下的信息来设置路径。例如,全局路径规划可以表示机器人行进路线的高级描述,例如,通过门道从一个房间行进到另一个房间的规划。全局路径规划中的一些或全部可以基于机器人当前没有用其传感器观察到的区域的数据来生成。相比之下,本地路径规划可以以更细粒度的方式实施全局规划,例如,指引房间内的特定位置或路径点或者设置路线校正以响应检测到的障碍物。以这种方式,当机器人行进时,本地路径规划可以实施并动态地细化全局路径规划,以适应机器人遇到的特定条件。
在全局路径规划中,机器人基于不经常改变的信息(诸如建筑物的结构)来确定到达期望目的地的初始优选全局路径。也可以使用先前观察到的物体(诸如始终处于特定位置的家具)的位置。全局路径规划通常涉及设置通过机器人当前没有用其传感器观察到的区域的一般路线,因此机器人可能无法验证沿路线的特定障碍物。例如,机器人可以使用建筑物的已知地面平面图来确定从建筑物第一层的房间、通过走廊、上电梯、绕过拐角到建筑物第二层的房间的初始优选路径。因为建筑物的布局是已知且不变的,所以在全局路径规划中,机器人可以使用该信息来绘制避开已知的静态障碍物(诸如墙壁)的全局路径。机器人可以基于各种标准中的任何一个来选择优选全局路径,例如,具有最短距离、最快预测通行时间的路径,或者最不可能干扰建筑物的其他居住者的路径。
在一些实施方式中,机器人110可以使用2D地面平面图数据来确定全局路径。在一些示例中,地面平面图数据被映射到2D占据格栅,该2D占据格栅描绘了空间中已知障碍物(例如,墙壁、楼梯井、电梯、家具)的位置。典型的全局占据格栅可以具有0.1米到1米数量级的格栅间距,其中对应于障碍物或物体的格栅空间被认为是被占据的,因此机器人不能通行。通常,地面平面图或占据格栅描绘了障碍物或物体向下到地面平面上的投影。作为结果,格栅显示为占据了对应于沿地面平面的物体的最大跨度的区域。例如,对于占据格栅中描绘的桌子,对应于整个桌面的区域将被指示为被占据并且机器人110不能通行。
机器人110通过绘制从机器人的当前位置(例如,起点)通过全局占据格栅的未占据区域到其目的地的路线来确定优选全局路径。对于全局路径规划,为了确保机器人110的任何部分都不与已知障碍物碰撞,机器人110可以使用2D轮廓来表示机器人的整体足迹(例如,机器人110的形状在地面平面上的投影),并绘制机器人的2D轮廓沿其不与任何被占据的格栅空间相交的路线。
机器人110可以周期性地更新优选全局路径,以应对机器人的位置偏离路线。因为用于全局路径规划的信息不经常改变,所以机器人的全局路径可以在相对慢的时间尺度上更新,例如每几秒一次(对应于从几分之一Hz到一Hz的更新速率),或者响应于地图、地面平面图或占据格栅的改变来更新。全局路径规划可以由嵌入在机器人110中的计算机系统或由远程计算机系统(例如,由周期性地向机器人110发送全局路径更新的服务器)来执行,或者由本地和远程处理的组合来执行。
因为全局路径规划使用诸如地面平面图和/或可能不是当前的先前观察的静态信息,所以所选择的全局路径可能无法应对当前沿路径定位的、但在生成地面平面图时不存在的障碍物。例如,地面平面图可能无法指示已经移动到与路线重合的位置的椅子或其他家具的当前位置。地面平面图也不太可能指示当前沿路线站立的人的存在。
为了应对用于生成全局路径的信息与机器人环境的当前实际状态之间的差异,机器人可以实施本地路径规划来修改全局路线以避免碰撞。在本地路径规划中,机器人使用来自机器人传感器(例如,相机、激光雷达(LIDAR)、雷达)的当前数据来检测和定位其路线上的障碍物。如果沿规划的全局路径检测到障碍物,并且机器人预测遵循该路线可能导致与该障碍物的碰撞,则机器人可以修改其路径以避免碰撞。这样,本地路径规划使得机器人110能够实施规划的全局路径,允许偏离规划的全局路径以适应机器人110遇到的情况。
例如,机器人110可以将全局路径分成几个路径段。基于传感器数据,如果机器人110确定优选全局路径的下一路径段被椅子阻挡,则机器人110可以用新的路径段替换该路径段,该新的路径段绕过椅子对机器人110重新制定路线,以避免碰撞。
一般地,机器人的本地路径规划尝试遵循全局路径,只有在确定可能存在碰撞时才修改路线。因为其通常依赖于感测附近环境中的物体,所以一般对机器人110的本地附近的路径段(例如,机器人110几米内的那些路径段)执行本地路径规划。
当机器人110沿其路径行进时,它为每个后续路径段执行本地路径规划,检测与障碍物的潜在碰撞,并且如果需要,修改机器人路线的特定部分以避免碰撞。因为机器人的附近环境随着机器人的移动而改变,所以本地路径规划通常以比全局路径更新更高的速率(例如,10Hz或更高数量级)重复,并且需要更低的延迟。作为结果,本地路径规划通常在作为机器人110的一部分嵌入的计算机系统中实施。
为了检测和避免潜在碰撞,机器人110可以使用2D或3D分析技术。用于本地路径规划的2D分析技术可以类似于用于全局路径规划的技术。例如,机器人110可以基于其感测到的周围环境生成本地2D占据格栅,并使用表示机器人110的足迹的2D轮廓。在一些情况下,用于全局路径规划的相同占据格栅可以用于本地路径规划。在其他情况下,因为机器人110使用当前传感器数据来生成或更新本地占据格栅,所以它可以具有比全局占据格栅的格栅间距更小的、几厘米数量级的格栅间距。如果当沿建议的路径段移动机器人110的轮廓时,该轮廓与本地占据格栅的被阻挡空间相交,则机器人可以识别潜在碰撞。如果机器人110识别出沿全局路径的路段的潜在碰撞,则它可以尝试绕过障碍物对机器人110重新制定路线,但是通常仍然在全局路径的方向上。
虽然上述2D技术在计算上能够是高效的,但是在一些示例中,即使存在无碰撞路径,它们也可能无法识别出无碰撞路径。这可能由于2D路径规划中使用的近似而发生,特别是因为物体的最大尺寸被投影到占据格栅上。例如,全局路径可以指引机器人110在桌子和植物或其他物体之间通过。在本地占据格栅中,桌面的整个区域以及植物的最大范围将显示为被占据。使用表示机器人的最大直径的机器人110的2D轮廓的2D分析可能指示机器人110不能在不接触一个或另一个的情况下通过桌子和植物之间的空间。因此,2D分析的结论是,沿全局路径不存在无碰撞路线。然而,如果桌子的底座明显比桌面更窄,这是典型的情况,机器人110可以通过将其一部分延伸到桌面下面而经过桌子。
当2D技术指示在期望的行进方向上可能没有无碰撞路径时,机器人110可以切换到使用3D分析技术进行本地路径规划。3D技术通过比较检测到的物体的3D形状和机器人110的3D形状来检测潜在碰撞,从而对路径段的可行性进行更细粒度的评估。3D分析技术可以更准确地预测是否会发生碰撞,从而识别出未考虑机器人110或附近物体的完整3D形状的2D分析所排除的无碰撞路径。
在一些示例中,3D分析技术可以通过评估机器人110以不同配置(例如,其臂抬起或转向侧面)在受限空间中导航的能力来进一步扩展本地路径规划。通过使用3D分析技术评估不同的机器人配置,机器人110可以确定机器人110可以以特定配置通过受限空间,从而允许机器人110导航在2D技术中指示被阻挡的路线。
尽管3D分析技术更准确,但它们可能需要比2D分析技术多得多的计算资源。作为结果,在一些示例中,机器人110通常实施2D分析技术,仅当2D技术无法识别出无碰撞路线时,切换到3D分析。然后,在3D分析完成之后(例如,在识别出无碰撞路径之后),机器人110可以切换回2D技术以提高计算效率。
本地导航包括如上所述的本地路径规划,以及马达命令生成和进一步细粒度的碰撞避免分析。为了执行本地导航,机器人110包括本地导航系统130,其实施路径规划模块140和导航模块150。路径规划模块140使用2D和3D分析来执行本地路径规划,以确定机器人110的无碰撞路径段。一旦规划模块140已经确定了路径,导航模块150就发出马达命令,并提供本地运动感知和建模,用于细粒度的碰撞避免。通过在本地路径规划的2D和3D分析之间切换,机器人110可以确保存在的无碰撞路径被识别,同时有效地管理计算资源和负载。
仍然参考图1,机器人110包括计算硬件以及移动系统,诸如机动腿、轮子或踏板,使其能够在空间中行进。机器人110的动作和功能由一个或多个嵌入式计算机系统控制,这使其能够自主地或半自主地确定和执行动作,包括导航和移动。在图1的示例中,机器人110位于房间120中,房间120包含桌子122和植物124,其被放置成使得它们之间有狭窄的空间。
在一些实施方式中,机器人110与服务器170通信。服务器170可以是例如一个或多个计算机、计算机系统、服务器系统或其他计算设备。在一些实施方式中,服务器170是云计算平台。
在图1中,机器人110通过网络105与服务器170通信,网络105可以包括有线或无线通信链路的任意组合。例如,网络105可以包括局域网(local area networkLAN)、广域网(wide area network,WAN)、以太网、蜂窝数据网络、Wi-Fi网络、互联网或能够交换数据的任何其他网络拓扑。
在系统100中,服务器170为机器人110执行全局路径规划,基于机器人110的当前任务为机器人生成优选全局路径。在图1的示例中,机器人的任务是在房间120的后壁上打开窗户。基于机器人的任务,服务器170确定全局路径126,全局路径126要求机器人110通过在桌子122和植物124之间经过,从其在房间120前面的当前位置行进到房间120的后壁。以规则的间隔(例如,以大约一Hz的速率)或根据需要,服务器170基于机器人的当前位置更新全局路径126,并向机器人110提供更新的全局路径数据172,其描述了机器人110行进的期望路径126。
基于接收到的全局路径数据172,机器人110使用其本地导航系统130在房间120中导航。本地导航系统130执行与本地路径规划和移动相关的各种操作,使得机器人110能够在房间120中移动而不与空间中的其他物体碰撞。
本地导航系统130包括路径规划模块140和导航模块150。规划模块140为机器人110执行本地路径规划,通常沿全局路径确定无碰撞路径段。在确定了一个或多个无碰撞路径段之后,导航模块150生成马达命令152以产生机器人运动,并执行细粒度的运动建模和感测以确保机器人110在执行马达命令152时避免碰撞。
导航系统130通常被嵌入作为机器人110的一部分,例如作为机器人110的计算机系统的一部分。导航系统130可以用软件、固件和硬件(包括一个或多个计算机程序、通用或专用中央处理器(CPU)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或其他计算方法、系统或设备)的任意组合来实施。
路径规划模块140包括2D规划器142、3D规划器144和模式选择模块146。模式选择模块146选择本地路径规划将使用2D分析技术还是3D分析技术(例如,分别由2D规划器142或3D规划器144)来完成。在一些示例中,为了节省计算资源,模式选择模块146默认选择2D规划器142。
为了确定机器人本地环境中障碍物的位置,规划模块140使用从机器人110的传感器160接收的传感器数据162。例如,机器人110可以包括各种传感器160,诸如一个或多个相机、雷达系统、激光雷达、接近传感器或其他检测器。一个或多个相机160可以包括单视觉系统,以及RGB-D设备、立体相机或提供深度信息的其他系统。传感器160生成提供关于机器人本地环境(例如,在机器人几米内)中的物体的信息的数据162。传感器数据162可以包括原始或经处理的图像数据、视频数据、激光雷达信号、雷达回波、接近度数据或提供关于机器人110附近障碍物的存在、位置、大小或形状的信息的其他传感器数据。
基于接收到的传感器数据162,2D规划器142生成本地2D占据格栅,该2D占据格栅指示机器人的本地环境中障碍物或物体的当前位置。本地占据格栅可以类似于用于全局路径规划的全局占据格栅,但是可以具有更小的格栅间距(例如,与0.1至1米的全局格栅间距相比,本地格栅间距为几厘米),使得机器人110能够更准确地确定空间的当前占据。类似于全局占据格栅,本地占据格栅通常描绘物体或障碍物在地面平面上的投影。作为结果,本地占据格栅显示为占据了对应于物体的最大跨度的区域(例如,对于桌子,格栅的占据区域对应于桌面的区域)。
在一些示例中,规划模块140还可以使用2D地面平面图数据174来确定机器人的本地环境中的物体的位置。地面平面图数据174可以由服务器170提供,并且可以是服务器170用于全局路径规划的相同数据。在一些示例中,地面平面图数据174可以存储在机器人110的存储器系统中。例如,规划模块140可以使用传感器数据162来更新或修改地面平面图数据174,以生成反映机器人的本地环境中障碍物的当前位置的本地占据格栅。
规划模块140还接收描述机器人110行进的优选路径的全局路径数据172。在一些示例中,全局路径数据172由机器人110生成。在图1的示例中,全局路径数据172由服务器170提供给机器人110,并且指示指引机器人110通过在桌子122和植物124之间行进而从房间120的前面移动到后面的路径126。
规划模块140还访问机器人数据136。机器人数据136包括描述机器人110的物理形状和尺寸的信息。例如,机器人数据136可以包括机器人110的一个或多个2D轮廓。2D轮廓可以是例如机器人110在平行于地面的一个或多个水平面中的外部尺寸(例如,机器人110的水平横截面)。在一些示例中,机器人数据136包括最大2D轮廓和最小2D轮廓。最大2D轮廓可以表示机器人110操纵通过特定空间必须容纳的机器人110的最大尺寸、圆周或跨度。例如,最大轮廓可以是机器人110的外部尺寸在平行于地面的平面上的投影,其指示机器人110的最大足迹,例如,反映机器人110在沿机器人110的高的任何水平面上的最大尺寸。在图1的示例中,最大轮廓对应于机器人110跨其底座111的横截面。最大轮廓可以表示机器人110的所有潜在姿态或配置上的最大尺寸,例如,示出当臂处于其最大向外延伸时的臂的宽度。替代地,最大轮廓可以表示机器人的当前姿态或配置的最大尺寸,例如基于臂的实际当前位置。如果机器人110正在携带远离机器人110延伸的物体,物体的范围也可以被包括在机器人110的当前最大轮廓中,以避免与所携带的物体碰撞。
同样,最小2D轮廓可以表示机器人110操纵通过特定空间必须容纳的机器人110的最小尺寸、圆周或跨度。例如,最小轮廓可以对应于具有最小面积或最小尺寸的机器人110的水平横截面。在图1的示例中,最小2D轮廓对应于机器人110跨其躯干112的横截面。
机器人数据136还包括描述机器人3D形状的数据。例如,机器人数据136可以包括机器人的3D模型、各种方位(例如,平行和垂直于地面)的2D轮廓或横截面、机器人的尺寸列表、或描述机器人的形状、尺寸和三维跨度的其他数据。在一些示例中,机器人数据136包括与机器人110的不同配置相关的2D或3D形状数据,例如,描述当机器人110的臂抬起时或当机器人110被配置在不同方位(例如,转向侧面)时机器人110的形状和跨度的数据。
使用生成的本地占据格栅和机器人数据136,2D规划器142尝试确定机器人110沿全局路径126行进的一系列无碰撞路径段。2D规划器142可以通过沿由全局路径数据172描述的路线追踪机器人的最大2D轮廓来预测潜在碰撞。2D规划器142检测在最大2D轮廓的任何部分与本地占据格栅的被占据空间相交的位置处的潜在碰撞。
例如,基于全局路径数据172,2D规划器142可以将机器人当前位置附近的全局路径部分分成更短的路径段。在机器人110的当前位置处开始,2D规划器142可以评估如果机器人110沿下一路径段移动,是否会有潜在碰撞。如果2D规划器142确定沿下一路径段没有潜在碰撞,它可以评估后续路径段的碰撞。2D规划器142可以继续评估后续路径段,直到预定系列的路段被确定为无碰撞。在2D规划器142识别出一系列无碰撞的路段之后,规划器142生成描述所识别的路线的路径数据148。
如果2D规划器142确定路径段可能导致潜在碰撞,则它可以尝试确定替代的、无碰撞的路线,该路线通常沿全局路径移动机器人110,同时避开障碍物。例如,2D规划器142可以确定全局路径126的下一路径段可能导致机器人110与桌子122碰撞。2D规划器142然后可以尝试确定机器人110绕过桌子122导航,同时避开房间120中的任何其他障碍物的路径。
为了确定替代的、无碰撞的路线,2D规划器142可以生成并评估通常沿全局路径126移动机器人110的多个候选路径段。例如,2D规划器142可以生成偏离全局路径126特定角度(例如,10度、20度、30度等)的候选路段。对于每个候选路段,2D规划器142评估如果机器人110沿该路段移动是否会有潜在碰撞。对于2D规划器142确定为无碰撞的任何路段,规划器142可以重复该过程,生成新的候选路段,该候选路段在第一个路段的终点处开始,并在全局路径的大致方向上进一步延伸。2D规划器142然后评估新的候选路段,以识别无碰撞的路段。2D规划器142可以重复这个过程,直到它确定绕过机器人的本地环境中检测到的障碍物的一个或多个无碰撞路径。
在一些实施方式中,无碰撞路线的生成类似于树形结构,其中2D规划器142修剪那些导致潜在碰撞的路线或路段。如果识别出一个以上的无碰撞路线,则2D规划器142可以基于各种标准(例如,最短距离、与全局路径的最小偏差、与任何检测到的障碍物或物体的最大空隙)中的任何一个来选择特定的无碰撞路径。在2D规划器142选择了无碰撞路径之后,它生成描述所选择的路径的路径数据148。
在一些示例中,2D规划器142可能无法识别沿全局路径126的无碰撞路线(例如,如果人或物体已经移动到完全阻挡该路径)。然而,在其他示例中,即使无碰撞路径确实存在,2D规划器142也可能无法识别无碰撞路线(例如,在其中只有当机器人的一部分延伸到桌面下方时,机器人才能经过桌子的先前描述的场景中)。如果2D规划器142无法识别现有的无碰撞路径,则模式选择模块146可以切换到3D规划器144,以实施3D分析技术来识别无碰撞路径。
因为3D分析技术在计算上可能很昂贵,所以规划模块140可能更喜欢仅在确定无碰撞路径可能确实存在的情况下实施它们。规划模块140可以通过使用机器人的最小2D轮廓执行2D分析技术来检查是否存在潜在的无碰撞路径。类似于使用最大轮廓的分析,2D规划器142可以通过搜索最小轮廓沿其到达目的地而不与本地占据格栅的任何被占据的格栅空间相交的路线来识别潜在的无碰撞路径。
因为最小2D轮廓通常小于最大2D轮廓,所以2D规划器142可以识别出当使用最小轮廓时是无碰撞的、但是当使用最大轮廓时不是无碰撞的的路径(例如,如果障碍物之间的空间小于最大轮廓,但是大于最小轮廓)。如果2D规划器142使用最小轮廓识别出无碰撞路径段,则模式选择模块146切换到3D规划器144。在一些示例中,模式选择模块146可以在切换到3D规划器之前要求2D规划器142使用最小轮廓来确定多个后续候选路径段是无碰撞的。
3D规划器144使用3D技术来执行更细粒度的分析,以识别通常沿全局路径126的用于机器人110的无碰撞路线。由3D规划器144实施的3D技术考虑了机器人110的3D形状(例如,考虑了机器人110沿其高的不同尺寸),以及在机器人的本地环境中检测到的障碍物的3D形状,以更准确地评估沿候选路径段的碰撞可能性。
为了执行3D分析,3D规划器144可以基于机器人数据136生成机器人110的3D轮廓。3D机器人轮廓可以指定例如机器人110在离地面的多个不同高度处的跨度或圆周,或者标识机器人110的3D边界框。3D轮廓可以基于机器人的CAD或其他模型。在一些实施方式中,3D规划器144可以生成考虑机器人110的可移动组件的3D轮廓,例如,通过生成可以被修改以反映机器人110的特定配置(例如,其臂抬起、转向侧面)的3D轮廓。
基于传感器数据162,3D规划器144还可以在候选路段的方向上为机器人110附近的一个或多个物体生成3D轮廓。与3D机器人轮廓类似,物体的3D轮廓可以指定物体在离地面的多个不同高度处的跨度或圆周,或者标识物体的3D边界框。在一些示例中,3D规划器144可以生成表示一个或多个物体的外表面的点云。在一些示例中,3D规划器144可以至少部分地基于与物体类型相关的数据来生成物体的3D轮廓。例如,机器人110可以将特定检测到的物体识别为桌子,并使用来自数据库的桌子的一个或多个CAD模型来生成物体的3D轮廓。
3D规划器144然后可以相对于任何检测到的障碍物的3D轮廓分析机器人110的3D轮廓,以确定机器人110沿候选路径段的移动是否会导致与附近物体的潜在碰撞。例如,如果机器人110的3D轮廓的一部分与物体的3D轮廓的一部分在沿该路段的任何位置处相交,则可能会指示潜在碰撞。如果3D规划器144确定机器人110可以沿路径段安全行进而不与障碍物碰撞,则规划模块140可以选择路径段,模式选择模块146可以切换回2D规划器142,并且规划模块140可以使用2D分析技术规划下一路径段。
在一些示例中,3D规划器144可以使用对应于机器人110的不同配置(例如,机器人臂抬起、机器人身体转向侧面)的3D轮廓来重复分析。例如,如果3D规划器144确定机器人110不能以其典型配置(例如,臂在其侧面)通过检测到的物体,则规划器144可以使用对应于机器人的不同配置的3D形状来重复3D分析。在一些示例中,3D规划器144使用对应于不同机器人配置的3D轮廓重复3D分析,直到识别出无碰撞配置或者直到已经分析了预定的配置集合。
在一些实施方式中,规划模块140可以使用3D分析技术来规划一个以上的连续路段。在这些示例中,3D规划器144可以使用类似于2D规划器142实施的方法来识别无碰撞路径,但使用3D分析技术来检测潜在碰撞。简而言之,3D规划器144可以将全局路径的本地部分分成更短的路径段,然后生成通常沿全局路径126移动机器人110的候选路段。使用上述3D分析技术,3D规划器144然后确定沿该路段移动机器人110是否会导致潜在碰撞。如果3D规划器144确定特定候选路段将导致潜在碰撞,则3D规划器144评估不同的候选路段,可能改变路段的方向。3D规划器144还可以利用不同的机器人配置(例如,臂抬起)或方位(例如,转向侧面)来评估相同的路段。当3D规划器144识别出无碰撞的候选路段和机器人方位时,3D规划器142可以生成并评估在第一个路段的终点处开始的后续候选路段。
像2D规划器一样,3D规划器144可以重复该过程,直到它确定绕过机器人的本地环境中的一个或多个障碍物的一个或多个无碰撞路径。如果识别出多个无碰撞路径,则3D规划器144可以基于各种标准(例如,最短距离、与全局路径的最小偏差、与任何检测到的障碍物或物体的最大空隙、最优选的机器人配置)中的任何一个来选择一个路径。
在一些示例中,使用最大或最小轮廓的2D规划器142和3D规划器144都不能识别沿全局路径126的无碰撞路径。在这些示例中,规划模块140可以确定不存在无碰撞路径。
在无碰撞路径被识别和选择之后,模块140生成描述所选择的路线的路径数据148。如果3D规划器144被用于选择路径的任何路段,则模块140还可以生成描述无碰撞地执行该路径所需的机器人110的特定配置的配置数据149(例如,机器人110必须在路径的一部分抬起其臂)。
规划模块140向导航模块150提供路径数据148和配置数据149。导航模块150然后生成马达命令152,该马达命令152被发送到机器人的马达控制180,以产生使机器人110沿由路径数据148描述的路径和以由配置数据描述的配置移动所需的移动力。导航模块150还可以使用传感器数据162和其他数据来执行运动建模或近实时碰撞避免,以确保当机器人110执行马达命令152以遵循所确定的路径时,它不会与任何物体或人碰撞。
图2A-图2D是示出针对图1的机器人110使用2D和3D路径规划的本地机器人导航的示例的图。在图2A-图2D中,机器人110接收指示优选全局路径126的数据,该优选全局路径126指引机器人110通过在桌子122和植物124之间行进来从房间的前面移动到房间的后面。虽然桌子122的桌面和植物124之间的间隙比机器人的底座更窄,但是机器人110可以通过将其机器人底座延伸到桌面之下并将其机器人臂抬起到桌面之上,从而在不与桌子122或植物124碰撞的情况下穿过该间隙。
图2A是示出使用最大2D机器人轮廓的2D路径规划的示例200a的图。在图2A中,基于从机器人110的传感器接收的传感器数据,2D规划器生成本地2D占据格栅。本地占据格栅包括分别被桌子122和植物124表示为“被占据”的区域222和224。
基于机器人数据,2D规划器生成机器人110的最大2D轮廓232a。最大轮廓232a对应于机器人110将穿过桌子122和平面124之间的空间的最宽跨度,例如,在该示例中为机器人110的底座的圆周。
2D规划器还接收描述优选路径126的全局路径数据,其指引机器人110在桌子122和规划124之间行进。因为最大轮廓232a的直径大于分别由桌子122和植物124占据的区域222和224之间的空间,所以2D规划器确定不存在无碰撞路径。在没有3D路径规划的情况下,机器人在本地导航优选路径126的尝试可能结束于此,确定不存在无碰撞路径,即使确实存在无碰撞路径。因为机器人110还实施3D路径规划,所以它可以切换到使用3D分析技术来识别无碰撞路径。
为了确定机器人110是否应该切换到使用3D分析技术,本地导航系统的路径规划模块首先使用最小2D轮廓评估无碰撞路径是否潜在地存在。如果模块没有使用最小2D轮廓识别出无碰撞路径,则系统确定沿全局路径没有可行的无碰撞路径。然而,如果模块使用最小轮廓识别出潜在的无碰撞路径,则系统切换到使用3D分析技术。
在图2B的示例200b中,机器人110使用最小2D轮廓232b执行2D路径规划。机器人的2D规划器基于访问的机器人数据生成机器人110的最小轮廓232b。在该示例中,最小轮廓232b对应于机器人110的最窄跨度(例如,机器人躯干的圆周),其将穿过桌子122和植物124之间的空间。
2D规划器使用最小轮廓232b评估期望的全局路径126,并且因为最小轮廓232b小于桌子122和植物224之间的间隙,所以确定沿全局路径126潜在地存在无碰撞路线。
因为2D规划器使用最小轮廓232b确定潜在的无碰撞路径存在,所以机器人的路径规划模块切换到使用3D分析技术(例如,3D规划器)来识别无碰撞路径。图2C是示出3D路径规划的示例200c的图。在示例200c中,机器人的3D规划器基于访问的机器人数据生成机器人110的3D轮廓232c。3D轮廓232c包括在三维中指示机器人110的外部范围的边界框。在图2C的示例中,边界框不包括机器人的臂,因为它们是可移动的,并且可以根据需要进行调整。
3D规划器还分别生成桌子122和植物124的3D轮廓222c和224c。例如,3D规划器可以基于从机器人110的一个或多个RGB-D相机接收的图像和深度数据来生成轮廓222c和224c。
基于分别分析3D机器人轮廓232c以及桌子122和植物124的3D轮廓222c和224c,3D规划器确定如果机器人110抬起其臂,则机器人110可以沿桌子122和植物124之间的路径行进而不会与任何一个发生碰撞。
基于2D和3D路径规划分析,机器人的路径规划模块可以选择无碰撞路径,并将描述该路径的数据以及指示所需的机器人配置的数据发送到机器人的导航模块。
图2D是示出使用图2A-图2C的2D和3D路径规划的本地机器人导航的示例200d的图。在示例200d中,基于由路径规划模块确定的所选择的路径和机器人配置(即,机器人臂抬起),机器人110成功地导航桌子122和植物124之间的路径。
图3A是示出使用2D和3D路径规划的本地机器人导航的过程300a的示例的流程图。在过程300a中,机器人的本地导航系统首先尝试使用利用机器人的最大2D轮廓的2D分析来确定沿优选全局路径的无碰撞路线。如果系统不能识别出无碰撞路径,则通过首先使用利用机器人的最小2D轮廓的2D技术来评估是否存在任何潜在的无碰撞路径,来确定是否执行3D路径分析。如果系统使用最小轮廓识别出无碰撞路径,则系统然后执行3D分析以识别无碰撞路径。如果系统使用3D分析识别出无碰撞路径,则它选择所识别的路径段,并将描述路径段和机器人配置的数据发送到机器人的马达控制。
在过程300a中,基于优选全局路径,本地导航系统的2D规划器首先为机器人生成沿优选路径的候选路径段(302)。例如,在机器人的当前位置处开始,2D规划器可以生成多个候选路径段,这些候选路径段通常在全局路径的方向上延伸,但是相对于路径的角度不同(例如,以15度的角度步长变化)。候选路径段的长度可以相同或不同,但是通常足够短以保持在机器人的附近范围内(例如,几米内)。
2D规划器然后使用机器人的最大2D轮廓来评估候选路径段,以确定每个路段是否导致潜在碰撞(304)。2D规划器可以基于指示机器人的物理大小、形状或尺寸的存储的机器人数据生成最大轮廓。在一些实施方式中,2D规划器基于指示机器人本地附近的物体的位置的传感器数据生成本地2D占据格栅。如果沿给定候选路径段移动机器人会导致最大轮廓与本地占据格栅的被占据空间相交,则2D规划器检测到沿该路段的潜在碰撞。
使用最大轮廓和本地占据格栅,2D规划器评估候选路径段以确定任何候选路径段是否导致无碰撞路径(306)。如果2D规划器确定一个或多个候选路径段是无碰撞的,则2D规划器可以从无碰撞的路径段当中选择路径段(308),然后重复分析(返回到步骤302)以确定后续路径段。
如果2D规划器使用最大轮廓确定没有候选路径段是无碰撞的,则系统通过首先使用机器人的最小2D轮廓评估候选路径段来确定是否切换到3D分析(310)。例如,2D规划器可以基于存储的机器人数据生成机器人的最小轮廓。然后,2D规划器可以使用生成的本地占据格栅来确定如果机器人沿给定候选路径段移动,是否可能发生潜在碰撞。类似于使用最大轮廓的2D分析,如果沿路段移动机器人会导致最小轮廓与本地占据格栅的被占据空间相交,则检测到潜在碰撞。在一些实施方式中,2D规划器可以识别新的候选路径段(例如,不同于使用最大2D轮廓评估的候选路径段)来使用最小轮廓进行评估。
2D规划器使用最小2D轮廓评估候选路径段以确定是否存在无碰撞路径(312)。如果2D规划器确定没有候选路径段导致无碰撞路线,则规划器确定沿优选全局路径没有无碰撞路线(314)。在这种情况下,导航系统可以向全局路径规划系统(例如,向远程服务器)返回消息,指示优选全局路径不可通航。在一些示例中,2D规划器可以尝试确定替代路线,例如,通过生成和评估与全局路径偏离更多的替代候选路径段。
然而,如果2D规划器在使用最小轮廓评估时确定特定候选路径段是无碰撞的,则本地导航系统切换到3D路径分析。使用3D分析技术,3D规划器评估特定候选路径段,以确定该路段实际上是否是无碰撞的(316)。例如,如前所述,基于从机器人的传感器(例如,相机、激光雷达、雷达等)接收的传感器数据,3D规划器可以生成在机器人的本地环境中检测到的物体的3D轮廓。3D规划器还以一种或多种配置(例如,臂抬起、转向侧面)生成机器人的3D轮廓。基于检测到的物体和机器人的3D轮廓,3D规划器确定机器人是否可以沿特定候选路径段行进而不与检测到的物体碰撞。
如果3D规划器确定特定候选路径段是无碰撞的(318),则它选择路径段(308),然后通过返回到步骤302以执行下一路径段(例如,在前一路段的终点处开始的路径段)的2D路径规划来继续规划路线。
在一些实施方式中,如果3D规划器确定特定候选路径段导致潜在碰撞,则3D规划器可以针对各种机器人配置重复步骤316,直到检测到无碰撞路径或者直到已经分析了预定的配置集合中的全部。
如果3D规划器确定机器人不能沿候选路径段移动而不潜在地与物体碰撞,则规划器确定沿全局路径没有无碰撞路线(314)。如上所述,在这种情况下,导航系统可以向全局路径规划系统(例如,远程服务器)返回消息,指示优选全局路径不可通航,或者使用本地路径规划来识别与全局路径偏离更多的替代路线。
如上所述,一旦选择了无碰撞的候选路径段(308),本地导航系统可以根据需要通过重复步骤302至318来继续路径规划。在已经选择了预定数量的路径段之后,系统生成描述所选择的路径的路径数据348和描述所需的机器人配置的机器人配置数据349。系统向导航模块350提供路径数据348和配置数据349,导航模块350生成马达命令352,马达命令352被发送到机器人的马达控制380,以使机器人沿所识别的无碰撞路径行进。
图3B是示出使用图3A的2D和3D路径规划过程300a的本地机器人导航的示例300b的图,用于机器人沿房间中的桌子和植物之间的优选全局路径导航,如图1和图2A-图2D所示。
在图3B中,机器人的本地导航系统已经使用利用最大2D轮廓的2D路径规划确定了从起点“0”到中间点“1”的无碰撞路径段。为了确定下一路径段,在步骤302’中,2D规划器生成候选路径段,该候选路径段将使机器人通常沿优选全局路径移动。在示例300b中,2D规划器生成三个候选路径段,分别从点“1”延伸到点“2a”、“2b”和“2c”,如平面320所示。平面320还示出了桌子和植物的位置,其中区域322和324在机器人的本地2D占据格栅中被指定为被占据。
在步骤304’中,2D规划器使用机器人的最大2D轮廓332a来评估任何候选路径段是否是无碰撞的。因为对于所有三个候选路径段,最大轮廓332a与本地占据格栅的被占据空间相交,所以当使用最大轮廓332a评估时,2D规划器确定没有候选路径段是无碰撞路径(306’)。
因为2D规划器没有使用最大轮廓识别出无碰撞路径(306’),所以2D规划器接下来通过使用最小2D轮廓332b评估候选路径段来确定是否存在潜在的无碰撞路径(310’)。如平面330所示,2D规划器使用本地2D占据格栅评估三个候选路径中的每一个,并且当使用最小轮廓332b评估时,确定从点“1”到点“2b”的候选路段是无碰撞的(312’)。
因为2D规划器利用最小2D轮廓332b确定存在无碰撞路径段,所以本地导航系统切换到使用3D分析技术来识别无碰撞路径(316’)。基于传感器数据,3D规划器生成机器人的本地环境中的物体的3D轮廓。在示例300b中,3D规划器分别为桌子和植物生成3D轮廓322c和324c,如平面340所示。基于存储的机器人数据,3D规划器生成对应于机器人的3D形状的3D机器人轮廓332c。
使用3D分析,3D规划器评估候选路径段,以确定是否存在导致沿路径段的无碰撞路线的机器人配置(316’)。在示例300b中,3D规划器确定,如果机器人抬起其臂,则机器人可以沿从点“1”到点“2b”的路段在桌子和植物之间无碰撞地通过(318’)。
因为3D规划器使用3D分析来识别无碰撞路径(318’),所以导航系统选择所识别的路径段(从点“1”到点“2b”),并通过恢复到使用最大轮廓的2D分析来继续路径规划(302”)。2D规划器重复步骤302,分别生成从点“2b”到点“3a”、“3b”和“3c”的三个新的候选路径段。然后,2D规划器使用最大2D轮廓332a评估每个新的候选路径段,以确定是否可以识别出无碰撞路线(304”)。如平面350所示,2D规划器使用最大2D轮廓确定路段“2b-3b”是无碰撞的。作为结果,根据过程300a,系统选择路径段“2b-3b”,然后继续绘制机器人路线,其中下一路径段在点“3b”处开始。
图3B的平面360示出了由系统选择的最终路径,其中实线部分指示路径的开始和结束段是使用2D路径规划来确定的,而虚线部分指示桌子和植物之间的路径的中间段是使用3D路径规划来确定的。
图4是示出使用2D和3D路径规划的本地机器人导航的方法400的示例的流程图。方法400可以由一个或多个计算机系统执行,例如机器人110的计算机系统。简而言之,方法400包括由机器人访问指示空间中物体的2D布局的地图数据(402);基于地图数据评估用于机器人穿过空间的候选路径(404);确定候选路径不包括无碰撞路径(406);响应于所述确定,相对于空间中物体的3D形状来评估机器人的3D形状(408);以及基于相对于空间中物体的三维形状评估机器人的3D形状来确定路径(410)。
更详细地,方法400包括由机器人访问指示空间中物体的2D布局的地图数据(402)。地图数据可以包括例如指示各种物体和/或障碍物的位置的地面平面图,各种物体和/或障碍物包括墙壁、屏障、路障、家具或可能阻碍机器人移动的其他物体。在一些实施方式中,地图数据可以包括一个或多个占据格栅,其中指示了对应于空间中的物体或障碍物的那些格栅空间。在一些实施方式中,机器人从远程计算机系统接收地图数据,例如通过通信网络从服务器接收地图数据。在一些实施方式中,机器人通过从机器人的存储器系统中检索地图数据来访问地图数据。
该方法还包括由机器人基于地图数据评估用于机器人穿过空间的候选路径(404)。例如,机器人可以访问指示机器人的大致方向或目的地的全局路径。基于地图数据、机器人的传感器数据或其他数据,机器人可以确定空间中物体的位置和该物体所占据的2D区域。机器人然后可以生成供机器人穿过的路径段,其中该路径段通常沿全局路径定向,并且该路径段不与物体所占据的区域相交。在一些实施方式中,机器人可以生成通常沿全局路径定向的一个以上的候选路径段。
该方法还包括由机器人确定候选路径不包括用于机器人的2D轮廓跨越该空间的无碰撞路径(406)。例如,机器人可以访问指示机器人的2D轮廓的数据,其中2D轮廓指示机器人的2D形状。在一些实施方式中,2D轮廓可以是机器人的最小2D轮廓,例如,机器人在特定平面中的最小跨度或圆周。机器人可以通过沿路段的长追踪机器人的2D轮廓来生成沿该候选路径段的2D区域。机器人可以通过确定沿候选路段的区域与物体所占据的区域相交来进一步确定候选路径段不是无碰撞的。如果没有生成的候选路径段包括无碰撞路径,则机器人可以确定候选路径不包括针对所考虑的机器人的特定2D轮廓的穿过空间的无碰撞路径。
响应于确定候选路径不包括用于机器人的2D轮廓跨越该空间的无碰撞路径,机器人可以相对于空间中物体的3D形状来评估机器人的3D形状(408)。例如,机器人可以访问指示机器人的3D形状的数据,其中3D形状可以包括机器人在离地面的多个不同高度处的跨度或圆周。在一些情况下,3D形状可以指示机器人的3D边界框,或者可以基于机器人的3D模型(例如,CAD模型)。3D形状可以对应于特定的机器人配置(例如,其臂抬起、转向侧面)。类似地,物体的3D形状可以包括距地面的多个不同高度处的物体的跨度或圆周、物体的3D边界框,或者基于物体的3D模型。在一些情况下,机器人可以基于来自机器人的一个或多个传感器的数据(例如来自一个或多个相机、激光雷达传感器、雷达传感器或其他机器人传感器的数据)来确定物体的3D形状。机器人可以相对于物体的3D形状评估机器人的3D形状,以确定生成的路径段是否是无碰撞的。
该方法还包括由机器人基于相对于空间中物体的3D形状评估机器人的3D形状来确定路径(410)。例如,如果基于相对于空间中一个或多个物体的3D形状评估机器人的3D形状,机器人确定特定候选路径是无碰撞的,则它可以选择该候选路径用于机器人穿过。
在一些实施方式中,机器人的3D形状可以对应于机器人的特定配置(例如,机器人臂在侧面)。基于相对于空间中物体的3D形状评估对应于特定机器人配置的3D形状,机器人可以确定候选路径将导致机器人和物体之间的碰撞(例如,机器人的3D形状在沿候选路径的某个点处与物体的3D形状相交)。机器人然后可以使用机器人的第二3D形状(例如,对应于第二机器人不同配置(例如,机器人臂抬起)的3D形状)来重复3D分析,以确定是否存在无碰撞路径。基于相对于物体的3D形状评估机器人的第二3D形状,机器人能够确定机器人的无碰撞路径。
所描述的特征可以在数字电子电路中实施,或者在计算机硬件、固件、软件或它们的组合中实施。这些技术可以在有形地体现在信息载体(例如,在机器可读存储设备中)中的计算机程序产品中实施,用于由可编程处理器执行;并且方法步骤可以由执行指令程序的可编程处理器来执行,以通过对输入数据进行操作并生成输出来执行所描述的实施方式的功能。机器可读存储设备可以是非暂时性机器可读存储设备。所描述的特征可以有利地在可在可编程系统上执行的一个或多个计算机程序中实施,该可编程系统包括至少一个可编程处理器,该可编程处理器被耦合以从数据存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,以及向数据存储系统、至少一个输入设备和至少一个输出设备发送数据和指令。计算机程序是可以在计算机中直接或间接用来执行特定动作或带来特定结果的指令集。计算机程序可以用任何形式的编程语言编写,包括编译或解释语言,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。
举例来说,用于执行指令程序的合适处理器包括通用和专用微处理器两者,以及任何类型计算机的唯一处理器或多个处理器之一。一般地,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器。一般地,计算机还将包括或可操作地耦合以与用于存储数据文件的一个或多个大容量存储设备通信;这种设备包括磁盘,诸如内部硬盘和可移动磁盘;磁光盘;和光盘。适用于有形地体现计算机程序指令和数据的存储设备包括所有形式的非易失性存储器,包括例如半导体存储器设备,诸如EPROM、EEPROM和闪存设备;磁盘,诸如内部硬盘和可移动磁盘;磁光盘;和CD-ROM和DVD-ROM盘。处理器和存储器可以由专用集成电路(ASIC)来补充或并入其中。
为了提供与用户的交互,这些特征可以在具有用于向用户显示信息的显示设备(诸如阴极射线管(cathode ray tube,CRT)或液晶显示器(liquid crystal display,LCD))监视器、以及用户可以通过其向计算机提供输入的触摸屏和/或键盘和定点设备(诸如鼠标或轨迹球)的计算机上实施。
这些特征可以在计算机系统中实施,该计算机系统包括后端组件,诸如数据服务器,或者包括中间件组件,诸如应用服务器或互联网服务器,或者包括前端组件,诸如具有图形用户界面或互联网浏览器的客户端计算机,或者它们的任意组合。系统的组件可以通过任何形式或介质的数字数据通信(诸如通信网络)来连接。通信网络的示例包括例如LAN、WAN以及形成互联网的计算机和网络。
计算机系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过诸如所描述的网络进行交互。客户端和服务器的关系是通过运行在各自计算机上的计算机程序产生的,并且彼此具有客户端-服务器关系。
已经描述了许多实施方式。然而,应当理解,在不脱离本公开的精神和范围的情况下,可以进行各种修改。例如,社交网络平台而不是外部应用可以执行使用分析,并向社交网络平台的用户提供使用信息。因此,其他实施方式在所附权利要求的范围内。

Claims (20)

1.一种由机器人执行的方法,所述方法包括:
由所述机器人访问指示空间中物体的二维布局的地图数据;
由所述机器人基于所述地图数据评估用于机器人穿过所述空间的候选路径;
由所述机器人确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径;
响应于所述确定,由所述机器人相对于所述空间中物体的三维形状来评估所述机器人的三维形状;以及
由所述机器人基于相对于所述空间中物体的三维形状评估所述机器人的三维形状来确定路径。
2.根据权利要求1所述的方法,其中,所述机器人的二维轮廓是所述机器人的最小二维轮廓。
3.根据任一前述权利要求所述的方法,其中,基于所述地图数据评估用于所述机器人穿过所述空间的候选路径包括:
由所述机器人确定所述空间中物体的位置和所述物体所占据的区域;以及
由所述机器人生成供所述机器人穿过的路径段,其中,所述路径段不与所述物体所占据的区域相交。
4.根据权利要求3所述的方法,其中,确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径包括:
由所述机器人通过沿所述路径段的长追踪所述机器人的二维轮廓来生成沿所述路径段的二维区域;以及
由所述机器人确定沿所述路径段的区域与所述物体所占据的区域相交。
5.根据任一前述权利要求所述的方法,其中:
所述机器人的三维形状是对应于所述机器人的第一配置的第一三维形状;并且
基于相对于所述空间中物体的三维形状评估所述机器人的三维形状来确定路径包括:
基于相对于所述空间中物体的三维形状评估所述机器人的第一三维形状,由所述机器人确定所述机器人的第一三维形状与所述物体的三维形状相交;以及
响应于所述确定,基于由所述机器人相对于所述物体的三维形状评估所述机器人的第二三维形状来确定路径,所述机器人的第二三维形状对应于所述机器人的第二配置。
6.根据任一前述权利要求所述的方法,其中,访问指示空间中物体的二维布局的地图数据包括由所述机器人通过通信网络从服务器接收地图数据。
7.根据任一前述权利要求所述的方法,其中:
基于所述地图数据评估用于所述机器人穿过所述空间的候选路径包括由所述机器人评估用于所述机器人穿过所述空间的一个以上的候选路径;以及
确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径包括由所述机器人确定所述一个以上的候选路径中没有一个包括跨越所述空间的无碰撞路径。
8.一种系统,包括:
一个或多个计算机;和
存储指令的一个或多个计算机可读介质,当所述指令被所述一个或多个计算机执行时,使得所述一个或多个计算机执行操作,所述操作包括:
由所述一个或多个计算机访问指示空间中物体的二维布局的地图数据;
由所述一个或多个计算机基于所述地图数据评估用于机器人穿过所述空间的候选路径;
由所述一个或多个计算机确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径;
响应于所述确定,由所述一个或多个计算机相对于所述空间中物体的三维形状来评估所述机器人的三维形状;以及
由所述一个或多个计算机基于相对于所述空间中物体的三维形状评估所述机器人的三维形状来确定路径。
9.根据权利要求8所述的系统,其中,所述机器人的二维轮廓是所述机器人的最小二维轮廓。
10.根据权利要求8-9所述的系统,其中,基于所述地图数据评估用于所述机器人穿过所述空间的候选路径包括:
由所述一个或多个计算机确定所述空间中物体的位置和所述物体所占据的区域;以及
由所述一个或多个计算机生成供机器人穿过的路径段,其中,所述路径段不与所述物体所占据的区域相交。
11.根据权利要求10所述的系统,其中,确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径包括:
由所述一个或多个计算机通过沿所述路径段的长追踪所述机器人的二维轮廓来生成沿所述路径段的二维区域;以及
由所述一个或多个计算机确定沿所述路径段的区域与所述物体所占据的区域相交。
12.根据权利要求8-11所述的系统,其中:
所述机器人的三维形状是对应于所述机器人的第一配置的第一三维形状;并且
基于相对于所述空间中物体的三维形状评估所述机器人的三维形状来确定路径包括:
基于相对于所述空间中物体的三维形状评估所述机器人的第一三维形状,由所述一个或多个计算机确定所述机器人的第一三维形状与所述物体的三维形状相交;以及
响应于所述确定,基于由所述一个或多个计算机相对于所述物体的三维形状评估所述机器人的第二三维形状来确定路径,所述机器人的第二三维形状对应于所述机器人的第二配置。
13.根据权利要求8-12所述的系统,其中,访问指示空间中物体的二维布局的地图数据包括由所述一个或多个计算机通过通信网络从服务器接收地图数据。
14.根据权利要求8-13所述的系统,其中:
基于所述地图数据评估用于机器人穿过所述空间的候选路径包括由所述一个或多个计算机评估用于机器人穿过所述空间的一个以上的候选路径;以及
确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径包括由所述一个或多个计算机确定所述一个以上的候选路径中没有一个包括跨越所述空间的无碰撞路径。
15.存储指令的一个或多个非暂时性计算机可读介质,所述指令在被一个或多个计算机执行时,使得所述一个或多个计算机执行操作,所述操作包括:
由所述一个或多个计算机访问指示空间中物体的二维布局的地图数据;
由所述一个或多个计算机基于所述地图数据评估用于机器人穿过所述空间的候选路径;
由所述一个或多个计算机确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径;
响应于所述确定,由所述一个或多个计算机相对于所述空间中物体的三维形状来评估所述机器人的三维形状;以及
由所述一个或多个计算机基于相对于所述空间中物体的三维形状评估所述机器人的三维形状来确定路径。
16.根据权利要求15所述的一个或多个非暂时性计算机可读介质,其中,所述机器人的二维轮廓是所述机器人的最小二维轮廓。
17.根据权利要求15-16所述的一个或多个非暂时性计算机可读介质,其中,基于所述地图数据评估用于机器人穿过所述空间的候选路径包括:
由所述一个或多个计算机确定所述空间中物体的位置和所述物体所占据的区域;
由所述一个或多个计算机生成供所述机器人穿过的路径段,其中,所述路径段不与所述物体所占据的区域相交。
18.根据权利要求17所述的一个或多个非暂时性计算机可读介质,其中确定候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径包括:
由所述一个或多个计算机通过沿所述路径段的长追踪所述机器人的二维轮廓来生成沿所述路径段的二维区域;以及
由所述一个或多个计算机确定沿所述路径段的区域与所述物体所占据的区域相交。
19.根据权利要求15-18所述的一个或多个非暂时性计算机可读介质,其中:
所述机器人的三维形状是对应于所述机器人的第一配置的第一三维形状;并且
基于相对于所述空间中物体的三维形状评估所述机器人的三维形状来确定路径包括:
基于相对于所述空间中物体的三维形状评估所述机器人的第一三维形状,由所述一个或多个计算机确定所述机器人的第一三维形状与所述物体的三维形状相交;以及
响应于所述确定,基于由所述一个或多个计算机相对于所述物体的三维形状评估所述机器人的第二三维形状来确定路径,所述机器人的第二三维形状对应于所述机器人的第二配置。
20.根据权利要求15-19所述的一个或多个非暂时性计算机可读介质,其中:
基于所述地图数据评估用于机器人穿过所述空间的候选路径包括由所述一个或多个计算机评估用于机器人穿过所述空间的一个以上的候选路径;以及
确定所述候选路径不包括用于所述机器人的二维轮廓跨越所述空间的无碰撞路径包括由所述一个或多个计算机确定所述一个以上的候选路径中没有一个包括跨越所述空间的无碰撞路径。
CN201980029757.4A 2018-05-01 2019-04-24 使用2d和3d路径规划的机器人导航 Pending CN112074383A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/967,805 2018-05-01
US15/967,805 US10899006B2 (en) 2018-05-01 2018-05-01 Robot navigation using 2D and 3D path planning
PCT/US2019/028868 WO2019212818A2 (en) 2018-05-01 2019-04-24 Robot navigation using 2d and 3d path planning

Publications (1)

Publication Number Publication Date
CN112074383A true CN112074383A (zh) 2020-12-11

Family

ID=66690955

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980029757.4A Pending CN112074383A (zh) 2018-05-01 2019-04-24 使用2d和3d路径规划的机器人导航

Country Status (5)

Country Link
US (3) US10899006B2 (zh)
EP (1) EP3768473A2 (zh)
KR (3) KR102478975B1 (zh)
CN (1) CN112074383A (zh)
WO (1) WO2019212818A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112947464A (zh) * 2021-03-05 2021-06-11 上海有个机器人有限公司 机器人通过狭窄空间方法、装置、终端及存储介质
CN112987724A (zh) * 2021-02-04 2021-06-18 京东数科海益信息科技有限公司 路径优化方法、装置、机器人及存储介质
CN113524193A (zh) * 2021-08-05 2021-10-22 诺亚机器人科技(上海)有限公司 机器人运动空间标记方法、装置、机器人及可存储介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10899006B2 (en) 2018-05-01 2021-01-26 X Development Llc Robot navigation using 2D and 3D path planning
WO2020006071A1 (en) * 2018-06-26 2020-01-02 Teradyne, Inc. System and method for robotic bin picking
US11465279B2 (en) * 2018-11-29 2022-10-11 X Development Llc Robot base position planning
JP7028151B2 (ja) * 2018-12-14 2022-03-02 トヨタ自動車株式会社 軌道生成装置
CN111015650A (zh) * 2019-11-18 2020-04-17 安徽机电职业技术学院 一种多点确定目标位置的工业机器人智能视觉系统及方法
US11493925B2 (en) * 2020-03-05 2022-11-08 Locus Robotics Corp. Robot obstacle collision prediction and avoidance
US20220193907A1 (en) * 2020-12-22 2022-06-23 X Development Llc Robot planning
CN112947453B (zh) * 2021-02-24 2024-04-30 湖北文理学院 一种混凝土平仓机行驶路径规划与实时调整方法
JP2022136756A (ja) * 2021-03-08 2022-09-21 本田技研工業株式会社 自律走行システム
US11975451B2 (en) * 2021-03-27 2024-05-07 Mitsubishi Electric Research Laboratories, Inc. Simulation-in-the-loop tuning of robot parameters for system modeling and control
CN115723121A (zh) * 2021-08-26 2023-03-03 富士能电子(昆山)有限公司 机械手臂避障方法及机械手臂避障系统
US20230110897A1 (en) * 2021-09-28 2023-04-13 Intrinsic Innovation Llc Online planning satisfying constraints
US11861959B2 (en) * 2022-01-06 2024-01-02 Johnson Controls Tyco IP Holdings LLP Methods and systems for integrating autonomous devices with an access control system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258779A (ja) * 2008-04-11 2009-11-05 Toyota Motor Corp 移動ロボット及び足跡計画方法
CN103984037A (zh) * 2014-04-30 2014-08-13 深圳市墨克瑞光电子研究院 基于视觉的移动机器人障碍物检测方法和装置
CN105437232A (zh) * 2016-01-11 2016-03-30 湖南拓视觉信息技术有限公司 一种控制多关节移动机器人避障的方法及装置
CN106441275A (zh) * 2016-09-23 2017-02-22 深圳大学 一种机器人规划路径的更新方法及装置
CN106573377A (zh) * 2014-06-05 2017-04-19 软银机器人欧洲公司 具有冲突避免和轨迹恢复能力的类人机器人
CN107228673A (zh) * 2017-05-19 2017-10-03 北京旋极伏羲大数据技术有限公司 航路规划方法及装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4408982C1 (de) 1994-03-16 1995-05-18 Deutsche Forsch Luft Raumfahrt Autonomes Navigationssystem für einen mobilen Roboter oder Manipulator
US5835684A (en) * 1994-11-09 1998-11-10 Amada Company, Ltd. Method for planning/controlling robot motion
US7092862B2 (en) * 2002-12-05 2006-08-15 International Business Machines Corporation Apparatus and method for determining whether objects will collide
US7689321B2 (en) 2004-02-13 2010-03-30 Evolution Robotics, Inc. Robust sensor fusion for mapping and localization in a simultaneous localization and mapping (SLAM) system
WO2007048003A2 (en) * 2005-10-21 2007-04-26 Deere & Company Versatile robotic control module
US20070168309A1 (en) * 2005-12-01 2007-07-19 Exent Technologies, Ltd. System, method and computer program product for dynamically extracting and sharing event information from an executing software application
JP5112666B2 (ja) * 2006-09-11 2013-01-09 株式会社日立製作所 移動装置
JP4489800B2 (ja) * 2007-08-30 2010-06-23 株式会社スクウェア・エニックス 画像生成装置及び方法、並びにプログラム及び記録媒体
US20120215380A1 (en) * 2011-02-23 2012-08-23 Microsoft Corporation Semi-autonomous robot that supports multiple modes of navigation
KR101876380B1 (ko) * 2011-07-06 2018-07-11 삼성전자주식회사 매니퓰레이터 및 그 경로 생성 방법
JP2014056506A (ja) * 2012-09-13 2014-03-27 Toyota Central R&D Labs Inc 障害物検出装置及びそれを備えた移動体
US9037396B2 (en) * 2013-05-23 2015-05-19 Irobot Corporation Simultaneous localization and mapping for a mobile robot
KR101941147B1 (ko) * 2014-12-25 2019-04-12 카와사키 주코교 카부시키 카이샤 암형 로봇의 장애물 자동 회피방법 및 제어장치
KR101539270B1 (ko) * 2015-02-27 2015-07-24 군산대학교산학협력단 충돌회피 및 자율주행을 위한 센서융합 기반 하이브리드 반응 경로 계획 방법, 이를 수행하기 위한 기록 매체 및 이동로봇
US9933264B2 (en) * 2015-04-06 2018-04-03 Hrl Laboratories, Llc System and method for achieving fast and reliable time-to-contact estimation using vision and range sensor data for autonomous navigation
JP6559535B2 (ja) 2015-10-22 2019-08-14 株式会社東芝 障害物マップ生成装置、その方法、及び、そのプログラム
US20180267561A1 (en) * 2016-09-12 2018-09-20 Andrew Archer Trench Autonomous control of unmanned aircraft
CN110225736B (zh) * 2017-01-22 2021-12-31 四川金瑞麒智能科学技术有限公司 一种智能轮椅的环境信息收集与反馈系统及方法
US10899006B2 (en) 2018-05-01 2021-01-26 X Development Llc Robot navigation using 2D and 3D path planning

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258779A (ja) * 2008-04-11 2009-11-05 Toyota Motor Corp 移動ロボット及び足跡計画方法
CN103984037A (zh) * 2014-04-30 2014-08-13 深圳市墨克瑞光电子研究院 基于视觉的移动机器人障碍物检测方法和装置
CN106573377A (zh) * 2014-06-05 2017-04-19 软银机器人欧洲公司 具有冲突避免和轨迹恢复能力的类人机器人
CN105437232A (zh) * 2016-01-11 2016-03-30 湖南拓视觉信息技术有限公司 一种控制多关节移动机器人避障的方法及装置
CN106441275A (zh) * 2016-09-23 2017-02-22 深圳大学 一种机器人规划路径的更新方法及装置
CN107228673A (zh) * 2017-05-19 2017-10-03 北京旋极伏羲大数据技术有限公司 航路规划方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KALIN GOCHEV: "Path Planning with Adaptive Dimensionality", THE FOURTH INTERNATIONAL SYMPOSIUM ON COMBINATORIAL SEARCH *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112987724A (zh) * 2021-02-04 2021-06-18 京东数科海益信息科技有限公司 路径优化方法、装置、机器人及存储介质
CN112987724B (zh) * 2021-02-04 2023-05-02 京东科技信息技术有限公司 路径优化方法、装置、机器人及存储介质
CN112947464A (zh) * 2021-03-05 2021-06-11 上海有个机器人有限公司 机器人通过狭窄空间方法、装置、终端及存储介质
CN113524193A (zh) * 2021-08-05 2021-10-22 诺亚机器人科技(上海)有限公司 机器人运动空间标记方法、装置、机器人及可存储介质
CN113524193B (zh) * 2021-08-05 2022-09-23 诺亚机器人科技(上海)有限公司 机器人运动空间标记方法、装置、机器人及可存储介质

Also Published As

Publication number Publication date
US11554488B2 (en) 2023-01-17
WO2019212818A2 (en) 2019-11-07
KR102434212B1 (ko) 2022-08-19
US20210162599A1 (en) 2021-06-03
KR102478975B1 (ko) 2022-12-19
US10899006B2 (en) 2021-01-26
US11878427B2 (en) 2024-01-23
KR20230006591A (ko) 2023-01-10
US20230123298A1 (en) 2023-04-20
US20190337154A1 (en) 2019-11-07
KR20220119519A (ko) 2022-08-29
EP3768473A2 (en) 2021-01-27
WO2019212818A3 (en) 2019-12-19
KR102530996B1 (ko) 2023-05-11
KR20210002615A (ko) 2021-01-08

Similar Documents

Publication Publication Date Title
US11878427B2 (en) Robot navigation using 2D and 3D path planning
CA3113669C (en) Dynamic probabilistic motion planning
US11059174B2 (en) System and method of controlling obstacle avoidance of robot, robot and storage medium
JP7219812B2 (ja) 地形を意識したステッププランニングシステム
US20210103286A1 (en) Systems and methods for adaptive path planning
JP2020509500A (ja) 自律移動ロボットの制御方法
CN106774347A (zh) 室内动态环境下的机器人路径规划方法、装置和机器人
CN111433697A (zh) 用于自主移动机器人的运动规划
JP2022543997A (ja) 制約された移動度マッピング
CN108638062A (zh) 机器人定位方法、装置、定位设备及存储介质
KR20210063791A (ko) 장애물의 특성을 고려한 dqn 및 slam 기반의 맵리스 내비게이션 시스템 및 그 처리 방법
CN115008465A (zh) 机器人控制方法、机器人及计算机可读存储介质
Zhou et al. Building information modeling‐based 3D reconstruction and coverage planning enabled automatic painting of interior walls using a novel painting robot in construction
CN113848893A (zh) 机器人导航方法、装置、设备及存储介质
Lunenburg et al. A representation method based on the probability of collision for safe robot navigation in domestic environments
CN114740849B (zh) 基于行人步行决策规则的移动机器人自主导航方法及装置
CN112859842B (zh) 一种路径跟随导航方法及其系统
RU2769710C1 (ru) Способ построения маршрута движения и управления движением мобильного сервисного робота в торговом помещении
Hsu et al. A graph-based exploration strategy of indoor environments by an autonomous mobile robot
KR102384102B1 (ko) 자율주행 로봇 및 자율주행 로봇의 주행 방법
WO2024111453A1 (en) Autonomous mapping by a mobile robot
Claes Decentralised Multi-Robot Systems: Towards Coordination in Real World Settings
CN115164903A (zh) 基于局部路径点生成的分层无地图导航方法及装置
de Barros Gomes LADAR Based Mapping and Obstacle Detection System for Service Robots

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