机械臂笔记——刚体运动状态描述和旋转矩阵

刚体运动状态描述

机械臂运动就是一个刚体运动。

刚体

在物理学中,刚体(Rigid Body)是指那些在受力作用下,其形状和大小不会发生明显变化的物体。刚体通常被假设为没有弹性变形和塑性变形,即它们可以承受外力而不会永久改变其形状。在实际工程和物理学中,刚体是一个理想化的模型,它忽略了物体内部应力分布的变化,以及在受力作用下物体可能发生的微小形变。
刚体有以下几个基本特性:

  1. 形状不变性:刚体的形状在受力作用下保持不变。

  2. 大小不变性:刚体的大小,如体积和面积,在受力作用下保持不变。

  3. 内部应力均匀分布:刚体内部的应力被假设为均匀分布,没有剪切、弯曲或扭转。

  4. 质心:刚体的质心(Centroid)是所有质点的质量中心,它是一个固定的点,不随刚体的形状和大小变化。质心在力学中非常重要,因为它决定了物体在受力作用下的平衡和运动。质心的位置可以影响物体的稳定性,以及物体在受到外力时如何旋转和移动。

刚体在力学中是一个重要的概念,它简化了物体的运动学和动力学分析,使得我们可以通过计算刚体上力的平衡和力矩平衡来预测刚体的运动。然而,在现实生活中,没有任何物体是完全刚性的,因此刚体模型在工程实践中通常需要做一些合理的近似和假设。

如何描述一个刚体(Rigid body)的状态

  • 平面: 两个移动参数(x,y) 和 一个转动参数(theta)。需要三个自由度(DOF)
  • 空间: 三个移动参数(x,y) 和 三个转动参数(theta)。需要六个自由度(DOF)

将空间和平面整合一个描述方式:

在刚体上建立坐标系(frame),通常建立在质心上。

  • 移动:由body frame的原点位置判定。
  • 转动:由body frame的姿态判定。
更数学化的描述

利用各个自由度微分,将位移(displacement)和姿态(orientation)转换到速度(velocity)和加速度(acceleration)等运动状态。一次微分获得速度,二次微分获得加速度。
在这里插入图片描述

例子:图示刚体从世界坐标系原点位置运动,红色曲线记录的是刚体质心运动的轨迹,记录下这些位置的信息。记录的轨迹对时间的微分可以获得刚体运动速度的状态,二次微分可以计算出刚体加速度的状态;更具刚体坐标系的姿态同样计算出角速度和角加速度状态。

移动的描述

以向量(三维—三个自由度)来描述刚体的原点(质心)相对于世界坐标系的原点的状态。

在这里插入图片描述

转动的描述

利用旋转矩阵(Rotation Martix)来描述刚体相对于世界坐标系的姿态。

在这里插入图片描述

旋转矩阵可以看作是3个列向量组成的,每个列向量是从世界坐标系原点看刚体每个方向的向量分量投影。旋转矩阵中的每个元素的值是有两个向量的内积计算得来的。

例子:
在这里插入图片描述在这里插入图片描述

旋转矩阵

  • 特性1:如果得到刚体相对于世界坐标系原点的旋转矩阵R,那么世界坐标系的原点相对于刚体的旋转矩阵就是R的转置。

推导过程:
在这里插入图片描述

例子:
在这里插入图片描述

  • 特性2:两个相对视角的旋转矩阵相乘结果是一个3x3的单位矩阵。旋转矩阵的反矩阵和它的转置矩阵一样(正交矩阵)。

推导过程:
在这里插入图片描述

- 特性3:旋转矩阵虽然是一个3x3的矩阵,共有9个元素,但实际上只有三个独立的参数可以调整,这是因为旋转矩阵必须满足以下两个条件:
  1. 正交性:旋转矩阵的列(或行)向量必须是单位向量,并且两两正交。这意味着矩阵的每个列向量(或行向量)都必须满足以下条件:
    • 向量的长度(或范数)为1。
    • 任意两个不同的列向量(或行向量)的点积为0。
  2. 行列式为1:旋转矩阵的行列式必须等于1,这保证了旋转不包含镜像,即保持空间中的定向。
    由于这些限制,旋转矩阵的9个元素中只有3个是独立的。以下是如何解释这一点:
  • 旋转轴:旋转可以围绕空间中的任意轴进行。在三维空间中,一个轴可以用一个单位向量来表示,该向量由两个参数(例如,它在水平面内的角度和在垂直平面内的角度)来确定。
  • 旋转角度:旋转的大小可以用一个角度来表示,这是第三个独立的参数。
    因此,旋转矩阵的9个元素中的6个可以通过上述的三个参数来计算,以满足正交性和行列式为1的条件。具体来说:
  • 如果我们确定了旋转轴(由两个参数确定)和旋转角度(一个参数),我们可以构造出旋转矩阵的列向量。
  • 第一个列向量是旋转轴的单位向量。
  • 第二个列向量可以通过将第一个列向量绕垂直于旋转轴的某个轴旋转90度来获得。
  • 第三个列向量可以通过计算前两个列向量的向量积来获得,确保它们都是单位向量并且两两正交。
    这样,虽然旋转矩阵有9个元素,但只有3个参数是独立的,其余的元素可以通过这些参数来计算。这个过程通常涉及到三角函数的计算,具体取决于旋转轴和旋转角度的选择。
    在这里插入图片描述在这里插入图片描述

在这里插入图片描述在这里插入图片描述

旋转矩阵的三种用法

  • 描述一个frame相对于另一个frame的姿态。
  • 将一个point(向量)由某一个frame的表达换到另一个和此frame仅有相对转动的frame来表达。
  • 将point(向量)在同一个frame中进行转动。

在这里插入图片描述

旋转矩阵的两种拆解方式

旋转矩阵在不同的旋转顺序下结果是不一样的。

固定方式旋转和欧拉角旋转求出的旋转矩阵是一样的。

下面举例了一种固定旋转方式结果和两种欧拉角旋转方式结果。

  • 固定x-y-z(Fixied Angles):先转的放后面
    在这里插入图片描述

    例子:
    在这里插入图片描述在这里插入图片描述

Atan2函数,使用此函数可以让角度0-360度,包含四个象限。

例子:
在这里插入图片描述

  • 欧拉角(z-y-x Euler Angles):先转的放前面
    在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 欧拉角(z-y-z Euler Angles):先转的放前面
    在这里插入图片描述在这里插入图片描述在这里插入图片描述

总结:一个旋转矩阵可以通过各12中方式的固定旋转和欧拉角旋转求得。先确定一个轴转动,第二个轴是和第一个轴不一样的轴转动,第三个轴是和第二个轴不一样的轴(可以和第一个轴一样)转动。

在这里插入图片描述

参考

机器臂运动学教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tony Wey

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值