用于手术机器人臂的外部扭矩观测和补偿的系统和设备的制作方法

文档序号:24399003发布日期:2021-03-27 01:24阅读:167来源:国知局
用于手术机器人臂的外部扭矩观测和补偿的系统和设备的制作方法
用于手术机器人臂的外部扭矩观测和补偿的系统和设备


背景技术:

1.手术机器人系统当前正用于微创医疗手术。一些手术机器人系统可包含控制手术机器人臂的手术控制台和具有联接到机器人臂并由机器人臂致动的末端执行器(例如,钳子或抓握工具)的手术器械。
2.机器人臂可能受到各种外力的影响。因而,需要监测这些力并补偿这些力以便改进机器人臂的操作。


技术实现要素:

3.根据本公开的一个实施例,公开了一种手术机器人臂。手术机器人臂包含:第一连杆;第二连杆,其在第一接头处联接到第一连杆,使得第一连杆或第二连杆中的至少一个可相对于彼此移动;以及第一致动器,其被配置成移动第一连杆或第二连杆中的至少一个。手术机器人臂还包含接头扭矩传感器,所述接头扭矩传感器安置在第一接头内并且被配置成测量施加在第一连杆或第二连杆中的至少一个上的扭矩以获得测量的扭矩值。手术机器人臂进一步包含控制器,所述控制器被配置成:响应于移动命令而计算输入电机扭矩命令,所述输入电机扭矩命令被配置成根据移动命令启动第一致动器以移动第一连杆或第二连杆中的至少一个;确定估计的接头扭矩值;基于估计的接头扭矩值与测量的扭矩值的比较而确定环境扭矩值;以及基于所述环境扭矩值大于阈值而检测碰撞。
4.根据上述实施例的一个方面,控制器进一步被配置成响应于检测到碰撞而调整输入电机扭矩命令。控制器进一步被配置成调整输入电机扭矩命令以防止第一致动器的输出扭矩过饱和。
5.根据上述实施例的另一方面,手术机器人臂进一步包含电机扭矩传感器,所述电机扭矩传感器被配置成测量由第一致动器施加的输出扭矩。控制器进一步被配置成确定第一致动器的摩擦损失和第一接头的摩擦损失。控制器进一步被配置成确定对第一连杆或第二连杆中的至少一个的重力效应。控制器进一步被配置成确定第一致动器的电机惯性和第一连杆或第二连杆中的至少一个的接头惯性。
6.根据本公开的另一实施例,公开了一种手术机器人系统。手术机器人系统包含:手术控制台,其包含被配置成产生用户输入的至少一个用户接口装置;控制塔,其联接到手术控制台并且被配置成处理用户输入以产生移动命令;以及手术机器人臂。手术机器人臂包含:第一连杆;第二连杆,其在第一接头处联接到第一连杆,使得第一连杆或第二连杆中的至少一个可相对于彼此移动;以及第一致动器,其被配置成移动第一连杆或第二连杆中的至少一个。手术机器人臂还包含接头扭矩传感器,所述接头扭矩传感器安置在第一接头内并且被配置成测量施加在第一连杆或第二连杆中的至少一个上的扭矩以获得测量的扭矩值。手术机器人臂进一步包含控制器,所述控制器被配置成:响应于移动命令而计算输入电机扭矩命令,所述输入电机扭矩命令被配置成根据移动命令启动第一致动器以移动第一连杆或第二连杆中的至少一个;确定估计的接头扭矩值;基于估计的接头扭矩值与测量的扭矩值的比较而确定环境扭矩值;以及基于所述环境扭矩值大于阈值而检测碰撞。
7.根据上述实施例的一个方面,控制器进一步被配置成基于由第一致动器施加的扭矩、第一致动器的摩擦损失、第一接头的摩擦损失、第一致动器的电机惯性、接头惯性和重力效应而确定估计的接头扭矩值。控制器进一步被配置成响应于检测到碰撞而调整输入电机扭矩命令。控制器进一步被配置成调整输入电机扭矩命令以防止第一致动器的输出扭矩过饱和。
8.根据上述实施例的另一方面,手术机器人臂进一步包含:电机扭矩传感器,其被配置成测量由第一致动器施加的扭矩。控制器进一步被配置成确定第一致动器的摩擦损失和第一接头的摩擦损失。控制器进一步被配置成确定对第一连杆或第二连杆中的至少一个的重力效应。控制器进一步被配置成确定第一致动器的电机惯性和第一连杆或第二连杆中的至少一个的接头惯性。控制器进一步被配置成基于由第一致动器施加的扭矩、第一致动器的摩擦损失、第一接头的摩擦损失、第一致动器的电机惯性、接头惯性和重力效应而确定估计的接头扭矩值。
9.根据本公开的另一实施例,所述方法进一步包含:通过手术控制台的至少一个用户接口产生用户输入;处理用户输入以在联接到手术控制台的控制塔处产生移动命令;将移动命令传输到手术机器人臂的控制器。手术机器人臂包含:第一连杆;第二连杆,其在第一接头处联接到第一连杆,使得第一连杆或第二连杆中的至少一个可相对于彼此移动;以及第一致动器,其被配置成移动第一连杆或第二连杆中的至少一个。所述方法进一步包含:测量施加在第一连杆或第二连杆中的至少一个上的扭矩以在安置于第一接头内的接头扭矩传感器处获得测量的扭矩值;响应于移动命令而计算输入电机扭矩命令,输入电机扭矩命令被配置成根据移动命令启动第一致动器以移动第一连杆或第二连杆中的至少一个;确定估计的接头扭矩值;基于估计的接头扭矩值与测量的扭矩值的比较确定环境扭矩值;以及基于环境扭矩值大于阈值而检测碰撞。
10.根据上述实施例的一个方面,所述方法进一步包含:在联接到第一致动器的电机扭矩传感器处测量由第一致动器施加的扭矩;确定第一致动器的摩擦损失和第一接头的摩擦损失;确定对第一连杆或第二连杆中的至少一个的重力效应;以及确定第一致动器的电机惯性和第一连杆或第二连杆中的至少一个的接头惯性。
11.根据上述实施例的另一方面,所述方法进一步包含基于由第一致动器施加的扭矩、第一致动器的摩擦损失、第一接头的摩擦损失、第一致动器的电机惯性、接头惯性和重力效应而确定估计的接头扭矩值。所述方法进一步包含响应于检测到碰撞而调整输入电机扭矩命令以防止第一致动器的输出扭矩过饱和。
附图说明
12.在本文中参考附图描述本公开的实施例,其中:
13.图1是根据本公开的包含控制塔、控制台和一个或多个手术机器人臂的手术机器人系统的示意性说明;
14.图2是根据本公开的图1的手术机器人系统的手术机器人臂的透视图;
15.图3是根据本公开的具有图1的手术机器人系统的手术机器人臂的设置臂的透视图;
16.图4是根据本公开的图1的手术机器人系统的计算机体系结构的示意图;
17.图5是根据本公开的图2的手术机器人臂的致动器的截面图;
18.图6是根据本公开的由图5的致动器的扭矩传感器测量的扭矩的示意性图示;
19.图7是根据本公开的用于检测手术机器人臂的碰撞并响应于此而控制手术机器人臂的方法;并且
20.图8是根据本公开的一个实施例的用于控制手术机器人臂的流程图。
具体实施方式
21.参考附图详细描述本公开的手术机器人系统的实施例,其中相似的附图标记指代若干视图中的每一个视图中的相同或对应的元件。如本文所使用,术语“远侧”是指手术机器人系统和/或联接到手术机器人系统的手术器械的更接近患者的部分,而术语“近侧”是指更远离患者的部分。
22.如下文将详细描述,本公开涉及一种手术机器人系统,其包含手术控制台、控制塔和一个或多个移动推车,所述移动推车具有联接到设置臂的手术机器人臂。手术控制台通过一个或多个接口装置接收用户输入,用户输入由控制塔解释为用于移动手术机器人臂的移动命令。手术机器人臂包含控制器,所述控制器被配置成处理移动命令并产生用于启动机器人臂的一个或多个致动器的扭矩命令,所述致动器继而将响应于移动命令而移动机器人臂。控制器进一步被配置成测量总接头扭矩并确定估计的接头扭矩,估计的接头扭矩包含内力和外力。使用以下来计算估计的扭矩:由致动器产生的扭矩,其由致动器的扭矩传感器测量;如使用摩擦模型计算的齿轮和接头摩擦;如使用重力模型计算的对机器人臂和/或设置臂的重力效应;以及使用质量和致动器速度计算的致动器和接头惯性。控制器进一步被配置成比较测量的总接头扭矩与估计的扭矩以确定环境扭矩是否例如由于碰撞而造成测量的扭矩与估计的扭矩之间存在差异。因此,在除作用于机器人臂的重力以外不存在碰撞或其它外力的情况下,环境扭矩为约零,因而估计的扭矩和测量的扭矩(其包含重力、摩擦、惯性和环境扭矩)大致相同。可调整阈值以改变计算和识别环境扭矩的灵敏度。
23.参考图1,手术机器人系统10包含控制塔20,所述控制塔连接到手术机器人系统10的所有组件,包含手术控制台30和一个或多个机器人臂40。机器人臂40中的每一个包含可拆卸地联接到其上的手术器械50。手术器械50被配置成在微创外科手术中使用。在实施例中,手术器械50可被配置成用于开放式科手术。机器人臂40中的每一个还联接到可移动推车60。
24.手术控制台30包含第一显示器装置32和第二显示器装置34,所述第一显示器装置显示由安置在机器人臂40上的相机(未示出)提供的手术部位,所述第二显示器装置显示用于控制手术机器人系统10的用户界面。手术控制台30还包含多个用户接口装置,例如由临床医生使用以远程控制机器人臂40的脚踏板36和一对手柄控制器38a和38b。
25.控制塔20充当手术控制台30与一个或多个机器人臂40之间的接口。确切地说,控制塔20被配置成基于可编程指令集和/或来自手术控制台30的输入命令而控制机器人臂40,以便移动机器人臂40和对应手术器械50,其方式是使得机器人臂40和手术器械50响应于来自脚踏板36和手柄控制器38a和38b的输入而执行期望移动序列。
26.控制塔20、手术控制台30和机器人臂40中的每一个包含相应计算机21、31、41。计算机21、31、41使用基于有线或无线通信协议的任何合适的通信网络来彼此互连。如本文所
用,术语“网络”无论是复数还是单数都表示数据网络,包含但不限于因特网、内联网、广域网或局域网,并且不限于如本公开所涵盖的通信网络的完整定义范围。合适的协议包含但不限于传输控制协议/因特网协议(tcp/ip)、数据报协议/因特网协议(udp/ip)和/或数据报拥塞控制协议(dccp)。可经由一个或多个无线配置,例如射频、光学方式、wi

fi、蓝牙(用于短距离交换数据、使用短长度无线电波、来自固定和移动装置、创建个人局域网(pan)的开放式无线协议、(基于用于无线个人局域网(wpan)的ieee 802.15.4

2003标准的使用小型、低功率数字无线电的一套高级通信协议的规范))实现无线通信。
27.计算机21、31、41可包含以可操作方式连接到存储器(未示出)的任何合适的处理器(未示出),所述存储器可包含易失性、非易失性、磁性、光学或电子媒体中的一个或多个,例如只读存储器(rom)、随机存取存储器(ram)、电可擦除可编程rom(eeprom)、非易失性ram(nvram)或快闪存储器。处理器可以是适于执行本公开中描述的操作、计算和/或指令集的任何合适的处理器(例如,控制电路),包含但不限于硬件处理器、现场可编程门阵列(fpga)、数字信号处理器(dsp)、中央处理单元(cpu)、微处理器和其组合。本领域的技术人员将理解,可以通过使用适于执行本文描述的算法、计算和/或指令集的任何逻辑处理器(例如,控制电路)来取代处理器。
28.参考图2,机器人臂40中的每一个可包含多个连杆42a、42b、42c,所述多个连杆分别在接头44a、44b、44c处互连。接头44a被配置成将机器人臂40紧固到可移动推车60并限定第一纵轴。参考图3,可移动推车60包含升降机61和设置臂62,所述设置臂提供用于安装机器人臂40的基座。升降机61允许设置臂62竖直地移动。设置臂62包含第一连杆62a、第二连杆62b和第三连杆62c,这些连杆实现机器人臂40的侧向机动性。连杆62a、62b、62c在接头63a和63b处互连,每个接头可包含用于使连杆62b与62b相对于彼此和连杆62c旋转的致动器(未示出)。确切地说,连杆62a、62b、62c可在其彼此平行的对应侧向平面上移动,由此允许机器人臂40相对于患者(例如,手术台)延伸。在实施例中,机器人臂40可联接到手术台(未示出)。设置臂62包含用于调整连杆62a、62b、62c以及升降机61的移动的控制件65。
29.第三连杆62c包含具有两个自由度的可旋转基座64。确切地说,可旋转基座64包含第一致动器64a和第二致动器64b。第一致动器64a可围绕垂直于由第三连杆62c限定的平面的第一固定臂轴旋转,且第二致动器64b可围绕横向于第一固定臂轴的第二固定臂轴旋转。第一致动器64a和第二致动器64b允许机器人臂40的全三维定向。
30.参考图2,机器人臂40还包含固持器46,所述固持器限定第二纵轴且被配置成收纳手术器械50的器械驱动单元52(图1),所述器械驱动单元被配置成联接到手术器械50的致动机构。器械驱动单元52将致动力从其致动器转移到手术器械50以致动手术器械50的组件(例如,末端执行器)。固持器46包含滑动机构46a,所述滑动机构被配置成沿着由固持器46限定的第二纵轴移动器械驱动单元52。固持器46还包含接头46b,所述接头使固持器46相对于连杆42c旋转。
31.接头44a和44b包含致动器48a和48b,所述致动器被配置成通过一系列带45a和45b或其它机械连杆机构相对于彼此驱动接头44a、44b、44c,所述机械连杆机构例如驱动杆、线缆或杠杆等。确切地说,致动器48a被配置成使机器人臂40围绕由连杆42a限定的纵向轴线旋转。
32.接头44b的致动器48b通过带45a联接到接头44c,且接头44c又通过带45b联接到接
头46c。接头44c可包含联接带45a与45b的分动箱,使得致动器48b被配置成使连杆42b、42c中的每一个与固持器46相对于彼此旋转。更确切地说,连杆42b、42c和固持器46被动地联接到致动器48b,所述致动器围绕枢轴点“p”实施旋转,所述枢轴点“p”位于由连杆42a限定的第一轴线与由固持器46限定的第二轴线的相交点处。因此,致动器48b控制第一轴线和第二轴线之间的角度θ,从而允许对手术器械50进行定向。由于连杆42a、42b、42c与固持器46通过带45a和45b互连,还调整连杆42a、42b、42c与固持器46之间的角度以便实现期望的角度θ。在实施例中,接头44a、44b、44c中的一些或全部可包含致动器以避免需要机械连杆机构。
33.参考图4,手术机器人系统10的计算机21、31、41中的每一个可包含多个控制器,所述控制器可以硬件和/或软件实施。控制塔20的计算机21包含控制器21a和安全性观测器21b。控制器21a从手术控制台30的计算机31接收关于手柄控制器38a和38b的当前位置和/或定向以及脚踏板36和其它按钮的状态的数据。控制器21a处理这些输入位置以确定机器人臂40的每个接头和/或器械驱动单元52所需的驱动命令,并将这些命令传达到机器人臂40的计算机41。控制器21a还接收回实际接头角度并使用此信息,以确定被传输回到手术控制台30的计算机31的力反馈命令并通过手柄控制器38a和38b提供触觉反馈。安全性观测器21b对进出控制器21a的数据进行有效性检查,并在检测到数据传输中存在错误的情况下通知系统故障处理器将计算机21和/或手术机器人系统10置于安全状态。
34.计算机41包含多个控制器,即主推车控制器41a、设置臂控制器41b、机器人臂控制器41c和器械驱动单元(idu)控制器41d。主推车控制器41a接收并处理来自计算机21的控制器21a的接头命令,并将其传达给设置臂控制器41b、机器人臂控制器41c和idu控制器41d。主推车控制器41a还管理器械交换以及可移动推车60、机器人臂40和器械驱动单元52的总体状态。主推车控制器41a还将实际接头角度传送回到控制器21a。
35.设置臂控制器41b控制接头63a和63b中的每一个以及设置臂62的可旋转底座64,并针对俯仰轴计算期望电机移动命令(例如,电机扭矩)并控制制动器。机器人臂控制器41c控制机器人臂40的每个接头44a和44b,并计算重力补偿、摩擦补偿和闭环位置控制所需的期望电机扭矩。机器人臂控制器41c基于计算出的扭矩而计算移动指令。接着将计算出的电机命令传达到机器人臂40中的致动器48a和48b中的一个或多个。接着通过致动器48a和48b将实际接头位置传输回到机器人臂控制器41c。
36.idu控制器41d接收手术器械50的期望接头角度,例如手腕和颚角度,并计算用于器械驱动单元52中的电机的期望电流。idu控制器41d基于电机位置而计算实际角度并将所述实际角度传输回到主推车控制器41a。
37.机器人臂控制器41c还被配置成估计由机器人臂40的刚性连杆结构,即连杆42a、42b、42c,施加于接头44a和44b上的扭矩。接头44a和44b中的每一个容纳致动器48a和48b。由于机器人臂40的重量大,可以使用高扭矩来移动机器人臂40。但是,可能需要调整扭矩以防止损坏或损伤。这尤其适用于限制机器人臂40与例如其它机器人臂、患者、工作人员、手术室设备等外部物体碰撞期间的扭矩。
38.为了确定外部扭矩对机器人臂40的影响,机器人臂控制器41c首先计算摩擦损失、重力、惯性,然后确定外部扭矩的影响。一旦计算出外部扭矩,机器人臂控制器41c就确定环境力是否超过预定阈值,所述预定阈值指示与外部物体的碰撞并采取预防措施,例如终止在检测到碰撞的方向上移动、减慢和/或反向移动(例如,沿相反方向移动)预定距离。
39.下文关于图5描述传感器测量和基于其的计算,图5示出了集成接头模块100。集成接头模块100可用作致动器48a、48b、64a、64b,并且可用作接头63a和63b内的致动器。集成接头模块100包含轴102,所述轴充当集成接头模块100的其它组件的支撑结构,即,电机104和谐波齿轮箱106。电机104可以是可以由ac或dc能量供电的任何电动机,例如有刷电机、无刷电机、步进电机等等。电机104联接到谐波齿轮箱106,所述谐波齿轮箱可以是被配置成提供大的减速比以及大致零间隙、高扭矩能力和高效率的谐波传动齿轮。谐波齿轮箱106可包含同心输入轴和输出轴(未示出),并且可以包含波发生器106a,所述波发生器安置在具有外齿轮表面的柔性花键106b内,所述柔性花键又安置在具有内齿轮表面的圆形花键106c内。当电机104驱动波发生器106a时,柔性花键106b也旋转,所述柔性花键可以由例如不锈钢等弹性材料形成。柔性花键106b具有比圆形花键106c更少的齿状物,因此对于波发生器106a的每一完整旋转,柔性花键106b的旋转小于完整旋转,这降低了输出速度。谐波齿轮箱106继而联接到带45a或45b中的一个。
40.集成接头模块100还包含传感器套件,其用于监测集成接头模块100的性能以提供对其的反馈和控制。明确地说,集成接头模块100包含联接到电机104的编码器108。编码器108可以是提供指示电机104的旋转数目的传感器信号的任何装置,例如机械编码器或光学编码器。电机104还可包含其它传感器,例如被配置成测量电机104的电流消耗的电流传感器、用于测量电机扭矩的电机扭矩传感器105等等。旋转数目可用以确定各个接头44a、44b、44c的速度和/或位置控制。由编码器108测量和/或确定的参数可包含速度、距离、每分钟转速、位置等等。集成接头模块100进一步包含接头扭矩传感器110,其可以是包含一个或多个应变计的任何力或应变传感器,所述传感器被配置成将机械力和/或应变转换成指示由谐波齿轮箱106施加的扭矩的传感器信号。来自编码器108和接头扭矩传感器110的传感器信号被传输到计算机41,计算机41接着基于传感器信号控制机器人臂40的每个接头44a、44b、44c的速度、角度和/或位置。在实施例中,还可以使用额外的位置传感器来确定机器人臂40和设置臂62的移动和定向。合适的传感器包含但不限于联接到可移动组件并且被配置成检测行进距离的电位计、霍尔效应传感器、加速度计和陀螺仪。
41.参考图6,机器人臂40的动力学模型示出了由电机104施加的电机扭矩所引起的内部动态,这由于电机104的旋转位置的变化而产生传动系惯性和摩擦。电机扭矩还例如在接头44b和44c处产生接头扭矩,并改变连杆42b、42c和固持器46的连杆位置。动态模型还说明由于外力引起的外部扭矩对机器人臂40的影响。
42.继续参考图6,提供电机104、谐波齿轮箱106和接头扭矩传感器110的示意图。如上所述,接头扭矩传感器110测量施加在接头上的扭矩,接头扭矩传感器110安置在例如接头44a、44b、44c等接头内。由接头扭矩传感器110测量的扭矩包含内部扭矩参数,即,由电机104产生的扭矩,其考虑谐波齿轮箱106的齿轮摩擦和电机104的电机惯性。另外,测量的扭矩还包含外部扭矩参数,即,对连杆42a、42b、42c的重力效应(例如,重量)、接头44a、44b、44c中的每一个的接头摩擦和接头惯性,以及例如由于与物体碰撞而产生的环境扭矩。为了确定外部扭矩对机器人臂40的影响,机器人臂控制器41c首先计算摩擦损失、重力、惯性,然后确定外部扭矩的影响。
43.机器人臂控制器41c和设置臂控制器41b中的每一个包含摩擦观测器模块,其使用接头扭矩传感器110、来自编码器108的角速度和来自电机扭矩传感器105的电机扭矩计算
相应的接头和致动器处的摩擦扭矩。
44.在实施例中,摩擦观测器模块可使用从接头扭矩传感器110测量的扭矩、命令电机扭矩和估计的电机惯性,估计的电机惯性是根据测量的接头编码器计算的,如图6所示。在另外的实施例中,摩擦观测器模块可使用库仑和粘性摩擦模型,所述模型使用根据接头编码器计算的估计速度。
45.摩擦观测器模块可基于库仑摩擦、粘性摩擦和接头扭矩传感器110的死区计算实际摩擦,所述死区对应于扭矩传感器偏移。库仑摩擦是基于处于干物理接触的两个主体之间的摩擦力的方向和量值来计算的。粘性摩擦是基于处于流体物理接触的两个主体之间的摩擦力的方向和量值来计算的。死区对应于接头扭矩传感器110的产生零输出的输入的某一部分。
46.摩擦估计器模块可以用可由机器人臂控制器41c执行的软件实施。摩擦估计器模块是基于施加在接头44b上且由接头扭矩传感器110测量的外部扭矩,所述外部扭矩是在非零角速度下测量(例如,当接头44b移动接头44a、44b、44c时)。因此,摩擦估计器模块还从编码器108接收角速度。另外,摩擦估计器模块还利用来自电机扭矩传感器105的电机扭矩。
47.摩擦估计器模块可并入有以下公式(i)和(ii):
48.(i)
49.(ii)
50.在公式(i)和(ii)中,“s”是拉普拉斯算子,“l”是滤波时间常数,是估计的摩擦,“t
fm”是实际的摩擦。接头44b中的库仑摩擦、粘性摩擦和扭矩传感器死区由公式(iii)给出:
51.(iii)
52.在公式(iii)中,“f
c”是库仑摩擦系数,“f
v”是粘性摩擦系数,且“f
d”是死区摩擦(对应于扭矩传感器偏移)。摩擦观测器由公式(iv)和(v)定义:
53.(iv)
54.(v)
55.机器人臂控制器41c还被配置成计算扭矩以补偿由机器人臂控制器41c的摩擦估计器模块确定的接头44b的摩擦。确切地说,机器人臂控制器41c计算电机104的扭矩,所述扭矩克服接头44b所遇到的摩擦。在确定摩擦之后,机器人臂控制器41c计算接头44b的电机104的摩擦补偿扭矩或移动命令,所述摩擦补偿扭矩或移动命令将足以克服摩擦。
56.设置臂控制器41b还被配置成补偿作用于设置臂62的致动器64a、64b和接头63a、63b的摩擦。设置臂控制器41b计算接头63a、63b和致动器64a、64b的电机104的扭矩,所述扭矩将克服致动器64a、64b和接头63a、63b遇到的摩擦。在确定摩擦之后,设置臂控制器41b计算设置臂62的致动器64a、64b和接头63a、63b的摩擦补偿扭矩或移动命令,所述摩擦补偿扭矩或移动命令将足以克服摩擦。
57.根据本公开的用于摩擦补偿的方法可应用于机器人臂40和/或设置臂62,且可由
机器人臂控制器41c或设置臂控制器41b执行。关于机器人臂40,例如响应于来自手术控制台30的移动命令而从控制塔20接收移动命令。关于设置臂62,从控制件65接收移动命令。控制塔20的控制器21a处理这些输入位置以针对机器人臂40和/或设置臂62的每个接头确定期望驱动命令并将所处理的移动命令传输到计算机41。计算机41,确切地说机器人臂控制器41c控制机器人臂40的每个接头44a和44b,并且计算致动器48a、48b所需的电机扭矩。类似地,设置臂控制器41b控制设置臂62的每个连杆62a、62b、62c并计算接头63a和63b的致动器以及致动器64a、64b的电机扭矩。电机扭矩包含足够的扭矩以使连杆42a、42b、42c、62a、62b、62c的移动与移动命令匹配。另外,还计算电机扭矩以补偿摩擦对接头44a、44b、44c、63a、63b和致动器64a、64b的影响。因此,电机扭矩命令包含两个分量:用于赋予对应于移动命令的移动的第一分量,和对应于用于克服接头44a、44b、44c、63a、63b和致动器64a、64b的每个电机104的摩擦的移动的第二分量。第二分量是基于计算出的摩擦,如上文所描述。确切地说,计算机41的摩擦估计器模块使用接头扭矩传感器110、来自编码器108的角速度和来自电机扭矩传感器105的电机扭矩来计算接头44b处的摩擦扭矩。在实施例中,可使用命令电机扭矩来代替测量的电机扭矩。
58.机器人臂控制器41c和设置臂控制器41b中的每一个包含重力补偿器模块,其分别计算对机器人臂40和设置臂62的重力效应。机器人臂控制器41c还被配置成计算扭矩以补偿作用于机器人臂40的重力,即,机器人臂40的连杆42a、42b、42c和其它组件的重量。机器人臂控制器41c计算电机104的扭矩,所述电机通过将接头44a、44b、44c的速度和加速度设置为零来静态地平衡机器人臂40与重力负荷。这提供了机器人臂40的静态建模,所述建模不考虑机器人臂40除由于重力引起的移动以外的所有移动。在确定仅仅由重力造成的机器人臂40的移动之后,机器人臂控制器41c计算致动器48a和48b的电机104的重力补偿扭矩或移动命令,所述重力补偿扭矩或移动命令将足以抵消机器人臂40的下垂。
59.设置臂控制器41b还被配置成用于补偿作用于设置臂62的重力,即,施加在可旋转基座64上的机器人臂40的重量。致动器64a控制机器人臂40的间距,即,机器人臂40相对于设置臂62的角度,并且通过延伸控制底层,因为致动器64a必须抵抗重力起作用。设置臂控制器41b计算致动器64a的扭矩,所述致动器通过将致动器64a的速度和加速度设置为零来静态地平衡可旋转基座64和机器人臂40与重力负荷。这提供了设置臂62和机器人臂40的静态建模,其不考虑机器人臂40的除由于重力引起的移动以外的所有移动。在确定仅仅由重力造成的设置臂62和机器人臂40的移动之后,设置臂控制器41b计算致动器64a的重力补偿扭矩或移动命令,所述重力补偿扭矩或移动命令将足以抵消机器人臂40的下沉并补偿间距。
60.根据本公开的用于重力补偿的方法可应用于机器人臂40和/或设置臂62,且可由机器人臂控制器41c或设置臂控制器41b执行。关于机器人臂40,例如响应于来自手术控制台30的移动命令而从控制塔20接收移动命令。关于设置臂62,从控制件65接收移动命令。控制塔20的控制器21a处理这些输入位置以针对机器人臂40和/或设置臂62的每个接头确定期望驱动命令并将所处理的移动命令传输到计算机41。计算机41,且确切地说机器人臂控制器41c控制机器人臂40的每个接头44a和44b,并且计算致动器48a、48b所需的电机扭矩。类似地,设置臂控制器41b控制设置臂62的每个连杆62a、62b、62c并计算接头63a和63b的致动器的电机扭矩。电机扭矩包含足够的扭矩以使连杆42a、42b、42c、62a、62b、62c的移动与
移动命令匹配。另外,还计算电机扭矩以补偿对机器人臂40的重力效应,并且确切地说,补偿连杆42a、42b、42c、62a、62b、62c和接头44a、44b、44c、63a、63b中的每一个。因此,电机扭矩命令包含两个分量:用于赋予对应于移动命令的移动的第一分量,和对应于用于补偿机器人臂40和/或设置臂62的每个组件的重力的移动的第二分量。
61.机器人臂控制器41c和设置臂控制器41b计算致动器的扭矩,所述致动器通过将接头44a、44b、44c和致动器64a的速度和加速度设置为零来静态地平衡机器人臂40和设置臂62与重力负荷。电机扭矩命令包含第一分量和第二分量,第一分量包含用于赋予使机器人臂40和/或设置臂62移动到期望位置的移动的电机扭矩,第二分量被配置成补偿重力效应。通过将第一分量的值,即,速度和加速度设置为零来计算第二分量。另外,第二分量还基于连杆42a、42b、42c、62a、62b、62c的质量、刚度、尺寸以及其间的角度。
62.补偿过程还包含计算不受移动命令直接影响的致动器的电机扭矩,即,不需要致动来移动接头44a、44b、44c、63a、63b的那些致动器,这是因为移动机器人臂40的移动命令间接地影响设置臂62的接头63a和63b,所述设置臂保持静止且反之亦然。
63.外部扭矩补偿过程可以由机器人臂控制器41c执行,并且可涉及通过接头扭矩传感器110测量接头的输出扭矩,观测由机器人臂40施加到环境的扭矩,以及外部扭矩超出预定阈值的变化调整机器人臂40的移动,所述外部扭矩指示外力,例如与物体的碰撞。
64.继续参考图6,接头扭矩传感器110测量接头(例如,接头44a、44b、44c等)的扭矩。测量的扭矩表示内力120和外力122。内力120包含由电机104产生的电机扭矩减去机械损失,例如谐波齿轮箱106的齿轮摩擦和电机104的电机惯性,所述电机扭矩是基于电机104的角速度计算的。外力122包含重力负荷、接头摩擦和环境扭矩。如本文所使用,术语“环境扭矩”是指除重力、摩擦或惯性以外作用在机器人臂40上的任何外力,例如由于与手术室中的物体碰撞的那些外力。
65.如上所述,内力120的分量中的每一个可使用接头扭矩传感器110、编码器108和电机扭矩传感器105来测量,或以其它方式由机器人臂控制器41c或设置臂控制器41b使用摩擦估计器模块和重力补偿器模块来计算。确切地说,电机扭矩和电机惯性由电机扭矩传感器105测量,齿轮摩擦和接头摩擦由摩擦观测器计算,并且重力负荷由重力补偿器模块计算。因此,在计算和/或测量以上值中的每一个之后,添加所述值中的每一个以确定估计的接头扭矩值。接着通过机器人臂控制器41c或设置臂控制器41b将估计的接头扭矩值与测量的扭矩值进行比较。如上所述,由接头扭矩传感器110测量到的测量的扭矩值测量估计的接头扭矩值的所有分量以及由环境扭矩施加的任何力。然后,机器人臂控制器41c或设置臂控制器41b通过从测量的接头扭矩中减去计算出的接头扭矩来计算环境扭矩。
66.可以使用表示机器人臂40和设置臂62的逆动态计算来计算环境扭矩。逆动态计算是基于机器人接头(例如,接头44a、44b、44c等)的瞬时位置、速度和加速度。瞬时电机扭矩和驱动接头的力是由机器人臂控制器41c或设置臂控制器41b计算的。机器人臂控制器41c或设置臂控制器41b还存储各种连杆参数,包含分别针对每个连杆42a、42b、42c、62a、62b、62c中的每一个的质量和惯性,以及连杆之间的运动学关系。一旦计算出逆动态函数,就通过用零代替速度和加速度来分离重力补偿部分。
67.可以使用拉格朗日机制来解决机器人臂40和设置臂62的逆动态问题。在导出连杆框架之间的运动学关系时,使用有效/独立的接头变量。换句话说,使用约束关系关于独立
接头变量表达受约束/相关连杆位置/定向。这允许早期在框架定义中并入约束,且消除在拉格朗日公式中包含约束方程的需要。
68.对于每个连杆42a、42b、42c,可相对于连杆的局部参考框架限定质量、质量中心和惯性张量。每个连杆42a、42b、42c被限定为具有以下属性的刚性主体:连杆的局部坐标系、局部坐标系中描述的连杆的质量中心,以及在本地参考框架中定义的围绕连杆的质量中心的连杆惯性。
69.根据上述的框架定义构建连杆42a、42b、42c的局部参考框架之间的运动学关系。选择惯性参考框架,当俯仰角为0时,所述惯性参考框架与可旋转基座64重合。导出机器人臂40的总动能(k),其由因为连杆42a、42b、42c在参考框架中的平移和旋转运动而产生的动能产生。同样,还相对于世界坐标框架中的共同点计算系统的总势能(p)。在计算出这些项后,在以下公式(vi)中定义拉格朗日t:
70.(vi)t=k

p
71.在拉格朗日用于机器人臂40的情况下,通用运动方程(拉格朗日方程)由以下公式(vii)定义:
72.(vii)
73.在计算出逆动力学函数后,就可以将函数的结果与连杆42a、42b、42c和接头44a、44b、44c处的测量扭矩力进行比较,以估计机器人臂40施加到环境的外部扭矩/力。
74.参考图7,本公开还提供了在检测到碰撞之后对其作出响应的方法。首先,基于计算如上文所描述的外部扭矩力而检测碰撞。接着将计算出的外部扭矩于外部扭矩阈值进行比较。在实施例中,阈值可为约10牛顿(nm)到约20nm,在另外的实施例中,阈值可为约15nm。如果计算出的外部扭矩超出阈值,那么机器人臂控制器41c调整或关闭手术机器人臂40的移动。
75.所述方法可以软件体现,并且可由计算机21、31、41中的任一个执行。类似于上文所公开的摩擦和重力补偿方法,关于机器人臂40,例如响应于来自手术控制台30的移动命令从控制塔20接收移动命令。关于设置臂62,从控制件65接收移动命令。控制塔20的控制器21a处理这些输入位置以针对机器人臂40和/或设置臂62的每个接头确定期望驱动命令并将所处理的移动命令传输到计算机41。计算机41,且确切地说机器人臂控制器41c控制机器人臂40的每个接头44a和44b,并且计算致动器48a、48b的输入电机扭矩。类似地,设置臂控制器41b控制设置臂62的每个连杆62a、62b、62c并计算接头63a和63b的致动器的输入电机扭矩。输入电机扭矩包含足够的扭矩以使连杆42a、42b、42c、62a、62b、62c的移动与移动命令匹配。
76.当手术机器人臂40响应于移动命令而移动时,所述方法计算手术机器人臂40在其移动期间所遇到的外部扭矩。所述方法还包含计算如上文所描述的估计的接头扭矩。确切地说,内力120的分量中的每一个可使用接头扭矩传感器110、编码器108和来自电机扭矩传感器105的电机扭矩或命令电机扭矩来测量,或以其它方式由机器人臂控制器41c或设置臂控制器41b使用摩擦估计器模块和重力补偿器模块来计算。确切地说,电机惯性是使用编码器值和转子惯性来计算,齿轮摩擦和接头摩擦由摩擦观测器计算,并且重力负荷由重力补偿器模块计算。摩擦观测器模块计算电机和齿轮箱摩擦,而接头摩擦是单独的模型。因此,
在计算和/或测量以上值中的每一个之后,添加所述值中的每一个以确定估计的接头扭矩值。接着通过机器人臂控制器41c将估计的接头扭矩值与测量的扭矩值进行比较。然后,机器人臂控制器41c通过从测量的接头扭矩中减去计算出的接头扭矩来计算环境扭矩。
77.然后将环境扭矩与阈值进行比较以确定是否存在碰撞。所述阈值用于过滤掉错误读数,使得仅由于碰撞引起的环境扭矩触发正响应。在检测到碰撞之后,机器人臂控制器41c在所检测到的碰撞的方向上调整命令电机扭矩。在实施例中,可响应于检测到碰撞而暂停或终止位置控制,即,移动命令的执行。另外,机器人臂控制器41c还防止电机104的扭矩过饱和。在确定外部扭矩小于指示碰撞的阈值之后,机器人臂控制器41c通过将输入电机扭矩设置为零来停止手术机器人臂40,同时继续输出扭矩以补偿碰撞状态下的重力和摩擦。这防止了手术机械臂40在障碍物被去除后在碰撞之前的移动方向上晃动。
78.图8示出了用于控制机器人臂40的运动学控制器的流程图。首先,控制机器人臂40的手柄控制器(例如手柄控制器38a)的姿势通过主推车控制器41a执行的手眼转换功能转换成机器人臂40的期望姿势。手眼功能以及本文描述的其它功能体现在可由主推车控制器41a或本文描述的任何其它合适的控制器执行的软件中。手柄控制器38a中的一个的姿势可体现为相对于坐标参考框架的坐标位置和滚转

俯仰

偏航(“rpy”)定向,所述坐标参考框架固定到手术控制台30。器械50的期望姿势与机器人臂40上的固定框架相关。然后,通过由主推车控制器41a执行的缩放功能来缩放手柄控制器38a的姿势。在实施例中,通过缩放功能缩小坐标位置并放大定向。另外,主推车控制器41a还执行离合功能,所述功能使手柄控制器38a与机器人臂40脱离。确切地说,如果超出某些移动限制或其它阈值,那么主推车控制器41a停止将移动命令从手柄控制器38a传输到机器人臂40,并且实质上起到虚拟离合器机构的作用,例如限制来自影响机械输出的机械输入。
79.机器人臂40的期望姿势是基于手柄控制器38a的姿势,且接着由主推车控制器41a执行的逆运动学函数传递。逆运动学函数计算机器人臂40的接头44a、44b、44c的角度,所述角度实现由手柄控制器38a输入的缩放和调整的姿势。然后将计算出的角度传递到机器人臂控制器41c,所述机器人臂控制器包含接头轴线控制器。接头轴线控制器包含比例

微分(pd)控制器、摩擦估计器模块、重力补偿器模块和双侧饱和块,双侧饱和块被配置成限制电机104的命令扭矩。接头轴线控制器还包含环境扭矩估计器模块,其确定机器人臂40和手术器械50正施加到环境的力和/或扭矩,所述环境例如患者、其它机器人臂40、操作台、床边操作者和其它物体或人。
80.在一个实施例中,环境扭矩估计器模块被配置成基于来自如上文所描述的接头扭矩传感器110的传感器信号τjts计算估计的环境扭矩。在另一实施例中,可基于位置误差单独或与来自接头扭矩传感器110的传感器信号τjts组合地实施环境扭矩估计器。在另一实施例中,环境扭矩估计器可使用机器人臂40的实际位置和速度以及分别来自摩擦估计器模块和重力补偿器模块的重力和摩擦的计算出的模型。
81.估计的环境扭矩被供应到由机器人臂控制器41c执行的碰撞检测模块。碰撞检测模块基于估计的环境扭矩而确定机器人臂40是否与外部物体或人碰撞,并且在估计的环境扭矩值超出第一扭矩阈值的情况下进入碰撞状态,在实施例中,第一扭矩阈值可以是+/

15nm。碰撞状态是有效的,直到估计的环境扭矩下降到第二扭矩阈值以下且机器人臂40的位置误差最小,这在实施例中在接头中的每一个的期望位置角度的+/

1度内,或每一角度
的误差总和为+/

5度。第二阈值小于第一扭矩阈值,并且在实施例中可为+/

5nm。对环境扭矩的减小和位置角度的误差的验证确保机器人臂40不会基于手柄控制器38a的位置快速加速到远离当前位置的期望位置。
82.在另外的实施例中,如果环境扭矩大于第一阈值,期望(即,命令的)速度大于速度阈值(可以是大约每秒1度),并且环境扭矩的方向与期望速度的方向相反,那么可以进入碰撞状态。最后一个条件说明臂正移动到将要碰撞且未被床边的操作者推动的情形。使用这三个参数阈值在机械臂40静止并保持其位置时使机械臂40保持刚性,并且当在远程操作期间主动地驱动机器人臂40时使碰撞力最小化。
83.在碰撞状态期间,接头轴线控制器继续施加全量的扭矩以补偿如上文所描述的接头的重力和摩擦。响应于摩擦和重力补偿,机器人臂40继续保持其位置,类似于机器人臂40处于手动模式时的情况。pd控制器的一部分产生阻尼,例如实际速度的负反馈,所述部分不受单侧饱和块限制。
84.当碰撞状态有效时,机器人臂控制器41c与手术机器人系统10的计算机21、31、41通信以限制所施加的力。在实施例中,这可以通过限制由pd控制器产生的命令扭矩分量来完成,如命令线301所示。限制命令由碰撞检测模块产生,并且可以被分成两个单侧饱和状态(saturations),使得可以在检测到的碰撞的方向上应用限制。这允许远离碰撞的运动不受限制,使得机器人臂40保持完全性能以移动远离碰撞。当处于碰撞状态时,单侧饱和状态可以设置为零,这意味着不会由于位置误差而施加扭矩,或者可以设置为小的扭矩水平,从而允许臂轻微压迫环境。
85.用于对碰撞作出响应的额外控制方案还包含由碰撞检测模块发出的命令,其表示为命令线302、303、304。关于命令线302,碰撞检测模块可更改(例如,降低)接头轴线控制器的p和/或d增益。由于在碰撞状态下的位置误差,这将产生较小的扭矩。关于命令线303,碰撞检测模块可以通过在碰撞方向上“脱开(clutch out)”手柄控制器38a来更改机器人臂40的期望运动,例如使用离合功能以使手柄控制器38a与机器人臂40脱离。这将致使机器人臂40在碰撞方向上停止移动,但允许全力移动远离碰撞。在命令线304中,碰撞检测模块可更改比例因子(例如,增大)以减缓机器人臂40在碰撞方向上的运动。此方法还可使用随着环境扭矩增大而增大的动态比例因子。这将在机器人臂40对环境施加更大的力和扭矩时使机器人臂40减缓。
86.在实施例中,如果机器人臂40和/或特定接头被推动成过于远离接头的设置位置点(即,期望或命令的位置),那么可改变设置位置点,所述设置位置点反映为跟踪位置误差最小化由于来自机器人臂控制器41c的移动命令导致的机器人臂的“回弹”。此配置涉及操作者倾斜并且因此使机器人臂40偏转的情况,机器人臂40不需要在操作者去除使机器人臂移位的力之后突然移回到期望位置。上文所述的更新设置点可以等于当前位置或远离当前位置的小距离,使得跟踪误差具有相同的命令扭矩但使回弹距离最小化。在另外的实施例中,如果跟踪误差过大,那么手柄控制器38a在误差的方向上“脱开”,例如使用离合功能以使手柄控制器38a与机器人臂40脱离。
87.应该理解,可对本文公开的实施例作出各种修改。在实施例中,传感器可安置于机器人臂的任何合适部分上。因此,以上描述不应解释为限制性的,而仅仅是作为各种实施例的例证。本领域的技术人员将构想出在所附权利要求的范围和精神内的其它修改。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1