控制外骨骼协同的方法和装置与流程

文档序号:32661489发布日期:2022-12-23 23:42阅读:29来源:国知局
控制外骨骼协同的方法和装置与流程

1.本发明涉及控制骨骼模型算法技术领域,尤其涉及一种控制外骨骼协同的方法和装置。


背景技术:

2.目前市场上有较多的穿戴骨骼机器人,比较常见的为直驱外骨骼机器人,通常用于对人体步行助力,可以通过控制直驱外骨骼机器人关节输出助力力矩,具体利用惯性检测单元检测人体姿态信息,通过智能识别算法识别人体运动模式和步态相位,控制器使用惯性检测单元检测出来的人体姿态信息建立人体动力学模型,根据人体动力学模型得到参考扭矩,再根据实际使用骨骼机器人关节输出助力力矩和输入的参考扭矩做闭环反馈,从而实现精准控制人体步行助力。
3.然而,现有的外骨骼机器人采用有限状态机的方式助力不柔顺,导致外骨骼机器人产生连续的抖动,而且对于非周期性运动,如加速或减速运动等情况,无法做到对预测步态相位快速收敛,导致步行速度变化较大时,外骨骼机器人助力输出与人体无法同步,容易造成步行阻碍甚至跌到的问题。


技术实现要素:

4.鉴于背景技术中存在的问题,本发明的目的在于提供一种控制外骨骼协同的方法和装置,其不仅能有效防止外骨骼机器人产生连续的抖动,还能使人步行速度变化较大时,保证外骨骼机器人助力输出与人体同步,从而避免了出现步行阻碍甚至跌到的问题。
5.为了实现上述目的,本发明提供了一种控制外骨骼协同的方法,所述方法包括:
6.施加第一力矩使腿的摆动角度从第一最小角度的位置摆动至第一最大角度的位置,所述第一力矩在所述第一最大角度的位置为0;
7.施加第二力矩使腿的摆动角度从第一最大角度的位置摆动至第二最小角度的位置,所述第二力矩在所述第二最小角度的位置为0,其中,所述第二力矩与腿摆动至所述第二最小角度的位置的惯性力相反;
8.从所述第一最小角度的位置和所述第二最小角度的位置之间选取第一角度和第二角度,并计算所述第一角度和所述第二角度之间的斜率值;
9.比较所述斜率值与预设值大小,若所述斜率值小于所述预设值,则腿的摆动角度状态为走停交替,并在一周期内计算得到唯一的所述第一力矩的大小值或所述第二力矩的大小值;
10.若所述斜率值大于等于所述预设值,则腿的摆动角度状态为直行运动,并在一周期内分别计算得到所述第一力矩的大小值和所述第二力矩的大小值。
11.可选地,所述施加第一力矩使腿的摆动角度从第一最小角度的位置摆动至第一最大角度的位置,所述第一力矩在所述第一最大角度的位置为0,包括:
12.所述第一力矩在所述第一最小角度的位置和所述第一最大角度的位置之间的中
间角度位置为第一最大值,所述第一力矩使腿从中间角度位置摆动至所述第一最大角度的位置,所述第一力矩从所述第一最大值逐渐减小至0。
13.可选地,所述施加第二力矩使腿的摆动角度从第一最大角度的位置摆动至第二最小角度的位置,所述第二力矩在所述第二最小角度的位置为0,包括:
14.所述第二力矩在所述最小角度位置和所述第一最大角度的位置之间的的中间角度位置为第二最大值,所述第二力矩使腿从中间角度位置摆动至所述第二最小角度的位置,所述第二力矩从所述第二最大值逐渐减小至0。
15.可选地,所述方法还包括:
16.从所述第一最小角度的位置开始摆动至所述第二最小角度的位置结束摆动形成一个摆动角度的第一周期,在所述第一周期内计算得到所述第一力矩的大小值和所述第二力矩的大小值。
17.可选地,所述从所述第一最小角度的位置开始摆动至所述第二最小角度的位置结束摆动形成一个摆动角度的第一周期之间前,包括:
18.记录至少5-25个角度的位置点数,所述至少5-25个角度的位置点数在不同的时间段对应不同的角度的位置点数,其中,所述至少5-25个角度的位置点数包括所述第一最小角度的位置、所述第一最大角度的位置和所述第二最小角度的位置;
19.根据所述至少5-25个角度的位置点数得到所述第一周期内对应所有腿的摆动角度值。
20.可选地,所述根据所述至少5-25个角度的位置点数得到所述第一周期内对应所有腿的摆动角度值,包括:
21.取出记录的15个角度的位置点数,连接所述取出记录的15个角度的位置点数形成所述第一周期内的不同时间段对应腿的摆动的不同角度值,所述取出记录的15个角度的位置点数包括所述第一最小角度的位置、所述第一最大角度的位置和所述第二最小角度的位置。
22.可选地,所述从所述第一最小角度的位置和所述第二最小角度的位置之间选取第一角度和第二角度,并计算所述第一角度和所述第二角度之间的斜率值,包括:
23.执行以下算法:
24.k=(θ
2-θ1)/a,其中,θ2表示第二角度,θ1表示第一角度,a表示θ2在一周期内取到的预设角度的位置点数。
25.可选地,所述比较所述斜率值与预设值大小,若所述斜率值小于所述预设值,则腿的摆动角度状态为走停交替,并在一周期内计算得到唯一的所述第一力矩的大小值或所述第二力矩的大小值,包括:
26.执行以下算法:
27.t=t1*m,得到所述第一力矩的大小值或所述第二力矩的大小值,其中,t1为时间基数,m为力矩系数,t为所述第一力矩或所述第二力矩。
28.可选地,所述若所述斜率值大于等于所述预设值,则腿的摆动角度状态为直行运动,并在一周期内分别计算得到所述第一力矩的大小值和所述第二力矩的大小值,包括:
29.执行以下算法:
[0030][0031]
得到周期不同时间段的所述第一力矩的大小值和所述第二力矩的大小值,其中,b为第一周期。
[0032]
本技术还提供一种控制外骨骼协同的装置,所述装置包括:
[0033]
第一控制力矩模块,用于施加第一力矩使腿的摆动角度从第一最小角度的位置摆动至第一最大角度的位置,所述第一力矩在所述第一最大角度的位置为0;
[0034]
第二控制力矩模块,用于施加第二力矩使腿的摆动角度从第一最大角度的位置摆动至第二最小角度的位置,所述第二力矩在所述第二最小角度的位置为0,其中,所述第二力矩与腿摆动至所述第二最小角度的位置的惯性力相反;
[0035]
计算斜率模块,用于从所述第一最小角度的位置和所述第二最小角度的位置之间选取第一角度和第二角度,并计算所述第一角度和所述第二角度之间的斜率值;
[0036]
第一选择模块,用于比较所述斜率值与预设值大小,若所述斜率值小于所述预设值,则腿的摆动角度状态为走停交替,并在一周期内计算得到唯一的所述第一力矩的大小值或所述第二力矩的大小值;
[0037]
第二选择模块,用于若所述斜率值大于等于所述预设值,则腿的摆动角度状态为直行运动,并在一周期内分别计算得到所述第一力矩的大小值和所述第二力矩的大小值。
[0038]
本发明的有益效果如下:
[0039]
通过比较所述斜率值与预设值大小,判断得出腿的摆动角度状态为走停交替或直行运动,进而选择合适的计算方式得到在周期时间内的所述第一力矩的大小值和所述第二力矩的大小值,使得控制所述第一力矩和所述第二力矩更加精准,有效防止外骨骼机器人产生连续的抖动,并且保证了保证外骨骼机器人助力输出与人体同步,从而避免了出现步行阻碍甚至跌到,由于本技术只通过时间控制和角度控制骨骼机器人助力输出,实现方式比较简单,为用户提供了便利性。
附图说明
[0040]
图1是本技术的一种控制外骨骼协同的方法流程图;
[0041]
图2是一种控制外骨骼协同的方法的时间相角关系图。
具体实施方式
[0042]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。
[0043]
除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术;本技术的说明书和权利要求书及上述附图说明
中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。
[0044]
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0045]
请参考图1至图2,本技术提供了一种控制外骨骼协同的方法,所述方法包括:
[0046]
步骤s10,施加第一力矩使腿的摆动角度从第一最小角度的位置摆动至第一最大角度的位置,所述第一力矩在所述第一最大角度的位置为0。可选地,所述施加第一力矩使腿的摆动角度从第一最小角度的位置摆动至第一最大角度的位置,所述第一力矩在所述第一最大角度的位置为0,包括,所述第一力矩在所述第一最小角度的位置和所述第一最大角度的位置之间的中间角度位置为第一最大值,所述第一力矩使腿从中间角度位置摆动至所述第一最大角度的位置,所述第一力矩从所述第一最大值逐渐减小至0。具体地,第一最小角度的位置在本技术中默认是从0开始到第一最大角度的位置,例如,取抬腿角度为0-40
°
,则当抬腿角度为20
°
时,第一力矩为最大值,在抬腿角度为0-20
°
之间第一力矩是从0逐渐增大至最大值,在抬腿角度为20
°‑
40
°
之间,第一力矩是逐渐从最大值减小为0。这样设计保证了外骨骼机器人采用的方式助力柔顺,外骨骼机器人不会出现连续的抖动,提高了用户的体验感,当然,本技术的第一最小角度的位置也可以是从负角度开始,或从正角度开始,原理与从0度开始相同,在此不在赘述。
[0047]
步骤s20,施加第二力矩使腿的摆动角度从第一最大角度的位置摆动至第二最小角度的位置,所述第二力矩在所述第二最小角度的位置为0,其中,所述第二力矩与腿摆动至所述第二最小角度的位置的惯性力相反。可选地,所述施加第二力矩使腿的摆动角度从第一最大角度的位置摆动至第二最小角度的位置,所述第二力矩在所述第二最小角度的位置为0,包括,所述第二力矩在所述最小角度位置和所述第一最大角度的位置之间的的中间角度位置为第二最大值,所述第二力矩使腿从中间角度位置摆动至所述第二最小角度的位置,所述第二力矩从所述第二最大值逐渐减小至0
°
。具体地,所述第二最小角度的位置在本技术中默认是0
°
,例如,取收腿角度为40
°‑0°
,则当收腿角度为20
°
时,第二力矩为最大值,在收腿角度为40
°‑
20
°
之间第二力矩是从0逐渐增大至最大值,在收腿角度为20
°‑0°
之间,第二力矩是逐渐从最大值减小为0
°
。这样设计保证了外骨骼机器人采用的方式助力柔顺,外骨骼机器人不会出现连续的抖动,使用更加流畅,提高了用户的体验感。
[0048]
步骤s30,从所述第一最小角度的位置和所述第二最小角度的位置之间选取第一角度和第二角度,并计算所述第一角度和所述第二角度之间的斜率值。可选地,所述从所述第一最小角度的位置和所述第二最小角度的位置之间选取第一角度和第二角度,并计算所述第一角度和所述第二角度之间的斜率值,包括,执行以下算法:
[0049]
k=(θ
2-θ1)/a,其中,θ2表示第二角度,θ1表示第一角度,a表示θ2在一周期内取到的预设角度的位置点数。需要说明的是,根据计算出斜率值的大小能够选择出合适的力矩大小,从而使得外骨骼机器阻力人体更加流畅,不会给人体产生不良体验感。
[0050]
步骤s40,比较所述斜率值与预设值大小,若所述斜率值小于所述预设值,则腿的摆动角度状态为走停交替,并在一周期内计算得到唯一的所述第一力矩的大小值或所述第二力矩的大小值。可选地,所述比较所述斜率值与预设值大小,若所述斜率值小于所述预设
值,则腿的摆动角度状态为走停交替,并在一周期内计算得到唯一的所述第一力矩的大小值或所述第二力矩的大小值,包括:执行以下算法:
[0051]
t=t1*m,得到所述第一力矩的大小值或所述第二力矩的大小值,其中,t1为时间基数,m为力矩系数,t为所述第一力矩或所述第二力矩。其中,预设值大小为0.2,根据所述斜率值小于所述预设值,选择更为合适的计算方式尤为重要,即当腿的摆动角度状态为走停交替时,选择t=t1*m的输出力矩计算更为合适,使得助力外骨骼机器的力矩更为安全,并且保证外骨骼机器人助力输出与人体同步,从而避免了出现步行阻碍甚至跌到。
[0052]
步骤s50,若所述斜率值大于等于所述预设值,则腿的摆动角度状态为直行运动,并在一周期内分别计算得到所述第一力矩的大小值和所述第二力矩的大小值。可选地,所述若所述斜率值大于等于所述预设值,则腿的摆动角度状态为直行运动,并在一周期内分别计算得到所述第一力矩的大小值和所述第二力矩的大小值,包括:执行以下算法:
[0053][0054]
得到周期不同时间段的所述第一力矩的大小值和所述第二力矩的大小值,其中,b为第一周期。需要说明的是,当0<t1<b/2在此时间段内,腿的摆动角度状态为直行抬腿运动,则算法t=t1*m合适,当b/2<t1<b在此时间段内,腿的摆动角度状态为直行收腿动作,则算法(b-t1)*m合适,当t1>b,超出周期内的时间段表示直行收腿结束,出发下一周期重新开始往复循环执行此算法。并且当腿的摆动角度状态为直行运动时选择在不同时间段内执行不同的力矩给外骨骼机器人助力,从而使腿伸展和弯曲的切换的更加流畅,并且保证了给外骨骼机器人助力更加精准,避免外骨骼机器人产生连续的抖动的发生。
[0055]
在一种实施例中,所述方法还包括,从所述第一最小角度的位置开始摆动至所述第二最小角度的位置结束摆动形成一个摆动角度的第一周期,在所述第一周期内计算得到所述第一力矩的大小值和所述第二力矩的大小值。
[0056]
可选地,所述从所述第一最小角度的位置开始摆动至所述第二最小角度的位置结束摆动形成一个摆动角度的第一周期之间前,包括,记录至少5-25个角度的位置点数,所述至少5-25个角度的位置点数在不同的时间段对应不同的角度的位置点数,其中,所述至少5-25个角度的位置点数包括所述第一最小角度的位置、所述第一最大角度的位置和所述第二最小角度的位置,根据所述至少5-25个角度的位置点数得到所述第一周期内对应所有腿的摆动角度值。可选地,所述根据所述至少5-25个角度的位置点数得到所述第一周期内对应所有腿的摆动角度值,包括:取出记录的15个角度的位置点数,连接所述取出记录的15个角度的位置点数形成所述第一周期内的不同时间段对应腿的摆动的不同角度值,所述取出记录的15个角度的位置点数包括所述第一最小角度的位置、所述第一最大角度的位置和所述第二最小角度的位置。
[0057]
如图2所示,需要说明的是,通过取出记录的15个角度的位置点数的时间和对应的摆动角度值,并将取出记录的15个角度的位置点数连接起来形成相应的曲线图像,从该曲线图像中能够得出在一个周期内时间对应的的摆动角度值,并且根据不同的运动方式选择
不同的力矩助力输出的算法,从而使力矩助力外骨骼机器人更加流畅,保证了曲线图像不发散,且不会产生抖动现象。另外,图2的横坐标为时间,纵坐标表示角度。
[0058]
本技术通过步骤s10-步骤s50可知,在一个周期内,腿的摆动从第一最小角度的位置摆动至第二最小角度的位置,在此过程中,第一力矩是从最小值到最大值,再从最大值到最小值,第二力矩也是从最小值到最大值,再从最大值到最小值,这样设计使得控制所述第一力矩和所述第二力矩更加精准,有效防止外骨骼机器人产生连续的抖动,并且力矩助力输出至外骨骼机器人上更加流畅,而且通过比较所述斜率值与预设值大小,判断得出腿的摆动角度状态为走停交替或直行运动,进而选择合适的计算方式得到在周期时间内的所述第一力矩的大小值和所述第二力矩的大小值,并且保证了保证外骨骼机器人助力输出与人体同步,从而避免了出现步行阻碍甚至跌到,由于本技术只通过时间控制和角度控制骨骼机器人助力输出,实现方式比较简单,为用户提供了便利性。
[0059]
本技术还提供一种控制外骨骼协同的装置,所述装置包括:
[0060]
第一控制力矩模块,用于施加第一力矩使腿的摆动角度从第一最小角度的位置摆动至第一最大角度的位置,所述第一力矩在所述第一最大角度的位置为0;
[0061]
第二控制力矩模块,用于施加第二力矩使腿的摆动角度从第一最大角度的位置摆动至第二最小角度的位置,所述第二力矩在所述第二最小角度的位置为0,其中,所述第二力矩与腿摆动至所述第二最小角度的位置的惯性力相反;
[0062]
计算斜率模块,用于从所述第一最小角度的位置和所述第二最小角度的位置之间选取第一角度和第二角度,并计算所述第一角度和所述第二角度之间的斜率值;
[0063]
第一选择模块,用于比较所述斜率值与预设值大小,若所述斜率值小于所述预设值,则腿的摆动角度状态为走停交替,并在一周期内计算得到唯一的所述第一力矩的大小值或所述第二力矩的大小值;
[0064]
第二选择模块,用于若所述斜率值大于等于所述预设值,则腿的摆动角度状态为直行运动,并在一周期内分别计算得到所述第一力矩的大小值和所述第二力矩的大小值。
[0065]
通过装置之间模块的运行配合可知,在一个周期内,腿的摆动从第一最小角度的位置摆动至第二最小角度的位置,在此过程中,第一力矩是从最小值到最大值,再从最大值到最小值,第二力矩也是从最小值到最大值,再从最大值到最小值,这样设计使得控制所述第一力矩和所述第二力矩更加精准,有效防止外骨骼机器人产生连续的抖动,并且力矩助力输出至外骨骼机器人上更加流畅,而且通过比较所述斜率值与预设值大小,判断得出腿的摆动角度状态为走停交替或直行运动,进而选择合适的计算方式得到在周期时间内的所述第一力矩的大小值和所述第二力矩的大小值,并且保证了保证外骨骼机器人助力输出与人体同步,从而避免了出现步行阻碍甚至跌到,由于本技术只通过时间控制和角度控制骨骼机器人助力输出,实现方式比较简单,为用户提供了便利性。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1