Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020114233 - METHOD AND SYSTEM FOR PREVENTING COLLISION BETWEEN MECHANICAL ARMS, AND MEDICAL ROBOT

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154   0155   0156   0157   0158   0159  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22  

附图

1   2   3   4   5   6   7   8   9   10   11   12  

说明书

发明名称 : 机械臂防碰撞的方法及系统、医疗机器人

[0001]
援引加入
[0002]
本申请要求于2018年12月04日提交中国专利局、申请号为201811472969.3、发明名称为“机械臂防碰撞的方法及系统、医疗机器人”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。

技术领域

[0003]
本申请涉及医疗机器人技术领域,特别是涉及一种机械臂防碰撞的方法及系统、医疗机器人。

背景技术

[0004]
目前,医疗机器人在进行具体的操作过程中,一般需要控制多个机械臂进行相互协作。但在机械臂运动的过程中,机械臂之间很容易发生干涉、碰撞等缺陷。
[0005]
例如,遥操作医疗机器人在进行检测及手术等相关操作的过程中,一般通过操控两个以上的机械臂(如工具臂)协同工作,使得各自所承载的医疗器械移动至预期的位置处,进而对病灶进行检测或手术等操作。但在机械臂运动的过程中,由于机械臂之间的间距较小,相互之间很容易发生干涉、碰撞风险,进而会影响上述的检测及手术等操作,严重时甚至会导致医疗事故。
[0006]
发明内容
[0007]
本申请公开的各种示例性实施例提供一种机械臂碰撞检测的方法及系统、医疗机器人。
[0008]
在一个可选的实施例中,本申请提供了一种机械臂防碰撞的方法,应用于医疗机器人上,所述医疗机器人包括至少两条机械臂,所述机械臂包括机械臂本体,所述机械臂本体包括多个关节,所述方法包括:
[0009]
在每条所述机械臂上设置多个离散点;
[0010]
获取每个所述离散点在全局坐标下的第一坐标信息;
[0011]
根据所述第一坐标信息获得位于不同机械臂上的两个离散点之间的第一相对距离;
[0012]
根据所述第一相对距离以及所述第一相对距离与所述第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上每个离散点所对应的第一相互作用力;以及
[0013]
根据每个离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力,获得每个所述机械臂的笛卡尔作用力,并使所述笛卡尔作用力被操作者感知。
[0014]
在上述机械臂防碰撞的方法的实施例中,通过在机械臂上设置离散点,并根据所计算得到的位于不同机械臂上离散点之间的距离,获取每个离散点所受到的相互作用力,以得到每个离散点对应的相互作用力的合力,进而得到每条机械臂的笛卡尔作用力,并使得操作者实时感知该笛卡尔作用力,从而能够有效避免机械臂之间发生干涉、碰撞等缺陷。
[0015]
在一个可选的实施例中,至少部分所述机械臂还包括挂载于所述机械臂本体末端的医疗器械,所述在每条所述机械臂上设置多个离散点的步骤,包括:在所述医疗器械和/或所述机械臂本体上设置所述离散点。
[0016]
在一个可选的实施例中,所述在每条所述机械臂上设置多个离散点的步骤,包括:
[0017]
获取所述离散点与对应的关节的第一相对位置信息。
[0018]
在一个可选的实施例中,所述机械臂还包括位置传感器,所述位置传感器用于获取关节位置信息,所述获取每个所述离散点在全局坐标下的第一坐标信息的步骤,包括:
[0019]
通过所述位置传感器获取所述关节的关节位置信息,并根据所述关节位置信息以及运动学模型获得每个所述关节在所述全局坐标系下的第二坐标信息;以及
[0020]
根据所述第二坐标信息和所述第一相对位置信息,获得所述离散点在所述全局坐标系下的所述第一坐标信息。
[0021]
在一个可选的实施例中,根据所述第一相对距离以及所述第一相对距离与所述第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上每个离散点所对应的第一相互作用力的步骤,包括:
[0022]
在所述第一相对距离的取值范围内设置多个距离区间,其中所述距离区间中的至少一个所对应的所述对应关系与其他距离区间对应的对应关系不相同;以及
[0023]
根据所述离散点之间的所述第一相对距离,以及所述第一相对距离所在的距离区间所对应的所述对应关系,获得每个离散点与其他机械臂上每个离散点所对应的第一相互作用力。
[0024]
在一个可选的实施例中,所述多个距离区间包括第一距离区间(0,L min+R m+R n],第二距离区间(L min+R m+R n,L max+R m+R n)和第三距离区间[L max+R m+R n,+∞);以及
[0025]
在所述第一距离区间(0,L min+R m+R n]范围内,所述第一相互作用力F为预设的最大相互作用力F max;在所述第二距离区间(L min+R m+R n,L max+R m+R n)范围内,所述第一相互作用力与所述第一相对距离之间的关系为一函数,其中所述函数为在所述第二距离区间范围内连续的函数,且所述函数的一阶导数小于零,二阶导数大于零;在所述第三距离区间[L max+R m+R n,+∞)范围内,所述第一相互作用力F为零;
[0026]
其中,离散点m、n为位于不同机械臂上的两个所述离散点,R m为所述离散点m所在机械臂在离散点m处的横向截面最大半径,R n为离散点n所在机械臂在离散点n处的横向截面最大半径,L max为所述第一相对距离的预设的碰撞警示距离,而L min为所述第一相对距离的预设的最小安全距离。
[0027]
在一个可选的实施例中,所述函数为:
[0028]
[0029]
其中,k为距离-作用力增益系数,L为所述第一相对距离,而L′为L对时间的导数。
[0030]
在一个可选的实施例中,所述在每条所述机械臂上设置多个离散点的步骤,还包括:
[0031]
获取各个离散点的离散点增益系数;
[0032]
其中,所述根据每个离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力,获得每个所述机械臂的笛卡尔作用力的步骤,包括:
[0033]
获得每个所述离散点对应的所有所述第一相互作用力的合力;
[0034]
根据每个所述离散点对应的所有所述第一相互作用力的合力以及每个所述离散点与对应的关节的第一相对位置信息,获得每个所述离散点相对于对应的所述关节所对应的力矩,并根据每个离散点的离散点增益系数获得每个关节对应的合力矩;以及
[0035]
根据每个所述关节对应的所述合力矩,以及所述机械臂的力雅可比矩阵,得到所述机械臂的笛卡尔作用力。
[0036]
在一个可选的实施例中,所述使所述笛卡尔作用力被操作者感知的步骤,包括:
[0037]
通过显示装置,将所述笛卡尔作用力予以显示。
[0038]
在一个可选的实施例中,所述机械臂与控制所述机械臂运动的主操作手相连接,其中,所述使所述笛卡尔作用力被操作者感知的步骤,包括:
[0039]
根据所述机械臂的所述笛卡尔作用力,获得用于控制机械臂运动的所述主操作手的所述笛卡尔作用力;
[0040]
根据所述主操作手的力雅可比矩阵以及所述主操作手的所述笛卡尔作用力,获得所述主操作手的每个关节对应的力矩;以及
[0041]
使用于控制所述主操作手的关节运动的电机相应输出与所述主操作手的每个关节对应的所述力矩大小相等且方向相反的阻力矩。
[0042]
在一个可选的实施例中,本申请还提供了一种机械臂防碰撞系统,应用于医疗机器人上,所述医疗机器人包括至少两条机械臂,所述机械臂包括机械臂本体,所述机械臂本体包括多 个关节,所述系统包括:
[0043]
离散点设置单元,用于在所述机械臂上设置离散点;
[0044]
存储器,用于存储指令;
[0045]
处理器,分别与所述离散点设置单元和所述存储器通信连接;
[0046]
其中,存储在所述存储器上的所述指令在由所述处理器执行时,执行以下步骤:
[0047]
获取每个所述离散点的在全局坐标下的第一坐标信息;
[0048]
根据所述第一坐标信息获得位于不同机械臂上的两个离散点之间的所述第一相对距离;
[0049]
根据所述第一相对距离以及所述第一相对距离与所述第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上每个离散点所对应的第一相互作用力;以及
[0050]
根据每个离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力,获得每个所述机械臂的笛卡尔作用力,并使所述笛卡尔作用力被操作者感知。
[0051]
在一个可选的实施例中,至少部分所述机械臂还包括挂载于所述机械臂本体末端的医疗器械,且所述离散点设置于所述医疗器械和/或所述机械臂本体上。
[0052]
在一个可选的实施例中,所述机械臂还包括位置传感器,所述位置传感器用于获取关节位置信息,所述位置传感器和所述处理器通信连接;
[0053]
所述离散点设置单元,还用于获取所述离散点相对于对应的关节的第一相对位置信息;
[0054]
其中,存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤:
[0055]
根据所述位置传感器所获取的所述关节的关节位置信息,并根据所述关节位置信息以及运动学模型来获取每个所述关节在所述全局坐标下的第二坐标信息;以及
[0056]
根据各所述关节在所述全局坐标下的第二坐标信息和所述第一相对位置信息,获取各所述离散点的在全局坐标下的所述第一坐标信息。
[0057]
在一个可选的实施例中,所述第一相对距离与第一相互作用力之间的对应关系预先存储于所述存储器;
[0058]
或者,
[0059]
所述机械臂防碰撞系统还包括输入装置,用于术中获取所述第一相对距离与第一相互作用力之间的对应关系,以直接为所述处理器获取执行或者将其存储在所述存储器中。
[0060]
在一个可选的实施例中,所述第一相对距离的取值范围包括多个距离区间,所述距离区间中的至少一个所对应的所述对应关系与其他距离区间对应的对应关系不相同;
[0061]
其中,存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤:
[0062]
根据每个所述离散点的所述第一相对距离,以及所述第一相对距离所在的距离区间所对应的所述对应关系,获得每个离散点与其他机械臂上每个离散点所对应的第一相互作用力。
[0063]
在一个可选的实施例中,所述预设的多个距离区间包括第一距离区间(0,L min+R m+R n]、第二距离区间(L min+R m+R n,L max+R m+R n)和第三距离区间[L max+R m+R n,+∞);以及
[0064]
在所述第一距离区间范围(0,L min+R m+R n]内,所述第一相互作用力F为预设的最大相互作用力F max;在所述第二距离区间(L min+R m+R n,L max+R m+R n)范围内,所述第一相互作用力与第一相对距离之间的关系为一函数,所述函数为在所述第二距离区间范围内连续的函数,且该函数的一阶导数小于零,二阶导数大于零;在所述第三距离区间[L max+R m+R n,+∞)范围内,所述第一相互作用力F为零;
[0065]
其中,离散点m、n为位于不同机械臂上的两个离散点,R m为所述离散点m所在的机械臂在所述离散点m处的横向截面最大半径,R n为所述离散点n所在的机械臂在离散点n处的横向截面最大半径,L max为所述第一相对距离的预设的碰撞警示距离,而L min为所述第一相对距离的预设的最小安全距离。
[0066]
在一个可选的实施例中,所述函数为:
[0067]
[0068]
其中,k为距离-作用力增益系数,L为所述第一相对距离,而L′为L对时间的导数。
[0069]
在一个可选的实施例中,所述离散点设置单元还用于获取每个离散点的离散点增益系数;
[0070]
其中,存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤:
[0071]
获得每个所述离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力;
[0072]
根据每个所述离散点所对应的所述第一相互作用力的所述合力以及每个所述离散点与对应的关节的第一相对位置信息,获得每个所述离散点与对应的关节相对应的力矩,并根据每个所述离散点与对应的关节相对应的力矩和每个离散点的离散点增益系数获得每个关节对应的合力矩;以及
[0073]
根据每个所述关节对应的所述合力矩,以及所述机械臂的力雅可比矩阵,得到所述机械臂的所述笛卡尔作用力。
[0074]
在一个可选的实施例中,所述系统还包括与所述处理器连接的报警器,其中存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤:
[0075]
当所述机械臂上任一离散点的所述第一相对距离小于或等于预设报警距离时,和/或,当所述机械臂的所述笛卡尔作用力大于预设的作用力阈值时,触发所述报警器以发出报警讯息。
[0076]
在一个可选的实施例中,所述系统还包括:
[0077]
显示装置,所述处理器还用于通过所述显示装置将所述笛卡尔作用力予以显示。
[0078]
在一个可选的实施例中,本申请还提供了一种医疗机器人,包括:
[0079]
至少两条机械臂,所述机械臂包括机械臂本体和位置传感器,所述机械臂本体包括多个关节;以及
[0080]
如上述任意一个实施例中所述的机械臂防碰撞系统。
[0081]
在一个可选的实施例中,所述医疗机器人还包括医生端、病人端和控制端;
[0082]
其中,所述医生端、所述病人端和所述机械臂防碰撞系统分别与所述控制端通信连接;所述机械臂位于所述病人端;所述医生端包括主操作手,所述主操作手包括多个关节以及驱动关节运动的电机,所述主操作手用于控制所述机械臂运动;所述控制端用于根据从所述机械臂防碰撞系统获取的所述机械臂的笛卡尔作用力,设置所述主操作手的笛卡尔作用力;以及
[0083]
所述控制端还用于根据主操作手的笛卡尔作用力、主操作手的力雅可比矩阵来获得所述主操作手各个关节对应的力矩,并控制电机以输出与所述力矩大小相等且方向相反的阻力矩,使所述机械臂的笛卡尔作用力被操作者感知。

附图说明

[0084]
为了更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他实施例的附图。
[0085]
图1为一个可选的实施例中遥操作医疗机器人中控制端的结构示意图;
[0086]
图2为一个可选的实施例中遥操作医疗机器人中病人端的结构示意图;
[0087]
图3为一个可选的实施例中遥操作医疗机器人的模块结构示意图;
[0088]
图4为一个可选的实施例中机械臂防碰撞的系统的模块结构图;
[0089]
图5为一个可选的实施例中离散点设置单元设置离散点的示意图;
[0090]
图6为一个可选的实施例中第一相对距离与第一相互作用力关系的曲线示意图;
[0091]
图7为一个可选的实施例中遥操作医疗机器人中一手术器械设置离散点的示意图;
[0092]
图8为图7中所示离散点404x处沿直线A处的A-A截面示意图;
[0093]
图9为一个可选的实施例中遥操作医疗机器人机械臂位姿示意图;
[0094]
图10为图9中各离散点的受力示意图;
[0095]
图11为一个可选的实施例中遥操作医疗机器人中主操作手受力示意图;
[0096]
图12为一个可选的实施例中机械臂防碰撞的方法的流程示意图。

具体实施方式

[0097]
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0098]
在本申请中,对于各部件而言均以靠近病人的一端为远端、末端,另一端则为近端、前端。
[0099]
下面结合实际情况,以遥操作医疗机器人为例,对本申请的技术内容进行详细说明。
[0100]
遥操作医疗机器人一般可包括控制端、医生端和病人端等部件,医生端和病人端均与控制端通信连接,即医生端通过控制端来控制病人端的相关医疗器械进行相应的检测或手术等操作。在病人端上一般安装有三条以上的机械臂,且机械臂可包括机械臂本体(如工具臂)和位置传感器。该机械臂本体可包括多个关节和通过关节相连的连杆,所述位置传感器用以获得各个关节的位置信息(例如转动关节的转动角度,移动关节的移动位移等)。其中,至少部分机械臂还可包括挂载于上述机械臂本体末端的诸如手术器械、检测器械等医疗器械,而医生端则可设有主操作手,即操作者能够通过主操作手主从控制检测器械来获取手术环境,并通过主操作手主从控制上述机械臂本体和/或手术器械进行协同手术操作等。
[0101]
需要说明的是,除非在上下文中另有说明,所获取的相关于病人端的相关医疗器械(例如机械臂和挂载于机械臂本体末端的手术器械、检测器械等医疗器械)的力、力矩均为虚拟物理量,即上述的力、力矩并非实际物理作用于病人端的相关机械臂之间,而仅是经过特定算法和/或过程所获取的参数值,用来描述机械臂之间碰撞的紧迫程度。相较而言,在所获取的相关于病人端的力、力矩可以为描述机械臂之间碰撞的紧迫程度的实际物理量也可以为虚拟物理量,即这里的力、力矩是可以让操作者通过特定设备(例如主操作手)由触觉所感知,或者也可以让操作者通过特定设备(例如显示装置或扬声器)由视觉或听觉所感知,本申请对所述感知方式不作特别限定。
[0102]
图1为一个可选的实施例中遥操作医疗机器人中医生端的结构示意图,图2为一个可选的实施例中遥操作医疗机器人中病人端的结构示意图。如图1-2所示,遥操作医疗机器人可包括医生端的控制台01和病人端的操作台02,且在控制台01上设置有第一主操作手30和第二主操作手31。在操作台02上设置有第一机械臂本体40、第二机械臂本体41和第三机械臂本体42,且每个机械臂本体上均可挂载有手术器械或检测器械等医疗器械。同时各机械臂本体还可用于驱动各自所挂载的手术器械、检测器械等医疗器械围绕一不动点运动。根据上述主操作手与机械臂运动的映射关系,通过操作主操作手即可实现机械臂的运动控制,进而操控检测器械对目标位置的手术环境进行检测、观察,操控手术器械对目标位置进行对应的处理。本申请公开的各示例性实施例中对机械臂本体的具体构型以及医疗器械的具体类型没有特别的限制。
[0103]
图3为一个可选的实施例中遥操作医疗机器人的模块结构示意图。如图3所示,上述的遥操作医疗机器人还可包括一种机械臂防碰撞系统,该机械臂防碰撞系统可用于实现上述实施例中的遥操作医疗机器人的机械臂21的防碰撞操作。在采用上述的遥操作医疗机器人进行操作时,能够有效防止机械臂之间发生相互碰撞,并可通过将所检测到的机械臂碰撞信息以作用力的方式反馈至操作者,以使得操作者能够实时感知机械臂的运动状况。这些将在下面进行更加详细地描述。
[0104]
图4为一个可选的实施例中机械臂防碰撞的系统的模块结构图。如图3~4所示,在机械臂21上设置有能够获取各个关节的位置信息的位置传感器10。上述的防碰撞系统20可包括处理器11、存储器12和离散点设置单元14等部件。存储器12用于存储指令或代码程序, 所述指令或代码程序在由所述处理器执行时可以使所述系统执行特定的过程。处理器11可分别与各个关节的位置传感器10、存储器12和离散点设置单元14通信连接。其中,离散点设置单元14可用于在机械臂本体(如工具臂)和/或医疗器械上设置离散点。该离散点设置单元14还可获取各离散点相对于相应关节的第一相对位置和各个离散点的离散点增益系数等离散点信息。
[0105]
在一些实施例中,上述的存储器12可存储有第一相对距离与第一相互作用力之间的关系信息、各所述机械臂的尺寸信息和离散点信息等信息数据。上述信息可以预先存储在存储器12中,例如在术前、系统初始化或者出厂时等,或者也可以在术中临时通过输入装置输入这些信息,直接为处理器11获取执行或者将其存储在存储器12中。其中,上述的机械臂的尺寸信息可包括机械臂本体的尺寸信息、医疗器械(如手术器械和/或检测器械等)尺寸信息等。另外,当在机械臂上设置离散点时,离散点的数量及分布可以根据力碰撞检测灵敏度、手术操作要求与机械臂各部分的尺寸确定。
[0106]
在另一个可选的实施例中,离散点设置单元14还可以根据处理器11下发的指令,在机械臂本体(如工具臂)和/或医疗器械上设置离散点。同时,处理器11还可将各离散点相对于相应关节的第一相对位置、各个离散点的离散点增益系数等离散点信息输出至存储器12中,以备后续处理器11或者其他设备调用。在一个可替代性方案中,存储器12还可与离散点设置单元14通信连接,所述存储器12还可用于存储离散点设置规则信息。其中,离散点设置单元14可以根据所调取的存储器12中预存的离散点设置规则信息,在机械臂本体(如工具臂)和/或医疗器械上设置离散点。同时,处理器11还可将各离散点相对于相应关节的第一相对位置、各个离散点的离散点增益系数等离散点信息存储至上述存储器12中,以备后续处理器11或者其他设备调用。
[0107]
在一个可选的实施例中,处理器11还可用于根据各机械臂上关节在全局坐标系下的第二坐标信息和离散点相对于相应关节的第一相对位置,来获取各离散点在全局坐标系下的第一坐标信息,并根据各离散点的第一坐标信息获取所述离散点之间的第一相对距离,以及基于离散点之间的第一相对距离与第一相互作用力之间的对应关系,获取各离散点对应的第一相互作用力及合力。该合力可为各离散点对应的所有第一相互作用力的合力;针对任一机械臂,处理器11则可基于上述机械臂上所有离散点对应的合力,来获得该机械臂的笛卡尔作用力(即空间受力(Spatial Force)),并使所述笛卡尔作用力被操作者感知。
[0108]
在本申请另一个可选的实施例中,本申请实施例中的离散点设置单元14还可以通过软件、硬件或软件及硬件的组合而得以实现,并与处理器11整合集成在一起,或者也可利用一个处理设备来同时实现上述处理器11和离散点设置单元14的功能。
[0109]
需要注意的是,在本申请实施例中的离散点可以是由系统根据一定规则来生成的(例如,所述规则可以包括间距设置信息,然后可以根据间距设置信息设置离散点,间距的大小可根据精度要求、操作需求设定),也可以是通过由操作者输入规则信息并由处理器11直接读取该输入的规则信息来生成的。这里的每个离散点可用于表示机械臂的某一连杆上的其中一个体积块,而该离散点则为位于对应体积块的几何中心。因此,离散点的数量越多,则意味着其代表的体积块的数量越多,从而每个体积块的体积越小。体积块的相对大小可用离散点增益系数g i来表示。其中,∑g i=1,i=1,2,...,j,j为某一机械臂某一连杆上所有离散点的数量,i,j均为正整数,且i<j。
[0110]
图5为一个可选的实施例中离散点设置单元设置离散点的示意图。如图3~5所示,第一机械臂40的机械臂本体可包括通过关节依次相连的第一大臂401、第一中臂402、第一小臂403。第一机械臂40的机械臂本体的末端(即第一小臂403)挂载有第一手术器械404。在第一大臂401上可建立a个离散点(即离散点4011,离散点4012,…,离散点401a),在第一中臂402上建立b个离散点(即离散点4021,离散点4022,…,离散点402b),在第一小臂403上建立c个离散点(即离散点4031,离散点4032,…,离散点403c),在第一手术器械404上建立d个离散点(即离散点4041,离散点4042,…,离散点404d)。其中,上述的a、 b、c和d均为自然数。同理,在上述的第二工具臂41的机械臂本体也可包括通过关节依次相连的第二大臂、第二中臂、第二小臂。第二工具臂41的机械臂本体的末端(即第二小臂)可用于挂载检测器械,例如内窥镜。在第二大臂、第二中臂、第二小臂和检测器械上均可类似地设置离散点。在上述的第三工具臂42的机械臂本体也可包括通过关节依次相连的第三大臂、第三中臂、第三小臂。第三工具臂42的机械臂本体的末端(即第三小臂)可挂载有第二手术器械。在第三大臂、第三中臂、第三小臂和第二手术器械上均可类似地设置离散点。在设置离散点的同时,可获取离散点与对应关节之间的第一相对位置信息、各个离散点的离散点增益系数等离散点信息。“与离散点对应的关节”可以是指,与该离散点所在的连杆(或医疗器械)近端相连接的关节。
[0111]
进一步地,如图3~5所示,由于在各机械臂的关节上设置有位置传感器10,故而可根据各个位置传感器10以及存储器12中存储的运动学模型的各个参数(例如D-H参数法中的连杆长度等参数)获取各关节在全局坐标下的坐标信息(即第二坐标信息)。进一步,结合设置离散点时获取的各个离散点相对于其对应的关节的位置关系(即第一相对位置信息),进而可以求解出各个离散点在全局坐标系下的坐标信息(即第一坐标信息)。
[0112]
需要说明的是,本申请公开的各示例性实施例对第一相对距离与第一相互作用力的关系没有特别的限制,第一相对距离取值范围为(0,+∞),只要在取值范围(0,+∞)的至少一个距离区间内,上述的第一相互作用力与第一相对距离成负相关即可。例如,取值范围(0,+∞)只包括一个距离区间,即在距离区间(0,+∞)中,第一相互作用力与第一相对距离成负相关。或者,整个取值范围(0,+∞)包括多个距离区间,在不同的距离区间中,第一相互作用力与第一相对距离可以具有不同的对应关系。下面将结合图6对第一相对距离与第一相互作用力的对应关系做进一步的说明。
[0113]
图6为一个可选的实施例中第一相对距离与第一相互作用力关系的曲线示意图。如图6所示的具体实施例中,纵坐标F表示第一相互作用力,横坐标L表示分别位于不同机械臂上的两个离散点之间的第一相对距离。存储器12存储有三个距离区间,该三个距离区间具体可包括第一距离区间(0,L min+R m+R n]、第二距离区间(L min+R m+R n,L max+R m+R n)和第三距离区间[L max+R m+R n,+∞)。其中,R m、R n为根据上述两个离散点所在的机械臂的尺寸,获得的该两个离散点所在位置处机械臂的横向截面最大半径,L max为预设的碰撞警示距离,而L min为预设的最小安全距离。
[0114]
在一个可选的实施例中,在第一距离区间(0,L min+R m+R n]范围内,所述第一相互作用力F为预设的最大相互作用力F max。在第二距离区间(L min+R m+R n,L max+R m+R n)范围内,所述第一相互作用力与该两个离散点之间的第一相对距离之间的关系为一函数,该函数在所述第二距离区间范围内为连续的函数,且其一阶导数小于零,二阶导数大于零。在第三距离区间[L max+R m+R n,+∞)范围内,所述第一相互作用力F为零。换言之,在本实施例中,位于不同机械臂上的任意两个离散点m、n之间的第一相互作用力F m,n与该两个离散点之间的第一相对距离L可满足如下关系:
[0115]
[0116]
其中,F m,n为离散点m对离散点n的第一相互作用力,F m,n的方向由离散点m指向离散点n,且F m,n与F n,m的值大小相等方向相反;L为离散点m与离散点n之间的第一相对距离;R m为离散点m所在的机械臂在离散点m处的横向截面的最大半径,R n为离散点n所在的机 械臂在离散点n处的横向截面最大半径;F max表示最大作用力;f(L)为在第二距离区间(L min+R m+R n,L max+R m+R n)的范围内为连续的函数,且该函数的一阶导数小于零,二阶导数大于零。因此,随着第一相对距离L的增加,根据上述函数所计算获得的第一相互作用力F m,n的值以更快的速度减小。
[0117]
在一个可选的实施例中,上述的f(L)可以是:
[0118]
[0119]
其中,k为距离-作用力增益系数,L可为第一相对距离,L′可为L对时间的导数,用于表征上述两个离散点m、n之间的第一相对距离相对于时间的变化率,其具体可通过计算上述两个离散点m、n之间当前第一相对距离与上一个控制周期(即碰撞检测间隔时间)上述两个离散点m、n之间的第一相对距离的差值,并将该差值除以控制周期获得。该控制周期可例如为0.5ms,即每间隔0.5ms进行一次碰撞检测。
[0120]
图7为一个可选的实施例中遥操作医疗手术机器人中一手术器械设置离散点的示意图,图8为图7中所示离散点404x处沿直线A处的A-A截面示意图。下面将结合图3-8以第一机械臂40为例进行说明。在本实施例中,可根据第一手术器械404的器械设计时的信息预先获取上述机械臂的第一手术器械404上任一离散点404x(x=1,2,…,a)处截面最大半径R 404x。类似地,其余机械臂上任一离散点处截面最大半径R也均可预先可知的。此处的截面应理解为横截面,即垂直于手术器械轴线的截面。由此,可以获得上述R m、R n
[0121]
在本实施例中,操作者可以在术前利用处理器11来预先设置多个距离区间,以及各距离区间内第一相对距离与第一相互作用力之间的对应关系,并可存储在存储器12中,以便于后续的调用。当然,也可利用其它装置在设备初始化或出厂时预先设置距离区间以及各距离区间内第一相对距离与第一相互作用力的对应关系,并预存在存储器12中。进一步,处理器11还可基于存储器12中存储的第一相对距离与第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上离散点所对应的相互作用力(即第一相互作用力),并由这些相互作用力获得所有第一相互作用力的合力,再基于各离散点所对应的所有第一相互作用力的合力,进而获得各机械臂的笛卡尔作用力。或者,所述机械臂防碰撞系统还包括输入装置,操作者可以在术中临时通过输入装置设置多个距离区间,以及各距离区间内第一相对距离与第一相互作用力之间的对应关系。此时,处理器11还可直接获取第一相对距离与第一相互作用力之间的关系。
[0122]
图9为一个可选的实施例中遥操作医疗机器人机械臂位姿示意图(为了便于观察,省略了第二机械臂41),图10为图9中各离散点的受力示意图。如图9所示,第一机械臂40和第三机械臂42的机械臂本体的末端均可挂载有手术器械,且可驱动上述的手术器械围绕一不动点进行运动。其中,对于第一机械臂40上的手术器械的每一个离散点,均可以通过上述不同的所述离散点之间的第一相对距离与第一相互作用力之间的对应关系,来获取第三机械臂42上的所有离散点对第一机械臂40上挂载的手术器械的任意离散点的第一相互作用力,以及第二机械臂41上所有离散点对第一机械臂40上的手术器械的任意离散点的第一相互作用力。进一步,计算出第一机械臂40的手术器械上的每个离散点所受的所有第一相互作用力的合力的大小和方向,进而根据连接手术器械与机械臂本体之间的关节对应的各个离散点(即手术器械上的各个离散点)所对应的第一相互作用力的合力、各个离散点与该关节的第一相对位置和各个离散点增益系数g i,获得由手术器械上所有离散点的第一相互作用力相对于连接手术器械与机械臂本体的关节产生的合力矩。进一步,所述处理器11计算得到第一机械臂40上所有关节对应的合力矩,并可进一步根据此时第一机械臂40当前构型下的力雅可比矩阵,获得第一机械臂40的笛卡尔作用力。
[0123]
具体的,当上述的第一机械臂40和第三机械臂42处于如图10所示的构型时,可根据第一机械臂40和第三机械臂42上各关节的位置传感器和第一相对位置等参数,来确定所有离 散点在全局坐标系下的坐标。在本实施例中,通过判断该两机械臂(即第一机械臂40和第三机械臂42)各离散点之间的第一相对距离时发现,除了图中第一机械臂40上的离散点4047与第三机械臂42上的离散点4245、4246、4247之间的各第一相互作用力,以及第一机械臂40上的离散点4048与第三机械臂42上的点4245、4246、4247之间各第一相互作用力不为零外,其余各离散点之间第一相互作用力均为零(即相距较远,第一相对距离大于L max+R m+R n)。由此,根据第三机械臂42上离散点4245、4246、4247对第一机械臂40上离散点4047的第一相互作用力F 4245,4047、F 4246,4047、F 4247,4047,得到第一机械臂上的离散点4047对应的第一相互作用力的合力F 4047,进而得到第一机械臂上离散点4047相对于转动关节的力矩为M 4047。类似地,得到第一机械臂离散点4048相对于转动关节的力矩为M 4048,所以此时第一机械臂本体与第一手术器械之间的关节对应的合力矩M =M 4047*g 4047+M 4048*g 4048。依此类推,在得到第一机械臂的每个关节对应的合力矩后,再根据此时第一机械臂40当前构型下的力雅克比矩阵,将第一机械臂40的各个关节合力矩转为笛卡尔空间的第一工具臂末端的笛卡尔作用力。
[0124]
图11为一个可选的实施例中遥操作医疗机器人中主操作手受力示意图。如图1~11所示,由于上述的第一机械臂40是由医生端的第一主操作手31进行控制,为了使操作者能感受上述的笛卡尔作用力,可根据获取的第一机械臂40的笛卡尔作用力,得到第一主操作手31的笛卡尔作用力F d,并根据第一主操作手31的力雅克比矩阵,得到第一主控制臂31各个关节的力矩,进而得到用于控制第一主控制臂31各个关节运动的电机所输出的阻力矩M R(与第一主控制臂31各个关节的力矩大小相等,方向相反)以反馈给操作者。
[0125]
具体而言,控制端还可用于将第一机械臂40的笛卡尔作用力进行一定比例的缩放以得到医生端的第一主操作手30的笛卡尔作用力F d。然后,控制端依据第一主操作手30的力雅克比矩阵,进而可求得用于控制第一主操作手30的各个关节运动的电机所输出的阻力矩M R。类似地,在获得第二主控制臂31的各个关节的力矩后,控制端可将用于第一主操作手30、第二主操作手31上各个关节的力矩发送给主操作手上的电机,以输出与上述力矩大小相等且方向相反的阻力矩,使得操作者在操作时遇到相应的阻力,从而感受到各个机械臂的笛卡尔作用力,进而达到精准控制及有效规避机械臂碰撞的目的。
[0126]
在另外一个可选的实施例中,上述的防碰撞系统还包括显示装置,所述的显示装置用于通过诸如文字、图形、图像等信息表现形式显示每个机械臂末端处对应的笛卡尔作用力,以使所述笛卡尔作用力被操作者感知。
[0127]
在另一个可选的实施例中,如图4所示,上述的防碰撞系统还可以包括与处理器11通信连接的报警器13,即当位于不同机械臂上的任意两个离散点之间的第一相对距离L小于预设的距离阈值,和/或任一机械臂的笛卡尔作用力超过预设的作用力阈值时,触发该报警器以诸如警铃、指示灯等方式发出报警讯息,以对即将发生的碰撞进行提醒。例如,上述的距离阈值可为L min+R m+R n。又例如,上述的距离阈值还可包括第一距离阈值L min+R m+R n和第二距离阈值L max+R m+R n,且当任意两个离散点之间的第一相对距离L小于第一距离阈值时,报警器发出第一报警信息(例如发出红色的灯光信号);当任意两个离散点之间的第一相对距离L大于等于第一距离阈值L min+R m+R n且小于第二距离阈值L max+R m+R n时,报警器发出第二报警信息(例如发出黄色的灯光信号);而当任意两个离散点之间的第一相对距离L大于第二距离阈值L max+R m+R n时,则报警器处于休眠或发出正常工作信息(例如发出绿色的灯光信号)。
[0128]
在以上的实施例中,所述防碰撞系统可用于两个及以上机械臂之间碰撞检测,其中的机械臂可包含挂载的医疗器械。本领域技术人员应理解,本申请实施例中的防碰撞系统及方法均可以用于机械臂本体之间的碰撞检测、机械臂本体与医疗器械之间的碰撞检测和/或医疗器械之间的碰撞检测等。
[0129]
图12为一个可选的实施例中机械臂防碰撞的方法的流程示意图。如图12所示,在一个 可选的实施例中,本申请还提供了一种机械臂防碰撞检测的方法,可应用于医疗机器人上,例如如图1~图11所示的遥操作医疗机器人。该医疗机器人可具有至少两条机械臂(如两条、三条、四条等),且每个机械臂均可包括机械臂本体,且该机械臂本体可包括多个关节以及利用该多个关节连接的连杆。例如,每个关节臂本体上的关节与连杆依次连接。同时,在各关节上均还设置有用于获取关节位置信息的位置传感器。至少部分机械臂还可包括挂载于机械臂本体末端的医疗器械,例如手术器械或检测器械等。由于上述医疗机器人的机械臂在协同操作时,机械臂相互之间(包括但不限于机械臂本体之间、医疗器械之间以及机械臂本体与医疗器械之间)因间距较小极易发生干涉、碰撞等缺陷,故而本实例的方法针对上述缺陷进行了创造性的改进,具体可包括以下步骤。
[0130]
步骤S10,在每条机械臂上设置多个离散点。
[0131]
具体地,根据力碰撞检测灵敏度、手术操作要求与机械臂各部分的尺寸等因素在各机械臂上设置上述的离散点。例如,在每个机械臂本体上可设置多个离散点。为了提升力碰撞检测灵敏度,可在每个连杆上均匀设置上述的各个离散点,也可根据各连杆的形状、尺寸等信息,将各离散点分布于相对较容易发生碰撞的区域,也可使得各离散点均匀分布在机械臂上。其中,上述的尺寸信息具体可包括机械臂上各关节、连杆的长度、形状、体积等各种立体几何参数。
[0132]
在一个可选的实施例中,还可继续获取各离散点相对于对应的关节的第一相对位置信息,以及各个离散点的离散点增益系数等参数信息。
[0133]
需要说明的是,本申请实施例中的机械臂包括有挂载在机械臂本体末端的医疗器械时,还可在上述的机械臂本体和/或医疗器械上进行上述离散点的设置,即可将医疗器械视为上述机械本体的一个连杆,以将机械臂本体和所挂载的医疗器械作为一个整体进行防碰撞检测。
[0134]
步骤S20,获取各离散点在全局坐标下的第一坐标信息。
[0135]
具体地,可根据通过位置传感器获取所述关节的关节位置信息,并且根据预置的运动学模型获得各关节在全局坐标系下的第二坐标信息,再根据上述的第二坐标信息和第一相对位置信息,来获得各离散点在所述全局坐标系下的第一坐标信息。
[0136]
在一个可选的实施例中,也可在获取各第二坐标信息之后,设置上述的多个离散点及获取第一相对位置信息;然后,再根据上述的第二坐标信息和第一相对位置信息来获得第一坐标信息。
[0137]
步骤S30,根据第一坐标信息获得位于不同机械臂上的两个离散点之间的第一相对距离。
[0138]
具体的,可根据第一坐标信息获得位于不同机械臂上的离散点之间的第一相对距离。即根据位于不同机械臂上的两个任意离散点的第一坐标信息进行彼此之间的距离的运算,进而获取上述的位于不同机械臂上任意两个离散点之间的第一相对距离。
[0139]
步骤S40,根据第一相对距离以及第一相对距离与第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上每个离散点所对应的第一相互作用力。
[0140]
本申请公开的各示例性实施例对第一相对距离与第一相互作用力的关系没有特别的限制,第一相对距离取值范围为(0,+∞),只要在取值范围(0,+∞)的至少一个距离区间内,上述的第一相互作用力与第一相对距离成负相关即可。
[0141]
在一个可选的实施例中,当第一相对距离的取值范围只包括一个距离区间,即在距离区间(0,+∞)中,第一相互作用力与第一相对距离成负相关。
[0142]
在另外一个可选的实施例中,第一相对距离的取值范围可以包括多个不同的距离区间,而且每个距离区间内第一相对距离与第一相互作用力之间的对应关系至少部分不相同。
[0143]
例如,所述取值范围包括第一距离区间(0,L min+R m+R n]、第二距离区间(L min+R m+R n,L max+R m+R n)和第三距离区间[L max+R m+R n,+∞)。其中,R m为离散点m所在机械臂(例如第一机械臂40)在离散点m处的横向截面最大半径,R n为离散点n所在机械臂(例如第二机械臂41)在离散点n处的横向截面最大半径,而L max为预设的碰撞警示 距离,L min为预设的最小安全距离。然后,在第一距离区间(0,L min+R m+R n]范围内时,所述第一相互作用力F为预设的最大相互作用力F max;在第二距离区间(L min+R m+R n,L max+R m+R n)范围内,所述第一相互作用力与该两个离散点之间的第一相对距离之间的对应关系为一函数,该函数为在所述第二距离区间范围内连续的函数,且一阶导数小于零,二阶导数大于零;在第三距离区间[L max+R m+R n,+∞)范围内,所述第一相互作用力F为零。上述第一相对距离与第一相互作用力之间的对应关系可表示为以下公式:
[0144]
[0145]
上述的公式中,F m,n为离散点m对离散点n的第一相互作用力,且方向由离散点m指向离散点n的方向,相应地,F n,m则可为离散点n对离散点m的第一相互作用力,且方向由离散点n指向离散点m的方向,即F m,n与F n,m的值大小相等方向相反。
[0146]
在另一个可选的实施例中,上述在所述第二距离区间范围内连续的函数可为:
[0147]
[0148]
其中,k为距离-作用力增益系数,L为所述离散点之间的第一相对距离;L′为L对时间的导数,用于表征该两个离散点之间的第一相对距离相对于时间的变化率,其具体可通过计算该两个任意离散点之间的当前第一相对距离与上一个控制周期(即碰撞检测间隔时间)该两个任意离散点之间的第一相对距离的差值,并将该差值除以控制周期获得。
[0149]
步骤S50,计算每个离散点与其他机械臂上各离散点所对应的所述第一相互作用力的合力。
[0150]
具体地,针对任一离散点,获取该离散点的与位于其他机械臂上所有离散点对应的第一相互作用力,并进行矢量求和,进而得到该离散点对应的所有第一相互作用力的合力。
[0151]
步骤S60,获取每个机械臂的笛卡尔作用力,并使该笛卡尔作用力被操作者感知。
[0152]
具体地,根据各离散点对应的所有第一相互作用力的合力,以及各离散点与对应的关节的第一相对位置信息,来获得每个离散点对对应的关节的力矩,再结合离散点增益系数g i,以获得每个关节对应的合力矩;然后,根据每个关节对应的合力矩以及机械臂的力雅可比矩阵,进而得到各机械臂的笛卡尔作用力。
[0153]
本实施例对各机械臂的笛卡尔作用力被操作者感知的方法没有特别的限制。在一个具体实施例中,可根据所获取的机械臂的笛卡尔作用力,得到控制机械臂运动的所述主操作手31的笛卡尔作用力,并可通过诸如机械臂力雅可比矩阵进而求得主操作手31上各关节的力矩,后续再控制电机输出与上述主操作手31各关节的力矩大小相等且方向相反的阻力矩,进而使得操作者的手部感知上述机械臂的笛卡尔作用力。
[0154]
在另外一个具体实施例中,还可通过一显示装置,将所述笛卡尔作用力通过诸如文字、图形、图像等信息表现形式予以显示,使操作者通过眼睛感知所述笛卡尔作用力。
[0155]
在另一个可选的实施例中,当位于不同机械臂上任意两个离散点之间的距离小于预设距离阈值,或者得到的笛卡尔作用力大于预设报警力时,触发诸如声、光、电、振动等报警讯息。例如,上述的距离阈值可设置为L min+R m+R n。又例如,上述的距离阈值可包括第一距 离阈值L min+R m+R n和第二距离阈值L max+R m+R n,且当上述两个离散点之间的第一相对距离L小于第一距离阈值L min+R m+R n时,报警器发出第一报警信息(例如发出红色的灯光信号);当两个离散点之间的第一相对距离L大于等于第一距离阈值L min+R m+R n且小于第二距离阈值L max+R m+R n时,报警器发出第二报警信息(例如发出黄色的灯光信号);而当两个离散点之间的第一相对距离L大于第二距离阈值L max+R m+R n时,则报警器处于休眠或发出正常工作信息(例如发出绿色的灯光信号)。
[0156]
应该理解的是,虽然图12的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图12中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0157]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0158]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0159]
以上所述实施例仅表达了本申请的几种示例性实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

权利要求书

[权利要求 1]
一种机械臂防碰撞的方法,应用于医疗机器人上,所述医疗机器人包括至少两条机械臂,所述机械臂包括机械臂本体,所述机械臂本体包括多个关节,其特征在于,所述方法包括: 在每条所述机械臂上设置多个离散点; 获取每个所述离散点在全局坐标下的第一坐标信息; 根据所述第一坐标信息获得位于不同机械臂上的两个离散点之间的第一相对距离; 根据所述第一相对距离以及所述第一相对距离与所述第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上每个离散点所对应的第一相互作用力;以及 根据每个离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力,获得每个所述机械臂的笛卡尔作用力,并使所述笛卡尔作用力被操作者感知。
[权利要求 2]
如权利要求1所述的方法,其中,至少部分所述机械臂还包括挂载于所述机械臂本体末端的医疗器械,所述在每条所述机械臂上设置多个离散点的步骤,包括:在所述医疗器械和/或所述机械臂本体上设置所述离散点。
[权利要求 3]
如权利要求1或2所述的方法,其中,所述在每条所述机械臂上设置多个离散点的步骤,包括: 获取所述离散点与对应的关节的第一相对位置信息。
[权利要求 4]
如权利要求3所述的方法,其中,所述机械臂还包括位置传感器,所述位置传感器用于获取关节位置信息,所述获取每个所述离散点在全局坐标下的第一坐标信息的步骤,包括: 通过所述位置传感器获取所述关节的关节位置信息,并根据所述关节位置信息以及运动学模型获得每个所述关节在所述全局坐标系下的第二坐标信息;以及 根据所述第二坐标信息和所述第一相对位置信息,获得所述离散点在所述全局坐标系下的所述第一坐标信息。
[权利要求 5]
如权利要求1或2所述的方法,其中,根据所述第一相对距离以及所述第一相对距离与所述第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上每个离散点所对应的第一相互作用力的步骤,包括: 在所述第一相对距离的取值范围内设置多个距离区间,其中所述距离区间中的至少一个所对应的所述对应关系与其他距离区间对应的对应关系不相同;以及 根据所述离散点之间的所述第一相对距离,以及所述第一相对距离所在的距离区间所对应的所述对应关系,获得每个离散点与其他机械臂上每个离散点所对应的第一相互作用力。
[权利要求 6]
如权利要求5所述的方法,其中, 所述多个距离区间包括第一距离区间(0,L min+R m+R n],第二距离区间(L min+R m+R n,L max+R m+R n)和第三距离区间[L max+R m+R n,+∞);以及 在所述第一距离区间(0,L min+R m+R n]范围内,所述第一相互作用力F为预设的最大相互作用力F max;在所述第二距离区间(L min+R m+R n,L max+R m+R n)范围内,所述第一相互作用力与所述第一相对距离之间的关系为一函数,其中所述函数为在所述第二距离区间范围内连续的函数,且所述函数的一阶导数小于零,二阶导数大于零;在所述第三距离区间[L max+R m+R n,+∞)范围内,所述第一相互作用力F为零; 其中,离散点m、n为位于不同机械臂上的两个所述离散点,R m为所述离散点m所在机械臂在离散点m处的横向截面最大半径,R n为离散点n所在机械臂在离散点n处的横向截面最大半径,L max为所述第一相对距离的预设的碰撞警示距离,而L min为所述第一相对距离的预设的最小安全距离。
[权利要求 7]
如权利要求6所述的方法,其中,所述函数为: 其中,k为距离-作用力增益系数,L为所述第一相对距离,而L′为L对时间的导数。
[权利要求 8]
如权利要求3所述的方法,其中,所述在每条所述机械臂上设置多个离散点的步骤,还包括: 获取各个离散点的离散点增益系数; 其中,所述根据每个离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力,获得每个所述机械臂的笛卡尔作用力的步骤,包括: 获得每个所述离散点对应的所有所述第一相互作用力的合力; 根据每个所述离散点对应的所有所述第一相互作用力的合力以及每个所述离散点与对应的关节的第一相对位置信息,获得每个所述离散点相对于对应的所述关节所对应的力矩,并根据每个离散点的离散点增益系数获得每个关节对应的合力矩;以及 根据每个所述关节对应的所述合力矩,以及所述机械臂的力雅可比矩阵,得到所述机械臂的笛卡尔作用力。
[权利要求 9]
如权利要求1或2所述的方法,其中,所述使所述笛卡尔作用力被操作者感知的步骤,包括: 通过显示装置,将所述笛卡尔作用力予以显示。
[权利要求 10]
如权利要求1或2所述的方法,其中,所述机械臂与控制所述机械臂运动的主操作手相连接,其中,所述使所述笛卡尔作用力被操作者感知的步骤,包括: 根据所述机械臂的所述笛卡尔作用力,获得用于控制机械臂运动的所述主操作手的所述笛卡尔作用力; 根据所述主操作手的力雅可比矩阵以及所述主操作手的所述笛卡尔作用力,获得所述主操作手的每个关节对应的力矩;以及 使用于控制所述主操作手的关节运动的电机相应输出与所述主操作手的每个关节对应的所述力矩大小相等且方向相反的阻力矩。
[权利要求 11]
一种机械臂防碰撞系统,应用于医疗机器人上,所述医疗机器人包括至少两条机械臂,所述机械臂包括机械臂本体,所述机械臂本体包括多个关节,其特征在于,所述系统包括: 离散点设置单元,用于在所述机械臂上设置离散点; 存储器,用于存储指令; 处理器,分别与所述离散点设置单元和所述存储器通信连接; 其中,存储在所述存储器上的所述指令在由所述处理器执行时,执行以下步骤: 获取每个所述离散点的在全局坐标下的第一坐标信息; 根据所述第一坐标信息获得位于不同机械臂上的两个离散点之间的所述第一相对距离; 根据所述第一相对距离以及所述第一相对距离与所述第一相互作用力之间的对应关系,获取每个离散点与其他机械臂上每个离散点所对应的第一相互作用力;以及 根据每个离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力,获得每个所述机械臂的笛卡尔作用力,并使所述笛卡尔作用力被操作者感知。
[权利要求 12]
如权利要求11所述的系统,其中,至少部分所述机械臂还包括挂载于所述机械臂本体末端的医疗器械,且所述离散点设置于所述医疗器械和/或所述机械臂本体上。
[权利要求 13]
如权利要求11所述的系统,其中, 所述机械臂还包括位置传感器,所述位置传感器用于获取关节位置信息,所述位置传感器和所述处理器通信连接; 所述离散点设置单元,还用于获取所述离散点相对于对应的关节的第一相对位置信息; 其中,存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤: 根据所述位置传感器所获取的所述关节的关节位置信息,并根据所述关节位置信息以及 运动学模型来获取每个所述关节在所述全局坐标下的第二坐标信息;以及 根据各所述关节在所述全局坐标下的第二坐标信息和所述第一相对位置信息,获取各所述离散点的在全局坐标下的所述第一坐标信息。
[权利要求 14]
如权利要求11所述的系统,其中, 所述第一相对距离与第一相互作用力之间的对应关系预先存储于所述存储器; 或者, 所述机械臂防碰撞系统还包括输入装置,用于术中获取所述第一相对距离与第一相互作用力之间的对应关系,以直接为所述处理器获取执行或者将其存储在所述存储器中。
[权利要求 15]
如权利要求11至13任一项所述的系统,其中,所述第一相对距离的取值范围包括多个距离区间,所述距离区间中的至少一个所对应的所述对应关系与其他距离区间对应的对应关系不相同; 其中,存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤: 根据每个所述离散点的所述第一相对距离,以及所述第一相对距离所在的距离区间所对应的所述对应关系,获得每个离散点与其他机械臂上每个离散点所对应的第一相互作用力。
[权利要求 16]
如权利要求15所述的系统,其中, 所述预设的多个距离区间包括第一距离区间(0,L min+R m+R n]、第二距离区间(L min+R m+R n,L max+R m+R n)和第三距离区间[L max+R m+R n,+∞);以及 在所述第一距离区间范围(0,L min+R m+R n]内,所述第一相互作用力F为预设的最大相互作用力F max;在所述第二距离区间(L min+R m+R n,L max+R m+R n)范围内,所述第一相互作用力与第一相对距离之间的关系为一函数,所述函数为在所述第二距离区间范围内连续的函数,且该函数的一阶导数小于零,二阶导数大于零;在所述第三距离区间[L max+R m+R n,+∞)范围内,所述第一相互作用力F为零; 其中,离散点m、n为位于不同机械臂上的两个离散点,R m为所述离散点m所在的机械臂在所述离散点m处的横向截面最大半径,R n为所述离散点n所在的机械臂在离散点n处的横向截面最大半径,L max为所述第一相对距离的预设的碰撞警示距离,而L min为所述第一相对距离的预设的最小安全距离。
[权利要求 17]
如权利要求16所述的系统,其中,所述函数为: 其中,k为距离-作用力增益系数,L为所述第一相对距离,而L′为L对时间的导数。
[权利要求 18]
如权利要求11或12所述的系统,其中,所述离散点设置单元还用于获取每个离散点的离散点增益系数; 其中,存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤: 获得每个所述离散点与其他机械臂上每个离散点所对应的所述第一相互作用力的合力; 根据每个所述离散点所对应的所述第一相互作用力的所述合力以及每个所述离散点与对应的关节的第一相对位置信息,获得每个所述离散点与对应的关节对应的力矩,并根据每个所述离散点与对应的关节相对应的力矩和每个离散点的离散点增益系数获得每个关节对应的合力矩;以及 根据每个所述关节对应的所述合力矩,以及所述机械臂的力雅可比矩阵,得到所述机械臂的所述笛卡尔作用力。
[权利要求 19]
如权利要求11所述的系统,其中,所述系统还包括与所述处理器连接的报警器,其中存储在所述存储器上的所述指令在由所述处理器执行时还执行以下步骤: 当所述机械臂上任一离散点的所述第一相对距离小于或等于预设报警距离时,和/或,当所述机械臂的所述笛卡尔作用力大于预设的作用力阈值时,触发所述报警器以发出报警讯息。
[权利要求 20]
如权利要求11或12所述的系统,其中,所述系统还包括: 显示装置,所述处理器还用于通过所述显示装置将所述笛卡尔作用力予以显示。
[权利要求 21]
一种医疗机器人,包括: 至少两条机械臂,所述机械臂包括机械臂本体,所述机械臂本体包括多个关节;以及 如权利要求11-20中任意一项所述的机械臂防碰撞系统。
[权利要求 22]
如权利要求21所述的医疗机器人,其中,所述医疗机器人还包括医生端、病人端和控制端; 其中,所述医生端、所述病人端和所述机械臂防碰撞系统分别与所述控制端通信连接;所述机械臂位于所述病人端;所述医生端包括主操作手,所述主操作手包括多个关节以及驱动关节运动的电机,所述主操作手用于控制所述机械臂运动;所述控制端用于根据从所述机械臂防碰撞系统获取的所述机械臂的笛卡尔作用力,设置所述主操作手的笛卡尔作用力;以及 所述控制端还用于根据主操作手的笛卡尔作用力、主操作手的力雅可比矩阵来获得所述主操作手各个关节对应的力矩,并控制电机以输出与所述力矩大小相等且方向相反的阻力矩,使所述机械臂的笛卡尔作用力被操作者感知。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]  
[ 图 5]  
[ 图 6]  
[ 图 7]  
[ 图 8]  
[ 图 9]  
[ 图 10]  
[ 图 11]  
[ 图 12]