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

导管弯曲转向控制方法、导管系统及存储介质

文献发布时间:2023-06-19 18:37:28


导管弯曲转向控制方法、导管系统及存储介质

技术领域

本申请属于医疗器械技术领域,具体涉及一种导管弯曲转向控制方法、导管系统及其控制系统,以及计算机可读存储介质。

背景技术

微创医疗技术意图减少在医疗程序期间损害的组织量,以减少患者恢复时间、不适感以及有害副作用。在微创医疗技术中经常需要通过患者解剖结构中的自然孔口或通过外科手术切口插入导管至目标组织方位。为了使导管到达目标组织方位,需要对导管的转向进行精确控制。

相关技术中一般通过建立导管运动学模型,即找到控制导管的各驱动轮的角度位置和导管末端位姿之间的映射关系,再将导管的目标位姿代入运动学模型求解驱动轮的角度位置的方式来实现对导管的精确控制。由于导管是柔性连续体结构,在实际应用中,导管的材料特性、装配工艺、温度变化、外力扰动和作业空间,对运动学描述产生很大的干扰,导致建立的运动学模型和实际运动状态偏差很大,难以满足实时精确控制导管转向的需求。

发明内容

本申请提出一种导管弯曲转向控制方法、导管系统及其控制系统,以及计算机可读存储介质,能够解决相关技术中难以满足实时精确控制导管转向的需求的问题。

本申请第一方面实施例提出了一种导管系统。该导管系统包括机械臂,与机械臂的动力部进行接合的导管器械,与机械臂通讯连接的主控器以及处理器。导管器械包括被设置成与动力部接合的器械盒以及与器械盒连接的导管,器械盒包括被设置成被动力部驱动的驱动轮以及一端缠绕于驱动轮上、另一端沿导管延伸并固定于导管末端的驱动丝。动力部包括多个驱动电机,驱动电机、驱动轮与驱动丝一一对应。处理器被配置成执行以下步骤:根据来自于主控器的导管转向指令,获取导管末端的位置变化量,位置变化量包括方向角和弯曲角;根据位置变化量确定驱动轮中的主动轮和从动轮,并计算主动轮的角位置变化量;根据主动轮的角位置变化量以及对应的从动轮的当前位置比例分配系数,计算从动轮的角位置变化量,当前位置比例分配系数用于表示在当前状态下主动轮的收线长度与对应的从动轮的放线长度的比例;控制驱动电机驱动对应的驱动轮按照角位置变化量转动。

其中,驱动丝的数量为n,n为大于2的整数,n个驱动丝将导管转动段的前端平面在角度上划分为n个区间,方向角所属的区间的两端对应的驱动丝为主动驱动丝,主动驱动丝连接的驱动轮为主动轮,剩余的驱动轮中的部分或全部为从动轮。

其中,处理器被配置成执行以下具体步骤:计算导管末端在位置变化量作用下的位置增量偏移;根据位置增量偏移计算各个主动轮的收线长度;根据主动轮的收线长度计算对应的主动轮的角位置变化量。

其中,处理器被配置成执行以下具体步骤:获取转动段的运动学模型;根据运动学模型计算当前状态下与在位置变化量作用的目标状态下的主动驱动丝的长度差值作为主动轮的收线长度;根据主动轮的收线长度计算主动轮的角位置变化量。

其中,处理器被配置成执行以下具体步骤:至少根据弯曲角计算单轮收线长度;根据单轮收线长度以及方向角计算各个主动轮的收线长度;根据主动轮的收线长度计算对应的主动轮的角位置变化量。

其中,处理器被配置成在执行根据主动轮的角位置变化量以及对应的从动轮的当前位置比例分配系数,计算从动轮的角位置变化量之前,执行以下步骤:将导管末端的当前弯曲角输入预存的映射关系,得到从动轮的当前位置比例分配系数,映射关系的输入至少包括当前弯曲角。

其中,从动轮的角位置变化量为从动轮对应的主动轮的角位置变化量与当前位置比例分配系数的乘积之和。

其中,导管转向指令包括在主控器的两条相互垂直的轴上采集到的第一电压和第二电压,方向角是根据第一电压和第二电压的比值计算得到的,弯曲角是计算弯曲速度对命令保持时间的积分得到的,弯曲速度是根据第一电压和第二电压的合成值计算得到的。

本申请第二方面实施例提出了一种导管末端的转向控制方法。该方法包括:根据来自于主控器的导管转向指令,获取导管末端的位置变化量,位置变化量包括方向角和弯曲角;根据位置变化量确定多个驱动轮中的主动轮和从动轮,并计算主动轮的角位置变化量,驱动轮与驱动电机、驱动丝一一对应设置,驱动轮上缠绕有对应的驱动丝并被对应的驱动电机驱动,驱动丝的另一端沿导管延伸并固定于导管末端;根据主动轮的角位置变化量以及对应的从动轮的当前位置比例分配系数,计算从动轮的角位置变化量,当前位置比例分配系数用于表示在当前状态下主动轮的收线长度与对应的从动轮的放线长度的比例;控制驱动电机驱动对应的驱动轮按照角位置变化量转动。

本申请第三方面实施例提出了一种导管系统的控制系统。该控制系统包括:存储器,用于存储计算机程序指令;及处理器,用于加载并执行计算机程序指令;其中,计算机程序指令被配置为由处理器加载并执行实现本申请第二方面所述的方法。

本申请第四方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行实现本申请第二方面所述的方法。

本申请实施例中提供的技术方案,至少具有如下技术效果或优点:

在本申请实施例中,根据来自于主控器的导管转向指令,获取导管末端的位置变化量,位置变化量包括方向角和弯曲角;根据位置变化量确定驱动轮中的主动轮和从动轮,并计算主动轮的角位置变化量;根据主动轮的角位置变化量以及对应的从动轮的当前位置比例分配系数,计算从动轮的角位置变化量,当前位置比例分配系数用于表示在当前状态下主动轮的收线长度与对应的从动轮的放线长度的比例;控制驱动电机驱动对应的驱动轮按照角位置变化量转动。采用导管转向指令作用下的位置变化量而非目标位置来进行控制,并且将驱动轮划分为主动轮和从动轮,根据位置变化量直接计算的只有主动轮的角位置变化量,从动轮的角位置变化量是根据主动轮的角位置变化量计算得到的,实现了从动轮的角位置变化量计算与导管转向指令的解耦,从而在实现导管的弯曲转向控制的同时简化了各驱动轮的角位置变化量的计算过程,缩短了导管转向指令的响应时间。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本申请的实践了解到。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本申请一实施例提供的导管系统的示意图;

图2示出了本申请一实施例提供的导管器械与动力部的示意图;

图3示出了本申请一实施例提供的导管器械的示意图;

图4示出了本申请一实施例提供的导管末端的转向控制方法的流程示意图;

图5示出了本申请一实施例中n=3并且驱动丝均匀分布的情况下根据方向角确定主动轮及从动轮的示意图;

图6示出了本申请一实施例中n=4并且驱动丝均匀分布的情况下根据方向角确定主动轮及从动轮的示意图;

图7示出了本申请一具体实施例中计算主动轮的角位置变化量的流程示意图;

图8示出了本申请一实施例中为转动段建立的一种运动学模型的示意图;

图9示出了本申请另一具体实施例中计算主动轮的角位置变化量的流程示意图;

图10示出了本申请又一具体实施例中计算主动轮的角位置变化量的流程示意图;

图11示出了本申请一实施例提供的导管系统的控制系统的结构示意图;

图12示出了本申请一实施例提供的一种计算机可读存储介质的示意图。

具体实施方式

下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。

需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。

下面结合附图来描述根据本申请实施例提出的导管弯曲转向控制方法、导管系统及其控制系统,以及计算机可读存储介质。

图1示出了本申请一实施例提供的导管系统1000。导管系统1000包括影像车100、分别与所述影像车100连接的台车200和主控器300,可以被接合至所述台车200上的导管器械400,与所述台车200连接的传感器系统500,以及用于在所述导管器械400、所述主控器300、所述传感器系统500以及所述影像车100之间实现控制的控制系统600等。其中,所述主控器300可以与所述台车200有线连接或无线连接。操作者对台车200旁的患者执行各种程序时,可以通过操作所述主控器300触发控制指令,经所述台车200的驱动而控制所述导管器械400前进、缩回以及弯曲转向等。

所述台车200通常可以被移动至手术床旁,用于接合所述导管器械400,并在控制指令下控制所述导管器械400沿竖直方向进行升降,或沿水平方向平移,或非竖直以及非水平方向移动,从而为所述导管器械400的操作提供一个较好的术前准备角度。其中,该控制指令可以是来自操作者通过操作所述主控器300而触发的指令,也可以是来自操作者直接通过点击或按压所述台车200上设置的按键而触发的指令。当然,在其他实施例中,所述控制指令还可以是语音控制或通过力反馈机制而触发的指令。

如图1所示,进一步地,所述台车200可以包括底座210、可以沿着所述底座210进行升降移动的滑动座体220,以及与所述滑动座体220固定连接的2个机械臂230。所述机械臂230可以包括在关节处联接的多个臂分段,所述多个臂分段为所述机械臂230提供多个自由度,例如,与七个臂分段相对应的七个自由度。所述机械臂230的末端装设有动力部(图中未示出),所述机械臂230的动力部用于接合所述导管器械400,并在所述动力部的驱动作用下控制所述导管器械400的末端相应发生弯曲转向。其中,所述2个机械臂230可以是结构完全相同或部分相同的结构,一个机械臂230用于接合内导管器械410,另一个机械臂230用于接合外导管器械420。装设时,可以先安装所述外导管器械420,待所述外导管器械420安装完毕时,将所述内导管器械410的导管插入所述外导管器械420的导管内。

所述传感器系统500具有用于接收关于所述导管器械400的信息的一个或多个子系统。所述子系统可以包括:位置传感器系统;用于确定所述导管器械400的末端和/或沿着可构成所述导管器械400的导管的一个或多个部段的位置、取向、速度、速率、位姿和/或形状的形状传感器系统;和/或用于从所述导管器械400的末端捕获图像的可视化系统。

所述影像车100可以设置显示系统110以及冲洗系统(图中未示出)等。所述显示系统110用于显示由传感器系统500的子系统生成的手术部位和导管器械400的图像或表示。还可以显示由可视化系统捕获的手术部位和导管器械400的实时图像。还可以使用来自成像技术的图像数据来呈现术前或术中记录的手术部位的图像,所述成像技术诸如计算机断层扫描(CT)、磁共振成像(MRI)、光学相干断层扫描(OCT)、以及超声等。术前或术中图像数据可以被呈现为二维、三维或四维(如基于时间或基于速率的信息)图像和/或被呈现为来自根据术前或术中图像数据集创建的模型的图像,还可以显示虚拟导航图像。在所述虚拟导航图像中,所述导管器械400的实际位置与术前图像配准,以从外部向操作者呈现手术部位内的导管器械400的虚拟图像。

所述控制系统600包括至少一个存储器和至少一个处理器。可以理解的是,所述控制系统600可以集成于所述台车200或所述影像车100中,也可以独立设置。所述控制系统600可以支持无线通信协议,诸如IEEE 802 .11、IrDA、蓝牙、HomeRF、DECT和无线遥测等。所述控制系统600可以传输指示所述导管器械400移动的一个或多个由所述动力部移动所述导管器械400的信号。所述导管器械400可以经由所述患者的自然腔道的开口或手术切口延伸至体内的手术位置。

进一步地,所述控制系统600可以包括机械控制系统(图中未示出)和图像处理系统(图中未示出),所述机械控制系统用于控制所述导管器械400的移动,因此,可以集成于所述台车200中。所述图像处理系统用于虚拟导航路径规划,因此,可以集成于所述影像车100中。当然,所述控制系统600的各个子系统并不限于上述列举的具体情况,还可以根据实际情况合理设置。其中,所述图像处理系统可以基于术前或术中记录的手术部位的图像,使用上述成像技术对手术部位进行成像。还可以与手动输入结合使用的软件将记录的图像转换成部分或整个解剖器官或区段的二维或三维合成图像。在虚拟导航程序期间,所述传感器系统500可用于计算导管器械400相对于患者的解剖结构的位置,该位置可用于产生患者的解剖结构的外部跟踪图像和内部虚拟图像,实现导管器械400的实际位置与术前图像配准,从而可以从外部向操作者呈现手术部位内的导管器械400的虚拟图像。

所述内导管器械410和所述外导管器械420的结构组成大体相同,分别具有细长柔性的内导管41和外导管42,其中,所述外导管42的直径略大于所述内导管41,以使所述内导管41可以穿过所述外导管42,并为所述内导管41提供一定的支撑性,从而可以使得所述内导管41可以到达患者体内的目标位置,以便于从目标位置处进行组织或细胞取样等操作。

所述主控器300的某些运动可以引起导管器械400的对应移动。例如,操作者操作主控器300的方向拨杆向上或向下移动时,所述主控器300的方向拨杆的运动可以被映射到所述导管器械400的末端相应的俯仰运动;当操作者操作主控器300的方向拨杆向左或向右移动时,所述主控器300的方向拨杆的运动可以被映射到所述导管器械400的末端相应的横摆运动。在本实施例中,所述主控器300可以控制所述导管器械400的末端在360°空间范围内进行移动。

图2和图3示出了本申请一实施例提供的导管器械400。所述导管器械400被配置成与机械臂230的动力部240进行接合,所述导管器械400包括被配置成与所述动力部240接合的器械盒45以及与所述器械盒45连接的导管48。其中,所述“接合”是指所述器械盒45安装至所述动力部240时,所述动力部240的驱动力可以传递至所述器械盒45内、并能使所述导管48发生正常移动的状态。例如,在所述动力部240的驱动力作用下,所述导管48的末端可以发生弯曲转向等。

器械盒45包括多个被设置成被动力部240驱动的驱动轮451以及多根驱动丝452,动力部240包括多个驱动电机241,驱动电机241、驱动轮451与驱动丝452一一对应设置。每个驱动轮451被配置为与对应的驱动电机241接合,即所述器械盒45安装至所述动力部240时,对应的驱动电机241可以带动该驱动轮451旋转,并且该驱动轮451上缠绕有对应的驱动丝452,对应的驱动丝452的活动部分,即未缠绕在该驱动轮451上的部分伸入导管48,沿导管48的长度方向延伸并最终固定于导管末端。

本申请中的末端,也可以被称为远端或头部,是指远离器械盒45的一端;前端,也可以被称为近端或尾部,是指靠近器械盒45的一端。

导管48的包括末端在内的一部分为转动段49,转动段49的末端即为导管48的末端。转动段49可以为关节组件,该关节组件在伸缩方向上具有高刚度,在弯曲方向上具有低刚度,可在驱动丝452的控制下弯曲,从而实现导管48的转向。在某些实施例中,该关节组件可以被称为蛇骨。

在转动段49的垂直于长度方向的平面内,各驱动丝452的位置可以认为是固定不变的,同时驱动丝452可以沿着转动段49的长度方向伸长或缩短。驱动丝452末端固定于转动段49的末端,并不一定意味着驱动丝452末端固定的位置位于转动段49的末端平面内。实际应用中,为更好的保护导管48可能搭载的器件(如内窥镜、手术器械等),驱动丝452末端可以固定在从转动段49的末端平面向近端移动一小段距离的位置。这种情况下,若这段距离与转动段49长度的比值小于一阈值,在驱动导管48末端转向的过程中可以视为驱动丝452末端固定的位置就在转动段49的末端平面内。

驱动轮451可以在对应的驱动电机241的驱动下顺时针或逆时针旋转。若驱动轮451朝一个方向旋转会使得对应的驱动丝452的更多部分缠绕在驱动轮451上,即部分原本属于活动部分的驱动丝452进入缠绕状态,导致活动部分的长度缩短,这个过程也可以被称为拉动驱动丝452或者说拉线/收线,为便于描述,该方向被称为正向。若驱动轮451朝一个方向旋转会使得驱动丝452的更少部分缠绕在驱动轮451上,即部分原本缠绕在驱动轮451上的驱动丝452变为活动部分,导致活动部分的长度变长,这个过程也可以被称为放线,为便于描述,该方向被称为反向。可以根据对应驱动丝452的缠绕方向决定顺时针和逆时针中哪一个是正向哪一个是反向。

控制系统600的处理器被配置为执行以下步骤以实现本申请一实施例提供的导管末端的转向控制方法。如图4所示,本方法包括:

步骤S11:根据来自于主控器的导管转向指令,获取导管末端的位置变化量。

位置变化量可以包括用于控制导管弯曲转向的方向角α和弯曲角θ。用户可以操作主控器上的方向拨杆、按键等输入设备中的至少一种来输入导管转向指令。

以方向拨杆为例说明,用户可以向操作平面内的任意方向拨动方向拨杆,这一操作在主控器内传感器的作用下转换为电信号,即为导管转向指令,具体包括在主控器的两条相互垂直的轴(即操作平面的轴)上采集到的第一电压和第二电压。根据第一电压和第二电压的比值计算用户操作的方向角度,具体的,可以计算该比值的反正切函数或反余切函数得到用户操作的方向角度。

计算第一电压和第二电压的平方和的算术平方根作为第一电压和第二电压的合成值。合成值反映了用户操作的力度,根据合成值可以计算得到导管末端转向的弯曲速度,例如可以计算合成值与预设系数的乘积作为弯曲速度。用户操作的弯曲角是计算弯曲速度对命令保持时间的积分得到的,命令保持时间是指同样的用户操作持续的时间。

控制间隔,即相邻两次导管末端的转向控制之间的间隔。在某些实施例中,每个控制间隔之内只会存在一个导管转向指令,并且主控器的采样间隔固定,此时可以省去积分的过程,而直接将弯曲速度作为用户操作的弯曲角θ。

为减少操作者的抖动、主控器的噪声等带来的影响,可以对采集到的第一电压和第二电压平滑滤波之后再计算用户操作的方向角和弯曲角。

可以直接将用户操作的弯曲角作为位置变化量中的弯曲角θ。并且,若操作平面的坐标系与导管转动段的前端平面的坐标系方向一致,即二者之间的旋转角度为0,那么可以直接采用用户操作的方向角度作为位置变化量中的方向角α,否则可以根据两个坐标系之间的映射关系对用户操作的方向角度进行变换,得到方向角α。

或者,除了必要的角度变换之外,为了使转向更平滑,减少跳变,可以对计算得到用户操作的方向角和弯曲角分割为多份之后得到位置变化量中的方向角α和弯曲角θ。例如,用户操作的弯曲角是30°,可以将本次用户输入的导管转向指令分10次完成,每次使用的位置变化量中的弯曲角θ为3°。

步骤S12:根据位置变化量确定驱动轮中的主动轮和从动轮,并计算主动轮的角位置变化量。

为简化描述,之后的位置变化量中的方向角α简称为方向角变化量α,位置变化量中的弯曲角θ简称为弯曲角变化量θ,与用户操作输入的方向角和弯曲角不一定相同。

为便于描述转动段的姿态,分别为转动段的前端平面和末端平面建立坐标系,为简化计算,坐标系的重点均为平面的中心。某根驱动丝在前端/末端平面内的坐标是指该驱动丝在前端/末端平面内的固定位置的坐标,角度是指从原点指向该驱动丝的坐标的矢量与前端/末端平面的x轴正向之间的夹角。同一根驱动丝在这两个坐标系中的坐标和角度一致。

装配好的导管处于自然状态时,即末端未转向的状态时,转动段的末端平面的坐标系一般与前端平面的坐标系方向一致。在控制导管末端转向的过程中,可以认为转动段前端平面的坐标系维持不变,末端平面的坐标系会在驱动丝的作用下发生变化。

装配好的导管处于自然状态时,各个驱动轮上的驱动丝可以维持在一个合适的松紧状态。若对某根驱动丝进行拉线,该驱动丝会带动导管末端朝其固定的方位弯曲转向,导管末端的弯曲会拉扯其他驱动丝中的部分或全部。如果驱动丝受到的由导管末端弯曲带来的拉力足够大,那么会带动对应的驱动轮反向转动一小段距离,这段距离一般受到驱动丝的松紧状态和弹性模量影响。在反向转动的过程中,由于拉力的变化是不连续的,力的跳变会导致对应的驱动轮的速度跳变,可能导致松线。转完这段距离后,驱动丝被拉紧,如果对应的电机不带动驱动轮跟随转动,会导致导管卡住。如果驱动丝受到的由导管末端弯曲带来的拉力不足以克服阻力让其带动对应的驱动轮反向转动,那么驱动丝被拉紧到系统参数(例如机械结构与尺寸、材料特性等)决定的极限之后也会导致导管卡住。导管卡住意味着主动轮无法继续收线,往往导致主动轮无法转动到角位置变化量指示的位置,导管末端无法正常弯曲到目标位置。因此,为使得主动轮能够正常收线,被拉扯的驱动丝对应的驱动轮中的部分或全部需要作为从动轮跟随放线。

以一对相对设置的驱动轮为例说明,相对设置是指两个驱动轮对应的驱动丝在导管末端固定的位置的连线经过导管末端平面的中心,即驱动丝之间的角度差为π,其中一个驱动轮作为主动轮正向旋转拉线时,另一个驱动轮作为从动轮需要跟随放线,可以定义一个参数——位置比例分配系数,用于表示主动轮的收线长度与对应的从动轮的放线长度的比例,该参数的具体内容参见后续步骤的描述。

驱动丝的数量为n,n为大于2的整数,n个驱动丝将导管转动段的前端平面在角度上划分为n个区间。可以将方向角变化量α所属的区间的两端对应的驱动丝作为主动驱动丝,主动驱动丝连接的驱动轮为主动轮。剩余的驱动轮中的部分或全部为从动轮。这里判断方向角变化量α所属的区间时,不包括区间的端点。若方向角变化量α落在某个端点上,即与某个驱动丝的角度相同时,可以只选择该驱动丝作为主动驱动丝。在某些实施例中,若驱动丝的数量和位置支持,主动轮的数量可以大于2。在确定主动轮的情况下,可以根据驱动丝的数量和位置分布,从除主动轮之外的驱动轮中选择部分或全部作为从动轮。

下面结合附图举例说明主动轮和从动轮的具体确认方式。为简化描述,在下面的示例中,对应的驱动丝、驱动轮和电机的序号均相同,实际可能不同;驱动丝均为均匀分布,实际可能不是均匀分布。

示例一:

在本示例中,n=3并且驱动丝均匀分布,驱动丝1,2,3在转动段的前端平面坐标系中的角度分别为0,2π/3,4π/3。

若方向角变化量为0,2π/3,4π/3中的一个,则角度与方向角变化量相同的驱动丝连接的驱动轮为主动轮,剩余的两个驱动轮为从动轮。

若方向角变化量

若方向角变化量

若方向角变化量

示例二:

在本示例中,n=4并且驱动丝均匀分布,驱动丝5,6,7,8在转动段的前端平面坐标系中的角度分别为0,π/2,π,3π/2。

若方向角变化量为0,π/2,π,3π/2中的一个,则角度与方向角变化量相同的驱动丝连接的驱动轮为主动轮,与主动轮相对设置的驱动轮为从动轮。例如,若方向角变化量为π/2,则驱动轮6为主动轮,驱动轮8为从动轮,驱动轮5和7既不是主动轮也不是从动轮,即无需转动。

若方向角变化量

若方向角变化量

若方向角变化量

若方向角变化量

以此类推,n为大于4的奇数且驱动丝均匀分布的情况下,若方向角变化量

n为大于4的偶数且驱动丝均匀分布的情况下,若方向角变化量

此外,存在一种特殊的n=2的情况,即两根驱动丝相对设置,这种情况下驱动丝控制导管末端转动的方向角变化量实际仅可以为两根驱动丝其中之一的角度,与方向角变化量相同的驱动丝对应的驱动轮为主动轮,另一个驱动轮为从动轮。

一般来说,在驱动丝的作用下,转动段/导管末端可以以两个自由度进行弯曲,转动段/导管末端的状态/位姿可以用两个联合变量——弯曲角和方向角来描述。通常的,方向角用于描述转动段/导管末端朝哪个方向弯曲,其取值范围大小可以为2π,具体范围可以根据实际需要而定,例如为[0, 2π],[-π,π]等;弯曲角用于描述转动段/导管末端的弯曲程度,其取值范围的下限可以为0,表示未弯曲的自然状态,上限可以根据实际情况而定,一般不超过π,例如可以为π/2,2π/3等。

在位置变化量的作用下,导管末端从当前状态变换到目标状态,也就是从当前位姿变换至目标位姿。在导管转向控制中,主要关注导管末端从当前位置到目标位置的变换,并据此计算主动驱动丝的长度变化,也就是主动轮的收线长度,再计算主动轮的角位置变化量。以下结合附图举例说明主动轮的角位置变化量的具体计算过程。

如图7所示,在本申请一具体实施例中,计算所述主动轮的角位置变化量包括以下子步骤:

S101:计算导管末端在位置变化量作用下的位置增量偏移。

由于转动段的结构设计,在弯曲转向的过程中,转动段可以近似作为圆弧来处理。可以基于这一特性为转动段建立运动学模型,并基于该运动学模型计算位置增量偏移。

举例说明,可以为转动段建立如图8所示的运动学模型,其中,转动段的长度为L,在垂直于长度方向上转动段被抽象为半径为r的圆。转动段的前端坐标系为

其中

计算当前方向角

在笛卡尔坐标系中,目标状态下末端坐标系相对于前端坐标系的变换矩阵可以表示为:

其中

根据当前状态下的位置变换和目标状态下的位置变换可以计算得到位置增量偏移

S102:根据位置增量偏移计算各个主动轮的收线长度。

位置增量偏移描述的是导管末端从当前位置到目标位置的变换。可以在上述运动学模型中加入驱动丝,每根驱动丝的固定位置设定在垂直于长度方向的圆上,驱动丝在长度方向上可以作为直线、圆弧、多段折线、或多段弧线来处理。在讨论运动学模型相关的内容时,除特意指出的部分之外,所提到的驱动丝一般是指转动段内的驱动丝。根据运动学模型,可以计算出位置增量偏移与主动轮收线长度(即主动驱动丝的缩短量)之间的映射函数,再代入S101得到的位置增量偏移即可计算得到各主动轮的收线长度。

映射函数可以为根据运动学模型算出来的解析解,或者是为了简化计算用近似、拟合等方式对解析解处理得到的函数。

S103:根据主动轮的收线长度计算对应的主动轮的角位置变化量。

具体的,结合驱动轮的几何参数(例如驱动丝的缠绕半径)以及主动轮的收线长度可以计算得到角位置变化量的数值,再根据驱动丝的缠绕方向可以确定主动轮的转动方向(顺时针或逆时针),二者结合,即可得到主动轮的角位置变化量。

如图9所示,在本申请另一具体实施例中,计算所述主动轮的角位置变化量包括以下子步骤:

S111:获取转动段的运动学模型。

S112:根据运动学模型计算当前状态下与在位置变化量作用的目标状态下的主动驱动丝的长度差值作为主动轮的收线长度。

仍以图8所示的运动学模型来举例说明,驱动丝的数量为4且均匀分布,每根驱动丝被抽象为直线进行处理。图8中下方的平面为前端平面,用i-1表示,B

根据该模型,可得当前状态

其中j=1,2,3,4。

将目标状态

根据前面确定的主动轮的编号,计算主动驱动丝在当前状态与目标状态之间的长度变化量作为主动轮的收线长度。若编号为j的驱动轮为主动轮,根据运动学模型直接计算得到的收线长度

可以用近似、拟合等方式对上述公式进行处理以简化计算。

S113:根据主动轮的收线长度计算主动轮的角位置变化量。

具体的,结合驱动轮的几何参数(例如驱动丝的缠绕半径)以及主动轮的收线长度可以计算得到角位置变化量的数值,再根据驱动丝的缠绕方向可以确定主动轮的转动方向(顺时针或逆时针),二者结合,即可得到主动轮的角位置变化量。

如图10所示,在本申请又一具体实施例中,计算所述主动轮的角位置变化量包括以下子步骤:

S121:至少根据弯曲角计算单轮收线长度。

在本实施例中对收线长度的计算进行了进一步的分解。若方向角变化量与某根驱动丝的角度一致,则只会选择该根驱动丝对应的驱动轮作为主动轮,这种情况下该主动轮的收线长度即为单轮收线长度。单轮收线长度不受实际的方向角变化量影响,由转动段末端的当前弯曲角和弯曲角变化量即可确定。

仍以图8所示的运动模型来举例说明,该运动模型的具体描述可参考前述实施例的相关内容。根据模型直接计算得到的单轮收线长度

可以用近似、拟合等方式对上述公式进行处理以简化计算。

S122:根据单轮收线长度以及方向角计算各个主动轮的收线长度。

实际控制过程中方向角变化量往往与驱动丝的角度均不相同,需要两个驱动轮协作拉线才能控制导管末端按照方向角变化量转向。可以按照方向角变化量与各主动驱动丝之间的夹角,将单轮收线长度映射为各主动轮的收线长度。

S123:根据主动轮的收线长度计算对应的主动轮的角位置变化量。

具体的,结合驱动轮的几何参数(例如驱动丝的缠绕半径)以及主动轮的收线长度可以计算得到角位置变化量的数值,再根据驱动丝的缠绕方向可以确定主动轮的转动方向(顺时针或逆时针),二者结合,即可得到主动轮的角位置变化量。

在上述给出的运动学模型的例子中将驱动丝作为直线处理,然而该模型与实际情况存在误差,并且随着转动段/导管末端的弯曲角的增大误差会呈现非线性的扩大。为提高转向控制的准确性,可以选择更复杂但更准确的运动学模型,例如将驱动丝作为多段折线/多段弧线来处理,将转动段作为多段圆弧来处理等。此外,可以根据需要引入除运动学模型之外的其他计算方式来修改收线长度的计算公式和/或修正模型计算的结果。

上述给出的计算方式可以择一使用,也可以结合使用,例如根据弯曲角分段式的选择其中一种计算方式,可以通过实验来确定如何对弯曲角分段和/或各段对应的计算方式,以满足对转向控制的准确性和/或实时性的要求。

步骤S13:根据主动轮的角位置变化量以及对应的从动轮的当前位置比例分配系数,计算从动轮的角位置变化量。

位置比例分配系数用于表示主动轮的收线长度与对应的从动轮的放线长度的比例。对于配有n个驱动轮的导管,理论上每个驱动轮可以具有n-1个位置比例分配系数,分别用于表示除自身外其他各驱动轮作为主动轮时自身作为从动轮的位置比例分配系数。对于第i个驱动轮,其位置比例分配系数可以表示为集合[k

若转动段可以当作刚体来处理,那么位置比例分配系数是一个常数。然而转动段在运动过程中的形变往往是不可忽略的,实际位置比例分配系数是非线性变化的。为更准确的描述位置比例分配系数,定义当前位置比例分配系数,用于表示在当前状态下主动轮的收线长度与对应的从动轮的放线长度的比例。

若当前位置比例分配系数为对应的从动轮放线长度与主动轮收线长度的比值,从动轮的角位置变化量可以为从动轮对应的主动轮的角位置变化量与当前位置比例分配系数的乘积之和。

从动轮的角位置变化量的计算函数可以是独立的,也可以与主动轮的角位置变化量的计算函数组合在一起。例如,若采用位置增量偏移进行计算,可以为所有的驱动轮设定一组合函数——角度增量分配函数,该函数的输入可以包括当前位置比例分配系数、位置变化量中的方向角

在本步骤之前,可以先获取当前位置比例分配系数。将导管末端的当前弯曲角输入预存的映射关系,得到从动轮的当前位置比例分配系数。映射关系的输出包括当前位置比例分配系数,输入至少包括当前弯曲角。

可以预先采集多组测试样本,对样本进行分段函数、曲线(例如多项式)拟合、神经网络训练等方式的处理,得到映射关系。样本的采集过程中可以采用手动控制的方式调整从动轮到合适的位置,即满足放线条件的位置,再记录从动轮的角位置以计算放线长度/角位置变化量,放线条件可以包括主动轮本次运动到目标位置且从动轮上缠绕的从动驱动丝维持合适的松紧状态。

根据转动段的结构设计,位置比例分配系数的非线性变化对弯曲角敏感,每组样本至少包括当前弯曲角,本次运动的弯曲角变化量和目标弯曲角中的至少一种,主动轮的收线长度、角位置变化量和角位置中的至少一种,从动轮的放线长度、角位置变化量和角位置中的至少一种。当然,可以在映射关系的自变量中引入方向角,此时样本可以进一步包括当前方向角,本次运动的方向角变化量和目标方向角中的至少一种。

例如,n=4且驱动丝均匀分布的情况下,可以选择一根驱动丝,从自然状态开始单独拉伸该驱动丝直至达到设定的弯曲角最大范围,这个过程中采集多组样本,每组样本包括主动轮的角位置、从动轮的角位置以及当前弯曲角。对第m组样本,可以计算其与第m-1组样本中的主动轮和从动轮的角位置之差,再计算从动轮角位置之差与主动轮角位置之差的比值,作为第m组样本的当前位置比例分配系数。映射关系可以选择高阶多项式的形式,输入为当前弯曲角,输出为当前位置比例分配系数,采用多组样本进行拟合确定多项式中各项的系数,得到最终的映射关系以供后续控制中使用。

步骤S14:控制驱动电机驱动对应的驱动轮按照角位置变化量转动。

可以基于驱动轮与对应的驱动电机之间接合的方式,根据S13中得到的驱动轮的角位置变化量计算对应的驱动电机的角位置变化量。

驱动电机可以具有三种基础的控制模式:位置控制、速度控制、和电流控制(也可以被称为力矩控制或者扭矩控制)。可以选择位置控制,此时驱动电机的控制量为角位置,可以计算驱动电机的当前角位置与角位置变化量之和作为目标角位置,并发给驱动电机的控制器;或者可以直接将驱动电机的角位置变化量发送给驱动电机的控制器。或者可以选择速度控制,此时驱动电机的控制量为角速度,将驱动电机的角位置变化量除以控制间隔可以得到角速度,并发给驱动电机的控制器。

此外,驱动电机一般使用三环控制,从内向外依次为电流环、速度环和位置环,外部环的输出是其内部相邻的环的输入。驱动电机的控制器可以自行完成三环控制,也可以将3个环中的部分或全部交由上位机(本申请中为控制系统600的处理器)来处理。例如,原本使用角位置作为控制量的情况下,可以选择将电机控制的位置环由上位机来处理,此时处理器将位置环处理后的角速度发送给驱动电机的控制器。

通过本实施例的实施,采用导管转向指令作用下的位置变化量而非目标位置来进行控制,并且将驱动轮划分为主动轮和从动轮,根据位置变化量直接计算的只有主动轮的角位置变化量,从动轮的角位置变化量是根据主动轮的角位置变化量计算得到的,实现了从动轮的角位置变化量计算与导管转向指令的解耦,从而在实现导管的弯曲转向控制的同时简化了各驱动轮的角位置变化量的计算过程,缩短了导管转向指令的响应时间。

本申请实施方式还提供一种导管系统的控制系统。请参考图11,其示出了本申请一实施例提供的导管系统的控制系统的结构示意图。如图11所示,控制系统600包括:处理器60,存储器61,总线62和通信接口63,所述处理器60、通信接口63和存储器61通过总线62连接;所述存储器61中存储有可被所述处理器60执行的计算机程序指令,所述处理器60执行所述计算机程序指令时执行本申请前述任一实施方式所提供的导管末端的转向控制方法。

其中,存储器61可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口63(可以是有线或者无线)实现该装置网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。

总线62可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器61用于存储程序,所述处理器60在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述导管末端的转向控制方法可以应用于处理器60中,或者由处理器60实现。

处理器60可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器60中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器60可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器61,处理器60读取存储器61中的信息,结合其硬件完成上述方法的步骤。

本申请实施例提供的电子设备与本申请实施例提供的导管末端的转向控制方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。

本申请实施方式还提供一种与前述实施方式所提供的导管末端的转向控制方法对应的计算机可读存储介质,请参考图12,其示出的计算机可读存储介质6,其上存储有计算机程序指令,所述计算机程序指令在被处理器执行时,会实现前述任意实施方式所提供的导管末端的转向控制方法。

需要说明的是,所述计算机可读存储介质的例子可以包括,但不限于光盘、相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。

本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的导管末端的转向控制方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

需要说明的是:

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下示意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

技术分类

06120115637321