科学家必须在庞杂的经验事实中抓住某些可用精密公式来表示的普遍特征,由此探求自然界的普遍原理。
——爱因斯坦
先考虑 R 3 \R^3 R3 中纯旋转的情况,运动轨迹的曲线为 R a b ( t ) ∈ S O ( 3 ) R_{ab}(t) \in SO(3) Rab(t)∈SO(3) 。设 B B B 系与 A A A 系共原点并相对于 A A A 系旋转,称 A A A 系为空间(spatial)坐标系, B B B 系为物体(body)坐标系。刚体上一点 q q q 在物体坐标系中的表示为 q b q_b qb , q b q_b qb 是固定不变的。其在空间坐标系中的运动轨迹为:
q a ( t ) = R a b ( t ) q b q_a(t) = R_{ab}(t)q_b qa(t)=Rab(t)qb
旋转矩阵 R a b R_{ab} Rab 随时间变化。
对 q a ( t ) q_a(t) qa(t) 求导,就会得到该点在空间坐标系下的速度为:
v q a ( t ) = d d t q a ( t ) = R ˙ a b ( t ) q b v_{q_{a}}(t) = {d \over dt}q_a(t)=\dot{R}_{ab}(t)q_b vqa(t)=dtdqa(t)=R˙ab(t)qb
R ˙ a b ( t ) \dot{R}_{ab}(t) R˙ab(t) 表示 R a b ( t ) R_{ab}(t) Rab(t) 对 t t t 的导数,以下符号的表述皆相同,某些式子会省略参数 t t t 。
可将上式改写为:
v q a ( t ) = R ˙ a b ( t ) R a b − 1 R a b q b = R ˙ a b ( t ) R a b − 1 q a v_{q_{a}}(t)=\dot{R}_{ab}(t)R_{ab}^{-1}R_{ab}q_b = \dot{R}_{ab}(t)R_{ab}^{-1}q_a vqa(t)=R˙ab(t)Rab−1Rabqb=R˙ab(t)Rab−1qa
其中, R ˙ a b R a b − 1 \dot{R}_{ab}R_{ab}^{-1} R˙abRab−1 为反对称矩阵,即 R ˙ a b ( t ) R a b ∈ s o ( 3 ) \dot{R}_{ab}(t)R_{ab} \in so(3) R˙ab(t)Rab∈so(3) ,可由对 R R T = I RR^T=I RRT=I 两边求导证明。
这说明三维矢量可以表示旋转速度,定义瞬时空间角速度 w a b s ∈ R 3 w_{ab}^s \in \R^3 wabs∈R3 为:
w ^ a b s = R ˙ a b R a b − 1 \hat{w}_{ab}^s = \dot{R}_{ab}R_{ab}^{-1} w^abs=R˙abRab−1
有瞬时空间角速度,就有瞬时物体角速度,定义瞬时物体角速度 w a b b ∈ R 3 w_{ab}^b \in \R^3 wabb∈R3 为:
w ^ a b b = R a b − 1 R ˙ a b \hat{w}_{ab}^b = R_{ab}^{-1}\dot{R}_{ab} w^abb=Rab−1R˙ab
其可由 v q a ( t ) = R a b ( t ) v q b ( t ) v_{q_{a}}(t) = R_{ab}(t) v_{q_{b}}(t) vqa(t)=Rab(t)vqb(t) 推导得出。由表达式可得两个角速度的关系为:
w ^ a b s = R a b w ^ a b b R a b − 1 or w a b s = R a b w a b b \hat{w}_{ab}^s = R_{ab}\hat{w}_{ab}^bR_{ab}^{-1} \quad \text{or} \quad w_{ab}^s = R_{ab}w_{ab}^b w^abs=Rabw^abbRab−1orwabs=Rabwabb
则该点相对于空间坐标系和物体坐标系的速度可以分别表示为:
{ v q a ( t ) = w ^ a b s ( t ) q a ( t ) v q b ( t ) = w ^ a b b ( t ) q b \begin{cases} v_{q_{a}}(t)=\hat{w}_{ab}^s(t)q_a(t) \\ v_{q_{b}}(t)=\hat{w}_{ab}^b(t)q_b \end{cases} {vqa(t)=w^abs(t)qa(t)vqb(t)=w^abb(t)qb
现在考虑 R 3 \R^3 R3 中带有旋转和平移的刚体运动的情况,运动轨迹的曲线为 g a b ( t ) ∈ S E ( 3 ) g_{ab}(t) \in SE(3) gab(t)∈SE(3) 。类比 之前的式子,可以写出:
v q a ( t ) = g ˙ a b ( t ) g a b − 1 g a b q b = g ˙ a b ( t ) g a b − 1 q a v_{q_{a}}(t)=\dot{g}_{ab}(t)g_{ab}^{-1}g_{ab}q_b = \dot{g}_{ab}(t)g_{ab}^{-1}q_a vqa(t)=g˙ab(t)gab−1gabqb=g˙ab(t)gab−1qa
我们可以定义:
{ V ^ a b s = g ˙ a b g a b − 1 V ^ a b b = g a b − 1 g ˙ a b \begin{cases} \hat{V}_{ab}^s = \dot{g}_{ab}g_{ab}^{-1} \\ \hat{V}_{ab}^b = g_{ab}^{-1}\dot{g}_{ab} \end{cases} {V^abs=g˙abgab−1V^abb=gab−1g˙ab
其也可由 v q a ( t ) = g a b ( t ) v q b ( t ) v_{q_{a}}(t) = g_{ab}(t) v_{q_{b}}(t) vqa(t)=gab(t)vqb(t) 推导得出。
类比 w ^ a b s ∈ s o ( 3 ) \hat{w}_{ab}^s \in so(3) w^abs∈so(3) , V ^ a b s ∈ s e ( 3 ) \hat{V}_{ab}^s \in se(3) V^abs∈se(3) ,即其与运动旋量形式类似, 可以通过 g ˙ a b g a b − 1 \dot{g}_{ab}g_{ab}^{-1} g˙abgab−1 矩阵相乘证明。因此有:
V ^ a b s = [ w ^ a b s v a b s 0 0 ] = [ R ˙ a b R a b T − R ˙ a b R a b T p a b + p ˙ a b 0 0 ] V a b s = [ v a b s w a b s ] \hat{V}_{ab}^s = \begin{bmatrix}\hat{w}_{ab}^s & v_{ab}^s \\0 & 0 \\\end{bmatrix}= \begin{bmatrix} \dot{R}_{ab}R_{ab}^T & -\dot{R}_{ab}R_{ab}^Tp_{ab} + \dot{p}_{ab} \\ 0 & 0 \\ \end{bmatrix} \quad V_{ab}^s = \begin{bmatrix} v_{ab}^s \\ w_{ab}^s \\ \end{bmatrix} V^abs=[w^abs0vabs0]=[R˙abRabT0−R˙abRabTpab+p˙ab0]Vabs=[vabswabs]
其具有与运动旋量 ξ \xi ξ 相同的 ∨ , ∧ \vee , \wedge ∨,∧ 操作。注意内部成分的上下标符号与其一致。 w ^ a b s \hat{w}_{ab}^s w^abs 的表达式与 ( 43 ) (43) (43) 式不谋而合。
同样地有:
{ v q a ( t ) = V ^ a b s ( t ) q a ( t ) = w a b s ( t ) × q a ( t ) + v a b s ( t ) v q b ( t ) = V ^ a b b ( t ) q b = w a b b ( t ) × q b + v a b b ( t ) \begin{cases} v_{q_{a}}(t)=\hat{V}_{ab}^s(t)q_a(t) = w_{ab}^s(t) \times q_a(t) + v_{ab}^s(t)\\ v_{q_{b}}(t)=\hat{V}_{ab}^b(t)q_b = w_{ab}^b(t) \times q_b + v_{ab}^b(t) \end{cases} {vqa(t)=V^abs(t)qa(t)=wabs(t)×qa(t)+vabs(t)vqb(t)=V^abb(t)qb=wabb(t)×qb+vabb(t)
类比之前的式子,刚体运动的空间速度和物体速度之间的关系为:
V ^ a b s = g a b V ^ a b b g a b − 1 \hat{V}_{ab}^s = g_{ab}\hat{V}_{ab}^bg_{ab}^{-1} V^abs=gabV^abbgab−1
那么有没有类比 ( 45 ) (45) (45) 式后半部分得出来的 V a b s , V a b b ∈ R 6 V_{ab}^s,V_{ab}^b \in \R^6 Vabs,Vabb∈R6 之间的关系呢?单纯类比写出式子我们会发现, ( 4 × 4 ) (4 \times 4) (4×4) 和 ( 6 × 1 ) (6 \times 1) (6×1) 的矩阵根本不能相乘。这就需要我们通过分析其矩阵内部成分之间的关系得出它们之间的关系。
可得:
{ w ^ a b s = R ˙ a b R a b T v a b s = − R ˙ a b R a b T p a b + p ˙ a b = − w ^ a b s p a b + p ˙ a b = p a b × w a b s + p ˙ a b \begin{cases} \hat{w}_{ab}^s = \dot{R}_{ab}R_{ab}^T \\ v_{ab}^s = -\dot{R}_{ab}R_{ab}^Tp_{ab} + \dot{p}_{ab} = - \hat{w}_{ab}^sp_{ab} + \dot{p}_{ab} = p_{ab} \times w_{ab}^s + \dot{p}_{ab}\\ \end{cases} {w^abs=R˙abRabTvabs=−R˙abRabTpab+p˙ab=−w^abspab+p˙ab=pab×wabs+p˙ab
因为:
w a b s = R a b w a b b w_{ab}^s = R_{ab}w_{ab}^b wabs=Rabwabb
p ˙ a b = v a b s = R a b v a b b \dot{p}_{ab} = v_{ab}^s = R_{ab}v_{ab}^b p˙ab=vabs=Rabvabb
因为 p a b p_{ab} pab 是表示在空间坐标系下的,对其求导得到 v a b s v_{ab}^s vabs 。上述两式最好单独理解。
所以:
v a b s = p a b × ( R a b w a b b ) + R a b v a b b = p ^ a b R a b w a b b + R a b v a b b v_{ab}^s = p_{ab} \times (R_{ab}w_{ab}^b) + R_{ab}v_{ab}^b = \hat{p}_{ab} R_{ab}w_{ab}^b + R_{ab}v_{ab}^b vabs=pab×(Rabwabb)+Rabvabb=p^abRabwabb+Rabvabb
联立上述两式,表示为矩阵形式:
V a b s = [ v a b s w a b s ] = [ p ^ a b R a b w a b b + R a b v a b b R a b w a b b ] = [ R a b p ^ a b R a b 0 R a b ] [ v a b b w a b b ] V_{ab}^s = \begin{bmatrix} v_{ab}^s \\ w_{ab}^s \\ \end{bmatrix}= \begin{bmatrix}\hat{p}_{ab} R_{ab}w_{ab}^b + R_{ab}v_{ab}^b \\R_{ab}w_{ab}^b \\\end{bmatrix}= \begin{bmatrix} R_{ab} & \hat{p}_{ab} R_{ab}\\ 0 & R_{ab} \\ \end{bmatrix} \begin{bmatrix} v_{ab}^b \\ w_{ab}^b \\ \end{bmatrix} Vabs=[vabswabs]=[p^abRabwabb+RabvabbRabwabb]=[Rab0p^abRabRab][vabbwabb]
定义将运动旋量坐标进行坐标系变换的 6 × 6 6 \times 6 6×6 矩阵为:
A d g = [ R p ^ R 0 R ] Ad_g = \begin{bmatrix} R & \hat{p}R \\ 0 & R \\ \end{bmatrix} Adg=[R0p^RR]
称其为伴随变换,其与 g g g 有关,且有 A d g − 1 = A d g − 1 Ad_{g^{-1}} = Ad_g^{-1} Adg−1=Adg−1 。
所以有:
V a b s = A d g a b V a b b V_{ab}^s = Ad_{g_{ab}}V_{ab}^b Vabs=AdgabVabb
我们还可以得到:
{ ( V ^ ) ∨ = V ( g V ^ g − 1 ) ∨ = A d g V \begin{cases} (\hat{V})^{\vee} = V \\ (g\ \hat{V}g^{-1})^{\vee} = Ad_g V \end{cases} {(V^)∨=V(g V^g−1)∨=AdgV
即运动旋量在 R 4 × 4 \R^{4 \times 4} R4×4 中左乘一个 g g g 再右乘一个 g − 1 g^{-1} g−1 的作用跟在 R 6 \R^6 R6 中左乘一个 A d g Ad_g Adg 的效果一致。当然,此处的 A d g Ad_g Adg 是根据 g g g 得出来的。
那么,在不同坐标系下的空间速度是否也符合链式法则呢?答案是否定的。设有 A , B , C A,B,C A,B,C 三个坐标系,各坐标系中的空间速度存在下列关系:
V a c s = V a b s + A d g a b V b c s V_{ac}^s = V_{ab}^s + Ad_{g_{ab}}V_{bc}^s Vacs=Vabs+AdgabVbcs
证明如下:
V ^ a c s = g ˙ a c g a c − 1 = ( g a b g b c ) ˙ ( g a b g b c ) − 1 = ( g ˙ a b g b c + g a b g ˙ b c ) ( g b c − 1 g a b − 1 ) = g ˙ a b g b c g b c − 1 g a b − 1 + g a b g ˙ b c g b c − 1 g a b − 1 = g ˙ a b g a b − 1 + g a b g ˙ b c g b c − 1 g a b − 1 = V ^ a b s + g a b V ^ b c s g a b − 1 \hat{V}_{ac}^s = \dot{g}_{ac}g_{ac}^{-1} = \dot{(g_{ab}g_{bc})}(g_{ab}g_{bc})^{-1} \\ = (\dot{g}_{ab}g_{bc}+{g}_{ab}\dot{g}_{bc})(g_{bc}^{-1}g_{ab}^{-1})\\ = \dot{g}_{ab}g_{bc}g_{bc}^{-1}g_{ab}^{-1} + {g}_{ab}\dot{g}_{bc}g_{bc}^{-1}g_{ab}^{-1}\\ = \dot{g}_{ab}g_{ab}^{-1} + {g}_{ab}\dot{g}_{bc}g_{bc}^{-1}g_{ab}^{-1} \\ = \hat{V}_{ab}^s + g_{ab}\hat{V}_{bc}^sg_{ab}^{-1} V^acs=g˙acgac−1=(gabgbc)˙(gabgbc)−1=(g˙abgbc+gabg˙bc)(gbc−1gab−1)=g˙abgbcgbc−1gab−1+gabg˙bcgbc−1gab−1=g˙abgab−1+gabg˙bcgbc−1gab−1=V^abs+gabV^bcsgab−1
V a c s = ( V ^ a c s ) ∨ = ( V ^ a b s ) ∨ + ( g a b V ^ b c s g a b − 1 ) ∨ = V a b s + A d g a b V b c s {V}_{ac}^s = (\hat{V}_{ac}^s)^{\vee} = (\hat{V}_{ab}^s)^{\vee} + (g_{ab}\hat{V}_{bc}^sg_{ab}^{-1})^{\vee} = {V}_{ab}^s + Ad_{g_{ab}}{V}_{bc}^s Vacs=(V^acs)∨=(V^abs)∨+(gabV^bcsgab−1)∨=Vabs+AdgabVbcs
空间速度和物体速度在多个坐标系之间的变换,也可以通过上述证明方法求解。假设 B B B 系和 C C C 系没有相对运动,可以得出 V b c s = 0 V_{bc}^s = 0 Vbcs=0 。
我们还可以从另一个角度考虑刚体运动的空间速度和物体速度。考虑旋量运动:
g a b ( θ ) = e ξ ^ θ g a b ( 0 ) g_{ab}(\theta) = e^{\hat{\xi}\theta}g_{ab}(0) gab(θ)=eξ^θgab(0)
其中, ξ ^ \hat{\xi} ξ^ 为定常运动旋量。可以得到刚体运动的空间速度为:
V ^ a b s = g ˙ a b ( θ ) g a b − 1 ( θ ) = ( e ξ ^ θ g a b ( 0 ) ) ˙ ( e ξ ^ θ g a b ( 0 ) ) − 1 = ( ξ ^ θ ˙ e ξ ^ θ g a b ( 0 ) ) ( g a b − 1 ( 0 ) e − ξ ^ θ ) = ξ ^ θ ˙ e ξ ^ θ e − ξ ^ θ = ξ ^ θ ˙ \hat{V}_{ab}^s = \dot{g}_{ab}(\theta){g}_{ab}^{-1}(\theta) = \dot{(e^{\hat{\xi}\theta}g_{ab}(0))}(e^{\hat{\xi}\theta}g_{ab}(0))^{-1}\\ = (\hat{\xi}\dot{\theta}e^{\hat{\xi}\theta}g_{ab}(0))(g_{ab}^{-1}(0)e^{\hat{-\xi}\theta})\\ = \hat{\xi}\dot{\theta}e^{\hat{\xi}\theta}e^{\hat{-\xi}\theta} = \hat{\xi}\dot{\theta} V^abs=g˙ab(θ)gab−1(θ)=(eξ^θgab(0))˙(eξ^θgab(0))−1=(ξ^θ˙eξ^θgab(0))(gab−1(0)e−ξ^θ)=ξ^θ˙eξ^θe−ξ^θ=ξ^θ˙
同样地,可以得到刚体运动的物体速度:
V ^ a b b = g a b − 1 ( θ ) g ˙ a b ( θ ) = ( e ξ ^ θ g a b ( 0 ) ) − 1 ( e ξ ^ θ g a b ( 0 ) ) ˙ = ( g a b − 1 ( 0 ) e − ξ ^ θ ) ( ξ ^ θ ˙ e ξ ^ θ g a b ( 0 ) ) = ( g a b ( 0 ) − 1 ξ ^ g a b ( 0 ) ) θ ˙ = ( g a b ( 0 ) − 1 ξ ^ g a b ( 0 ) ) ∨ ∧ θ ˙ = ( A d g a b − 1 ( 0 ) ξ ) ∧ θ ˙ \hat{V}_{ab}^b = {g}_{ab}^{-1}(\theta)\dot{g}_{ab}(\theta) = (e^{\hat{\xi}\theta}g_{ab}(0))^{-1}\dot{(e^{\hat{\xi}\theta}g_{ab}(0))}\\ = (g_{ab}^{-1}(0)e^{\hat{-\xi}\theta}) (\hat{\xi}\dot{\theta}e^{\hat{\xi}\theta}g_{ab}(0))\\ = (g_{ab}(0)^{-1}\hat{\xi}g_{ab}(0))\dot{\theta} \\ = (g_{ab}(0)^{-1}\hat{\xi}g_{ab}(0))^{\vee \wedge}\dot{\theta} \\ = (Ad_{g_{ab}^{-1}(0)}{\xi})^{\wedge}\dot{\theta} V^abb=gab−1(θ)g˙ab(θ)=(eξ^θgab(0))−1(eξ^θgab(0))˙=(gab−1(0)e−ξ^θ)(ξ^θ˙eξ^θgab(0))=(gab(0)−1ξ^gab(0))θ˙=(gab(0)−1ξ^gab(0))∨∧θ˙=(Adgab−1(0)ξ)∧θ˙