杨 浩,韩建海,2,李向攀,2
(1.河南科技大学机电工程学院,河南 洛阳 471003;2.河南省机器人与智能系统重点实验室,河南 洛阳 471003)
在临床实践中,传统的康复训练过程主要是由医护人员或者理疗师对患者进行一对一训练的,但是这项工作劳动强度较大、效率较低,而康复训练效果很大程度上由理疗师个人的技术水平决定,训练的强度和手法的准确性不能保证,对患者的康复效果有很大的影响[1-2]。
目前,将康复医学与机器人技术结合起来的康复机器人技术已经成为国内外研究的热点。国外,瑞士洛桑联邦理工学院机器人系统实验室开发的坐卧式外骨骼下肢康复机器人MotionMaker,由一张倾斜度可调的躺椅和两条三自由度的机械腿组成,可以完成下肢髋膝踝关节的曲伸运动[3]。德国柏林自由大学研制的一种活动踏板式下肢步态康复训练装置HapticWalker。该机构主要由两个独立机械臂组成,机械臂末端装有两个脚踏板,操作者可以自定义脚踏板运动轨迹,脚踏板可以根据需要完成相应的人体站立时的康复动作[4]。以上两种下肢康复机器人均是预先编程的方式进行控制,编程复杂,动作设计受到限制。
国内,某大学研制的卧式下肢康复机器人通过借助于自行车脚蹬的原理而设计。可以同时活动患者踝关节、膝关节、髋关节,通过增加脚蹬轴的阻尼力,完成患者从被动到主动的一个康复过程[5]。但是该机构的缺点在于康复训练动作单一且关节活动幅度较小,因此康复效果不太明显。燕山大学研制的截瘫患者下肢康复机器人通过设计与人体下肢相同关节结构,使用伺服电机驱动曲柄滑块机构,带动下肢关节转动,实现对偏瘫患者下肢的被动模式训练[6]。该机器人的控制模式主要为上位机软件控制,编程复杂,训练轨迹改变困难,不能适应个性化训练的要求。
目前,基于力觉的拖动示教主要应用在工业机器人上,用以简化手动编程和离线编程的繁琐和精度问题,在康复训练机器人领域使用拖动示教作为编程手段的例子还较为少见。文中在实验室现有的卧式下肢康复训练机器人的基础上,利用在工业机器人上使用的基于力觉的拖动示教的原理,设计了一种基于力觉拖动示教的卧式下肢康复训练机器人。通过抬腿实验证明了,基于力觉拖动示教的卧式下肢康复训练机器人系统能够有效地简化程序编程的繁琐过程,实现对不同患者的个性化、多样化康复训练,减轻理疗师的工作负担。
卧式下肢康复训练机器人力觉拖动示教系统由机器人本体系统、传感器采集系统、半实物仿真平台系统(北京灵思创奇科技有限公司)、计算机控制平台系统组成。其示意图,如图1所示。
图1 力觉拖动示教系统组成Fig.1 The Constitutition of Force Sense Drag and Teach System
卧式下肢康复训练机器人本体系统由大腿、小腿、脚踝部、髋关节、膝关节、踝关节组成。传感器采集系统由六维力觉传感器及信号处理器组成。为了便于拖动示教,设计了一个安装传感器的安装支架,将安装支架安装在机器人脚踝部末端部位。半实物仿真平台由固高GTS-800运动控制卡、PCI6251采集卡及相应接口组成。计算机控制平台系统实现上位机控制。
设计的下肢康复训练机器人为三关节康复训练机器人,D—H法建立机器人各关节之间的关系[7]。其D-H参数,如表1所示。
表1 D-H参数表Tab.1 D-H Parameter Table
表中:L1—大臂长;L2—小臂长。
卧式下肢康复训练机器人的机械系统,如图2所示。
通过对机器人求逆解可得:
当θ2<0时:
当θ2>0时
通过对机器人求逆解得到髋关节θ1,膝关节θ2,踝关节θ3的角度值。根据机器人运动过程中的实际情况,排除奇异解,选择合理的逆解,将逆解编写成逆解程序,便于下一步使用。
图2 机械系统Fig.2 Mechanical System
系统使用六维力觉传感器及数据采集卡采集力/力矩模拟量信号(Fx,Fy,Fz,Tx,Ty,Tz),在控制系统中通过导纳算法将力/力矩信号转化为机器人笛卡尔坐标系下的三个坐标X、Y、Z的变化量和绕三个坐标轴旋转的a,b,c的变化量即Y、P、R角的变化量。
系统中所采用的策略为导纳控制策略,其意义为:将采集和处理后的力信号作为输入,将机器人的位置或速度作为输出[8-9]。其结构,如图3所示。
图3 导纳控制策略结构Fig.3 Structure Diagram of Admittance Control System
图中:F0—理想力值;Fa—经过平均滤波器处理的力信号;ΔF—力偏差信号;ΔX—位置偏移量。试验设计的导纳控制器输出信号为位置信号。其表达式,如式(5)所示:
其中,
表示各方向上的力模拟量偏差信号;
表示在机器人坐标系上的偏移量;M为力/位移转换的6阶系数矩阵,如式(8)所示。
通过导纳控制策略实现力/位移、力矩/位移转换。机器人位姿矩阵
试验在半实物仿真平台系统上完成控制过程,通过在Matlab/Simulink软件上调用图形化语言,简化编程过程。在半实物仿真平台上完成拖动示教控制算法设计、再现程序设计等[10]。卧式下肢康复机器人力觉拖动示教原理流程,如图4所示。
图4 拖动示教系统原理流程Fig.4 The Constitutition of Drag and Teach System
拖动示教原理及程序编写过程如下:安装在脚踝部末端上的六维力觉传感器,将采集到的模拟量信号输送到PCI6259数据采集板卡上,完成信号输入。将经过转换的信号输入到程序中,通过软件滤波使所采集到的信号更为准确。在simulink模型程序中根据导纳算法计算出力/位移的转换量,得到机器人末端在空间坐标系下的位姿。将得到的机器人末端位姿代入到机器人求逆解模块,即可求出对应时刻的各个关节角度。根据伺服电机驱动器电子减速比,以及与伺服电机连接的减速器减速比的综合计算,得到角度与脉冲的对应数量关系。将已得到的各关节角度值转换为相应的脉冲值,输入到固高GTS-800运动控制卡,对各关节伺服电机驱动器发出控制指令,驱动伺服电机转动,从而使机器人按照理疗师所示教的轨迹进行动作。
为了使拖动的轨迹能够合理地重复再现,同时设计了一个再现程序,通过对拖动过程中记录下来的数据进行处理并导入再现程序中,即可实现示教轨迹的再现,完成对患者的康复训练过程。
试验时,以正常人作为实验对象,对试验者的左侧腿部进行拖动示教。理疗师通过拖动示教手柄,使卧式下肢康复机器人按照理疗师的拖动轨迹运动。以下肢康复训练中常见的抬腿动作为例进行试验,卧式下肢康复机器人在示教过程中的一组示意图,如图5所示。图中:箭头—传感器受力方向;没有箭头—此时传感器不受外力作用。
图5 示教试验Fig.5 Experiment Diagram of Drag and Teach
传感器采集曲线,如图6所示。观察传感器的采集曲线,可以看到在拖动示教手柄时,各方向上力/力矩随时间的变化情况。当传感器采集到的信号值在预先设定的范围时,可根据导纳控制算法计算出实时位移变化量。从而计算出机器人末端的实时位姿。在一个抬腿动作拖动过程中各关节的角度变化量曲线,如图7所示。从图中能清楚地看到在拖动过程中,髋关节、膝关节、踝关节的实时角度变化量的情况。在(0~3)s时,为开机准备阶段,此时传感器不受外部的作用力,如图5中(a)所示。传感器采集曲线如图6中A阶段所示,各关节转动角度变化量如图7中A阶段所示。在(3~22)s时,为抬腿阶段,此时传感器受到如图5中(b)(c)所示的作用力,传感器采集曲线如图6中B阶段所示,各关节转动角度变化量如图7中B阶段所示。在(22~27)s时,为静止阶段,此时传感器不受外部的作用力,如图5中(d)所示,传感器采集曲线如图6中C阶段所示,各关节转动角度变化量如图7中C阶段所示。在(27~51)s时,为放回阶段,此时传感器受到如图5中(e)(f)所示的作用力,传感器采集曲线如图6中D阶段所示,各关节转动角度变化量如图7中D阶段所示。在(51~55)s时,为准备停机阶段,此时传感器不受外部的作用力,传感器采集曲线如图6中E阶段所示,各关节转动角度变化量如图7中E阶段所示。由图中曲线各关节角度的变化趋势可以看出,卧式下肢康复训练机器人在拖动示教过程中的运动趋势,符合人体实际康复训练运动趋势。从中可以提取特征值,便于康复训练再现程序的使用。
图6 传感器采集曲线Fig.6 Sensor Acquisition Curve
图7 髋关节、膝关节、踝关节角度变化量曲线Fig.7 Angle Curve of Hip,Knee and Ankle
通过试验可以看到,基于力觉控制的卧式下肢康复训练机器人能够使没有任何编程基础的理疗师,根据需要方便地改变训练轨迹,简化编程,达到了预期的试验目的。
通过利用六维力觉传感器,实现对外部接触力的检测,得到机器人末端的位姿,通过半实物仿真平台的运算得到各个关节角度值,使用运动控制卡对伺服电机进行控制,从而实现机器人按照理疗师的示教轨迹运动。通过康复训练中的抬腿动作试验,证明了设计的可行性。