《Modern Robotics》阅读笔记3——刚体的运动(三)

本文是《Modern Robotics》阅读笔记,聚焦刚体运动。先给出角速度定义,结合旋转方向与速率定义角速度;接着探讨其与旋转矩阵关系,在固定和体坐标系下推导旋转矩阵微分形式,得出旋转矩阵与角速度关系;最后强调对ωb的正确理解,指出ωs、ωb与坐标系选择无关。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

《Modern Robotics》阅读笔记3——刚体的运动(三)

这篇文章主要讨论了角速度和旋转矩阵的表示方法。

1. 角速度定义

在这里插入图片描述

这幅图的左图中,坐标系{x^,y^,z^}\{\hat{x},\hat{y},\hat{z}\}{x^,y^,z^}绕着ω^\hat{\omega}ω^旋转,经过Δt\Delta{t}Δt的时间,旋转了Δθ\Delta{\theta}Δθ的角度。
假设Δt\Delta{t}Δt无限逼近于0,我们定义θ˙=ΔθΔt\dot{\theta}=\frac{\Delta{\theta}}{\Delta{t}}θ˙=ΔtΔθ为旋转的速率,结合旋转的方向ω^\hat{\omega}ω^,我们就可以定义角速度为:
ω=ω^θ˙\omega = \hat{\omega}\dot{\theta}ω=ω^θ˙

这幅图的右图,我们可以得到x^,y^,z^\hat{x},\hat{y},\hat{z}x^,y^,z^轴方向上的角速度:
x^˙=ω×x^y^˙=ω×y^z^˙=ω×z^ \begin{matrix} \dot{\hat{x}} = \omega \times \hat{x} \\ \\ \dot{\hat{y}} = \omega \times \hat{y} \\ \\ \dot{\hat{z}} = \omega \times \hat{z} \end{matrix} x^˙=ω×x^y^˙=ω×y^z^˙=ω×z^

2. 角速度与旋转矩阵的关系

到目前为止,我们并没有指定ω^\hat{\omega}ω^向量是在哪个坐标系下表示的,接下来我们要在具体的坐标系表示下讨论这件事了。

假设我们有一个固定坐标系{s}和一个体坐标系{b},旋转矩阵R(t)R(t)R(t)表示{b}系在{s}系下的姿态(这里主要是强调旋转矩阵是变化的),旋转方向ω^\hat{\omega}ω^在{s}系下的表示为ω^s\hat{\omega}_sω^s
其中,R(t)=Rsb(t)=[r1(t),r2(t),r3(t)]R(t)=R_{sb}(t)=[r_1(t),r_2(t),r_3(t)]R(t)=Rsb(t)=[r1(t),r2(t),r3(t)]r1(t)r_1(t)r1(t)代表{b}系的x轴在{s}系下的表示,r2(t),r3(t)r_2(t),r_3(t)r2(t),r3(t)分别代表y和z轴。

因为ωs\omega_sωsr1,r2,r3r_1,r_2,r_3r1,r2,r3都是{s}系下表示的向量,于是根据上面的公式:
r1˙=ωs×r1r2˙=ωs×r2r3˙=ωs×r3 \begin{matrix} \dot{r_1} = \omega_s \times r_1 \\ \\ \dot{r_2} = \omega_s \times r_2 \\ \\ \dot{r_3} = \omega_s \times r_3 \end{matrix} r1˙=ωs×r1r2˙=ωs×r2r3˙=ωs×r3
所以,旋转矩阵的微分形式就可以表达为:
R˙=[ωs×r1∣ωs×r2∣ωs×r3]=ωs×R=[ωs]R\dot{R}=[ \omega_s \times r_1 | \omega_s \times r_2 | \omega_s \times r_3 ]=\omega_s \times R=[\omega_s]RR˙=[ωs×r1ωs×r2ωs×r3]=ωs×R=[ωs]R

注:
为了消除这里的叉乘运算,我们可以引入一个新的概念。我们定义[ωs][\omega_s][ωs]为向量ωs∈R3\omega_s \in \mathbb{R^3}ωsR33×3的反对称矩阵,则有3\times 3的反对称矩阵,则有3×3ω×R=[ωs]R\omega \times R = [\omega_s]Rω×R=[ωs]R成立。
ω=[ω1,ω2,ω3]\omega=[\omega_1,\omega_2,\omega_3]ω=[ω1,ω2,ω3]时,
[ω]=[0−ω3ω2ω30−ω1−ω2ω10][\omega]=\left[ \begin{matrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{matrix} \right][ω]=0ω3ω2ω30ω1ω2ω10

回到正题
所以,很显然:
[ωs]=R˙R−1[\omega_s]=\dot{R}R^{-1}[ωs]=R˙R1

现在我们得到了,旋转矩阵RRR和角速度[ωs][\omega_s][ωs]的关系。那么,如何求ωb\omega_bωbRRR的关系呢?

因为R∈SO(3)R\in SO(3)RSO(3),有如下关系式成立(读者可以自己证明):
R[ω]RT=[Rω]R[\omega]R^T=[R\omega]R[ω]RT=[Rω]

因为ωb=RsbTωs=RTωs\omega_b=R_{sb}^{T}\omega_s=R^T\omega_sωb=RsbTωs=RTωs,所以:
[ωb]=[RTωs]=RT[ωs]R=RT(R˙RT)R=RTR˙=R−1R˙\begin{aligned}\left[\omega_{b}\right] &=[R^{T} \omega_{s}] \\ &=R^{T}\left[\omega_{s}\right] R \\ &=R^{T}(\dot{R} R^{T}) R \\ &=R^{T} \dot{R}=R^{-1} \dot{R} \end{aligned}[ωb]=[RTωs]=RT[ωs]R=RT(R˙RT)R=RTR˙=R1R˙

于是,我们就得到了ωb\omega_bωbRRR的关系。

3. 对于角速度的理解

上文中提到的ωb\omega_bωb,不能理解为当前的运动相对于体坐标系{b}的角速度。而应该理解为,当前运动相对于一个与体坐标系{b}完全对齐的静止坐标系的角速度。

另外,值得注意,ωs\omega_sωs完全不取决于{b}系如何选择,ωb\omega_bωb也完全不取决于{s}系如何选择。

本篇文章结束。

注:为了更好的阅读体验,避免文章过长,原本一章的内容被拆分成了多篇文章。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值