一种应用于双足机器人步行控制器的参数自动调节方法

文档序号:32158023发布日期:2022-11-12 00:51阅读:86来源:国知局
一种应用于双足机器人步行控制器的参数自动调节方法

1.本发明属于双足机器人技术领域,尤其涉及一种应用于双足机器人步行控制器的参数自动调节方法。


背景技术:

2.双足机器人是利用两条腿实现移动的腿式机器人。双足机器人正在从实验室环境迈向各种复杂的工作环境。稳定的步行控制是双足机器人完成各种工作任务的基础。近年来,世界范围内出现了多种针对双足机器人稳定步行的控制方法,这些方法从控制律设计的角度实现了步行稳定控制。
3.双足机器人的步行稳定控制是通过步行控制器来实现的,步行控制器由三个同时工作的控制器组成,分别为逆运动学控制器,逆动力学控制器和主动阻抗控制器。其中,逆运动学控制器和逆动力学控制器分别用于将机器人的任务空间轨迹(质心和双脚轨迹)转换为关节空间的位置和力矩,主动阻抗控制器是通过力矩前馈和位置误差控制实现关节柔性。
4.敏感的步行控制器参数需要正确调节,以保证稳定性和良好的性能,这非常耗时。人工调节步行控制器的参数通常是次优的。因此,需要对控制器参数自动调节的方法进行深入研究。目前,由于三个控制器参数空间的维度大,这会导致寻优困难,所以已有的步行控制器调节方法仅是针对逆动力学控制器进行自动调节,而忽略逆运动学控制器和主动阻抗控制器的参数调节,这就导致了步行控制器的参数精确度下降。


技术实现要素:

5.本发明的目的是提供一种应用于双足机器人步行控制器的参数自动调节方法,通过兼顾调节逆运动学控制器、逆动力学控制器和主动阻抗控制器,提升步行控制器的参数精确度。
6.本发明采用以下技术方案:一种应用于双足机器人步行控制器的参数自动调节方法,包括以下步骤:
7.将步行控制器参数分解为第一逆运动学控制器参数、第一逆动力学控制器参数和第一主动阻抗控制器参数;
8.关闭步行控制器的逆动力学控制器和主动阻抗控制器,利用贝叶斯优化方法优化第一逆运动学控制器参数,得到第二逆运动学控制器参数;
9.保持第二逆运动学控制器参数不变,利用贝叶斯优化方法对第一逆动力学控制器参数和第一主动阻抗控制器参数进行交替优化,得到第二逆动力学控制器参数和第二主动阻抗控制器参数;
10.组合第二逆运动学控制器参数、第二逆动力学控制器参数和第二主动阻抗控制器参数得到优化后的步行控制器参数。
11.优选的,利用贝叶斯优化方法优化第一逆运动学控制器参数包括:
12.在逆运动学控制器的参数取值范围内生成n组参数集k
ik,j
;其中,j=1,2,...,n;
13.采用每一组参数集控制双足机器人完成固定的运动轨迹,并计算对应的误差;
14.根据参数集和其对应的误差,生成数据集;
15.基于贝叶斯优化方法,利用数据集训练学习概率模型,得到每组参数集对应的贝叶斯后验概率;
16.根据贝叶斯后验概率生成第二逆运动学控制器参数。
17.优选的,得到每组参数集对应的贝叶斯后验概率之后还包括:
18.扩充数据集,利用扩充后的数据集训练学习概率模型。
19.优选的,扩充数据集包括:
20.采用采集函数继续生成新的参数集;
21.将新的参数集扩充数据集。
22.优选的,利用贝叶斯优化方法对第一逆动力学控制器参数和第一主动阻抗控制器参数进行交替优化包括:
23.同时打开逆运动学控制器、逆动力学控制器和主动阻抗控制器;
24.初始化第一逆动力学控制器参数和第一主动阻抗控制器参数,控制双足机器人完成固定的运动轨迹,并计算对应的误差y
min

25.保持第一主动阻抗控制器参数不变,基于贝叶斯优化方法优化第一逆动力学控制器参数;
26.基于第一主动阻抗控制器参数和优化后的第一逆动力学控制器参数控制双足机器人完成固定的运动轨迹,并计算对应的误差其中,为优化后的第一逆动力学控制器参数,k
im
为第一主动阻抗控制器参数;
27.当时,将作为新的第一逆动力学控制器参数,将作为新的y
min

28.保持新的第一逆动力学控制器参数不变,基于贝叶斯优化方法优化第一主动阻抗控制器参数;
29.基于新的第一逆动力学控制器参数和优化后的第一主动阻抗控制器参数控制双足机器人完成固定的运动轨迹,并计算对应的误差
30.当小于新的y
min
时,将作为新的第一主动阻抗控制器参数,作为新的y
min

31.按照上述方法交替优化第一主动阻抗控制器参数和第一逆动力学控制器参数,直至满足优化终止条件,得到第二逆动力学控制器参数和第二主动阻抗控制器参数
32.优选的,误差采用以下目标函数计算得到:
33.j(k)=rc+r
lf
+r
rf
+l,
34.其中,j(k)为基于控制器参数k的误差,控制器k包括逆运动学控制器参数、逆动力学控制器参数和主动阻抗控制器参数,rc为双足机器人的质心位置跟踪误差,r
lf
为双足机器人的左脚位置跟踪误差,r
rf
为双足机器人的右脚位置跟踪误差,l为摔倒惩罚项。
35.优选的,质心位置跟踪误差通过以下方法计算:
[0036][0037]
其中,表示质心沿i轴跟踪的均方根误差,i=x,y或z,为沿i轴跟踪的最大跟踪误差。
[0038]
优选的,l的取值规则为:
[0039][0040]
其中,评估未中断表示双足机器人完成固定的运动轨迹,评估中断表示双足机器人未完成固定的运动轨迹,为评估中断的时间,t为双足机器人计划完成固定的运动轨迹的时间。
[0041]
优选的,评估中断的条件为:
[0042]
躯干的旋转超过阈值或者质心高度低于阈值。
[0043]
本发明的另一种技术方案:一种应用于双足机器人步行控制器的参数自动调节装置,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的一种应用于双足机器人步行控制器的参数自动调节方法。
[0044]
本发明的有益效果是:本发明实现了逆运动学控制器、逆动力学控制器和主动阻抗控制器三个控制器的参数联合自动调节,将高维参数空间划分为低维子空间来解决高维情况下的优化求解困难问题,逆运动学控制器参数采用贝叶斯优化自动调节,逆动力学控制器和主动阻抗控制器参数采用交替贝叶斯优化自动调节。
附图说明
[0045]
图1为本发明实施例一种应用于双足机器人步行控制器的参数自动调节方法的原理图;
[0046]
图2为本发明实施例中运动轨迹中的质心轨迹;
[0047]
图3为本发明实施例中运动轨迹中的左脚轨迹;
[0048]
图4为本发明实施例中运动轨迹中的右脚轨迹;
[0049]
图5为本发明实施例中目标函数值与评估次数的关系图。
具体实施方式
[0050]
下面结合附图和具体实施方式对本发明进行详细说明。
[0051]
目前已有一些控制器参数自动调节方法被提出,但这些方法没有考虑逆运动学控制器和主动阻抗控制器的参数自动调节问题,这是因为当这三个控制器同时进行参数自动调节寻优时,参数空间的维数将大幅扩大,从而导致寻优困难。因此,如何自动调节逆运动学,逆动力学和主动阻抗三个控制器的控制参数,是本领域技术人员目前需要解决的问题。
[0052]
本发明公开了一种应用于双足机器人步行控制器的参数自动调节方法,包括以下步骤:将步行控制器参数k分解为第一逆运动学控制器参数k
ik
、第一逆动力学控制器参数k
id
和第一主动阻抗控制器参数k
im
;关闭步行控制器的逆动力学控制器和主动阻抗控制器,利用贝叶斯优化方法优化第一逆运动学控制器参数k
ik
,得到第二逆运动学控制器参数保持第二逆运动学控制器参数不变,利用贝叶斯优化方法对第一逆动力学控制器
参数和第一主动阻抗控制器参数进行交替优化,得到第二逆动力学控制器参数和第二主动阻抗控制器参数;组合第二逆运动学控制器参数、第二逆动力学控制器参数和第二主动阻抗控制器参数得到优化后的步行控制器参数。
[0053]
本发明实现了逆运动学控制器、逆动力学控制器和主动阻抗控制器三个控制器的参数联合自动调节,将高维参数空间划分为低维子空间来解决高维情况下的优化求解困难问题,逆运动学控制器参数采用贝叶斯优化自动调节,逆动力学控制器和主动阻抗控制器参数采用交替贝叶斯优化自动调节。
[0054]
另外,本发明将高维的参数空间进行分解,提出一种易于优化求解的同时考虑三种控制器的双足机器人步行控制器参数自动调节方法,将研究人员从繁琐的参数调节中解放出来,并且获得比人工调整更好的控制性能。
[0055]
在一个实施例中,利用贝叶斯优化方法优化第一逆运动学控制器参数包括:
[0056]
将逆动力学控制器和主动阻抗控制器关闭,将双足机器人置于位置控制状态,单独利用逆运动学控制器控制机器人步行。在逆运动学控制器的参数取值范围内生成n组参数集k
ik,j
;其中,j=1,2,...,n;采用每一组参数集控制双足机器人完成固定的运动轨迹,并计算对应的误差。
[0057]
在一个实施例中,固定的运动轨迹指的是规划出的质心和双脚轨迹,本实施例采用基于线性倒立摆的方法进行规划。规划得到的质心轨迹、左脚轨迹和右脚轨迹分别如图2、3和4所示。
[0058]
作为一种具体的实现方式,误差采用以下目标函数计算得到:
[0059]
j(k)=rc+r
lf
+r
rf
+l,
[0060]
其中,j(k)为基于控制器参数k的误差,控制器k包括逆运动学控制器参数、逆动力学控制器参数和主动阻抗控制器参数,rc为双足机器人的质心位置跟踪误差,r
lf
为双足机器人的左脚位置跟踪误差,r
rf
为双足机器人的右脚位置跟踪误差,l为摔倒惩罚项。
[0061]
具体的,质心位置跟踪误差通过以下方法计算:
[0062][0063]
其中,表示质心沿i轴跟踪的均方根误差,i=x,y或z,为沿i轴跟踪的最大跟踪误差。其中,坐标系可以是机器人的脚底坐标系,也可以是世界坐标系。误差是通过实际机器人在仿真环境或真实环境的执行中数据采集得到的,本实施例中选取simscape multibody作为虚拟环境。
[0064]
更为具体的,l的取值规则为:
[0065][0066]
其中,评估未中断表示双足机器人完成固定的运动轨迹,评估中断表示双足机器人未完成固定的运动轨迹,为评估中断的时间,t为双足机器人计划完成固定的运动轨迹的时间。其中,评估中断的条件为:躯干的旋转超过阈值或者质心高度低于阈值。
[0067]
更为具体的,使用的逆运动学控制器控制质心和摆动脚跟踪规划的位置:
[0068]
[0069][0070]
其中,c表示质心位置,x表示摆动脚位置,上标plan表示计划跟踪的值,上标des表示输入逆运动学求解器的值,上标real表示当前机器人的真实值。k
c,ik
(逆运动学控制器质心比例系数)和k
f,ik
(逆运动学控制器双脚比例系数)为需要自动调节的参数,它们的集合即为逆运动学控制器参数k
ik
,其维数为6。
[0071]
本发明实施例中,使用的逆动力学控制器控制质心和双脚跟踪规划的位置:
[0072][0073][0074]
其中,c表示质心位置,p表示脚的位置,上标plan表示计划跟踪的值,上标des表示输入逆动力学求解器的值,上标real表示当前机器人的真实值。k
cp,id
(逆动力学控制器质心比例系数),k
cd,id
(逆动力学控制器质心微分系数),k
fp,id
(逆动力学控制器双脚比例系数)和k
fd,id
(逆动力学控制器双脚微分系数)为需要自动调节的参数,它们的集合即为逆动力学控制器参数k
id
,其维数为12。
[0075]
本发明实施例中,使用的主动阻抗控制器为:
[0076][0077]
其中,τ表示施加在关节上的力矩,τ
ff
是由逆动力学计算出的前馈项,q
ik
是由逆运动学计算出的角度位置,上标real表示来自机器人的真实值,k
p,im
(主动阻抗控制器弹簧系数)和k
d,im
(主动阻抗控制器阻尼系数)为需要自动调节的参数,它们的集合即为主动阻抗控制器参数k
im
,为由逆运动学计算出的角度位置对时间的微分,为机器人评估过程中的实际关节角度位置对时间的微分,其维数为12。
[0078]
经过上述的过程,则有根据参数集和其对应的误差,生成数据集
[0079]
接下来,基于贝叶斯优化方法,利用数据集训练学习概率模型,得到每组参数集对应的贝叶斯后验概率
[0080]
本实施例中,采用高斯过程对目标函数j(k)进行回归学习:
[0081][0082]
其中,先验均值m(k)定义为零。核函数k(k,k

)为matern5/2:
[0083][0084][0085]
其中,ki和kj分别为两组不同的参数取值,σ
l
和σf分别为核函数的定义参数。
[0086]
然后,根据贝叶斯后验概率生成第二逆运动学控制器参数。
[0087]
在另一个实施例中,得到每组参数集对应的贝叶斯后验概率之后还包括:扩充数据集,利用扩充后的数据集训练学习概率模型。扩充数据集包括:采用采集函数继续生成新
的参数集;将新的参数集扩充数据集。
[0088]
具体的,采用采集函数来确定k
ik,i+1
,即在本实施例中,采用预期改进的采集函数。然后使用k
ik,i+1
完成固定的运动轨迹,并计算对应的误差j(k
ik,i+1
),再将新的数据加入到原数据集中,即
[0089]
接下来重复执行上述步骤,直至满足终止条件,再根据终止时的概率模型计算出自动调节得到的第二逆运动学控制器参数本实施例中,终止条件为重复次数达到150次。
[0090]
如图5所示,为目标函数值与评估次数的关系图。如图所示,在10次评估以内,机器人就可以通过位置控制实现稳定的行走。在50次评估内,目标值将低于手动调优参数中获得的目标值。最终,目标函数值在100次评价内达到其最小值。
[0091]
在一个实施例中,利用贝叶斯优化方法对第一逆动力学控制器参数和第一主动阻抗控制器参数进行交替优化包括:同时打开逆运动学控制器、逆动力学控制器和主动阻抗控制器,将双足机器人置于力矩控制状态。其中,逆运动学控制器参数固定为
[0092]
初始化第一逆动力学控制器参数和第一主动阻抗控制器参数,即赋予k
id
,k
im
初始值,k
im
←kim,0
,k
im
←kim,0
,控制双足机器人完成固定的运动轨迹,并计算对应的误差y
min
,即y
min

j(k
id,0
,k
im,0
)。
[0093]
接着,保持第一主动阻抗控制器参数k
im
不变,基于贝叶斯优化方法优化第一逆动力学控制器参数基于第一主动阻抗控制器参数和优化后的第一逆动力学控制器参数控制双足机器人完成固定的运动轨迹,并计算对应的误差其中,为优化后的第一逆动力学控制器参数,k
im
为第一主动阻抗控制器参数。
[0094]
在本实施例中,贝叶斯优化采用高斯过程对目标函数进行回归学习,先验均值m(k)定义为零。核函数k(k,k

)为matern5/2,终止条件为评估次数达到100。
[0095]
当时,将作为新的第一逆动力学控制器参数,将作为新的y
min
,即
[0096]
接着,保持新的第一逆动力学控制器参数不变,基于贝叶斯优化方法优化第一主动阻抗控制器参数;基于新的第一逆动力学控制器参数和优化后的第一主动阻抗控制器参数控制双足机器人完成固定的运动轨迹,并计算对应的误差
[0097]
当小于新的y
min
时,将作为新的第一主动阻抗控制器参数,作为新的y
min

[0098]
同样,在本实施例中,贝叶斯优化采用高斯过程对目标函数进行回归学习,先验均值m(k)定义为零,核函数k(k,k

)为matern5/2,终止条件为评估次数达到100。
[0099]
然后,按照上述方法交替优化第一主动阻抗控制器参数和第一逆动力学控制器参数,直至满足优化终止条件,得到第二逆动力学控制器参数和第二主动阻抗控制器参数
[0100]
在本实施例中,终止条件为重复次数达到4。保持第一主动阻抗控制器参数k
im

变,目标函数的值为0.2196。
[0101]
本发明的另一种技术方案:一种应用于双足机器人步行控制器的参数自动调节装置,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的一种应用于双足机器人步行控制器的参数自动调节方法。
[0102]
上述的装置可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该装置可包括但不仅限于处理器、存储器。本领域技术人员可以理解,该装置可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
[0103]
处理器可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0104]
存储器在一些实施例中可以是所述装置的内部存储单元,例如装置的硬盘或内存。所述存储器在另一些实施例中也可以是所述装置的外部存储设备,例如所述装置上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器还可以既包括所述装置的内部存储单元也包括外部存储设备。所述存储器用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器还可以用于暂时地存储已经输出或者将要输出的数据。
[0105]
需要说明的是,上述装置的具体内容,由于与本发明方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0106]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。本领域普通技术人员可以意识到,结合本发明中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0107]
综上,在双足机器人运动控制中,逆运动学控制器、逆动力学控制器和主动阻抗控制器被广泛采用。这三种控制器中存在着大量需要调节的控制参数。对它们进行人工调节需要大量的时间和丰富的经验,因此需要设计一种控制器参数自动调节方法。对这三种控制器的参数进行联合自动调节。但是,这三种控制器的参数总计维数很高,这影响了优化算法的收敛性和计算效率。目前已有的方法局限于对其中一种控制器参数进行自动调节。
[0108]
针对这一问题,本发明利用了对于这三种控制器的先验知识,发明了一种能够降低同时刻优化维数的参数联合自动调节方法。首先,将逆运动学控制器从联合调优中解耦出来。利用逆运动学控制器单独就可以驱动机器人行走的特性,对逆运动学控制器参数进行单独调节,得到最优逆运动学控制器参数。之后,将最优逆运动学控制器参数代入联合控制中,采用交替优化的方式联合调节逆动力学控制器和主动阻抗控制器参数,最终得到三
种控制器的联合最优参数。本发明方法解决了低维度优化情况下的三种控制器参数联合调节问题,提高了优化算法的收敛性和计算效率。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1