萬物都是一個會動的數字
哼一個單音。你嘴前的空氣並不是靜止不動的——它一會兒被擠緊、一會兒被拉鬆,密了又疏,每秒鐘來回好幾千次。如果你能把某一點的空氣壓力對時間畫出來,就會畫出一條上上下下波動的曲線。那條波動的曲線*就是*你的聲音。它是一個訊號:一個藉由隨時間改變來承載資訊的量。
整個領域就建立在這個低調的想法上:一個訊號不過是某個自變數的函數。對聲音來說,那個自變數是時間,函數是空氣壓力:寫成 x(t),唸作「x of t」,意思是「在時間 t 時 x 的值」。世界裡這樣的函數多得滿出來。電線上的電壓、馬達裡的電流、一個像素的亮度、飛機的高度、你發燒時的體溫——每一個都是某個量在每一瞬間取一個值,一個會動的數字。
系統就是任何會轉換訊號的東西
現在把一個東西放進訊號的路徑上。對著麥克風說話:聲壓*進去*,一段電壓波形*出來*。把那段電壓送進放大器:小小的擺動進去,大大的擺動出來。再送到喇叭:電壓進去,聲音又出來。這條鏈上的每一個方塊都有一份工作——它收進一個輸入訊號,產生一個輸出訊號。這,正是一個系統:任何把輸入訊號轉換成輸出訊號的東西。
一台恆溫器是系統:輸入是它感測到的室溫,輸出是它送給暖爐的開/關指令。一台相機是系統:光的強度進去,一格一格的像素值出來。定速巡航、降噪耳機、心電圖機、你手機裡的自動對焦——全都是系統,全都源自那同一句話的定義。工程師喜歡把這畫成一張方塊圖:一個標好名字的方塊,一支箭頭進去、一支箭頭出來。
x(t) y(t)
input signal +----------------+ output signal
----------------> | SYSTEM | ---------------->
(e.g. mic | (e.g. an | (e.g. a louder,
voltage) | amplifier) | cleaner wave)
+----------------+
y(t) = T{ x(t) } "the system T acts on x to make y"把訊號分類:四個重要的區別
在我們提出聰明的問題之前,得先把訊號分成幾個家族,因為每個家族需要不同的工具。四個區別撐起了大部分的重量,而其中第一個,幾乎決定了後面所有的事。
- 連續時間與離散時間。連續時間訊號 x(t) 在*每一個*瞬間都有值——一條平滑不斷的曲線,就像真實的聲壓。離散時間訊號 x[n](注意方括號)只在整數步 n = 0, 1, 2, … 上存在,就像感測器每毫秒讀一次的數據。波動的真實世界是連續的;而電腦永遠只能儲存離散的那一種。
- 類比與數位。這是第一條的近親,但講的是*數值*而非*時間*。類比訊號可在某個範圍內取任何值(老式儀表的指針可以停在任何地方)。數位訊號則被量化成有限的幾個位準,通常就是位元——0 或 1。你的麥克風產生類比電壓;一個音訊檔案是數位的。連接兩者的橋樑是取樣,那是後面某一階的主角。
- 週期與非週期。週期訊號以固定的節拍永遠重複自己——插座送出的穩定 60 Hz 嗡嗡聲、一個純粹的樂音。它的週期 T 就是走完一個完整循環所需的時間。非週期訊號則從不精確重複:一個說出口的字、壓力下的一次心跳、一聲漸漸消逝的鼓擊。週期訊號分析起來出奇地容易,這正是我們如此倚重它們的原因。
- 能量與功率。一個短暫的爆發——相機閃光、一聲短促的「叮」——交付出有限的總*能量*,然後就沒了;我們稱它為能量訊號。一個永遠持續下去的訊號——那 60 Hz 的嗡嗡聲、一個無線電載波——總能量是無限的,但卻有明確定義的平均*功率*;我們稱它為功率訊號。這個區別告訴你,該用哪一把尺去量「它有多大」。
樂高積木:四個基本訊號
接下來這一步,是讓整個學科*運轉起來*的關鍵。我們不去硬碰硬地對付每一個亂七八糟的真實波形,而是手邊備著一小盒漂亮又簡單的訊號——然後用這些簡單訊號的副本堆疊出任何複雜的訊號。掌握四塊積木,學習軌的其餘部分就變成一場組裝遊戲。
UNIT IMPULSE δ(t) UNIT STEP u(t) SINUSOID cos(2πf t) EXPONENTIAL e^(-t/τ)
| ____________ /\ /\ |
| (spike of | / \ / \ | \
___|___ area 1) _____| ____/____\__/____\___ ___|__ \______
0 t 0 t \ / \ / 0 \___ t
"a single tap" "switch turns ON" "a pure tone, one freq" "a smooth decay"- 單位脈衝 δ(t)——一次理想化的瞬間拍擊:除了 t = 0 處一根無限細的尖峰外,處處為零,總面積為 1。想像把一口鐘敲一下。它極端得不像是真的,卻原來是整個學科裡最重要的單一訊號——下一階就會讓你看到為什麼。
- 單位步階 u(t)——一個在 t = 0 時從 0 翻到 1 並保持開啟的開關。每當你插上某個東西、或按下電源鍵,你就施加了一個步階。觀察系統對步階的反應——它的步階響應——是工程師日常測試一個東西是平穩安定、還是會震盪過衝的方法。
- 正弦波 cos(2πf t)——單一頻率 f 的純音。這個不起眼的波是本學科幕後的王者:一個深刻的結果(你會以傅立葉的形式遇見它)說,*任何*訊號,無論多麼鋸齒崎嶇,都不過是不同頻率正弦波的總和。把一個訊號拆解成它的各個音調,它大部分的神祕就煙消雲散了。
- 指數 e^(−t/τ)——由時間常數 τ 決定的平滑上升或衰減。一個充電中的電容、一杯逐漸冷卻的咖啡、一道漸弱的回聲:大自然幾乎處處以指數方式鬆弛。把指數和正弦波結合起來,你就能描述會增長、會縮小、會震盪的波——也就是真實電路如何反應的完整語彙。
整個學習軌要回答的那一個問題
把兩半拼起來——訊號送進去、系統在中間——一個問題便亮了起來,而這整個學習軌存在的目的,就是回答它:**給定一個系統,當我餵進*任何*輸入時,它會如何反應?**如果我知道答案,我就能精準預測喇叭發出的聲音、設計一台永不過衝的恆溫器,或打造一個濾掉嗡嗡聲卻留下音樂的濾波器。這聽起來野心大得不切實際。令人屏息的好消息是:對於一大類既龐大又實用的系統,答案是*可以,而且完全可以*。
那個黃金家族就是線性非時變(LTI)系統。*線性*意味著把輸入加倍、輸出也加倍,而且各個輸入會相加卻互不干擾——所以只要你知道系統如何對待簡單的積木,你就知道它如何對待任何一堆積木。*非時變*意味著系統今天和明天的行為一模一樣;把輸入延後,輸出也只是跟著延後。你會遇到的大多數放大器、濾波器與電路,都極佳地近似為 LTI,這正是我們對它們如此著迷的原因。