劉 鋒
(湖南工學(xué)院,湖南衡陽(yáng)421002)
在剛體旋轉(zhuǎn)問(wèn)題中,有很多不同的方式表示剛體旋轉(zhuǎn)后的姿態(tài),例如旋轉(zhuǎn)矩陣、歐拉角、四元數(shù)和軸角表示法。
其中軸角表示法中只要知道旋轉(zhuǎn)軸和旋轉(zhuǎn)角就可寫出剛體的姿態(tài)矩陣。軸角表示法來(lái)源于歐拉定理:剛體作定點(diǎn)運(yùn)動(dòng)的任何位移都可以通過(guò)繞固定點(diǎn)的某個(gè)軸的一次轉(zhuǎn)動(dòng)實(shí)現(xiàn)。歐拉定理等價(jià)于旋轉(zhuǎn)矩陣有等于1 的特征值,其對(duì)應(yīng)特征向量x就是表示旋轉(zhuǎn)軸的方向。
假設(shè)剛體坐標(biāo)系為B(Oxyz)繞單位向量ω所表示的軸旋轉(zhuǎn)θ角,可以推導(dǎo)出其對(duì)應(yīng)的旋轉(zhuǎn)矩陣。首先假設(shè)剛體坐標(biāo)系B的z軸與ω所表示的任意軸重合,然后B坐標(biāo)系繞參考坐標(biāo)系A(chǔ)(OXYZ)的Z軸旋轉(zhuǎn)-α角使z軸在XOY平面的投影與X軸重合,然后再繞-β角,使z軸和Z軸重合,接著繞Z軸旋轉(zhuǎn)θ角,最后為了使z重新回到與ω軸重合的位置,可以繞Y軸旋轉(zhuǎn)β角和繞Z軸旋轉(zhuǎn)β角[1],如圖1所示。
圖1 軸角表示法
因?yàn)?次旋轉(zhuǎn)都是繞固定軸旋轉(zhuǎn)的,由基本旋轉(zhuǎn)矩陣可得:
此矩陣可以分解為:
其中S(ω)是由ω生成的反對(duì)稱矩陣。
該方程稱為羅德里格斯旋轉(zhuǎn)方程(Rodriguez rotation formula),只要知道旋轉(zhuǎn)的旋轉(zhuǎn)軸坐標(biāo)和旋轉(zhuǎn)角度,就可利用此方程求出旋轉(zhuǎn)方程。例如,將剛體坐標(biāo)系繞軸程為:
羅德里格斯方程還有如下3種不同的形式[2]:
其中第一種形式可以利用旋轉(zhuǎn)矩陣的指數(shù)表示證明。
假設(shè)剛體上一點(diǎn)P,它的位置向量為r,剛體繞方向?yàn)閱挝幌蛄喀氐妮S以單位角速度旋轉(zhuǎn),則P 點(diǎn)在參考坐標(biāo)系中的線速度為:
這是一個(gè)一階線性微分方程,分離變量后,積分可得通解為:
其中r(0)是P 點(diǎn)的初始位置向量,eS(ω)t是一個(gè)矩陣的指數(shù)函數(shù),由矩陣指數(shù)函數(shù)的定義有:
直接利用級(jí)數(shù)來(lái)計(jì)算旋轉(zhuǎn)矩陣R( ω,θ )較麻煩,現(xiàn)利用矩陣論的知識(shí)來(lái)簡(jiǎn)化R( ω,θ )的計(jì)算。
其特征多項(xiàng)式為:
根據(jù)矩陣論中哈密爾頓-凱萊(Hamilton-Cayley)定理:若n 階矩陣A的特征多項(xiàng)式為:
根據(jù)此結(jié)論可以只用S(ω)和( S(ω))2來(lái)表示旋轉(zhuǎn)矩陣,即:
再由正弦函數(shù)和余弦函數(shù)的冪級(jí)數(shù)展開式得:
所以
根據(jù)前面的證明也可得:
代入(3)式,整理得:
上式即為修正的羅德里格斯公式。羅德里格斯公式是一種非常有效的計(jì)算eS(ω)θ的公式。
由于兩相似矩陣的的特征值相同,若矩陣A與對(duì)角矩陣Λ相似,則對(duì)角矩陣主對(duì)角線上的元素即為A的特征值。
且存在可逆矩陣P,使得:
但是并不是每一個(gè)矩陣都與對(duì)角矩陣相似,在復(fù)數(shù)域上n階方陣與其若當(dāng)(Jordan)標(biāo)準(zhǔn)型J相似,即存在可逆矩陣P使得
A = PJP-1
若當(dāng)標(biāo)準(zhǔn)型J主對(duì)角線上的元素即為矩陣A的特征值,設(shè)
從上式可知eA與上三角矩陣
相似,可以證明上三角矩陣的特征值是其主對(duì)角線上的元素,故eA的特征值為eλ1,eλ2,…,eλs。
從而,eS(ω)θ的特征值為1,eiθ和e-iθ。根據(jù)特征的定義,對(duì)應(yīng)于特征值1,有
因?yàn)樵诶@軸旋轉(zhuǎn)時(shí),軸保持不動(dòng),所以特征值1對(duì)應(yīng)的特征向量就是kω(k ≠0).
由查爾斯定理(Chasles theorem)知,剛體的任何位移可以看成由沿空間特定直線的平移和繞該直線的旋轉(zhuǎn)生成的。這種平動(dòng)和轉(zhuǎn)動(dòng)相結(jié)合的運(yùn)動(dòng)稱為螺旋運(yùn)動(dòng)。
設(shè)旋轉(zhuǎn)軸方向?yàn)棣?,沿軸方向的平移為h,繞軸旋轉(zhuǎn)的角度為θ,稱平移h和旋轉(zhuǎn)的角度θ的比值螺旋運(yùn)動(dòng)的步距[2]。利用單位向量ω,旋轉(zhuǎn)軸上任意點(diǎn)的位置向量s 就可確定旋轉(zhuǎn)軸在參考坐標(biāo)系中的位置。再加上旋轉(zhuǎn)角θ和步距p,就可以定義剛體坐標(biāo)系相對(duì)于參考坐標(biāo)系的位姿。
在軸角表示法表示旋轉(zhuǎn)矩陣中,只有旋轉(zhuǎn),沒有平移,所以h=0,而且這時(shí)軸通過(guò)參考坐標(biāo)系原點(diǎn),可得量是旋轉(zhuǎn)后的位置向量,則:
這就是一般剛體運(yùn)動(dòng)的羅德里格斯公式。
從上邊的證明和討論,可以看到羅德里格斯公式在剛體旋轉(zhuǎn)運(yùn)動(dòng)和一般運(yùn)動(dòng)中都有很重要的應(yīng)用,利用它可以很容易計(jì)算旋轉(zhuǎn)矩陣和運(yùn)動(dòng)后剛體上任意一點(diǎn)的位置向量。