掌桥专利:专业的专利平台
掌桥专利
首页

用于障碍物规避的确定性机器人路径规划

文献发布时间:2023-06-19 11:22:42


用于障碍物规避的确定性机器人路径规划

背景技术

发明领域

本公开涉及用于障碍物规避的机器人路径规划的系统和方法。具体而言,本公开涉及通过确定性方法来规划机器人臂移动以规避障碍物。

相关技术说明

用于机器人的现有路径规划方法可被分类成两种类型:非确定性方法和确定性方法。诸如快速拓展随机树(RRT)算法之类的非确定性方法随机探索机器人的下一个移动且偏向未搜索的大区域。如果重新规划第二次,则所得移动可能由于搜索的随机性质而不同。诸如A*算法之类的确定性方法最小化成本函数以产生固定的路径。本教导属于确定性类别。

为了规避障碍物,现有路径规划方法可能需要指定安全距离。安全距离是机器人可能需要维持离障碍物的最短距离。障碍物可被首先建模。然后该模型形状可被扩大指定距离。被经增大或扩大的障碍物占用的区域可被标记为机器人不应移至的区域。由于要求经扩大区域是凸的,因此实际增大距离可以比最短安全距离大得多,从而导致障碍物过大且离障碍物表面的安全余量不均匀。这可将由任何算法规划的路径限于是次优的。

因此,具有无需扩大障碍物并由此避免使用过大障碍物距离的障碍物规避路径规划方法是高度合乎需要的。

附图说明

根据示例性实施例进一步描述本文描述的本公开的各方面。这些示例性实施例将参考附图详述。这些实施例是非限制性的示例性实施例,其中贯穿附图的若干个视图,相同的附图标记表示相似的结构,并且其中:

图1示出了用于机器人路径规划的示例性系统图;

图2示出了用于路径规划的示例性流程图;

图3示出了用于路径规划的权重学习的示例性流程图;以及

图4描绘了可以被用于实现结合本教导的专用系统的计算机的架构。

具体实施方式

本公开涉及用于在规避障碍物的同时进行机器人路径规划的方法和系统。具体而言,本公开涉及具有多个关节的机器人臂移动。

图1示出了根据本教导的实施例的促进机器人路径规划的示例性系统图100。系统100包括目标跟踪单元104、反向运动学计算单元108、机器人位置跟踪单元110、障碍物检测器109、障碍物距离计算单元112、权重学习单元114以及路径优化单元116。

目标对象102可以是患者、装配部件或机器人可能需要到达以执行特定操作(诸如相对于患者放置针头、抓持装配线中的工业部件等)的任何其它主体。通过一个实施例,机器人可包括臂,该臂包括多个关节。例如,典型的机器人可具有具备6或7个关节的臂,这意味着该机器人可具有6或7个移动自由度(DOF)。机器人的末端执行器(即,连接在机器人的臂的末端处的设备或工具)相对于目标对象的期望的相对位置和定向可被预定义。使用术语目标位置来表示期望的绝对机器人的末端执行器的位置和定向。如果目标对象是静态的,则机器人的目标位置是固定的。如果目标对象处在运动中,则目标跟踪单元104可感测目标对象的运动并提供对目标位置的更新。该感测方法可由多个传感器执行,并且可包括但不限于诸如基于相机的视觉跟踪、基于光学传感器的跟踪、基于磁传感器的跟踪之类的方法。跟踪单元104的输出106是第一坐标系(例如,笛卡儿坐标系)中的目标位置。由于机器人被命令在关节角空间(即,第二坐标系)中移动,因此笛卡尔目标位置可通过反向运动学计算单元108来转换成关节角目标位置。机器人位置跟踪单元110可提供末端执行器的起始位置处的机器人关节角。使用术语初始位置来表示机器人的起始配置。必须理解的是,机器人的身体(即,臂)和末端执行器可被建模为单个实体或替代地被建模为分开的实体。在机器人移动期间,机器人位置跟踪单元110可以持续地提供机器人的当前关节角度,例如末端执行器的当前配置。这在障碍物处于运动中或者目标处于运动中的情况下对于路径重新规划可以是有用的。障碍物距离计算单元112可计算机器人的臂(包括末端执行器)与各自由障碍物检测器109标识的一个或多个障碍物之间的最短距离。障碍物可以是外科医生、患者身体部位、或手术室中的另一医疗设备。权重学习单元114可学习加权参数(此处也被称为加权因子)以用于路径规划。路径优化单元116可查找机器人初始位置与目标位置之间的最优路径。路径优化单元的输出是运动轨迹118,该运动轨迹118指定用于到达目标位置的机器人运动序列。

图2示出了根据本教导的一个实施例的用于机器人路径规划的示例性流程图。在步骤202,可跟踪目标对象。在步骤203,可基于跟踪来获取末端执行器在第一坐标系(例如,笛卡尔坐标系)中的经更新的目标位置。

在步骤204,可基于机器人反向运动学来将笛卡尔目标位置转换成第二坐标系(例如,关节角坐标系)中的目标位置。在步骤206,可获取机器人在起始位置处的初始姿态(即,末端执行器的定向和位置)。在步骤207,可标识至少一个障碍物。在步骤208,可基于障碍物的性质和应用来确定相对于该至少一个所标识的障碍物所准许的最短距离。在步骤210,可使用所准许的最短距离来学习加权参数。在步骤212,可基于沿轨迹的关节角度和加权障碍物距离来生成成本函数。在步骤214,可查找最小化该成本函数的轨迹。

成本函数和最小化的细节在下文中描述。假设轨迹包括N个步骤:步骤1、步骤2……步骤N。在任一中间步骤n处,从起始位置到第n个位置的成本可由g(n)来表示。成本g(n)可被定义为初始位置处的关节角度(即,末端执行器的配置)与第n个步骤处的关节角度之间的欧几里得距离。提供对从第n个步骤到最终步骤(N)的成本的估计的另一成本可由h(n)表示。成本h(n)可被定义为第n个步骤处的关节角度与步骤N处的关节角度(目标位置)之间的欧几里得距离。由c(n)来表示在步骤n处机器人臂(包括末端执行器)与所有障碍物的最短距离,即最小距离。在第n个步骤的总成本函数f(n)可采取以下形式:

f(n)=g(n)+h(n)-ω*c(n) (1)

其中ω是大于零的常数加权因子。权重ω在关节角度成本与障碍物距离成本之间达成平衡。该加权因子可通过以下针对步骤210描述的规程来学习。成本函数f(n)的最小化可使用诸如A*算法之类的现有方法来执行。在A*算法中,机器人关节角空间可被离散化为特定分辨率。对最优路径的搜索可以在离散化的关节角空间中执行。最小化的输出是从初始位置到目标位置的机器人运动步骤序列。

必须理解的是,由于目标对象可被跟踪,因此如果机器人已经发起到目标的移动并且发现目标处于运动中,则可即时重启路径规划以查找到新目标位置的新路径。由于关节角空间的离散化,因此从任何离散点到障碍物的最短距离可被预先计算,并且在步骤n的最短障碍物距离c(n)可通过查找表来获取,而不必进行在线计算。

图3示出了根据本教导的一个实施例的图2的步骤210的权重学习的示例性流程图。在步骤302,可指定学习步骤数M,也被称为迭代次数。该数可凭经验选择。换言之,在步骤302中,确定权重学习过程的结束条件,即迭代次数。在步骤304,可获取到一个或多个障碍物的所允许的最短距离d

ω

其中s是凭经验选择的正缩放因子。在更新权重后,可执行路径重规划。更新规程的直观解释是如果e为正,意味着实际最短距离小于所允许最短距离,则权重可能需要递增以将路径拉离障碍物。否则如果e为负,则权重可递减以将路径推近障碍物。在步骤320,如果确定权重满足准则,即,加权因子已经接近零(即,在预定量内基本上接近零)或等于零,则可由于权重必须大于零而不做出对权重的进一步更新。在步骤322可记录所得权重。在步骤324,可检查是否已达到所指定的最大迭代次数M。如果否,则新迭代可跟进。可重复起始于步骤306的各步骤。否则,在步骤326,可计算在步骤322记录的所有权重的加权和以用作学习过程所学习到的最终权重。

在步骤326,可将权重的加权和计算为简单算术均值。该加权和还可根据随机生成的目标位置的出现概率来计算。此类概率可用于通过以下形式来对在步骤322记录的加权因子进行加权:

图4是根据本教导的各个实施例的示例性计算机系统架构的说明性图示。结合本教导的此类专用系统具有包括用户接口元件的硬件平台的功能框图图示。计算机400可以是通用计算机或专用计算机。两者可以被用于实现用于本教导的专用系统。计算机400可用于实现本文描述的任何(多个)组件。例如,可以在诸如计算机400之类的计算机上经由该计算机的硬件、软件程序、固件、或其组合来实现本教导。尽管为了方便起见仅示出了一个此类计算机,但本文描述的与本教导相关的计算机功能可以按分布式方式在数个类似平台上实现,以分布处理负载。

计算机400例如可包括通信端口450,该通信端口450被连接到和来自与之相连接的网络以促进数据通信。计算机400还包括用于执行程序指令的以一个或多个处理器形式的中央处理单元(CPU)420。示例性计算机平台还可包括内部通信总线410、不同形式的程序存储和数据存储(例如,盘470、只读存储器(ROM)430、或随机存取存储器(RAM)440),用于要由计算机400处理和/或传达的各种数据文件以及可能的要由CPU 420执行的程序指令。计算机400还可包括I/O组件460,该I/O组件460支持计算机与计算机中的其他组件(诸如用户接口元件1480)之间的输入/输出流。计算机400还可经由网络通信来接收编程和数据。

因此,如上所概述的本教导的各方面可以在编程中被体现。技术的程序方面可被认为是通常以在某类机器可读介质上执行或具体化在某类机器可读介质中的可执行代码和/或相关联数据的形式的“产品”或“制品”。有形非瞬态“存储”类型介质包括可提供在任何时间用于软件编程的存储的存储器或用于计算机、处理器或类似物的其它存储、或其相关联的模块(诸如各种半导体存储器、磁带驱动器、磁盘驱动器等)中的任何或所有。

软件的所有或部分有时可通过网络(诸如因特网或各种其它电信网络)来传达。此类通信例如可使得能够将软件从一个计算机或处理器加载到另一个计算机或处理器中,例如,从机器人运动规划系统的服务器或主机计算机加载到计算环境或实现计算环境或与路径规划有关的类似功能性的其他系统的(多个)硬件平台中。因此,可承载软件元件的另一种类型的介质包括光波、电波和电磁波,诸如跨本地设备之间的物理接口、通过有线和光学地线网络、并且通过各种空中链路来使用。携载此类波的物理元件(诸如有线或无线链路、光学链路或类似物等)也可以被认为是承载软件的介质。如本文所使用的,除非被限制成有形“存储”介质,否则诸如计算机或机器“可读介质”之类的术语指的是参与向处理器提供指令以供执行的任何介质。

因此,机器可读介质可以采取许多形式,包括但不限于有形存储介质、载波介质、或物理传输介质。非易失性存储介质包括例如可用于实现如附图中所示的系统或该系统的组件中的任一组件的光盘或磁盘,诸如在任何(多个)计算机中的存储设备或类似物中的任一个。易失性存储介质包括动态存储器,诸如此类计算机平台的主存储器。有形传输介质包括同轴电缆;铜线和光纤,其包括在计算机系统内形成总线的线。载波传输介质可采取电信号或电磁信号、或声波或光波(诸如在射频(RF)和红外(IR)数据通信期间生成的那些)的形式。因此,计算机可读介质的常见形式包括例如:软盘、柔性盘、硬盘、磁带、任何其他磁介质、CD-ROM、DVD或DVD-ROM、任何其他光学介质、穿孔卡片纸带、具有孔图案的任何其他物理存储介质、RAM、PROM和EPROM、FLASH-EPROM、任何其他存储器芯片或卡带盒、传输数据或指令的载波、传输此类载波的电缆或链路、或者计算机可从中读取编程代码和/或数据的任何其他介质。在将一条或多条指令的一个或多个序列携载至物理处理器以供执行时可以涉及这些形式的计算机可读介质中的许多。

本领域技术人员将认识到,本文的教导顺应于各种修改和/或增强。例如,尽管上面描述的各种组件的实现可被具体化在硬件设备中,但是它也可被实现为仅软件解决方案—例如,安装在现有服务器上。另外,如本文中所公开的机器人运动规划系统可被实现为固件、固件/软件组合、固件/硬件组合、或硬件/固件/软件组合。

尽管前文已经描述了被认为构成本教导和/或其它示例的内容,但是应该理解,可以对其做出各种修改,并且本文公开的主题可以以各种形式和示例来实施,并且教导可以应用于许多应用中,仅其中的一些在本文中被已经描述。所附权利要求旨在要求保护落入本教导的真实范围内的任何和所有应用、修改和变型。

相关技术
  • 用于障碍物规避的确定性机器人路径规划
  • 用于具有障碍物规避的机器人路径规划的快速方法
技术分类

06120112902211