人形机器人建模与控制(二) - 高级运动学和动态建模

xiangyu fu Lv3

1. Introduction

在第一篇博客中,我们介绍了人形机器人建模的基础概念,包括空间运动的平移和旋转。本篇博客将深入探讨机器人学的运动学和动力学建模方法,特别是针对人形机器人的具体应用。

2. Kinematic Modeling

运动学方程

对于一个自由度的机器人系统,其从基座到末端执行器的齐次变换矩阵可以表示为:

其中,是旋转矩阵,是平移向量,描述了末端执行器相对于基座的位姿。

速度的雅可比矩阵

机器人的末端执行器速度与关节速度之间的关系由雅可比矩阵表示:

其中,是角速度,是线速度,是关节角度。

雅可比矩阵的两种形式

分析雅可比矩阵(Analytical Jacobian)

计算与表示依赖的雅可比矩阵,通过偏微分获得:

几何雅可比矩阵(Geometric Jacobian)

将关节速度映射到线速度和角速度:

这两者之间存在映射关系:

差分逆运动学

差分逆运动学通过求解雅可比矩阵的逆矩阵来计算关节角速度,使得末端执行器的速度尽可能接近期望速度:

当雅可比矩阵不可逆时,可以使用伪逆(pseudo-inverse)来求解:

其中, 是雅可比矩阵的Moore-Penrose伪逆。

3. Dynamic Modeling

动力学基本方程

  1. 线性运动
  • 动能:
  • 势能:
  • 运动方程:
  1. 角运动
  • 动能:
  • 运动方程:
  1. 弹簧系统
  • 势能:
  • 运动方程:
  1. 阻尼系统
  • 能量损失:
  • 运动方程:

拉格朗日力学

对于具有质心位置、质量、线速度和角速度的物体,其动能、势能和拉格朗日量分别为:

  • 动能:
  • 势能:
  • 拉格朗日量:

系统的总动能和势能:

拉格朗日方程:

系统方程:

矩阵形式:

动力学方程的特性

  1. 惯性矩阵 是有界对称正定矩阵:

  1. 反对称性质:

  1. 参数的线性关系:

功率关系

功率与广义速度之间的关系:

动力学方程包含外力

机器人动力学方程考虑外部力影响:

这个方程描述了机器人在外部力作用下的动力学行为,其中是作用在末端执行器上的外部力,通过雅可比矩阵传递到关节力矩上。

4. Floating Base (Underactuated) Robots

接下来我们要讨论浮动基准(欠驱动)机器人的动力学建模。这种机器人系统具有移动底座,不完全受控,因此需要特殊的建模方法。

在浮动基准(欠驱动)机器人中,我们引入了一些新的符号和表示:

需要注意的是:

在浮动基准机器人中: - 表示机器人的状态向量,包括浮动基准(floating base)的位姿 和广义坐标 。 - 表示机器人的速度向量,包括浮动基准的速度 和广义速度 。 - 表示机器人的加速度向量,包括浮动基准的加速度 和广义加速度

通过引入浮动基准,这些表示允许我们处理那些具有移动底座和不完全受控(欠驱动)的机器人系统。在浮动基准机器人中,浮动基准的位姿和速度是重要的,因为它们涉及机器人的整体运动和控制。广义坐标和广义速度则描述了机器人的内部自由度和关节运动。

动力学扩展

在浮动基准机器人的动力学建模中,惯性矩阵、科里奥利斯和离心力项以及重力项需要扩展:

在上述方程中: - 描述了机器人系统中的重力效应。对于浮动基准机器人,扩展为 。 - 表示科里奥利斯和离心力项,扩展为 。 - 表示惯性矩阵,扩展为

扩展的力矩和外部力表示

符号和定义

  • 是维度为 的力矩向量。通过执行器选择矩阵(actuation selector matrix) 扩展到

  • : 这是一个维度为 的力矩向量,表示关节空间中的力矩。

  • : 这是一个执行器选择矩阵,它的形式为 这里, 是一个 的零矩阵, 是一个 的单位矩阵。这个矩阵用于将 扩展到 ,形式为

力和雅可比矩阵

  • 表示外部力通过雅可比矩阵传递到广义坐标上的力。扩展为

  • : 这里, 是与广义坐标 相关的雅可比矩阵。 是作用在末端执行器上的外部力。通过 ,我们可以得到作用在关节空间的力。

  • : 扩展后的雅可比矩阵。具体形式为 其中, 是基础(base)部分的雅可比矩阵, 是关节部分的雅可比矩阵。组合在一起, 就包含了基础和关节的雅可比矩阵信息。

具体计算

  • : 这里,我们考虑 是整个系统的状态向量,它包括了基础和关节的状态。 是一个将基础部分 和关节部分 结合在一起的雅可比矩阵。
  • : 扩展后的雅可比矩阵 将外部力 从末端执行器传递到包括基础和关节在内的整个系统中,结果是一个维度为 的向量。

动力学方程

首先是一般形式的动力学方程:

  • : 系统的质量矩阵(惯性矩阵),它取决于机器人的配置
  • : 广义加速度向量。
  • : 科里奥利斯力和离心力矩阵,取决于机器人的配置 和速度
  • : 重力项,取决于配置
  • : 关节力矩向量 通过执行器选择矩阵 传递到系统中。
  • : 外部力 通过扩展雅可比矩阵 传递到系统中。

平板脚机器人的动力学方程

对于具有平板脚的机器人,动力学方程可以具体化为:

其中:

  • : 分别表示作用在左脚和右脚上的外部力。每个外部力都是六维的,表示在 3D 空间中的力和力矩。

  • : 分别是左脚和右脚的雅可比矩阵,它们将这些外部力转换到系统的广义坐标空间中。

动力学方程的详细解释

  1. 惯性项 :
    • 这个项表示系统的惯性效应,反映了机器人的加速度如何受到质量分布的影响。
  2. 科里奥利斯和离心力项 :
    • 这个项包含了由机器人的速度 引起的科里奥利斯力和离心力。
  3. 重力项 :
    • 这个项表示重力对机器人各部分的作用。
  4. 执行器力矩项 :
    • 这个项是由关节执行器产生的力矩,通过选择矩阵 将这些力矩映射到系统的广义坐标中。
  5. 外部力项 :
    • 这些项表示左脚和右脚的外部力对系统的影响。通过左脚和右脚的雅可比矩阵 ,将这些外部力映射到广义坐标中。

5. Center of Mass Dynamics

符号定义和解释

  • : 表示浮动基准的原点。
  • : 表示质心的位置,也就是机器人的总质心。
  • : 质心雅可比矩阵,它描述了质心速度与关节速度之间的关系。
  • : 机器人的总质量。

质心动量矩阵

质心动量矩阵 定义为:

这里, 表示了质心动量矩阵, 是机器人总质量, 是质心雅可比矩阵。

质心雅可比矩阵

质心雅可比矩阵 定义如下:

这里, 表示质心在世界坐标系中的线速度, 是质心雅可比矩阵, 是广义速度向量。

质心雅可比矩阵的具体形式为:

其中: - : 机器人的第 个部分的质量。 - : 第 个部分的质心雅可比矩阵。

这个表达式表示质心雅可比矩阵 是所有部分质心雅可比矩阵的质量加权平均。

质心速度计算

通过上面的定义,我们可以计算质心在世界坐标系中的线速度:

质心速度与广义速度 的关系通过质心雅可比矩阵 来描述。

以上方程和定义为描述机器人的质心动力学提供了一个完整的框架。质心动量矩阵 、质心雅可比矩阵 以及质心速度公式 共同描述了机器人在浮动基准下的动力学行为。

6. Constraints

先来讨论一下约束分类:

6.1 运动学约束分类

  1. 运动学约束(kinematic constraints):
    • 运动学约束是用于限制机器人运动的一组方程或不等式。
  2. 等式约束(equality):
    • 等式约束定义为 ,表示某些变量之间的精确关系。
      • 完整约束(holonomic):
        • 这些是仅依赖于广义坐标(位置)的约束。
          • 定常约束(scleronomic):
            • 这类约束只依赖于广义坐标 ,不随时间变化。表示为
          • 时变约束(rheonomic):
            • 这类约束依赖于广义坐标和时间 ,表示为
      • 非完整约束(nonholonomic):
        • 这些约束不仅依赖于广义坐标,还依赖于广义速度
          • 非完整约束可以表示为
  3. 不等式约束(inequality):
    • 不等式约束定义为 ,表示变量之间的范围或限制关系。

运动学约束方程

下面的方程描述了系统中的运动学约束:

  • : 运动学约束矩阵,依赖于系统状态
  • : 广义速度向量。

运动学约束矩阵的维度

的维度:

这里:

  • : 系统的自由度数。
  • : 约束的数量。

这个表示意味着 是一个维度为 的矩阵,其中 是广义速度 的维度。

6.2 运动学约束方程

极限情况下的动力学方程

当外部力 和接触约束力 趋向于无穷大时,机器人系统的动力学方程简化为:

这表示在极限条件下,机器人仅在内在力和力矩的作用下维持平衡。

约束力和约束方程

在有约束力的情况下,约束方程表示为:

这里, 是约束矩阵,其维度为 ,其中 是约束的自由度数。

能量守恒和约束力

约束力的能量守恒性质可以表示为:

这里,,其中 是拉格朗日乘数,表示约束力的强度。

拉格朗日力学方程

在拉格朗日力学框架下,约束力引入了一个新的项

这里, 是拉格朗日函数, 是外部作用力矩。

动力学方程包括约束力

将约束力显式地包括在内,动力学方程变为:

约束力显式依赖于作用力矩

最后,通过解约束力 的显式表达式,我们得到:

结合以上方程,我们得到拉格朗日乘数 的显式表达式:

这些方程展示了浮动基准机器人在约束条件下的动力学行为,并明确了约束力对作用力矩的依赖性。具体来说:

  1. 基本动力学方程: 描述了机器人在惯性、科里奥利力和重力作用下的运动。
  2. 约束方程: 描述了系统的运动学约束。
  3. 能量守恒和约束力: 结合拉格朗日乘数引入约束力。
  4. 最终方程: 通过显式表达式描述了约束力 ,其依赖于作用力矩、广义速度、惯性矩阵、科里奥利力和重力。

这些方程对理解和控制机器人在复杂约束条件下的行为非常重要,有助于设计更加稳定和高效的机器人控制系统。

  • Title: 人形机器人建模与控制(二) - 高级运动学和动态建模
  • Author: xiangyu fu
  • Created at : 2024-05-26 23:32:03
  • Updated at : 2024-06-21 16:09:46
  • Link: https://redefine.ohevan.com/2024/05/26/legged_robots/blog-02/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments