武永華,董建懷
(福建江夏學院 電子信息科學學院,福建福州,350108)
在通信等系統中,由于通信環境或元器件參數等原因,前級輸入信號的幅度可能大小不一、變化范圍大。如果本級放大器采用固定增益,則當輸入信號大時會造成后級信道飽和或阻塞,甚至損壞設備,如果輸入信號小時則有可能導致信號的丟失[1]。為了保證信號的有效傳輸和利用,需要一種能實時地根據輸入信號大小自動地調整放大器增益從而使信號幅值保持穩定的電子系統[2]。這種電子系統除了應用于通信系統外,在測量、自動化等領域也有著廣泛的應用[3~5]。目前,實現信號自動增益控制主要有兩種方法,一種是利用電子元器件的非線性特性設計的自動增益控制電路,另一種是采用軟硬件相結合方法設計的自動增益控制系統。自動增益控制電路雖然成本較低,但其輸出信號的幅值一般是固定的、無法改變[6~8],現有的自動增益控制系統大多存在成本高、控制精度低等問題[9],基于此,本文設計一種基于幅值跟蹤電路的實用的自動增益控制系統。
系統的結構框圖如圖1 所示,其主要由單片機、增益可控放大器、幅值跟蹤電路、按鍵和LCD 組成。增益可控放大器是一個由運放和反饋電阻等構成的放大電路,其中的反饋電阻由阻值受單片機控制的數字電位器承擔。幅值跟蹤電路負責將放大后信號的幅值轉換成電平信號,單片機通過對該電平信號進行A/D 轉換即可獲得放大后信號的幅值。輸出信號的期望幅值可通過按鍵設置或更改,LCD 用來實時顯示當前信號幅度的設置值和實際值。

圖1 自動增益控制系統結構圖
工作中,系統將實際幅值與預置幅值實時地相比較,若實際幅值大于預置幅值則單片機發出相應的控制信號來減少放大器中反饋電阻的阻值即減少增益,反之單片機則使反饋電阻增大即增大增益,從而實現放大器增益的自動控制。由于系統對放大器增益的控制是閉環的,所以在輸入信號幅度發生變化時能確保輸出信號的實際幅值與預置幅值相等。
增益可控放大器的電原理圖如圖2 所示,它由兩級放大電路和一個電壓跟隨器組成。第一級是由增益帶寬積(GBW)為10MHz 的運放NE5532(U1A)和數字電位器X9C103[10](U2)構成的增益可控的反相放大電路,第二級是由U1B和R2、R3 構成的放大倍數為1 的反相放大電路,后者的作用是確保輸出信號與輸入信號相位相同。由U3A 構成的電壓跟隨器主要是用來隔離后續的負載及幅值跟蹤電路對放大器的影響。

圖2 可變增益放大器電原理圖
第一級放大電路中的反饋電阻Rf由X9C103 的VL和VW引腳間所呈現的電阻實現。數字電位器的內部結構圖如圖3 所示,VL和VH引腳間的阻值為10k,它是由99 個阻值相同(約101)的電阻串聯而成的。VW相當于電位器的滑動端,引腳VW與VL間所呈現的電阻大小是由引腳和的電平決定的,X9C103 具體的工作模式選擇如表1 所示。

表1 X9C103工作模式選擇

圖3 X9C103 內部結構圖
電壓跟隨器的輸出分兩路,一路是系統的輸出信號Vout,另一路輸入到幅值跟蹤電路。
幅值跟蹤電路的作用是將輸入信號的幅值實時地以電平大小的形式反映出來,這樣,單片機只要檢測該電平的大小就可獲取當前輸入信號的幅值。幅值跟蹤電路原理圖如圖4 所示,該電路由漏極開路比較器TLC372、積分電路、無源低通濾波器以及電壓跟隨器等構成,其中積分電路由運放LM358、R4、C1 和R5 組成;無源低通濾波器由R6、C2構成,截止頻率為,其用來濾除積分器輸出信號中的開關噪聲和紋波。低通濾波器輸出的信號經由LM358 構成的電壓跟隨器隔離后輸入到單片機內的A/D 轉換器進行模數轉換。

圖4 幅值跟蹤電路原理圖
圖5、圖6 是輸入信號頻率為10kHz、幅值為3.5V 時的幅值跟蹤電路不同時段的工作時序圖。從圖5 可以看出,當VF1大于VF3時,VF2為-5V,此時電容C1 通過R4 充電,VF3 的電位升高;當VF1 小于VF3 時,由于TCL372 的輸出級(漏級)是開路的且LM358 輸入阻抗很大,所以電容C1 只能通過R5 放電,由于R5 的阻值較大,所以R5 放電緩慢,此時VF3 的電位基本保持不變。這樣,經過多個信號周期后VF3 的電平就接近輸入信號的幅值。從圖5 還可以看出,當VF3 越接近輸入信號幅值時,VF2 為-5V 的時間就越短,即電容C1 充電的時間就越短。

圖5 0ms~3ms 間工作時序圖

圖6 50ms~53ms 間工作時序圖
從圖6 可以看出,經過一段時間后VF3 和VF4 都等于VF1,即峰值檢測電路的輸出電平等于當前輸入信號的幅值。另外,此時VF2 為-5V 的時間相當短,這段短時間的充電是為了彌補電容放電所造成的電平降低,使峰值電路輸出的電平動態地與當前信號的幅值保持相等。
需要提出的是,圖5 是幅值跟蹤電路剛啟動(即輸入幅值從0 跳變到3.5V)時的工作情況,由于實際輸入信號幅值一般不會發生大的跳變,所以該電路能在較短的時間內使輸出的電平等于輸入信號的幅值。同理,當輸入信號的幅值降低時,電容C1 通過R5 放電,使輸出的電平接近于信號幅值。
設計中,單片機采用片內含有10 位ADC 的ATMEGA16單片機,系統控制流程圖如圖7 所示。數字電位器X9C103剛上電時VW與VL間的電阻為0,為了使初始時其滑動端VW盡快達到指定位置,初始化時將其置于中間位置。程序中,預置幅值 Vpre是通過調用按鍵子程序實現的,當前輸出信號幅值 Vout是通過對幅值跟蹤電路的輸出電平進行A/D 轉換得到的,增大阻值和減小阻值分別通過調用相應的子程序實現。

圖7 系統控制流程圖
由于數字電位器X9C103 的輸出電阻(即VW與VL間電阻)是不連續的,是由99 個約101電阻串聯而成的,所以程序運行時滑動端VW可能在前后兩個位置間不斷跳躍。這種增益的反復跳變不僅會使輸出信號不穩定,還會使輸出信號中疊加上相應的高頻噪聲,為了解決這一問題,設計中引入一個閾值VΔ,且采用如下的控制策略:當輸出信號的幅值Vout在Vpre-V與Vpre+V之間時放大器增益保持不變,從而確保輸出波形的穩定。應用中可根據需要選擇合適的閾值VΔ。
測試中,所用的信號發生器型號為UTG7025B,示波器型號為DSO-X-2002A。輸入信號頻率為1kHz 和10kHz時的測試結果分別如表2、表3 所示,表中響應時間指的是輸入信號發生變化開始到信號輸出穩定時所經過的時間,輸出誤差指的是實際輸出幅值與預置幅值間的相對誤差即。從這兩個表可以看出,頻率和幅度變化時,系統輸出信號的幅值總是近似等于預置值,輸出誤差小于1.5%,響應時間小于0.1s,這說明系統可以根據輸入信號的大小快速地自動調整放大器的增益,使輸出幅值與預置幅值基本相同。

表2 信號頻率為1kHz時的測試結果

表3 信號頻率為10kHz時的測試結果
本文設計了一種基于幅值跟蹤電路的實用的自動增益控制系統,在輸入信號幅值變化時系統輸出信號的幅值都能與預置的幅值基本相同,實現了放大器增益的自動控制。該設計具有智能化高、輸出信號穩定,收斂速度快、成本低、性能可靠等特點,可廣泛應用于相關的電子領域中。設計通頻帶更寬的幅值跟蹤電路并采用寬帶可控增益放大器可進一步拓展系統的適用范圍,是類似系統設計的一個方向。