一种基于肌电活跃度反馈的关节助力控制方法转让专利

申请号 : CN201810834023.0

文献号 : CN108994833B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 崔翔贾正伟胡源渊王道臣李鑫常远

申请人 : 北京机械设备研究所

摘要 :

本发明涉及一种基于肌电活跃度反馈的关节助力控制方法,属于关节助力控制技术领域,解决了现有技术中很难由肌电信号得到准确的肌肉力信息的问题。包括以下步骤:对采集到的原始肌电信号进行预处理;对上述预处理后的肌电信号活跃度进行分析;根据肌电信号活跃度分析结果,获取肌肉发力大小与发力时机的信息,并将所述信息输出给关节助力装置,所述关节助力装置利用所述信息进行关节助力控制。本发明从肌电信号获取肌肉发力大小与发力时机的信息,作为关节力控制的基础;第一时间获取肌肉发力意图,辨识肌肉发力大小,能够保证人体运动预测的实时性并及时从力控制的角度给与运动助力,实现人机协同控制的效果,同时,提高助力机器人的助力效率。

权利要求 :

1.一种基于肌电活跃度反馈的关节助力控制方法,其特征在于,包括以下步骤:对采集到的原始肌电信号进行预处理;

对上述预处理后的肌电信号活跃度进行分析,包括:神经活跃度分析;将上述预处理后的肌电信号划分为若干组;并对每组信号进行滑动标准差简化处理,得到每组信号的神经活跃度值;

肌肉活跃度分析;根据获取的神经活跃度值,利用肌肉活跃度与神经活跃度的非线性关系,求取肌肉活跃度值;

根据肌电信号活跃度分析结果,获取肌肉发力大小与发力时机的信息,并将所述信息输出给关节助力装置,所述关节助力装置利用所述信息进行关节助力控制;

所述根据肌电信号活跃度分析结果,获取肌肉发力大小与发力时机的信息,包括:利用上述求取的肌肉活跃度值,经HILL肌肉发力模型得到肌肉发力大小;

利用得到的肌肉发力大小,基于骨肌关节运动学模型解算肌肉产生的关节力矩,确定肌肉发力时机;

所述关节力矩T(t)为:

T(t)=r1(q)·F1(t)+r2(q)·F2(t)+...+rn(q)·Fn(t)式中,t为时间,q为关节角,Fn为第n块骨骼肌的发力大小,rn为第n块骨骼肌的发力力臂。

2.根据权利要求1所述的方法,其特征在于,所述每组信号的神经活跃度值u(t)为:式中,t表示时间,xi为该组信号中第i个肌电信号值,N为该组肌电信号中的肌电信号值的个数, 为该组肌电信号积分肌电均值。

3.根据权利要求2所述的方法,其特征在于,所述神经活跃度分析还包括:记录与关节相关的骨骼肌肌群自然状态下的静息肌电信号;

解算出该关节没有运动意图下的神经活跃度参考值,作为肌肉发力信息的基准值;

将求取的神经活跃度值与上述神经活跃度参考值作差,得到神经活跃度值变化量Δu(t)。

4.根据权利要求3所述的方法,其特征在于,根据上述获取的神经活跃度值,利用肌肉活跃度与神经活跃度的非线性关系,求取肌肉活跃度值,包括根据上述获取的神经活跃度值得到神经活跃度值变化量Δu(t),根据下式肌肉活跃度与神经活跃度的非线性关系得到所述肌肉活跃度值a(t):式中,t表示时间,A为反应非线性程度的参数,Δu(t)为神经活跃度值变化量。

5.根据权利要求1所述的方法,其特征在于,所述肌肉发力大小F(t)为:F(t)=k·a(t)+m

式中,t为时间,m为肌肉弹性力,k为与肌肉纤维主动发力相关的系数,a(t)为肌肉活跃度值。

6.根据权利要求1所述的方法,其特征在于,所述对采集到的原始肌电信号进行预处理,包括:进行滤波处理,截取频率范围为[5Hz,30Hz]的信号。

7.根据权利要求6所述的方法,其特征在于,所述对获取的原始肌电信号进行预处理,还包括:全波整流、归一化处理。

说明书 :

一种基于肌电活跃度反馈的关节助力控制方法

技术领域

[0001] 本发明涉及关节助力控制技术领域,尤其涉及一种基于肌电活跃度反馈的关节助力控制方法。

背景技术

[0002] 目前,穿戴式机器人实现人机协同控制主要有两种方式:1)直接的运动/力控制:人体运动后,依赖运动学传感器或者力传感器反馈给出运动/力信号,然后对机器人进行控制;2)运动意图控制:采集人体生物电信号(肌电信号(EMG,electromyography)、脑电信号(EEG)等),分析人体运动意图,然后根据人体的运动意图控制机器人运动或发力。前者是传统的机器人控制方法,由于只有人体产生运动才会有相应的信号,所以会有较高的控制延迟;后者能够第一时间反馈人体运动意图,虽然其量化解析难度大,但助力控制实时性好。
[0003] 穿戴式助力机器人的助力效率是系统性能最重要的指标,系统助力时机与助力大小的获取尤为关键,影响人机协同控制的实现效果。EMG信号的变化表示的是肌肉发力前的一个神经指令信号,先于人体运动,人体发力意图直接体现在该肌电信号上,因此可对其进行解析、建模,得到人体运动意图信息的量化反映,基于该肌电信号反馈得到的肌肉力量对机器人发力进行控制,能够及时跟踪人体运动意图,实现高实时性的人机协同控制。
[0004] 目前,对肌电信号的研究多集中在运动评估、发力时机预测等方面,对基于肌电信号的量化肌力辨识研究与控制很少,主要原因在于肌电信号属于微弱电信号,导致有效信号干扰源特别多,对量化值有显著影响。此外,EMG反馈肌力涉及神经动力学、肌肉-肌腱动力学、骨骼肌肉动力学等模型较为复杂,很难由肌电信号得到准确的肌肉力信息。

发明内容

[0005] 鉴于上述的分析,本发明旨在提供一种基于肌电活跃度反馈的关节助力控制方法,用以解决现有技术中很难由肌电信号得到准确的肌肉力信息的问题。
[0006] 本发明的目的主要是通过以下技术方案实现的:
[0007] 提供了一种基于肌电活跃度反馈的关节助力控制方法,包括以下步骤:
[0008] 对采集到的原始肌电信号进行预处理;
[0009] 对上述预处理后的肌电信号活跃度进行分析;
[0010] 根据肌电信号活跃度获取肌肉发力大小与发力时机的信息,并将所述信息输出给关节助力装置,所述关节助力装置利用所述信息进行关节助力控制。
[0011] 本发明有益效果如下:本发明从生物电的采集与处理出发,从肌电信号获取肌肉发力大小与发力时机的信息,作为关节力控制的基础;第一时间获取肌肉发力意图,能够辨识肌肉发力大小并进行反馈控制,因此能够保证人体运动预测的实时性并及时从力控制的角度给与运动助力,实现人机协同控制的效果,同时,提高助力机器人的助力效率。
[0012] 在上述方案的基础上,本发明还做了如下改进:
[0013] 进一步,所述对上述预处理后的肌电信号活跃度进行分析包括:
[0014] 神经活跃度分析;将上述预处理后的肌电信号划分为若干组;并对每组信号进行滑动标准差简化处理,得到每组信号的神经活跃度值;
[0015] 肌肉活跃度分析;根据上述获取的神经活跃度值,利用肌肉活跃度与神经活跃度的非线性关系,求取肌肉活跃度值。
[0016] 进一步,所述每组信号的神经活跃度值u(t)为:
[0017]
[0018] 式中,t表示时间,xi为该组信号中第i个肌电信号值,N为该组肌电信号中的肌电信号值的个数,x为该组肌电信号积分肌电均值。
[0019] 进一步,所述神经活跃度分析还包括:
[0020] 记录与关节相关的骨骼肌肌群自然状态下的静息肌电信号;
[0021] 解算出该关节没有运动意图下的神经活跃度参考值,作为肌肉发力信息的基准值;
[0022] 将求取的神经活跃度值与上述神经活跃度参考值作差,得到神经活跃度值变化量Δu(t)。
[0023] 进一步,根据上述获取的神经活跃度值,利用肌肉活跃度与神经活跃度的非线性关系,求取肌肉活跃度值,包括根据上述获取的神经活跃度值得到神经活跃度值变化量Δu(t),根据下式肌肉活跃度与神经活跃度的非线性关系得到所述肌肉活跃度值a(t):
[0024]
[0025] 式中,t表示时间,A为反应非线性程度的参数,Δu(t)为神经活跃度值变化量。
[0026] 进一步,所述根据肌电信号活跃度获取肌肉发力大小与发力时机的信息,包括:
[0027] 利用上述求取的肌肉活跃度值,经HILL肌肉发力模型得到肌肉发力大小;
[0028] 利用得到的肌肉发力大小,基于骨肌关节运动学模型解算肌肉产生的关节力矩,确定肌肉发力时机。
[0029] 进一步,所述肌肉发力大小F(t)为:
[0030] F(t)=k·a(t)+m
[0031] 式中,t为时间,m为肌肉弹性力,k为与肌肉纤维主动发力相关的系数,a(t)为肌肉活跃度值。
[0032] 进一步,所述关节力矩T(t)为:
[0033] T(t)=r1(q)·F1(t)+r2(q)·F2(t)+...+rn(q)·Fn(t)
[0034] 式中,t为时间,q为关节角,Fn为第n块骨骼肌的发力大小,rn为第n块骨骼肌的发力力臂。
[0035] 进一步,所述对获取的原始肌电信号进行预处理,包括:进行滤波处理,截取频率范围为[5Hz,30Hz]的信号。
[0036] 进一步,所述对获取的原始肌电信号进行预处理,还包括:全波整流、归一化处理。
[0037] 本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书、权利要求书以及附图中所特别指出的内容中来实现和获得。

附图说明

[0038] 附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
[0039] 图1为本发明实施例中神经-肌肉-骨骼关节动力学建模与优化示意图;
[0040] 图2为本发明实施例中基于肌电活跃度反馈的关节助力控制方法流程图。

具体实施方式

[0041] 下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
[0042] 本发明的一个具体实施例,公开了一种基于肌电活跃度反馈的关节助力控制方法,包括以下步骤:
[0043] 步骤S1、对采集到的原始肌电信号进行预处理;
[0044] 步骤S2、对上述预处理后的肌电信号活跃度进行分析;
[0045] 步骤S3、根据肌电信号活跃度分析结果,获取肌肉发力大小与发力时机的信息,并将所述信息输出给关节助力装置,关节助力装置利用上述信息进行关节助力控制。
[0046] 实施时,原始肌电信号经过滤波、整流以及归一化等处理后,得到能够反应运动意图的纯净肌电信号,经神经活跃度动力学和肌肉活跃度动力学依次得到神经活跃度值和肌肉活跃度值大小,而后经HILL肌肉发力模型得到肌肉发力大小,然后,根据骨肌关节运动学模型解算肌肉产生的关节力矩,确定发力时机。
[0047] 与现有技术相比,本实施例提供的基于肌电活跃度反馈的关节助力控制方法,从生物电的采集与处理出发,第一时间获取肌肉发力意图,与常见的发力时机辨识不同,能够辨识肌肉发力大小并进行关节助力控制,因此能够保证人体运动预测的实时性并及时从力控制的角度给与运动助力。另外,本发明对骨骼-肌肉-神经的动力学模型进行了分析与运用,从而通过解析肌电信号获取人体发力意图,能够应用于穿戴式助力机器人的控制系统中,提高助力机器人的助力效率。
[0048] 本实施例以单自由度的肘关节助力机器人为例,从神经-肌肉-骨骼关节模型出发,对本实施例中技术方案进行阐述说明,实现利用人体生物电信号对穿戴式关节助力机器人的人机协同控制。具体来说,
[0049] 在步骤S1中,采集原始肌电信号;可以在被试者的关节(优选的,肘关节)相关的骨骼肌(优选的,在肱二头肌、肱三头肌)上粘贴肌电电极,通过肌电采集系统获取肌电信号。
[0050] 为了得到较为纯净的肌电信号,需要对采集到的原始肌电信号进行预处理,具体包括以下步骤:
[0051] 步骤S101、对采集的原始肌电信号进行滤波处理;
[0052] 由于采集到的原始肌电信号混杂着多种噪声(如直流偏置、放大器误差及电极运动带来的低频干扰等),可以采用滤波器滤除上述噪声,优选的,截取频率范围为[5Hz,30Hz]的信号,滤除该范围外的信号;
[0053] 步骤S102、进行全波整流,将经过滤波处理后的肌电信号转化为正值信号;
[0054] 步骤S103、对获取的正值信号进行归一化处理,得到较为纯净的肌电信号。
[0055] 在步骤S2中,通过神经活跃度动力学及肌肉活跃度动力学,对上述预处理后的肌电信号活跃度进行分析;具体地,
[0056] 步骤S201、神经活跃度分析:将预处理后的纯净的肌电信号进行滑动标准差简化处理,得到信号的神经活跃度值。
[0057] 神经动力学模型定义为动作电位产生的神经抽搐,采集到的肌电信号理论上可视为均值为零并在零轴跳动的离散信号,通过确定二阶微分方程参数可得到神经活跃度信息。同时,考虑到信号处理速度,将上述预处理后的肌电信号采用滑动标准差简化定量表示神经活跃度值。
[0058] 具体地,在所有肌电信号中,每N个肌电信号值作为一组,其中N的具体数值可根据实际信号采集频率、实时性要求进行设定,优选的,20≤N≤100。
[0059] 求解每组肌电信号积分肌电均值
[0060]
[0061] 式中,xi为该组信号中第i个肌电信号值,N为该组肌电信号中的肌电信号值的个数。
[0062] 然后,解算肌电信号标准差来表示神经活跃度值u(t):
[0063]
[0064] 式中,t表示时间(该组肌电信号所在的时刻),xi为该组信号中第i个肌电信号值,N为该组肌电信号中的肌电信号值的个数,为该组肌电信号积分肌电均值。
[0065] 需要说明的是,由于个体差异的存在,需要记录每位被试者骨骼肌肌群(优选的,上肢)自然状态下的静息肌电信号x0,解算出关节(优选的,肘关节)没有运动意图下的参考值u0,作为肌肉发力信息的基准值,进而可以将神经活跃度值u(t)与参考值u0作差,得到相对于该基准值的神经活跃度值变化量Δu(t)。
[0066] 步骤S202、肌肉活跃度分析:根据上述获取的神经活跃度值变化量Δu(t),利用肌肉活跃度与神经活跃度的非线性关系,求取得到肌肉活跃度值。
[0067] 肌肉活跃度为在神经电刺激下,肌肉产生的反应大小。根据生理学研究,可以利用以下非线性关系,得到肌肉活跃度值a(t):
[0068]
[0069] 式中,t表示时间,A为反应非线性程度的参数,Δu(t)为神经活跃度值变化量。
[0070] 由上式可知,A反应非线性程度,当A=0时,神经活跃度和肌肉活跃度为线性关系;A越小,a(t)在Δu(t)激增时不会变得过大,保证肌力值平滑,参数A的具体数值可通过参数标定或试凑法调试,优选的,A取值范围是-3<A<0。
[0071] 在步骤S3中,根据上述肌电信号活跃度值a(t),经HILL肌肉发力模型得到肌肉发力大小与发力时机的信息,并将这些信息输出给关节助力装置,实现对关节助力装置的控制。具体包括以下步骤:
[0072] 步骤S301、获取肌肉发力大小信息;
[0073] 人体的肌肉-肌腱模型可以近似等效为肌肉活跃度为变量的弹簧-阻尼模型。肌肉长度、长度变化速度与肌肉活跃度直接影响肌肉发力大小。通过测试得到肌肉最大发力Fmax、肌肉长度和长度变化速度,然后对肌肉长度和长度变化速度归一化为l和 进而得到肌肉发力F(t)大小:
[0074]
[0075] 式中,l为肌肉长度,为肌肉长度变化速度,a(t)为肌肉活跃度值,Fmax为肌肉最大发力。
[0076] 考虑到实际应用中很难获取肌肉长度、长度变化速度等。本实施例对上述肌肉发力公式进行简化,根据肌肉发力可分成肌肉纤维的主动发力与肌肉-肌腱弹性力两部分的特性,对该两种力分别建模可得以肌肉活跃度为变量的线性模型:
[0077] F(t)=Fmax·fa(l)·a(t)+Fmax·fp(l)=k·a(t)+m
[0078] 式中,t为时间,F(t)为肌肉发力大小,Fmax为肌肉最大发力,m为肌肉弹性力,fa(l)为与肌肉纤维的主动发力相关的函数,fp(l)为与肌肉-肌腱弹性力相关的函数,l为肌肉长度,k为与肌肉纤维主动发力相关的系数,a(t)为肌肉活跃度值。
[0079] 由上式可知,当肌肉长度一定,肌肉发力大小与肌肉活跃度值呈线性关系,需要在实验中进行调试,根据不同人体,得到一组最合适的参数(k、m),进而根据a(t)的值,得到肌肉发力大小F(t)。
[0080] 步骤S302、求取关节力矩,确定肌肉发力时机;
[0081] 根据骨肌关节运动学模型,得到肌肉-肌腱单元长度,关节运动过程中,关节(优选的,肘关节)角q变化引起该单元长度变化,由虚功原理可以求取所有相关肌肉-肌腱在该关节处产生的力矩T(t):
[0082] T(t)=r1(q)·F1(t)+r2(q)·F2(t)+...+rn(q)·Fn(t)
[0083] 式中,t为时间,q为关节角,n为与该关节相关的骨骼肌的数量,Fn为骨骼肌的肌肉发力大小,rn为Fn的力臂。
[0084] 优选的,对肘关节来说,相关骨骼肌为肱二头肌和肱三头肌,肱二头肌和肱三头肌产生的关节力矩T(t)大小为:
[0085] T(t)=r1(q)·F1(t)+r2(q)·F2(t)
[0086] 式中,q为肘关节角,F1为肱二头肌的肌肉发力大小,F2为肱三头肌的肌肉发力大小,r1为肱二头肌发力力臂,r2为肱三头肌发力力臂。
[0087] 由于,肌肉发力力臂为肌肉长度关于关节角度的微分:
[0088]
[0089] 考虑到实际中很难测量力臂具体数值,可采用数据拟合的方法逼近最优值,针对不同的被试者进行标定。在无法标定的情况下,也可以对力臂参数进行调试,试凑得到合适的参数大小。
[0090] 步骤S303、将上述获取的每一时刻的肌肉大小及发力时机信息(关节力矩),实时输出给关节助力装置,作为该装置电机提供输出力的参考值,实现穿戴式助力机器人的人机协同控制策略。
[0091] 需要强调的是,本发明所涉及的反馈控制方法不仅局限于应用本发明所举例的单自由度肘关节助力机器人,通过简单的叠加(即将该控制方法应用于更多关节,对不同关节来说,控制是独立的),可应用于多自由度机器人关节的助力控制。
[0092] 本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
[0093] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。