騎在吶喊上的耳語
想像第 2 篇把你留在的那個位置。一座惠斯通電橋以比方說 10 V 激勵,一顆荷重元讓它的臂略微應變。滿載時,電橋交給你的,是兩個輸出角之間僅約 20 mV 的差值——一聲不折不扣的耳語。麻煩在於這聲耳語坐在什麼之上。那兩個角各自徘徊在 5 V 附近、也就是激勵的一半,因為每一個都是跨在 10 V 上的分壓器中點。於是兩條線各帶著約 5 V 它們所共有的電壓,而你珍貴的 20 mV 差值就棲在頂上。更糟的是,兩條線並肩穿過一個喧鬧的世界,撿到同一份 50/60 Hz 的電源哼聲,同樣由兩者均等地共有。這正是訊號調理的核心:資訊完全活在兩條線的差值裡,而它們共有的一切都該被丟棄。
這就是為什麼你不能只抓電橋的一個角、餵給一個對接地參考的非反相放大器。這樣的單端放大器會忠實地放大那整個 5 V 的靜止電壓與全部的哼聲,把你真正想要的 20 mV 淹沒在百倍多的垃圾之下。你需要的是一個有兩個輸入、會算出它們之間差值、並只放大那個差值的放大器——一個差動放大器。先相減、再放大:那 5 V 的共有靜止電壓因為在兩個輸入上完全相同而抵消,共有的哼聲基於同樣的理由也抵消,而 20 mV 的差值存活下來、被放大。
共模拒斥:那個最要緊的數字
沒有真實放大器會完全忽視共模部分。它有一個很大的差模增益 Ad(我們要的增益),與一個微小、不請自來的共模增益 Acm(我們不要的漏洩)。比較兩者的優劣指標就是共模拒斥比(CMRR):比值 Ad / Acm,幾乎總是以分貝標示為 CMRR(dB) = 20 times log10(Ad / Acm)。數字越大,表示放大器越擅長把你的訊號和共有的爛泥分開。一顆便宜運放大概只有 80 dB;一顆好的儀表放大器可達 100 到 120 dB,意思是它放大差值的熱切程度,是放大共模的十萬到一百萬倍。
在我們的荷重元電橋上具體算算,以增益 Ad = 100 放大。5 V 的共模中軌會以 Acm times 5 V 漏到輸出。當 CMRR = 100 dB,比值是 10^5,所以 Acm = Ad / 10^5 = 100 / 100000 = 0.001,輸出端的漏洩是 0.001 times 5 V = 5 mV。折算回輸入只有 5 mV / 100 = 50 uV 的誤差,對上一個 20 mV 的訊號——不到千分之三,可以接受。現在想像一個只有 60 dB CMRR(比值 1000)的放大器:Acm 跳到 100 / 1000 = 0.1,同樣的 5 V 共模便把 0.1 times 5 V = 0.5 V 直接倒上輸出,用 25% 的誤差淹沒那 2 V 的真實訊號。同一個電路、同一座電橋——只有 CMRR 變了,而它決定了這次量測能不能用。
為什麼一顆運放不夠
在運放那一階,你用一顆運算放大器和四個電阻搭過一個差動放大器:訊號從兩個輸入進來,兩個電阻定下增益 G = R2/R1,若四個電阻完美匹配,共模便抵消、Vout = G times (V+ 減 V-)。它優雅又便宜,對一個硬挺、低阻抗的訊號源恰恰好。但直接掛到一座感測器電橋上,它有兩個嚴重到足以出局的缺陷。
第一個缺陷是負載。在那個單運放電路裡,電橋面對的不是運放近乎無限大的閘極,而是那個電阻網路,所以每個輸入只呈現一個不大、有限的輸入阻抗——而且對差動放大器而言令人懊惱的是,兩個輸入呈現的甚至不是相同的阻抗。把它接上電橋因此會從電橋的角抽取電流,又因為兩個角受到不相等的負載,它其實會讓你正想讀取的那座電橋失衡。這就是前面幾階的負載效應,咬在最糟糕的位置上。
第二個缺陷是,它的 CMRR 完全仰賴那四個電阻匹配得多好。一個方便的估計是 CMRR 約為 (1 加 G) / (4 times t),t 是電阻的分數容差。用普通的 0.1% 電阻在單位增益下搭起來,你只得到約 2 / 0.004 = 500,區區 54 dB——正是上一節那場 25% 誤差的災難。要推過 100 dB,會要求電阻匹配到百萬分之幾,而且即使如此,改變增益還是得把四個電阻重新匹配。解方是別再仰賴手工匹配的電阻,讓一顆晶片來做——那正是儀表放大器。
儀表放大器:三顆運放,做對它
儀表放大器(in-amp)同時修好兩個缺陷,方法是在差動放大器前、每一個輸入上各放一個緩衝器。每條感測器線都直接進入自己那顆運放的高阻抗非反相輸入,所以儀表放大器幾乎不從電橋抽取電流——負載問題就此消失,而且因為兩個輸入級完全相同,它們對電橋的負載也相等。這兩個輸入緩衝器餵向後端一顆做實際相減的單運放差動放大器,其中對 CMRR 關鍵的電阻是在矽晶上以雷射修整的,遠超你手工所能匹配。
THREE-OP-AMP INSTRUMENTATION AMPLIFIER
IN+ o-->[+ \ R R
| A1 >--+-------[R]--+----WWW--+--WWW--+
+[- / | | | |
| | (Va) | \ |
[Rg] <-- ONE resistor | A3 >-+--o OUT
| sets the gain +----| / |
+[- \ | | | + |
| A2 >--+-------[R]--+----WWW | REF
IN- o-->[+ / R +--WWW--+
R (tied to REF)
Stage 1 (A1, A2): matched buffers, NO bridge loading
differential gain = 1 + 2R/Rg
Stage 2 (A3): unity difference amp, kills the common-mode
Overall: Vout - VREF = (1 + 2R/Rg) x (V+ - V-)最漂亮的地方在這。整個增益由一個外接電阻 Rg 設定,它接在兩個輸入緩衝器之間,遵循 G = 1 加 2R/Rg,R 是那一對相等的內部回授電阻。關鍵在於,Rg 只坐在差模路徑上——它對共模毫無作用,而共模由兩個緩衝器以單位增益放過、留待稍後抵消。於是你用單一電阻就能調出任意增益,完全不必碰那個匹配網路,CMRR 也保持完好。一顆便宜電阻控制增益;那個昂貴、細心修整的部分毫髮無傷。這個乾淨的分工,正是儀表放大器存在的全部理由。
- 找出第 2 篇來的滿量程訊號。我們的荷重元額定 2 mV/V,以 10 V 激勵運作,所以滿載在兩角間給出 2 mV/V times 10 V = 20 mV 的差模。
- 決定下一級想要的輸出擺幅。要餵給一個輸入範圍約 0 到 2.5 V 的轉換器,目標放在約 2 V 滿量程以留餘裕。你需要的增益是 G = 2 V / 20 mV = 100。
- 解出 Rg。以常見的內部網路 2R = 49.4 k,令 G = 1 + 2R/Rg = 100,所以 Rg = 49.4 k / (100 - 1) = 49.4 k / 99 = 499 ohm——一個標準的 1% 阻值,不需要匹配。
- 檢查你還剩多少頻寬。增益與頻寬透過增益頻寬積彼此消長,所以在 G = 100 時,可用頻寬約是零件的增益頻寬除以 100——對慢吞吞的荷重元綽綽有餘,但若你哪天同時需要高增益與高速,這便是個警訊。
把它放進真實的前端
注意圖裡的 REF 腳:儀表放大器的輸出是相對於 REF 量測的,不是相對於接地。這是個悄悄的禮物。在單電源上運作時,你放大後的訊號本會想為了負讀數而擺到 0 V 以下、然後被削掉。改把 REF 接到一個乾淨的中軌參考,整個輸出便浮升到那一點附近,於是它能在電軌內向兩邊擺。這就是你手上零件免費做好的準位平移——而把訊號為轉換器預先就位,連同任何取樣前都必須跟上的抗混疊濾波器,正是第 4 篇的工作。
尊重儀表放大器真實的限制,它們全住在規格書裡。共模輸入範圍必須真的容得下你的 Vcm——我們那 5 V 的中軌得舒舒服服地坐在兩條電軌之間,否則輸入緩衝器會飽和、拒斥能力崩潰。增益誤差與增益漂移(內部的 R 和你的 Rg 從不完美,且會隨溫度遊走)意味著你調出的 100,其實是 100 上下差個零點幾個百分點。而正如上一節所警告,CMRR 會隨頻率下垂。這些都不是該大驚小怪的瑕疵;它們是你要編進預算的數字,就像運放那一階為失調與偏壓編預算的那套紀律。
以這整階反覆回到的那個誠實框架作結。一個值得知道的訣竅是比例式量測:用同一個電源供應電橋與轉換器的參考,那麼激勵的任何漂移都會在比值裡抵消,於是電源 5% 的搖晃不會變成 5% 的誤差。但最深的真相是這個——最終那個數字的準確度,由感測器與這條調理鏈決定,而非把它數位化的那顆ADC。一顆 24 位元的轉換器,救不回一個早已被糟糕 CMRR、不平衡的負載或增益漂移埋掉的訊號。把你的心力花在這裡、花在前端;這一點,加上第 5 篇的校正,才真正決定你能不能信任這個讀數。