CN118319483A - 手术臂柔顺调整方法及使用其的手术机器人 - Google Patents
手术臂柔顺调整方法及使用其的手术机器人 Download PDFInfo
- Publication number
- CN118319483A CN118319483A CN202410458378.XA CN202410458378A CN118319483A CN 118319483 A CN118319483 A CN 118319483A CN 202410458378 A CN202410458378 A CN 202410458378A CN 118319483 A CN118319483 A CN 118319483A
- Authority
- CN
- China
- Prior art keywords
- joint
- encoder
- deviation
- target
- thrust
- 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
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000003068 static effect Effects 0.000 claims abstract description 23
- 238000006073 displacement reaction Methods 0.000 claims description 43
- 230000005484 gravity Effects 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 17
- 230000005489 elastic deformation Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 7
- 230000033001 locomotion Effects 0.000 description 19
- 238000001356 surgical procedure Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 239000012636 effector Substances 0.000 description 5
- 239000003638 chemical reducing agent Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000002324 minimally invasive surgery Methods 0.000 description 4
- 239000000523 sample Substances 0.000 description 4
- 210000000115 thoracic cavity Anatomy 0.000 description 4
- 206010044565 Tremor Diseases 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 210000000683 abdominal cavity Anatomy 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000008602 contraction Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000002682 general surgery Methods 0.000 description 2
- 210000004247 hand Anatomy 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000013011 mating Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- RVCKCEDKBVEEHL-UHFFFAOYSA-N 2,3,4,5,6-pentachlorobenzyl alcohol Chemical compound OCC1=C(Cl)C(Cl)=C(Cl)C(Cl)=C1Cl RVCKCEDKBVEEHL-UHFFFAOYSA-N 0.000 description 1
- 208000002847 Surgical Wound Diseases 0.000 description 1
- 230000003187 abdominal effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000003381 stabilizer Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000008733 trauma Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
- 210000003857 wrist joint Anatomy 0.000 description 1
Landscapes
- Manipulator (AREA)
Abstract
本申请实施例提供一种手术臂柔顺调整方法及使用其的手术机器人,方法包括获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差;之后基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值;最后基于推力方向和推力值,确定待调整关节对应的电机的目标位置,并根据目标位置生成对应的控制指令,以指示各待调整关节对应的电机移动至目标位置,如此,能够使得电机在位置模式下运行,这样对手术臂进行位置调整的过程中不会受到恒力弹簧出力不均带来的影响,且可以克服各关节之间的最大静摩擦力,不需要用户手动克服,这样能够提高调整手术臂时的柔顺度。
Description
技术领域
本发明涉及医疗器械技术领域,尤其涉及一种手术臂柔顺调整方法及使用其的手术机器人。
背景技术
随着医疗器械、计算机技术及控制技术的不断发展,微创手术以其手术创伤小、康复时间短、患者痛苦少等优点得到了越来越广泛的应用,而微创手术机器人以其高灵巧性、高控制精度、直观的手术图像等特点能够避免操作局限性,如过滤操作时手部的震颤等,广泛适用于泌尿外科、胸外科、普外科、神经外科等手术科室。
微创手术机器人中应用最广泛的是腔镜手术机器人,用于执行患者腹腔、盆腔、胸腔等部位的手术。腔镜手术机器人一般包括医生控制台和手术平台,手术平台上设置有多条手术臂,各手术臂包括多个关节,多个关节中的竖直升降关节包括电机、恒力弹簧、丝杆和负载(位于竖直升降关节之后的多个关节)。其中,电机和丝杆配合动作,能够带动竖直升降关节沿竖直方向移动,从而调整手术臂的高度,而恒力弹簧悬挂在竖直升降关节上,用于为电机分担一部分负载的重量。
在手术前,通常需要对手术臂进行摆位操作,即拖动手术臂以对手术臂进行位置调整(如,调整手术臂的高度),但是在对手术臂进行位置调整的过程中,会存在一些问题影响手术臂调整的柔顺度。例如,由于恒力弹簧并非是完美恒力,其出力会随着弹簧的伸缩而发生变化,再如手术臂上安装的器械或腔镜不同使得手术臂的重力不同,等等原因导致现有的补偿方法无法很好地补偿手术臂的重力矩,从而导致手术臂存在推动起始力大、拖动不顺滑的问题(即柔顺度差)。
发明内容
本申请提供一种手术臂柔顺调整方法及使用其的手术机器人,能够解决对手术臂进行位置调整时柔顺度较差的技术问题。
本申请的第一方面,提供了一种手术臂柔顺调整方法,包括:
获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差;目标关节为与待调整关节相邻且能够使得待调整关节沿预设方向移动的关节;
基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值;
基于待调整关节对应的推力方向和推力值,确定待调整关节对应的电机的目标位置,并根据目标位置生成对应的控制指令,控制指令用于指示各待调整关节对应的电机移动至目标位置,以使得待调整关节按照对应推力值沿推力方向移动。
在一些实施例中,获取手术臂上目标关节对应的电机编码器和关节编码器之间的理论编码器偏差,包括:
获取手术臂上多个关节的关节位置以及静力学参数,并基于各关节的关节位置和静力学参数,确定目标关节对应的理论重力矩;
基于目标关节对应的理论重力矩和弹性系数,确定目标关节对应的理论弹性偏差;弹性偏差用于指示电机编码器和关节编码器基于关节端部的弹性位移形成的偏差;
基于目标关节的关节位置和拟合函数,确定目标关节的理论杂散偏差;杂散偏差为电机编码器和关节编码器基于误差形成的偏差;
基于目标关节对应的理论弹性偏差和理论杂散偏差的和,确定目标关节对应的理论编码器偏差。
在一些实施例中,方法还包括:
在手术臂为第一构型时,获取目标关节在预设角度对应的第一重力矩和第一编码器偏差;
在手术臂为第二构型时,获取目标关节在预设角度对应的第二重力矩和第二编码器偏差;
基于目标关节在预设角度对应的第一重力矩和第二重力矩之间的差值,确定目标关节对应的弹性力矩;
基于目标关节在预设角度对应的第一编码器偏差和第二编码器偏差之间的差值,确定目标关节对应的弹性形变量;
基于目标关节对应的弹性力矩和弹性形变量之间的商,得到目标关节对应的弹性系数。
在一些实施例中,方法还包括:
基于目标关节对应的第一重力矩,确定目标关节在预设角度对应的第一弹性偏差;第一弹性偏差为手术臂为第一构型时目标关节对应的弹性偏差;
基于目标关节对应的第二重力矩,确定目标关节在预设角度对应的第二弹性偏差;第二样本弹性偏差为手术臂为第二构型时目标关节对应的弹性偏差;
基于目标关节对应的第一编码器偏差与第一弹性偏差之间的差值,得到目标关节在预设角度对应的第一杂散偏差;
基于目标关节对应的第二编码器偏差与第二弹性偏差之间的差值,得到目标关节在预设角度对应的第二杂散偏差;
对目标关节对应的第一杂散偏差和第二杂散偏差进行拟合,得到拟合函数。
在一些实施例中,基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值,包括:
若调整差大于第一阈值,确定待调整关节受到的推力的推力方向为第一方向,并确定调整差为待调整关节受到的推力的推力值。
在一些实施例中,基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值,包括:
若调整差小于第二阈值,确定关节受到的推力的推力方向为第二方向,并确定调整差为待调整关节受到的推力的推力值;第二方向与第一方向相反。
在一些实施例中,基于推力方向和推力值,确定待调整关节对应的电机的目标位置,包括:
基于待调整关节对应的推力值与预设系数的乘积,确定待调整关节对应的指令速度;
基于待调整关节对应的指令速度与预设控制周期的乘积,得到待调整关节对应的电机的位移增量;
基于电机的位移增量与电机的当前位移量的和,得到待调整关节对应的电机的目标位置。
在一些实施例中,方法还包括:
获取用户输入的操作信号;操作信号用于指示用户对手术臂施加外力;
基于操作信号,锁定手术臂上的目标关节以及位于目标关节之后的关节。
本申请第二方面,提供一种手术臂柔顺调整装置,包括:
获取模块,用于获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差;目标关节为与待调整关节相邻且能够使得待调整关节沿预设方向移动的关节;
处理模块,用于基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值;还用于基于推力方向和推力值,确定待调整关节对应的电机的目标位置;
生成模块,用于根据目标位置生成对应的控制指令,控制指令用于指示各待调整关节对应的电机移动至目标位置,以使得待调整关节按照对应推力值沿推力方向移动。
本申请第三方面,提供一种控制设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如上述任一项实施例方法的步骤。
本申请第四方面,提供一种手术机器人,包括手术臂、电机编码器、关节编码器以及如第三方面提供的控制设备;
电机编码器设置在手术臂上对应的关节的电机上,关节编码器设置在手术臂上对应的关节的端部;电机编码器、关节编码器和手术臂均与控制设备耦接,电机编码器和关节编码器均用于对手术臂上对应的关节进行检测,控制设备中的处理器执行时用于实现上述任一项实施例方法的步骤。
本申请第五方面,提供一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,计算机程序被处理器执行时实现上述任一项实施例方法的步骤。
本申请实施例提供一种手术臂柔顺调整方法,该方法包括:先获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差;目标关节为与待调整关节相邻且能够使得待调整关节沿预设方向移动的关节;之后基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值;最后基于待调整关节对应的推力方向和推力值,确定待调整关节对应的电机的目标位置,并根据目标位置生成对应的控制指令,控制指令用于指示各待调整关节对应的电机移动至目标位置,以使得待调整关节按照对应推力值沿推力方向移动,如此,能够使得电机在位置模式下运行,这样对手术臂进行位置调整的过程中不会受到恒力弹簧出力不均带来的影响,且在位置模式下运行的电机还可以克服各关节之间的最大静摩擦力,不需要用户手动克服,这样能够提高调整手术臂时的柔顺度。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种手术臂的结构示意图;
图2为本申请实施例提供的一种手术臂柔顺调整方法的流程示意图;
图3为本申请实施例提供的另一种手术臂柔顺调整方法的流程示意图;
图4为本申请实施例提供的又一种手术臂柔顺调整方法的流程示意图;
图5为本申请实施例提供的又一种手术臂柔顺调整方法的流程示意图;
图6为本申请实施例提供的又一种手术臂柔顺调整方法的流程示意图;
图7为本申请实施例提供的又一种手术臂柔顺调整方法的流程示意图;
图8为本申请实施例提供的又一种手术臂柔顺调整方法的流程示意图;
图9为本申请实施例提供的一种手术臂柔顺调整装置的结构示意图;
图10为本申请实施例提供的一种控制设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述。
在本说明书中,有些地方说明了许多具体的技术细节,以便本领域技术人员理解完整的技术方案。然而,应当理解的是,本申请的实施例可以在没有这些特定技术细节的情况下实施。此类关于技术细节的详细说明不应被视为对本申请的限制,且本申请的保护范围仅由权利要求书限定。在其他地方,也可能未详细示出公知的结构、连接/位置关系、电路和/或其他细节,以免社会公众对本申请的发明要点产生误解。
在本说明书中,附图示出了本申请的若干个实施例的示意图。然而,附图只是示意性的,应当理解的是,可以在不脱离本申请的精神和范围的情况下,进行机械结构、连接/位置关系、物理组成、电气和步骤的变化。这种变化既可以是利用本申请的若干实施例的要素进行替换或结合,也可以是利用公知的内容进行替换或结合。
以下在此使用的术语仅用于描述具体实施例而不旨在限制本申请。空间相对术语,诸如“下方”、“下部”、“上方”、“上部”、“中间”、“中部”、“内侧”、“外侧”、“中央”、“边缘”等等是为了方便说明而用于描述图中所示的一个部件或特征与另一个部件或特征的关系。应当理解的是,空间相对术语是在使用或操作中的装置的摆位方向(除图中特别限定的摆位方向外)条件下才能使用的,并不一定是唯一和不变的。例如,如果图中的装置沿着纸面上下被180°翻转,那么被描述为在其它部件或特征“下方”的元件将变为在其它部件或特征的“上方”。因此,示例性术语“下方”可涵盖上方和下方两个方向,具体取决于该装置是如何摆位的。而装置也可以以其它方向进行摆位(例如,旋转90°或以其它方向摆位),且相应地解释在此使用的空间相对描述词。
如在此使用的,“若干个”、“一个”和“该”旨在也包括复数形式,除非上下文另有指示。应进一步理解,术语“包括”和/或“包含”指定所述特征、步骤、操作、元件和/或部件的存在,而不排除一个或更多其它特征、步骤、操作、元件、部件和/或其组的存在。
术语“对象”一般指的是一个部件或一组部件。在整个说明书和权利要求书中,术语“对象”、“部件”、“部分”、“零件”、“模块”、“组件”和“元件”可互换使用。
术语“器械”、“手术器械”和“外科手术器械”在此用于描述被配置成***到患者体内并且用于执行外科手术或诊断操作的医疗装置,一般包括末端执行器。末端执行器可以是与一个或多个外科手术操作相关的外科手术工具,诸如钳子、持针器、剪刀、双极烧灼器、组织稳定器或牵开器、施夹器、吻合装置、成像装置(例如,内窥镜或超声波探头)等等。本申请的实施例使用的一些器械进一步提供了用于外科手术工具的铰接支撑件(有时称为“腕关节”、“关节座”),使得可以相对于器械轴以一个或多个机械自由度灵活地操纵末端执行器的位置和/或定向。进一步地,许多末端执行器包括功能性机械自由度,诸如打开或闭合的钳口或沿着特定路径平移的刀片。器械也可包含永久或可由外科手术***更新的存储(例如,在器械内的PCBA板上)信息。相应地,该***可提供器械与一个或多个***部件之间的单向或双向信息通信。
术语“配合”(有时称为“连接”、“联接”、“安装”、“装配”)可以广义上被理解为两个或更多对象以允许配合的对象彼此结合操作的方式连接的任何情形。应注意,配合不要求直接连接(例如,直接物理或电气连接),而是许多对象或部件可以用于配合两个或更多对象。例如,对象A和B可以通过使用对象C配合。此外,术语“可拆卸地联接”或“可拆卸地配合”可以被解释为,意味着两个或更多对象之间的非永久的联接或配合情形。这意味着可拆卸地联接的对象可以未联接并且分开,使得它们不再结合地操作。
术语“关节位置”可以广义上被理解为关节的角度或其空间位置。关节的角度指的是关节在其转动范围内相对于零点实际转动的角度,如果没有零点,则是其转动增量角度。空间位置指的是在特定的空间坐标系下,其虚拟关节中心所在位置,例如针对笛卡尔空间坐标系,空间位置指的是在XYZ坐标下的三维位置。
最后,在此使用的术语“或”和“和/或”应当被解释为包容性的或者意味着任何一个或任何组合。因此,“A、B或C”或“A、B和/或C”意味着以下各项的任何一项:A;B;C;A和B;A和C;B和C;A、B和C。这种定义的例外将仅出现在元件、功能、步骤或动作的组合是以某种方式内在地相互排斥时。
随着医疗器械、计算机技术及控制技术的不断发展,微创手术以其手术创伤小、康复时间短、患者痛苦少等优点得到了越来越广泛的应用,而微创手术机器人以其高灵巧性、高控制精度、直观的手术图像等特点能够避免操作局限性,如过滤操作时手部的震颤等,广泛适用于腹腔、盆腔、胸腔等手术区域。其中,微创手术机器人中最大的一类为腔镜手术机器人,腔镜手术机器人包括医生控制台、患者手术平台和图像平台,手术平台上设置有多条手术臂(又称为机械臂)。外科医生坐在医生控制平台,观看由放置在患者体内的腔镜(有时称为“内窥镜”)传输的手术区域的二维或三维影像,并操控患者手术平台上的手术臂的移动,以及该手术臂上附接的手术器械或腔镜。手术臂相当于模拟了人类的手臂,手术器械相当于模拟了人类的手部,两者为外科医生提供一系列模拟人体手腕的动作,同时还能过滤人手本身的震颤,因此在手术中特别是腹腔、胸腔、普外科的手术中应用越来越广泛。
在一些实施例中,患者手术平台通常包括底盘、立柱、连接到立柱的多个手术臂和在每个手术臂的支撑组件的末端处的一个或更多手术器械操纵器。手术器械和/或腔镜被可拆卸地联接到该手术器械操纵器。每个手术器械操纵器支撑在患者体内的外科手术部位处操作的一个或多个手术器械和/或腔镜。可以允许每个手术器械操纵器以一个或多个机械自由度(例如,全部六个笛卡尔自由度、五个或更少笛卡尔自由度等)运动的各种形式控制相关的手术器械。通常,通过机械或软件约束来限制每个手术器械操纵器以绕相对于患者保持静止的手术器械上的运动中心转动相关手术器械,该运动中心通常定位在外科手术器械进入身体体壁的位置,且该运动中心一般称为“远心点”或“不动点”。
示例性地,图1示出了一种手术臂的结构示意图。如图1所示,手术臂包括依次连接的第一关节1(又称为竖直升降关节)、第二关节2(又称为转动关节)、第三关节3(又称为转动关节)、第四关节4(又称为转动关节)和第五关节5(又称为操纵臂)。第一关节1与手术平台滑动连接且竖直设置,使得第一关节1可沿竖直方向上下移动。第二关节2与第一关节1旋转连接,第二关节2绕第一关节1的轴线作水平旋转运动。第三关节3与第二关节2旋转连接,第三关节3绕第二关节2的轴线作竖直旋转运动,且第三关节3的旋转轴线与第一关节1的轴线相交且垂直。第四关节4与第三关节3旋转连接,且第四关节4绕第三关节3的轴线作水平旋转运动;第四关节4的旋转轴线与第三关节3的旋转轴线垂直且相交;第五关节5的一端与第四关节4连接,另一端用于附接手术器械和/或腔镜。
在一些实施例中,多个关节包括竖直升降关节和多个转动关节。其中,竖直升降关节包括电机、恒力弹簧和丝杆。其中,电机和丝杆配合动作,能够带动竖直升降关节沿竖直方向移动,从而调整手术臂的高度,而恒力弹簧悬挂在数值升降关节上,用于为电机分担一部分负载(位于竖直升降关节之后的多个转动关节)的重量;转动关节均包括转轴和电机。其中,多个关节中各关节对应的转轴连接在相邻的上一个关节对应的电机内,而各关节对应的电机套设在相邻的下一个关节对应的转轴外,各关节对应的电机能够驱动相邻的下一个关节的转轴转动,以使得相邻的下一个关节旋转运动。
示例性地,如图1所示,第一关节1的电机(图中未示出)套设在第二关节2的转轴(图中未示出)外,第一关节1中的电机能够驱动第二关节2的转轴转动,以使得第二关节2绕第一关节1的轴线作水平旋转运动。
在一些实施例中,图像平台通常包括具有视频图像捕获功能(常见的是内窥镜)和用于显示所捕获的图像中的手术器械的一个或多个视频显示器。在一些腔镜手术机器人中,包括将图像从患者的身体内传递至内窥镜远端的一个或多个成像传感器(例如,CCD或CMOS传感器)的光学器件,再通过光电转换等步骤,将视频图像传递给图像平台的主机。随后,通过图像处理,将处理后的图像显示在视频显示器上,供其他医生或助手观察。
在一些实施例中,医生控制平台通常包括底盘、脚踏组件、立体监视器、主控制臂以及连接到主控制臂末端的手动控制器,外科医生通过控制手动控制器和脚踏组件来实现手术器械的特定动作和/或能量激发。外科医生控制平台可在由腔镜手术机器人组成的外科手术***中的单个位置处或它可分布在***中的两个或更多位置处,而遥控主/从操作可依据预设的控制程度完成,例如一个位置处作为主刀操作的主控,另一个位置处作为一助操作的辅控,主控完成主要的手术操作,辅控完成腔镜移动或组织牵拉等辅助操作。在一些实施例中,手动控制器可以是能够完成一个或多个手动操作的输入装置,诸如控制杆、外骨架手套、动力和重力补偿操纵器等等。这些输入装置采集到外科医生的操作信号,经控制***处理后生成机械臂及手术器械操纵器的控制信号,由此控制手术器械操纵器上的遥控电机,该电机进而控制手术器械的最终运动。
一般的,由遥控电机产生的力经由传动***传递,将力从遥控电机传输至手术器械的末端执行器。在一些遥控外科手术实施例中,控制操纵器的输入装置可设置在远离患者的位置,在患者所处的房间内或外,甚至是不同的城市。然后将输入装置的输入信号传送到控制***。熟悉远程操纵、遥控和远程呈现外科手术的人将了解这种***和及其部件,此处不再赘述。
在一些实施例中,在手术前,通常需要对手术臂进行摆位操作,即拖动手术臂以对手术臂进行位置调整(如,调整手术臂的高度),但是在对手术臂进行位置调整的过程中,会存在一些问题影响调整手术臂的柔顺度。例如,在调整如图1所示的手术臂的第一关节1时,由于恒力弹簧的出力会随着弹簧的伸缩而发生变化,因此恒力弹簧产生的补偿力无法很好的补偿重力矩,从而导致手术臂推动困难。
示例性地,可以根据手术臂上目标关节的实际力矩和理论力矩确定调整阈值,之后根据目标关节的实际力矩和理论力矩之间的差值与调整阈值之间的大小关系,确定手术臂受到的推力的推力方向和推力大小。但是由于手术臂上目标关节存在较大的静摩擦,且静摩擦随着时间不断变化,而静摩擦影响实际力矩,从而导致实际力矩也随时间不断变化,如此,将导致不易根据手术臂上目标关节的实际力矩和理论力矩确定调整阈值,进而影响手术臂的调整。
为了解决上述技术问题。本申请提供一种手术臂柔顺调整方法,该方法中,电机能够在位置模式下运行,使得对手术臂进行位置调整的过程中不会受到恒力弹簧出力不均带来的影响,且在位置模式下运行的电机还可以克服各关节之间的最大静摩擦力,不需要用户手动克服,这样能够提高调整手术臂时的柔顺度。
参见图2,本申请实施例提供一种手术臂柔顺调整方法,包括S101-S103。
S101、获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差。
其中,目标关节为与待调整关节相邻且能够使得待调整关节沿预设方向移动的关节。实际编码器偏差为实际场景中手术臂上目标关节对应的电机编码器的值与关节编码器的值之间的差值。其中,将目标关节电机编码器当前的值与关节编码器当前的值相减,即可确定目标关节对应的电机编码器和关节编码器之间的实际编码器偏差。理论编码器偏差为理论场景中手术臂上目标关节对应的电机编码器的值与关节编码器的值之间的差值。
在一些实施例中,与待调整关节相邻且能够使得待调整关节沿预设方向移动的关节指的是,手术臂上位于待调整关节之后的多个关节中第一个能够使得待调整关节沿预设方向(如,竖直方向)移动的关节。
示例性地,如图1所示,若待调整关节为第一关节1,用户推动手术臂末端期望第一关节1向上运动,由于第二关节2只能绕其自身轴线(与第一关节1的轴线重合的数值的轴线)旋转,且该旋转不会引起手术臂末端的上下运动,因此第二关节2的运动不会影响第一关节1的向上运动,即推动力能够完整地经过第二关节2传递至第一关节1;而由于第三关节3的轴线是水平的,其绕自身轴线旋转时会导致手术臂末端的上下运动,因此,在第三关节3的摩擦大于第一关节1的摩擦的情况下,第三关节3的存在会导致推动力不能完整地传递至第一关节1;因此,目标关节为第三关节3。
在一些实施例中,电机编码器和关节编码器可以均设置在手术臂上对应的关节的电机上,也可以电机编码器设置在手术臂上对应的关节的电机上,关节编码器设置在手术臂上相邻两个关节之间,本申请实施例对此不作限定,下述实施例中以电机编码器和关节编码器均设置在手术臂上对应的关节的电机上为例进行示例性说明。其中,电机编码器用于对手术臂上对应的电机进行检测;关节编码器用于对手术臂上对应的关节的关节位置进行检测。电机编码器和电机之间可以设置有减速器,减速器用于将将电机的高速低扭力转化为低速高扭力,并改变电机输出轴的方向,以将动力传递到机电机编码器上。电机编码器、关节编码器和手术臂均与控制器耦接,控制器能够执行S101-S103,以控制手术臂上待调整关节对应的电机,完成手术臂的调整。
示例性地,电机编码器和关节编码器可以设置在手术臂的多个关节中位于竖直升降关节之后的关节上。如图1所示,第二关节2、第三关节3和第四关节4上均设置有电机编码器(图中未示出)和关节编码器(图中未示出),分别用于检测对应的关节。
需要说明的是,电机编码器可以与电机直接连接,也可以通过减速器与电机间接连接,本申请实施例对电机编码器与电机的连接方式不作限定。上述实施例中以电机编码器通过减速器与电机间接连接进行示例性说明。其中,电机编码器与电机的连接方式,以及关节编码器与对应的关节端部的连接方式均为现有技术,此处不再赘述。
如图3所示,在一些实施例中,获取手术臂上目标关节对应的电机编码器和关节编码器之间的理论编码器偏差可以包括S301-S304。
S301、获取手术臂上多个关节的关节位置以及静力学参数,并基于各关节的关节位置和静力学参数,确定目标关节对应的理论重力矩。
在一些实施例中,关节位置可以通过关节编码器检测得到,其中,关节位置可以指关节的角度大小、角度方向等。本申请实施例对此不作限定。各关节对应的静力学参数包括多个预设数值,例如:连杆质量、质心位置等。
示例性地,根据各关节的关节位置以及静力学参数确定目标关节对应的理论重力矩时,可以先通过各关节的静力学参数确定目标关节对应的连杆的重力分量,之后通过各关节的关节位置确定目标关节对应的连杆的力臂,最后通过力矩公式M=r×F(M为目标关节的理论重力矩,r是力臂,F是重力分量),确定目标关节对应的理论重力矩;还可以基于预设的动力学模型根据各关节的关节位置以及静力学参数确定目标关节对应的理论重力矩。本申请实施例对此不作限定。且根据各关节的关节位置以及静力学参数确定目标关节对应的理论重力矩为现有技术,此处不再赘述。
需要说明的是,手术臂具有不同的构型。其中,手术臂的构型不同,获取手术臂上多个关节对应的关节位置以及静力学参数时,多个关节对应的范围也不同。例如,多个关节可以包括目标关节以及位于目标关节之后能够影响目标关节的力矩的至少一个关节,多个关节还可以包括目标关节以及位于目标关节之后的所有关节。本申请实施例对此不作限定,下述实施例中以多个关节包括目标关节以及位于目标关节之后的所有关节为例进行示例性说明。
S302、基于目标关节对应的理论重力矩和弹性系数,确定目标关节对应的理论弹性偏差。
其中,弹性偏差用于指示电机编码器和关节编码器基于关节端部的弹性位移(又称为弹性形变)形成的偏差。目标关节的理论重力矩越大,目标关节的端部产生的弹性形变越大,电机编码器和关节编码器之间的偏差值越大,即目标关节对应的理论弹性偏差越大。需要说明的是,手术臂上关节的端部产生弹性位移时,会引起关节编码器的读数变化但不会影响电机编码器的读数,手术臂上关节的端部产生弹性位移会改变关节编码器的值但不会改变电机编码器的值。
在一些实施例中,弹性系数为确定值。如图4所示,本申请实施例提供的手术臂柔顺调整方法,还包括S401-S405。
S401、在手术臂为第一构型时,获取目标关节在预设角度对应的第一重力矩和第一编码器偏差。
S402、在手术臂为第二构型时,获取目标关节在预设角度对应的第二重力矩和第二编码器偏差。
在一些实施例中,手术臂的构型指手术臂的结构形式和组成部分的排列方式,也可以理为机械臂的外形和基本组成,即第一构型的手术臂与第二构型的手术臂的结构形式和组成部分的排列方式不同。
示例性地,执行S401后,可以对第一构型的手术臂上的至少一个关节的位置进行改变,以将手术臂从第一构型调整为第二构型。
在一些实施例中,第一编码器偏差指手术臂为第一构型且目标关节在预设角度时,目标关节对应的电机编码器的值和关节编码器的值之间的偏差值;第一重力矩指手术臂为第一构型且目标关节在预设角度时,目标关节对应的理论重力力矩。第二编码器偏差指手术臂为第二构型且目标关节在预设角度时,目标关节对应的电机编码器的值和关节编码器的值之间的偏差值,第二重力矩指手术臂为第二构型且目标关节在预设角度时,目标关节对应的理论重力力矩。
示例性地,可以通过第一构型的手术臂上各关节的关节位置和静力学参数,确定手术臂为第一构型时,目标关节在预设角度对应的第一重力矩。同理,可以通过第二构型的手术臂上各关节的关节位置和静力学参数,确定手术臂为第二构型时,目标关节在预设角度对应的第二重力矩。其中,确定目标关节的重力矩的方法与S301中确定目标关节对应的理论重力矩的方法相同且均为现有技术,此处不再赘述。
在一些实施例中,S401和S402中的预设角度可以是一个也可以多个,在预设角度为多个的情况下,多个预设角度按照角度大小排序后,相邻的两个预设角度之间的差为1度;即可以每隔1度获取目标关节对应的第一重力矩和第一编码器偏差。需要说明的是,预设角度均位于对应的关节的活动范围内。
S403、基于目标关节在预设角度对应的第一重力矩和第二重力矩之间的差值,确定目标关节对应的弹性力矩。
在一些实施例中,将目标关节在同一预设角度对应的第一重力矩和第二重力矩相减,得到第一重力矩和第二重力矩之间的差值,并将第一重力矩和第二重力矩之间的差值确定为目标关节对应的弹性力矩。
S404、基于目标关节在预设角度对应的第一编码器偏差和第二编码器偏差之间的差值,确定目标关节对应的弹性形变量。
在一些实施例中,将目标关节在预设角度对应的第一编码器偏差和第二编码器偏差相减,得到第一编码器偏差和第二编码器偏差之间的差值,并将第一编码器偏差和第二编码器偏差之间的差值确定为目标关节对应的弹性形变量。
S405、基于目标关节对应的弹性力矩和弹性形变量之间的商,得到目标关节对应的弹性系数。
在一些实施例中,利用目标关节对应的弹性力矩除以弹性形变量,得到弹性力矩和弹性形变量之间的商,并将弹性力矩和弹性形变量之间的商确定为目标关节对应的弹性系数。
S303、基于目标关节的关节位置和拟合函数,确定目标关节的理论杂散偏差。
其中,杂散偏差为电机编码器和关节编码器基于误差形成的偏差。该误差包括减速器的减速比与实际减速比之间的误差和编码器(如,关节编码器、电机编码器)安装过程带来的误差。
在一些实施例中,可以确定目标关节在预设角度的杂散偏差,之后将目标关节在预设角度的杂散偏差拟合为5次多项式等曲线,以得到拟合函数。如图5所示,本申请实施例提供的一种手术臂柔顺调整方法,还包括S501-S505。
S501、基于目标关节对应的第一重力矩,确定目标关节在预设角度对应的第一弹性偏差。
其中,第一弹性偏差为手术臂为第一构型时目标关节对应的弹性偏差。
S502、基于目标关节对应的第二重力矩,确定目标关节在预设角度对应的第二弹性偏差。
其中,第二样本弹性偏差为手术臂为第二构型时目标关节对应的弹性偏差。
在一些实施例中,弹性偏差跟重力矩成正比,可以根据弹性力学关系和第一重力矩确定第一弹性偏差,同理,可以根据弹性力学关系和第二重力矩确定第二弹性偏差。
需要说明的是,根据目标关节的重力矩确定目标关系在预设角度对应的弹性偏差的方法为现有技术,本申请实施例对此不作限定。
S503、基于目标关节对应的第一编码器偏差与第一弹性偏差之间的差值,得到目标关节在预设角度对应的第一杂散偏差。
S504、基于目标关节对应的第二编码器偏差与第二弹性偏差之间的差值,得到目标关节在预设角度对应的第二杂散偏差。
在一些实施例中,编码器偏差包括弹性偏差和杂散偏差,将编码器偏差与弹性偏差相减,即可得到杂散偏差。
示例性地,将目标关节对应的第一编码器偏差与第一弹性偏差相减,得到第一编码器偏差与第一弹性偏差之间的差值,并将第一编码器偏差与第一弹性偏差之间的差值确定为目标关节在预设角度对应的第一杂散偏差。将目标关节对应的第二编码器偏差与第二弹性偏差相减,得到第二编码器偏差与第二弹性偏差之间的差值,并将第二编码器偏差与第二弹性偏差之间的差值确定为目标关节在预设角度对应的第二杂散偏差。
S505、对目标关节对应的第一杂散偏差和第二杂散偏差进行拟合,得到拟合函数。
需要注意的是,此处说的第一杂散偏差和第二杂散偏差只是示例,表示不同位置处的杂散偏差,并不是说只用两个杂散偏差就能得到拟合函数。实际上,需要在关节角度范围内,获取足够多的杂散偏差,以得到足够准确的拟合函数。
在一些实施例中,若预设角度为多个,则对目标关节在多个预设角度分别对应的第一杂散偏差和第二杂散偏差进行拟合,得到拟合函数。
S304、基于目标关节对应的理论弹性偏差和理论杂散偏差的和,确定目标关节对应的理论编码器偏差。
在一些实施例中,将目标关节对应的理论弹性偏差和理论杂散偏差相加,得到理论弹性偏差和理论杂散偏差的和,并将理论弹性偏差和理论杂散偏差的和确定为目标关节对应的理论编码器偏差。
为了便于获取各关节在当前位置时的实际力矩和理论力矩,且为了提高获取的数据的准确性,避免在获取数据的过程中关节的位置发生变化。在一些实施例中,可以在获取各关节在当前位置时的实际力矩和理论力矩之前,对手术臂上目标关节以及位于目标关节之后的关节进行锁定。
如图6所示,在一些实施例中,在获取手术臂的多个关节在当前位置时各自对应的实际力矩和理论力矩之前,本申请实施例提供的手术臂柔顺控制方法还包括S601-S602。
S601、获取用户输入的操作信号。
其中,操作信号用于指示用户对手术臂施加外力。
在一些实施例中,用户可以通过对手术臂施加外力,例如,拉动固定有手术器械的臂杆(如,图1中的第二臂杆6),以生成操作信号并传输至患者手术平台。
在一些实施例中,操作信号的获取方式可以是通过电机编码器和关节编码器之间的偏差来得到,也可以是通过设置力传感器来获得;本申请实施例对此不作限定。
S602、基于操作信号,锁定手术臂上的目标关节以及位于目标关节之后的关节。
其中,位于目标关节之后的其他关节指与目标关节相连或间接相连,且远离待调整关节的所有关节。
在一些实施例中,患者手术平台接收到用户输入的操作信号后,对手术臂上的目标关节以及位于目标关节之后的关节均进行锁定,即将手术臂上的目标关节以及位于目标关节之后的关节固定在当前位置,使得手术臂上的目标关节以及位于目标关节之后的关节无法进行位移。
示例性地,用户通过向上或向下拉动图1中的手术臂的第一关节1后,将生成操作信号并输入至患者手术平台;患者手术平台接收到操作信号后,响应于操作信号,将对图1中的第三关节3、第四关节4和第五关节5进行锁定,使得第三关节3、第四关节4和第五关节5固定在当前位置,无法进行位移。
可以理解的是,这样能够在手术臂上的目标关节以及位于目标关节之后的关节处于锁定状态的情况下执行S101或S301-S304,提高得到的各关节在当前位置时各自对应的电机的电流的精确度,从而提高得到的目标关节的实际力矩和理论力矩的精确度。
S102、基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值。
在一些实施例中,基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值包括:
若调整差大于第一阈值,确定待调整关节受到的推力的推力方向为第一方向,并确定调整差为待调整关节受到的推力的推力值。
在一些实施例中,基于目标关节对应的实际编码器偏差和理论编码器偏差之间的调整差,确定待调整关节受到的推力的推力方向和推力值包括:
若调整差小于第二阈值,确定关节受到的推力的推力方向为第二方向,并确定调整差为待调整关节受到的推力的推力值。
其中,第二方向与第一方向相反。
在一些实施例中,手术臂处于自由状态时目标关节对应的关节编码器和电机编码器之间的偏差值是稳定的。若用户调整手术臂的位置,则用户需要施加一定的力至手术臂上,使得手术臂脱离自由状态。此时,目标关节对应的关节编码器和电机编码器之间的实际编码器偏差将会发生变化,即目标关节对应的所述实际编码器偏差和所述理论编码器偏差之间将产生调整差。若调整差大于第一阈值,则确定待调整关节受到的推力的推力方向为第一方向。其中,第一方向可以是向下。若调整差小于第二阈值,则确定待调整关节受到的推力的推力方向为第二方向。由于第二方向与第一方向相反,因此若第一方向为向下,则第二方向为向上。
需要说明的是,第一阈值和第二阈值均为预设数值,可以根据实际需求进行调整。且第一阈值和第二阈值可以相等,如,第一阈值和第二阈值均为0;第一阈值和第二阈值也可以不相等,如,第一阈值为正数,第二阈值为负数。本申请实施例对此不作限定。
S103、基于推力方向和推力值,确定待调整关节对应的电机的目标位置,并根据目标位置生成对应的控制指令,控制指令用于指示各待调整关节对应的电机移动至目标位置,以使得待调整关节按照对应推力值沿推力方向移动。
在一些实施例中,电机的目标位置用于指示电机的转子停止的位置。
示例性地,患者手术平台确定待调整关节对应的电机的目标位置后,可以根据待调整关节对应的电机的目标位置生成对应的控制指令,并将控制指令发送至对应的电机的控制器。电机的控制器接收到控制指令后,响应于控制指令使得电机从当前位置移动至目标位置,从而使得待调整关节能够在推力的作用下实现位移,以完成手术臂的调整。
如图7所示,在一些实施例中,基于待调整关节对应的推力方向和推力值,确定待调整关节对应的电机的目标位置包括S701-S703。
S701、基于待调整关节对应的推力值与预设系数的乘积,确定待调整关节对应的指令速度。
在一些实施例中,预设系数为预设数值,可以根据实际需求确定,本申请实施例对此不作限定。指令速度用于指示待调整关节的移动速度。其中,预设系数越大,待调整关节的移动速度越快,即待调整关节对应的指令速度越快;预设系数越小,待调整关节的移动速度越慢,即待调整关节对应的指令速度越慢。
示例性地,将待调整关节对应的推力值与预设系数相乘,以得到待调整关节对应的推力值与预设系数的乘积,并根据待调整关节对应的推力值与预设系数的乘积确定待调整关节对应的指令速度。
S702、基于待调整关节对应的指令速度与预设控制周期的乘积,得到待调整关节对应的电机的位移增量。
在一些实施例中,位移增量指待调整关节在受到的推力的作用下需要移动的距离。
示例性地,将待调整关节对应的指令速度与预设控制周期相乘,得到待调整关节对应的指令速度与预设控制周期的乘积;根据待调整关节对应的指令速度与预设控制周期的乘积,得到待调整关节对应的电机的位移增量。
S703、基于电机的位移增量与电机的当前位移量的和,得到待调整关节对应的电机的目标位置。
在一些实施例中,位移增量指待调整关节在受到的推力的作用下需要移动的距离。
示例性地,将电机的位移增量与电机的当前位移量相加,得到电机的位移增量与电机的当前位移量的和,根据电机的位移增量与电机的当前位移量的和,得到待调整关节对应的电机的目标位置。其中,由于执行S102得到的目标关节对应的调整差可以是正值也可以是负值,如此,基于调整差得到的待调整关节受到的推力的推力值既可以是正值也可以是负值。因此,执行S701-S703时,得到的电机的位移增量将为正值或负值;在电机的位移增量为正值时,根据电机的位移增量与电机的当前位移量的和确定待调整关节对应的电机的目标位置后,可以控制电机沿第三方向移动至目标位置;在电机的位移增量为负值时,根据电机的位移增量与电机的当前位移量的和确定待调整关节对应的电机的目标位置后,可以控制电机沿第四方向移动至目标位置。第三方向和第四方向相反,例如,在电机的位移增量为正值时,电机可以沿顺时针方向转动至目标位置;在电机的位移增量为负值时,电机可以沿逆时针方向转动至目标位置。
需要说明的是,可以执行S701-S702确定电机的位移增量后,基于电机的位移增量生成控制指令,通过控制指令指示电机移动位移增量对应的位移距离,使得待调整关节进行移动,以完成手术臂的调整。也可以执行S701-S703确定电机的目标位置后,基于电机的目标位置生成控制指令,通过控制指令指示电机移动至目标位置,使得待调整关节进行位移,完成手术臂的调整。本申请实施例对此不作限定。上述实施例以确定电机的目标位置后,基于电机的目标位置生成控制指令为例进行示例性说明。
可以理解的是,本申请实施例中手术臂的目标关节的电机编码器和关节编码器各自的值与时间无关,即电机编码器和关节编码器各自的值不会随着时间不断变化,如此,根据关节编码器和电机编码器之间的理论编码器偏差和实际编码器偏差确定手术臂受到的推力的推力大小和推力方向更准确。
图8示出了又一种手术臂柔顺调整方法的流程示意图,如图8,本申请还提供一种手术臂柔顺调整方法,包括:
S801、在用户调整待调整关节时,锁定与待调整关节相邻且能够使得手术臂上下运动的目标关节及位于目标关节之后的其他关节。
在一些实施例中,用户调整待调整关节时,将输入操作信号至患者手术平台,患者手术平台接收到操作信号后,将锁定与待调整关节相邻且能够使得手术臂上下运动的关节及位于该关节之后的其他关节。
S802、在关节的活动范围内,每隔1度采样手术臂在当前构型(第一构型)下关节编码器和电机编码器之间的编码器偏差(第一编码器偏差);每隔1度采样手术臂在新的构型(第二构型)下关节编码器和电机编码器之间的编码器偏差(第二编码器偏差)。
在一些实施例中,将手术臂的各关节处于不同位置上,以更改手术臂的构型,使得手术臂能够从当前构型更改为新的构型。
S803、将手术臂在当前构型和新的构型时对应的重力矩差值确定为弹性力矩,将手术臂在当前构型和新的构型时对应的编码器偏差之间的差值确定为弹性形变量,利用弹性力矩除以弹性形变量得到目标关节的弹性系数。
S804、根据手术臂在当前构型和新的构型时对应的重力矩,确定目标关节在当前构型和新的构型时分别对应的弹性偏差,并将目标关节在当前构型和新的构型时的编码器偏差与弹性偏差的差值确定为杂散偏差,之后将杂散偏差拟合为目标关节的5次多项式函数,得到拟合函数。
S805、实时采集目标关节及其后所有关节的关节位置,根据关节位置和手术臂的静力学参数确定目标关节的理论重力矩,之后基于目标关节的理论重力矩确定目标关节对应的理论弹性偏差,并根据目标关节的关节位置和拟合函数,确定目标关节的理论杂散偏差;之后将理论弹性偏差和理论杂散偏差的和确定为目标关节对应的理论编码器偏差。
在一些实施例中,根据电机或者关节编码器的值确定目标关节的关节位置。
S806、实时采集目标关节对应的实际编码器偏差,并确定实际编码器偏差和理论编码器偏差之间的差值(调整差)。
S807、根据实际编码器偏差和理论编码器偏差之间的差值判断用户的推力值和推力方向。
在一些实施例中,若实际编码器偏差和理论编码器偏差之间的差值大于预设标定值,则确定推力方向为向下拉手术臂(又称为第一方向);若两者的差值小于预设标定值,则确定推力方向为往上推手术臂(又称为第二方向);将各关节的理论力矩和实际力矩的差值作为推力值。
S808、将推力值与预设系数相乘,得到待调整关节的指令速度,之后将该指令速度与预设周期相乘以控制周期,得到位移增量,将位移增量添加在电机的当前位移上,作为指令位置,下发到电机执行。
与前述的手术臂柔顺调整方法的实施例相对应,本申请还提供了手术臂柔顺调整装置的实施例。
参照图9,本申请实施例提供一种手术臂柔顺调整装置,包括:
获取模块901,用于获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差;所述目标关节为与待调整关节相邻且能够使得所述待调整关节沿预设方向移动的关节;
处理模块902,用于基于所述目标关节对应的所述实际编码器偏差和所述理论编码器偏差之间的调整差,确定所述待调整关节受到的推力的推力方向和推力值;还用于基于所述推力方向和所述推力值,确定所述待调整关节对应的所述电机的目标位置;
生成模块903,用于根据所述目标位置生成对应的控制指令,所述控制指令用于指示各所述待调整关节对应的电机移动至所述目标位置,以使得所述待调整关节按照对应所述推力值沿所述推力方向移动。
在一些实施例中,获取模块901,还用于获取所述手术臂上多个关节的关节位置以及静力学参数;
处理模块902,还用于基于各所述关节的所述关节位置和所述静力学参数,确定所述目标关节对应的理论重力矩;还用于基于所述目标关节对应的所述理论重力矩和所述弹性系数,确定所述目标关节对应的理论弹性偏差;所述弹性偏差用于指示所述电机编码器和所述关节编码器基于所述关节端部的弹性位移形成的偏差;还用于基于所述目标关节的所述关节位置和拟合函数,确定所述目标关节的理论杂散偏差;所述杂散偏差为所述电机编码器和所述关节编码器基于误差形成的偏差;还用于基于所述目标关节对应的所述理论弹性偏差和所述理论杂散偏差的和,确定所述目标关节对应的所述理论编码器偏差。
在一些实施例中,获取模块901,还用于在所述手术臂为第一构型时,获取所述目标关节在预设角度对应的第一重力矩和第一编码器偏差;还用于在所述手术臂为第二构型时,获取所述目标关节在所述预设角度对应的第二重力矩和第二编码器偏差;
处理模块902,还用于基于所述目标关节在所述预设角度对应的所述第一重力矩和所述第二重力矩之间的差值,确定所述目标关节对应的弹性力矩;还用于基于所述目标关节在所述预设角度对应的所述第一编码器偏差和所述第二编码器偏差之间的差值,确定所述目标关节对应的弹性形变量;还用于基于所述目标关节对应的所述弹性力矩和所述弹性形变量之间的商,得到所述目标关节对应的所述弹性系数。
在一些实施例中,处理模块902,还用于基于所述目标关节对应的所述第一重力矩,确定所述目标关节在所述预设角度对应的第一弹性偏差;所述第一弹性偏差为所述手术臂为所述第一构型时所述目标关节对应的弹性偏差;还用于基于所述目标关节对应的所述第二重力矩,确定所述目标关节在所述预设角度对应的第二弹性偏差;所述第二样本弹性偏差为所述手术臂为所述第二构型时所述目标关节对应的弹性偏差;还用于基于所述目标关节对应的所述第一编码器偏差与所述第一弹性偏差之间的差值,得到所述目标关节在所述预设角度对应的第一杂散偏差;还用于基于所述目标关节对应的所述第二编码器偏差与所述第二弹性偏差之间的差值,得到所述目标关节在所述预设角度对应的第二杂散偏差;还用于对所述目标关节对应的所述第一杂散偏差和所述第二杂散偏差进行拟合,得到所述拟合函数。
在一些实施例中,处理模块902,还用于若所述调整差大于预设标定值,确定所述待调整关节受到的所述推力的所述推力方向为第一方向,并确定所述调整差为所述待调整关节受到的所述推力的所述推力值。
在一些实施例中,处理模块902,还用于若所述调整差小于预设标定值,确定所述关节受到的所述推力的所述推力方向为第二方向,并确定所述调整差为所述待调整关节受到的所述推力的所述推力值;所述第二方向与所述第一方向相反。
在一些实施例中,处理模块902,还用于基于所述待调整关节对应的所述推力值与预设系数的乘积,确定所述待调整关节对应的指令速度;还用于基于所述待调整关节对应的所述指令速度与预设控制周期的乘积,得到所述待调整关节对应的所述电机的位移增量;还用于基于所述电机的所述位移增量与所述电机的当前位移量的和,得到所述待调整关节对应的所述电机的所述目标位置。
在一些实施例中,获取模块901,还用于获取用户输入的操作信号;所述操作信号用于指示所述用户对所述手术臂施加外力;
处理模块902,还用于基于所述操作信号,锁定所述手术臂上的所述目标关节以及位于所述目标关节之后的关节。
如图10所示,本申请实施例提供的一种电子设备可以包括:处理器(processor)1010、通信接口(Communications Interface)1020、存储器(memory)1030和通信总线1040,其中,处理器1010,通信接口1020,存储器1030通过通信总线1040完成相互间的通信。处理器1010可以调用存储器1030中的逻辑指令,以执行上述各方法。
此外,上述的存储器1030中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述开关设备机械状态监测方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
又一方面,本发明还提供一种手术机器人,包括手术臂、电机编码器、关节编码器以及如上述实施例提供的控制设备;所述电机编码器设置在所述手术臂上对应的关节的电机上,所述关节编码器设置在所述手术臂上对应的所述关节的端部;所述电机编码器、所述关节编码器和所述手术臂均与所述控制设备耦接,所述电机编码器和所述关节编码器均用于对所述手术臂上对应的所述关节进行检测,所述控制设备中的所述处理器执行时用于实现上述任一项实施例方法的步骤。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (11)
1.一种手术臂柔顺调整方法,其特征在于,包括:
获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差;所述目标关节为与待调整关节相邻且能够使得所述待调整关节沿预设方向移动的关节;
基于所述目标关节对应的所述实际编码器偏差和所述理论编码器偏差之间的调整差,确定所述待调整关节受到的推力的推力方向和推力值;
基于所述推力方向和所述推力值,确定所述待调整关节对应的所述电机的目标位置,并根据所述目标位置生成对应的控制指令,所述控制指令用于指示各所述待调整关节对应的电机移动至所述目标位置,以使得所述待调整关节按照对应所述推力值沿所述推力方向移动。
2.根据权利要求1所述的手术臂柔顺调整方法,其特征在于,所述获取手术臂上目标关节对应的电机编码器和关节编码器之间的理论编码器偏差,包括:
获取所述手术臂上多个关节的关节位置以及静力学参数,并基于各所述关节的所述关节位置和所述静力学参数,确定所述目标关节对应的理论重力矩;
基于所述目标关节对应的所述理论重力矩和弹性系数,确定所述目标关节对应的理论弹性偏差;所述弹性偏差用于指示所述电机编码器和所述关节编码器基于所述关节端部的弹性位移形成的偏差;
基于所述目标关节的所述关节位置和拟合函数,确定所述目标关节的理论杂散偏差;所述杂散偏差为所述电机编码器和所述关节编码器基于误差形成的偏差;
基于所述目标关节对应的所述理论弹性偏差和所述理论杂散偏差的和,确定所述目标关节对应的所述理论编码器偏差。
3.根据权利要求2所述的手术臂柔顺调整方法,其特征在于,所述方法还包括:
在所述手术臂为第一构型时,获取所述目标关节在预设角度对应的第一重力矩和第一编码器偏差;
在所述手术臂为第二构型时,获取所述目标关节在所述预设角度对应的第二重力矩和第二编码器偏差;
基于所述目标关节在所述预设角度对应的所述第一重力矩和所述第二重力矩之间的差值,确定所述目标关节对应的弹性力矩;
基于所述目标关节在所述预设角度对应的所述第一编码器偏差和所述第二编码器偏差之间的差值,确定所述目标关节对应的弹性形变量;
基于所述目标关节对应的所述弹性力矩和所述弹性形变量之间的商,得到所述目标关节对应的所述弹性系数。
4.根据权利要求3所述的手术臂柔顺调整方法,其特征在于,所述方法还包括:
基于所述目标关节对应的所述第一重力矩,确定所述目标关节在所述预设角度对应的第一弹性偏差;所述第一弹性偏差为所述手术臂为所述第一构型时所述目标关节对应的弹性偏差;
基于所述目标关节对应的所述第二重力矩,确定所述目标关节在所述预设角度对应的第二弹性偏差;所述第二样本弹性偏差为所述手术臂为所述第二构型时所述目标关节对应的弹性偏差;
基于所述目标关节对应的所述第一编码器偏差与所述第一弹性偏差之间的差值,得到所述目标关节在所述预设角度对应的第一杂散偏差;
基于所述目标关节对应的所述第二编码器偏差与所述第二弹性偏差之间的差值,得到所述目标关节在所述预设角度对应的第二杂散偏差;
对所述目标关节对应的所述第一杂散偏差和所述第二杂散偏差进行拟合,得到所述拟合函数。
5.根据权利要求2所述的手术臂柔顺调整方法,其特征在于,所述基于所述目标关节对应的所述实际编码器偏差和所述理论编码器偏差之间的调整差,确定所述待调整关节受到的推力的推力方向和推力值,包括:
若所述调整差大于第一阈值,确定所述待调整关节受到的所述推力的所述推力方向为第一方向,并确定所述调整差为所述待调整关节受到的所述推力的所述推力值。
6.根据权利要求5所述的手术臂柔顺调整方法,其特征在于,所述基于所述目标关节对应的所述实际编码器偏差和所述理论编码器偏差之间的调整差,确定所述待调整关节受到的推力的推力方向和推力值,包括:
若所述调整差小于第二阈值,确定所述关节受到的所述推力的所述推力方向为第二方向,并确定所述调整差为所述待调整关节受到的所述推力的所述推力值;所述第二方向与所述第一方向相反。
7.根据权利要求1-6任一项所述的手术臂柔顺调整方法,其特征在于,所述基于所述推力方向和所述推力值,确定所述待调整关节对应的所述电机的目标位置,包括:
基于所述待调整关节对应的所述推力值与预设系数的乘积,确定所述待调整关节对应的指令速度;
基于所述待调整关节对应的所述指令速度与预设控制周期的乘积,得到所述待调整关节对应的所述电机的位移增量;
基于所述位移增量与所述电机的当前位移量的和,得到所述待调整关节对应的所述电机的目标位置。
8.根据权利要求1所述的手术臂柔顺调整方法,其特征在于,所述方法还包括:
获取用户输入的操作信号;所述操作信号用于指示所述用户对所述手术臂施加外力;
基于所述操作信号,锁定所述手术臂上的所述目标关节以及位于所述目标关节之后的关节。
9.一种手术臂柔顺调整装置,其特征在于,包括:
获取模块,用于获取手术臂上目标关节对应的电机编码器和关节编码器之间的实际编码器偏差和理论编码器偏差;所述目标关节为与待调整关节相邻且能够使得所述待调整关节沿预设方向移动的关节;
处理模块,用于基于所述目标关节对应的所述实际编码器偏差和所述理论编码器偏差之间的调整差,确定所述待调整关节受到的推力的推力方向和推力值;还用于基于所述推力方向和所述推力值,确定所述待调整关节对应的所述电机的目标位置;
生成模块,用于根据所述目标位置生成对应的控制指令,所述控制指令用于指示各所述待调整关节对应的电机移动至所述目标位置,以使得所述待调整关节按照对应所述推力值沿所述推力方向移动。
10.一种控制设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-8任一项所述的方法的步骤。
11.一种手术机器人,其特征在于,包括手术臂、电机编码器、关节编码器以及如权利要求10所述的控制设备;
所述电机编码器设置在所述手术臂上对应的关节的电机上,所述关节编码器设置在所述手术臂上对应的所述关节的端部;所述电机编码器、所述关节编码器和所述手术臂均与所述控制设备耦接,所述电机编码器和所述关节编码器均用于对所述手术臂上对应的所述关节进行检测,所述控制设备中的处理器执行时用于实现如权利要求1-8任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410458378.XA CN118319483A (zh) | 2024-04-16 | 2024-04-16 | 手术臂柔顺调整方法及使用其的手术机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410458378.XA CN118319483A (zh) | 2024-04-16 | 2024-04-16 | 手术臂柔顺调整方法及使用其的手术机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118319483A true CN118319483A (zh) | 2024-07-12 |
Family
ID=91771576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410458378.XA Pending CN118319483A (zh) | 2024-04-16 | 2024-04-16 | 手术臂柔顺调整方法及使用其的手术机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118319483A (zh) |
-
2024
- 2024-04-16 CN CN202410458378.XA patent/CN118319483A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110325331B (zh) | 医疗支撑臂***和控制装置 | |
US9283049B2 (en) | Control system configured to compensate for non-ideal actuator-to-joint linkage characteristics in a medical robotic system | |
EP2465461B1 (en) | Medical robotic system with functionality to determine and display a distance indicated by movement of a tool robotically manipulated by an operator | |
US8740882B2 (en) | Medical robotic system and method of controlling the same | |
CN103237633B (zh) | 主操作输入装置以及主-从机械手 | |
RU2741469C1 (ru) | Роботизированная хирургическая система | |
CN108366835B (zh) | 具有独立的侧倾、俯仰和偏摆缩放的机器人外科手术*** | |
TWI695765B (zh) | 機械手臂 | |
EP2104455A2 (en) | Haptic feedback medical scanning methods and systems | |
KR20150045469A (ko) | 수술용 장착 플랫폼의 사용자 개시 브레이크-어웨이 클러칭 | |
CN108210078B (zh) | 手术机器人*** | |
EP4176835A1 (en) | Master-slave motion control method, robot system, device, and storage medium | |
EP2706943A1 (en) | Medical master/slave type device for minimally invasive surgery | |
KR20230058115A (ko) | 수술 로봇에 의한 내시경의 제어 | |
EP3980226A1 (en) | Estimating joint friction and tracking error of a robotics end effector | |
CN118319483A (zh) | 手术臂柔顺调整方法及使用其的手术机器人 | |
CN118356253A (zh) | 手术臂调整方法及使用其的手术机器人 | |
CN118319482A (zh) | 手术臂柔顺调整方法、装置、设备以及手术机器人 | |
Sun et al. | Development of a Novel Hand-eye Coordination Algorithm for Robot Assisted Minimally Invasive Surgery | |
CN118121314A (zh) | 手术机器人的重力补偿方法、***及手术机器人 | |
CN117961854A (zh) | 主控制臂运动优化方法、装置、手术机器人及存储介质 | |
CN118217018A (zh) | 手术机器人的运动提示方法、装置及手术机器人 | |
CN117426876A (zh) | 医疗设备及调整医疗设备的主从姿态关系的方法 | |
JPH0871071A (ja) | 手術用マニピュレータシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |