1. 引言
在过去的几十年中,内窥镜不断发展更新,它们具有出色的可视化和照明效果、用于复杂手术操作的高质量设备、小外径以及符合人体工程学且方便的器械操作方式,以满足不同外科手术的需求[1]。但在外科手术追求微创化和高效化的今天,在许多情况下,尤其是当术区出现出血时,需同时使用内镜、吸引器和双极电凝器以处理出血问题。然而,在如此有限的空间内,难以同时操作多个器械。手术机器人为此提供了有效的解决方案。其中,最著名的是达芬奇手术机器人系统[2] (Da Vinci Surgical System),这是全球首个在手术室中正式投入使用的机器人系统。此外,美国强生公司也开发了多自由度的手术机器人[3],用于支气管手术。相较之下,国内的手术机器人研发起步较晚,其中以天津大学王树新团队开发的“妙手”微创手术机器人系统较为知名[4]。此外,上海交通大学徐凯教授团队也开发了SURS [5] (SJTU Unfoldable Robotic System)机器人系统。尽管这些机器人系统在微创手术中展现出显著潜力,但其工作时占用体积较大,在手术过程中与神经内镜的结合存在一定困难。为此,需探索与内窥镜配合使用的机械手结构,在尽量少地占用体积的情况下,以解决神经内镜手术中面临的各种挑战。连续体机器人是个很好的选择,这种机器人由于其独特的结构和优势,连续型机器人在灵活性、适应性和灵巧性方面优于传统机器人,能够进入传统手术器械难以到达的区域。因此,在医学领域,它们展现出传统机器人在灵敏度和适应性方面所无法比拟的优势。
连续体机器人的研究涉及多个学科领域,尤其是在机器人学、机械工程和生物仿生学等方面[6]。许多学者和研究团队在这一领域做出了重要贡献。其中宾夕法尼亚大学的Daniel E. Koditschek教授在柔性机器人和运动学领域有广泛的研究,他的工作涉及机器人在复杂环境中的运动和控制[7]。他特别关注如何设计可以适应不同环境和任务的机器人。他的工作包括对机器人的运动学和动力学进行建模,以便机器人能够更好地与其环境互动。英国诺丁汉大学Dong X团队设计了一类用于驱动并联机械手的新型欠驱动定位系统,解决了连续型机器人在运行过程中的扭曲变形导致定位误差大的问题,实现了单条定位线可以实现较高的定位和跟踪能力[8]。国内上海交通大学的杨广中教授[9]研究领域包括医疗机器人,特别是软体和连续体机器人在外科手术中的应用。首先提出了机器人控制感知对接概念,将面向机器人运动和感知那里推进到新的发展阶段。这些学者的研究为连续体机器人的发展提供了理论基础和实践经验,他们的工作涵盖了从基础理论到应用技术的广泛领域。
本文提出了一种新颖的连续型手术机械臂设计方案。其结构是和神经内镜搭配使用。铰链结构用于连接不同的关节。在损失一个自由度的情况下能简化其结构,减小体积,依附在神经内镜上实现功能的整合。采用标准D-H参数法[10]和蒙特卡罗法[11]对机械臂的运动学方程及工作空间进行了分析,以此来验证机械臂结构设计的合理性。通过商用数学软件Matlab进行了轨迹规划仿真,分析其运动曲线[12]。
2. 机械臂总体结构
(a)
(b)
Figure 1. Structure diagram of the manipulator, (a) The structure of the mechanical arm during contraction; (b) Equivalent simplified diagram of adjacent joints
图1. 机械臂结构模型图,(a) 机械臂收缩时结构;(b) 相邻关节等效简化图
这些连续型机器人通常保持对称结构,这种对称性虽然在标准应用中有其优点,但在外科手术中作为独立器械时会难以与其他手术器械有效结合。为了克服这一问题,本文提出了一种设计方案,该方案通过牺牲一个自由度,改变传统对称结构为非对称结构。在神经内镜参与的开颅手术中,这种非对称结构的连续型机器人可以与神经内镜紧密结合,既能有效利用有限的颅内空间,又能够在需要时提供辅助功能。这种集成设计不仅提升了手术操作的灵活性,还优化了手术过程中的空间使用。该结构由多个模块串联而成,每个模块为半圆形,这样能很好的贴合神经内镜。最前端是工作夹具,模块之间通过铰链连接,由钢丝进行驱动。机械臂主体能够实现俯仰,伸缩和旋转的功能,夹具能实现夹持和牵拉的功能。半圆的设计使其能在不工作时贴合神经内镜极大减小体积。该设计的具体结构通过三维设计软件SolidWorks建立的三维模型进行呈现(如图1)。
图一所示该机械臂由神经内镜,铰链,活动夹头等部件组成,其中弯曲关节由多个转动模块串联铰接而成,两个相邻模块之间可以构建一个转动单元,转动角度是由驱动钢丝决定的。所以可以根据关节角的变化来推导出驱动钢丝长度变化[13]。如图2(a)所示,此时表示机械臂两个相邻关节之间的初始状态。将其简化其转动原理等价于图2(b)所示的状态。
(a) (b) (c)
Figure 2. Schematic representation of adjacent joint status, (a) Schematic representation of the initial state of the adjacent join; (b) The structure of the mechanical arm at work; (c) Schematic diagram of adjacent joint bending
图2. 相邻关节状态示意图,(a) 相邻关节初始状态示意图;(b) 机械臂工作时结构;(c) 相邻关节弯曲示意图
其中表示在初始状态下两相邻关节驱动丝悬空的部分,H表示单节高度。当关节向右弯曲时,如图2(c)所示,右边的驱动丝悬空部分长度变小,其长度与初始状态下两关节夹角
、相邻驱动丝之间的距离d以及弯曲的角度有关。由以上已知量可推导出,驱动丝的长度变化量和角度之间的关系为:
由此得出驱动空间和关节空间之间的映射关系。
为便于在MATLAB中进行建模,本文采用标准的D-H参数法建立空间机械臂连杆坐标系。D-H法是一种常用于机器人学中的标准化方法,用于描述和计算机械臂的运动学模型。D-H法为机械臂中的每一对相邻的坐标系建立一个4 × 4的齐次变换矩阵
,描述从一个坐标系到下一个坐标系的变换。这些变换矩阵的形式使得机器人运动学分析变得更加系统化和可操作化。所建立的机械臂各关节及连杆之间的参考坐标系如图3所示。机械臂模型的D-H参数及关节变量范围如表1所示。
Figure 3. Schematic diagram of the coordinate system of each joint of the robotic arm
图3. 机械臂各关节坐标系简图
Table 1. D-H parameters of the robotic arm model
表1. 机械臂模型的D-H参数
i |
|
|
|
|
变量范围 |
0 |
|
0 |
|
90 |
(0, 50 mm), (−180˚, 180˚) |
1 |
0 |
|
|
0 |
(90˚, 110˚) |
2 |
0 |
|
|
0 |
(0˚, 20˚) |
3 |
0 |
|
|
0 |
(0˚, 20˚) |
4 |
0 |
|
|
0 |
(0˚, 20˚) |
图4展示了依照D-H参数表利用Matlab中Robotics工具箱构建的仿真模型[14]。通过操作机械臂仿真模型的各个关节并观察其姿态变化,可以验证机械臂仿真模型中各关节之间的运动关系是否符合设计要求,从而确认仿真模型的正确性。
Figure 4. Simulation diagram of the manipulator
图4. 机械臂仿真模型
通过对图4仿真模型各关节活动度检查,发现无论是角度范围还是姿态都符合设计的要求,所以仿真模型建立正确。
3. 机械臂运动学分析
3.1. 正运动学分析
运动学是机器人控制和规划中的基础,因为它提供了如何从关节的控制输入映射到末端执行器的输出的位置和姿态的信息。正运动学分析是计算机械臂的末端执行器在给定关节角度或位姿下的位置和方向的过程。通过正运动学,可以从机械臂的关节变量,比如角度或位移,计算出末端执行器的具体位置和姿态[15]。本文利用D-H参数模型对机械臂进行正向运动学建模,通过各关节间变换矩阵的连续乘积得到正运动学方程。
相邻的连杆之间变化矩阵计算公式为
本文根据连杆参数求出的各关节齐次变换矩阵,第一个自转关节只沿内窥镜轴线转动和径向平移,他们之间的齐次变化矩阵
为
。
以此类推
把以上5个齐次变化矩阵相乘得到机械臂的正运动学方程
(1)
为了简便表达,式子中,
;
;
;
;从而得到机械臂末端位置向量,向量为
其中
式子中
;
;
;
。
3.2. 逆运动学分析
机械臂逆运动学是确定机械臂末端执行器在空间中的期望位置和姿态的情况下,求解出各个关节所需要的角度或位置[16]。
在对机械臂逆运动学求解中,为了避免冗余自由度逆运动学求解的复杂性,将逆解过程增加个约束条件。关节1是为了增加整机工作空间的伸长范围,因此在进行运动学分析时,可以先将
看成是固定值,即
。后文全部应用此约束条件。
3.2.1. 关节角1求解
机械臂末端的齐次变化矩阵为
,矩阵两边同时左乘
得:
(2)
令方程(2)两边矩阵元素(3, 4)对应相等可得:
(3)
3.2.2. 关节角3求解
由矩阵元素(1, 4)和(2, 4)对应,可得:
(4)
将式子(4)的两个表达式重新排列,两边平方再相加得根据三角函数变化方程,可得:
因此
(5)
在上式中除了
,
,
和
之外,其余都是已知变量,
,
,
和
将在下面求出。所以可得
(6)
3.2.3. 关节角5求解
关节2,3,4,5是平行所以下一步左乘
,
,
,
(7)
式子(7)中矩阵(2, 3)元素,可得
(8)
接着将末端的齐次变化矩右乘
(9)
由矩阵元素(1, 3)和(2, 3)对应,可得
(10)
三个方程联立可解出
(11)
然后利用
(12)
可以求出
,接着利用得出的
和
的值,可以用来计算(6)式子中
的值。
3.2.4. 关节角2和关节角4求解
再次变化式子(4)经过三角函数变化,可得
(13)
将上式(13)中两个方程联立处理,可以计算出结果
(14)
既然
,
和
都已知,由此可得
(15)
4. 机械手仿真分析
4.1. 正运动学验证
在前述工作中,我们已成功建立了机械臂的运动学模型,并验证了其运动学建模的正确性。在本章研究中,机械臂的初始位姿被设定为其零位姿。为验证机械臂正运动学模型的准确性,我们选择了10组任意给定的关节角度进行实验(如表2)。表2中详细列示l关节角度的运动范围和具体数据。通过对比计算结果与仿真模型输出结果的吻合程度,可以评估正向运动学建模的精度。如果计算结果与仿真模型结果完全一致,这将有力证明所建立的正向运动学模型的准确性和有效性。
Table 2. Any given 10 sets of joint angles
表2. 任意给定10组关节角
组号 |
θ1/(˚) [−180, 180] |
θ2/(˚) [90, 110] |
θ3/(˚) [0, 20] |
θ4/(˚) [0, 20] |
θ5/(˚) [0, 20] |
1 |
0 |
90 |
0 |
0 |
0 |
2 |
30 |
92 |
2 |
2 |
2 |
3 |
−50 |
95 |
5 |
5 |
5 |
4 |
70 |
96 |
6 |
6 |
6 |
5 |
−85 |
98 |
8 |
8 |
8 |
6 |
90 |
100 |
10 |
10 |
10 |
7 |
−100 |
102 |
12 |
12 |
12 |
8 |
120 |
105 |
15 |
15 |
15 |
9 |
−150 |
108 |
18 |
18 |
18 |
10 |
180 |
110 |
20 |
20 |
20 |
Figure 5. Position error diagrams of theoretical and simulation results
图5. 理论与仿真结果的位置误差图
由图5可知,10组数据中,
这3个方向的平均位置误差分别为0.000253、0.000219、0.00024 mm,平均位置误差小于机械臂总长度的0.05%,误差值在可接受的范围内,从而验证了正运动学推导的正确性。
4.2. 逆运动学验证
为了验证逆运动学推理的正确性,任意给定10组末端位姿数据(如表3)。表3任意给定10组末端位姿。将给定的位姿数据分别代入理论模型和仿真模型,求出机械臂的唯一逆解,并进行了对比分析。
Table 3. Any given 10 sets of joint angles
表3. 任意给定10组关节角
组号 |
位置/(mm) |
姿态角/(˚) |
|
|
|
α |
β |
γ |
1 |
0 |
0 |
44 |
0 |
0 |
0 |
2 |
−11.41 |
−6.588 |
41.08 |
120 |
30 |
90 |
3 |
−12.839 |
−12.839 |
38.788 |
130 |
45 |
90 |
4 |
−8.388 |
−14.529 |
40.04 |
125 |
60 |
90 |
5 |
−3.182 |
−18.046 |
39.11 |
129 |
80 |
90 |
6 |
7.364 |
−20.234 |
37.004 |
−41 |
70 |
−90 |
7 |
12.072 |
−20.072 |
35.057 |
−35 |
60 |
−90 |
8 |
17.632 |
21.013 |
32.201 |
−25 |
−50 |
−90 |
9 |
26.867 |
−12.528 |
29.167 |
−17 |
25 |
−90 |
10 |
29.631 |
5.225 |
27.858 |
−10 |
−10 |
−90 |
图6可知,本文所提出的逆运动学模型求出的结果与仿真所得到的结果相比,各关节角的平均误差分别为0.00218、0.0083、0.0197、0.011、0.0105 rad。这表明该方法求解运动学逆解是正确的。
Figure 6. Angle error diagram of inverse kinematics solution
图6. 逆运动学求解的角度误差图
4.3. 机械臂工作空间分析
机械臂工作空间[17]的求解方法主要有图解法、解析法和数值法。图解法通常依赖于手工绘制和几何推导,容易受到绘图精度的影响,可能导致结果不够准确。对于高自由度或复杂结构的机械臂,解析法的数学模型可能非常复杂,难以建立和求解。本文选用蒙特卡洛法对机械臂进行空间分析。蒙特卡洛法又称统计模拟法是一种通过随机抽样来进行数值计算的技术,是数值法的一种。通过随机生成大量的末端执行器的位置和姿态,计算这些点是否在机械臂的工作范围内,从而估计出工作空间的形状和大小。基于蒙特卡洛法在Matlab中进行编程仿真,将10,000个关节变量随机数值代入运动学正解,将获得末端执行器的坐标以描点的形式展示出来[18],就能得到机械臂的工作空间云图(如图7)。图7表示该机械臂末端位置的不同平面工作空间投影图。
(a) (b)
(c) (d)
Figure 7. Cloud and projection of the manipulator workspace, (a) Cloud image of the workspace of the robotic arm; (b) XOY plane projection; (c) XOZ plane projection; (d) YOZ plane projection
图7. 机械臂工作空间云图和投影图,(a) 机械臂工作空间云图;(b) XOY平面投影图;(c) XOZ平面投影图;(d) YOZ平面投影图
由图7可知,该机械臂的工作空间范围为x ∈ [−30.088, 30.088] mm,y ∈ [−30.088, 30.088] mm,z ∈ [27.858, 44.000] mm,机械臂工作空间形状紧凑,除了中心留有神经内镜的空心区域外无明显空洞,符合机械臂各个关节的实际运动空间,反映出机械臂能满足其自身工作要求[19]。
4.4. 轨迹规划仿真
Figure 8. End trajectory of the robotic arm
图8. 机械臂末端轨迹
机器人末端执行器的轨迹规划是机器人研究的重点领域之一,影响着机器人在生产制造过程中的实际使用效果。采用点到点规划对机器人关节空间轨迹进行研究,得到各关节位移、速度、加速度曲线。首先,确定空间中的起始点A和终止点B的位姿矩阵,有
基于Matlab工具箱对建立的运动学模型利用五次多项式对机械臂关节空间进行插值规划轨迹,通过调用jtraj函数和plot3函数能够得到末端轨迹[20] (如图8)。
接着调用plot函数得到各关节曲线图。图9为机械臂5个关节的位移随时间变化的曲线,图10为5个关节速度随时间变化曲线,图11为5个关节的加速度随时间变化曲线。
(a) (b)
(c) (d)
(e)
Figure 9. Displacement change curves of each joint, (a) Joint Angle 1 displacement; (b) Joint Angle 2 displacement; (c) Joint Angle 3 displacement; (d) Joint Angle 4 displacement; (e) Joint Angle 5 displacement
图9. 各关节位移变化曲线,(a) 关节角1位移;(b) 关节角2位移;(c) 关节角3位移;(d) 关节角4位移;(e) 关节角5位移
(a) (b)
(c) (d)
(e)
Figure 10. Curve of velocity variation of each joint, (a) Joint Angle 1 angular velocity; (b) Joint Angle 2 angular velocity; (c) Joint Angle 3 angular velocity; (d) Joint Angle 4 angular velocity; (e) Joint Angle 5 angular velocity
图10. 各关节角速度变化曲线,(a) 关节角1角速度;(b) 关节角2角速度;(c) 关节角3角速度;(d) 关节角4角速度;(e) 关节角5角速度
(a) (b)
(c) (d)
(e)
Figure 11. Angular acceleration curves of each joint, (a) Joint Angle 1 angular acceleration; (b) Joint Angle 2 angular acceleration; (c) Joint Angle 3 angular acceleration; (d) Joint Angle 4 angular acceleration; (e) Joint Angle 5 angular acceleration
图11. 各关节角加速度变化曲线,(a) 关节角1角加速度;(b) 关节角2角加速度;(c) 关节角3角加速度;(d) 关节角4角加速度;(e) 关节角5角加速度
由图9~图11可知,机械臂在沿规划路径移动时,关节角1位移、速度、加速度曲线范围要比其他关节角要大,这是因为关节角1的活动范围比较大导致的。总体来看各关节角位移、速度、加速度曲线变化较为平缓,没有突变的现象,说明机械臂在工作过程中是能够保持平稳运行的,进一步验证了结构设计的合理性。
5. 结论
本文设计了一种专用于神经内镜手术的辅助机械臂,旨在提升手术精度与操作性。在运动学方面,通过推导齐次变换矩阵,我们获得了机械臂的运动学方程,并从中得到了末端执行器的位姿向量。这一过程不仅明确了机械臂各关节的运动关系,也为临床应用中的路径规划提供了理论支持。为验证所推导运动学方程的正确性,进行了仿真分析,结果显示出所建立模型有着良好的准确性和可靠性。在工作空间分析中,采用蒙特卡洛法在Matlab软件中绘制了机械臂的工作空间点云图。所生成的点云图展示了机械臂具有十分饱满的活动空间。此外,在轨迹规划仿真中,通过对机械臂各关节的位移、速度及加速度曲线的分析,结果表明,机械臂能够实现平滑的点到点运动。
根据研究结果可知,所设计的神经内镜辅助机械臂具备良好的工作空间和高度的关节灵活性。其惯性小、灵活性强,能够适应在狭小的颅内空间中进行操作,表现出优异的运动学性能,验证了结构设计的合理性和可行性。尽管该机械臂结构展现出良好的表现,但在结构建模和简化分析过程中存在的误差,可能会对实际控制中的精度产生潜在影响。因此,后续研究应进一步优化结构设计,构建实物模型,并通过实物模型的控制实验验证其运动学性能。
这些成果为机械臂在神经内镜手术中的实际应用提供了重要的理论依据和技术支持,为未来相关研究的深入开展奠定了坚实的基础。
NOTES
*通讯作者。