[足式机器人]Part3 机构运动学与动力学分析与建模 Ch00-3(1) 刚体的位形 Configuration of Rigid Body

本文仅供学习使用,总结很多本现有讲述运动学或动力学书籍后的总结,从矢量的角度进行分析,方法比较传统,但更易理解,并且现有的看似抽象方法,两者本质上并无不同。

2024年底本人学位论文发表后方可摘抄
若有帮助请引用
本文参考:
.

食用方法
如何表达刚体在空间中的位置与姿态
姿态参数如何表达?不同表达方式直接的转换关系?
旋转矩阵?转换矩阵?有什么意义和性质?转置代表什么?
如何表示连续变换?——与RPY有关
齐次坐标的意义——简化公式?
务必自己推导全部公式,并理解每个符号的含义


刚体的位形可以用六个独立(坐标)参数完全描述三个位置参数用于描述运动刚体上运动坐标系 { M } \left\{ M \right\} { M}原点 M M M在固定坐标系 { F } \left\{ F \right\} { F}的投影参数,三个转动参数用于描述运动坐标系 { M } \left\{ M \right\} { M}的基矢量相对于固定坐标系 { F } \left\{ F \right\} { F}的基矢量的姿态,而描述这种姿态的变换,则是需要确定矩阵 [ Q M F ] \left[ Q_{\mathrm{M}}^{F} \right] [QMF]

因此为描述空间坐标系中任意一刚体的运动状态,首先需要描述刚体的位置矢量 R ⃗ M F \vec{R}_{\mathrm{M}}^{F} R MF姿态矩阵 [ Q F M ] \left[ Q_{\mathrm{F}}^{M} \right] [QFM](表述为:坐标系 { M } \left\{ M \right\} { M}的基矢量在坐标系 { F } \left\{ F \right\} { F}下的线性表达,描述了 { M } \left\{ M \right\} { M}的姿态,同时也可理解为将坐标系 { F } \left\{ F \right\} { F}通过姿态矩阵进行旋转变换,得到新的坐标系 { M } \left\{ M \right\} { M}

广义参考系坐标 Reference Coordinates:为方便后续动力学方程的建立与推导,常用广义坐标矢量参数 q ⃗ M F \vec{q}_{\mathrm{M}}^{F} q MF来描述运动刚体的形位,其中:
q ⃗ M F = [ R ⃗ M F , θ ⃗ M F ] \vec{q}_{\mathrm{M}}^{F}=\left[ \vec{R}_{\mathrm{M}}^{F},\vec{\theta}_{\mathrm{M}}^{F} \right] q MF=[R MF,θ MF]

  • θ ⃗ M F \vec{\theta}_{\mathrm{M}}^{F} θ MF可以用多种方法来描述(通常包含3或4个角度参数 ),这些角度参数用于描述姿态矩阵(旋转矩阵) [ Q M F ] \left[ Q_{\mathrm{M}}^{F} \right] [QMF]

对于刚体的运动状态而言,其运动坐标系的原点 M M M的位置矢量 R ⃗ M F \vec{R}_{\mathrm{M}}^{F} R MF表示与点的运动状态表示相同,因此需要探究如何用角度参数来描述转换矩阵。

3. 转换矩阵与旋转矩阵——刚体的位置与姿态描述

转换矩阵用于表述两个坐标系 { A : ( i ⃗ A , j ⃗ A , k ⃗ A ) } \left\{ A:\left( \vec{i}^A,\vec{j}^A,\vec{k}^A \right) \right\} { A:(i A,j A,k A)} { B : ( i ⃗ B , j ⃗ B , k ⃗ B ) } \left\{ B:\left( \vec{i}^B,\vec{j}^B,\vec{k}^B \right) \right\} { B:(i B,j B,k B)}的基矢量之间的转换关系:
[ i ⃗ B j ⃗ B k ⃗ B ] = [ Q B A ] T [ i ⃗ A j ⃗ A k ⃗ A ] \left[ \begin{array}{c} \vec{i}^B\\ \vec{j}^B\\ \vec{k}^B\\ \end{array} \right] =\left[ Q_{\mathrm{B}}^{A} \right] ^{\mathrm{T}}\left[ \begin{array}{c} \vec{i}^A\\ \vec{j}^A\\ \vec{k}^A\\ \end{array} \right] i Bj Bk B =[QBA]T i Aj Ak A

其中,转换矩阵 [ Q B A ] T \left[ Q_{\mathrm{B}}^{A} \right] ^{\mathrm{T}} [QBA]T表示坐标系 { B } \left\{ B \right\} { B}的基矢量在坐标系 { A } \left\{ A \right\} { A}中的表达,可将向量在不同的基矢量坐标系下进行表示。特殊的:若将基矢量替换成对应基矢量的向量投影,则可以表示为:两个原点重合的坐标系中,对同一向量的不同表达的转换关系;

上式也可以理解为:对坐标系 { A : ( i ⃗ A , j ⃗ A , k ⃗ A ) } \left\{ A:\left( \vec{i}^A,\vec{j}^A,\vec{k}^A \right) \right\} { A:(i A,j A,k A)}进行了 [ Q B A ] \left[ Q_{\mathrm{B}}^{A} \right] [QBA]的旋转(从坐标系 { A } \left\{ A \right\} { A}旋转为坐标系 { B } \left\{ B \right\} { B}的姿态) ,此时将转换矩阵与向量的运算理解为张量与向量的运算,即得到了旋转后的向量在坐标系 { A } \left\{ A \right\} { A}中的表达,此时实际上,对原始坐标系 { A } \left\{ A \right\} { A}的基矢量同样进行了旋转,形成了新坐标系 { B } \left\{ B \right\} { B}的基矢量,其仍在坐标系 { A } \left\{ A \right\} { A}下表达。

[ r ′ 1 A r ′ 2 A r ′ 3 A ] = [ Q ] [ r 1 A r 2 A r 3 A ] \left[ \begin{array}{c} {r^{\prime}}_{1}^{A}\\ {r^{\prime}}_{2}^{A}\\ {r^{\prime}}_{3}^{A}\\ \end{array} \right] =\left[ Q \right] \left[ \begin{array}{c} r_{1}^{A}\\ r_{2}^{A}\\ r_{3}^{A}\\ \end{array} \right] r1Ar2Ar3A =[Q] r1Ar2Ar3A

目前,人们采用不同的角度参数 θ ⃗ \vec{\theta} θ 来对旋转矩阵进行描述

  • Representing an orientation —— from definition
    将原矢量进行旋转变换,得到该坐标系下新矢量的坐标投影参数:
    R ⃗ p ′ F = [ Q ] R ⃗ p F \vec{R}_{\mathrm{p}^{\prime}}^{F}=\left[ Q\right] \vec{R}_{\mathrm{p}}^{F} R pF=[Q]R pF
  • Changing the reference frame
    对坐标系进行转换,基于坐标系 { A } \left\{ A \right\} { A}中的该矢量的坐标投影参数 R ⃗ p A \vec{R}_{\mathrm{p}}^{A} R pA,得到该矢量在坐标系 { B } \left\{ B \right\} { B}中的坐标投影参数 ( R ⃗ p A ) B \left( \vec{R}_{\mathrm{p}}^{A} \right) ^B (R pA)B
    ( R ⃗ p A ) B = [ Q A B ] R ⃗ p A \left( \vec{R}_{\mathrm{p}}^{A} \right) ^B=\left[ Q_{\mathrm{A}}^{B} \right] \vec{R}_{\mathrm{p}}^{A} (R pA)B=[QAB]R pA

3.1 轴角变换

在这里插入图片描述
假设两个坐标系 { A } \left\{ A \right\} { A} { B } \left\{ B \right\} { B}的原点重合,其中坐标系 { B } \left\{ B \right\} { B}为坐标系 { A } \left\{ A \right\} { A}绕轴 v ⃗ F \vec{v}^F v F(单位向量)旋转 θ \theta θ所得到的。因此对于坐标系 { A } \left\{ A \right\} { A}中的点 P P P,经过转换后,得到点 P ′ P^{\prime} P,此时点 P ′ P^{\prime} P在坐标系 { B } \left\{ B \right\} { B}中的矢量投影与点 P P P在坐标系 { A } \left\{ A \right\} { A}中的投影分量相同。而在转换过程中,点 P ′ P^{\prime} P在坐标系 { A } \left\{ A \right\} { A}中的表达发生变化,即有: [ P ′ 1 B , P ′ 2 B , P ′ 2 B ] = [ P 1 A , P 2 A , P 2 A ] \left[ {P^{\prime}}_{1}^{\mathrm{B}},{P^{\prime}}_{2}^{\mathrm{B}},{P^{\prime}}_{2}^{\mathrm{B}} \right] =\left[ P_{1}^{A},P_{2}^{A},P_{2}^{A} \right] [P1B,P2B,P2B]=[P1A,P2A,P2A],因此对式 [ i ⃗ B j ⃗ B k ⃗ B ] = [ Q B A ] T [ i ⃗ A j ⃗ A k ⃗ A ] \left[ \begin{array}{c} \vec{i}^B\\ \vec{j}^B\\ \vec{k}^B\\ \end{array} \right] =\left[ Q_{\mathrm{B}}^{A} \right] ^{\mathrm{T}}\left[ \begin{array}{c} \vec{i}^A\\ \vec{j}^A\\ \vec{k}^A\\ \end{array} \right] i Bj Bk B =[QBA]T i Aj Ak A 有:
[ i ⃗ B j ⃗ B k ⃗ B ] T [ P 1 B P 2 B P 3 B ] = [ i ⃗ A j ⃗ A k ⃗ A ] T [ P 1 A P 2 A P 3 A ] ⇒ ( [ Q B A ] T [ i ⃗ A j ⃗ A k ⃗ A ] ) T [ P 1 B P 2 B P 3 B ] = [ i ⃗ A j ⃗ A k ⃗ A ] T [ P 1 A P 2 A P 3 A ] ⇒ [ i ⃗ A j ⃗ A k ⃗ A ] T [ Q B A ] [ P 1 B P 2 B P 3 B ] = [ i ⃗ A j ⃗ A k ⃗ A ] T [ P 1 A P 2 A P 3 A ] ⇒ [ Q B A ] [ P 1 B P 2 B P 3 B ] = [ P 1 A P 2 A P 3 A ] = [ P ′ 1 B P ′ 2 B P ′ 3 B ] \begin{split} &\left[ \begin{array}{c} \vec{i}^B\\ \vec{j}^B\\ \vec{k}^B\\ \end{array} \right] ^{\mathrm{T}}\left[ \begin{array}{c} P_{1}^{\mathrm{B}}\\ P_{2}^{\mathrm{B}}\\ P_{3}^{\mathrm{B}}\\ \end{array} \right] =\left[ \begin{array}{c} \vec{i}^A\\ \vec{j}^A\\ \vec{k}^A\\ \end{array} \right] ^{\mathrm{T}}\left[ \begin{array}{c} P_{1}^{A}\\ P_{2}^{A}\\ P_{3}^{A}\\ \end{array} \right] \\ &\Rightarrow \left( \left[ Q_{\mathrm{B}}^{A} \right] ^{\mathrm{T}}\left[ \begin{array}{c} \vec{i}^A\\ \vec{j}^A\\ \vec{k}^A\\ \end{array} \right] \right) ^{\mathrm{T}}\left[ \begin{array}{c} P_{1}^{\mathrm{B}}\\ P_{2}^{\mathrm{B}}\\ P_{3}^{\mathrm{B}}\\ \end{array} \right] =\left[ \begin{array}{c} \vec{i}^A\\ \vec{j}^A\\ \vec{k}^A\\ \end{array} \right] ^{\mathrm{T}}\left[ \begin{array}{c} P_{1}^{A}\\ P_{2}^{A}\\ P_{3}^{A}\\ \end{array} \right] \\ &\Rightarrow \left[ \begin{array}{c} \vec{i}^A\\ \vec{j}^A\\ \vec{k}^A\\ \end{array} \right] ^{\mathrm{T}}\left[ Q_{\mathrm{B}}^{A} \right] \left[ \begin{array}{c} P_{1}^{\mathrm{B}}\\ P_{2}^{\mathrm{B}}\\ P_{3}^{\mathrm{B}}\\ \end{array} \right] =\left[ \begin{array}{c} \vec{i}^A\\ \vec{j}^A\\ \vec{k}^A\\ \end{array} \right] ^{\mathrm{T}}\left[ \begin{array}{c} P_{1}^{A}\\ P_{2}^{A}\\ P_{3}^{A}\\ \end{array} \right] \\ &\Rightarrow \left[ Q_{\mathrm{B}}^{A} \right] \left[ \begin{array}{c} P_{1}^{\mathrm{B}}\\ P_{2}^{\mathrm{B}}\\ P_{3}^{\mathrm{B}}\\ \end{array} \right] =\left[ \begin{array}{c} P_{1}^{A}\\ P_{2}^{A}\\ P_{3}^{A}\\ \end{array} \right] =\left[ \begin{array}{c} {P^{\prime}}_{1}^{\mathrm{B}}\\ {P^{\prime}}_{2}^{\mathrm{B}}\\ {P^{\prime}}_{3}^{\mathrm{B}}\\ \end{array} \right] \end{split} i

  • 15
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

LiongLoure

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

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

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

打赏作者

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

抵扣说明:

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

余额充值