[로공입] 09. Rigid-Body Motions: Summary
지금까지 배운것을 간단하게 표로 정리해보았다. Rotation 과 rigid-body motion 은 비슷한게 많으므로 비교해가며 정리하면 기억하기 쉬울 것이다.
[Rotations] | [Rigid-body Motions] |
\(R \in SO(3) : 3 \times 3 \text{ matrices}\)$$R^\text{T} R = I, \text{det}(R)=1$$ | \(T \in SE(3) : 4 \times 4 \text{ matrices}\)$$T = \left[\begin{array}{cc} R & p \\ 0 & 1 \end{array}\right]$$ \(\text{,where } R \in SO(3), p \in \mathbb{R}^3\) |
\(R^{-1}=R^\text{T}\) | \(T^{-1}=\left[\begin{array}{cc}R^\text{T} & -R^\text{T}p \\ 0 & 1 \end{array}\right]\) |
change of coordinate frame: \(R_{ab} R_{bc} = R_{ac}, R_{ab}p_{b} = p_{a}\) | change of coordinate frame: \(T_{ab} T_{bc} = T_{ac}, T_{ab}p_{b} = p_{a}\) |
rotating a frame \({b}\): $$R = \text{Rot}(\hat{\omega}, \theta)$$ – \(R_{sb’} = RR_{sb}\): rotating \(\theta\) about \(\hat{\omega} = \hat{\omega}_{s}\) – \(R_{sb”} = R_{sb}R\): rotating \(\theta\) about \(\hat{\omega} = \hat{\omega}_{b}\) | displacing a frame \({b}\): $$T = \left[\begin{array}{cc} \text{Rot}(\hat{\omega}, \theta) & p \\ 0 & 1 \end{array}\right]$$ – \(T_{sb’} = TT_{sb}\): rotate \(\theta\) about \(\hat{\omega}=\hat{\omega}_{s}\) and (moves \(\{b\}\) origin) translate \(p\) in \({s}\) – \(T_{sb”} = T_{sb}T\): translate \(p\) in \(\{b\}\), and rotate \(\theta\) about \(\hat{\omega}\) in new body frame |
unit rotation axis is \(\hat{\omega} \in \mathbb{R}^3\) where \(\|\hat{\omega}\|=1\) | “unit” screw axis is \(S = \left[\begin{array}{c} \omega \\ v \end{array}\right] \in \mathbb{R}^6\) where either (i)\(\|\omega\| = 1\) or (ii)\(\omega = 0\) and \(\|v\| = 1\) |
angular velocity is \(\omega = \hat{\omega}\dot{\theta}\) | twist, spatial velocity is \(\mathcal{V} = S\dot{\theta}\) |
for any 3-vector, e.g., \(\omega \in \mathbb{R}^3\)$$\left[\omega\right] = \left[\begin{array}{ccc} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{array}\right] \in so(3) $$identities, \(\omega, x \in \mathbb{R}^3\), \(R \in SO(3)\) \(\left[\omega\right]^\text{T} = -\left[\omega\right]\), \(\left[\omega\right] x = \omega \times x \), \(\left[\omega\right] \left[x\right] = (\left(\left[x\right]\left[\omega\right]\right)^\text{T}\), \(R\left[\omega\right]R^\text{T}=\left[R\omega\right]\) | for \(S = \left[\begin{array}{c} \omega \\ v \end{array}\right] \in \mathbb{R}^6\)$$\left[S\right] = \left[\begin{array}{cc} \left[\omega\right] & v \\ 0 & 0 \end{array}\right]$$ |
\(\dot{R}R^{-1}=\left[\omega_s\right]\), \(R^{-1}\dot{R}=\left[\omega_b\right]\) | \(\dot{T}T^{-1}=\left[\mathcal{V}_s\right]\), \(T^{-1}\dot{T} = \left[\mathcal{V}_b\right]\) |
for \(R \in SO(3), p \in \mathbb{R}^3\)$$\left[\text{Ad}_{T}\right] = \left[\begin{array}{cc} R & 0 \\ [p]R & R \end{array}\right] \in \mathbb{R}^{6 \times 6}$$identities: \(\left[\text{Ad}_{T}\right]^{-1} = \left[\text{Ad}_{T^{-1}}\right]\), \(\left[\text{Ad}_{T_1}\right]\left[\text{Ad}_{T_2}\right] = \left[\text{Ad}_{T_1 T_2}\right]\) | |
change of coordinate frame: \(\hat{\omega}_a = R_{ab}\hat{\omega}_b, \omega_a = R_{ab}\omega_b\) | change of coordinate frame: \(S_a = \left[\text{Ad}_{T_ab}\right]S_b, \mathcal{V}_a = \left[\text{Ad}_{T_{ab}}\right]\mathcal{V}_b\) |
exp: \(\left[\hat{\omega}\right] \in so(3) \rightarrow R \in SO(3)\) \(\begin{align} R &= \text{Rot}(\hat{\omega}, \theta) \\ &= e^{[\hat{\omega}]\theta} \\ &= I + \cos\theta \left[\hat{\omega}\right] + (1-\sin\theta ) \left[\hat{\omega}\right]^2\end{align}\) | exp: \(\left[S\right]\theta = \left[\begin{array}{c} \omega \\ v \end{array}\right] \in se(3) \rightarrow T \in SE(3)\) \(\begin{align}T &= e^{[S]\theta} \\ &= \left[\begin{array}{cc} e^{[\omega]\theta} & G(\theta)v \\ 0 & 1 \end{array}\right]\end{align}\) \(\begin{align} \text{,where } G(\theta) &= I\theta + \left(1-\cos\theta\right)\left[\hat{\omega}\right] \\ &+\left(\theta – \sin\theta\right)\left[\hat{\omega}\right]^2\end{align}\) |
log: \(R \in SO(3) \rightarrow \left[\hat{\omega}\right]\theta \in so(3)\) | log: \(T \in SE(3) \rightarrow \left[S\right]\theta \in se(3)\) |
3개의 댓글
KJU · 2020-04-08 3:25 오후
좋은 글들 너무 잘 보고 있습니다!
woongseok · 2020-04-13 5:37 오전
안녕하세요. 좋은 글 감사합니다. 혹시 쿼터니언에 대해서는 다뤄보실 예정 없으신가요?
Alli Christoph Lori · 2020-08-23 8:40 오후
Puedo encontrar buena información de este artículo. Alli Christoph Lori