康复机器人主动康复训练控制方法及装置
文献发布时间:2024-04-18 19:58:21
技术领域
本发明涉及康复训练器械的技术领域,尤其涉及一种康复机器人主动康复训练控制方法及装置。
背景技术
随着计算机和机器人技术在医疗康复领域的蓬勃发展,康复机器人因其控制精度高、不受人工康复医师的体力影响、计算机数据记录等特点,正在逐渐成为康复训练的首选。
相关技术中,康复机器人工作在位置控制模式下,需要借助外部传感器计算出目标位置,计算结果取决于传感器精度,导致对机器人控制过程的鲁棒性较差。而康复机器人工作在力矩控制模式下,无须借助外部传感器,只需克服惯性力产生的运动,不适用于具有运动障碍的患者的康复训练,无法满足康复机器人主动训练的要求。
发明内容
本发明提供一种康复机器人主动康复训练控制方法及装置,用以解决现有技术的康复机器借助外部传感器进行自身控制的鲁棒性差,不借助外部传感器又无法进行主动康复训练的缺陷,提高了康复机器进行主动康复训练的鲁棒性和柔顺性。
本发明提供一种康复机器人主动康复训练控制方法,应用于康复机器人,所述康复机器人包括多个旋转关节,包括:
获取所述康复机器人的关节信息和力矩信息,所述关节信息包括关节运动学信息和关节动力学信息;
基于机器人动力学模型对所述关节动力学信息进行参数辨识,得到所述康复机器人的关节力矩数据;其中,所述关节力矩数据用于表示所述康复机器人在空载模式下进行运动时所需的实时力矩,所述动力学模型基于所述康复机器人的惯性矩阵、科氏力和离心力项矩阵、重力向量和关节旋转角度信息确定;
基于所述力矩信息和所述关节力矩数据对所述康复机器人的目标交互力进行零力补偿计算,得到交互力补偿;其中,所述交互力补偿用于调整所述多个旋转关节的运动状态,所述目标交互力包括重力、摩擦力和转动惯量中的至少一项。
根据本发明提供的一种康复机器人主动康复训练控制方法,所述基于所述力矩信息和所述关节力矩数据对所述康复机器人的目标交互力进行零力补偿计算,得到交互力补偿包括:
基于所述力矩信息与所述关节力矩数据的差值,得到第一误差;
基于所述第一误差与零力矩的差值,得到第二误差,并根据PID对所述第二误差进行力矩转换,得到所述交互力补偿。
根据本发明提供的一种康复机器人主动康复训练控制方法,在所述得到交互力补偿之后,所述方法还包括:
基于所述交互力补偿和所述关节力矩数据,得到目标力矩,所述目标力矩用于指导所述康复机器人进行康复训练。
根据本发明提供的一种康复机器人主动康复训练控制方法,在所述获取所述康复机器人的关节信息和力矩信息之后,所述方法还包括:
对所述关节运动学信息进行一阶低通滤波,得到滤波后的关节运动学信息。
根据本发明提供的一种康复机器人主动康复训练控制方法,所述动力学模型应用如下公式确定:
;
其中,
根据本发明提供的一种康复机器人主动康复训练控制方法,所述根据PID对所述第二误差进行力矩转换,得到所述交互力补偿包括:
应用如下公式得到所述交互力补偿:
;
其中,
本发明还提供一种康复机器人主动康复训练控制装置,包括:
参数获取模块,用于获取所述康复机器人的关节信息和力矩信息,所述关节信息包括关节运动学信息和关节动力学信息;
力矩生成模块,用于基于机器人动力学模型对所述关节动力学信息进行参数辨识,得到所述康复机器人的关节力矩数据;其中,所述关节力矩数据用于表示所述康复机器人在空载模式下进行运动时所需的实时力矩,所述动力学模型基于所述康复机器人的惯性矩阵、科氏力和离心力项矩阵、重力向量和关节旋转角度信息确定;
力矩补偿模块,用于基于所述力矩信息和所述关节力矩数据对所述康复机器人的目标交互力进行零力补偿计算,得到交互力补偿;其中,所述交互力补偿用于调整所述康复机器人的多个旋转关节的运动状态,所述目标交互力包括重力、摩擦力和转动惯量中的至少一项。
根据本发明提供的一种康复机器人主动康复训练控制装置,所述装置还包括:
力矩合成模块,用于在所述得到交互力补偿之后,基于所述交互力补偿和所述关节力矩数据,得到目标力矩,所述目标力矩用于指导所述康复机器人进行康复训练。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述康复机器人主动康复训练控制方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述康复机器人主动康复训练控制方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述康复机器人主动康复训练控制方法。
本发明提供的康复机器人主动康复训练控制方法及装置,通过机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据,并将力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿,能够为康复机器人提供外力的补偿力矩,以减少克服静摩擦力需要的额外力,而且可以使得康复机器人对动力学模型的不精确性具有较好的鲁棒性,进一步提升主动康复训练过程中的柔顺性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的康复机器人主动康复训练控制方法的流程示意图;
图2是本发明提供的动力学模型和PID进行数据交互的结构示意图;
图3是本发明提供的康复机器人主动康复训练控制装置的结构示意图;
图4是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图3描述本发明的康复机器人主动康复训练控制方法及装置。
图1是本发明提供的康复机器人主动康复训练控制方法的流程示意图,如图1所示,该康复机器人主动康复训练控制方法,应用于康复机器人,康复机器人包括多个旋转关节,包括如下步骤:
步骤110、获取康复机器人的关节信息和力矩信息,关节信息包括关节运动学信息和关节动力学信息。
在该步骤中,关节运动学信息包括多个旋转关节的长度、偏置、初始位置和初始角度等。
在该步骤中,关节动力学信息包括旋转关节的质量信息和惯量信息等。
在该实施例中,康复机器人的肢体包括多个自由度,例如,康复机器人的上肢主要包括五个旋转关节,其中,前三个旋转关节用于实现肩关节运动,可实现三维方向上的自由活动,第四个旋转关节用于肘关节运动,主要活动方式为屈伸运动,第五个旋转关节用于腕关节运动,主要活动方式为翻转运动。
在该实施例中,每个旋转关节均配有直流无刷电机,直流无刷电机由电机控制器和关节扭矩传感器组成。
在该实施例中,康复机器人包括编码器采集模块、电机力矩控制模块和外部传感器模块;其中,编码器采集模块用于采集关节运动过程中的位置信息和速度信息,电机力矩控制模块主要用于完成对电机本身的闭环控制,例如位置控制、速度控制和力矩控制;外部传感器用于采集运动过程中施加的力矩大小,用于实现人机交互功能。
在该实施例中,康复机器人通过EtherCAT协议和关节电机通信,实现高实时性关节控制。
在该实施例中,外部传感器包括关节扭矩传感器,关节扭矩传感器实时用于采集各个旋转关节的力矩信息。
在该实施例中,通过对康复机器人进行改进型DH参数标定,获得康复机器人的关节动力学信息。
步骤120、基于机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据;其中,关节力矩数据用于表示康复机器人在空载模式下进行运动时所需的实时力矩,动力学模型基于康复机器人的惯性矩阵、科氏力和离心力项矩阵、重力向量和关节旋转角度信息确定。
在该步骤中,利用机器人动力学模型对关节动力学信息进行参数辨识,得到的辨识信息包括多个关节的惯性张量、质量矩、关节质量和摩擦系数。
在该步骤中,参数辨识是一个线性拟合过程,比如,利用QR分解从关节动力学信息中分离出线性无关的可辨识参数,获得可辨识的最小参数集,即辨识信息。
在该步骤中,动力学模型可以由其机器人标准的动力学模型结合摩擦力模型构建。
在该实施例中,根据康复机器人的自由度(关节数),选择采用五阶傅里叶级数的方法生成激励轨迹,公式如下:
其中,
在该实施例中,通过激励轨迹采集康复机器人运动数据,通过加权最小二乘法的线性拟合能力,对机器人动力学参数进行辨识,获得各个关节的惯性张量,质量矩,关节质量,摩擦系数等参数,进而得到更精准精准的机器人动力学模型,以完成关节运动信息到关节力矩的转换。
在该实施例中,通过辨识信息获取更精准的动力学模型,并输出得到的关节力矩数据,再结合外部传感器采集的力矩信息进行差值计算,最终能够得到人体上肢和康复机器人的交互力。
在该实施例中,通过采用动力学参数辨识的方法,将动力学模型进行线性化处理,同时为了消除动力学公式中的二次项,通过平行轴定理,将惯性参数的表示方法由质心处转换为连杆处坐标系下的表示方法,已完成动力学模型的线性化处理;平行轴定理的表达式如下式所示:
;
其中,
在该实施例中,动力学模型的线性化处理的迭代公式如下:
其中,
在该实施例中,采用如下公式通过加权最小二乘法计算可辨识的最小参数集,即辨识信息:
;
其中,
步骤130、基于力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿;其中,交互力补偿用于调整多个旋转关节的运动状态,目标交互力包括重力、摩擦力和转动惯量中的至少一项。
在该步骤中,通过动力学模型得到关节力矩数据,并通过外部传感器采集的力矩信息进行计算,可以得到交互力补偿。
在该实施例中,通过下式进行零力补偿计算:
;
其中,
在该实施例中,可以引入一个零力矩数据与
在该实施例中,可以使用PID(Proportional-Integral-Derivative control,比例积分微分控制)将上述差值数据转换为力矩。
本发明实施例提供的康复机器人主动康复训练控制方法,通过机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据,并将力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿,能够为康复机器人提供外力的补偿力矩,以减少克服静摩擦力需要的额外力,而且可以使得康复机器人对动力学模型的不精确性具有较好的鲁棒性,进一步提升主动康复训练过程中的柔顺性。
在一些实施例中,基于力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿包括:基于力矩信息与关节力矩数据的差值,得到第一误差;基于第一误差与零力矩的差值,得到第二误差,并根据PID对第二误差进行力矩转换,得到交互力补偿。
在该实施例中,应用下式可以计算第一误差:
;
其中,
通过下式计算第二误差:
;
其中,
图2是本发明提供的动力学模型和PID进行数据交互的结构示意图,在图2所示的实施例中,模块5-交互力矩计算模块将模块6-动力学模型计算模块输出的关节力矩数据和外部关节扭矩传感器(对应关节扭矩传感器)采集力矩信息进行差值运算,得到机器人与上肢接触产生的交互力
本发明实施例提供的康复机器人主动康复训练控制方法,通过力矩信息与关节力矩数据的差值,得到第一误差,并根据第一误差与零力矩的差值,得到第二误差,最后根据PID对第二误差进行力矩转换,得到交互力补偿,实现了为康复机器人提供外力的补偿力矩,使得机器人对动力学模型的不精确性具有较好的鲁棒性。
在一些实施例中,在得到交互力补偿之后,该方法还包括:基于交互力补偿和关节力矩数据,得到目标力矩,目标力矩用于指导康复机器人进行康复训练。
在该实施例中,应用下式可以计算目标力矩:
;
其中,
在图2所示的实施例中,通过模块2-前馈输入叠加模块,将交互力补偿力矩和作为前馈提供的模块6-动力学模型计算模块的输出力矩(对应
在该实施例中,康复机器人经过关节驱动表现出实时的运动状态,同时反馈各旋转关节的位置和速度信息,并实时反馈的运动信息,输入到机器人的动力学模型中,以完成控制系统的闭环控制,实现基于零力控制的主动康复训练。
本发明实施例提供的康复机器人主动康复训练控制方法,通过交互力补偿和关节力矩数据得到目标力矩,以指导康复机器人进行康复训练,实现了康复机器人的主动康复训练。
在一些实施例中,在获取康复机器人的关节信息和力矩信息之后,该方法还包括:对关节运动学信息进行一阶低通滤波,得到滤波后的关节运动学信息。
在该实施例中,通过对康复机器人进行DH参数标定,获得康复机器人的运动学参数,即关节运动学信息,并通过下式对实时获取的康复机器人的速度信息进行一阶低通滤波:
;
其中,
在该实施例中,在得到滤波后的力矩信息之后,可以采用中心差分算法计算机器人的关节加速度,为运动学模型提供输入数据。
本发明实施例提供的康复机器人主动康复训练控制方法,通过对关节运动学信息进行一阶低通滤波,得到滤波后的关节运动学信息,提高了关节信号质量,进而提高了运动学模型输出的关节力矩数据的准确性。
在一些实施例中,动力学模型应用如下公式确定:
;
其中,
在该实施例中,由于Newton-Euler法通过关节间的运动和力的关系进行计算,具有迭代次数快,实时性高的优点,因此本发明采用Newton-Euler法建模;其迭代过程包括外推法和内推法,其中外推法的公式如下:
内推法的公式如下:
其中,
在该实施例中,对康复机器人的关节动力学信息进行辨识,获得各个旋转关节的惯性张量、质量矩、关节质量、摩擦系数等参数,并结合牛顿欧拉法,得到机器人动力学模型,以获取实时采集的关节动力学信息对应的关节力矩数据。
本发明实施例提供的康复机器人主动康复训练控制方法,通过惯性矩阵、科氏力和离心力项矩阵、重力向量以及关节角度、角速度和角加速度构建精准的机器人动力学模型,提高了关节力矩数据的准确性。
在一些实施例中,根据PID对第二误差进行力矩转换,得到交互力补偿包括:应用如下公式得到交互力补偿:
;
其中,
在该实施例中,PID能够将输入的参数量转换为力矩,即PID的输出结果为施加相应交互力时关节需要提供的额外输出力矩。
本发明实施例提供的康复机器人主动康复训练控制方法,通过PID的调节参数以及多个时刻的力矩差值确定交互力补偿,能够通过交互力完成零力控制,以实现康复机器人完成主动训练。
下面对本发明提供的康复机器人主动康复训练控制装置进行描述,下文描述的康复机器人主动康复训练控制装置与上文描述的康复机器人主动康复训练控制方法可相互对应参照。
图3是本发明提供的康复机器人主动康复训练控制装置的结构示意图,如图3所示,该康复机器人主动康复训练控制装置包括:参数获取模块310、力矩生成模块320和力矩补偿模块330。
参数获取模块310,用于获取康复机器人的关节信息和力矩信息,关节信息包括关节运动学信息和关节动力学信息;
力矩生成模块320,用于基于机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据;其中,关节力矩数据用于表示康复机器人在空载模式下进行运动时所需的实时力矩,动力学模型基于康复机器人的惯性矩阵、科氏力和离心力项矩阵、重力向量和关节旋转角度信息确定;
力矩补偿模块330,用于基于力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿;其中,交互力补偿用于调整康复机器人的多个旋转关节的运动状态,目标交互力包括重力、摩擦力和转动惯量中的至少一项。
本发明实施例提供的康复机器人主动康复训练控制装置,通过机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据,并将力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿,能够为康复机器人提供外力的补偿力矩,以减少克服静摩擦力需要的额外力,而且可以使得康复机器人对动力学模型的不精确性具有较好的鲁棒性,进一步提升主动康复训练过程中的柔顺性。
在一些实施例中,该装置还包括:力矩合成模块,用于在得到交互力补偿之后,基于交互力补偿和关节力矩数据,得到目标力矩,目标力矩用于指导康复机器人进行康复训练。
本发明实施例提供的康复机器人主动康复训练控制装置,通过交互力补偿和关节力矩数据得到目标力矩,以指导康复机器人进行康复训练,实现了康复机器人的主动康复训练。
图4是本发明提供的电子设备的结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行康复机器人主动康复训练控制方法,该方法包括:获取康复机器人的关节信息和力矩信息,关节信息包括关节运动学信息和关节动力学信息;基于机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据;其中,关节力矩数据用于表示康复机器人在空载模式下进行运动时所需的实时力矩,动力学模型基于康复机器人的惯性矩阵、科氏力和离心力项矩阵、重力向量和关节旋转角度信息确定;基于力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿;其中,交互力补偿用于调整康复机器人的多个旋转关节的运动状态,目标交互力包括重力、摩擦力和转动惯量中的至少一项。
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的康复机器人主动康复训练控制方法,该方法包括:获取康复机器人的关节信息和力矩信息,关节信息包括关节运动学信息和关节动力学信息;基于机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据;其中,关节力矩数据用于表示康复机器人在空载模式下进行运动时所需的实时力矩,动力学模型基于康复机器人的惯性矩阵、科氏力和离心力项矩阵、重力向量和关节旋转角度信息确定;基于力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿;其中,交互力补偿用于调整康复机器人的多个旋转关节的运动状态,目标交互力包括重力、摩擦力和转动惯量中的至少一项。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的康复机器人主动康复训练控制方法,该方法包括:获取康复机器人的关节信息和力矩信息,关节信息包括关节运动学信息和关节动力学信息;基于机器人动力学模型对关节动力学信息进行参数辨识,得到康复机器人的关节力矩数据;其中,关节力矩数据用于表示康复机器人在空载模式下进行运动时所需的实时力矩,动力学模型基于康复机器人的惯性矩阵、科氏力和离心力项矩阵、重力向量和关节旋转角度信息确定;基于力矩信息和关节力矩数据对康复机器人的目标交互力进行零力补偿计算,得到交互力补偿;其中,交互力补偿用于调整康复机器人的多个旋转关节的运动状态,目标交互力包括重力、摩擦力和转动惯量中的至少一项。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
- 一种肘关节康复训练设备的控制装置及控制方法
- 康复训练机器人的控制方法及康复训练机器人
- 一种骨盆矫正康复训练机器人康复训练的控制方法