手术机器人、计算机可读存储介质及控制装置的制作方法

文档序号:31701683发布日期:2022-10-01 08:35阅读:37来源:国知局
手术机器人、计算机可读存储介质及控制装置的制作方法
手术机器人、计算机可读存储介质及控制装置
1.本技术是2020年12月15日申请的申请号为cn202011472838.2、申请名称为“手术机器人及其控制方法、控制装置”的发明申请的分案申请,该案的全文以引用的方式并入本技术中。
技术领域
2.本发明涉及医疗器械领域,特别是涉及一种手术机器人、计算机可读存储介质及控制装置。


背景技术:

3.微创手术是指利用腹腔镜、胸腔镜等现代医疗器械及相关设备在人体腔体内部施行手术的一种手术方式。相比传统手术方式微创手术具有创伤小、疼痛轻、恢复快等优势。
4.随着科技的进步,微创手术机器人技术逐渐成熟,并被广泛应用。手术机器人包括主操作台及从操作设备,从操作设备包括多个操作臂,这些操作臂包括具有图像末端器械的相机臂及具有操作末端器械的手术臂。主操作台包括显示器及手柄。医生在显示器显示的由相机臂提供的视野下操作手柄控制相机臂或手术臂运动。
5.然而,在手柄控制下,手术臂的部分部位容易移动至相机臂的视野以外,手术臂例如其末端器械在位于视野以外的情况容易脱离医生的掌控,进而可能对患者造成意外伤害。


技术实现要素:

6.基于此,有必要提供一种能够限定手术臂的目标部位在相机臂所提供的视野下进行安全、可靠运动的手术机器人及其控制方法、控制装置。
7.一方面,本发明提供了一种的控制方法,所述手术机器人具有操作臂,所述操作臂包括相机臂及手术臂,所述控制方法包括如下步骤:获取所述相机臂的可视区域;获取所述手术臂当前位于所述可视区域内的目标部位;基于所述可视区域限定所述目标部位在所述可视区域内运动。
8.其中,获取所述相机臂的可视区域的步骤包括:实时获取所述相机臂当前被配置的相机参数;根据所述相机参数获得所述可视区域。
9.其中,所述相机参数包括视场角及景深,根据所述相机参数获得所述可视区域的步骤包括:基于所述视场角和所述景深获得所述可视区域。
10.其中,所述手术臂具有一个以上可被配置成所述目标部位的特征部位,获取所述手术臂当前位于所述可视区域内的目标部位的步骤包括:获取所述手术臂可被配置成所述目标部位的特征部位;判断所述特征部位当前是否位于所述可视区域内;令判断出当前位于所述可视区域内的所述特征部位为第一部位,基于所述第一部位获取所述目标部位。
11.其中,判断所述特征部位当前是否位于所述可视区域内的步骤包括:获取所述相机臂采集的所述可视区域的操作图像;识别所述特征部位是否位于所述操作图像内;在所
述特征部位位于所述操作图像内时,判断出所述特征部位位于所述可视区域内。
12.其中,判断所述特征部位当前是否位于所述可视区域内的步骤包括:获取所述手术臂的运动学模型及所述手术臂中各关节的关节变量;结合所述运动学模型及所述关节变量确定所述特征部位在参考坐标系的位置;转换所述可视区域为在参考坐标系的位置范围;判断所述特征部位的位置是否位于所述位置范围内;在所述特征部位位于所述位置范围内时,判断出所述特征部位位于所述可视区域内。
13.其中,基于所述第一部位获取配置的所述目标部位的步骤包括:根据所述第一部位生成含有关联于可供配置成所述目标部位的特征部位的控件的配置界面;获取通过所述配置界面的控件配置的所述目标部位。
14.其中,根据所述第一部位生成含有关联于可供配置成所述目标部位的特征部位的控件的配置界面的步骤包括:获取所述手术臂的模型图像;生成含有所述模型图像的配置界面,并在所述模型图像上对应所述第一部位的位置生成含有关联于可供配置成所述目标部位的特征部位的控件。
15.其中,所述模型图像是所述手术臂的投影图像或计算机模型图像。
16.其中,基于所述可视区域限定所述目标部位在所述可视区域内运动的步骤包括:判断所述目标部位是否达到所述可视区域的边界;判断出所述目标部位达到所述可视区域的边界时,判断所述目标部位下一时刻的运动方向是否朝向所述可视区域外;判断出所述目标部位下一时刻的运动方向朝向所述可视区域外时,禁止所述目标部位朝向所述可视区域外运动。
17.其中,禁止所述目标部位朝向所述可视区域外运动包括禁止所述目标部位朝向所述可视区域外运动或禁止所述手术臂运动。
18.其中,判断所述目标部位是否达到所述可视区域的边界的步骤包括:获取所述相机臂采集的所述可视区域的操作图像;识别所述目标部位是否达到所述操作图像的边缘;在所述目标部位达到所述操作图像的边缘时,判断出所述目标部位达到所述可视区域的边界。
19.其中,判断所述目标部位是否达到所述可视区域的边界的步骤包括:获取所述手术臂的运动学模型及所述手术臂中各关节的关节变量;结合所述运动学模型及所述关节变量确定所述目标部位在参考坐标系的位置;转换所述可视区域为在参考坐标系的位置范围;判断所述目标部位的位置是否达到所述位置范围的边界;在所述目标部位达到所述位置范围的边界时,判断出所述目标部位达到所述可视区域的边界。
20.其中,判断所述目标部位下一时刻的运动方向是否朝向所述可视区域外的步骤包括:获取所述目标部位在达到所述可视区域的边界时的当前位置;获取所述目标部位在下一时刻的目标位置;根据所述目标位置和所述当前位置确定所述目标部位下一时刻的运动方向是否朝向所述可视区域外。
21.其中,获取所述目标部位在达到所述可视区域的边界时的当前位置的步骤包括:获取所述手术臂的运动学模型及当前时刻下所述手术臂中各关节的关节变量;根据所述运动学模型及各所述关节变量计算所述目标部位在当前时刻下的所述当前位置。
22.其中,所述手术机器人包括运动输入部,获取所述目标部位在下一时刻的目标位置的步骤包括:获取所述运动输入部输入的目标位姿信息;根据所述目标位姿信息计算所
述手术臂中各关节的关节变量;获取所述手术臂的运动学模型;结合所述运动学模型及各所述关节变量确定所述目标部位在下一时刻的所述目标位置。
23.其中,基于所述可视区域限定所述目标部位在所述可视区域内运动的步骤包括:获取配置的位于所述可视区域内的安全运动区域,令所述安全运动区域内的区域为第一区域,令所述安全运动区域以外、所述可视区域以内的区域为第二区域;根据所述目标部位在所述第一区域及所述第二区域内位置及运动方向的变化而改变所述目标部位的运动速度。
24.其中,根据所述目标部位在所述第一区域及所述第二区域内位置及运动方向的变化而改变所述目标部位的运动速度的步骤包括:在所述目标部位从所述第一区域的边界向所述第二区域的外边界运动时,减小所述目标部位在相应方向的运动速度;在所述目标部位从所述第二区域的外边界向所述第一区域的边界运动时,增大所述目标部位在相应方向的运动速度。
25.其中,所述目标部位在相应方向的运动速度跟所述目标部位与所述第二区域的外边界之间的距离正相关。
26.其中,所述目标部位在相应方向的运动速度跟所述目标部位与所述第二区域的外边界之间的距离呈线性的正相关。
27.其中,所述手术机器人包括用于输入控制所述手术臂运动的控制指令的机械式的运动输入部,基于所述可视区域限定所述目标部位在所述可视区域内运动的步骤包括:获取位于所述可视区域内的安全运动区域,令所述安全运动区域内的区域为第一区域,令所述安全运动区域以外、所述可视区域以内的区域为第二区域;在所述目标部位从所述第一区域的边界向所述第二区域的外边界运动时,增大所述运动输入部在相应方向移动时的阻力;在所述目标部位从所述第二区域的外边界向所述第一区域的边界运动时,减小所述运动输入部在相应方向移动时的阻力。
28.其中,所述运动输入部在相应方向移动时的阻力跟所述目标部位与所述第二区域的外边界之间的距离负相关。
29.其中,所述运动输入部在相应方向移动时的阻力跟所述目标部位与所述第二区域的外边界之间的距离呈线性的负相关。
30.其中,所述可视区域是由所述相机臂的视场角及景深所确定的平面区域。
31.其中,所述可视区域是由所述相机臂的视场角及景深所确定的立体空间。
32.其中,所述相机臂具有相机,所述相机的参数可调,基于所述可视区域限定所述目标部位在所述可视区域内运动的步骤之前,还包括:获取至少部分位于所述可视区域外的扩大运动区域;基于所述可视区域和所述扩大运动区域调节所述相机的参数生成新可视区域以覆盖所述可视区域及所述扩大运动区域,所述相机的参数包括焦距及光圈,所述焦距与视场角相关,所述光圈与景深相关。
33.其中,所述相机臂具有相机,所述相机的参数可调,获取配置的所述手术臂当前位于所述可视区域内的目标部位的步骤包括:判断所述目标部位是否位于所述可视区域内;如果所述目标部位不在所述可视区域,基于各目标部位的位置调节所述相机的参数生成新可视区域以覆盖所述最大运动区域,所述相机的参数包括焦距及/或光圈,所述焦距与视场角相关,所述光圈与景深相关。
34.其中,调节所述相机的参数生成新可视区域以覆盖各所述目标部位的步骤包括:
获取所述手术臂的运动学模型及所述手术臂中各关节的关节变量;结合所述运动学模型及所述关节变量确定所述目标部位在参考坐标系的位置;根据各所述目标部位的位置构建最大运动区域;基于所述最大运动区域调节所述相机的参数以生成所述新可视区域以覆盖各所述目标部位。
35.其中,所述目标部位可选自所述手术臂的关节及/或末端器械。
36.其中,所述目标部位是所述关节及/或所述末端器械上的一个点、所述关节及/或所述末端器械上的一个区域、及/或所述关节及/或所述末端器械的整体。
37.另一方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被配置为由处理器加载并执行实现如上述任一项实施例所述的控制方法的步骤。
38.另一方面,本发明提供了一种手术机器人的控制装置,包括:存储器,用于存储计算机程序;及处理器,用于加载并执行所述计算机程序;其中,所述计算机程序被配置为由所述处理器加载并执行实现如上述任一项实施例所述的控制方法的步骤。
39.另一方面,本发明提供了一种手术机器人,包括:操作臂,所述操作臂包括相机臂及手术臂;以及控制器,所述控制器与所述操作臂耦接,并被配置成执行如上述任一项实施例所述的控制方法的步骤。
40.本发明的手术机器人及其控制方法、控制装置,具有如下有益效果:
41.通过将当前处于可视区域的手术臂的目标部位限定在可视区域内运动,能够确保手术臂的目标部位始终处于直观的掌控下,进而可以保证手术的安全性及可靠性。
附图说明
42.图1为本发明手术机器人一实施例的结构示意图;
43.图2为图1所示手术机器人一实施例的局部示意图;
44.图3为手术机器人的控制方法一实施例的流程图;
45.图4为手术机器人中操作臂与动力部的结构示意图;
46.图5为手术机器人一手术状态下的局部示意图;
47.图6为手术机器人的控制方法一实施例的流程图;
48.图7为手术机器人中手术臂一实施例的状态的示意图;
49.图8~图10为手术机器人的控制方法一实施例的流程图;
50.图11~图13分别为关联于图7所示手术臂的状态下手术机器人的配置界面的示意图;
51.图14~图18为手术机器人的控制方法一实施例的流程图;
52.图19为手术臂的目标部位在不同区域内运动的示意图;
53.图20~图22为手术机器人的控制方法一实施例的流程图;
54.图23为相机臂在当前相机参数下的可见部位及相机参数调整后的可见区域的示意图;
55.图24为手术机器人的控制方法一实施例的流程图;
56.图25为本发明手术机器人另一实施例的结构示意图;
57.图26为本发明一实施例的手术机器人的控制装置的结构示意图。
具体实施方式
58.为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施方式。但是,本发明可以以许多不同的形式来实现,并不限于本发明所描述的实施方式。相反地,提供这些实施方式的目的是使对本发明的公开内容理解的更加透彻全面。
59.需要说明的是,当元件被称为“设置于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。当一个元件被认为是“耦接”另一个元件,它可以是直接耦接到另一个元件或者可能同时存在居中元件。本发明所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的,并不表示是唯一的实施方式。本发明所使用的术语“远端”、“近端”作为方位词,该方位词为介入医疗器械领域惯用术语,其中“远端”表示手术过程中远离操作者的一端,“近端”表示手术过程中靠近操作者的一端。本发明所使用的术语“第一/第二”等表示一个部件以及一类具有共同特性的两个以上的部件。
60.除非另有定义,本发明所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本发明中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。本发明所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。本发明中所使用的术语“各”包括一个或两个以上。
61.如图1至图2所示,其分别为本发明手术机器人一实施例的结构示意图,及其局部示意图。
62.手术机器人包括主操作台2及由主操作台2控制的从操作设备3。主操作台2具有运动输入设备21及显示器22,医生通过操作运动输入设备21向从操作设备3发送控制命令,以令从操作设备3根据医生操作运动输入设备21的控制命令执行相应操作,并通过显示器22观察手术区域。其中,从操作设备3具有臂体机构,臂体机构具有机械臂30及可拆卸地装设于机械臂30远端的操作臂31。机械臂30包括依次连接的基座及连接组件,连接组件具有多个关节组件。操作臂31包括依次连接的连杆32、连接组件33及末端器械34,其中,连接组件33具有多个关节组件,通过调节操作臂31的关节组件调节末端器械34的姿态;末端器械34具有图像末端器械34a及操作末端器械34b。图像末端器械34a用于采集视野内的图像,显示器22用于显示该图像。操作末端器械34b用于执行手术操作如剪切、缝合。本文令具有图像末端器械34a的操作臂为相机臂31a,并令具有操作末端器械34b的操作臂为手术臂31b。
63.图1展示的手术机器人为单孔手术机器人,各操作臂31通过装设于机械臂30远端的同一个穿刺器4插入至患者体内。在单孔手术机器人中,医生一般仅对操作臂31进行控制以完成基本手术操作。此时,单孔手术机器人的操作臂31应当同时具有位置自由度(即定位自由度)和姿态自由度(即定向自由度),以实现在一定范围内位姿的变化,例如操作臂31具有水平移动自由度x、竖直移动自由度y,自转自由度α、俯仰自由度β及偏航自由度γ,操作臂31还可以在机械臂30远端关节即动力机构301的驱动下实现前后移动自由度z(即进给自由度),此外,一些实施例中,还可以为操作臂31设置冗余自由度以实现更多功能的可能性,例如,在上述可实现6自由度的前提下,额外再设置一个、两个甚至更多个自由度。例如,动力机构301具有导轨和滑动设置于导轨上的动力部,操作臂31可拆卸的装设于动力部上,一
方面,动力部在导轨上的滑动提供操作臂31前后移动自由度z,另一方面,动力部为操作臂31的关节提供动力实现其余5个自由度(即[x,y,α,β,γ])。
[0064]
手术机器人还包括控制器。控制器可以集成于主操作台2,也可以集成于从操作设备3。当然,控制器也可以独立于主操作台2和从操作设备3,其例如可部署在本地,又例如控制器可以部署在云端。其中,控制器可以由一个以上的处理器构成。
[0065]
手术机器人还包括输入部。输入部可以集成于主操作台2。输入部可以也可以集成于从操作设备3。当然,输入部也可以独立于主操作台2和从操作设备3。该输入部例如可以是鼠标、键盘、语音输入装置、触摸屏。一实施例中,采用触摸屏作为输入部,触摸屏例如可以设置于主操作台2的扶手上。
[0066]
操作臂31还包括感应关节的关节变量的传感器。这些传感器包括感应关节组件转动运动的角度传感器及感应关节组件线性运动的位移传感器,具体可根据关节的类型来配置适应的传感器。
[0067]
控制器与这些传感器耦接,并与输入部及显示器22耦接。
[0068]
一实施例中,提供一种手术机器人的控制方法,该控制方法可以由控制器执行。如图3所示,该控制方法包括如下步骤:
[0069]
步骤s1,获取相机臂的可视区域。
[0070]
相机臂31a的可视区域由相机臂31a的图像末端器械34a确定。一实施例中,可视区域的确定步骤包括:
[0071]
实时获取相机臂当前被配置的相机参数,进而根据相机参数获得该可视区域。
[0072]
相机参数通常包括视场角及景深。视场角关联于焦距,景深关联于光圈。其中,焦距越小,视场角越大,可视距离越近;焦距越大,视场角越小,可视距离越远。一实施例中,根据相机参数获得可视区域具体即为基于视场角和景深获得可视区域。例如,利用三角函数公式并结合视场角及景深即可计算出该可视区域。可视区域可以通过实时计算的方式获得,也可以根据视场角及景深直接从预先设定好的数据库如对照表中调取获得。
[0073]
事实上,根据获取的可视区域,可以获得一个立体空间,也可以是该立体空间的一个平面区域,例如以f(x,y,z)代表该立体空间的情况下,可以用f(x,y)代表该立体空间中相应景深z所对应的平面区域。其中,通过坐标转换,可以将f(x,y,z)转换为参考坐标系下的f’(x,y,z),还可以将f(x,y)转换为参考坐标系下的f’(x,y),进而获得可视区域在参考坐标系的位置范围。
[0074]
步骤s2,获取配置的手术臂当前位于可视区域内的目标部位。
[0075]
其中,需要被限制在可视区域内运动的目标部位通常在初始状态下,即在当前时刻应当位于可视区域内。
[0076]
在该步骤s2中,目标部位可以是默认的。示例性的,目标部位默认为手术臂31b的末端器械34b,或者,目标部位默认为手术臂31b中连接末端器械34b的远端的关节,因为通常医生更加关注手术臂31b远端的部位是否处于可视状态下。默认的目标部位可以定义在系统文件中以供获取进而由手术机器人的系统自主完成配置。
[0077]
在该步骤s2中,目标部位还可以是由医生个性化的进行配置的,手术臂31b可供被配置成目标部位的部位通常具有一个以上,这些部位即特征部位可以预先定义在数据库中,不同手术臂通常可具有不同的特征部位。
[0078]
示例性的,如图4所示,操作臂31的驱动盒310抵接于动力机构301的动力部302的抵接面装设有存储单元311,相应在动力部302抵接于驱动盒310的抵接面装设有与存储单元311配套的读取单元303,该读取单元303与控制器耦接,操作臂31装设于动力部302时,读取单元303与耦接存储单元311通讯,读取单元303从存储单元311中读取相关信息。该存储单元311例如是存储器、电子标签。存储单元例如存储有操作臂的类型、操作臂可被配置成目标部位的特征部位、操作臂的运动学模型。例如,相机臂31a的存储单元311中可以存储有相机参数。
[0079]
步骤s3,基于可视区域限定目标部位在可视区域内运动。
[0080]
如图5所示,通过上述步骤s1~步骤s3,以保证手术臂中目标部位在可视区域下被控制而运动,尤其是该目标部位包含末端器械时,可有效防止因为末端器械在可视区域外不期望的运动对患者造成意外伤害。
[0081]
一实施例中,如图6所示,该步骤s2,即获取配置的手术臂当前位于可视区域内的目标部位的步骤包括:
[0082]
步骤s21,获取手术臂可被配置成目标部位的特征部位。
[0083]
例如,该特征部位可直接从数据库中读取而获得。
[0084]
步骤s22,判断特征部位当前是否位于可视区域内。
[0085]
步骤s23,令判断出当前位于可视区域内的特征部位为第一部位,基于第一部位获取配置的目标部位。
[0086]
在步骤s23中,也即目标部位来源于位于可视区域内的第一部位。
[0087]
如图7所示,其简单示意了一手术臂与可视区域的位置关系。其中,末端器械e、关节j1、关节j2、关节j3及关节j4当前位于可视区域以内,而关节j5及关节j6位于可视区域以外。即可以令特征部位e及j1~j4为第一部位以供可选择地配置成目标部位。
[0088]
一实施例中,上述步骤s21,即获取手术臂可被配置成目标部位的特征部位可通过如下两种实施方式来实现。
[0089]
《实施方式1》
[0090]
如图8所示,上述步骤s21包括:
[0091]
步骤s221,获取相机臂采集的可视区域的操作图像。
[0092]
步骤s222,识别特征部位是否位于操作图像内。
[0093]
其中,在特征部位位于操作图像内时,进入步骤s223;否则,进入步骤s224。为便于进行图像识别,可以为在手术臂上对应的特征部位设置易于识别的特征点,以提高识别速度及准确率。该步骤s222可以结合神经网络如卷积神经网络的方式来进行图像识别。在步骤s222中,可以根据预设策略来识别特征部位是否位于操作图像内。示例性的,可以通过识别特征部位上某一个具体的点是否位于操作图像内进而确定该特征部位是否位于操作图像内。示例性的,也可以通过识别特征部位上某一个具体的区域是否位于操作图像内进而确定该特征部位是否位于操作图像内。示例性的,还可以通过识别特征部位的整体轮廓是否位于操作图像内进而确定该特征部位是否位于操作图像内。这样的预设策略可以预先设定好,或者在使用过程中根据医生输入的操作指令进行选择。
[0094]
步骤s223,判断出特征部位位于可视区域内。
[0095]
步骤s224,判断出特征部位没有位于可视区域内。
[0096]
《实施方式2》
[0097]
如图9所示,上述步骤s21包括:
[0098]
步骤s221’,获取手术臂的运动学模型及手术臂中各关节的关节变量。
[0099]
其中,关节变量指关节中转动关节的关节量及/或移动关节的关节偏移量。
[0100]
一方面,手术臂的运动学模型可以直接从操作臂的存储单元中进行调用。另一方面,其也可以根据操作臂的连杆参数获得。
[0101]
步骤s222’,结合运动学模型及关节变量确定特征部位在参考坐标系的位置。
[0102]
其中,参考坐标系可以任意设定,例如,可以定义参考坐标系为机械臂的基坐标系,又例如,可以定义参考坐标系为机械臂的工具坐标系。此外,即使定义参考坐标系为手术机器人以外的某个坐标系也是可行的。
[0103]
其中,所确定的特征部位在参考坐标系的位置所指的可以是该特征部位上的一个点、一个区域或者整体(轮廓)的位置。
[0104]
对于所确定的特征部位在参考坐标系的位置所指的是该特征部位上的一个区域或者整体(轮廓)的情况,示例性的,可以离散获得该区域或该整体轮廓上的各个点,进而再计算获得的这些点的位置。
[0105]
步骤s223’,转换可视区域成在参考坐标系的位置范围。
[0106]
步骤s224’,判断特征部位的位置是否位于位置范围内。
[0107]
其中,在特征部位的位置位于位置范围内时,进入步骤s225’;否则,进入步骤s226’。在步骤s224’中,同样可以根据预设策略来判断特征部位的位置是否位于位置范围内。示例性的,可以通过判断特征部位上某一个具体的点是否位于位置范围内进而确定该特征部位是否位于位置范围内。示例性的,可以通过判断特征部位上某一个具体的区域(多个点构成的点集)是否位于位置范围内进而确定该特征部位是否位于位置范围内。示例性的,还可以通过判断特征部位的整体轮廓(轮廓上的点构成的点集)是否位于位置范围内进而确定该特征部位是否位于位置范围内。这样的预设策略可以预先设定好,或者在使用过程中根据医生输入的操作指令进行选择。
[0108]
步骤s225’,判断出特征部位位于可视区域内。
[0109]
步骤s226’,判断出特征部位没有位于可视区域内。
[0110]
上述实施方式1和实施方式2均可以准确、快速的判断出特征部位是否位于可视区域。
[0111]
一实施例中,如图10所示,上述步骤s23,即基于第一部位获取配置的目标部位的步骤包括:
[0112]
步骤s231,根据第一部位生成含有关联于可供配置成目标部位的特征部位的控件的配置界面。
[0113]
配置界面中的控件例如可以是文本控件、选项控件如下拉列表控件、按钮控件等多种形式。示例性的,对应于图7所示的状态,该配置界面可以如图11所示,配置界面中的控件为按钮控件,在该配置界面中,生成了特征部位e、j1~j4的按钮控件,其中,图11中还示意了特征部位e和j1被配置成了目标部位。
[0114]
进一步地,在该步骤s231中,还可以这样实现:首先,获取手术臂的模型图像;然后,生成含有模型图像的配置界面,并在模型图像上对应第一部位的位置生成含有关联于
可供配置成目标部位的特征部位的控件。例如,这些控件是图标控件,该图标例如可以是光点、光圈等,此处不特别限定。如图12和图13所示,图12仅示出了对应于图7所示的状态下手术臂当前可以被配置成目标部位的特征部位e、j1~j4。例如,可以用图标
“”
代表可被配置成目标部位的特征部位。图13也示出了对应于图7所示的状态下手术臂当前可以被配置成目标部位的特征部位e、j1~j4,与图12所不同的,图13还示出了手术臂其它不可被配置成目标部位的特征部位j5和j6。
[0115]
其中,手术臂的模型图像通常可以预先存储于数据库中以供使用时直接调用,该数据库例如也可以存储于手术臂的存储单元中。该模型图像可以是投影图像,也可以是计算机模型图像,该模型图像至少需要能够反映出可被配置成目标部位的特征部位以方便提供给医生配置。该模型图像可以与手术臂当前运动状态关联;该模型图像也可以与手术臂的初始运动状态(如零位时,如摆成直线)关联,如图12和图13所示。
[0116]
一实施例中,上述步骤s21,即获取手术臂可被配置成目标部位的特征部位的步骤可以这样实现:根据配置界面的控件对期望配置成目标部位的特征部位一一进行配置。如在配置界面含有模型图像且模型图像上具有对应第一部位的控件时,可以例如一一点击这些控件以将关联的第一部位配置成目标部位。
[0117]
在配置界面含有模型图像且模型图像反映了可供配置成目标部位的特征部位(这里的特征部位可选地仅包括上述第一部位、或包括手术臂的所有特征部位(因为在某些场合下如可视区域可覆盖全部特征部位时,它们都可能被配置成目标部位))时,可以获取医生通过输入部绘制的至少覆盖模型图像中部分特征部位的封闭的图形,进而将该图形内含有的(即围合的)所有第一部位全部作为目标部位。这样的设计能够提高目标部位的配置效率。可继续参阅图12和图13,覆盖部位e、j1和j2的大圆圈代表了医生绘制的封闭的图形,系统根据解析该图形与特征部位之间的位置关系,进而将部位e、j1和j2配置成了目标部位。
[0118]
步骤s232,获取通过配置界面的控件所配置的目标部位。
[0119]
在该步骤s232中,手术臂可被配置成目标部位的特征部位可以包括关节及/或末端器械。如果这些关节及/或末端器械均位于可视区域,它们均可以被视为第一部位以供配置。
[0120]
一实施例中,参阅图14,上述步骤s3,即基于可视区域限定目标部位在可视区域内运动的步骤包括:
[0121]
步骤s31,判断目标部位是否达到可视区域的边界。
[0122]
在该步骤s31中,判断出目标部位达到可视区域的边界时,进入步骤s32;否则,继续进行步骤s31。
[0123]
步骤s32,判断目标部位下一时刻的运动方向是否朝向可视区域外。
[0124]
在该步骤s32中,判断出目标部位下一时刻的运动方向朝向可视区域外时,进入步骤s33;否则,继续进行步骤s31。
[0125]
步骤s33,至少禁止目标部位朝向可视区域外运动。
[0126]
当然,若步骤s31中目标部位未达到可视区域的边界、及/或步骤s32中目标部位下一时刻的运动方向未朝向可视区域,则不做特别处理,即仍允许手术臂正常运动。
[0127]
在上述步骤s33中,有以下两种策略来实现至少禁止目标部位朝向可视区域外运动。其一为仅禁止目标部位朝向可视区域外运动;其二为禁止整个手术臂运动。执行何种策
略可以预先默认设定,也可以在手术机器人每次开机时根据医生输入的控制指令进行自定义的初始化设置。示例性的,可以将目标部位仅配置成远端的关节或者末端器械。
[0128]
一实施例中,步骤s31,即判断目标部位是否达到可视区域的边界例如可以通过如下两种方式实现。
[0129]
《实施方式3》
[0130]
如图15所示,该步骤s31可以包括:
[0131]
步骤s311,获取相机臂采集的可视区域的操作图像。
[0132]
步骤s312,识别目标部位是否达到操作图像的边缘。
[0133]
其中,在步骤s312中,如果目标部位达到操作图像的边缘时,进入步骤s313。示例性的,可以通过识别目标部位上某一个具体的点是否位于操作图像内进而确定该目标部位是否位于操作图像内。示例性的,也可以通过识别目标部位上某一个具体的区域是否位于操作图像内进而确定该目标部位是否位于操作图像内。示例性的,还可以通过识别目标部位的整体轮廓是否位于操作图像内进而确定该目标部位是否位于操作图像内。
[0134]
步骤s313,判断出目标部位达到可视区域的边界。
[0135]
步骤s314,判断出目标部位没有达到可视区域的边界。
[0136]
《实施方式4》
[0137]
如图16所示,该步骤s31可以包括:
[0138]
步骤s311’,获取手术臂的运动学模型及手术臂中各关节的关节变量。
[0139]
步骤s312’,结合运动学模型及关节变量确定目标部位在参考坐标系的位置。
[0140]
步骤s313’,转换可视区域成在参考坐标系的位置范围。
[0141]
步骤s314’,判断目标部位的位置是否达到位置范围的边界。
[0142]
其中,在步骤s314’中,如果判断出目标部位达到位置范围的边界时,进入步骤s315’;否则进入步骤s316’。示例性的,可以通过判断目标部位上某一个具体的区域(多个点构成的点集)是否位于位置范围内进而确定该目标部位是否位于位置范围内。示例性的,还可以通过判断目标部位的整体轮廓(轮廓上的点构成的点集)是否位于位置范围内进而确定该目标部位是否位于位置范围内。
[0143]
步骤s315’,判断出目标部位达到可视区域的边界。
[0144]
步骤s316’,判断出目标部位没有达到可视区域的边界。
[0145]
一实施例中,参阅图17,步骤s32,即判断目标部位下一时刻的运动方向是否朝向可视区域外包括如下步骤:
[0146]
步骤s321,获取目标部位在达到可视区域的边界的当前时刻下的当前位置。
[0147]
在该步骤s321中,例如可以通过以下步骤获取当前位置。该步骤包括:首先,获取手术臂的运动学模型及当前时刻下手术臂中各关节的关节变量;然后,根据运动学模型及各关节变量计算目标部位在当前时刻下的当前位置。
[0148]
步骤s322,获取目标部位在下一时刻的目标位置。
[0149]
手术机器人通常包括运动输入部,该运动输入部用于输入控制操作臂包括如相机臂及手术臂进行增量式运动的控制指令。在该步骤s322中,例如可以通过以下步骤获取下一时刻的目标位置。该步骤包括:获取运动输入部输入的目标位姿信息;根据目标位姿信息计算手术臂中各关节的关节变量;获取手术臂的运动学模型;结合运动学模型及各关节变
量确定目标部位在下一时刻的目标位置。
[0150]
步骤s323,根据目标位置和当前位置确定目标部位下一时刻的运动方向是否朝向可视区域外。
[0151]
在该步骤s323中,例如,目标位置如果位于可视区域外,那么目标部位的运动方向则是朝向可视区域外的。又例如,目标位置位于可视区域内,且相对于当前位置而言更远离可视区域的边界,那么目标部位的运动方向则并不是朝向可视区域外的。
[0152]
一实施例中,参阅图18,上述步骤s3,即基于可视区域限定目标部位在可视区域内运动的步骤还可以包括:
[0153]
步骤s34,获取配置的位于可视区域内的安全运动区域。
[0154]
在该步骤s34中,为描述方便,可以令安全运动区域内的区域为第一区域,令安全运动区域以外、可视区域以内的区域为第二区域。
[0155]
步骤s35,根据目标部位在第一区域及第二区域内位置及运动方向的变化而改变目标部位的运动速度。
[0156]
在该步骤s35中,即根据目标部位在第一区域及第二区域内位置及运动方向的变化而改变目标部位的运动速度的步骤具体可以这样来实现:
[0157]
例如,在目标部位从第一区域的边界向第二区域的外边界运动时,减小目标部位在相应方向的运动速度;而在目标部位从第二区域的外边界向第一区域的边界运动时,增大目标部位在相应方向的运动速度。其中,第二区域包括内边界和外边界,第二区域的内边界与第一区域的边界相同,均指安全运动区域的边界,第二区域的外边界指可视区域的边界。如图19所示,a点位于第一区域内,b点位于第二区域内,c点位于第二区域外,目标部位例如末端器械从a点经过b点向c点运动的整个运动过程中,分为三个阶段,包括从a点到第一区域的边界的第一阶段,从第一区域的边界到第二区域的外边界的第二阶段,及从第二区域的外边界到c点的第三阶段,其中,第一阶段的运动速度为v1,第二阶段的运动速度为v2,第三阶段的运动速度v3,v1》v2》v3,其中,v3=0,也即实质上整个运动过程仅包括第一阶段和第二阶段两个阶段。继续参阅图19,从c点经过b点向a点运动的整个运动过程实质上也仅包括两个阶段,即从第二区域的外边界到第一区域的边界的第一阶段,及第一区域的边界到a点的第二阶段,该第一阶段的运动速度为v1,第二阶段的运动速度为v2,此时,v1《v2。
[0158]
一实施例中,该目标部位在相应方向的运动速度跟目标部位与第二区域的外边界之间的距离正相关,也即,目标部位与第二区域的外边界之间的距离较小时,运动速度较小;目标部位与第二区域的外边界之间的距离较大时,运动速度也较大。通常,当目标部位到达可视区域的边界且运动方向朝向可视区域外时,其运动速度基本等于0;而在目标部位到达安全区域的边界且运动方向远离可视区域时,其运动速度恢复到基本正常。
[0159]
较佳的,该目标部位在相应方向的运动速度跟目标部位与第二区域的外边界之间的距离呈线性的正相关。较佳的,该目标部位在相应方向的运动速度跟目标部位与第二区域的外边界之间的距离呈指数级的正相关。这样的设计均能使得医生能够显著的感觉到目标部位正在从第二区域的内边界向外边界的边界运动。
[0160]
其它实施例中,目标部位可以在第一区域内以第一恒定速度运动,并在第二区域以第二恒定速度运动。通常,第一恒定速度大于第二恒定速度。
[0161]
一些实施例中,目标部位在不同区域及/或不同运动方向的运动速度的变化通常是基于手术臂整体运动速度的变化而发生的改变。例如,通过改变手术臂运动速度的比例值而改变目标部位的运动速度。该比例值跟目标部位所处区域以及运动方向相关。
[0162]
一些实施例中,目标部位在不同区域及/或不同运动方向的运动速度的变化也可以不基于手术臂整体运动速度的变化而发生的改变。例如,在手术臂的自由度相较于期待实现的任务自由度存在足够冗余时,可以解算获得不同区域及/或不同运动方向的目标部位获得不同的运动速度。
[0163]
一实施例中,运动输入部是机械式的运动输入部,其具有多个关节组件、与控制器耦接用于感应各关节组件状态的传感器及与控制器耦接用于驱动各关节组件运动的驱动电机。在该结构基础上,如图20所示,上述步骤s3,即基于可视区域限定目标部位在可视区域内运动的步骤还可以包括:
[0164]
步骤s34’,获取配置的位于可视区域内的安全运动区域。
[0165]
为描述方便,在步骤s34’中,同样基于可视区域和安全运动区域同样划分为前文所描述的第一区域和第二区域。
[0166]
步骤s35’,根据目标部位在第一区域及第二区域内位置及运动方向的变化而改变运动输入部的阻力。
[0167]
其中,步骤s35’主要根据阻力使关联方向上的驱动电机产生反向力矩。在该步骤s35’中,即根据目标部位在第一区域及第二区域内位置及运动方向的变化而改变运动输入部的阻力的步骤具体可以这样来实现:
[0168]
例如,在目标部位从第一区域的边界向第二区域的外边界运动时,增大运动输入部在相应方向移动时的阻力;而在目标部位从第二区域的外边界向第一区域的边界运动时,减小运动输入部在相应方向移动时的阻力。
[0169]
一实施例中,运动输入部在相应方向移动时的阻力跟目标部位与第二区域的外边界之间的距离负相关。通常,当目标部位到达可视区域的边界且运动方向朝向可视区域外时,其运动速度基本等于0,此时,医生操作运动输入部的阻力将极大,在较高的阻力下,运动输入部几乎不能被医生移动,可以使目标部位运动速度趋近于0;而在目标部位到达安全区域的边界且运动方向远离可视区域时,其运动速度恢复到基本正常。
[0170]
较佳的,运动输入部在相应方向移动时的阻力跟目标部位与第二区域的外边界之间的距离呈线性的负相关。较佳的,运动输入部在相应方向移动时的阻力跟目标部位与第二区域的外边界之间的距离呈指数级的负相关。这样的设计同样能使得医生能够显著的感觉到目标部位正在从第二区域的内边界向外边界的边界运动,并且,可以实现良好的力反馈。
[0171]
其它实施例中,目标部位在第一区域运动时,运动输入部在相应方向移动时的阻力为第一恒定阻力,而目标部位在第二区域运动时,运动输入部在相应方向移动时的阻力为第二恒定阻力。通常,第二恒定阻力大于第一恒定阻力。
[0172]
一实施例中,相机臂的图像末端器械,即相机具有可调节的相机参数,如焦距可调节及/或光圈可调节,焦距及光圈为相机的内在参数。基于该硬件基础,如图21所示,上述步骤s3,即基于可视区域限定目标部位在可视区域内运动的步骤之前,还可以包括:
[0173]
步骤s301,获取配置的位于可视区域外的扩大运动区域。
[0174]
该扩大运动区域至少部分位于可视区域外。例如,可视区域完整地位于扩大运动区域内;又例如,可视区域与扩大运动区域相互独立,即没有交集;又例如,部分可视区域位于扩大运动区域内。其中,可视区域指相机的参数被重新调节之前可视的区域,新可视区域指相机的参数被重新调节之后可视的区域。
[0175]
步骤s302,基于可视区域和扩大运动区域调节相机的参数生成新可视区域以覆盖可视区域及扩大运动区域。
[0176]
其中,相机的参数包括焦距及/或光圈,焦距与视场角相关,光圈与景深相关。上述步骤s3具体则为:基于新可视区域限定目标部位在新可视区域内运动。通过该步骤s301和步骤s302,可以扩大手术臂中目标部位的运动范围。
[0177]
一些实施例中,可以基于可视区域同时配置安全运动区域和扩大运动区域,以便于医生可以操作手术臂运动于较大且安全的运动范围。
[0178]
上述的安全运动区域及/或扩大运动区域可以是系统默认设置的。例如,该安全运动区域是系统在当前可视区域的基础上设置缩放系数而自动获得;该扩大运动区域是系统在当前可视区域的基础上设置放大系数而自动获得。这些缩放系数及/或放大系数可以预先存储于数据库中供调用,该数据库通常存储于相机臂的存储单元中。
[0179]
上述的安全运动区域及/或扩大运动区域还可以是医生自定义设置的。例如,在显示器中生成相应景深zi对应的可视区域的平面范围f(xi,yi)的基础边界图像,获取医生通过输入部绘制的位于该基础边界图像内的安全运动区域对应的安全边界图像,或至少部分覆盖该基础边界图像的扩大运动区域对应的扩大边界图像。这些边界图像通常是封闭图像。进而根据安全边界图像及/或扩大边界图像与基础边界图像之间的如位置等关系计算获得相应的安全运动区域及/或扩大运动区域。其中,医生绘制的边界图像通常是规则的图像,如圆形图像、矩形图像、椭圆图像。为便于计算获得安全运动区域及/或扩大运动区域,即使该边界图像是不规则的图像,也可以通过处理将绘制的该边界图像转换成最接近的规则的图像。
[0180]
一实施例中,如图22所示,上述步骤s2,即获取配置的手术臂当前位于可视区域内的目标部位的步骤可以包括:
[0181]
步骤s24,获取基于手术臂可被配置成目标部位的特征部位配置的目标部位。
[0182]
步骤s25,判断目标部位是否位于可视区域内,如果当前被配置的目标部位不在可视区域时,基于各目标部位的位置调节相机的参数生成新可视区域以覆盖各目标部位。
[0183]
其中,被调节的参数指的是相机的内在参数如焦距及/或光圈,而不包括相机的外在参数如位置及姿态。如果相机当前的参数已然达到可调极限或者即使到达可调极限所获得的可视区域仍然不能覆盖各目标部位时,可以在操作手术臂执行手术前提醒医生调节手术臂以使各目标部位移动到可视区域内、或者调节相机臂以使可视区域到可覆盖各目标部位的程度。
[0184]
通过上述步骤s24~步骤s25,能够根据目标部位的选择生成相应合适的可视区域,以便于医生后续的手术操作。一实施例中,如图23所示,虚线圆圈表示调节前的可视区域,调节前的可视区域内只能看到部位e、j1~j4,实际上医生需要将部位e、j1~j5均配置成目标部位,此时,通过根据这些目标部位的位置可以对相机参数进行自适应的调节,以使得原本不存在于调整前的可视区域的特征部位位于调节后的可视区域内以供配置并执行
如步骤s1~步骤s3的步骤。
[0185]
一实施例中,如图24所示,上述步骤s25,即基于各目标部位的位置调节相机的参数生成新可视区域以覆盖各目标部位具体可以通过如下步骤实现:
[0186]
步骤s261,获取手术臂的运动学模型及手术臂中各关节的关节变量。
[0187]
步骤s262,结合运动学模型及关节变量确定目标部位在参考坐标系的位置。
[0188]
步骤s263,根据各目标部位的位置构建最大运动区域。
[0189]
步骤s264,基于最大运动区域调节相机的参数生成新可视区域以覆盖该最大运动区域。
[0190]
在目标部位被配置成具有多个的情况下:一些实施例中,可以控制全部的目标部位均基于可视区域而被限定在可视区域内运动;一些实施例中,可以根据在可视区域内的目标部位与全部目标部位之间的比例值控制手术臂的运动,例如,在比例值达到阈值(例如50%)时,可以自由地控制对手术臂的运动进行控制而不做过多限制,而在比例值低于阈值时,可以禁止手术臂的运动。
[0191]
上述实施例的手术机器人还可以是多孔手术机器人。多孔手术机器人与单孔手术机器人之间的区别主要在从操作设备上。图25示意了一种多孔手术机器人的从操作设备。该多孔手术机器人中从操作设备的机械臂具有依次连接的主臂110、调整臂120及操纵器130。调整臂120及操纵器130均为两个以上,例如四个,主臂110远端具有定向平台,调整臂120近端均连接于定向平台,操纵器130近端连接于调整臂120远端。操纵器130用于可拆卸地连接操作臂150,操纵器130具有多个关节组件。在多孔手术机器人中,不同操作臂150通过不同的穿刺器插入患者体内,多孔手术机器人的操作臂150相较于单孔手术机器人的操作臂31而言,一般具有较少的自由度,通常,操作臂150仅具有姿态自由度(即定向自由度),当然其姿态的变化一般也对位置产生影响,但因为影响较小通常可以被忽略。操作臂150的位置常由操纵器130辅助实现,由于操纵器130与操作臂150联动实现位姿变化,可以将这两者认为是操纵器组件,与单孔手术机器人中操作臂31相当。
[0192]
一实施例中,提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序被配置为由处理器加载并执行实现如下步骤:获取相机臂的可视区域;获取配置的手术臂当前位于可视区域内的目标部位;基于可视区域限定目标部位在可视区域内运动。
[0193]
一实施例中,提供一种手术机器人的控制装置。如图26所示,该控制装置可以包括:处理器(processor)501、通信接口(communications interface)502、存储器(memory)503、以及通信总线504。
[0194]
处理器501、通信接口502、以及存储器503通过通信总线504完成相互间的通信。
[0195]
通信接口502,用于与其它设备比如各类传感器或电机或电磁阀或其它客户端或服务器等的网元通信。
[0196]
处理器501,用于执行程序505,具体可以执行上述方法实施例中的相关步骤。
[0197]
具体地,程序505可以包括程序代码,该程序代码包括计算机操作指令。
[0198]
处理器505可能是中央处理器cpu,或者是特定集成电路asic(applicationspecific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路,或者是图形处理器gpu(graphics processing unit)。控制装置包括的一
个或多个处理器,可以是同一类型的处理器,如一个或多个cpu,或者,一个或多个gpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个gpu。
[0199]
存储器503,用于存放程序505。存储器503可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0200]
程序505具体可以用于使得处理器501执行以下操作:获取相机臂的可视区域;获取手术臂当前位于可视区域内的目标部位;基于可视区域限定目标部位在可视区域内运动。
[0201]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0202]
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1