“如何用麥克風捕捉遠距離的聲音信號,同時保持設計的簡潔。”
原文轉載自:https://lcamtuf.substack.com/p/building-a-decent-microphone-amplifier
我們的目標是建立高保真麥克風電路,能夠忠實地拾取大自然的聲音、現場音樂表演或房間里的對話。這項任務比表面看起來更棘手,因為就像視力一樣,我們不知道自己聽力的動態范圍有多大。一個人站在八英尺外說話,麥克風讀數很容易就會比他站在你身邊時弱 20-50 倍。在電子電路中,由此產生的微弱信號很容易被各種電子噪聲淹沒。
麥克風陣列、拋物面反射器和復雜的數字處理等熟悉的技術可能有助于解決一些信號問題,但一個好的麥克風和一個精心設計的放大器通常是最好的起點。
了解麥克風的靈敏度
讓我們從一個看似簡單的問題開始:如何測量聲音強度?通常的答案是 “分貝”,但分貝并不是單位;而是對數(以10為底)刻度上的間隔。通俗地說,分貝的變化告訴我們聲音功率的變化倍數,例如,±1分貝表示聲音功率變化了大約1.26倍。;它并沒有告訴我們所測量現象的性質,也沒有解釋刻度的零點。
對于聲音來說,實際測量的是聲波沖擊耳朵的壓力;其單位是帕斯卡(一個很小的 SI 單位,相當于 ~0.000145 psi)。此外,在該標尺上,“零分貝” 并不對應于完全靜音,而是對應于施加 20 μPa 壓力的 1 kHz 聲波。之所以選擇這個值,是因為它大致相當于人類聽力的閾值。從這個原點出發,我們得出了兩種不同的分貝聲級:dB SPL,用于測量標稱聲壓,不考慮頻率;dBA,用于測量頻率加權,以接近人類聽力--即在低于 200 Hz 和高于 10 kHz 時急劇減弱。
如果麥克風的性能以聽覺閾值為標準,那很符合邏輯了。但實際上它是在另一個任意點上定義的,這個點的聲音強度大約是聽覺閾值的50,000倍,即94分貝, 或 1 kHz 時的 1 Pa。這大致相當于操作一個汽油驅動的割草機或站在繁忙的高速公路旁的聲音水平。一個理想中的麥克風在這樣的條件下如果顯示出1伏特(RMS)的輸出波動,那么它的靈敏度就是0 dBV(這是第三種不同的以分貝為單位的刻度)。實際上,便宜的駐極體電容麥克風的靈敏度遠達不到這個數值;常見的靈敏度值是-45 dBV,這意味著割草機引起的電壓波動大約是6毫伏。
除了搖滾音樂會和建筑工地,我們想要捕捉的大多數聲音都沒有那么響亮;普通室內聲音約為 40-50 dBA,耳語聲音約為 30 dBA,自然環境聲音徘徊在 20 dBA 左右。換句話說,在許多應用中,麥克風的輸出只有微伏級別--如果我們一開始使用的是低質量麥克風,那么再怎么放大也無濟于事。為了說明這個問題,我拍攝了以下演示片段:
為了區分不同麥克風的性能,我們可以參考一個稱為等效輸入噪聲(EIN)的參數:這是一個假設噪聲源的響度,如果將其放在無瑕疵麥克風旁邊,會產生與實際設備中相同的嘶嘶聲。換句話說,EIN 代表麥克風的噪聲底線,比它更小的聲音或多或少會被淹沒。
數據手冊中并不總是給出 EIN 值,但可以從更可靠的信噪比(SNR)數據中推導出來。信噪比是前面提到的 94 dBA(“割草機”)參考點與本底噪聲之間的空間。轉換簡單明了:EIN = 94 dBA - SNR。
回到示例中:在參考錄音之后,第一個使用的麥克風是 CUI CMA-6542PF,一個信噪比為 60 dBA(EIN = 34 dBA)的麥克風,大概 0.5 美元。如果您在互聯網上購買普通駐極體麥克風,基本上就是這種。第二個麥克風- PUI Audio AOM-5024L-HD-R,外觀相同,售價 為3.50 美元,信噪比為 80 dBA(EIN = 14 dBA)。
顯而易見,如果您正在設計耳機或對講機,第一個麥克風是非常合理的選擇;但在遠場(遠距離)應用中,高信噪比麥克風會帶來巨大的不同,您應該多花一兩美元,而不是試圖在后期解決問題。
選擇合適的運算放大器
在高保真音頻應用中,麥克風的放大幾乎都是通過運算放大器來實現的;這種器件具有線性、增益可調、頻率響應可預測、器件數量少和成本低等優點。
與選擇麥克風相比,運算放大器的選擇并不那么重要。電路中的大部分噪聲將來自麥克風;其余幾乎全部是用于設置增益的反饋電阻的熱噪聲,如果電路屏蔽不好,還會產生射頻干擾 (RFI)。至于放大器,只要不采用過時或明顯不合適的設計,高端型號和低端型號的運算放大器在聽覺上應該沒有差別。比如具有 3 nV/√Hz 噪聲和 0.00005% 總諧波失真的高端型號與只能勉強達到 10 nV/√Hz 和 0.001% THD+N 的低端型號之間差別不大(不用擔心行話,我只是想說明一點)。在評估從錄音室到消費者手中的每一臺放大器的累積效果時,這些參數很重要。但刻意選擇一款糟糕的芯片是沒有意義的,也沒有必要為發燒級 IC 支付過高的費用。
在選擇運算放大器時,重要的是其增益帶寬積(unity gain bandwidth),這是一個重要的限制因素。雖然人耳可聽到的頻率只延伸到大約20 kHz,但運算放大器的帶寬必須與所需的放大比例成比例地降低。我們稍后將討論精確的計算公式。對于單級設計,一個經驗法則是至少瞄準10 MHz的帶寬。如果使用的是增益較低的多級放大,或者對較高的頻率不感興趣(例如,在處理家庭自動化設備中的語音命令時),帶寬較低也沒關系。
其余考慮因素包括電源電壓、輸出電流容量、軌至軌輸出或壓擺率。這些都是相當標準的,應根據具體應用進行選擇。對于大多數耳機來說,大約50 mA的輸出應該足夠了;大約1毫安的電流足以驅動便攜式錄音機和桌面電腦的“線路輸入”信號。
在本文的大部分原理圖中,使用的是 OPA1656 - 德州儀器公司提供的一款相當出色的放大器。盡管如此,之所以選擇該芯片,并不僅僅因為其出色的噪聲或帶寬規格,還因為其合理的成本(每個運算放大器約 1.25 美元)。其他在相同價位上的合理選擇包括MAX4232、OPA2322和OPA2323。
電路結構初稿
互聯網上發布的許多業余麥克風放大器電路都過于復雜,這通常是因為它們依賴于過時的器件和陳舊的設計范式。如果麥克風可以靠近放大器,最簡單的設計就是單電源、單端跨阻抗放大器(TIA)--這種電路基本上是將流經麥克風的電流直接轉換為輸出電壓:
駐極體麥克風可以被視為一個由聲音控制的電流調制設備。它由一個帶電的振膜和一個場效應晶體管(FET)的柵極相連組成,因此其阻抗會隨著聲波的變化而變化。在這個電路中,流過麥克風的電流可以通過 4.7 kΩ 電阻器產生;同時交流電流也可以很容易地流過 2.2 μF 電容。該電容可阻擋直流電,但對交流電的阻抗較低。
在穩態下,運算放大器會達到 Vout = Vin- = Vin+ = Vdd / 2 附近的平衡。場效應晶體管電導率的瞬態變化會打破這種平衡,導致瞬間電流通過 2.2 μF 電容,并使運算放大器反相腳的電壓失調。當這種情況發生時,運算放大器的輸出就會向相反的方向擺動--為了恢復平衡,它需要擺動得足夠大,使通過反饋電阻器 (Rf) 的電流與流過輸入電容器的電流相匹配。實際上,電路就像一個電流-電壓放大器,其增益等于 Rf 的值(歐姆)。
跨阻放大器帶寬
在前面關于信號放大的文章中,我們談到了電壓-電壓放大器。在電壓-電壓放大器中,通過將輸出信號的幅度降低并反饋到集成電路(IC)的負輸入端來實現閉環信號放大。這會導致輸出信號上的微小電壓變化(這些變化是反饋控制機制的一部分)被衰減。這些微小的電壓變化是放大器唯一放大的內容,減少它們的幅度相當于減少芯片的內部增益,最終可能使增益低于1。
跨阻放大器在低頻率時理論上具有無限的增益。如果輸入端連接到一個純電流源,一旦通過反饋電阻Rf的電流足夠,就沒有什么能進一步衰減反饋環中的控制微調。無論Rf是10 kΩ還是1 MΩ,電壓都能通過。
實際上,電阻自身有一定的電容(在飛法拉范圍內),但更重要的是,輸入端幾乎總是存在較大的并聯(旁路)電容。即使只有10皮法(pF),這個寄生電容在足夠高的正弦波頻率下會變成低阻抗路徑。這時,它開始減少反饋環中的電壓,就像在電壓-電壓放大器中一樣,導致放大器最終失去內部增益。
換句話說,TIA 的帶寬仍會根據配置的放大比率按比例減小,但最大截止頻率的計算公式有所不同。此外,跨阻放大器通常比電壓-電壓放大器有更強的速度優勢。
其中是運算放大器的增益帶寬積(從規格書中獲得),是輸入端的并聯(旁路)電容,包括運算放大器的寄生電容。在駐極體麥克風電路中,輸入電容通常非常小,因此一個增益帶寬積為10 MHz的運算放大器即使在Rf值接近1 MΩ時也能提供超過100 kHz的可用帶寬。
改善設計
這種基本電路可以工作,但有一些局限性。最主要的問題是它傾向于放大電源紋波和存在于高阻抗Vin+腿上的射頻干擾(RFI)。在電池應用中,為了節省電能,分壓器的電阻值越高,干擾就越明顯;100 kΩ 比 10 kΩ 的干擾要嚴重得多。這些問題可以通過在非反相腳上添加一個去耦電容器來緩解,以 “緩沖” 電壓,減少抖動。
麥克風引線和 PCB 線路也會產生無線電干擾,反饋電阻 (Rf) 也會產生一些寬帶熱噪聲。這些信號的大部分能量都在人耳可聽頻率之外,但由于電路中的各種特殊情況非線性,它們可能表現為嘶嘶聲或尖叫聲。最簡單的解決方案是在反饋電阻器上并聯一個低通電容,選擇性地降低高頻增益。電容的阻尼作用還能降低因 Cin 而產生振鈴的可能性,盡管在這種特殊電路中,輸入電容的阻尼很小。
允許給定fpass頻率在沒有顯著衰減的情況下被放大的最大反饋電容值由以下公式給出:
在我們的電路中,2 至 20 pF 左右通常是一個很好的起點,具體取決于 Rf 的值。接近 100-300 pF 的電容會產生相當明顯的低通效應,使音頻變悶。這就好比將音頻設備上的 “高音” 設置到盡可能低的值,或者用紙箱蒙住頭來聽。這對語音來說是個明智的選擇,因為語音的頻率不會超過 4 kHz,但對莫扎特或巴赫來說就不一定了。
最后一項調整是在輸出腳上加入一個相對較小的電阻器;在大多數情況下,大約 47-100 Ω 的電阻就足夠了。電阻限制了運算放大器的峰值電流,從而減少了電路連接電容或電感負載時反饋信號的失真:
還可以使用多階段低通濾波器進一步改進;例如MAX291,這種濾波器可以在不顯著影響低頻信號的情況下,進一步減少麥克風的噪聲(嘶嘶聲)。
一些麥克風電路還包含一個可選的高通濾波器,其截止頻率大約在100-150赫茲。高通濾波器的作用是允許高頻信號通過,同時阻止低頻信號。這樣做雖然可能會降低聲音的保真度,但可以減少戶外環境中風的低頻隆隆聲(rumbling wind noise)。
哎喲!我的耳朵
上圖中的電路 R1 約為 470 kΩ,并配有高 SNR 麥克風,可為佩戴者提供超人的聽力:該設備可接收其他房間的談話聲和腳步聲,并能極大地放大自己的呼吸聲或肢體動作聲;如果加上拋物面反射器,效果會更加顯著。反過來說,這種裝置太容易被正常聲音過度驅動;僅僅敲擊工作臺就會發出震耳欲聾的噪聲。
解決這一問題的最簡單方法是用電位器取代反饋電阻器;調節范圍約為 10 kΩ 至 500 kΩ,足以滿足大多數需求。這種手動增益控制方法效果很好,是專業音響的首選,但如果音量隨時間不斷波動,這種方法可能會很麻煩。同樣重要的是,如果用耳機監聽現場音頻,這種方法無法防止意外的巨響。我不建議這樣做,但如果你想試試耳機,一定要非常小心,或者做好承受痛苦的準備。
更復雜的解決方案是自動增益控制 (AGC):一種監測輸出信號幅度的方法,然后迅速調整電阻,將音頻保持在所需的范圍內。監測部分相當簡單,一種可能的方法是:
每當輸入信號達到正峰值時,電容就會通過輸入電阻和肖特基二極管充電,從而導致輸出電壓上升;如果沒有高于電容當前電壓的峰值,電荷就會通過右側相對較大的電阻緩慢耗散。可以選擇電阻和電容來平衡電路的響應時間。
AGC 電路的第二部分--壓控電阻器--這部分比較難以構建。一些早期的解決方案依賴于放置在光敏電阻旁邊的燈泡或發光二極管。另一種直接的方法是使用場效應晶體管,但通常需要另一個運算放大器來實現反饋,并保持一定的線性度。
如今,模擬技術在很大程度上已不再受青睞:更常見的做法是采用配備 ADC 的微控制器對輸出信號進行持續采樣,根據軟件定義的標準檢測過載情況,然后與 MCP4131 等器件進行通信。MCP4131 是一款價值 0.90 美元的 SPI 控制數字電位器,可提供 128 種電阻設置。這種設計還允許在自動和手動增益之間無縫切換,或定制對不同類型噪聲的響應。
基于數字電位器的 AGC 結構略微簡化如下:
為了便于閱讀,我省略了三個芯片的電源電壓和去耦電容,以及 OPA2322 的“+”引腳的分壓器。
在新設計中,運算放大器集成電路的前半部分為駐極體麥克風提供固定的(相對適中的)電流電壓放大比,而后半部分則實現了由 MCU 控制的可變增益電壓放大器。由于每級涉及的反饋電阻較小,因此低通電容器按比例增大。
下圖所示為該電路的組裝版,采用了經濟實惠的 AVR64DD32 微控制器:
該項目的源代碼和用于制造的 PCB 文件可在此處找到:
https://lcamtuf.coredump.cx/soft/embedded/dogomatic.tgz
元件數量還可以進一步減少。例如,有一種可編程增益運算放大器(PGA),可在單個封裝中集成數字轉換器和放大器。最新的 AVR DB 系列微控制器就直接在微控制器芯片上封裝了一對 PGA,不過它們的規格似乎還不足以滿足高保真要求。
等等......你為什么要改用 OPA2322?
說得好!在本文的前幾個原理圖中,我使用的是 OPA1656 - 一種專為高保真音頻設計的出色、低成本放大器。在最后的 AGC 電路中,我用它的近親(引腳兼容)OPA2322(現已被 OPA2323 取代)取而代之。原因何在?
這要歸結于 OPA1656 的一個不起眼的設計特性。與其他一些低噪聲運算放大器類似,該集成電路的輸入引腳上也有一對保護二極管,如德州儀器公司提供的圖紙所示:
在正常情況下,運算放大器電路中負反饋回路的使用可確保兩個輸入電壓緊密跟蹤。但在某些情況下,比如啟動時或者猛烈撞擊麥克風時,兩個輸入電壓的差值可能會短暫地跳升到大約600毫伏以上,這足以使保護二極管導通。
在文章前面介紹的單放大器設計中,這種瞬時低電流短路不會造成任何問題。但在建議的兩級 AGC 電路中,可能會出現更嚴重的問題。在第 2 級放大器輸入端之間流過的短暫電流會將共享的相對高阻抗 Vdd / 2 線路拉高或拉低,從而反向反饋到第 1 級。出現這種情況時,第 1 級的輸出會突然向同一方向偏移,從而擴大第 2 級輸入端的電壓差,形成正反饋回路。
解決這個問題的方法有很多,不一定需要放棄使用OPA1656。最簡單的解決方案是為每個放大器設置獨立的Vdd / 2電壓分壓器。但作者在設計PCB之后才發現這個問題,因此選擇一個現成的、沒有這個問題的集成電路也是一個合理的選擇。
注意:如果想第一時間收到 KiCad 內容推送,請點擊下方的名片,按關注,再設為星標。
常用合集匯總:
和 Dr Peter 一起學 KiCad
KiCad 8 探秘合集
KiCad 使用經驗分享
KiCad 設計項目(Made with KiCad)
常見問題與解決方法
KiCad 開發筆記
插件應用
發布記錄
審核編輯 黃宇
-
放大器
+關注
關注
143文章
13634瀏覽量
214217
發布評論請先 登錄
相關推薦
評論