JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

數清運動並讓它「變軟」:自由度、齒輪與柔順

工程師如何計算機構的自由度、透過齒輪傳遞扭矩,並刻意加入一點柔性以保障安全。

數清機構真正擁有的自由度

在動手製造任何會動的東西之前,你會想知道一個數字:它有多少種相互獨立的運動方式?這個數量就是它的自由度(常寫作 DOF),是描述一台機器活動能力最基本的事實。裝在合頁上的門有一個自由度——它只能擺動。你的肩膀有三個——它能以三種獨立的方式轉動。在空間中自由漂浮的物體有六個:它能沿三條軸平移,也能繞三條軸轉動。

機器人手臂由稱為連桿的剛性桿件構成,桿件之間用關節連接。每個關節既增添運動,也帶走一些運動——關節會約束它所連接的兩根連桿,使它們只能以被允許的方式相對移動。兩種最常用的關節是轉動關節(像合頁一樣旋轉,一個自由度)和移動關節(像滑塊一樣伸縮,一個自由度)。把若干連桿和關節依次串起來,就得到一條運動鏈——任何手臂的骨架。

格魯布勒-庫茨巴赫準則:運動的「記帳」公式

對於簡單的手臂,用眼睛數自由度還行;可一旦連桿首尾相接、繞回成環,事情就變得棘手。工程師會使用一個簡潔的記帳公式,叫做格魯布勒-庫茨巴赫準則。其思路很簡單:先讓每根連桿都擁有自由漂浮的全部自由度,再減去每個關節所帶走的自由度。剩下的,就是這個機構的活動度。

Planar (flat) mechanisms:
  M = 3 (N - 1) - 2 J1 - J2

  M  = mobility (degrees of freedom of the whole mechanism)
  N  = number of links, counting the fixed ground as one
  J1 = number of 1-DOF joints (revolute, prismatic)
  J2 = number of 2-DOF joints

Example - a simple two-link arm bolted to a table:
  N = 3 (ground + 2 links), J1 = 2 hinges, J2 = 0
  M = 3 (3 - 1) - 2(2) - 0 = 6 - 4 = 2   -> 2 DOF, as expected
該準則的平面形式;每個單自由度關節會從平面的三個自由度中去掉兩個。

這套記帳方法還揭示了手臂設計中的一個根本分野。串聯機械臂是一條開放的鏈——連桿排成一條線,像人的手臂——因此容易計數、定位靈活,但每個馬達都得撐起它之後的所有部分。並聯機械臂則用多個閉環同時支撐其平台(想像一台架在六條腿上的飛行模擬器);這些閉環分擔載荷、保持剛性,但代價是犧牲一部分工作空間,並讓計算變得更複雜。

齒輪:在馬達與關節之間用速度換扭矩

數清自由度告訴你「什麼能動」;接下來你需要用某種東西來帶著力氣去「動」。電動機快但力弱——它能輕鬆地每分鐘旋轉數千圈,但單憑自己卻推不動沉重的負載。傳動機構位於馬達與關節之間,重塑這份輸出,就像自行車上的變速齒輪讓你的雙腿能爬上那些用最高檔絕對蹬不上去的坡。

關鍵的數字是齒輪比(也叫減速比):關節每轉一圈,馬達要轉多少圈。100∶1 的傳動比意味著馬達轉一百圈,關節才轉一圈。這筆交易極其簡潔——關節轉速慢了 100 倍,但它輸出的扭矩大約增大了 100 倍。速度與力量是同一根槓桿的兩端;齒輪讓你在這根槓桿上來回滑動。

機器人關節常常需要在極小的體積裡實現巨大的減速比,於是工程師會選用諸如諧波減速器之類的特殊齒輪箱,它能在一個纖薄的級裡達到 100∶1,而且幾乎沒有齒隙——也就是齒輪齒面之間沒有完全貼合時的那一點點空程。齒隙之所以要緊,是因為每一絲丟失的運動,最終都會在末端執行器(手臂末端的工具或手)上表現為定位誤差。

柔順與反向驅動:為何一點「給得動」更安全

這裡有一個初學者很少料到的轉折:一台完美剛性的機器人,往往是一台危險的機器人。柔順性是工程師刻意為關節賦予的彈性——也就是它在受力時願意稍微讓一讓的能力。一隻僵硬的手臂撞到人後會繼續往前頂,直到某樣東西被頂壞。一隻柔順的手臂則會退讓,把衝擊像握手而非出拳那樣吸收掉。

柔順性還能幫助手臂抓握與裝配。當你把銷釘插入孔中時,剛性手臂只要偏離中心一絲就會卡住;而柔順的手腕則讓銷釘得以晃動、自行落位。正是這份「給得動」的特性,讓協作機器人(俗稱「cobot」)能安全地與人共用一張工作台,而無需在它周圍圍起護籠。

與之密切相關的是反向驅動能力——你能否推動關節、使馬達被帶著倒轉。一個可反向驅動的關節在你用手輕推時會順勢讓開,因而能感知並回應外部力量。大傳動比會與此相抗衡:那個 100∶1 的諧波減速器很難被反向驅動,這恰恰是大力矩工業手臂摸上去像一塊挪不動的鋼鐵的原因。設計者必須為每個關節選定它在「剛硬到柔彈」這道光譜上的位置。

前沿:把彈簧裝進迴路,讓機體變軟

把柔性直接做進結構裡,最直截了當的辦法是串聯彈性驅動器:在馬達的齒輪箱與關節之間裝一根真正的彈簧。測量這根彈簧被拉伸了多少,就能精確得知關節正用多大的力氣在推,從而把一個粗糙的馬達變成一個溫柔、對力敏感的馬達。那些必須吸收每一次落足衝擊的腿式機器人,正高度依賴這一思路。

再往前推,剛性連桿的圖景便徹底瓦解。軟體機器人用連續彎曲的機體取代金屬桿件和離散關節——矽膠觸手、可充氣的手指、像真肌肉一樣收縮的氣動人工肌肉。在這裡,柔順不是附加件,而是整副身軀的本質。這類機器人能擠過縫隙、能托起一顆嬌嫩的水果,自始至終都無須計算任何抓握力。

請留意整章是如何串聯在一起的:你數清自由度,以知道一副機體能做什麼;你為這些自由度配上齒輪,以賦予它們力量;你再調校它們的剛度,好讓機器在最終觸碰這個世界時既安全又有本事。機構設計,正是在這三者之間求得平衡的藝術。