课程链接:www.bilibili.com/cheese/play…
惯性是物体保持原有运动状态(静止或匀速直线运动)、抵抗状态改变的固有属性,是物质的基本禀性,在任何条件下均存在,与是否受力、是否运动无关。
牛顿第一定律:任何物体都要保持匀速直线运动或静止的状态,直到外力迫使它改变运动状态为止。
惯性大小仅由质量决定,质量越大,惯性越大,改变运动状态越难。
惯性≠力,比如可以说 “物体由于惯性,在运动” 而非 “受到惯性力,在运动”。
惯性与速度无关,比如高速行驶的汽车惯性由质量决定,高速仅增加动量与动能,不改变惯性本身。
“矩” 是从拉丁语 momentum 演变而来,最初在力学中表示使物体转动的效应,后来延伸为数学上描述分布状态的核心概念。
矩的核心逻辑是以某参考点或轴为基准,用 “距离” 加权衡量物理量的分布。
矩的本质是「距离的某次幂 × 物理量」的积分或求和。
按 “距离的幂次” 可分为不同阶矩:
详细解释一下不同阶的矩。
零阶矩:距离的 0 次幂(即 1)× 物理量,本质是物理量的总和(比如物体总质量);

已知:
求:物体的零阶矩
解:
物体的零阶矩是:

通过上面的公式可见:
一阶矩:距离的 1 次幂 × 物理量,描述物理量的 “位置中心”(比如质心,就是质量的一阶矩除以总质量);
已知条件同上面的零阶矩。

求:物体的一阶矩
解:
物体的一阶矩是:

由此可见:
解释一下为什么会有这种距离加权质量的概念。
假设我把2个小球放在跷跷板的两端,若想让跷跷板保持水平,那我应该如何放置跷跷板的支点?

支点位置的移动,实际上就是在对小球的质量做加权。
通过这个支点,大家应该可以联想到质心的概念。
若把跷跷板理解为一条坐标轴,那么支点在此轴上的位置,就是两个小球在此轴上的质心位置。
质心,就是质量的一阶矩除以总质量。

以小球A和小球B构成的物体为例,物体的质心位置就是:

二阶矩:距离的 2 次幂 × 物理量,描述物理量相对参考点或轴的分散程度—— 而惯性矩,就是“质量的二阶矩”。
已知条件同上面的零阶矩。

求:物体的二阶矩
解:
物体的二阶矩是:

由此可见:
大家可以想象一列等距的点绕圆心转一圈的样子:

点距离圆心越远,离散程度越大。
惯性矩是质量的二阶矩(距离² × 质量)。
惯性矩的核心是用”距离平方加权“描述质量相对参考轴的分散程度,其数值越大转动惯性越大。
比如,同等质量的物体,因为距离平方的加权,它基于不同参考轴的惯性矩是不一样的。

在上图中,同样质量的长方体,右侧的惯性矩要大于左侧,因为距离b>a,右侧的离散程度更大,距离对质量的加权更大。
惯性矩是刚体转动分析(机器人、机械结构)的核心参数。
惯性矩根据其计算的对象,可分成2种:
举例说明多零件组合的惯性矩的应用。

已知:
求:A、B、C 组合基于关节D的旋转轴的惯性矩
公式:

解:
A、B、C 组合基于关节D的旋转轴的惯性矩是:

通常我们会假设一个刚体零件密度不变,即均质刚体,然后计算此刚体绕参考轴旋转的惯性矩。
一个刚体零件可以理解为微元集合。如下图所示:

单一均质刚体零件的惯性矩可以用微积分计算:

均质刚体的微元质量等于密度乘以微小体积:
dm=ρ⋅dV
许多常见的几何体都用现成的惯性矩公式,不用自己算积分。
均质细杆的质量 M,长度 L,半径R忽略不计




此时细杆的质心到参考轴的距离比第一种情况更远,所以分散程度更大,惯性矩更大。
均质圆柱的质量 M,半径 R,高度 L


上图的圆柱为长条状,惯性矩的质量集中在圆周,分散程度低,惯性矩小。


上图的圆柱为长条状,惯性矩的质量集中在长度方向,分散程度大,惯性矩大。
均质球体的质量 M,半径为R


均质立方体的质量 M,边长 a




此时正方体的质心到参考轴的距离比第一种情况更远,所以分散程度更大,惯性矩更大。
均质长方体的质量 M,长 a、宽 b、高 c
当参考轴过质心,与长度方向平行时:


在机器人场景中,均质长方体的惯性矩用的是比较多的。
比如,我们经常会把一个不规则零件以x、y、z轴为参考轴的惯性矩,作为均质长方体的惯性矩。
然后基于这种惯性矩,逆推均质长方体的尺寸。
有了尺寸后,就可以把长方体显示出来。
我们可以根据长方体的形状,大致判断机器人零件的惯性矩数据是否正确。
比如,下图的蓝色长方体就是我对宇树H1机器人的惯性矩做的可视化。

从上图可以看到,蓝色长方体的宽高比,基本与其所在的零件的宽高比一致,这就说明其零件的惯性矩数据比较合理。
由于均质长方体的惯性矩的重要性,同是为了加深大家对惯性矩的理解和认知,我会以均质正方体为例,说一下单一均质刚体的惯性矩公式的积分推导过程。
我们接下来要推导的是:参考轴过质心,平行于棱的均质正方体的惯性矩公式。
这种情况是最常用到的。
单一均质刚体零件的惯性矩需要用微积分计算:

在微积分的世界里,正方体可以视之为无数个微元的集合,每个微元都有自己的微小质量。
正方体的惯性矩就是(微元到参考轴的距离的平方乘以微元质量)的积分。
以此原理,计算正方体的惯性矩步骤如下:
1.对一个截面中的微元做积分运算。
因为正方体可以视之为垂直于参考轴的截面的集合,所以可以先计算一个截面中的(微元到参考轴的距离的平方乘以微元质量)的积分。如下图所示:

2.对截面做积分运算。
将一个截面的积分延参考轴做积分,就可以得到正方体的惯性矩。


已知:
求:均质正方体的惯性矩
解:
1.确定均质正方体的惯性矩的微积分公式
设正方体中任一微元的位置是(x,y,z)
任一微元到x轴的距离的是:

任一微元的惯性矩是:

由微元组成的任一垂直于x轴的正方体截面的惯性矩是:

由截面组成的正方体的惯性矩是:

2.确定微元质量表达式
均质刚体微元质量 = 密度 × 微元体积

直角坐标系下的微元体积dV:

因此,微元质量dm可以写做:

同时,根据正方体的总体积V,总质量M,可推导密度与总质量的关系:


因此,微元质量dm可以写做:

3.将微元质量表达式带入微积分公式

因为密度ρ 是常数,可以提到积分之外:

因为(y²+z²) 与x没有关系,所以上式可以理解为(基于x的单积分)乘以(基于y、z 的二重积分):

这种拆分方式可以理解为:(正方体的x轴向尺寸a)乘以(正方体中垂直于x轴的任一截面的惯性矩)
4.计算基于x的单积分
根据幂函数积分公式:

计算基于x的单积分:

5.计算基于y、z 的二重积分
根据满足线性性质的二重积分拆分公式:

拆分基于y、z 的二重积分:

因为y² 中没有z,z² 中没有y,所以拆分后的2个二重积分可以分别变换为2个二重积分的相乘:

根据幂函数积分公式:

计算拆分出的一重积分:




整合基于y、z 的二重积分结果:

6.整合所有结果

大家可以参考正方体惯性矩公式的推导过程,推导一下均质长方体的惯性矩。
当均质长方体的参考轴过质心,与长度方向平行时,其惯性矩公式为:


在机器人场景中,经常会使用宽、高、深的尺寸为2a、2b、2c的均质长方体,如下图所示:

当长方体的尺寸被定义为2a、2b、2c是,a、b、c 就叫做半边长。
这种尺寸定义方式的优点是:质心到面的距离更直观,简化通过惯性矩反向推导尺寸的逻辑。
此时,均质长方体的惯性矩公式就应该是:

在机器人场景中,我们经常会将机器人零件基于x、y、z 轴的惯性矩当成均质长方体惯性矩。
如下面的标签就是机器人URDF 文件中的一部分,其中的ixx、iyy、izz 就是机器人零件基于x、y、z 轴的惯性矩。
<link name="base">
<inertial>
<origin rpy="0.0 0.0 0.0" xyz="0.0 0.0 0.0"/>
<mass value="0.01"/>
<inertia ixx="0.0001" ixy="0.0" ixz="0.0" iyy="0.0002" iyz="0.0" izz="0.0003"/>
</inertial>
</link>
基于此惯性矩逆推出长方体的尺寸,然后结合零件的位置和旋转数据,将长方体可视化。

这种惯性矩可视化的作用是:根据长方体的尺寸比例与零件是否一致,判断零件的惯性矩是否有问题。
根据惯性矩逆推长方体尺寸步骤如下:
1.校验惯性矩的物理合理性
基础校验:质量和惯性矩必须非负,否则皆代表惯性矩不合理。
以下情况皆不合理:

三角不等式校验:惯性矩的刚体约束。
任意刚体的三轴惯性矩,必须满足:任意两轴之和≥第三轴。
以下情况皆不合理:

2.构建三元一次方程组,计算尺寸
根据半边长的均质长方体的惯性矩公式,我们可以构建一个三元一次方程组:

解三元一次方程组,可得:

这一章我们从惯性和矩,详解了惯性矩。
惯性大小仅由质量决定。
惯性矩的大小,除了受质量影响,还会受到距离的加成,这也是为什么同等质量的物体在不同参考轴上有不同的惯性矩。
后面我们还以均质正方体为例,推导了它的惯性矩公式。
单零件惯性矩的计算,是要用到微积分的。
若有同学对微积分缺少具象的认知,可以跟我说,我会以几何可视化的方式告诉大家微积分里的一些基本概念。