当前位置: 首页 > 专利查询>浙江大学专利>正文

一种描述仿人机器人全身姿态的方法技术

技术编号:38721784 阅读:11 留言:0更新日期:2023-09-08 23:16
本发明专利技术公开了一种描述仿人机器人全身姿态的方法;该方法针对躯干姿态难以准确描述具有大惯量四肢的仿人机器人全身姿态的问题,通过将机器人各个刚体的质心组成的集合视为点云,并将每个刚体的质量作为权重,通过点云旋转算法计算机器人质量部分的旋转;然后根据惯性张量和转动惯量之间的关系,通过黎曼梯度下降算法对机器人惯性张量部分的旋转进行计算;最后基于点云旋转和旋转矩阵平均提出了角位移算法,实现了仿人机器人质量部分旋转和惯性张量部分旋转的解耦。利用本发明专利技术方法可在真实的仿人机器人上实现诸如跳跃、奔跑和后空翻等高动态的运动。高动态的运动。高动态的运动。

【技术实现步骤摘要】
一种描述仿人机器人全身姿态的方法


[0001]本专利技术涉及机器人领域,特别涉及一种描述仿人机器人全身姿态的方法。

技术介绍

[0002]当研究者在仿人机器人上采用基于模型的运动规划或控制算法时,为降低模型的复杂度从而提高算法的求解效率,他们通常会将机器人的降阶模型作为规划或控制的对象,例如质心动量模型和单刚体模型。尽管这些降阶模型相对原本的全阶模型而言是低维的,但它们包含了机器人的大部分动力学特性。
[0003]质心动量模型描述的是整个机器人的线动量和角动量与机器人所受外力和外力矩的关系。它可以描述机器人的速度状态,但无法给出机器人的姿态,而单刚体模型可以同时描述机器人的速度状态和姿态。因此,本申请选择单刚体模型作为模型预测控制的控制对象,单刚体模型通常需要用一个旋转坐标来表示其姿态,本申请称该姿态为仿人机器人的全身姿态。
[0004]关于仿人机器人全身姿态的描述主要有躯干姿态、角偏移和角质心三种。在一般情况下,对于躯干重而四肢轻的仿人机器人,可以用躯干姿态近似表示整个机器人的全身姿态,因近似而产生的误差不至于影响机器人的实际控制效果。但是,对于四肢较重或较长的仿人机器人,使用躯干姿态近似的方法将会产生较大的误差,尤其是在仿人机器人进行具备空中相的跳跃运动的情况下。例如,在机器人进行跳高运动时,用躯干姿态近似的方法会使得机器人在起跳过程中获得较大的角动量,从而令机器人在腾空阶段具有俯仰方向的角速度,最终导致机器人无法顺利落地。相比较而言,角偏移和角质心能够更加准确地描述仿人机器人的全身姿态。其中,角偏移是指机器人质心角速度的积分,其值依赖于机器人运动的路径。这意味着角偏移可以为相同的机器人状态取多个不同的值,导致研究者们难以将其应用到真实的仿人机器人上。角质心,也叫最小扰动坐标,是一种全局的求解机器人最优全身姿态的方法。与角偏移相比,角质心的优点在于它是不依赖路径的,其缺点在于它需要在零角动量的假设下运行。因此目前无法利用角质心方法在仿人机器人上实现诸如跳跃、奔跑和后空翻等高动态的运动。

技术实现思路

[0005]本专利技术的目的在于针对现有技术的不足,提供了一种描述仿人机器人全身姿态的方法。
[0006]为实现上述目的,本专利技术提供了一种描述仿人机器人全身姿态的方法,包括如下步骤:
[0007](1)把仿人机器人视为一个由n个刚体组成的多刚体系统,并得到每个刚体的质量m
i
以及其关于身体系的惯性矩阵同时得到其在初始状态下的质心位置p
init|i
和旋转矩阵R
init|i
,以及其在当前状态下的质心位置p
cur|i
和旋转矩阵R
cur|i

[0008](2)将由各个刚体质心组成的集合视为点云,将各个刚体的质量m
i
作为权重,通过
奇异值分解法计算点云从初始状态到当前状态的旋转矩阵R
pc

[0009](3)将该点云视为刚体,计算出其关于点云质心的惯性矩阵并将其与多刚体系统的其它刚体合并;
[0010](4)利用黎曼梯度下降算法求解具有变化权重的旋转矩阵平均问题,得到该多刚体系统的全身姿态R。
[0011]进一步地,所述步骤(2)包括如下子步骤:
[0012](2.1)分别计算初始状态和当前状态下的点云质心:
[0013][0014][0015]其中,为初始状态下的点云质心,当前状态下的点云质心,n为刚体数量,m
i
为第i个刚体的质量,p
init|i
为初始状态下的质心位置,p
cur|i
为当前状态下的质心位置;
[0016](2.2)根据步骤(2.1)计算得到的点云质心,计算点云旋转的协方差矩阵S:
[0017][0018]其中,T表示向量的转置;
[0019](2.3)对协方差矩阵S进行奇异值分解:
[0020]S=U∑V
T
[0021]其中,U和V都是酉矩阵,Σ是对角矩阵,U、V和Σ都是3
×
3的矩阵;
[0022](2.4)根据步骤(2.3)的奇异值分解结果得到点云从初始状态到当前状态的旋转矩阵R
pc

[0023][0024]其中,det(VU
T
)表示矩阵VU
T
的秩,U
T
矩阵U的转置。
[0025]进一步地,所述步骤(3)中,所述惯性矩阵的计算公式为:
[0026][0027]其中,[
·

表示向量的反对称矩阵形式,设向量a=[a
1 a
2 a3]T
,则[a]×
为:
[0028][0029]进一步地,所述步骤(4)包括如下子步骤:
[0030](4.1)设全身姿态R的初值为设容许误差为ε>0;
[0031](4.2)根据全身姿态R的值计算对应的单位旋转轴w:
[0032][0033]其中,||
·
||2表示向量的2范数,设a=[a
1 a
2 a3]T
,则Log(
·
)表示从旋转李群到向量空间的对数变换:
[0034][0035][0036]Log(R)=θu
[0037]其中,tr(
·
)表示矩阵的迹,即矩阵从左上到右下的主对角线上各个元素的总和;[
·
]∨
表示从反对称矩阵到向量的映射关系,θ和u分别表示旋转矩阵R对应的轴角中的旋转角和单位旋转轴;
[0038](4.3)计算在切空间中的旋转误差:
[0039][0040]其中,Log(
·
)表示从旋转李群到李代数的对数变换,log(R)=[Log(R)]×
=[θu]×

[0041](4.4)将旋转误差e投影到旋转李群:
[0042]R=Rexp(e)
[0043]其中,R为全身姿态,exp(
·
)表示从李代数到旋转李群的指数变换:
[0044][0045](4.5)判断旋转误差是否足够小,若||e||
F
<ε,则返回全身姿态R,否则转到步骤(4.2);其中||
·
||
F
表示矩阵的F范数。
[0046]与现有技术相比,本专利技术的有益效果是:
[0047]1、本专利技术结合点云旋转和旋转矩阵平均,实现了仿人机器人全身姿态的精确描述。
[0048]2、本专利技术利用黎曼梯度下降算法进行全身姿态的迭代计算,提高了求解旋转矩阵平均问题的效率。
[0049]3、本专利技术克服了角偏移方法的路径依赖问题和角质心方法的零角动量假设问题,可利用本专利技术方法在真实的仿人机器人上实现诸如跳跃、奔跑和后空翻等高动态的运动。
附图说明
[0050]图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种描述仿人机器人全身姿态的方法,其特征在于,包括如下步骤:(1)把仿人机器人视为一个由n个刚体组成的多刚体系统,并得到每个刚体的质量m
i
以及其关于身体系的惯性矩阵同时得到其在初始状态下的质心位置p
init|i
和旋转矩阵R
init|i
,以及其在当前状态下的质心位置p
cur|i
和旋转矩阵R
cur|i
;(2)将由各个刚体质心组成的集合视为点云,将各个刚体的质量m
i
作为权重,通过奇异值分解法计算点云从初始状态到当前状态的旋转矩阵R
pc
;(3)将该点云视为刚体,计算出其关于点云质心的惯性矩阵并将其与多刚体系统的其它刚体合并;(4)利用黎曼梯度下降算法求解具有变化权重的旋转矩阵平均问题,得到该多刚体系统的全身姿态R。2.根据权利要求1所述的描述仿人机器人全身姿态的方法,其特征在于,所述步骤(2)包括如下子步骤:(2.1)分别计算初始状态和当前状态下的点云质心:(2.1)分别计算初始状态和当前状态下的点云质心:其中,为初始状态下的点云质心,当前状态下的点云质心,n为刚体数量,m
i
为第i个刚体的质量,p
init|i
为初始状态下的质心位置,p
cur|i
为当前状态下的质心位置;(2.2)根据步骤(2.1)计算得到的点云质心,计算点云旋转的协方差矩阵S:其中,T表示向量的转置;(2.3)对协方差矩阵S进行奇异值分解:S=U∑V
T
其中,U和V都是酉矩阵,Σ是对角矩阵,U、V和Σ都是3
×
3的矩阵;(2.4)根据步骤(2.3)的奇异值分解结果得到点云从初始状态到当前状态的旋转矩阵R
pc
:其中,det(VU
T
)表示矩阵VU
T
...

【专利技术属性】
技术研发人员:朱秋国竺鹏戴瑞凯吴俊熊蓉
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1