一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

康复机器人主动控制方法、装置及康复机器人与流程

2022-03-19 18:38:12 来源:中国专利 TAG:


1.本发明涉及康复机器人技术领域,尤其是涉及一种康复机器人主动控制方法、装置及康复机器人。


背景技术:

2.现有的上肢康复机器人在进行康复训练时包括被动康复训练和主动康复训练,由于主动康复训练强调训练者主动完成功能活动,而不依赖被动性运行,因此主动性康复的作用远大于被动性康复的作用。康复机器人在进行主动康复训练时,对运行方向相同的方向补偿静摩擦力,但是,在训练者主动由静止到运行的瞬间,康复机器人无法获知训练者的运行方向,进而无法确定静摩擦力的补偿方向,目前现有的主动康复机器人主要通过额外的脑电信号传感器或肌电信号传感器识别训练者的运动方向,识别运动方向算法复杂,且提高了康复机器人的成本。


技术实现要素:

3.有鉴于此,本发明的目的在于提供一种康复机器人主动控制方法、装置及康复机器人,无需额外增加运动方向识别传感器,降低了康复机器人的材料成本,降低了康复机器人的控制算法复杂度,在简化控制算法的基础上完成了主动训练任务,实用性较强。
4.为了实现上述目的,本发明实施例采用的技术方案如下:
5.第一方面,本发明实施例提供了一种康复机器人主动控制方法,包括:获取训练任务和预先设置的康复训练参数;其中,所述康复训练参数包括抖动力矩参数和待训练关节;当所述待训练关节的速度低于设定阈值时,基于所述抖动力矩参数对各所述待训练关节施加抖动力矩,以使各所述待训练关节处于抖动状态;当所述待训练关节的速度高于所述设定阈值时,停止对所述待训练关节施加抖动力矩,基于所述训练任务控制所述待训练关节施加辅助力矩。
6.进一步,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述基于所述训练任务控制所述待训练关节施加辅助力矩的步骤,包括:获取各所述待训练关节的运动系数,并将所述抖动力矩参数设置为零;基于所述运行系数及所述训练任务计算各所述待训练关节的目标电流;将所述目标电流对应发送至各所述待训练关节的执行模块。
7.进一步,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述训练任务包括所述康复机器人上肢末端的当前位置和目标位置;所述基于所述运行系数及所述训练任务计算各所述待训练关节的目标电流的步骤,包括:基于所述当前位置和所述目标位置进行目标路径规划,确定所述上肢末端到达所述目标位置时各所述待训练关节的目标关节角度和目标关节角速度;获取各所述待训练关节的当前状态;其中,所述当前状态包括各所述待训练关节的实际角度、实际角速度及角加速度;基于各所述待训练关节的当前状态、所述目标关节角度和目标关节角速度,计算各所述待训练关节的反馈力矩;确定各所述待训练关节的前馈力矩,基于各所述待训练关节的反馈力矩和前馈力矩计算各所述待训练
关节产生对应力矩所需的目标电流。
8.进一步,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述反馈力矩的计算算式为:
[0009][0010]
其中,n为待训练关节的总数量,τ
fb,
为第i个所述待训练关节的反馈力矩,q
ri
为第i个待训练关节的目标关节角度,为第i个待训练关节的目标关节角速度,qi为第i个待训练关节的实际角度,为第i个待训练关节的实际角速度,ki为第i个待训练关节的阻抗控制刚度系数,bi为第i个待训练关节的阻抗控制阻尼系数,所述待训练关节的实际角速度通过卡尔曼滤波器对所述待训练关节的实际角度滤波得到;
[0011]
所述待训练关节的前馈力矩的计算算式为:
[0012][0013]
其中,τ
ff,
为第i个所述待训练关节的前馈力矩,αi为第i个待训练关节的辅助力矩系数,m(q)为康复机器人的惯性矩阵,[g(q)]i为康复机器人重力向量的第i项,为第i个待训练关节的摩擦力项,thi为第i个待训练关节的速度阈值,q为所述待训练关节的实际角度向量,为第i个待训练关节的实际角速度,为待训练关节的角加速度向量。
[0014]
进一步,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述基于所述抖动力矩参数对各所述待训练关节施加抖动力矩的步骤,包括:基于所述抖动力矩参数及前馈力矩计算算式确定各所述待训练关节的前馈力矩;基于各所述待训练关节的前馈力矩确定各所述待训练关节产生抖动力矩时所需的抖动电流;将所述抖动电流发送至各所述待训练关节的执行模块。
[0015]
进一步,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述前馈力矩计算算式为:
[0016][0017]
其中,n为待训练关节的总数量,τ
ff,
为第i个待训练关节的前馈力矩,[g(q)]i为康复机器人重力向量的第i项,为第i个待训练关节的摩擦力项,ai为第i个待训练关节的抖动力矩幅值,wi为第i个待训练关节的抖动角频率,为第i个待训练关节的抖动相位,thi为第i个待训练关节的速度阈值,q为所述待训练关节的实际角度向量,为第i个待训练关节的实际角速度。
[0018]
进一步,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述抖动力矩幅值的取值范围包括0~5nm,所述抖动角频率的取值范围包括0~20πrad/s。
[0019]
第二方面,本发明实施例还提供了一种康复机器人主动控制装置,包括:获取模块,用于获取训练任务和预先设置的康复训练参数;其中,所述康复训练参数包括抖动力矩参数和待训练关节;抖动模块,用于当所述待训练关节的速度低于设定阈值时,基于所述抖动力矩参数对各所述待训练关节施加抖动力矩,以使各所述待训练关节处于抖动状态;控制模块,用于当所述待训练关节的速度高于所述设定阈值时,停止对所述待训练关节施加抖动力矩,基于所述训练任务控制所述待训练关节施加辅助力矩。
[0020]
第三方面,本发明实施例提供了一种康复机器人,包括:虚拟现实模块、执行模块和控制器,所述控制器包括处理器和存储装置;所述存储装置上存储有计算机程序,所述计算机程序在被所述处理器运行时执行如第一方面任一项所述的方法。
[0021]
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面任一项所述的方法的步骤。
[0022]
本发明实施例提供了一种康复机器人主动控制方法、装置及康复机器人,通过获取训练任务和预先设置的康复训练参数(包括抖动力矩参数和待训练关节);当待训练关节的速度低于设定阈值时,基于抖动力矩参数对各待训练关节施加抖动力矩,以使各待训练关节处于抖动状态;当待训练关节的速度高于设定阈值时,停止对待训练关节施加抖动力矩,基于训练任务控制待训练关节施加辅助力矩。本发明通过在待训练关节的速度低于设定阈值时,认为康复机器人处于静止状态下,控制各待训练关节处于抖动状态,使静摩擦力转化为动摩擦力并在前馈力矩中进行补偿以降低静摩擦力影响,通过在待训练关节的速度高于设定阈值时,认为用户主动施加力开始训练,控制待训练关节停止抖动,并对待训练关节施加辅助力矩,能够使待训练关节按照训练任务的目标路径进行康复训练运动,由于训练关节在静止时处于抖动状态,无需在主动训练开始时识别用户的运动方向,一方面无需额外增加运动方向识别传感器,降低了康复机器人的材料成本,另一方面,降低了康复机器人的控制算法复杂度,在简化控制算法的基础上完成了主动训练任务,实用性较强。
[0023]
本发明实施例的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明实施例的上述技术即可得知。
[0024]
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0025]
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0026]
图1示出了本发明实施例所提供的一种康复机器人主动控制方法流程图;
[0027]
图2示出了本发明实施例所提供的一种康复机器人结构示意图;
[0028]
图3示出了本发明实施例所提供的一种虚拟现实场景示意图;
[0029]
图4示出了本发明实施例所提供的一种康复机器人主动控制框图;
[0030]
图5示出了本发明实施例所提供的一种基于抖动的上肢康复机器人主动控制流程图;
[0031]
图6示出了本发明实施例所提供的一种康复机器人主动控制装置结构示意图。
[0032]
图标:
[0033]
21-控制器;22-执行模块;23-虚拟现实模块;41-运动规划环节;42-前馈环节;43-反馈环节;44-卡尔曼滤波器。
具体实施方式
[0034]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
[0035]
本实施例提供了一种康复机器人主动控制方法,应用于康复机器人的控制器,参见图1所示的康复机器人主动控制方法流程图,该方法主要包括以下步骤:
[0036]
步骤s102,获取训练任务和预先设置的康复训练参数。
[0037]
上述康复机器人可以是上肢康复训练机器人,该康复机器人包括虚拟现实模块,基于虚拟现实模式显示虚拟现实场景以及训练提示,当用户选择训练任务后,将用户选择的训练任务发送至控制器中。上述训练提示包括康复机器人能够执行的训练任务,该训练任务包括训练任务所对应的起始位置(即康复机器人上肢末端的当前位置)及结束位置(即目标位置)。
[0038]
上述康复训练参数包括抖动力矩参数、待训练关节(包括待训练关节的数量)和各待训练关节的运动系数,该运动系数包括阻抗控制刚度系数和阻抗控制阻尼系数,其中,抖动力矩参数包括各训练关节的抖动力矩幅值、抖动角频率及抖动相位。
[0039]
上述康复训练参数可以根据待训练者的训练需求设定,参见如图2所示的康复机器人结构示意图,该康复机器人包括控制器21、执行模块22和虚拟现实模块23,康复机器人初始化后,待训练者坐在虚拟现实模块23的显示屏前方,手臂连接训练执行模块(包括多关节的机械臂)准备进入康复训练。
[0040]
步骤s104,当待训练关节的速度低于设定阈值时,基于抖动力矩参数对各待训练关节施加抖动力矩,以使各待训练关节处于抖动状态。
[0041]
上述设定阈值可以通过分别检测待训练关节未施加力及施加力时待训练关节的速度得到,当待训练关节的速度低于设定阈值时,用户未对待训练关节施加力,康复机器人处于静止状态,基于预先设置的抖动力矩参数对执行模块的各待训练关节施加低幅低频抖动力矩,各待训练关节处于轻微抖动状态以降低静摩擦力影响,避免待训练关节开始训练时因无法获取运动方向而补偿静摩擦力困难。
[0042]
步骤s106,当待训练关节的速度高于设定阈值时,停止对待训练关节施加抖动力矩,基于训练任务控制待训练关节施加辅助力矩。
[0043]
当训练者主动施加力后执行模块开始运行,使得各待训练关节的速度高于设定阈值,当检测到待训练关节的速度高于设定阈值时,即检测到用户对待训练关节施加力,用户将开始主动训练,将各待训练关节的抖动力矩设置为零,使各待训练关节停止抖动,根据用户主动训练所选择的训练任务及康复训练参数计算辅助电流并发送至执行模块,以对待训练关节对应的关节执行单元施加辅助力矩,使待训练关节按照目标路径进行康复训练运动。
[0044]
本实施例提供的上述康复机器人主动控制方法,通过待训练关节的速度低于设定阈值时,认为康复机器人处于静止状态下,控制各待训练关节处于抖动状态,使静摩擦力转化为动摩擦力并在前馈力矩中进行补偿以降低静摩擦力影响,通过在待训练关节的速度高于设定阈值时,认为用户主动施加力开始训练,控制待训练关节停止抖动,并对待训练关节施加辅助力矩,能够使待训练关节按照训练任务的目标路径进行康复训练运动,由于训练
关节在静止时处于抖动状态,无需在主动训练开始时识别用户的运动方向,一方面无需额外增加运动方向识别传感器,降低了康复机器人的材料成本,另一方面,降低了康复机器人的控制算法复杂度,在简化控制算法的基础上完成了主动训练任务,实用性较强。
[0045]
在一种可行的实施方式中,本实施例提供了基于训练任务控制待训练关节施加辅助力矩的实施方式:获取各待训练关节的运动系数,并将抖动力矩参数设置为零;基于运行系数及训练任务计算各待训练关节的目标电流;将目标电流对应发送至各待训练关节的执行模块。执行模块根据待训练关节的电流指令,对待训练关节对应的关节执行单元施加辅助力矩。
[0046]
在一种可行的实施方式中,本实施例提供了基于运行系数及训练任务计算各待训练关节的目标电流的实施方式,具体可参照如下步骤(1)~步骤(4)执行:
[0047]
步骤(1):基于当前位置和目标位置进行目标路径规划,确定上肢末端到达目标位置时各待训练关节的目标关节角度和目标关节角速度。
[0048]
上述训练任务包括康复机器人上肢末端的当前位置和目标位置;参见如图3所示的虚拟现实场景示意图,虚拟现实场景中显示出训练提示、手臂末端的当前位置o点[xs,ys,zs]和目标位置a点[xe,ye,ze]。虚拟现实模块实时读取执行模块各待训练关节的实际角度(通过关节编码器得到)基于正运动学计算并更新虚拟现实场景中待训练手臂的当前位置。待训练手臂的目标位置表示患者的待训练手臂下一步期望达到的位置,为了锻炼患者的认知能力,待训练手臂的目标位置可以是随机生成的,例如从起点o移动至目标a或者b或者其他位置等。为保证运动规划环节成功实现,当前位置[xs,ys,zs]和目标位置[xe,ye,ze]的距离应小于一定值。
[0049]
训练提示用于指示患者当前训练任务,可以采用文字形式或者语音形式等,通常包括多个步骤(即多个训练子任务),并包含了每个训练子任务对应的起始位置和结束位置,以及完成一个训练子任务后随机进入下一个训练子任务,例如从a移动至目标b或者c或者其他位置;直至全部训练任务完成或者训练时间结束。由于训练子任务可以随机生成,因此,上述康复训练运动过程还需要患者大脑主动参与识别,从而可以同时对患者的手臂和大脑进行训练,提高了患者的认知能力和训练的趣味性。
[0050]
参见如图4所示的康复机器人主动控制框图,本实施例提供的康复机器人主动控制方法包括运动规划环节41、前馈环节42、反馈环节43和卡尔曼滤波器44等多个控制环节。
[0051]
运动规划环节41基于逆运动学将虚拟现实目标路径(即从当前位置至目标位置)换算为执行模块各待训练关节的目标角度和角速度,即输入为虚拟现实场景中手臂末端的当前位置和目标位置,输出为各待训练关节的目标关节角度q
ri
和目标关节角速度具体计算步骤如下:
[0052]
1)对康复机器人建立dh坐标系,确定末端齐次变换矩阵t(q)∈se(3),线速度雅可比矩阵jv(q)∈r3×n,设置计算收敛阈值q
th

[0053]
2)计算位置误差ek:k=0时ek=[x
e-xs,y
e-ys,z
e-zs],q0=θs;k》0时δt=t(qk)-t(q
k-1
),ek=δt(1:3,4)。其中,[xs,ys,zs]表示上肢末端当前位置的笛卡尔坐标;[xe,ye,ze]表示上肢末端目标位置的笛卡尔坐标;k表示当前规划时刻,k-1表示上一个规划时刻;t(qk)表示当前时刻的末端齐次变换矩阵,t(qk-1)表示上一时刻的末端齐次变换矩阵;
[0054]
3)使用levenberg-marquardt算法计算δqk=jv(qk)
t
(jv(qk)jv(qk)
t
λ2i)-1ek
。其
中,jv(qk)表示线速度雅可比矩阵,i表示单位矩阵,ek表示位置误差,λ表示阻尼系数。
[0055]
4)迭代计算q
k 1
=qk δqk直至‖δqk‖≤q
th
停止迭代计算,此时q
k 1
为到达末端目标位置时上肢各关节角度θe。
[0056]
5)将上肢末端到达目标位置时各待训练关节的角度记为目标关节角度,目标关节角度q
ri
=θe(i);将上肢末端到达目标位置时各待训练关节的角速度记为目标关节角速度,目标关节角速度
[0057]
其中,θs∈rn表示上肢外骨骼各关节角度当前值向量(由各关节编码器测量得到),θs(i)表示θs的第i项;θe∈rn表示到达目标位置时上肢外骨骼各关节角度向量,θe(i)表示θe的第i项;t表示预设的运动持续时间。
[0058]
步骤(2):获取各待训练关节的当前状态。
[0059]
上述当前状态包括各待训练关节的实际角度向量q(也可以记为qi,下角标i表示第i个待训练关节)、实际角速度及角加速度向量基于卡尔曼滤波器对各待训练关节的实际角度qi(由各关节编码器测量得到)进行滤波以降低信号噪声,并输出滤波后的各待训练关节的实际角速度滤波得到的实际角速度输入反馈环节中用以计算反馈力矩。
[0060]
康复机器人的离散状态方程为:
[0061][0062]
其中,k表示当前采样时刻,k-1表示上一个采样时刻,1表示上一个采样时刻,是由第i个待训练关节的实际角度,实际角速度和角加速度组成的状态向量,表示状态转移矩阵,ts是采样时间,c=[1,0,0]∈r3表示观测矩阵,yi∈r表示观测值(即编码器测量得到的第i个待训练关节的实际角度)。
[0063]
卡尔曼滤波由预测更新和测量更新两步组成,其中,预测更新过程为:
[0064][0065][0066]
测量更新过程为:
[0067][0068][0069][0070]
其中,表示*的预测值,pi∈r3×3是第i个待训练关节的估计误差协方差矩阵,qi∈r3×3是第i个待训练关节的过程噪声协方差矩阵,k
i,k
∈r3×1是第i个待训练关节的卡尔曼增益,ri∈r是第i个待训练关节的测量噪声方差,i∈r3×3是单位矩阵,初始值可设为x
i,0
=[0,0,0],p
i,0
=i。
[0071]
目前的康复机器人控制方法使用编码器测得待训练关节的实际角度并进行差分得到实际角速度,差分计算造成角速度信号噪声较大,错误率高,本技术通过使用卡尔曼滤波确定实际角速度,降低了实际角速度信号噪声,提高了主动控制的准确性。
[0072]
步骤(3):基于各待训练关节的当前状态、目标关节角度和目标关节角速度,计算各待训练关节的反馈力矩。
[0073]
反馈环节基于阻抗控制率计算各待训练关节的反馈力矩,反馈力矩的计算算式为:
[0074][0075]
其中,n为待训练关节的总数量,τ
fb,i
为第i个待训练关节的反馈力矩,q
ri
为第i个待训练关节的目标关节角度,为第i个待训练关节的目标关节角速度,qi为第i个待训练关节的实际角度,为第i个待训练关节的实际角速度,ki为第i个待训练关节的阻抗控制刚度系数,bi为第i个待训练关节的阻抗控制阻尼系数。上述待训练关节的实际角速度是通过卡尔曼滤波器对待训练关节的实际角度滤波得到的。
[0076]
步骤(4):确定各待训练关节的前馈力矩,基于各待训练关节的反馈力矩和前馈力矩计算各待训练关节产生对应力矩所需的目标电流。
[0077]
用户施加主动力后,前馈力矩计算算式为:
[0078][0079]
控制器在执行上述康复机器人主动控制方法的过程中,前馈环节计算各待训练关节的前馈力矩时,前馈力矩的计算算式为:
[0080][0081][0082]
其中,n为待训练关节的总数量,τ
ff,i
为关节抖动时第i个待训练关节的前馈力矩,[*]i和*i表示向量*的第i项,[g(q)]i为康复机器人重力向量的第i项,为第i个待训练关节的摩擦力项,αi为第i个待训练关节的辅助力矩系数,m(q)为康复机器人的惯性矩阵,是抖动项,ai为第i个待训练关节的抖动力矩幅值,wi为第i个待训练关节的抖动角频率,为第i个待训练关节的抖动相位,thi为第i个待训练关节的速度阈值,q为待训练关节的实际角度向量,为第i个待训练关节的实际角速度,为待训练关节的角加速度向量,
[0083]
根据上述前馈力矩计算算式可知,只有当待训练关节的实际角速度小于一定值时(即),才会对待训练关节施加抖动,即康复机器人静止时,对待训练关节施加抖动力矩,采用动力矩,采用计算待训练关节的前馈力矩;当用户主动施加力待训练关节的实际角速度大于一定值(即)时,设置待
训练关节的抖动力矩为零,采用计算待训练关节的前馈力矩。
[0084]
摩擦力项分别由coulomb库伦摩擦,viscous粘滞摩擦和stribeck斯特里贝克摩擦三项组成,k
1,i
表示第i个关节的coulomb摩擦系数,tanh是双曲正切函数,r是一个常数,k
2,i
表示第i个关节的viscous摩擦系数,k
3,i
表示第i个关节的stribeck摩擦系数,vi是第i个关节的stribeck摩擦常数。为了避免抖动影响患者的使用体验,关节抖动采用低幅低频抖动,即控制抖动的角度幅值在5nm以内,角频率wi在0-20πrad/s之间。
[0085]
控制器基于前馈环节和反馈环节的力矩计算各关节产生对应力矩所需的目标电流ii:
[0086][0087]
其中,ii为第i个待训练关节的目标电流,ki是第i个待训练关节电机的力矩常数,由电机生产厂家给出,表示电机电流与输出力矩的比例关系。
[0088]
在一种可行的实施方式中,上述执行模块中各待训练关节可以采用外骨骼形式,包括以下7个自由度中的一个或多个:肩关节外摆/内收自由度、前屈/后伸自由度,旋内/旋外自由度,肘关节屈曲/伸展自由度,前臂旋前/旋后自由度,腕关节背屈/掌屈、尺曲/桡曲自由度;各关节自由度均安装有编码器以获取关节实际角度;且各个自由度可单独进行康复训练或组合进行康复训练。执行模块根据待训练关节的关节电流指令,对待训练关节对应的关节执行单元施加辅助力矩,以使待训练关节按照目标关节路径进行康复训练运动。
[0089]
在一种可行的实施方式中,本实施例提供了基于抖动力矩参数对各待训练关节施加抖动力矩的实施方式:基于抖动力矩参数及前馈力矩计算算式确定各待训练关节的前馈力矩;基于各待训练关节的前馈力矩确定各待训练关节产生抖动力矩时所需的电流,记为抖动电流;将抖动电流发送至各待训练关节的执行模块。
[0090]
在对各待训练关节施加抖动力矩时,前馈力矩计算算式为:
[0091][0092]
其中,n为待训练关节的总数量,τ
ff,i
为第i个待训练关节的前馈力矩,[g(q)]i为康复机器人重力向量的第i项,为第i个待训练关节的摩擦力项,ai为第i个待训练关节的抖动力矩幅值,wi为第i个待训练关节的抖动角频率,为第i个待训练关节的抖动相位,thi为第i个待训练关节的速度阈值,q为待训练关节的实际角度,为第i个待训练关节的实际角速度。
[0093]
在对各待训练关节施加抖动力矩时,上肢机械臂末端的当前位置[xs,ys,zs]会产生变化,根据变化后的当前位置坐标及抖动力矩参数周期性计算各待训练关节的前馈力矩,进而周期性更新各待训练关节的目标电流,实现了对待训练关节的抖动控制。
[0094]
在一种可行的实施方式中,上述抖动力矩幅值的取值范围为0~5nm,抖动角频率的取值范围为0~20πrad/s。
[0095]
本实施例提供的上述康复机器人主动控制方法,在对康复机器人进行主动控制时,通过加入反馈环节控制,减小了康复机器人的运动误差,通过加入前馈环节控制,加快
了康复机器人的反应速度,控制方式简单,实用性强,且加入虚拟现实增强了康复训练的趣味性,提高了用户的训练体验度。
[0096]
在前述实施例的基础上,本实施例提供了一种应用前述康复机器人主动控制方法的示例,参见如图5所示的一种基于抖动的上肢康复机器人主动控制流程图,具体可参照如下步骤s501~步骤s505执行:
[0097]
步骤s501:设备初始化,用户坐在虚拟现实模块后方中间位置,手臂连接训练执行模块进入康复训练。
[0098]
步骤s502:根据用户的康复程度选择康复训练场景并确定康复训练相关参数。
[0099]
步骤s503:静止状态下,对执行模块各关节施加低幅低频抖动力矩,各关节处于抖动状态以降低静摩擦力影响。
[0100]
步骤s504:用户主动施加力后执行模块开始运动,将抖动力矩设置为零,控制器根据设定参数计算目标电流并发送给执行模块。
[0101]
步骤s505:执行模块根据待训练关节的目标电流指令,对待训练关节对应的关节执行单元施加辅助力矩,以使待训练关节按照目标路径进行康复训练运动。
[0102]
对应于上述实施例所提供的康复机器人主动控制方法,本发明实施例提供了一种康复机器人主动控制装置,参见图6所示的一种康复机器人主动控制装置结构示意图,该装置包括以下模块:
[0103]
获取模块61,用于获取训练任务和预先设置的康复训练参数;其中,康复训练参数包括抖动力矩参数和待训练关节。
[0104]
抖动模块62,用于当待训练关节的速度低于设定阈值时,基于抖动力矩参数对各待训练关节施加抖动力矩,以使各待训练关节处于抖动状态。
[0105]
控制模块63,用于待训练关节的速度高于设定阈值时,停止对待训练关节施加抖动力矩,基于训练任务控制待训练关节施加辅助力矩。
[0106]
本实施例提供的上述康复机器人主动控制装置,通过在待训练关节的速度低于设定阈值时,认为康复机器人处于静止状态下,控制各待训练关节处于抖动状态,使静摩擦力转化为动摩擦力并在前馈力矩中进行补偿以降低静摩擦力影响,通过在待训练关节的速度高于设定阈值时,认为用户主动施加力开始训练,控制待训练关节停止抖动,并对待训练关节施加辅助力矩,能够使待训练关节按照训练任务的目标路径进行康复训练运动,由于训练关节在静止时处于抖动状态,无需在主动训练开始时识别用户的运动方向,一方面无需额外增加运动方向识别传感器,降低了康复机器人的材料成本,另一方面,降低了康复机器人的控制算法复杂度,在简化控制算法的基础上完成了主动训练任务,实用性较强。
[0107]
在一种实施方式中,上述控制模块63,进一步用于获取各待训练关节的运动系数,并将抖动力矩参数设置为零;基于运行系数及训练任务计算各待训练关节的目标电流;将目标电流对应发送至各待训练关节的执行模块。
[0108]
在一种实施方式中,上述训练任务包括康复机器人上肢末端的当前位置和目标位置;上述控制模块63,进一步用于基于当前位置和目标位置进行目标路径规划,确定上肢末端到达目标位置时各待训练关节的目标关节角度和目标关节角速度;获取各待训练关节的当前状态;其中,当前状态包括各待训练关节的实际角度、实际角速度及角加速度;基于各待训练关节的当前状态、目标关节角度和目标关节角速度,计算各待训练关节的反馈力矩;
确定各待训练关节的前馈力矩,基于各待训练关节的反馈力矩和前馈力矩计算各待训练关节产生对应力矩所需的目标电流。
[0109]
在一种实施方式中,上述反馈力矩的计算算式为:
[0110][0111]
其中,n为待训练关节的总数量,τ
fb,i
为第i个待训练关节的反馈力矩,q
ri
为第i个待训练关节的目标关节角度,为第i个待训练关节的目标关节角速度,qi为第i个待训练关节的实际角度,为第i个待训练关节的实际角速度,ki为第i个待训练关节的阻抗控制刚度系数,bi为第i个待训练关节的阻抗控制阻尼系数,待训练关节的实际角速度通过卡尔曼滤波器对待训练关节的实际角度滤波得到;
[0112]
待训练关节的前馈力矩的计算算式为:
[0113][0114]
其中,τ
ff,i
为第i个待训练关节的前馈力矩,αi为第i个待训练关节的辅助力矩系数,m(q)为康复机器人的惯性矩阵,[g(q)]i为康复机器人重力向量的第i项,为第i个待训练关节的摩擦力项,thi为第i个待训练关节的速度阈值,q为待训练关节的实际角度向量,为第i个待训练关节的实际角速度,为待训练关节的角加速度向量。
[0115]
在一种实施方式中,上述抖动模块62,进一步用于基于抖动力矩参数及前馈力矩计算算式确定各待训练关节的前馈力矩;基于各待训练关节的前馈力矩确定各待训练关节产生抖动力矩时所需的抖动电流;将抖动电流发送至各待训练关节的执行模块。
[0116]
在一种实施方式中,上述前馈力矩计算算式为:
[0117][0118]
其中,n为待训练关节的总数量,τ
ff,i
为第i个待训练关节的前馈力矩,[g(q)]i为康复机器人重力向量的第i项,为第i个待训练关节的摩擦力项,ai为第i个待训练关节的抖动力矩幅值,wi为第i个待训练关节的抖动角频率,为第i个待训练关节的抖动相位,thi为第i个待训练关节的速度阈值,q为待训练关节的实际角度向量,为第i个待训练关节的实际角速度。
[0119]
在一种实施方式中,上述抖动力矩幅值的取值范围包括0~5nm,抖动角频率的取值范围包括0~20πrad/s。
[0120]
本实施例提供的上述康复机器人主动控制装置,在对康复机器人进行主动控制时,通过加入反馈环节控制,减小了康复机器人的运动误差,通过加入前馈环节控制,加快了康复机器人的反应速度,控制方式简单,实用性强,且加入虚拟现实增强了康复训练的趣味性,提高了用户的训练体验度。
[0121]
本实施例所提供的装置,其实现原理及产生的技术效果和前述实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
[0122]
对应于前述实施例所提供的方法和装置,本发明实施例还提供了一种康复机器人,如图2所示,包括:虚拟现实模块、执行模块和控制器,控制器包括处理器和存储装置;所述存储装置上存储有计算机程序,所述计算机程序在被所述处理器运行时执行上述实施例
提供的康复机器人主动控制方法。
[0123]
上述虚拟现实模块包括运算装置和显示装置,运算装置生成虚拟现实场景,显示装置显示虚拟现实场景。在实际应用中,上述运算装置可以是安装有中央处理器cpu(central processing unit)或者图形处理器gpu(graphics processing unit)的电脑主机或工控机;上述显示装置可以为带触摸功能的电子设备,也可以为配置有悬浮触控功能的电子设备,或者为同时配置触摸功能和悬浮触控功能的电子设备,以及仅配置有显示功能的电子设备,通过鼠标和键盘等进行操作控制的电子设备等,如显示器或者电视等,具体可以根据实际情况进行设置。
[0124]
本发明实施例提供了一种计算机可读介质,其中,所述计算机可读介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使所述处理器实现上述实施例所述的方法。
[0125]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统具体工作过程,可以参考前述实施例中的对应过程,在此不再赘述。
[0126]
本发明实施例所提供的康复机器人主动控制方法、装置及康复机器人的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
[0127]
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0128]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0129]
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0130]
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护
范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献