脉搏诊断机器人力反馈式位置跟随控制与仿真
2021-10-28刘群坡刘广辉王海星
刘群坡,刘广辉,王海星
(河南理工大学电气工程与自动化学院,河南焦作 454002)
0 引言
脉搏诊断理论已贯穿于中医学的生理、病理、诊断、治疗各方面,在中医整体理论中占有重要地位[1]。利用串联机械臂的高灵活性、高安全性特点进行脉搏诊断是中医脉诊现代化发展趋势。在脉搏诊断过程中,人的手臂发生轻微转动或者轻微平移会造成脉搏点位置发生变化,对脉搏诊断造成很大干扰。针对该问题,本文基于V-REP(Virtual Robot Experimentation Platform)机器人仿真软件对机器臂末端传感器跟随脉搏点运动进行控制仿真研究[2-3]。当脉搏位置发生变化时机器人能够控制末端脉搏传感器的中心点,时刻保持接触脉搏点,使传感器获取到真实的脉搏信息,提升诊脉质量。模拟场景如图1 所示。
针对机器臂末端跟踪控制的研究较多。如Chen 等[4]在改进自抗扰控制基础上提出一种用于控制六自由度串行机器人的高精度轨迹跟踪策略,改进基于循环混合四元数曲线的姿态轨迹规划算法,利用运动学方程和速度逆雅可比矩阵,将位置和姿态轨迹转化为关节轨迹,利用上述转换环节作为自抗扰控制的预处理环节代替典型自抗扰控制的跟踪微分器,消除跟踪延迟影响,通过仿真验证了结果;潘立等[5]针对具有参数不确定性和外界干扰的六自由度工业装配机器人,提出一种自适应鲁棒滑模跟踪控制器,实现了严格的轨迹跟踪、精确的参数估计和对外界干扰的鲁棒性。随着视觉图像处理技术的发展,利用图像处理技术进行指尖跟踪成为一种新的研究方向,Wei 等[6]提出一种新的基于图像处理的指尖跟踪算法,实验结果表明,改进的指尖跟踪算法能有效提高跟踪精度。
Fig.1 V-REP simulation scenario图1 V-REP 仿真场景
以上方法仅关注了跟踪算法理论,并未结合实际应用进一步体现算法优势。本文针对基于五自由度机器臂的脉搏诊断应用,更偏向实际应用场景,在具有物理引擎的机器人仿真环境中采用最贴合实际的压力反馈策略,对机器人的末端跟随控制进行研究。诊脉过程中患者的手臂发生轻微晃动会造成脉诊误差,为减少这类误差发生,需要控制机器臂带动末端传感器跟随脉搏点移动,保持传感器中心与脉搏点时刻保持接触,以此获取更可靠的脉搏数据[7-9]。
本文基于脉搏传感器的压力值反馈调整机器人的跟随运动策略,通过分析手臂在旋转和平移动作时的脉搏传感器阵列力的数据,针对力的变化机器人做出对应动作,进而实现脉搏传感器跟随脉搏点运动。
1 机器臂模型建立及仿真
1.1 机器臂模型
本文以五自由度机器臂为研究对象,其结构如图2 所示,5 个关节全部为旋转关节。
Fig.2 Robotic arm structure图2 机器臂结构
机器臂的正运动学相对逆运动学求解较为简单,通过对每相邻连杆的齐次变换矩阵进行运算,可以求出末端坐标系在基础坐标系下的齐次变换矩阵,通过齐次变换矩阵便可得出由关节角到末端姿态的函数关系[10-11]。
针对图2 所示的机器人坐标系建立D-H 参数表[12],如表1 所示。
Table 1 D-H parameter表1 D-H 参数
根据机械臂的运动学模型以及相邻连杆坐标系间的位姿关系,建立相邻连杆坐标系间的变换矩阵如下:
其 中,cijn(i=1,2…,5,j=1,2…,5,n=1,2…,5)代 表cos(θi+θj+θn),sij(ni=1,2…,5,j=1,2…,5,n=1,2…,5)代表sin(θi+θj+θn)。
通过公式(8)可以求得在关节角已知的情况下末端相对基坐标系的姿态,即正向运动学。关于逆运动学,本文采用V-REP 仿真求解器,故不需要逆运动学理论分析。
1.2 机器人模型验证
通过V-REP 中的Denavit-Hartenberg 工具可以查看模型各个关节的D-H 参数,如图3 所示。图3 为五自由度机器人在初始姿态的各个关节间的参数,该参数结构与建立的D-H 表一致[13],表明在仿真中建立的模型正确性,同时在仿真中给出具体参数值。
Fig.3 D-H display tool图3 D-H 显示工具
1.3 机器人逆运动求解器
在V-REP 仿真中,不需要针对逆运动学求解问题进行复杂的数理分析,只需要在软件中对五自由度机器臂的逆运动学求解器进行设置。将机器臂结构中的首尾关节进行关联并建立IK_Group,对逆运动求解器的求解参数进行设置。图4 为具体的参数设置。该求解器可通过迭代法求得满足要求的近似逆运动学数值解,解决了不规则结构的机器臂逆运动学求解问题。
Fig.4 Inverse kinematics solver setup图4 逆运动学求解器设置
2 传感器与脉搏模型
本文采用的脉搏压力传感器阵列是由25 个微型压力传感器构成[14-15],其结构如图5 所示。每一个微型压力传感器点都可获取脉搏跳动时反弹的压力数值。将该传感器装配至机器人末端,用于获取脉搏的跳动数据[16-18]。
图5 中,fij代表第i行第j列的微型压力传感器。
Fig.5 Pulse pressure sensor array图5 脉诊压力传感器阵列
在V-REP 仿真环境中,为模拟人体脉搏的“寸”、“关”、“尺”3 个脉搏点位[19],通过采用微型跳动关节模拟具有与人体脉搏动态特性相似的脉冲模型,其结构如图6 所示。根据一般成年人的脉搏尺寸将该脉搏跳动模型宽度设置为3.6×3.6 mm2。
Fig.6 Pulse model图6 脉搏模型
3 脉搏跟随控制仿真
3.1 控制策略
本实验主要根据压力传感器数据判断当前传感器阵列与目标脉搏点的相对位置关系,进而控制机器臂末端运动朝向,最终实现传感器阵列的中心点对准脉搏点。仿真中主要控制策略如图7 所示[20]。
Fig.7 Control strategy图7 控制策略
3.2 传感器相对脉搏点位置
(1)当传感器阵列的中心点位置与脉搏点接触时,传感器阵列中的部分标志性数据如图8 所示。其中f33 表示传感器阵列中心点的微型压力传感器数据,f33 压力数值是相对最大值,f32、f34、f23、f43 相对f33 数值偏小并接近相等,此时传感器阵列数据作为判断传感器阵列中心点是否与脉搏点接触的依据。
Fig.8 Sensor facing the pulse point图8 传感器正对脉搏点
(2)当传感器阵列的中心点位置与脉搏点位置不垂直时,传感器阵列中心相对脉搏点可能存在偏上、偏下、偏左、偏右等情况。本文只列举传感器阵列中心相对脉搏点偏上时的数据,如图9 所示。其中f43 表示传感器阵列第4行第3 列的微型压力传感器数据,f43 压力数值是相对最大值,f23 与f33 相对f43 数值偏小,且f32 与f34 两点的数据最小,表明此时传感器阵列中心点相对脉搏位置偏上。数据出现此情况需要控制机器臂末端朝相对脉搏点下方运动,直至传感器阵列的数据出现图8 中传感器中心正对脉搏点的情况。
Fig.9 Up position of sensor relative to pulse图9 传感器相对脉搏位置偏上
3.3 仿真实验
(1)手臂静止不动。在动态调整过程中,机器臂的各个关节角度变化以及传感器的波形数据变换如图10 所示,其中第3 个图表示手臂的平移距离和旋转角度数据变化为0。在7.8s 前由于传感器未接触脉搏点,所以传感器数据为0;在7.8s 开始接触,此时传感器获得数据,但传感器中心点未对准脉搏点,传感器数据不稳定;在7.8~9.2s 内通过调整机器人姿态,直至传感器阵列中心与脉搏点接触;9.2s 后机器臂不再运动,此时传感器数据波形达到与图8 数据相似,表明传感器中心正对脉搏点。
(2)手臂轻微旋转。动态调整过程如图11 所示,其中第三个图显示手臂在30s 至36.8s 顺时针方向旋转7.7°,通过图中的传感器数据变化可以看出在旋转的过程中脉搏传感器的波形一直保持与图8 数据形同,表明在手臂旋转的过程中传感器阵列的中心一直跟随脉搏点在运动。
Fig.10 When the arm is still图10 手臂静止
Fig.11 Slight rotation of the arm图11 手臂轻微旋转
Fig.12 Slight translation of the arm图12 手臂轻微平移
(3)手臂轻微平移。动态调整过程如图12 所示,在15s轻微移动1.44cm,在22.5s 朝反方向移动2.94cm,由于平移对传感器数据的采集影响较大,传感器数据的波动较为明显,通过传感器数据可以看出平移后的18~22s 间,传感器数据保持与图8 数据相似,表明手臂平移运动发生后,机器臂通过运动调整使传感器的中心与脉搏点相接触,实现手臂发生平移时的跟随运动。
4 结语
为削弱脉搏诊断过程中手臂轻微晃动对脉搏数据采集的影响,提出一种用于脉搏诊断的力反馈式脉搏点位置跟随控制策略。在V-REP 机器人仿真软件中搭建仿真环境,验证该策略可以控制脉搏传感器阵列中心跟随脉搏点运动,确保了脉搏采集数据的准确性。但本文研究内容仅在仿真中实现,有一定局限性。后续的硬件实验可参照本文的理论依据,为将来实现脉搏信息采集并利用大数据分析脉搏与疾病的关系提供参考。