為什麼汽車雨刷能掃出一片漂亮的扇形?
從連桿、凸輪到齒輪,機構學如何把一種運動「翻譯」成我們想要的另一種運動。
為什麼汽車雨刷能掃出一片漂亮的扇形?
下雨天,你坐在車裡,看著雨刷一來一回掃過擋風玻璃,刮出乾淨的扇形視野。馬達其實只是「轉圈圈」——它的軸在做連續的圓周運動,可是雨刷臂卻在做來回的「擺動」。一個連續旋轉的輸入,怎麼變成了限定角度的往復擺動?
這正是機構學(Kinematics of Machinery)要回答的核心問題:如何用剛性桿件、滑塊、凸輪與齒輪,把一種運動「翻譯」成我們想要的另一種運動。機構學只關心「動作」本身——位置、速度、加速度,以及桿件之間幾何上的約束關係,暫時不問驅動它需要多大的力(那是動力學的事)。換句話說,機構學是機械設計裡的「幾何文法」:它規定了哪些運動是可能的,哪些是被結構鎖死的。
這篇文章我們從最基礎的連桿(linkage)談起,再走到凸輪(cam)與齒輪(gear),看它們如何各自用不同的手法完成「運動轉換」這件事。

連桿機構:用桿件與接頭編織運動
最基本的機構由桿件(link)與接頭(joint)組成。桿件是剛體,接頭限制相鄰桿件之間的相對運動。最常見的接頭是轉動對(revolute joint, R),允許一個旋轉自由度;以及滑動對(prismatic joint, P),允許一個平移自由度。
要判斷一個平面機構「能不能動、有幾種獨立的動法」,我們用 Kutzbach(Grübler)自由度公式:
$$ F = 3(n-1) - 2 j_1 - j_2 $$
其中 $n$ 是桿件數(含固定的機架 frame),$j_1$ 是單自由度接頭(R 對、P 對)的數目,$j_2$ 是雙自由度接頭(如滾動接觸)的數目。係數 $3$ 來自平面剛體本身有 3 個自由度(兩個平移、一個旋轉)。
以最經典的四連桿機構(four-bar linkage)為例:$n=4$、$j_1=4$、$j_2=0$,
$$ F = 3(4-1) - 2 \times 4 - 0 = 9 - 8 = 1. $$
自由度為 1,意味著只要指定一個輸入角(例如曲柄轉了多少度),整個機構的位形就完全確定了。這就是為什麼我們可以用「一顆馬達」驅動「一整組桿件」。
Grashof 定則:曲柄到底轉不轉得完整圈
四連桿能做出哪種運動,取決於四根桿的長度搭配。設四根桿長為 $s$(最短)、$l$(最長)、$p$、$q$(其餘兩根)。Grashof 定則指出:當
$$ s + l \le p + q $$
時,最短桿可以相對其相鄰桿做完整 $360^\circ$ 旋轉。若最短桿是與機架相連的桿,就得到曲柄搖桿機構(crank-rocker):曲柄轉整圈、搖桿來回擺動——這正是汽車雨刷的原型。若 $s+l > p+q$,則沒有任何桿能轉完整圈,所有桿都只能擺動,稱為雙搖桿機構(double-rocker)。
這個判別式之所以重要,是因為它在「設計階段」就能用純幾何告訴你:你想要的連續旋轉輸入,到底是被允許的,還是被結構卡死的。
位置分析:向量迴路方程
要算出機構在任一瞬間的精確位形,工程上用向量迴路法(vector loop method)。把每根桿視為一個向量,繞機構走一圈,回到起點,向量總和必為零:
$$ \vec{r}_2 + \vec{r}_3 - \vec{r}_4 - \vec{r}_1 = \vec{0}. $$
用複數指數表示桿向量 $\vec{r}_i = r_i e^{i\theta_i}$($r_i$ 為桿長、$\theta_i$ 為角度),迴路方程變成:
$$ r_2 e^{i\theta_2} + r_3 e^{i\theta_3} - r_4 e^{i\theta_4} - r_1 e^{i\theta_1} = 0. $$
把實部與虛部分開,得到兩條代數方程:
$$ r_2\cos\theta_2 + r_3\cos\theta_3 - r_4\cos\theta_4 - r_1 = 0, $$ $$ r_2\sin\theta_2 + r_3\sin\theta_3 - r_4\sin\theta_4 = 0. $$
給定輸入角 $\theta_2$,這組方程可解出 $\theta_3$、$\theta_4$。這就把「畫圖找交點」的幾何問題,變成了可以交給電腦求解的代數問題——也是所有機構模擬軟體背後的數學核心。
速度與加速度:對時間微分
把迴路方程對時間微分一次,得到速度關係($\omega_i = \dot\theta_i$):
$$ r_2\omega_2 e^{i\theta_2} + r_3\omega_3 e^{i\theta_3} - r_4\omega_4 e^{i\theta_4} = 0. $$
再微分一次得到加速度關係,會出現兩種項:與角加速度 $\alpha_i$ 成正比的切向項,以及與 $\omega_i^2$ 成正比的法向(向心)項:
$$ \sum_i r_i\left(i\alpha_i - \omega_i^2\right)e^{i\theta_i} = 0. $$
這裡可以連結到優物理:$\omega^2 r$ 正是向心加速度,反映了即使桿件以等角速度旋轉,桿上各點仍持續改變運動方向,因而存在加速度。機構分析本質上就是把剛體運動學一條一條套用到每根桿上。
凸輪機構:用「形狀」直接編程運動
連桿用桿長比例來塑形運動;凸輪(cam)則更直接——它把想要的運動規律「刻」進自己的輪廓裡。一個旋轉的凸輪推動一個從動件(follower),從動件的位移完全由凸輪輪廓決定。引擎的進排氣門開關就是凸輪的經典應用。
從動件的位移 $s$ 是凸輪轉角 $\theta$ 的函數,$s(\theta)$ 稱為位移曲線(displacement diagram)。設計凸輪的關鍵不在位移本身,而在它的高階導數。從動件的速度與加速度為:
$$ v = \frac{ds}{dt} = \frac{ds}{d\theta}\cdot\omega, \qquad a = \frac{d^2s}{d\theta^2}\cdot\omega^2, $$
其中 $\omega$ 是凸輪角速度(通常為定值)。
這裡藏著一個重要的工程陷阱:如果位移曲線用最樸素的「等速度(constant velocity)」設計,那麼在運動的起點與終點,速度會瞬間從 0 跳到某值,導致加速度變成無窮大——對應到無窮大的慣性力,機件會劇烈撞擊、噪音與磨損暴增。
所以實務上採用擺線運動(cycloidal motion)等平滑曲線。擺線位移曲線為:
$$ s(\theta) = h\left[\frac{\theta}{\beta} - \frac{1}{2\pi}\sin\left(\frac{2\pi\theta}{\beta}\right)\right], $$
其中 $h$ 是總升程、$\beta$ 是完成升程所需的凸輪轉角。它的加速度為:
$$ a = \frac{2\pi h\,\omega^2}{\beta^2}\sin\left(\frac{2\pi\theta}{\beta}\right), $$
在起點與終點 $a=0$,全程連續無突跳。更進一步,由於加速度連續,急衝度(jerk,加速度的時間導數)也有限,這對高速凸輪的平順與壽命至關重要。凸輪設計的精髓,就是在「形狀」這個自由度上,同時兼顧位移、速度、加速度乃至急衝度的全部要求。
齒輪機構:精準傳遞旋轉
當我們需要把旋轉「定比例、不打滑」地傳到另一根軸,就用齒輪(gear)。齒輪傳動的核心是齒輪比(gear ratio):
$$ \frac{\omega_1}{\omega_2} = \frac{N_2}{N_1} = \frac{d_2}{d_1}, $$
其中 $N$ 是齒數、$d$ 是節圓直徑(pitch diameter)、$\omega$ 是角速度。齒數多的齒輪轉得慢、扭矩大;齒數少的轉得快、扭矩小——這就是腳踏車變速與汽車變速箱的物理基礎。
要讓兩齒輪能正確嚙合,它們必須有相同的模數(module)$m = d / N$(公制)。模數相同意味著齒的大小一致,才咬得上。
齒形幾乎都採用漸開線(involute)。漸開線的關鍵優點是:即使兩軸中心距有些微誤差,傳動比仍保持恆定,這稱為共軛作用(conjugate action)的穩定性。這是漸開線齒形能在工業界一統天下的根本原因。
輪系:把多級齒輪串起來
多個齒輪串接成輪系(gear train),總傳動比是各級傳動比的連乘。對於由輸入到輸出經過數對嚙合的輪系:
$$ \text{train value} = \frac{\omega_{\text{out}}}{\omega_{\text{in}}} = (-1)^{p}\,\frac{\prod (\text{驅動輪齒數})}{\prod (\text{被動輪齒數})}, $$
其中 $p$ 是外嚙合的對數(每一對外嚙合會反轉方向,故有 $(-1)^p$ 的正負號;內嚙合不變號)。
更精巧的是行星齒輪系(planetary / epicyclic gear train),太陽輪、行星輪與環齒輪同時運動,行星架繞中心公轉。它的分析需要用相對運動的觀點,把整個系統「凍結」在行星架的參考系中:
$$ \frac{\omega_{\text{sun}} - \omega_{\text{carrier}}}{\omega_{\text{ring}} - \omega_{\text{carrier}}} = -\frac{N_{\text{ring}}}{N_{\text{sun}}}. $$
這條方程正是 Willis 公式的應用,也是自動變速箱、電動工具減速機的設計依據。
看一個例子
設計一個曲柄搖桿雨刷機構,並驗證它的可行性與某瞬間的角速度。
步驟一:選桿長並用 Grashof 定則檢驗。 取機架 $r_1 = 100$ mm、曲柄 $r_2 = 30$ mm、連桿 $r_3 = 90$ mm、搖桿 $r_4 = 80$ mm。
最短桿 $s = 30$、最長桿 $l = 100$、其餘 $p = 90$、$q = 80$:
$$ s + l = 30 + 100 = 130 \le p + q = 90 + 80 = 170. \checkmark $$
滿足 Grashof 條件,且最短桿(曲柄)與機架相連,故為曲柄搖桿機構:曲柄可整圈旋轉、搖桿(雨刷臂)來回擺動。設計可行。
步驟二:求某位形下的連桿角度。 設曲柄角 $\theta_2 = 60^\circ$,代入位置迴路方程:
$$ 30\cos 60^\circ + 90\cos\theta_3 - 80\cos\theta_4 - 100 = 0, $$ $$ 30\sin 60^\circ + 90\sin\theta_3 - 80\sin\theta_4 = 0. $$
數值求解(牛頓法)可得 $\theta_3 \approx 28.0^\circ$、$\theta_4 \approx 73.5^\circ$。
步驟三:求搖桿角速度。 設曲柄等速旋轉 $\omega_2 = 10$ rad/s。對迴路方程微分後得速度方程:
$$ r_2\omega_2\sin\theta_2 + r_3\omega_3\sin\theta_3 - r_4\omega_4\sin\theta_4 = 0, $$ $$ r_2\omega_2\cos\theta_2 + r_3\omega_3\cos\theta_3 - r_4\omega_4\cos\theta_4 = 0. $$
把已知值代入這組對 $\omega_3$、$\omega_4$ 的線性方程求解,可得搖桿角速度約 $\omega_4 \approx 2.9$ rad/s。也就是說,曲柄轉得快、搖桿擺得慢——機構同時完成了「運動形式轉換」與「速度縮放」。這就是一個完整的機構分析閉環:幾何判別 → 位置求解 → 速度求解。
重點回顧
- 機構學只關心運動本身(位置、速度、加速度)與幾何約束,不問驅動力的大小。
- Kutzbach 公式 $F = 3(n-1) - 2j_1 - j_2$ 判斷平面機構自由度;四連桿 $F=1$,可由單一輸入驅動。
- Grashof 定則 $s+l \le p+q$ 判斷四連桿能否做整圈旋轉,決定它是曲柄搖桿還是雙搖桿。
- 向量迴路法把機構位置問題化為代數方程,微分一次得速度、兩次得加速度(含 $\omega^2 r$ 向心項)。
- 凸輪用輪廓形狀直接編程運動;採用擺線等平滑曲線可避免加速度突跳造成的衝擊。
- 齒輪靠相同模數嚙合、漸開線齒形保證恆定傳動比;輪系傳動比為各級連乘,行星齒輪系需用相對運動分析。
深入探討(研究所視角)
在研究所層級,機構學會延伸到幾個更深的方向。
空間機構與螺旋理論。 平面機構的 3 自由度推廣到空間時,剛體有 6 個自由度,自由度公式變為 Kutzbach 的空間版 $F = 6(n-1) - \sum_i (6 - f_i)$,其中 $f_i$ 是各接頭的自由度。更優雅的描述工具是螺旋理論(screw theory):每個瞬時運動可表示為一個「旋量(twist)」,每個力與力偶可表示為一個「力旋量(wrench)」,兩者透過互易積(reciprocal product)刻畫約束。這套框架是現代並聯機器人(如 Stewart platform)運動學分析的標準語言。
奇異位形(singularity)。 機構在某些位形下,其速度方程的 Jacobian 矩陣 $J$ 會退化($\det J = 0$)。此時可能發生「輸入動了輸出卻不動」(如曲柄與連桿共線的死點 toggle position),或「輸入鎖死輸出卻可微動」的失控情形。並聯機器人的奇異位形分析直接關係到工作空間設計與控制安全,是當前機器人學的活躍課題。
齒輪嚙合的高等理論。 漸開線的共軛作用可由嚙合基本定律(fundamental law of gearing)嚴格導出:兩齒廓接觸點的公法線必通過固定的節點(pitch point),才能保證恆定傳動比。進一步的齒面接觸分析(Tooth Contact Analysis, TCA)結合微分幾何與彈性力學,用來分析螺旋錐齒輪、準雙曲面齒輪的真實接觸斑點與傳動誤差,是航太與汽車傳動設計的核心技術。
運動合成(synthesis)。 前面都是「給定機構、分析運動」的正向問題;研究所更關注其反問題——運動合成:給定一組期望的目標位置或軌跡,反求桿長與接頭配置。這牽涉到 Burmester 理論、精確點(precision point)法,以及把問題化為多項式系統後用同倫延拓(homotopy continuation)求全部解。運動合成是計算運動學(computational kinematics)的核心,也是機構設計從「經驗試湊」走向「演算法自動生成」的關鍵橋樑。