人的手抓握東西的原理是什麼?以及機械手是如何創作出來的?


謝謝 @劉歡邀請回答,今天簡單回答下,明天答辯完再來詳細寫下答案。
------------------------------------------------
博士答辯完成,接著來回答這個問題攢攢人品。

簡單的說,人手是怎麼抓取的,到目前為止,我們知道的太有限,還完全不清楚,可以參考這篇文章 「Castiello, U. (2005). The neuroscience of grasping. Nature Reviews Neuroscience,
6(9):726–736.」 另外也可以看下Helge Ritter最近寫的 Hands, Dexterity, and the Brain(http://www.ncbi.nlm.nih.gov/books/NBK299038/)。這兩篇文章分別從神經學的角度和機器人的角度解釋了為什麼我們還不清楚人手的控制是怎麼一回事和為什麼我們目前做的機器人抓取還遠遠不能在現實中應用。

大多數人都沒有覺得人手去抓取東西是什麼難的事情,這是因為我們大腦用了如此之多的資源去做這件事。人一個手就有20多個自由度,表面布滿了觸覺感測器。在大腦看來,人的身體是這樣的(見下圖)。看見沒有, 手是被放大了很多很多倍的,也就是說大腦其實消耗了很多能量在監控和控制著你的手,而在你看來,這一切彷彿就是自然發生的,完全沒有什麼控制。

既然從大腦的角度我們目前還不清楚這整個控制機制是什麼樣的,最起碼從解剖學的角度,我們可以搞清楚手的結構。這個方向推薦看BBC的一個記錄篇叫The Incredible Human Hand去大體感受下人手部構造的複雜。
下面是是一個X射線圖,可以清晰的看見手指的每一個關節。

下面這個圖展示的是手上的肌腱(tendon)是怎麼連接的。

考慮到手部結構的尺寸,大部分機械手都是採用線驅動來模仿肌腱,從而把電機放在手腕處,下面四張圖應該就是目前我個人覺得手做得最好的了,DLR出品。(當然也有採用電機直接在關節處驅動的,比如Allegro Hand,但就會顯得很笨重了)

這些手雖然在解剖學的結構上儘力的去模仿人,但是在控制效果上還遠遠達不到。這裡面的原因有很多,前面說的我們還不知道人的大腦是怎麼樣控制手的也是一個原因。
複雜的原因就不扯了,感受下人手能夠做的事情,見下圖。這裡面的動作都是很日常的人手的活動,但是目前機器手還遠遠不會。

robot hand還大多數停留在模擬裡面,在現實世界就開始用gripper(夾具)了,或者是吸盤來吸,看下2015年Amazon Picking Challenge 的前三名所用的手吧(吸盤,gripper, gripper), 完全沒有機器人手什麼事情。

最後想起Russ Tedrake課上的一句話,「如果有一件事情,人或者其他動物可以如此自然的做好(像走路,用手), 但是對於我們來說又是如此之難的去控制這樣的一個工程系統,那很有可能就意味著這是一個值得我們去探索的挑戰。」


------

早在去年的時候就回答過這個問題,後來因為一些原因,沒有及時更新這一回答,後續更讓人無語的是:知乎把我之前回答中的圖片都給搞掛了。也正好在這一段時間,完成了一篇欠驅動機械手的IROS 2017 PAPER,自己對於機械手整體的認識水平也前進了一步。

以上,就索性推翻之前的回答,讓我來重新回答一下這個問題。

-----

寫在看文之前,這次的回答分為三個章節,如果你僅僅是對機械手感興趣,想要了解一些有趣的信息的話,看完第一個章節就可以了,(第一個章節主要以圖片的形式);第二個章節對於有理工科背景或者機器人背景的人會比較有趣和有用;而如果你是從事相關機械手硬體研發工作的科研人員或者學生的話,可以去看第三個章節,我留下了郵箱,可以一起進行討論(如果能幫助到你的話)

------

Section 1

耶魯大學有一位研究人員花了大量的時間和精力,進行了如下圖所示的一項挺有趣的實驗:

(From Thomas Feix, The GRASP Taxonomy of Human Grasp Types)

對!沒錯,這貨在進行大量的抓取實驗,以探討人類在面對不同物體的時候,所採用最頻繁的抓取方式,以剖析最優的抓取方法。

實際上,通過上圖我想告訴大家的是:人類在進行抓取的時候,是不需要通過大腦思考的,它是一種自然的反應加上肌肉記憶,而這種反應和肌肉記憶實際上在我們的嬰兒時期,通過大量的抓取練習,已經深深地印刻在了我們運動神經之中。

而如今,人類回過頭來研究這個問題,實際上是想從中找到合適的方法,以控制機械手進行仿人的抓取動作,下面給大家看看目前行業內比較有名的機械手,以圖片的形式:

(十分不好意思,我不知道如何在知乎的這個界面編輯圖片位置和大小,大夥湊合著看)

UTAH/MIT Hand 全驅動機械手

DLR Hand 全驅動機械手

DEXMART Hand 全驅動機械手

Ritsumeikan Hand 欠驅動機械手

MANUS Hand 欠驅動機械手

SDM Hand 欠驅動機械手

Yale Hand 欠驅動機械手 (設計開源)

PISA/IIT Hand 欠驅動機械手

RTR2 Hand 欠驅動機械手

Spring Hand 欠驅動機械手

Barret Hand 欠驅動機械手 (商業產品)

Columbia Hand 欠驅動機械手

MARS Hand 欠驅動機械手 (NASA設計 應用於太空操作)

SARAH Hand 欠驅動機械手

Robotiq Hand 欠驅動機械手 (市面上性價比較高的商業產品)

看完如上所示的圖片,大家可能會覺得:都是些什麼奇形怪狀的機械手!沒錯,機械手的設計、製造和控制是較為複雜的,實際上大量的機械手是完全達不到實際應用的水平。

------

Section 2

對於問題的前半個,關於人手抓物體的原理是什麼,從生物角度去闡釋,我是沒有發言權的。Wiki是如下定義人手的:

手是人或其他靈長類動物臂前端的一部分,由五隻手指以及手掌組成,主要是用來抓和握住東西,兩個手相互對稱,互為鏡像。

人手實際上是一個極其靈巧而又複雜的人體器官。其軀幹(Link)主要由如圖1所示的指骨組成,包裹著軀幹的就是分布著大量靈敏觸覺神經的皮膚(Sensor),當人手需要具體運動的時候,肌腱(Tendon)就充當著傳遞動力的媒介,而在各個關節(Joint)中大量分布的肌肉皮膚等,則很好扮演了順從機構(Compliant Structure)。

而在人的五個手指之中,當屬大拇指最為特殊,首先它僅有兩個指節(Phalanges)組成,而且是所有手指中最靈活,指尖(End-Effector)工作空間(Work Space)範圍最廣的手指,具體來說,其Metacarpals Joint是一個球角(Ball Joint)。

圖1 (摘自Wiki)

大致說完了人手的「硬體」構成,咱們再來談談具體的控制。實際上,正常人對自己手的控制都是看到了物體,司空見慣地就伸手去抓,其實當我們用當前的機器人學去剖析這一過程,實際上又是這樣子的:當我們想去伸手抓某個物體(AI做出決斷),我們會大致看一下這個物體的位置(通過Vision進行定位),而當我們去抓的時候,我們主要基於的是對我們指尖(End-Effector)位置的路徑規劃(Trajectory Planning),通過自己的手臂帶動手掌去接近物體(Manipulation Progress),在這一接近的過程中,我們的視覺一直再給我們做反饋(Feedback),而當物體處於手掌的操作空間的時候,大腦會控制我們具體的手指進行抓握,而怎麼去抓,則是基於我們大量的生活經驗,去自動生成最優的適合物體輪廓的抓取方案(Machine Learning Concept),而在具體手指的操作之中,我們還是基於手指指尖的軌跡規划去控制各個手指關節的運動(Under-Actuated or Fully Actuated ?)。最終,皮膚上的觸覺神經(Tactile Sensor)會給我們一個反饋,告訴我們是否抓取到了東西,憑藉肌腱傳遞的接觸力接觸物體產生的靜摩擦力,去對物體進行操作,而觸覺神經會一直給我們物體形狀、硬度甚至溫度的反饋,藉助大量的實際抓取經驗,自動生成最優化,最穩定,最省力的抓取方案。

而上述這一大段控制的基本敘述,正常人類都能在1-2s內完成到最佳(比如說現在你去拿桌子上的手機,根本不需要思考去做規劃,完全是直接伸手就拿),不由不感嘆,如果從當前水平的機器人的視角來審視人類這樣一個「軀體和系統」,簡直高級的可怕。(這裡作者想分享一些有趣的想法: 人類這樣一個高端的智能體,也許真的不是地球自然選擇的成果,而是更加高等的文明所「製造」出來,因為我個人是做機器人行業的,我太難以想像,人類這樣的軀體水平,是怎樣自然進化而來的)

最後,我們再來談談人手的具體功能。毫無疑問,具體的對物體的抓取,操作是人手的主要功能,當然因為作者在義大利的緣故,所以自然而然也能想到手勢(Gesture)這樣的功能。而對於前者的功能,對其性能的描述無外乎以下兩點:靈巧(Dexterous)而又魯棒(Robustness)。


好的,現在回到這個問題的後半個:機械手是怎麼設計出來的(抱歉我把創作改成了設計)。這個問題應該算是作者比較擅長回答的,作者PhD階段的第一篇PAPER(IROS 2017)就是關於欠驅動機械手的設計相關的。

總體而言,設計機械手整體的思路還要回歸於問題的前半個:人手抓物體的原理是什麼?具體而言,要根據人手抓物體的原理去設計能實現相應功能的硬體——即機械手。


Step1:

設計組成手指的軀幹,也就是前面提到的Link或者是Phalanges。設計具體的Phalanges不是做拍腦袋設計,因為Phalanges具體的尺寸和形狀是對機械手後續的抓取性能是有著直接的影響。並且要做整體通盤的考慮,因為後續的傳動機構、感測器、關節、順從機構都是和其掛鉤的。簡而言之,這是最難設計的,通盤考慮(可以考慮參考現有的Phalanges種類進行設計),貫穿始終(始終需要做相應的優化和修改)。

Step2:

手指數量的選擇和分布,這裡需要告訴大家的是,至少有一半以上的機械手的手指數目都不是5個,而90%以上的機械手的大拇指分布都是區別於正常的人手的。因此,需要在一開始考慮:基於你想要達到的功能,確定機械手手指的數目(主流3,4,5)以及每根手指相應的位置排布。

Step3:

確定感測器選用,目前主流的機械手有如下的感測器配置:

1)沒有;

2)位置感測器(通常為Absolute);

3) 觸覺感測器;

4)力感測器;(主要通過測量驅動電機電流來獲得大致的抓取力)

Step4:

確定驅動方式,即選擇機械手的驅動方式為全驅動(Fully-Actuated)還是欠驅動(Under-Actuated),如果你不是相關專業的人員的話,這裡需要簡單解釋一下這兩個概念:

全驅動,即運動的自由度(Degree of Freedom, DoF)的數量等於驅動器的數量;

欠驅動:運動的自由度(Degree of Freedom, DoF)的數量小於驅動器的數量。

為什麼要在這裡引入這樣的概念,實際是還是由於人手大量的關節數目決定的,按照一般的自由度計算方式,人手共有22個自由度,選擇全驅動固然能夠最大程度上還原人手的細節精確運動,但大量數目驅動器的排布帶來的機械設計的複雜性和後期控制上的冗雜,使得大量的機械手向著欠驅動的方向發展。

Step5(如果選擇欠驅動作為驅動方案):

確定驅動的數目及分布,Step4中提及到人手有22個自由度,當你選擇欠驅動(Q&<22)的時候,你要考慮你到底需要多少自由度的驅動器,我們稱這個為Degree of Actuator (DoA),主流的機械手的DoA數目為1、2、3、4這樣的四種。而在確定了數量之後,你還需要考慮的是DoA的分配,及如何把驅動器和相應被驅動的手指關聯起來。(比如,當你選擇了採用3個驅動器,而你設計的機械手需要有5個手指,如何分配驅動器和手指的關係)。

Step6:

傳動方式的選擇和設計,所謂的傳動方式,即是在驅動器和手指指尖,你使用什麼樣的機械來傳遞動力。常見的有四連桿傳動、齒輪傳動、線傳動(Tendon)……線傳動目前為主流,是因為其契合機械手結構的緊湊性能

Step7:

驅動器的選型,大部分機械手的驅動器都還是採用了小巧的電機,也有液壓或者氣動的機械手,但是本著小型化、精巧化的設計,液壓和氣動都不是主流,畢竟無法解決需要相對笨重的液壓泵或者氣泵的弊端。電機根據需求自由選擇種類,而其額定的輸出力矩則要根據傳動方式和手指額定的輸出力來進行相應的計算確定。

Step8:

順從機構的設計,機械手的手指因為需要接觸物體(有的時候形狀對於機器人本身的系統是未知的)的緣故,順從機構(Compliant Structure)的設計是必不可少的。主要體現在如下兩個方向:

1)手指張開關閉的抓取方向,設置順從機構以達到對傳動機構的保護;

2)手指Yaw方向(以手指張開閉合方向為Pitch)設置順從機構,以起到對手指側向撞擊的保護。

Step9:

整體機電系統的整合,當你完成以上1-8步的設計之後,你需要做一個整體的統籌,同時把相應的驅動電路考慮進來,合理安排相應的排布和空間分配,整合系統。

-------

Section3

實際上,想要機械手實現人手的抓取功能,一個性能良好的硬體僅僅是基礎,具體的欠驅動或者全驅動機械手抓取的控制、規劃和策略,作者僅僅知道皮毛,而這個也是另外的一個水很深的研究領域。
話說回來,光是機械手本身硬體的設計實際上就十分複雜,其難度完全不亞於設計機器人的單腿或者機械臂,有太多太多的經驗、教訓和細節在知乎上面都無法提及到。如果你是真的需要從事機械手硬體的研究與開發的話,可以聯繫作者一起討論: zeyu.ren@iit.it 如果需要相關的參考文獻和設計手冊的話,作者也可以推薦一些。

作者認為:設計一個良好性能的欠驅動機械手難度很大,需要大量的工程經驗積累和硬體版本上的迭代,但是理論難以深度挖掘,作者的IROS文章雖然很幸運地中了,但是評委的Review的意見都是肯定了工程上的工作量,但對理論研究和貢獻水平保持了非常critical的態度,一句話:如果是做機械手硬體設計方面的研究的話,發文章比較吃力啊,這個方向不是很好。


最後,想和大家分享一下作者本人設計的三自由度非對稱欠驅動機械手:(圖片形式)

Prototype_Version_1

Finger_Motion Series_1

Finger_Motion Series_2

Common_Objects_Grasping_1

Common_Objects_Grasping_2

Object_Finger_Manipulation


人手運動非常複雜,光抓握就可以包含二指抓握(拇指食指的捏取動作,有時還被成為拇指食指的對指運動)、三指抓握(拇指、食指、中指)、球形抓握和柱形抓握等等動作。僅在抓握一項中,就可以看到拇指參與了大部分手運動,然而,目前學界對拇指運動的原理是爭議最大的,主要在於拇指自由度的數量及分布方式上。

要想了解並模仿手運動,首先要對手的解剖組成有所了解,其中包括手骨及關節,肌肉群,神經這三個方面,分別對應了機構中自由度,驅動和控制三個因素。

機器手是人類通過觀察並模仿人手運動,使機器達到類似手功能的一種方式,其主要目的在於實現各種抓握,保證抓握的精準與輸出力的控制,整體來看多為串聯型機構,但在手指關節處也有並聯機構的組成部分可看做混聯機器人的一種。

目前我在做一些關於手部外骨骼方面的工作,希望以上可以幫到你,如果有興趣可以跟我交流。


The Highly Biomimetic Anthropomorphic Robotic Hand on Vimeo


這個問題問得好,我一整節電磁學課都在不停地抓取抓取……
首先呢,我們先從骨頭的角度討論下。
人手上共有25塊左右的骨頭,關節的話因為每塊骨頭的形狀不盡相同,大約也是有20左右,如果只是這樣算自由度的話也是20左右(這個最上面的答案說到了)。
但事實上,我不知道機械手是怎樣的,人手上是有一層皮的啊,所以呢,人的手指在動的時候必然會帶動皮。帶動了皮就勢必會限制其他手指的運動,我相信這世上應該沒有為了抓取而去撕開自己的皮的人吧?這樣自由度就需要減去一兩個(具體減去幾個我沒有研究過不太清楚)。
既然說到了皮,那自然我們也不能放過高中生物課上老師強調過的結締組織,也就是軟骨和筋。這個問題就是我今天不停地抓取的原因所在了,對於一些沒有訓練過並且先天條件一般的人來說,如果動了無名指就會帶動小指,這兩根指頭的骨頭因為筋而連接了起來,這樣自由度又需要減去。
如果只考慮這些最後自由度會在20左右,然而還有軟骨,這樣問題就會變得更複雜……對了其實我們還得算上肌肉……
不過我看了看我力學書上5個自由度的問題的解答……如果真的20多個……我選擇狗帶!!!
其實這樣問題還不算完,像我之前所說的,無名指可以帶動小指,那麼問題來了,你在抓取的時候,大腦到底有沒有控制你的小指呢?還是說小指只是帶動的?不過如果試試的話你會發現你果然還是有控制它的,但是如果你故意不去控制的話你卻還是可以做出五指抓取的動作的。
這樣會牽扯出另一個問題,你可以試試抓住身邊的東西,讓手指手力,這樣你會發現,你的手腕處靠近自身的骨頭也會被帶動,在這種情況下只是考慮手上的骨頭顯然是不夠的,我們甚至還需要考慮手臂上的肌肉。
不過我並不嫌問題複雜,不如再思考下吧,我們在抓取時由大腦直接控制的部分有哪些?哪些只是被直接帶動的?又有哪些是因為非條件反射而帶動的?由於人的不同,還有一些條件反射的問題,比如手部受過傷的人會避免某些部分的受力。這些問題也可以考慮到機械手上(我終於想起來第二個問題了!),在設計機械手時,有一些部件也是可以不用直接控制而是直接由其他部件帶動的,雖然不會有條件反射,不過我們可以模擬這些,比如添加程序……當然這些我這個大二的本科生自然是不太知道怎麼弄的……就當是提些外行的建議吧……
坐等更加詳細的答案,希望也能解決我提出的一些問題(&>﹏


人這種生物太先進了啊!你只是簡簡單單抓個東西!!機器要這麼做這裡面關係到的東西可多了!例如PID調節,模糊控制,恆扭矩控制等等一大堆什麼鬼。。然而,我只是拿個東西而已。


抓握還真的不是那麼簡單的事,相對於人類來說,大拇指的作用佔了整個手全部功能的40%以上,而動物卻不一樣,你可以仔細觀察一下有五個指頭的動物,看看他們會不會像人握鉛筆,或者僅用大拇指和食指就捻起一條魚,一般都是用第二到五指抓著東西,大拇指的作用完全不像人類一樣那麼重要,我覺得也許猴子,猩猩狒狒之類的會這樣做,其他的估計都不會,回想一下動物世界裡,熊,老鼠什麼的,不都是兩手捧著吃嗎?
所以,重點是大拇指,大拇指,大拇指,重要的事情說三遍!


人無意識的時候手部的肌肉和筋絡是自然呈抓取的狀態的,比如睡著的時候和……死了的時候,所以人抓握東西是天性,類似的,長頸鹿的脖子,有人問長頸鹿整天直著脖子累不累,其實長頸鹿脖子的肌肉和筋絡天生就是直的,它們直著是自然狀態,相反,它們脖子彎下去才需要費很大力氣


自動控制原理


工業機器人編程調試的未來前景如何?


不知道各位有沒有看過一個根據一個神經醫生的真實回憶而拍的電影 無語問蒼天 。
裡面很多凍人,從小大多因為腦炎,而出現類似於帕金森病的樣子,人體被凍住,其實是不能靈活行動,長時間被定格在一個動作上,但在失去各種知覺後,仍然可以反應迅速的去接到迎面而來的東西!
這個畫面讓我很驚訝,正好看到這個問題,也許正如裡面的醫生所說 橙子的意識 也許手抓這樣的動作,是不是已經漸漸進化到客體的意識里去了,這也正是在製作機器人手時把很多邏輯用在手內部時永遠達不到非常優秀效果的原因。


擼的恰到好處。。。


嘿嘿嘿不請自來,我個人認為原理吧很簡單就是卡住,肌肉給手掌壓力,手掌給被抓物體的摩擦力就像這樣

此回答配圖太二 果斷匿了


推薦閱讀:

如何評價李小龍的肌肉?
為什麼衛生棉條放對了位置就會沒有異物感,難道那一區域毫無觸覺嗎?
為什麼人傷心時、鼻子被重擊時會哭;開心時、被笑話戳中笑點時會笑?為什麼會喜極而泣?
把女兒的後腦勺睡扁了,若她長大後和我翻臉,我該怎麼解釋?
為什麼我們可以回憶起一種顏色、一種聲音,卻不能回憶起一種氣味?

TAG:工業設計 | 機器人 | 工業工程 | 人體構造 | 工業機器人 |