基于动力学参数辨识的康复机器人控制方法、系统、设备及介质
文献发布时间:2023-06-19 12:04:09
技术领域
本发明涉及机器人控制领域,尤其涉及一种基于动力学参数辨识的康复机器人控制方法、系统、设备及介质。
背景技术
随着人口老龄化程度的加剧,伴随发生的高龄人口疾病发生率也日益增加,以其中最为严重的脑卒中为例,根据国家统计局数据显示,到2019年我国因脑卒中发病死亡的认数已经达到140.3/10万,即使得到及时的救治,大约75%患者依然会在脑卒中在发病后留下许多不同程度的后遗症,这些后遗症会极大降低患者的生活自理能力,严重影响患者及其家人的生活质量。在如此众多的后遗症中,患者发生偏瘫概率最高,临床表明,科学的运动康复训练配合手术治疗和药物治疗,能够显著提高脑卒中偏瘫患者肢体功能恢复的概率,进行及时的重复康复运动训练可以修复患者在脑卒中发病过程中受损的神经系统,并对肌肉骨骼等运动系统进行强化,有助于患者训练侧肢运动机能的恢复。
随着芯片技术的发展,协作机器人在小型化、智能化上也取得了长足的发展,康复机器人由于其灵活并且完善的康复模式,交互性、趣味性高等特点正在逐步取代传统以康复治疗师主导的康复训练。目前市面上现存的康复机器人大多针对单一患肢进行复健,然而脑卒中患者大多身体一侧上下肢体需要同时进行康复训练。为了实现不同患病部位的康复训练,等速肌力康复机器人等训练系统面世了。等速肌力训练系统可以实现多关节的多模态康复训练,可以针对肩、肘、腕、髋、膝、踝等六大关节进行等速、等长、等张、离心、向心、持续被动、本体感觉、弹性阻力等相关项目的康复训练。针对不同病人多关节、多模式训练方式,必然会带来康复机器人的输出端动力学参数一直变化的难题,会造成助力等力矩模式下机器人的控制精度下降甚至于失稳。
目前国内外已经开展了一些针对等速肌力康复机器人控制的研究。例如,申请号为201010301048.8、发明名称为“等速肌力测试系统及其核心控制算法”的专利申请,通过力矩传感器获取患者与康复机器人输出端的交互力,通过角位移传感器获取康复机器人输出端角度,进而根据交互力和角度控制机器人等速运动;申请号为201810660563.1、发明名称为“一种等速肌力训练系统及其控制方法”的专利申请,通过位于电机输出转轴上的电阻应变片获取交互力,以完成对患者肌力及其运动过程中的力矩补偿。这类根据检测的交互力进行控制的方法虽然能在一定程度上提高康复机器人的控制精度,但是当更换患者或者患者更换训练侧肢时,会造成动力学参数发生变化,如果仅依赖交互力而不考虑系统动力学参数,难以实现康复机器人对病人训练侧肢运动的理想跟随,不能保证康复机器人运动控制的稳定性。
发明内容
针对上述现有技术的不足,本发明的目的在于提供一种基于参数辨识的康复机器人控制方法、系统、设备及介质,以通过引入动力学参数辨识,提高康复机器人与患者训练侧肢协同交互力控制的柔顺性,增加患者康复训练过程中的舒适度,从而改善患者对康复训练的满意度,提高康复效果。
为了实现上述目的,本发明提供一种基于动力学参数辨识的康复机器人控制方法,所述康复机器人包括康复机器人本体、以及用于带动患者的训练侧肢围绕所述康复机器人本体的输出轴转动的康复机器人配件,所述训练侧肢与所述康复机器人配件固定在一起形成同步运动系统,所述控制方法包括:
当接收到动力学参数辨识指令时,对所述同步运动系统的动力学参数进行辨识,得到动力学参数辨识结果;
根据测量得到的所述同步运动系统与所述康复机器人本体之间的交互力矩、以及所述动力学参数辨识结果,获取所述患者的运动意图;
根据所述患者的运动意图,获取所述康复机器人本体需要输出的驱动力矩;
根据所述驱动力矩生成相应的控制指令,并将所述控制指令发送至所述康复机器人本体。
在本发明一个优选实施例中,所述动力学参数包括:重力向量与静摩擦向量之和、粘性摩擦向量、以及转动惯量。
在本发明一个优选实施例中,所述对所述同步运动系统的动力学参数进行辨识,得到动力学参数辨识结果,包括:
对所述重力向量与静摩擦向量之和进行在线辨识;
根据所述重力向量与静摩擦向量之和的在线辨识结果,对所述粘性摩擦向量和所述转动惯量进行在线辨识。
在本发明一个优选实施例中,所述对所述重力向量与静摩擦向量之和进行在线辨识,包括:
控制所述康复机器人本体驱动所述同步运动系统转动至多个特定角度,以使在各所述特定角度测量得到的交互力矩与所述重力向量与静摩擦向量之和相等;
根据所述多个特定角度的角度值,拟合所述重力向量与静摩擦向量之和、与角度之间的关系式,从而得到所述重力向量与静摩擦向量之和的在线辨识结果。
在本发明一个优选实施例中,所述根据所述重力向量与静摩擦向量之和的在线辨识结果,对所述粘性摩擦向量和所述转动惯量进行在线辨识,包括:
建立如式(1)所示的系统状态方程:
其中,ω
测量第k时刻所述同步运动系统转动的角速度ω
测量第k时刻所述同步运动系统与所述康复机器人本体之间的交互力矩τ
对测量得到的所述角速度ω
根据如下式(2)~式(4),得到第k时刻所述转动惯量的辨识结果
Δω
其中,Δτ
将得到的交互力矩无偏估计量
判断第k时刻所述转动惯量的辨识结果
在本发明一个优选实施例中,所述对测量得到的所述角速度ω
采用扩展卡尔曼滤波器对所述对测量得到的所述角速度ω
为了实现上述目的,本发明还提供一种基于动力学参数辨识的康复机器人控制系统,所述康复机器人包括康复机器人本体、以及用于带动患者的训练侧肢围绕所述康复机器人本体的输出轴转动的康复机器人配件,所述训练侧肢与所述康复机器人配件固定在一起形成同步运动系统,所述控制系统包括:
参数辨识模块,用于当接收到动力学参数辨识指令时,对所述同步运动系统的动力学参数进行辨识,得到动力学参数辨识结果;
运动意图获取模块,用于根据测量得到的所述同步运动系统与所述康复机器人本体之间的交互力矩、以及所述动力学参数辨识结果,获取所述患者的运动意图;
驱动力矩获取模块,用于根据所述患者的运动意图,获取所述康复机器人本体需要输出的驱动力矩;
控制模块,用于根据所述驱动力矩生成相应的控制指令,并将所述控制指令发送至所述康复机器人本体。
在本发明一个优选实施例中,所述动力学参数包括:重力向量与静摩擦向量之和、粘性摩擦向量、以及转动惯量。
在本发明一个优选实施例中,所述参数辨识模块包括:
第一在线辨识单元,用于对所述重力向量与静摩擦向量之和进行在线辨识;
第二在线辨识单元,用于根据所述重力向量与静摩擦向量之和的在线辨识结果,对所述粘性摩擦向量和所述转动惯量进行在线辨识。
在本发明一个优选实施例中,所述第一在线辨识单元具体用于:
控制所述康复机器人本体驱动所述同步运动系统转动至多个特定角度,以使在各所述特定角度测量得到的交互力矩与所述重力向量与静摩擦向量之和相等;
根据所述多个特定角度的角度值,拟合所述重力向量与静摩擦向量之和、与角度之间的关系式,从而得到所述重力向量与静摩擦向量之和的在线辨识结果。
在本发明一个优选实施例中,所述第二在线辨识单元具体用于:
建立如式(1)所示的系统状态方程:
其中,ω
测量第k时刻所述同步运动系统转动的角速度ω
测量第k时刻所述同步运动系统与所述康复机器人本体之间的交互力矩τ
对测量得到的所述角速度ω
根据如下式(2)~式(4),得到第k时刻所述转动惯量的辨识结果
Δω
其中,Δτ
将得到的交互力矩无偏估计量
判断第k时刻所述转动惯量的辨识结果
在本发明一个优选实施例中,所述第二在线辨识单元采用扩展卡尔曼滤波器对所述对测量得到的所述角速度ω
为了实现上述目的,本发明还提供一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述方法的步骤。
通过采用上述技术方案,本发明具有如下有益效果:
本发明引入了动力学参数辨识,可以在康复机器人进行病人更换或者病人的训练侧肢变更时,对康复机器人配件与患者训练侧肢形成的同步运动系统的动力学参数进行辨识,再结合同步运动系统与所述康复机器人本体之间的交互力矩,可以准确获取所述患者的运动意图;而后根据所述患者的运动意图,获取所述康复机器人本体的驱动力矩,再根据所述驱动力矩生成相应的控制指令,并将所述控制指令发送至所述康复机器人本体,以控制所述康复机器人本体以所述驱动力矩带动所述康复机器人配件与患者训练侧肢整体运动。由于引入了动力学参数辨识,因而可以提高康复机器人与患者训练侧肢协同交互力控制的柔顺性,增加患者康复训练过程中的舒适度,改善患者对康复训练的满意度,提高康复效果。
附图说明
图1为本发明实施例1中基于动力学参数辨识的康复机器人控制方法的流程图;
图2为本发明实施例2中基于动力学参数辨识的康复机器人控制方法的流程图;
图3为采用本发明实施例2的方法得到的驱动力矩与理论驱动力矩的曲线图;
图4为采用现有动力学参数辨识方法进行辨识得到的驱动力矩与理论驱动力矩的曲线图;
图5为本发明实施例3中基于动力学参数辨识的康复机器人控制系统的结构框图;
图6为本发明实施例4中基于动力学参数辨识的康复机器人控制系统的结构框图;
图7为本发明实施例5中电子设备的硬件架构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
实施例1
本实施例提供一种基于动力学参数辨识的康复机器人控制方法。在本实施例中,所述康复机器人包括康复机器人本体和康复机器人配件,该康复机器人配件包括绑缚结构和康复机械臂。在使用时,理疗师首先将康复机器人调节至与患者匹配的位置,并通过绑缚结构将患者训练侧肢与康复机械臂固定,使两者形成同步运动系统(两者之间的相对运动可以忽略不计),以便康复机械臂带动患者训练侧肢围绕所述康复机器人本体的输出轴转动;而后,将康复机器人调节至相应的训练模式,开启人机协同交互自适应控制周期循环,同时在康复机器人本体配置的人机交互界面中会出现与康复相关的提示、游戏等,患者可以根据自己的需求在界面中进行选择。
在本实施例中,所述康复机器人优选为等速肌力康复机器人。
基于前面描述的康复机器人,本实施例的控制方法如图1所示,具体包括以下步骤:
S1,当接收到动力学参数辨识指令时,对所述患者训练侧肢与所述康复机器人形成的同步运动系统的动力学参数进行辨识,得到动力学参数辨识结果。
S2,根据所述交互力矩和所述动力学参数辨识结果,获取所述患者的运动意图;
S3,根据所述患者的运动意图,获取所述康复机器人本体的驱动力矩;
S4,根据所述驱动力矩生成相应的控制指令,并将所述控制指令发送至所述康复机器人本体,以控制所述康复机器人本体以所述驱动力矩带动所述康复机器人配件与患者训练侧肢整体运动。
本实施例通过引入动力学参数辨识,提高了康复机器人与患者训练侧肢协同交互力控制的柔顺性,增加了患者康复训练过程中的舒适度,改善了患者对康复训练的满意度,提高了康复效果。
实施例2
本实施例是针对实施例1的进一步改进,具体地,本实施例针对前述步骤S1提供一种优选的实施方案。
在现有技术中,为了实现动力学参数辨识,通常采用预先建立固定动力学参数辨识模型,以通过该模型进行参数辨识的方案。然而,对康复训练这类人机交互复杂的时变系统难以建立精确的模型,该方案数据处理复杂、对硬件要求较高;而且,当更换患者或者更换训练侧肢的场景下,由于不同人或不同肢体的重量以及围绕输出轴的转动惯量差别极大,传统固定动力学参数辨识模型在多人或多关节的等速康复训练模型下,很难实现康复机器人对患者训练侧肢运动理想的跟随、并保证康复机器人运动控制的稳定性。
对此,本实施例提供一种在线辨识方法对所述患者训练侧肢与所述康复机器人形成的同步运动系统的动力学参数进行辨识,得到动力学参数辨识结果。
通常,动力学系统可以采用如下欧拉-拉格朗动力学模型进行描述:
其中,M(q)表示转动惯性矩阵,
由于本实施例的应用场景为单自由度低速康复机器人,康复机器人的科里奥利力和离心力可以不用考虑,所以前述模型可以简化为:
为了实现对病人训练侧肢与康复机器人配件动力学特性的建模,在参数辨识过程中该同步运动系统与康复机器人本体的交互力矩τ可以通过力矩传感器测得,在参数辨识过程中作为输入使用,该系统运动的角速度
同时,输出方程也根据状态空间方程的规范形式y=cx+v,写作
应该理解,参数辨识的目标就是确定M,f,(D+G)这三项的辨识结果。
如图2所示,本实施例通过以下步骤实现参数辨识:
S11,当接收到动力学参数辨识指令时,对动力学参数中的重力向量与静摩擦向量之和进行在线辨识,具体实现过程如下:
首先,控制所述康复机器人本体驱动所述同步运动系统转动至多个特定角度θ
而后,根据所述多个特定角度的角度值,拟合所述重力向量与静摩擦向量之和(D
S12,根据所述重力向量与静摩擦向量之和的在线辨识结果,对所述粘性摩擦向量和所述转动惯量进行在线辨识,具体实现过程如下:
S121,配置所述重力向量与静摩擦向量之和、粘性摩擦向量、以及转动惯量这三项在第0时刻的初始值M
S122,将上述写作状态空间方程模式的系统模型
其中,ω
同样地,系统输出方程也可以离散化为y
S123,测量第k时刻所述同步运动系统转动的角速度ω
具体地,本实施例通过编码器测量所述角速度ω
S124,测量第k时刻所述同步运动系统与所述康复机器人本体之间的交互力矩τ
具体地,本实施例通过力矩传感器测量所述交互力矩τ
S125,对测量得到的所述角速度ω
应该理解,编码器和力矩传感器的测量值均可能有误差,为了消除误差,本实施例优选采用扩展卡尔曼滤波器对测量得到的所述角速度ω
通过以下公式进行参数初始化:
通过以下公式进行参数预测:
通过以下公式进行参数更新:
其中,如前所述,Q=cov(w)=E{ww
S126,在运动过程中,角加速度变化值可以通过角速度的二次差分定义,同时,按照物理学上的意义,与交互力矩τ
其中β为自适应律的变化系数,其值预先配置,角速度变化率可以定义为Δω
S127,将前面得到的
S128,判断第k时刻所述转动惯量的辨识结果
在本实施例中,所述预定条件配置为:第k时刻所述转动惯量的辨识结果
本实施例将动力学参数按照其特征分步进行辨识,在对转动惯量和粘性摩擦向量进行辨识时引入了扩展卡尔曼滤波器,通过自适应估计算法得到的转动惯量又作为了扩展卡尔曼滤波负载转矩辨识算法的一个参数参与到系统参数评估中去,这样就实现了驱动力矩对转动惯量的解耦,可以避免传统方法在动力学系统转动惯量发生变化后导致系统参数在线辨识精度下降的问题,完全契合等速肌力康复平台多关节康复训练的需求。
采用本实施例的方法得到的驱动力矩与理论驱动力矩的曲线图如图3所示,采用现有动力学参数辨识方法进行辨识得到的驱动力矩与理论驱动力矩的曲线图如图4所示,可以看出,采用本实施例的方法性能更佳。
实施例3
本实施例提供一种基于动力学参数辨识的康复机器人控制系统,如图5 所示,该控制系统具体包括:参数辨识模块11、运动意图获取模块12、驱动力矩获取模块13和控制模块14,其中:
参数辨识模块11用于对所述患者训练侧肢与所述康复机器人形成的同步运动系统的动力学参数进行辨识,得到动力学参数辨识结果。
运动意图获取模块12用于根据所述交互力矩和所述动力学参数辨识结果,获取所述患者的运动意图;
驱动力矩获取模块13用于根据所述患者的运动意图,获取所述康复机器人本体的驱动力矩;
控制模块14用于根据所述驱动力矩生成相应的控制指令,并将所述控制指令发送至所述康复机器人本体,以控制所述康复机器人本体以所述驱动力矩带动所述康复机器人配件与患者训练侧肢整体运动。
本实施例通过引入动力学参数辨识,提高了康复机器人与患者训练侧肢协同交互力控制的柔顺性,增加了患者康复训练过程中的舒适度,改善了患者对康复训练的满意度,提高了康复效果。
实施例4
本实施例是针对实施例3的进一步改进,具体地,本实施例针对前述参数辨识模块11提供一种优选的实施方案。
在现有技术中,为了实现动力学参数辨识,通常采用预先建立固定动力学参数辨识模型,以通过该模型进行参数辨识的方案。然而,对康复训练这类人机交互复杂的时变系统难以建立精确的模型,该方案数据处理复杂、对硬件要求较高;而且,当更换患者或者更换训练侧肢的场景下,由于不同人或不同肢体的重量以及围绕输出轴的转动惯量差别极大,传统固定动力学参数辨识模型在多人或多关节的等速康复训练模型下,很难实现康复机器人对患者训练侧肢运动理想的跟随、并保证康复机器人运动控制的稳定性。
对此,本实施例提供一种在线辨识方法对所述患者训练侧肢与所述康复机器人形成的同步运动系统的动力学参数进行辨识,得到动力学参数辨识结果。
通常,动力学系统可以采用如下欧拉-拉格朗动力学模型进行描述:
其中,M(q)表示转动惯性矩阵,
由于本实施例的应用场景为单自由度低速康复机器人,康复机器人的科里奥利力和离心力可以不用考虑,所以前述模型可以简化为:
为了实现对病人训练侧肢与康复机器人配件动力学特性的建模,在参数辨识过程中该同步运动系统与康复机器人本体的交互力矩τ可以通过力矩传感器测得,在参数辨识过程中作为输入使用,该系统运动的角速度
同时,输出方程也根据状态空间方程的规范形式y=cx+v,写作
应该理解,参数辨识的目标就是确定M,f,(D+G)这三项的辨识结果。如图6所示,本实施例的参数辨识模块具体包括第一在线辨识单元111和第二在线辨识单元112。
第一在线辨识单元111用于对动力学参数中的重力向量与静摩擦向量之和进行在线辨识,具体实现过程如下:
首先,控制所述康复机器人本体驱动所述同步运动系统转动至多个特定角度θ
而后,根据所述多个特定角度的角度值,拟合所述重力向量与静摩擦向量之和(D
第二在线辨识单元112用于根据所述重力向量与静摩擦向量之和的在线辨识结果,对所述粘性摩擦向量和所述转动惯量进行在线辨识,具体实现过程参考前述步骤S121-S128。
本实施例将动力学参数按照其特征分步进行辨识,在对转动惯量和粘性摩擦向量进行辨识时引入了扩展卡尔曼滤波器,通过自适应估计算法得到的转动惯量又作为了扩展卡尔曼滤波负载转矩辨识算法的一个参数参与到系统参数评估中去,这样就实现了驱动力矩对转动惯量的解耦,可以避免传统方法在动力学系统转动惯量发生变化后导致系统参数在线辨识精度下降的问题,完全契合等速肌力康复平台多关节康复训练的需求。
实施例5
本实施例提供一种电子设备,电子设备可以通过计算设备的形式表现 (例如可以为服务器设备),包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中处理器执行计算机程序时可以实现实施例1 或2提供的基于动力学参数辨识的康复机器人控制方法。
图7示出了本实施例的硬件结构示意图,如图7所示,电子设备9具体包括:
至少一个处理器91、至少一个存储器92以及用于连接不同系统组件(包括处理器91和存储器92)的总线93,其中:
总线93包括数据总线、地址总线和控制总线。
存储器92包括易失性存储器,例如随机存取存储器(RAM)921和/或高速缓存存储器922,还可以进一步包括只读存储器(ROM)923。
存储器92还包括具有一组(至少一个)程序模块924的程序/实用工具 925,这样的程序模块924包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器91通过运行存储在存储器92中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1或2所提供的基于动力学参数辨识的康复机器人控制方法。
电子设备9进一步可以与一个或多个外部设备94(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口95进行。并且,电子设备9还可以通过网络适配器96与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器96通过总线93与电子设备9的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备9使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
实施例6
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1或2所提供的基于动力学参数辨识的康复机器人控制方法的步骤。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1或2所述的基于动力学参数辨识的康复机器人控制方法的步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
- 基于动力学参数辨识的康复机器人控制方法、系统、设备及介质
- 基于康复机器人的康复运动控制方法、系统、设备及介质