柔性内镜介入机器人模糊PID控制研究
2019-03-05,,,,
, , , ,
(中车青岛四方机车车辆股有限公司 高速列车国家工程研究中心,山东 青岛 216000)
0 引言
据世界卫生组织统计,目前全世界约有70%的人患有不同程度的消化道疾病,随着微创手术的普及,柔性消化内镜以其损伤小、痛苦少、并发症少、恢复快、检查直观等优点在消化道疾病的诊断与治疗中得到广泛的应用。典型内镜下手术有治疗消化道早期癌症的内镜下粘膜切除术(EMR)、内镜粘膜下剥离术(ESD)、治疗贲门失弛缓症的经口内镜下贲门括约肌切断术(POEM)、治疗胰胆管疾病的经内镜逆行胰胆管造影术(ERCP)以及经自然腔道微创介入手术(natural orifice transluminal endoscopic surgery,NOTES)。
柔性消化内镜需要通过人体自然腔道进行介入操作,相对于其他手术环境更为复杂,稍有不慎可能损伤组织甚至穿孔,如图1所示;镜体操作部结构的设计一定程度上增加了操作难度,医生需要单手控制大小拨轮以及按钮等实现对内镜的操作,长时间重复高强度的操作引起医生的不适[1];
机器人辅助介入为解决上述问题提供了一条途径。中国科学院沈阳自动化研究所李言民等人基于传统胃镜开发了主从式胃镜辅助介入机器人,用于镜体的主从介入,开展了动物实验研究[2];法国斯特拉斯堡大学Allemann等人设计了内镜操作部操作器,并通过手柄控制镜体进行介入操作[3];日本产业医科大学的Kume等人研制了一款用于输送肠镜的机器人EOR(endoscopic operation robot)[4],通过两手柄进行主从操作,实现末端弯曲、镜体旋转与进退自由度;荷兰屯特大学研制的柔性内镜机器人[1,5],分为镜体输送单元与镜体操作部单元,通过自制模型评估机器人的性能。新加坡南洋理工大学开发的MASTER机器人[6]用于EMR与NOTES等手术的主从操作。目前在消化内镜辅助介入操作机器人方面,大部分机构关注于机器人本体功能的研发,关注于手术操作过程中生理活动补充的研究较少。受人体生理活动的影响,病灶靶点的活动对柔性内镜的操作产生重要的影响,而在内镜介入手术中,需要时刻保持病灶在视野中央,受生理活动的影响,靶点时有可能运动出操作视野外,而频繁操作胃镜跟踪病灶又会分散医生工作注意力,使其无法专注于手术,难以实现安全手术介入操作。美国约翰霍普金斯大学研发的“STAR”(Smart Tissue Autonomous Robot)手术机器人[7],在医生的监督与辅助操作下,实现肠道的自动缝合,术中医生只负责手术规划与在线调整,重复性的缝合操作由机器人自主完成,将医生从繁重的劳动中解放出来,并提高了手术效率。
图1 常用消化内镜介入检查术
法国斯特拉斯堡大学的Ott等人尝试采用预测控制进行补偿,采用经典的重复与预测控制,未考虑系统模型的不稳定性与变化[8]。内镜镜体高度柔性,辅助机器人的运动量不一定全部传递到末端,手术过程中,需要实时调整控制器参数,以确保操作的快速、准确以及安全。本文针对内镜机器人操作存在的问题,分析内镜结构,建立内镜运动学模型,提出了基于模糊PID控制器的算法适应不确定的环境,以改善系统的跟踪性能。
1 内镜介入操作机器人系统以及运动学模型
1.1 内镜介入操作机器人系统的组成
一般内镜介入机器人系统采用主从控制。主端由主手和控制台构成,具备四个自由度,分别与镜体的进退、旋转、上下弯曲、左右弯曲这4种运动相对应。从端由机器人与机器人控制柜构成,响应人手操作完成对镜体的进退、旋转以及弯曲操作。
为实现内镜对人体生理活动的自动补偿,提取上下弯曲与左右弯曲两个自由度,由机器人根据目标靶点在视野的位置,自动调节两弯曲自由度。镜体进退与旋转自由度由人根据手术进行手动调节。
1.2 内镜弯曲段运动模型
消化内镜弯曲段的弯曲是通过旋转镜体操作部拨轮实现的,其基本结构如图2所示。拨轮旋转带动末端固定在拨轮上的钢丝动作,钢丝贯穿整条内镜镜体。弯曲段内部是由一段段类似蛇骨的环形零件铆接而成,相邻蛇骨零件之间可上下或左右方向活动[9]。当旋转拨轮拉动钢丝时,弯曲段内一侧钢丝长度变短,另一侧钢丝长度边长,产生弯曲,在蛇骨内侧设有导引环用作钢丝活动通道。其中钢丝1,3随大拨轮旋转动作,控制上下弯曲;钢丝2,4随小拨轮旋转动作,控制左右弯曲。在蛇骨外侧,附有金属编制网对蛇骨起到支撑作用;最外侧布有橡皮管,在起到密封作用的同时也可提供支撑。
图2 消化内镜末端弯曲机理
根据检查对象的区别,消化内镜主要分为肠镜与胃镜,两者结构以及组成一致,仅在镜体长度、镜身直径以及弯曲角度范围等具体参数上略有差别。本文以临床胃镜为例进行建模分析,胃镜弯曲段的弯曲角度范围为左右方向-100~100°,上下方向-90~210°,由于两方向弯曲角度范围差距较大,蛇骨分布并不是均匀的;两上下弯曲关节与一左右弯曲关接交替排布。
表1 D-H参数列表
对内镜弯曲自由度而言,其输入为大小拨轮旋转两自由度,而输出是几十个自由度,计算很复杂。为此,考虑到弯曲过程中蛇骨受外侧金属编网与橡皮管的作用,弯曲段可假设为圆弧进行处理[8],并认为弯曲部与钢丝在其轴向方向是不可伸展的。内镜末端模型如图2所示,以弯曲部起始点所在平面建立坐标系{O0},以内镜中心点作为原点,对驱动钢丝按逆时针进行编号,以中心点到1号钢丝连线为x0轴,中心点到2号钢丝连线为y0轴,垂直平面的方向为z0轴;以弯曲部结束段所在平面建立坐标系{O1},以内镜末端所在平面建立坐标系{O2};找出坐标系{O2}相对于坐标系{O0}的旋转变换与平移变化关系,Π为内镜中心轴线所在平面,α为x1轴与平面Π的夹角,β为平面Π内弯曲部弯曲的角度。其中弯曲段的长度为Lb,末端直线段长度为Le。
在初始状态下,弯曲部是直的,坐标系{O0}与{O2}所在平面是平行的,坐标系{O0}绕平面Π的法向量n旋转角度β,并平移获得{O2},其齐次变换矩阵为:
(1)
式中,sx和cx分别表示sin(x)和cos(x)。
设拨轮的直径分别为d1与d2,拨轮旋转的角度q=[q1q2],初始条件下q0=[q10q20],弯曲段是直的;旋转拨轮pj一定角度Δqj=qj-qj0(j=1,2),对钢丝施加力,改变钢丝在内镜内的长度分布;设弯曲部中心轴的长度为L,Li为第i(i=1,2,3,4)根钢丝在弯曲部内的长度,设R为内镜中心轴线对应的弯曲曲率半径,Ri为第i根钢丝在弯曲角度为β时的弯曲曲率半径;内镜的牵引钢丝在其四周均匀布置,因此第3根钢丝和第4根钢丝的长度变化量分别与第1根钢丝和第2根钢丝的长度变化量大小相等,方向相反。坐标系{O0}的x0o0y0所在平面截面如图3所示,D为内镜的直径,驱动线长度的变化量Δli(i=1,2,3,4)与变量α、β及内镜操作部拨轮角度变化的关系如下:
(2)
由式(2)可求得:
(3)
(4)
图3 弯曲段近端{0}坐标系截面图
2 内镜介入机器人模糊PID控制
2.1 内镜机器人执行器
内镜机器人采用电机作为执行器,选用电机的参数与性能影响着机器人动态与静态精度。考虑到直流无刷电机具有动态响应好、效率高、寿命长、易于维护等优点,采用直流无刷电机作为机器人执行器,其简化模型如图4所示。
图4 直流电机简化模型
其中,Ua为电机电枢电压,Ia为电枢电流,Ra与La分别为电枢电路的电阻与电感,Ea为电机绕组反电动势,ω为电机转速,其动态响应方程由可由式(5)描述:
(5)
式中,Ke与Km分别为电机的反电势系数与转矩系数,T为电机驱动力矩,TL为负载力矩,Ja为电机和负载折合到电机轴上的转动惯量,kf为电机和负载折合到电机轴上的粘性摩擦系数。根据该方程可得电机的传递函数如图5所示。
图5 直流电机传递函数
2.2 模糊PID控制器设计
由于消化内镜本身的柔性特点,内镜近端拨轮的操作与末端响应并不是严格一一对应的关系,且受人体解剖结构的影响,内镜在人体内的形态并不是固定的,同时受人体生理活动的影响,并考虑到运动学模型的近似性,在内镜介入过程中,系统的参数会发生变化,从而降低模型的精确性,导致内镜末端的动作存在明显的不确定性。因此在内镜介入操作过程中需实时调整控制参数,以期适应内镜镜体和环境的不确定性与参数的变化。如果驱动器采用传统的PID控制、前馈补偿PID控制等方法,在不确定环境以及参数因素的影响下,系统的控制精度会降低。而模糊控制具备较强的鲁棒性,其不依赖于被控对象的精确模型,可削弱外界干扰以及模型参数变化对控制效果的影响,适应于内镜介入机器人的操作。模糊PID控制根据偏差与偏差的变化率实时调整PID控制器参数,适应不同外界环境,可提高控制系统的性能。
自适应模糊PID控制器以传统PID控制器为基础,采用模糊推理的思想,以关节变量的偏差e和偏差变化率ec作为二维模糊控制器的输入变量,以PID控制器中Kp,Ki,Kd的变化值作为输出,利用模糊控制律在线整定PID各个参数。通过整定参数后的PID控制输出控制驱动器,实现对位置的实时跟踪。
2.2.1 确定输入输出变量
以偏差e与偏差变化率ec作为模糊控制器输入,PID控制器的Kp,Ki,Kd的变化量作为输出。Kp,Ki,Kd的调整公式为:
(6)
式中,Kp0,Ki0,Kd0为PID初始参数,输入变量E、EC与输出变量ΔKp,ΔKi,ΔKd的模糊子集均取为{NBNMNSZOPSPMPB},子集中各元素分别代表负大、负中、负小、零、正小、正中、正大,变量论域统一设定为{-3, -2 , -1, 0, 1, 2, 3},三角形函数在论域范围内均匀分布,其灵敏度较高,以其作为系统的隶属度函数。
2.2.2 确立模糊控制规则
模糊控制器设计的关键在于模糊规则的确定,参照工程方面的经验,以下三项作为参数Kp,Ki,Kd在不同e与ec下的自调整原则[10]:
1)当误差|e|较大时,为保证系统足够快的跟踪响应性能,取较大的Kp;同时如积分作用明显可能出现过大超调,因此选用较小Ki值进行限制。
2)当误差|e|为中等大小时,需考虑减小系统超调,并考虑系统的快速响应速度,需选取大小适中的Kp、Ki和Kd。
3)当误差|e|比较小时,为减小系统的稳态误差,取较大为保证系统具有较好的稳态性能,应取较大的Kp与Ki;同时需考虑系统的鲁棒性,并避免振荡,Kd的选值大小与|ec|的值呈反向关系。
综上,建立ΔKp,ΔKi,ΔKd的模糊控制规则。
2.3 基于模糊PID控制的内镜介入机器人系统
内镜介入操作手术中,医生通过图像标记病灶的位置,机器人识别病灶特征后,以病灶处于视野中心为控制目标,计算内镜机器人目标位置,根据目标位置与当前位置的偏差,使用逆运动学与逆雅可比矩阵,将位置偏差换算为关节量偏差,通过模拟PID控制器在线调整PID控制器的Kp,Ki,Kd参数,计算出各关节变量的控制指令,命令机器人操作内镜到达目标位置,图6为系统的控制原理框图。
图6 机器人系统模糊PID控制原理框图
3 系统仿真实验结果
通过仿真实验来验证所提出模糊PID控制器的有效性。在机器人控制内镜弯曲段跟踪镜下病灶靶点时,大小拨轮的旋转操作是独立进行的,两自由度相对独立。因此,以一个关节量作为对象,对其动作进行仿真验证。以大拨轮旋转镜体实现上下弯曲自由度的仿真中,初始PID控制参数为Kp0=60,Ki0=10,Kd0=1,内镜弯曲段的位置跟踪曲线如图7与图8所示。图7中给出了阶跃响应特性。图8中,给定指令为阶梯信号。
通过图7与图8的仿真结果可以看出,当输入指令为阶跃信号时,模糊PID控制算法在快速性与稳态误差方面均优于传统的PID算法。只有超调略大于传统PID算法。还需要对算法进一步改进优化,以改善其性能。所提出的模糊PID控制算法相对于传统PID算法更具优势,加快系统的响应时间,并可减小稳态误差。该算法的性能还有待通过实际的内镜机器人操作实验来评估验证。
图7 系统阶跃响应
图8 阶梯输入信号系统响应
4 结束语
针对消化内镜机器人介入操作过程中克服生理活动对干扰镜下手术的问题,提出了模糊PID控制算法。首先对机器人系统的运动学模型进行分析;其次面向机器人控制提出了模糊PID控制算法,并通过仿真进行验证分析。仿真结果标明,模糊PID控制算法提升了系统的响应速度,改善了系统的稳态误差。因此,所提出的模糊PID控制算法在控制消化内镜机器人介入操作过程中能改善系统的性能。