旋轉向量旋轉矩陣求導
由旋轉引起的平面角速度

角速度:
![]()
弧長:
![]()
線速度:
![]()
(因為求速度,所以ΔS是極小值,)
由旋轉引起的空間角速度

已知角度度向量:
![]()
u是單位向量
顯然,又有:
![]()
顯然,又有半徑r與P向量的關系:
![]()
又根據叉積的定義,有:
![]()
因此:

結論:空間點的線速度向量,是角速度向量與該點向量叉積。
而速度向量的值,是 ||v|| = r * || ω ||
旋轉矩陣&指數矩陣

一定要有一個直覺, f ' (x) = A f (x) , 那么一定和e有關。
那么,有沒有可能:
![]()
R(t) 正是t時刻的旋轉矩陣, 將一個向量p(0)轉為p(t)
![]()
因為:
![]()
因此得證

又 ω 是角速度向量,那么:

![]()
對其進行積分,區(qū)間是[t,t+Δt],就可以得到:

從而,證明了:
![]()
![]()

旋轉矩陣的導數
已知繞單位向量u旋轉θ,與旋轉矩陣R,有如下關系:
![]()
μx 是單位向量μ的對應的反對稱矩陣。
所以,總有一個旋轉向量,與R有函數關系
因為R是隨著時間變化而變化,令:
![]()
由旋轉矩陣的性質,可知:
![]()
兩邊同時求導:
![]()
令:
![]()
那么,上面公式為:
![]()
因此:S是反對稱矩陣
那么:

結論:旋轉矩陣導數 = 反對稱矩陣S * 旋轉矩陣本身
已知:
![]()
對p0求導:
![]()
對p0求導,實質就是求p0處的速度:
![]()
因此,有:
![]()
所以,S就是角速度向量ω的反對稱矩陣。
結論:

結論:R的導數 = 角速度向量的反對稱矩陣 * R本身
上旋轉矩陣的導數2
根據上面的結論,R‘ = ω X R
R = [ x , y ,z ] 三角列向量,那么

R‘ 就是三個單位正交向量的線速度

向量 ω00,2 表示,以0系為基準(左上角),2系相對于0系的角速度向量。

其中:

代入上式:

又,反對稱矩陣有如下性質:
![]()
因此,上式變?yōu)椋?/p>
![]()
代入:

![]()
![]()
![]()
由此,可以得到兩個結論:
1. 角速度向量可以疊加,但是要以統(tǒng)一的坐標系作為參考。
2. 進行推廣,有如下鏈式法則,可以看做 :
p點相對于i - 1 系的角速度 = i系原點相對于 i - 1 系的角速度 + p 點相對于 i系的角速度

以此圖為參考,已知:
p0 為P點在0系下的向量
p1 為P點在1系下的向量
o 為1系原點在0系下的向量
那么,他們有如下關系:

假設P點,是與1系固連的,那么P點在0系下的速度 = 1系旋轉產生的速度 + 1系移動產生的速度


r 就是 P點在0系下的向量
機械臂的雅可比矩陣
機械臂旋轉產生的總角速度 ,根據:
![]()
可知,末端關節(jié),由旋轉引起的角速度向量為:
![]()
(機械臂總是繞Z軸進行旋轉)
令:


如果在第n個關機不是轉動關機,那么角速度大小為0
總線速度
如果第n個關節(jié),是想對于n-1個關節(jié),沿著zn-1方向移動的速度為d‘n , 那么n關節(jié)處,產生的速度為:

由沿著z軸移動產生的總速度:

如果第n個關節(jié),是相對于于n-1個關節(jié),沿著zn-1方向旋轉,其角速度為θn,那么n關節(jié)處,產生的速度為:

那么,由n - 1關節(jié)轉動,對n關節(jié)產生的速度為:

其中:

由運動正算得到的:
![]()
由沿著z軸旋轉產生的總速度:

總的線速度:

所以,寫成矩陣形式:

特別注意:通常一個運動就是一個關節(jié),同一個關機,d和θ其中一個要為0。
聯(lián)立起來:

雅可比矩陣就是 6 * 2n那個陣。
運動旋量

已知

(這里假設b和s原點是重合的,為了方便顯示,將b拉開)
已知Rsb的各列,ωs 都是s系下的向量,ωs 是旋轉向量。
那么,有:
![]()

ωb 是旋轉向量,以b系作為局部坐標系
![]()
使用反對稱矩陣運算法則:


(ωs 和 Rsb , p,都是以s為參考的向量)
ωs 和 Rsb 的等效旋轉向量不是同方向的,Rsb 是旋轉后的結果,而ωs 應該是這個結果后再次運動。
![]()

![]()
對Rsb求導,和之前的含義不一樣,之前是旋轉軸就是P向量。
假設運動不僅僅又旋轉引起,那么:


![]()
ωb,就是ωs在b系下的向量表示。
p導數,本來是b原點的速度,在s系下的表示,而pb導數,就是b原點的速度,在b系下的表示。
物體運動旋量
![]()
描述了動坐標系的角速度向量,以及其線速度向量,在動坐標系下的表達。
再推如下公式:

![]()
![]()
如果
![]()
ps導數,是指s點的速度,在s系下的表達,那么
運動旋量所指的運動,應該如圖:

1. s系和b系,作為一個整體,沿著向量 ωs方向運動,還繞ωs 進行旋轉,速度為ps向量求導,因此:
s系原點的速度,s系原點的速度,由于不受旋轉的影響,為:
![]()
2. 而b系,b點總運動速度,在s系下的表達,為:
![]()
(注意到,ωb = RsbT ωs 依然成立,因為這只是向量坐標系的轉換,ωs 不是必須從b系原點出發(fā))
空間運動旋量
![]()
物體運動旋量
![]()
(注意到,ωb 并不是已b系原點為旋轉點的,從推導過程來看,ωb = Rsb ωs , 旋轉點都是s原點,只是在b系下的表達而已)
空間運動旋量
![]()
運動旋量,描述了兩個東西:
1. 旋轉向量在該系下的表達。
2. 系原點的速度,在該系下的表達。
疑問:
Rsb 的推導過程中,s點與b點重合才有 Rsb 的導數(b系基向量的速度在s系下的表達),但是當s和b的原點不重合,那么Rsb的導數,應該如何算?
6維的運動旋量,能不能寫成 :
V(6維) = “6維向量 * 一個數”

研究b的運動,在s系下的運動旋量
![]()
為了達到 “6維向量 * 一個數” 這個目的,
s是移動的單位向量
令:
![]()
![]()
h被稱為“節(jié)距”
那么,b的運動,在s系下的運動旋量,表示為:
當θ導數不為0

vs為沿旋轉軸方向移動的速度。
當θ導數為0時,要寫成“6維向量 * 一個數” , 那么:
![]()
(此時q是什么已經不重要,只有沿s方向運動)
運動旋量正則化后,剔除了速度,留下了方向
![]()
說明:
1. ||ω|| = 1或 || v || = 1
2. ||ω|| = 1 時,θ為角度求導,即角速度;
||v|| = 1時,θ為位移求導,即線速度
*運動旋量,就是要找到一個軸,把 “旋轉 + 平移的運動的復合運動”,描述成繞這個軸旋轉的一個運動。

*如果只有平移,那么這個旋轉半徑是無限大的。
為了描述這個運動,需要:
1. 表示這個軸的單位向量 ω
2. 知道了 ω,也要知道半徑方向向量r
3. 還有旋轉速度θ導數
![]()
![]()

對于固定坐標系中的兩個點p0,p,如果向量 = p - p0,繞p0為原點進行旋轉,可以:
![]()
將R替換成羅德里格斯公式:
![]()
令:
![]()
即:由旋轉產生的位移向量
![]()
![]()
![]()
令:
![]()
( ω是單位向量,v就是單位角速度下產生的速度)

有一個這樣的運動:
1. 只考慮旋轉, 不考慮沿旋轉軸方向移動。
2. 旋轉向量是單位向量 。
3. 那么對于運動旋量S,有:
![]()
![]()
v是速度的方向,但不是單位速度,ω是單位向量
令:
![]()
![]()
注意:這個和位姿矩陣T不是同一回事,這里是描述了一個旋轉運動的過程

R則是將坐標系原點搬到p0點,然后旋轉后的基向量
忘記前面的公式,記住這個圖:
以下說那么多,都是非原點旋轉的坐標變換矩陣T

![]()
羅德里格斯公式:
![]()
代入:
![]()

現(xiàn)在,有一個轉換矩陣T,想要:
![]()
令:
![]()
將 p' = Tp 展開,R用羅德里格斯公式代替:
![]()
假設:
![]()
![]()
代入試試:

整來整去,其實就是想將:
![]()
(思想就是,將p點,變?yōu)橐詐0為原點的局部坐標(或者原點挪到s原點,稱為s系下的向量),然后使用旋轉矩陣變換(由于使用旋轉矩陣R,所以必須是向量),然后再挪回去p0點處)
變?yōu)椋?/span>
![]()

v其實就是描述了s隨著一起旋轉,s的原點的速度方向,要求速度,就
![]()
應用

兩個位姿,必然有以下關系:
![]()
那么,轉換矩陣Tscsb 除了轉換矩陣的作用,如何用幾何解析?
可以假設,p點經過旋轉之后,變成p'點。

(p點和p'點,實際就是x軸上的點而已)
套用上面的公式
![]()
![]()
因此,Tscsb ,實際上就是R和G(θ)v組成的。
而R可以反向,根據羅德里格斯公式,推出旋轉向量ω、旋轉角度θ
https://blog.csdn.net/Sandy_WYM_/article/details/84309000
有了旋轉向量ω、旋轉角度θ后:
第4列 = G(θ)v
![]()
![]()
自然,旋轉點q 也可以求出來
至此,可以得出一個結論:
![]()
使用q、ω、θ,可以將一個位姿,變化為另一個位姿,實現(xiàn)了:
“旋轉 + 平移的運動的復合運動”,描述成繞這個軸旋轉的一個運動
要是寫得漂亮一點,那就:
![]()
這就是運動旋量,
思考:
1. 已知θ是角度,那旋量就可以用于求位姿
2. 如果θ是角速度,是不是可以很容易知道每個點的運動速度?
3. 如果是純移動的運動,是不是通過計算Tscsb ,能否得到一個無限大的q?
浙公網安備 33010602011771號