好,那我們現在繼續來接著討論 Rotation Matrix 的 其它的特性。
那現在要講的就是 Rotation Matrix 的第三個功能 Rotation Matrix
本身它也可以來描述一個物體轉動的狀態 所以這個其實也是它爲什麽會叫做 Rotation Matrix
的原因 那我們今天其實空間中的轉動包含三個自由度,是蠻複雜的
那所以我們今天就先從對三個 principal axes
的轉動開始來做一個討論 那我們首先就先來看對 Z 軸的轉動
好,由圖中我們可以看出來說假設我們的座標 本來是藍色的部份,就是
XA、 you、 ZA 那我們今天把這個座標軸,整個座標繫 去針對 Z 軸去做一個旋轉。
那我們其實在講旋轉的 時候基本上都是逆時針為正,所以這裡圖中其實畫的是說
以從上方往下看的逆時針是正的方向 所以等於說上方往下看,逆時針是正的時候,我們
XA、 you 就會 如圖中所畫的這樣子轉過來,轉到一個橘色的位置,就變成是
XB 跟 YB 那這個轉動的角度,假設我們叫它叫做
θ 好了 那這個 θ 角下面,我們就可以開始去 針對這個
θ 角和旋轉矩陣去做一個描述 那我們先直接來看藍色的這個
座標繫跟橘色的這個座標繫好了。
我們如果帶著之前的定義 帶著之前的定義,我們知道說,今天如果要找到這個
B 的 這個 frame 相對於 A ,我們就知道說,我們的第一個 column
事實上就是 XB 在 XA 的,抱歉 ,XB 在 A frame 的
X、 Y、 Z 三個方向的投影 所以因為我們知道說在這裡我們定義成就單純是一個
旋轉的 θ,所以我們知道說我們的新的 XB 在 A frame 上面的投影就變成是
cos、 sin 跟 0 ,所以就是這個 我們這裡矩陣所寫的第一個 column
就是 cos、 sin 跟 0 那我們的 YB 用同樣的方式來處理的話,我們可以發現說
YB 在 XA、 you 跟 ZA 上面的投影 自動就會變成
-sin、 cos 跟 0 所以就等於說這裡就得到我們的第二個
column,那因為兩個 Z 軸 是重合的,所以我們就可以寫成 0、
0、 1 那由於我們之後這個旋轉矩陣會用的很多,那寫 cos、 sin
的字又 比較長比較多,畫面看起來比較亂,所以事實上在這門課裡面,我們都會把整個符號
以中間的這個矩陣的這個簡化的寫法,就等於說 cos θ 就會寫成
cθ,sinθ就會寫成 sθ,等於說會讓整個矩陣裡面的數字比較簡潔一點
就等於說那我們今天在這樣子解釋完之後,我們等於說我們是把 XA
等於說 A frame 轉到了 B frame 等於說間接代表我們是以一個旋轉
θ 的角度去詮釋 那我們事實上得到了這個矩陣,我們就等於是
B 相對於 A 的矩陣 那由於我們是以旋轉的方式去詮釋,我們就有另外一個針對這個旋轉矩陣的表達法
就像是這裡圖中所示的,我們是 R ,針對的 ZA 軸,這個 ZA
寫在右下角就代表說它的是,講的是這個旋轉矩陣的旋轉軸 那中間有一個 θ
角,就間接代表說它的旋轉角度是多少度 那當我們的軸知道,旋轉角度知道,其實我們裡面的
數字,旋轉矩陣裡面的九個數字就可以完全地確認了 所以這就是這個針對
Z 軸的旋轉是長這樣,那這個右上角這邊有 做一個動畫,就給同學看說,好,我今天針對
Z 軸的旋轉,大家可以看到說 我今天的 X double prime
有一直在沿著 Z 的方向逆時針旋轉嘛,對不對?它就是一個這樣子的一個
動畫,就可以看出來說這個座標到底是怎麼樣在移動的 那我們來看第二個是
針對 XA 的方向來旋轉,剛剛我們是針對 Z 軸,現在是針對
X 軸 那這個軸其實就比較容易讓我們看清楚說,我們是 逆時針地旋轉為正。
各位同學可以看到說我們今天眼睛的 視角其實是在以正 X
的方向往 -X 看 對不對?那我們在今天這樣看過去的時候
我們的逆時針方向是定義為正轉的方向,所以各位同學可以看到說,我今天 Y
double prime跟 Z double prime 它是以逆時針的方向
去轉動,然後是等於說會以逆時針的方向去跟 YZ
的這個座標軸 去分開來的,所以在我這個手畫的這個示意圖裡面,我們這樣子逆時針轉了之後
我們就上面就有一個 θ 角就跑出來。
那我們現在要定義說 R 的 XA (θ),就等於說要定義這個針對
XA 轉 θ角度的旋轉矩陣的時候 我們可以一樣用投影的方式去想。
那今天由於是 XA 跟 XB 是重合,所以我們的第一個 column 就很單純的是 1、
0、 0 那我們的 YB 就會投影到 you 跟 ZA
上面 所以就等於說是一個 cos、 sin,因為我們是針對 在圖中可以看出來說是這個
YB 這個向量 是相當於說是從 Y 的向量往上轉的一個θ,所以是
cos、 sin 那我們的 ZB 一樣投影到
you 跟 ZA 上面的時候,就變成是 -sin 跟 cos
,因為在 Y 的方向上面是負的,所以最後就得到了一個矩陣是長這樣子
那最後是我們針對 you 軸的旋轉
那對 you 軸的旋轉,各位同學可以看到說這個
示意圖跟右側的動畫就可以知道它動的方向 那我們現在是
Y 軸是重合,所以變成說是中間的 column 0、 1、 0 是不動的。
那我們針對 X 軸的 方向的時候,我們的 XB 轉到了 XZ 平面的下方,所以到 Z 的分量就變成是 -sin。
那 X 的分量一樣是 cos。
那我們的 ZB 在旋轉的時候,它轉的一個角度 θ之後
它的在 X 方向的投影上是 sin ,在 Z 方向的投影 是 cos,所以一轉過來之後它就是
sin 和 cos 那各位同學可以發現說在這三個矩陣裡面,其實針對
Z 軸的旋轉 它的這個 cos、 sin 會聚集在右上角,那針對
X 軸的旋轉,它的 cos、 sin 會聚集在左下角 那針對 Y
軸的旋轉,它的 cos、 sin 就會分散在這個矩陣的四個角落。
那剛好它的 那個負號的方向也是跟其它的是反過來的,所以是
Y 的部份是最容易在推導的過程中 不小心寫錯,這個同學們以後在做預算的時候可能要稍微 特別注意一下這個部份。
那我們有了這個旋轉矩陣之後
我們就來看一下說用這個角度的定義下的旋轉矩陣,它要怎麼去在我們的實際操作上面
去做一個運用,那我們現在就來看一個例題
我們現在就假設說,我們在這個座標上面一樣,我們現在是先有一個基礎的座標是藍色的 它是
X、 Y、 Z ,我們就假設說今天我們是要在這個座標上面的一個向量
PA 以 A,A 個這個 frame ,就是我們現在只有一個 frame A 來表達,它這個向量本身是
0、 1 跟 1.732 所以這就是畫在圖中的這個位置。
那我們現在想要做的是說 我們今天這個向量,我們可以來讓它對著
X 軸去做一個旋轉 那我們寫旋轉 30
度的時候,當我們沒有寫正負的時候,就代表我們要它逆時針旋轉 30
度 那我們想要求得說這個向量針對逆時針旋轉了 30
度之後 它所在位置的座標變成了什麽?所以我們現在就知道說我們需要用的公式
就是先找到 Rotation Matrix 對 X 軸旋轉 30 度的那個旋轉矩陣是什麽
所以我們的第一步就先找出 RXA 的 (θ) 那這裡的θ就是代 30
度進來,那我們的 RXA 的公式在前一頁裏面就有了,所以我們只是把θ
30 度代進來去做一個運算,可以得到這一個矩陣,就是 100、 0、
0.866 跟 0.5 0、 -0.5 和 0.866。
那我們有了這一個矩陣之後,等於說它是讓我們 當我們把一個向量代到這個矩陣的
時候就讓它會有一個旋轉的功效,所以我們現在要 讓我們的
PA 轉 30 度的時候,我們就是把我們的 P 在 A frame
下面的這個向量 跟旋轉矩陣相乘,它就有一個旋轉的功能。
那等於說我們今天就把 0、 1 1.732 跟剛剛前面算出來,對
XA 軸轉 30 度的旋轉矩陣相乘 乘完之後,我們就可以得到一個
0、 0、 2 就等於說事實上它就會剛好在 Z
軸上面 那一樣,在這裡我們是用代數的方式去解,那我們在幾何上面事實上也可以看到這樣子的效果
因為我們知道說我們原本 P 點的座標 0、 1
1.732 基本上它就是跟 Y 軸呈現一個 60 度的夾角 對吧?它是 1 跟
1.732,代表說這個向量長度是 2 然後它的投影出來的分量是 1
跟根號 3,所以它基本上是一個 跟 Y 軸 60 度的夾角。
那我們原本的向量跟 Y 軸是 60 度的夾角,它又在
YZ 平面上面,它對 X 軸又轉 30 度,間接代表說
這個 P 點的這個向量,它是在 YZ 平面上面
從原本的 60 度再多轉 30 度,所以間接代表說
它就轉到了 90 度,跟 Y 軸夾角就 90 度,又在 YZ 平面上面
間接代表說這個向量就轉到了 Z 軸上面 那剛剛也知道說它的長度是
2 ,所以就知道說我們轉完之後,從幾何的 角度,我們也可以知道說這個向量現在所在的位置是
0、 0、 2,就跟我們剛剛用 跟用代數的方式來運算所得到的結果是一樣的
所以又間接再一次確認說,我們今天剛剛所推導的這個代數的方式 是正確的。
那我們現在就來針對 我們到目前為止所教的
Rotation Matrix 的幾個用法,我們來做一個總結,我們從一開始
是把 Rotation Matrix 用來描述一個 frame 相對於另外一個
frame 的姿態 所以各位同學也看到說我今天有一個剛體,或者說有一個
range body 我在 body 上面建了一個 frame ,就是這裡的 B frame
,那它是一個 剛體,所以它有一個 frame 在上面,那我們要描述這個剛體
相對於世界座標的狀態,我們就算出了是一個 B frame
相對於 A frame 的狀態,那最後就是一個 Rotation Matrix B 對 A 的
那這個矩陣裡面我們也特別強調說,這裡的三個 column 各自就是
B frame 上面三個主軸在 A frame 上面三個主軸的投影
這是第一個用法,第二個用法 我們也用來表達說今天
Rotation Matrix 也可以把 我們本來有一個向量是以某一個
frame 來表達 那我們借由 Rotation Matrix 可以把它轉到另外一個
frame 來表達 舉例來說好了,我們這裡有一個 P 點的向量,本來它是在 B
frame 上面表達 那我們借由把這一個向量再跟 R 的 B
對 A 去做一個相乘之後 就可以把這個 P 點的向量變成是以
A frame 來表達,所以等於說它是 把我們的一個向量做 frame
之間的轉換用的 那第三個方法基本上就是把我們的一個點
或者是一個向量,讓它在空間中做一個旋轉的動作,那就像是前一頁講的 我們今天假設我們的
P 點在這個座標上的某個位置 我們乘上一個旋轉矩陣之後,基本上它就會
讓我們的這個向量是對空間中的某一個軸向 轉一個特定的角度
θ,所以從圖中來看,它就從 P 的這個向量 轉到了 P prime 的這個向量。
那按照它的今天這個旋轉矩陣的軸的方向跟這個 θ
當然說除了我們剛剛前一頁所教的針對三個主軸之外,我們還有辦法針對其它任何廣義的 軸都來做相似的操作。
那那個等於說我們就要針對這個 Rotation Matrix
再做進一步地說明 那那個在下一次的課程裏面會有更多更詳細的解說
[音樂]
[音樂]
[音樂]