計算機器人正向運動學的五個有趣小技巧

從工業物料搬運機器人到自駕車,機器人類型可謂多種多樣。但是,無論是哪種類型的機器人,都可以透過轉換資料位元組和電氣訊號來影響它們的工作環境。

對一個新的機器人進行有效配置的第一步通常包括正向運動學計算。但是在開始介紹機器人正向運動學計算的五個有趣小技巧之前,我們需要首先對“運動學”一詞進行明確的定義。

運動學是經典力學的一個分支,它是對點、剛體以及物件群組運動的研究,不考慮引發運動的驅動力以及每個研究物件的品質。運動學計算是機器人技術的核心。

有時候,計算過程可能非常複雜,但是這對於機械臂的操作至關重要。每個關節都必須測量出相應角度,以實現在特定軸上的連續旋轉。當實現這一步時,末端執行器可以到達空間中的任何點。

需要注意的一點是,對於每組角度,在某一時刻只會有一個計算結果,因此這需要進行確定性計算。此外,必須對於所提供的輸入有充分的理解,以更好地解釋機械臂的運動方式。

1. 用紙和筆記錄所有內容

在剛開始使用機器人時,你會想直接透過電腦開始工作。但其實用紙和筆對所有內容進行記錄會非常有益。

雖然機器人看起來像您的標準6R機械手,但其實用鉛筆手繪正運動圖要容易得多,而且速度也更快。進行這種簡單的體力活動將有助於消除潛在的錯誤假設,並使您更專注於機器人的實際物理配置。

參考:Formal Kinematic Analysis of a General 6R Manipulator Using the Screw Theory – Scientific Figure on ResearchGate.

這種方法也可能會幫助您避免在之後的階段(當您進入專案的程式設計階段時)發生嚴重的錯誤。此外,無論您使用哪種繪圖風格,請務必清楚地指出每個關節的運動方式和方向。

2. 在每個活動關節上畫出軸

在繪製示意圖時,請務必畫出每個活動關節的軸。實際上,您可以為每個關節指定不同的軸,但要確保每個軸的正確性,這很重要。

如果弄錯了這些,將很難使機器人正常工作。通常,最好讓x軸位於當前z軸和上一個z軸之間的最短正交線上。z軸本身應位於行動關節的旋轉軸上,延伸軸上,或者轉動關節上。

3. 考慮末端執行器的操作方式

在進行機器人的正向運動學計算時,需要從每個關節的位置計算出末端執行器的姿態。通常,它們不會單由末端關節計算得到,所以考慮末端執行器的操作方式至關重要。

例如,有多個手指,且能夠進行本身的調整抓取的現代化機器人要複雜得多,具有不同的抓取方式。因此,每種模式與所需末端執行器的對應方式將有所不同。

這使其成為建立正向運動學模型時的關鍵考慮因素。

4. 謹慎計算相關參數

當將機器人模型輸入類比器時,您需要選擇參數進行測試。正向運動學計算中最常用的方法是Denavit-Hartenberg參數法或DH參數法。

參考: Tele-Robotic Assisted Dental Implant Surgery with Virtual Force Feedback – Scientific Figure on ResearchGate.

然而,這個方法遠非完美,常常無法很好地處理平行的z軸。另一個選擇是應用螺旋理論的方法或從當今可用的幾種幾何建模方案中選擇一個。

但是,無論選擇哪種方法,都必須首先確保運動學程式館接收參數,所以剛開始選擇DH參數是一個合理的方案。

因為DH參數法是最常用的一種方法,所以您會找到 多種指南,可以幫助您有效地將機器人的每個關節分解成各個參數。其中每個參數的獲取都會參考前一關節,並參照公法線進行計算(如果當前z軸和前一個z軸相交,則公法線長度為零)。

此時,寫下每個關節相關的每個參數很重要。這意味著為每個關節分配了一個值,該值將會成為表示被驅動關節的變數。

5. 利用運動學軟體程式館

有許多運動學軟體程式館可用,並且其中大部分軟體的功能遠不止執行基本計算。這些軟體所提供的一些出色的功能包括:

  • 運動規劃
  • 視覺化
  • 逆運動學求解器

這些程式館可以幫助用戶快速將參數轉換為矩陣,然後可以對矩陣進行處理,以計算關節位置與末端執行器姿態之間的關係。如果您的程式設計水平較高,也可以輕鬆地構建您自己的正向運動學程式館。

值得考慮的優秀研發程式館包括:

  • Matlab Robotics Toolbox (Peter Corke 創建)
  • OpenRave
  • ROS MoveIt

機器人的正向運動學計算是設定一台新機械臂的重要步驟,但是要實現真正的控制,還需要一些逆運動學分析。最好從正向運動學計算開始,在熟練之後再著手逆運動學分析。

來源:

https://www.youtube.com/watch?v=rA9tm0gTln8

https://www.youtube.com/watch?v=KstFDEUWUm4