欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

20201205 旋转矩阵导数的推导过程

发布时间:2025/3/15 编程问答 42 豆豆
生活随笔 收集整理的这篇文章主要介绍了 20201205 旋转矩阵导数的推导过程 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

本文不讲旋转矩阵导数的证明,直接讲其中一种推导过程。

对象:姿态旋转矩阵

坐标系定义

  • 本体坐标系 FB\mathcal F_{B}FB
  • 参考坐标系 FR\mathcal F_{R}FR
  • 欧拉旋转定理

    FB\mathcal F_{B}FB 相对于 FR\mathcal F_{R}FR 的旋转可以表示成绕某一个单位轴 e\boldsymbol ee 旋转 φ\varphiφ

    相关定义

  • 旋转矩阵 RRRFR\mathcal F_{R}FRFB\mathcal F_{B}FB 的姿态旋转矩阵,其大小为R=cos⁡φI3+(1−cos⁡φ)eeT−sin⁡φe×R = \cos \varphi I_{3}+\left(1-\cos \varphi \right) \boldsymbol e {\boldsymbol e}^{\mathrm{T}}-\sin \varphi \boldsymbol e^{\times}R=cosφI3+(1cosφ)eeTsinφe×

  • 旋转角速度 ω\boldsymbol \omegaωFB\mathcal F_{B}FB 相对于 FR\mathcal F_{R}FR 的旋转角速度在 FB\mathcal F_{B}FB 上的投影,其大小为 ω=ωe\boldsymbol \omega = \omega \boldsymbol eω=ωe, 其中 ω\omegaωω\boldsymbol \omegaω 的转速大小。

  • e×=[0−e3e2e30−e1−e2e10]\boldsymbol{e}^{\times}=\left[\begin{array}{ccc}0 & -e_{3} & e_{2} \\ e_{3} & 0 & -e_{1} \\ -e_{2} & e_{1} & 0\end{array}\right]e×=0e3e2e30e1e2e10

  • 旋转矩阵导数推导过程

    ttt 时刻,存在极小的时间段 Δt\Delta tΔt 的旋转可以满足:
    R(t+Δt)=R(Δt)R(t)\boldsymbol R(t+\Delta t) = \boldsymbol R(\Delta t) \boldsymbol R(t)R(t+Δt)=R(Δt)R(t)
    其中,根据旋转矩阵的定义,可以得:
    R(Δt)=cos⁡ΔφI3+(1−cos⁡Δφ)eeT−sin⁡Δφe×\boldsymbol R(\Delta t) = \cos \Delta \varphi I_{3}+\left(1-\cos \Delta \varphi \right) \boldsymbol e {\boldsymbol e}^{\mathrm{T}}-\sin \Delta \varphi \boldsymbol e^{\times}R(Δt)=cosΔφI3+(1cosΔφ)eeTsinΔφe×
    根据极限的思想,在极小的 Δt\Delta tΔt 中产生的 Δφ\Delta \varphiΔφ 也是极小的,那么也就是说
    cos⁡Δφ=1andsin⁡Δφ=Δφ\cos \Delta \varphi = 1 \quad \text{and} \quad \sin \Delta \varphi = \Delta \varphicosΔφ=1andsinΔφ=Δφ
    将其带入 R(Δt)\boldsymbol R(\Delta t)R(Δt) 的表达式,可以得到
    R(Δt)=I3−Δφe×\boldsymbol R(\Delta t) = I_{3}- \Delta \varphi \boldsymbol e^{\times}R(Δt)=I3Δφe×

    dRdt=lim⁡Δt→0R(t+Δt)−R(t)Δt=lim⁡Δt→0R(t)−Δφe×R(t)−R(t)Δt=lim⁡Δt→0−Δφe×R(t)Δt=lim⁡Δt→0−ωe×R(t)=−ω×R\begin{aligned} \frac{d \boldsymbol R}{d t}&=\lim _{\Delta t \rightarrow 0} \frac{\boldsymbol R(t+\Delta t)-\boldsymbol R(t)}{\Delta t} \\&=\lim _{\Delta t \rightarrow 0} \frac{\boldsymbol R(t)- \Delta \varphi \boldsymbol e^{\times} \boldsymbol R(t)-\boldsymbol R(t)}{\Delta t} \\&=\lim _{\Delta t \rightarrow 0} \frac{- \Delta \varphi \boldsymbol e^{\times} \boldsymbol R(t)}{\Delta t} \\&=\lim _{\Delta t \rightarrow 0} {- \omega \boldsymbol e^{\times} \boldsymbol R(t)} \\&= {- \boldsymbol \omega^{\times} \boldsymbol R} \end{aligned}dtdR=Δt0limΔtR(t+Δt)R(t)=Δt0limΔtR(t)Δφe×R(t)R(t)=Δt0limΔtΔφe×R(t)=Δt0limωe×R(t)=ω×R

    结论R˙=−ω×R\dot {\boldsymbol R} = - \boldsymbol \omega^{\times} \boldsymbol RR˙=ω×R

    参考文献:章仁为. 卫星轨道姿态动力学与控制. 5.3节姿态运动学方程

    总结

    以上是生活随笔为你收集整理的20201205 旋转矩阵导数的推导过程的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。