現在用的最多的工業機器人,一般都是六軸的,但是最近推出來的人機協作機械臂,卻有7個自由度,一直想不明白為什么。直到最近看到知乎上的一個問題:人的手臂(腕關節到肩關節)有幾個自由度?才發現,原來7個自由度是對人手臂的真實還原。
" ?9 C0 }# F: U# y" I. ]* m" w9 R& g# }
人的手臂(腕關節到肩關節)有幾個自由度?我想絕大部分人都沒有想過,更別說去了解有哪幾個自由度,即使是學工科的人,也未必能解釋清楚。沒想到知乎上居然有人把這個問題回答的這么專業有內涵,同時又那么有哲理,忍不住想要把這個答案分享一下。
. v7 ?8 O, _ ~
* t* C7 A' K: V回答這個問題的是知乎網友楊碩,答案如下:
* y* ]1 _0 B$ F* Y1 n& p' J Y實話說,對robot manipulation還是挺熟的,但是樓上幾個答案一眼看去都看不懂。不是黑,而是覺得對非專業人士來說不好理解。
) j3 k& R+ [/ D& H0 y3 d所以來盡量用通俗的語言解釋一下。 , h( k& Q7 S" M; j5 n
首先,問題的答案是:數一下就行了??! 9 I1 O; v( Q( @1 @# c' m2 d" d
6 T6 M" B1 [7 W1 W0 H3 a
7個自由度。 ( |& q: h5 S) O8 B2 z
有人問5,6是不是一樣的。5是擰鑰匙時唯一要轉動的關節,動力來自小臂兩根橈骨的扭轉;6是把鼠標放在桌面用手轉時唯一要轉動的關節,動力來自手腕的旋轉。 : y6 ^8 `8 D$ }; L% H
. y7 R+ f7 _5 D% z至于為什么人手臂是7個自由度,而不是8個也不是6個,可能是因為上帝非常懂機器人控制,下面盡量簡單地介紹一下。
3 f% n6 H7 F9 B G首先介紹一個定理:
+ P; }1 {) K5 l3 E6個自由度的機械手,在空間中無法在保持末端機構的三維位置不變的情況下從一個構型變換到另一個構型。 9 ]1 g/ L' e* h1 ]/ k& ~/ L
這個定理乍一看很不好理解,可以考慮一個更簡單的情況: G) |8 @% u5 y7 X8 Y
! A8 J" V. K* u0 Z3 {, l9 ]4 f
在這張圖上,一個機器人的手臂由基座、兩個關節、兩根連接件構成(想象把一個圓規打開,然后把一端用手指捏住)。 3 I# j( k7 X- Q3 S: h1 J
請問我們能夠把機器人在保持上部末端機構在平面上位置不變的情況下,從“lefty”這個狀態扭到“righty”這個狀態嗎? 0 s) H0 k- A) r- j. k) V; d& x" m
答案是不行的,不管怎么動兩個關節,移動過程中末端機構的位置肯定是要變的。看官也可以拿兩根筆在桌子上動一動試試。 9 R" L( t8 Q, A8 ^- z6 n3 J3 ]1 x- ^
同樣地,一個6自由度的機械手,即使某兩組構型對應的末端機構的三維位置相同,機械手在從一個構型移動到另一個構型的時候無法保持末端機構始終不動。
5 Z0 H( O! J0 ] E9 I2 N( e* ?如果有人在電視里看過工業機器人焊東西的話,就會發現它在同一個位置焊接的時候,一會兒整個扭到這邊,一會兒整個扭到那邊,看起來非??犰诺臉幼?。 ! Q: M* O+ L, W
事實上這么做只是因為,雖然焊接只是想改變末端機構的朝向,而不改變末端機構的位置,但是由于定理的限制,它必須要往后退一些,然后各種扭,才能保證在移動末端機構的朝向的過程中不會撞到東西,因為移動的時候末端機構的三維位置一定會亂動。如果它能夠隨便轉一點點就可以達到目的,還費那個力氣酷炫地整體都轉起來干啥…… # \) p, X: m \0 F% i
而多了一個自由度以后就不一樣了。 5 P) Y3 u+ V1 p* A3 u8 t
想想開門時擰鑰匙的動作,這個情況下是人胳膊的末端機構(手)的三維位置沒有變(始終在鑰匙孔前),但是末端機構(手)的三維旋轉變了(轉動了鑰匙)。人能夠實現這個簡單的動作,就是因為我們的胳膊有7個自由度。 ' [. J X: d$ w3 |1 @/ P/ p: h! A
說到這里,看官可能會看出來了,哎我懂了,我的末端機構有6個自由度(三維位置,三維旋轉),而胳膊作為一個機械手,有7個自由度,這兩個自由度好像說的不是一回事,但是數量上7-6=1,所以這1個自由度我能拿來擰鑰匙。
1 x6 a5 Q# {! q* W7 o! m: I4 B如果上帝把我們的胳膊設計成6個自由度的話,人擰鑰匙的動作一定會非常浮夸。大家可以在擰鑰匙的時候不要轉手腕,感受一下。 , h0 I3 L1 `9 q1 \& q3 d
那么為什么不再多給我們一些自由度呢?
. g$ Y3 q0 B9 {9 ^因為自由度越多,機械手剛性越差。如果我們的胳膊有8個自由度,那么受傷的概率會更加很多。雖然沒有什么生物學研究證明這一點(世界上沒有8個自由度的生物軀體),但是機器人的研究是可以證明這個問題的。
+ Q$ a J4 [$ ]" Y
/ a: C( ?- S. V所以7是一個最好的選擇。不知道圣經中把7作為最好最神圣的數字、一個星期有七天,和人的胳膊有7個關節有沒有關系。
! m& v, S2 F: V$ a( o) y: D4 Z
' `; f0 t6 [! C7 |( l
" N0 F% l: j" A f% M+ j' X( y |