1. 程式人生 > >開篇:機械手設計挑戰——仿人機器人設計領域上的高峰

開篇:機械手設計挑戰——仿人機器人設計領域上的高峰

機械手——作為機器人的末端執行器(End-Effector),在上身操作和抓取任務過程中起到至關重要的作用。但由於真實人手的高自由度、結構緊湊、複雜等特徵,絕大多數機械手都無法完美“複製”人手的功能,其設計和功能都是在某些特定場合和功能要求下的簡化和權衡。
作為機械手設計系列文章的開篇,這篇文章將主要談談傳統的機械手在設計上現有的不足與需要面對的挑戰。

1.高自由度的靈巧性:
我們首先拋開主動控制(Active Control)和被動適應(Passive Compliance)這兩種型別的自由度不談,也拋開全驅動(Fully-actuated)和欠驅動(Under-actuated)這兩種自由度的驅動方式不談,我們先來粗略分析一下真實人手的自由度(Degree of Freedom)。



如果我們定義每根手指閉合屈曲(Flexion)的方向為Pitch,那麼:
對於Pitch方向的自由度:食指-中指-無名指-小拇指-大拇指每個都有3個,所以總計為3*5=15個,如上圖分佈。
對於Roll方向的自由度:食指-中指-無名指-小拇指,在每根手指的指根關節(Metac Arpophalangeal Joint)都有1個Roll,而大拇指則比較特殊,具有2個Roll,所以Rol方向l總計為4+2=6個,如上圖分佈。
那麼整體人手的自由度為15+6=21個。(我們這裡不統計手腕關節帶來的6個自由度)
也許大家對21個自由度沒有明確的概念,我們可以做一個對比:一條機械人單腿是6個自由度,一條機械臂一般是7個自由度,21個自由度得需要多麼複雜的設計才能實現。
如何應付如此高自由度的機電系統設計,一般有如下兩種方向的做法:
1. 減少驅動器的數量,帶來了如下按照驅動方式的分類:
      (1)全驅動機械手(Fully-Actuated Hand):電機的數量等於所設計自由度的數量;
      (2)欠驅動機械手(Under-Actuated Hand):電機的數量小於所設計自由度的數量。
2. 減少冗餘手指的數量:保證功能的前提下,手指的數目由3指、4指到5指不等。
關於按照這兩個方向做精簡優化的不同機械手的特點、效能比較以及未來發展趨勢,我會之後獨立寫一篇文章來詳細比較。整體來說,按照目前學術界技術發展的整體水平:
我們目前還是無法在緊湊、高效、與可靠性的前提下完美“複製”人手高自由度的靈巧性。


2. 高抓重比的魯棒性:
抓重比(Grasping-Weight-Ratio):指的是機械手垂直抓握物體的重量和機械手本身重量的比例,是一個比較好的衡量機械手魯棒性(Robustness)的指標。
為什麼我們這裡要提和自身重量的比例?
因為很多機械手在設計的時候,根本沒有考慮到和實際人形機器人整合(Integrated)的問題。具體來說,很多全驅動機械手的重量在4-5kg左右,當你整合在固定基座的機械臂上時,可能還看不出太大弊端,但如果是整合在雙足機器人(Biped)上,這個重量的機械手對於步行(Locomotion)和操作(Manipulation)的控制簡直就是災難——很多機械臂的末端執行器負載都是在5kg級別,一隻機械手都已經快4-5kg,何談帶負載的抓取能力呢?
人手的抓重比:
人手的重量一般是人體體重的0.58%左右,假設一個70kg的成年人,他手的質量大約為406g。只要你是正常人,你應該毫無問題垂直抓握住一個5kg的啞鈴,這個情景下機械手的抓重比已經達到12.3。而實際人類的抓握能力應該是數倍高於12.3這個數值。
機械手的抓重比:
一隻能與仿人機器人整合的機械手,垂直抓重比能夠達到2.5以上已經算是很好的效能了,差距可見一斑。(垂直抓握物體,物體的重力僅由抓取力產生的摩擦力平衡)
我這裡沒有提用握力計這個直觀的指標來衡量機械手魯棒性的原因其實很簡單:我目前沒有看到過,使用握力計來測量機械手握力的實驗,因為結構設計的缺陷與魯棒性本身的不足,機械手沒有辦法很好使用握力計,很多人都在心照不宣迴避這個實驗。(如果有,還請告知吶)


3. 全覆蓋高靈敏度的感測性:
說到感測的特徵,這個方面實際人手應該甩機械手的應用與發展幾十條街。目前當我們談到機械手的感測反饋的時候,我們僅僅是在談論:
(1)   手指位置反饋:通過位置感測器實現;
(2)   手指力反饋:一般通過觸覺感測器或者驅動電機電流環反饋實現;
(3)   手指溫度反饋:通過熱敏電阻實現。(實際機械手一般很少應用到)


而真實的人手實際上是具有知覺的(Tactile Perception),我們可以通過簡單的觸控,來分別物體的軟硬、光滑等質感層面的資訊,這其實是一項很神奇的能力。
我在去年IROS的時候聽過一個介紹人手觸覺質感反饋的Workshop (Vincent Hayward, ISIR, France)。簡而言之,他們做了很深入的研究,但是目前還並沒有從本質上分析出來人手是如何通過觸覺質感(Tactile Perception)來分辨玻璃和金屬的!
來回到之前提到的三點常規感測器反饋,也還是存在如下的一些問題:
(1)   無法做到機械手全尺寸覆蓋感測器,現有的僅僅是覆蓋手掌和指腹等重要抓取位置;
(2)   絕大多數觸覺感測器是一維力(僅垂直壓力)的測量;
(3)   絕大多數觸覺感測器在提供施加力位置(Location)資訊時解析度太低;
(4)   感測器相應的測量電路整合緊湊性太差。

4. 傳動的可靠與機構的環境順從性:
關於機械手在人形機器人的實際應用情況,簡而言之就是:硬體特別容易損壞,一隻手絕大部分時間都是處在修理過程中。而硬體上的損壞則主要體現在如下兩點:
(1)   機械傳動裝置損壞;
(2)   缺乏良好的環境順從機構(Compliant Structure)造成的結構損壞。
關於機械手的機械傳動(Mechanical Transmission),通常有如下的方式:
  1.   齒輪傳動;2. 連桿傳動; 3. 肌腱傳動; 4.材料形變。
關於每種機械傳動方式的特點、設計特徵、優缺點以及未來發展趨勢,之後我會寫專門的文章來詳細介紹分析。
以上提到的每種傳動方式,尤其是最近使用較多的肌腱(Tendon)傳動,其在大負載抓握下傳動的可靠性以及使用壽命(Fatigue
Test),都和實際的人手有很大的差距。退一步說,機械手傳動的可靠性在整體人形機器人系統中是木桶效應的那塊短板,和關節驅動器的傳動方式相比(齒輪、四連桿以及帶傳動等)都要遜色很多。


關於機械手的順從性(Compliance):
實際上,不同驅動原理的機械手在順從性上差異巨大。一般而言,基於欠驅動和材料形變的機械手在順從性上要遠遠優於全驅動機械手,目前大多數的全驅動機械手無法實現手指關節的Impedance Control,所以在面對外界複雜環境的碰撞和衝擊時,非常容易損壞關節電機和減速箱。而基於欠驅動和材料形變的機械手雖然在順從性上有出色的表現,但不可否認的是,這類順從效能的獲得是建立於犧牲高精度的抓取效能之上的。
5. 機電系統的高度整合性:
由於機械手的高自由度特性,機械層面上大量關節軸承支撐結構、傳動裝置的設計;電氣層面上大量驅動電機、感測器以及相應驅動電路的應用,對於整體機電系統的整合性是一個很大的挑戰。
如下圖,我們可以參看一些早期的全驅動機械手的例子,手部的設計確實很乾淨整潔,但實際上都是冰山一角:底部紅色虛線區域內排布了大量的電機、機械傳動結構和驅動電路。這樣整合度的設計是幾乎不可能真正應用到的人形機器人(Biped)上的。


欠驅動機械手在整合性方面具有優勢。原因也很簡單:驅動器自由度(Degree of Actuator)的降低和冗餘手指數量的減少,極大程度降低了系統的冗餘性(Redundancy)。
下圖是一個欠驅動機械手機電系統整合的例子:機械手本體上完全集成了驅動電機和電路,由於高系統的整合性也進而帶來了對於不同機械臂的通用性。具體來說,上端機械臂只要提供電氣和機械端的介面,無需任何機械臂本體結構上的改變,高整合性的機械手就能直接安裝連線並使用。




這裡需要承認的是,欠驅動機械手的高整合性一定程度上也是犧牲高自由度效能下的結果,但在現有的技術條件下,減少冗餘的手指數量和驅動器數量是提高系統整合度最有效的手段。

機械手作為仿人機器人設計中最為複雜、精巧的一環,很多設計所做的決定都是在現有的技術條件下,犧牲某方面的效能而提升另一方面效能的權衡。後續的文章會具體介紹相應的設計細節,本文作為開篇,主要介紹了目前人形機器人的機械手設計需要面對的問題和挑戰。
這類某一方向整體發展Review的文章本身是需要大佬來寫,所以還是得謙虛地說一句:班門弄斧了。

瞭解更多幹貨文章,可以關注小程式八斗問答