機器人理論(4)逆向運動學:已知物體位置反推關軸角度
引言
我們已經知道如何已知角度去推算機械臂末端的位置,那麼如何由位置反推出機械臂到達需求位需要的角度呢?
逆向運動學
基本過程就是已知手臂末端點的位置{H}(機器手head)或者該座標系相對於世界座標系{W}的向量,求出關軸的角度。根據題目題目難度,有時候可以直接求解出角度,有時候需要藉助矩陣算出角度。
其中求解方法大致分為如下幾種方法:解析法(幾何法、代數法等)和數值法。
目錄
幾何法
顧名思義,直接利用幾何關係和定理求解即可。在這裡直接引出經典的PUMA機械臂案例。
【舉例】已知、、,如何求、、。( 、 為座標點、 = +
【求解過程】
上圖表明瞭 取決於 的正負。當<0時,屬於綠色三角形。當>0時,屬於藍色三角形。
得到如圖關係式後,就可以開始代入求解了。
代數法
【例題】和上面例題一樣
【求解過程】
代數,並使用極座標知識,可以得出:(小聲bb:現在才知道高中數學的重要性....)
數值法
列出每個關節的T矩陣,讓電腦自己往裡面帶入資料,數字一個一個跑,直到求出解為止。
反算出的方法不止一種。由於數值法對電腦算力有要求,解析法(幾何法、代數法)因為不需要舉出大量數字讓計算機去逼近求解,而且求逆矩陣快,所以大部分情況下使用的是解析法求解。然而想要讓機械臂能夠使用解析法求解,機械臂的設計就要滿足一個條件——存在相鄰的三軸相交於同一點,這個也稱為 Pieper's Solution
相關例子
使用經典的符合Pieper條件的PUMA手臂作為例題 ,有=。
由於前三軸是負責移動的,後三軸負責轉動的,為了方便分兩步走。
(1)求解 、、 (代數法)
由之前講過的T矩陣的特性,可以得出這個:
使用代數法運算,為了方便求解,我們先定義好代數式 f, g
可以知道f 是有關 的函式,g為有關、 的函式,展開有:
在這裡先假設代數 K:
然後加入並定義代數 r,就有:
可以知道r是有關、 的函式。
由於高度Z本身和有關,所以它也是一個有關、 的函式。
到這一步我們已經得到兩個不用考慮,且與、 有關的函數了,聯立起來,有:
即可聯絡已知求解,然後再依次求解出、。
(2)求解 、、
由上式已知我們的、、,並且我們的4,5,6關節都符合pieper條件,就可以直接通過下式算出答案:
【這裡的求解過程參考(2)】
綜合例題
【解題過程】
Tips:從多個解中選擇的方法
上傳圖片時瀏覽器突然卡機,發現草稿箱裡沒有儲存,全部都要重寫。煩躁。