【机器人学导论】惯性张量旋转和平移变换的推导

这篇具有很好参考价值的文章主要介绍了【机器人学导论】惯性张量旋转和平移变换的推导。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 前言

最近遇到了一些涉及惯性张量的实际问题,比如:

  • 对两个通过铰链连接在一起的杆,如何计算整体的惯性张量?
  • 对于一个由多个简单部件组合成的系统,如何计算整体的惯性张量?

在网上查找计算方法的过程中,难以通过正确的关键词找到简明的数学方法。因此我在多番查阅后,对查找到的资料做一个归纳总结,作为对《机器人学导论》书中相关章节的补充。
以下内容的符号表示将依照《机器人学导论》的命名规范。

2. 惯性张量的概念

对三维空间中的六自由度刚体而言,可能存在无穷旋转轴,对刚体而言,当其绕任意轴旋转时,我们需要一种通用的能够表征刚体质量分布的方式,因此引入惯性张量

下面是百度百科给出的惯性张量的定义
【机器人学导论】惯性张量旋转和平移变换的推导,机器人学,线性代数

更详细的介绍可以参见wiki Moment of inertia

为了方便起见,刚体的惯性张量的坐标系通常以刚体质心为原点,在下面的推导与证明中,我们也将遵循这一点。

3. 惯性张量的旋转变换

设有一坐标系为 { 0 } \{0\} {0},设有一刚体,在其上选一点建立随体坐标系 { b } \{b\} {b},该刚体以 ω \omega ω 的角速度(在 { 0 } \{0\} {0}系下描述)相对 { 0 } \{0\} {0}系运动。

3.1 结论

b  ⁣ I = ( b 0  ⁣ R T ) ( 0  ⁣ I ) ( b 0  ⁣ R ) 0  ⁣ I = ( b 0  ⁣ R ) ( b I ) ( b 0  ⁣ R T ) {}^b\!I=({}^{\color{red}0}_b\!R^{\color{red}T})({}^{\color{red}0}\!I)({}^{\color{red}0}_b\!R) \\ {}^0\!I=({}^{\color{red}0}_b\!R)({}^{\color{red}b}I)({}^{\color{red}0}_b\!R^{\color{red}T}) bI=(b0RT)(0I)(b0R)0I=(b0R)(bI)(b0RT)
(红字表示:注意上标!)

3.2 证明

刚体转动能量公式(类似于平动的动能)如下:
T = 1 2 ω T I ω \begin{equation} T=\frac{1}{2}\omega^TI\omega \end{equation} T=21ωTIω
其中, T T T 表示动能,为标量。 公式 ( 1 ) (1) (1)证明过程可参考: 刚体转动能量公式证明

容易理解,不管惯性张量、角速度在什么坐标系下表示,刚体转动的动能这个标量是一样的。因此有:
T = 1 2 ( 0 ω T ) ( 0  ⁣ I ) ( 0 ω ) T = 1 2 ( b ω T ) ( b  ⁣ I ) ( b ω ) \begin{align} T&=\frac{1}{2}({}^0\omega^T)({}^0\!I)({}^0\omega) \\ T&=\frac{1}{2}({}^b\omega^T){\color{red}({}^b\!I)}({}^b\omega) \end{align} TT=21(0ωT)(0I)(0ω)=21(bωT)(bI)(bω)
( 2 ) (2) (2)式= ( 3 ) (3) (3)式, ( 3 ) (3) (3)式中为什么标红了一部分呢?马上就会用到!

( 2 ) (2) (2) 式作如下展开:
T = 1 2 ( 0 ω T ) ( 0  ⁣ I ) ( 0 ω ) = 1 2 ( b 0  ⁣ R b ω ) T ( 0  ⁣ I ) ( b 0  ⁣ R b ω ) = 1 2 ( b ω T ) ( b 0  ⁣ R T ) ( 0  ⁣ I ) ( b 0  ⁣ R ) ( b ω ) \begin{align} T&=\frac{1}{2}({}^0\omega^T)({}^0\!I)({}^0\omega) \\ &=\frac{1}{2}({}^0_b\!R{}^b\omega)^T({}^0\!I)({}^0_b\!R{}^b\omega) \\ &=\frac{1}{2}({}^b\omega^T){\color{red}({}^0_b\!R^T)({}^0\!I)({}^0_b\!R)}({}^b\omega) \end{align} T=21(0ωT)(0I)(0ω)=21(b0Rbω)T(0I)(b0Rbω)=21(bωT)(b0RT)(0I)(b0R)(bω)

( 4 ) − ( 6 ) (4)-(6) (4)(6)式的推导主要是:旋转矩阵变换+结合律,对比 ( 3 ) (3) (3) ( 6 ) (6) (6)式有:
b  ⁣ I = ( b 0  ⁣ R T ) ( 0  ⁣ I ) ( b 0  ⁣ R ) \begin{equation} {}^b\!I=({}^{\color{red}0}_b\!R^{\color{red}T})({}^{\color{red}0}\!I)({}^{\color{red}0}_b\!R) \end{equation} bI=(b0RT)(0I)(b0R)

( 7 ) (7) (7)式即为惯性张量的旋转变换公式
进一步, ( 7 ) (7) (7)式两边左乘 ( b 0  ⁣ R ) ({}^{\color{red}0}_b\!R) (b0R),右乘 ( b 0  ⁣ R T ) ({}^{\color{red}0}_b\!R^{\color{red}T}) (b0RT),可得:
0  ⁣ I = ( b 0  ⁣ R ) ( b I ) ( b 0  ⁣ R T ) \begin{align} {}^0\!I=({}^{\color{red}0}_b\!R)({}^{\color{red}b}I)({}^{\color{red}0}_b\!R^{\color{red}T}) \end{align} 0I=(b0R)(bI)(b0RT)

4. 惯性张量的平移变换

设有一质量为 m m m 的刚体,在其上选一点建立随体坐标系 { C } \{C\} {C},已知另一坐标系 { A } \{A\} {A} { C } \{C\} {C}系为平移关系,且 { C } \{C\} {C}系原点在 { A } \{A\} {A}系中的位置为 P c P_c Pc

4.1 结论

刚体在 { A } \{A\} {A}系中的惯性张量可写为:
A  ⁣ I = C  ⁣ I + m ( P c T P c I 3 − P c P c T ) {}^A\!I={}^C\!I+m(P_c^TP_cI_3 - P_cP_c^T) AI=CI+m(PcTPcI3PcPcT)
其中 I 3 I_3 I3 3 × 3 3\times3 3×3 的单位矩阵。

上式为《机器人学导论》的结论,与下面维基百科给出的公式一致,可以理解为平行轴定理的推广
【机器人学导论】惯性张量旋转和平移变换的推导,机器人学,线性代数

4.2 证明

下面是维基百科关于张量平行轴定理的介绍:
【机器人学导论】惯性张量旋转和平移变换的推导,机器人学,线性代数

更详细的证明可以参考知网的这篇文章:惯性张量平移和旋转复合变换的一般形式及其应用

参考资料

[1] 机器人学导论(原书第四版) John J.Craig著,贠超 王超译
[2] 惯性张量平移和旋转复合变换的一般形式及其应用
[3] Parallel axis theorem文章来源地址https://www.toymoban.com/news/detail-719245.html

到了这里,关于【机器人学导论】惯性张量旋转和平移变换的推导的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 机器人学基础(三):机器人运动学

    运动学问题是在不考虑引起运动的力和力矩的情况下,描述机械臂的运动。上一篇我们已经讨论了机器人运动方程的表示方法,这一篇将会讨论机器人的DH建模方法。 Denavit-Hartenberg(D-H)模型于1955年首次提出,用于描述机器人连杆和节点之间相互关系。后来逐步完善推导出了

    2024年02月09日
    浏览(52)
  • 【机器人学】逆运动学

    逆运动学 是一个非线性的求解问题,相对于正运动学较为复杂,主要是因为可解性探究、多重解以及多重解的选择等问题。例如,形如【机器人学】正运动学详解-6.4 一个简单例子中所用的六自由度机器人,其 逆运动学 可以描述为:假设我们已经知道其次变换矩阵 R T H ^RT

    2023年04月08日
    浏览(53)
  • 机器人学-正运动学

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 DH约定 正运动学 总结 本文介绍串联机械臂基础算法,并使用python和matlab进行算法设计、建模仿真。 标准DH配置  坐标系示意图  DH参数 代码如下(python):

    2024年02月15日
    浏览(42)
  • 【机器人学】一、从线性变换的角度理解机器人坐标变换

    实际应用: 为什么要标定旋转中心 在机器视觉实际应用过程中,有这样的案例:机械手要抓取物料,物料每次的角度不一样,机械手的末端工具中心与其自身的旋转中心不重合,如果想完成这个抓取的工作,有两种解决方案: 方案一:TCP标定(Tool Center Point) 一般机械手都

    2024年04月29日
    浏览(40)
  • 机器人学基础--运动学--2.3 变换矩阵

    2.3 变换矩阵 (1)齐次坐标系变换 2.1,2.1中讨论了坐标系及其平移,旋转两种变换。在实际应用中两个坐标系之间的关系往往既有平移又有旋转,因此这篇文章我们将讨论一下如何以一种更为紧凑的方式来表达两个坐标系之间的位置及姿态关系。 可以把这个问题分解开来看

    2024年02月11日
    浏览(44)
  • 【现代机器人学】学习笔记十三:配套代码解析

    最近一直忙于工作,每天都在写一些业务代码。而目前工程中的技术栈并没有使用旋量这一套机器人理论系统,因此时间长了自己都忘记了。 于是决定把这本书配套的代码内容也过一遍,查漏补缺,把这本书的笔记内容完结一下。 代码来源于github:https://github.com/NxRLab/Moder

    2024年02月12日
    浏览(45)
  • 机器人学DH参数及利用matlab符号运算推导

    重新复习了一下机器人学DH参数,并且利用matlab符号运算进行了推导,验证了公式。 图中的 坐标系定义 : 坐标系 i {i} i 的 z z z 轴 z i z_i z i ​ 和关节轴线 i i i 共线,指向任意规定。 坐标系 i {i} i 的 x x x 轴 x i x_i x i ​ 和 a i a_i a i ​ 重合,由关节 i i i 指向关节 i + 1 i+1 i

    2024年02月02日
    浏览(53)
  • 【现代机器人学】学习笔记四:一阶运动学与静力学

    这节课的内容主要讲速度的正向运动学(也就是位置的一阶导数,所以叫一阶运动学)和静力学,这也是本书首次出现动力学相关的内容(刚体运动那节提到的力旋量算是一个概念的介绍)。 个人结合平时的工程项目看,觉得这节课的内容是一个内容和难度上的一个跨越,因

    2023年04月08日
    浏览(44)
  • 机器人学关于SE(3)、se(3)、SO(3)、so(3)的理解

    SE(3):特殊欧式群 se(3):特殊欧式群的李代数 SO(3): 三维特殊正交群 so(3): 三维特殊正交群的李代数 T(3):三维移动群 R : 旋转矩阵 李代数:李群单位元处的切空间; SO(3) 和T(3) 都是SE(3)的李子群 SO3——log——so3, 3×1 vector SE3——log——se3, 6×1 vector so3——exp——SO3, 3×3 matrix se3——

    2024年01月17日
    浏览(47)
  • 机器人学环境配置(VM-16 + Ubuntu-20.04 + ROS-noetic)

    目录 一、安装好 VMware Pro 16(基于win11) 1. 下载 2. 安装过程 二、成功配置Ubuntu20.04.6 1. 下载 2. 新建虚拟机进行配置 3. 安装操作系统镜像 4. 更改Ubuntu软件源  5. Windows与Ubuntu跨系统复制粘贴 三、成功配置与Ubuntu20.04对应的ROS 1. 按ctrl+alt+t打开终端并在其中依次输入以下代码 2

    2024年02月20日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包