自主移动装置的路径规划

文档序号:1220240 发布日期:2020-09-04 浏览:8次 >En<

阅读说明:本技术 自主移动装置的路径规划 (Path planning for autonomous mobile devices ) 是由 洪相贤 卢建波 迪米塔尔·费尤伍 于 2018-01-24 设计创作,主要内容包括:本发明扩展到用于自主移动装置的路径规划的方法、系统和计算机程序产品。本发明的各方面包括规划路径以供移动机器人在包括其他静态和移动障碍物(诸如像其他移动装置和行人)的环境中自主移动,而无需参考所述环境的先前映射图。可以使用扩散映射图来确定、调整和适用移动机器人的规划路径以在朝向全局目的地前进时避免碰撞。路径规划可以包括使用网格点之间的转移概率来找到穿过所述环境的各部分的可行路径,以朝向所述全局目的地前进。在一方面,扩散映射图与滚动时域方法结合使用,包括以指定的时间间隔计算扩散映射图。(The present invention extends to methods, systems, and computer program products for path planning for autonomous mobile devices. Aspects of the invention include planning a path for a mobile robot to autonomously move in an environment that includes other static and moving obstacles, such as, for example, other mobile devices and pedestrians, without reference to a previous map of the environment. The diffusion map may be used to determine, adjust, and adapt the planned path of the mobile robot to avoid collisions when heading towards the global destination. Path planning may include using transition probabilities between grid points to find feasible paths through portions of the environment to proceed toward the global destination. In one aspect, the diffusion map is used in conjunction with a rolling time domain approach, including computing the diffusion map at specified time intervals.)

自主移动装置的路径规划

相关申请的交叉引用

不适用。

背景技术

1.技术领域

本发明总体上涉及自动化装置领域,并且更具体地,涉及自主移动装置的路径规划。

2.相关技术

移动机器人已经被开发用于包括运输、搜索和监视的广泛应用。为了帮助确保移动机器人以安全的方式行进,移动机器人可以使行进路径适用于变化的环境,诸如像具有新构建的建筑物的街道、其他移动的障碍物等。移动机器人可以存储操作区域的映射图,并且导航穿过操作区域的预定义导航路线或在它们认为合适时改变路线。

具体实施方式

本发明扩展到用于自主移动装置的路径规划的方法、系统和计算机程序产品。移动装置,尤其是移动机器人,已经被用于各种应用,包括物流机器人、家用机器人、自动化导引车和配送机器人。根据移动机器人的类型和配置,移动机器人可以运输商品或货物,作为由人类搬运工手动运输商品或货物的替代方式。移动机器人可以导航预定义的导航路线或在它们认为合适时改变路线。

使用操作区域的先前映射图,移动机器人的路径规划可以基于各种不同的算法。路径规划算法可以在固定图内找到最小成本路径。为了考虑环境的变化,可以从先前路径渐进地修复现有路径。一些路径规划算法快速找到次优路径,然后将次优路径细化为更加优化的路径。路径规划算法还可以使用通过强化学习生成的策略来基于规划路径与扩散映射图避免碰撞。

本发明的各方面包括规划路径以供移动机器人在包括其他移动对象(诸如像其他移动装置和行人)的环境中自主移动,而无需参考环境的先前映射图。可以确定、调整并适用移动机器人的规划路径以在朝向目的地前进时在动态环境中避免碰撞。

移动机器人可以使用扩散映射图在环境中从始发地到目的地行进。附接到移动机器人的传感器可以收集移动机器人周围区域(即,对于环境的一部分)的传感器数据。可以根据所收集的传感器数据来制定该区域的网格映射图。网格映射图可以包括多个网格点。可以为该区域确定网格映射图的基础几何形状(流形)。

路径规划可以包括使用网格点之间的转移概率来找到穿过区域以朝向目的地前进的可行路径。在一方面,扩散映射图与滚动时域方法结合使用,包括以指定的间隔计算扩散映射图。将扩散映射图与滚动时域方法一起使用基本上消除了对存储先前映射图的需要。

图1示出了计算装置100的示例性框图。计算装置100可以用于执行各种程序,诸如本文所讨论的那些程序。计算装置100可以用作服务器、客户端或任何其他计算实体。计算装置100可以执行如本文描述的各种通信和数据传输功能,并且可以执行一个或多个应用程序,诸如本文描述的应用程序。计算装置100可以是各种计算装置中的任何一种,诸如移动电话或其他移动装置、台式计算机、笔记本计算机、服务器计算机、手持计算机、平板计算机等。

计算装置100包括一个或多个处理器102、一个或多个存储器装置104、一个或多个接口106、一个或多个大容量存储装置108、一个或多个输入/输出(I/O)装置110和显示装置130,所有这些装置都耦合到总线112。一个或多个处理器102包括执行存储在一个或多个存储器装置104和/或一个或多个大容量存储装置108中的指令的一个或多个处理器或控制器。一个或多个处理器102还可以包括各种类型的计算机存储介质,诸如高速缓冲存储器。

一个或多个存储器装置104包括各种计算机存储介质,诸如易失性存储器(例如,随机存取存储器(RAM)114)和/或非易失性存储器(例如,只读存储器(ROM)116)。一个或多个存储器装置104还可以包括可重写ROM,诸如快闪存储器。

一个或多个大容量存储装置108包括各种计算机存储介质,诸如磁带、磁盘、光盘、固态存储器(例如,快闪存储器)等等。如图1中所描绘,特定的大容量存储装置是硬盘驱动器124。各种驱动器也可以包括在一个或多个大容量存储装置108中,以使得能够从各种计算机可读介质读取和/或写入到各种计算机可读介质。一个或多个大容量存储装置108包括可移动介质126和/或不可移动介质。

一个或多个I/O装置110包括允许将数据和/或其他信息输入到计算装置100或从计算装置100中检索数据和/或其他信息的各种装置。一个或多个示例性I/O装置110包括光标控制装置、键盘、小键盘、条形码扫描仪、传声器、监视器或其他显示装置、扬声器、打印机、网络接口卡、调制解调器、相机、镜头、雷达、CCD或其他图像捕获装置等。

显示装置130包括能够向计算装置100的一个或多个用户显示信息的任何类型的装置。显示装置130的示例包括监视器、显示终端、视频投影装置等。

一个或多个接口106包括允许计算装置100与其他系统、装置或计算环境以及人类交互的各种接口。一个或多个示例性接口106可以包括任何数量的不同网络接口120,诸如与个人局域网(PAN)、局域网(LAN)、广域网(WAN)、无线网络(例如,近场通信(NFC)、蓝牙、Wi-Fi等网络)和因特网的接口。其他接口包括用户接口118和***装置接口122。

总线112允许一个或多个处理器102、一个或多个存储器装置104、一个或多个接口106、一个或多个大容量存储装置108和一个或多个I/O装置110彼此进行通信,以及与耦合到总线112上的其他装置或部件进行通信。总线112表示几种类型的总线结构中的一种或多种,诸如系统总线、PCI总线、IEEE 1394总线、USB总线等等。

在本说明书和所附权利要求中,“扩散映射图”被定义为从更复杂的空间进行的降维或特征提取,其计算数据集到欧几里德空间(例如,较低维度或较不复杂)中的一族嵌入。可以根据数据上的扩散算子的本征向量和本征值来计算数据集的嵌入空间中的坐标。通常,嵌入空间中的点之间的欧几里德距离等于以这些点为中心的概率分布之间的“扩散距离”。确定嵌入空间可以包括发现已经从中采样数据的基础流形。通过集成不同比例下的局部相似性,扩散映射图可以给出数据集的全局描述。

在本说明书和所附权利要求中,“滚动时域控制”(或“模型预测控制”)被定义为用于(例如,以指定的时间间隔)重复地解决受约束优化问题的控制方案。滚动时域控制可以使用对移动时间范围上的未来成本、扰动和约束的预测来选择控制动作。滚动时域控制可以处理约束(诸如控制变量的限制),以生成前馈动作。

图2示出了有助于规划移动机器人的路径的示例性环境200。环境200包括移动机器人201以及对象221A、221B和221C。移动机器人201可以是移动自主陆基机器人并且可以包括关于计算装置100描述的部件中的任何部件。在一方面,移动机器人201大约为人的大小或更小。移动机器人201可以运载货物和/或乘客。对象221A、221B和221C中的每一个可以是固定或移动对象,诸如像行人、自行车、另一个移动机器人、车辆、标志、建筑物、树木、灌木丛、路障或其他类型的对象。移动机器人201可以在环境200内移动以在环境200中从始发地导航到目的地。环境200可以是和/或包括以下各项的互连部分:道路、十字路口、停车场、自行车道、小路、行人走道、步行道、人行横道、人行道、过道、走廊等。

在一方面,环境200包括一个或多个静态对象以及一个或多个移动对象(除了移动机器人201之外)。移动机器人201被配置为在一个或多个静态对象和一个或多个移动对象周围自适应地导航以从环境200中的始发地移动到环境200中的目的地。

如所描绘,移动机器人201包括传感器202、映射图创建器222、路径规划器223、数据捕获控制模块224、机器人控制系统252和运动部件254。传感器202、映射图创建器222、路径规划器223、数据捕获控制模块224、机器人控制系统252和运动部件254以及它们的相应部件中的每一者可以通过网络(或其一部分)彼此连接,所述网络诸如像PAN、LAN、WAN、控制器局域网(CAN)总线并甚至是互联网。因此,传感器202、映射图创建器222、路径规划器223、数据捕获控制模块224、机器人控制系统252和运动部件254以及任何其他连接的计算机系统及其部件中的每一者可以创建消息相关数据并通过网络交换消息相关数据(例如,近场通信(NFC)有效载荷、蓝牙分组、互联网协议(IP)数据报以及利用IP数据报的其他更高层协议,诸如传输控制协议(TCP)、超文本传送协议(HTTP)、简单邮件传输协议(SMTP)等)。

传感器202还包括相机203、激光雷达传感器204和雷达传感器206。相机203、激光雷达传感器204和雷达传感器206可以捕获环境200中的其他对象(例如,对象221A、221B和221C)的图像和/或感测环境200中的其他对象。传感器202可以捕获包括可见光谱和红外(IR)光谱在内的不同光谱部分中的图像。

传感器202可以被配置为在移动机器人201周围360度感测对象。传感器202可以被配置为面向不同方向,诸如像在行进方向上(例如,前面)、背离行进方向(例如,后面)以及基本上垂直于行进方向(例如,每一侧),以提供360度覆盖范围。在一些方面,传感器基于移动机器人201的移动而改变取向。例如,如果移动机器人201调转方向,则面向前面的传感器可以变成面向后面的传感器,反之亦然。如果移动机器人201转弯,则面向侧面的传感器可以变成面向前面或面向后面的传感器。传感器202的数量和配置可以基于各个传感器的感测范围和角度以及期望的导航精度(例如,在环境200内)。因此,传感器202可以通过感测环境200的一部分(例如,直到传感器202的传感器范围)来捕获环境200的该部分的传感器数据。

映射图创建器222被配置为根据对环境200的一部分所捕获的传感器数据创建环境200的该部分的扩散映射图。所创建的扩散映射图表示环境200(更复杂的空间)内的在移动机器人201周围的环境200(较不复杂的空间)的局部子集。

映射图创建器222可以基于所捕获的传感器数据、到障碍物(例如,对象221A、221B和221C)的距离和激光束的角度来构建局部网格映射图226。局部网格映射图226可以包括表示来自环境200的网格点的子集的多个局部网格点。然后,映射图创建器222可以创建对应于局部网格映射图点的扩散映射图。

路径规划器223被配置为确定多个局部网格点内的路径以朝向全局目的地前进。路径规划器223可以(例如,经由无线通信)从控制实体(诸如移动机器人201的所有者或操作者)接收全局路线。全局路线可以指示环境200中的全局始发地(例如,移动机器人201的起始位置)和环境200中的全局目的地。全局路线还可以识别环境200中的已知静态障碍物。路径规划器223可以使用对应于多个局部网格映射图点的扩散映射图和来自全局路线的信息来规划穿过多个局部网格映射图点的朝向全局目的地前进的路径。

在一方面,移动机器人201的当前位置(其可以是或可以不是起始位置)是用于创建扩散映射图的多个局部网格点内的网格点。路径规划器223识别距移动机器人201的当前位置具有最小扩散距离的另一个(邻近)网格点。然后,路径规划器223规划路径以供移动机器人201从当前位置行进到该另一个网格点。邻近网格点可以是多个局部网格点内的任何网格点。

一般来说,机器人控制系统252包括用于移动机器人201的完全自主移动的一组集成控制系统。例如,机器人控制系统252可以包括用于控制节气门242的节气门控制系统、用于控制车轮241的转向系统、用于控制制动器243的碰撞避免系统等。机器人控制系统252可以接收来自移动机器人201的其他部件(包括路径规划器223)的输入并向运动部件254发送自动化控制253以控制移动机器人201的移动。例如,运动部件254可以发送自动化控制253以使移动机器人201制动、减速、加速、转弯等。自动化控制可以使移动机器人201遵循穿过局部网格映射图的路径,以朝向全局目的地前进,同时避开其他感测到的对象。

数据捕获控制模块224被配置为控制传感器202何时捕获传感器数据。例如,数据捕获控制模块224可以指示传感器202根据采样时间216以指定的时间间隔捕获传感器数据。采样时间216的范围可以从几微秒到几秒。在一方面,采样时间216在10毫秒到1秒的范围内。可以定制采样时间216以用于高效且安全地行驶穿过环境200,而不会使移动机器人201的计算资源过载。这样,可以基于移动机器人201的计算资源、环境200中的障碍物的数量和密度、环境200中的动态障碍物的数量和密度、传感器202的配置和范围等来配置采样时间216。

在一方面,可以适当地改变采样时间216以调整用于不同环境中的导航。例如,可以(例如,经由无线通信)从控制实体(诸如移动机器人201的所有者或操作者)接收采样时间216。采样时间216可以包括在全局路线中。

图3示出了用于规划移动机器人的路径的示例性方法300的流程图。将关于移动机器人201的部件和数据来描述方法300。

方法300包括接收全局路线以在环境内从始发地行进到全局目的地(301)。例如,路径规划器223可以接收全局路线212。全局路线212可以识别从环境200内的始发地261(例如,机器人201的起始位置)到环境200内的全局目的地262(例如,移动机器人201的终点或结束位置)的全局路径。全局路线212还可以包括环境200中的一个或多个已知障碍物和/或采样时间216。

方法300包括从环境的一部分收集传感器数据(302)。例如,根据基于采样时间216的时间间隔,数据捕获控制模块224可以向传感器202发送捕获命令214。作为响应,传感器202可以捕获环境部分250的传感器数据208(例如,包括图像、激光雷达回波、雷达回波等)。传感器202可以检测环境部分250内的对象221A、221B和221C。传感器数据208可以指示检测到对象221A、221B和221C。

方法300包括根据传感器数据为环境的该部分创建扩散映射图,该扩散映射图基于多个网格点并指示该环境的该部分内的至少一个其他对象,该扩散映射图定义在包括将至少一个其他对象考虑在内的多个网格点中的网格点之间的转移概率(303)。例如,映射图创建器222可以根据传感器数据208创建环境部分250的扩散映射图209。映射图创建器222可以基于传感器数据208来制定环境部分250的局部网格映射图226。局部网格映射图226可以包括多个网格点,并且可以指示对象221A、221B和221C在多个网格点内的位置。映射图创建器222可以从局部网格映射图226创建扩散映射图209。扩散映射图209表示扩散距离并且在考虑对象221A、221B和221C的位置的情况下定义局部网格映射图226中的网格点之间的转移概率263。

方法300包括基于转移概率来确定从移动机器人在环境的一部分中的当前位置朝向全局目的地前进的路径(304)。例如,路径规划器223可以制定路径217以基于转移概率263从移动机器人201在环境部分250中的当前位置朝向全局目的地262前进。

方法300包括沿着路径在指定时间量内向局部目的地移动移动装置(305)。例如,机器人控制系统252可以基于路径217向运动部件254发送控制253。控制253可以使运动部件254将移动机器人201沿着路径217移动,从而朝向全局目的地262前进。沿着路径217的移动可以使移动机器人201偏离全局路线212。

在根据采样时间216的下一个间隔时,可以重复动作302、303、304和305。例如,数据捕获控制模块224可以再次向传感器202发送捕获命令214(在移动机器人201已经沿着路径217移动了一定时间量之后)。可以针对环境200的不同部分捕获附加的传感器数据。映射图创建器222可以使用附加的传感器数据来创建新的局部网格映射图和具有新的转移概率的对应的新扩散映射图。路径规划器223可以使用新的扩散映射图和新的转移概率来规划从(在沿着路径217移动一定时间量之后到达的)移动机器人201的当前位置开始的新路径以额外朝向全局目的地262前进。

在时间间隔之间,移动机器人201以及其他动态对象的移动可能导致障碍物进出传感器202的范围。在每个间隔处,所捕获的传感器数据可以用于为移动机器人201规划新的路径,以朝向全局目的地262前进,同时避开环境200的局部感测部分中的障碍物。穿过环境200的不同的局部感测部分的路径可能导致移动机器人201偏离全局路线212。

因此,本发明的各方面可以规划路径以避免动态环境的部分中的碰撞,同时尝试朝向动态环境中的(例如,全局)目的地前进。为了规划避免碰撞的路径,可以确定网格映射图的基础几何形状。扩散映射图可以用于基于网格点之间的转移概率来进行路径规划,以找到穿过环境的(例如,局部感测)部分的可行路径。扩散映射图可以用滚动时域方法进行补充,包括以指定时间间隔创建扩散映射图。使用滚动时域,移动机器人可以在不参考全局映射图的情况下从起始位置导航到全局目的地。

图4示出了用于基于扩散映射图的碰撞避免的示例性数据流400。数据流400中描绘的部件可以包括在移动机器人中并且用于将移动机器人朝向环境内的全局目的地移动。图5示出了网格映射图500的示例性放大部分,包括起始504、当前位置502、目标点501和全局路线511。包括数据流400的部件的移动机器人可以位于当前位置502处。

移动机器人可以接收包括到环境内的目的地的预先规划的路线(例如,全局路线)的路线401。可以基于对起始位置(例如,起始504)和环境中的全局目的地的了解来创建路线401。然而,路线401的创建者(例如,移动机器人的所有者或操作者)可能不知道环境中的一些或全部静态对象。此外,路线401的创建者可能无法规划进入和/或离开环境的动态对象。

这样,当移动机器人朝向全局目的地移动时,传感器402可以用于感测在移动机器人周围的感知区域523。通常,路径规划器403可以确定感知区域523中的网格点,该网格点具有到全局路线511的最小距离和距当前位置502的最远距离。如所描绘,路径规划器403包括网格和目标404、扩散映射图406和路径查找器407。

网格和目标404可以使用传感器信号来创建局部网格映射图并确定局部目标点。通常,感知区域523表示移动机器人周围区域的局部网格映射图(例如,类似于局部网格映射图226)。在感知区域523内,局部路径503指示从当前位置502到目标点501。映射图500的放大部分还指示全局路线511。

通常,在网格映射图500内,静态障碍物521和522可以是全局路线511的创建者已知的。在局部网格映射图500的放大部分内,可以根据感测到的数据(包括到障碍物的距离、角度或激光束等)检测到附加的(静态和/或动态)障碍物。例如,传感器402可以感测附加的障碍物,包括障碍物524。

为了生成局部路径503,扩散映射图406可以确定感知区域523中的网格点的几何形状或基础流形(即,局部网格图)。扩散映射图406可以计算对应于感知区域523中的网格映射图点的扩散映射图。为了创建扩散映射图,可以使用扩散过程。也就是说,每个映射图网格点都被视为状态,并且网格点之间的转移概率被定义。可以基于提供局部类似测量的扩散核来计算转移概率。

转到图6A至图6J,扩散映射图406可以实施方程式601至610以计算扩散映射图(例如,用于感知区域523中的网格映射图点)。图6A描绘了示例性高斯扩散核的方程式601,其中mi和mj是分别表示第i个和第j个网格点的位置向量,并且σ是方差参数。然后,可以将核矩阵K定义为如图6B中的方程式602所示,其中n表示映射图网格点的数量。可以使用图6C中的方程式603来计算从mi到mj的转移概率pij

基于转移概率,可以构建大小为n x n的扩散矩阵P。将对角元素为的对角矩阵表示为D-1,根据图6D中的方程式604表示扩散矩阵。当扩散过程向前运行t步时,给出t阶扩散矩阵,如图6E中的方程式605所示。因此,元素pt ij表示在t阶转移之后从mi到mj的可达成路径的概率之和。在mi和mj之间的扩散距离可以用由图6F中的方程式606表示的t阶扩散矩阵来定义。

当pt ik和pt jk大致相等时,例如,当mi和mj经由mk良好地连接时,扩散距离变小。因此,扩散距离暗示沿着映射图网格点的基础几何形状(或流形)测量的距离。可以通过将n维空间变换为r(<n)维空间(即,扩散空间)的降维来近似扩散距离。在定义了对称矩阵P'=D1 /2PD-1/2=D-1/2KD-1/2的情况下,存在P'的标准正交的本征向量,其展示图6G中的方程式607的性质,其中相应地,S表示正交本征向量矩阵并且Λ=diag({λk}k=1..n)表示本征值矩阵。然后,可以通过图6H中的方程式608表示扩散矩阵P,其中V=D-1/2S是P的右本征向量矩阵,并且V-1=STD1/2是P的左本征向量矩阵。

通过在λ1>...>λr>...>λn中选择r个主导本征值,将矩阵H定义为如图6I中的方程式609所示,其中Λr=diag({λk}k=1..r)具有主导的r个本征值,并且Vr仅包含V的前r个列向量。H的行空间表示扩散映射图。扩散距离等于r维空间中的欧几里德距离,如图6J中的方程式610所示,其中rowi(H)和rowj(H)表示H的第i行向量和第j行向量。

因此,在路径规划中,扩散映射图406可以找到映射图网格点mj,其在扩散距离方面最接近mi(即,在方程式610中的递归地直到到达目标点为止的最小dt ij)。因此,扩散映射图406可以产生方程式609中的扩散映射图矩阵H,其行空间具有r的降维。方程式610中H的行空间中的欧几里德距离基本上等于方程式606中的扩散距离,从而指示映射图网格点之间的基础几何连通性。因此,为了规划路径,扩散映射图406可以相对于全局路线511的下一个子部分中的当前网格点找到方程式610的值最小的网格点。

这可能是因为方程式609中的扩散映射图矩阵H的第g行对应于目标点501并且第s行对应于当前位置502。网格点的邻域可以被定义为在以该网格点为中心的半径为R的圆内(或在感知区域523中)的其他可感知网格点。由于障碍物,可能无法感知到整圆的邻近网格点。例如,当传感器402是在当前位置502处使用时,静态障碍物521和障碍物524阻挡感知一些网格点。

从邻近网格点(即,感知区域523中的网格点),路径查找器407可以基于方程式610计算到目标点501的扩散距离。路径查找器407可以使用对应于邻近网格点的H的行向量和对应于目标点的H的第g行向量。在邻近网格点中,选择具有最小扩散距离的网格点作为下一个网格点。移动408然后可以将移动机器人朝向目标点501移动。如果目标点501是全局目的地(是),则过程停止409。如果目标点501不是全局目的地(否),则过程从网格和目标404重复。

可以在指定的时间重复该过程。例如,一旦移动机器人到达目标点,或者在移动机器人已经朝向目标点移动了指定间隔之后,就可以重复该过程。可以重复该过程,直到到达全局目的地为止。

在一方面,一旦规划了局部路径503,移动408就可以沿着局部路径503在采样时间单位T内移动移动机器人。航向向量可以用所规划的局部路径的第一和第二网格点来计算,并且移动机器人在航向方向上以V的速度移动达时间T。在航向方向上移动距离V*T之后,针对来自网格和目标404的新位置重复该过程。因此,局部路径503可以被视为移动机器人将要从当前位置开始遵循的用于滚动时域的预测路径。局部路径503避免与障碍物碰撞,因为所构建的网格映射图已经排除了被障碍物占据的区域。

图7示出了用于找到从起始点到局部目标点的局部路径的示例性算法700。

图8A至图8C示出了穿过网格映射图500将移动机器人从起始504移动到全局目的地803的示例。最初,例如在路径规划器223、路径规划器403或另一个类似的模块处接收全局路线511。图8A描绘了穿过网格映射图500的全局路线511。全局路线511本质上是基于路线创建者(例如,移动机器人的所有者或操作者)的(可能不完整的)知识从起始504行进到全局目的地803的建议路线。当移动机器人朝向全局目的地803前进时,由机器人传感器感测到的感知区域823可以类似地移动(其中感知区域523是示例)。在每个感知区域823内,可以感测到静态和/或动态障碍物。在一方面,感知区域823被配置为大约10米(例如,R=10米)。

在每个感知区域823内,算法700可以实施方程式601至610以确定局部目标点并规划局部路径。在一方面,在扩散映射图的计算中,少于全部(例如,一半)的总网格点用于转移步骤。例如,方程式605中的t=n/2。在另一方面,维度降低到例如原始维度的10%。也就是说,在方程式609中,r=0.1n。在其他方面,使用小于机器人传感器的完整感知范围的半径来确定邻近网格点。例如,传感器可以具有10米的感知范围,但是2米的半径用于检测邻近网格点。

在图8A内,白色区域是已知的静态障碍物(包括先前标记的静态障碍物521和522)。当移动机器人在网格映射图500中移动时,移动机器人可以感测其他静态和/或动态障碍物。如由较暗的网格点所表示的,图8B描绘了在网格映射图500中的可以在移动机器人朝向全局目的地803前进时感测到的附加障碍物。移动机器人可以感测在感知范围内的附加障碍物823。移动机器人可能未感测到其他障碍物。

可以向感测到的障碍物分配估计的半径。可以为动态障碍物分配估计的速度。例如,可以为步行的行人分配2-5米的半径和0.5-2米/秒的速度。尽管动态障碍物可以在随机方向上移动,但是可以根据环境定制障碍物的半径和速度以及采样时间以有助于碰撞避免。

由于避障,移动机器人在从起始504移动到全局目的地803时可能会偏离全局路线511。避开静态和/或动态障碍物可能会导致偏差。图8C描绘了移动机器人的相对于全局路线511的实际路线811。因此,移动机器人可以行进一系列局部路径以朝向全局目的地不断前进,同时避免与环境中的静态和动态障碍物碰撞。

在一方面,一个或多个处理器被配置为执行指令(例如,计算机可读指令、计算机可执行指令等)以执行多个所描述的操作中的任何操作。一个或多个处理器可以从系统存储器访问信息和/或在系统存储器中存储信息。一个或多个处理器可以在不同格式之间变换信息,诸如像传感器数据、扩散映射图、转移概率、全局路线、路径、捕获命令、机器人控制命令、采样时间等。

系统存储器可以耦合到一个或多个处理器并且可以存储由所述一个或多个处理器执行的指令(例如,计算机可读指令、计算机可执行指令等)。系统存储器还可以被配置为存储由所描述的部件生成的多种其他类型的数据中的任何一种,诸如像传感器数据、扩散映射图、转移概率、全局路线、路径、捕获命令、机器人控制命令、采样时间等。

在以上公开内容中,参考附图,所述附图形成本公开的一部分并且其中通过以说明方式示出可以实践本公开的具体实现方式。应理解,在不脱离本公开的范围的情况下,可以利用其他实现方式并且可以做出结构改变。在说明书中对“一个实施例”、“一实施例”、“一个示例实施例”等的参考表示所描述的实施例可以包括特定特征、结构或特性,但每个实施例可能不一定包括所述特定特征、结构或特性。此外,这样的短语不一定指相同的实施例。此外,当结合一个实施例描述特定特征、结构或特性时,无论是否进行明确描述,认为结合其他实施例来实现这种特征、结构或特性仍在本领域的技术人员的知识范围内。

本文公开的系统、装置和方法的实施方式可以包括或利用专用或通用计算机,包括计算机硬件,诸如,例如一个或多个处理器和系统存储器,如本文所讨论的。本公开范围内的实施方式还可以包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这种计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是计算机存储介质(装置)。承载计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本公开的实施方式可以包括至少两种截然不同的计算机可读介质:计算机存储介质(装置)和传输介质。

计算机存储介质(装置)包括:RAM、ROM、EEPROM、CD-ROM、固态驱动器(“SSD”)(例如,基于RAM)、快闪存储器、相变存储器(“PCM”)、其他类型的存储器、其他光盘存储装置、磁盘存储装置或其他磁性存储装置、或者可用于存储以计算机可执行指令或数据结构的形式的期望程序代码手段并且可由通用或专用计算机访问的任何其他介质。

本文公开的装置、系统和方法的实现方式可以通过计算机网络进行通信。“网络”被定义为能够在计算机系统和/或模块和/或其他电子装置之间传输电子数据的一个或多个数据链路。当通过网络或另一通信连接(硬连线、无线、或硬连线或无线的组合)向计算机传递或提供信息时,计算机将连接恰当地视为传输介质。传输介质可以包括网络和/或数据链路,所述网络和/或数据链路可以用于以计算机可执行指令或数据结构的形式承载期望的程序代码手段并且可以由通用或专用计算机访问。以上组合也应当包括在计算机可读介质的范围内。

计算机可执行指令包括例如在处理器中执行时使通用计算机、专用计算机或专用处理装置执行某个功能或功能组的指令和数据。计算机可执行指令可以是例如二进制文件、中间格式指令(诸如汇编语言)或甚至源代码。尽管已经用特定于结构特征和/或方法动作的语言描述了本主题,但是应当理解,在所附权利要求中定义的主题不必限于已描述的上述特征或动作。相反,所述特征和动作被公开作为实施权利要求的示例性形式。

所属领域技术人员应明白,本公开可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括内置式或其他车辆计算机、个人计算机、台式计算机、膝上型计算机、消息处理器、手持装置、多处理器系统、基于微处理器的或可编程的消费电子产品、网络PC、小型计算机、大型计算机、移动电话、PDA、平板计算机、寻呼机、路由器、交换机、各种存储装置等。本公开还可以在分布式系统环境中实践,其中通过网络链接(通过硬接线数据链路、无线数据链路或通过硬接线与无线数据链路的组合)的局部和远程计算机系统都执行任务。在分布式计算环境中,程序模块可以位于局部存储器存储装置和远程存储器存储装置两者中。

此外,在适当的情况下,本文描述的功能可以在以下中的一个或多个中执行:硬件、软件、固件、数字部件或模拟部件。例如,可以编程一个或多个专用集成电路(ASIC)以进行本文所述的系统和程序中的一个或多个。在整个说明书和权利要求中使用某些术语来指代特定的系统部件。如本领域的技术人员将理解的,可以用不同的名称指代部件。本文献并不意图区分名称不同但功能相同的部件。

应当注意,以上所讨论的传感器实施例可以包括计算机硬件、软件、固件或它们的任何组合以执行它们的功能的至少一部分。例如,传感器可以包括被配置为在一个或多个处理器中执行的计算机代码,并且可以包括由计算机代码控制的硬件逻辑/电路。这些示例性装置在本文出于说明目的而提供,而不意图进行限制。本公开的实施例可以在如一种或多种相关领域技术人员已知的其他类型的装置中实施。

本公开的至少一些实施例涉及计算机程序产品,所述计算机程序产品包括存储在任何计算机可用介质上的这种逻辑(例如,以软件形式)。这种软件在一种或多种数据处理装置中执行时使装置如本文所描述进行操作。

尽管上文已描述了本公开的各种实施例,但是应理解,仅通过举例的方式而非限制的方式提出本公开的各种实施例。相关领域的技术人员应明白,在不脱离本公开的精神和范围的情况下,可以作出形式和细节方面的各种改变。因此,本公开的广度和范围不应受任何上述示例性实施例的限制,而是应仅根据所附权利要求及其等效物来限定。已经出于说明和描述目的呈现了前述描述。它不是穷举的或不将本公开限制为所公开的精确形式。根据上述教导,许多修改、变型和组合是可能的。此外,应注意,任何或所有前述可选的实现方式可以以期望的任何组合使用以形成本公开的附加混合实现方式。

25页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:数控加工方法及系统、具有存储功能的装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类