李德明, 胡君輝
(廣西師范大學(xué) 物理科學(xué)與技術(shù)學(xué)院, 廣西 桂林 541004)
脈沖信號參數(shù)測量儀可以測量脈沖信號頻率、幅度、占空比、上升時間等參數(shù)[1]。為了滿足應(yīng)用需求,本文設(shè)計了一種脈沖信號參數(shù)測量系統(tǒng),采用FPGA為主控制器,實現(xiàn)測量精度高、多參數(shù)測量、數(shù)字化顯示、便攜式的脈沖信號測量儀。
采用FPGA作為主控制器,充分利用FPGA運行速度快、并行運算處理的特點,實現(xiàn)高速A/D采集、數(shù)據(jù)存儲、邏輯控制等功能[2]。再結(jié)合單片機在數(shù)據(jù)處理、控制靈活方面的優(yōu)勢,由單片機讀取FPGA的測量數(shù)據(jù)進行處理,并在LCD1602液晶模塊顯示結(jié)果。
系統(tǒng)設(shè)計框圖見圖1。由于待測信號的幅度會受到擾動,且有可能幅度太大會損壞器件,從而影響測量,所以系統(tǒng)中對輸入信號分兩路進行處理。一路經(jīng)過緩沖衰減電路后通過AGC(增益自動控制)電路控制,輸出信號幅值穩(wěn)定在2 V左右,設(shè)置連接AGC電路輸出的兩路TLV3501高速比較器閾值電壓分別為AGC電路輸出電壓的10%和90%,將比較器的輸出信號送到FPGA中測量脈沖的頻率、占空比、上升時間[3];另外一路進入緩沖電路,通過放大、衰減、直通3種量程切換電路將脈沖信號轉(zhuǎn)換成合適的電壓幅值送入到AD9280模數(shù)轉(zhuǎn)換芯片,由FPGA控制采集實現(xiàn)脈沖信號幅度的精確測量,最后通過單片機從FPGA讀取測量參數(shù),經(jīng)過轉(zhuǎn)換處理后在LCD1602液晶模塊顯示測得數(shù)據(jù)。
校準測試需要用到矩形脈沖信號,通過FPGA設(shè)計脈沖信號發(fā)生器,由IO口輸出后經(jīng)放大電路增加驅(qū)動能力,輸出脈沖信號是能驅(qū)動負載電阻50 Ω、幅度為5 V的脈沖信號。
圖1 脈沖信號參數(shù)測量系統(tǒng)框圖
為了滿足AGC電路輸入信號電壓和輸入阻抗50 Ω的要求,采用THS3001芯片設(shè)計輸入緩沖衰減電路。該芯片是超高速電流負反饋運算放大器,具有轉(zhuǎn)換速率高、工作頻帶寬、供電范圍寬、輸出電流大特點,非常適合用于緩沖器、放大器等方面設(shè)計[4]。如圖2所示,THS3001構(gòu)成輸入緩沖器,R2/R3電阻構(gòu)成分壓衰減電路,將輸入信號經(jīng)過電阻匹配后輸出幅度為原信號的五分之一。
圖2 緩沖衰減電路原理圖
由于被測信號幅度變化范圍為0.1~10 V,不能直接輸入到FPGA進行測量,因此需要設(shè)計AGC自動增益控制電路,將被測信號幅度穩(wěn)定在合適范圍,然后供給后續(xù)比較器電路作為比較輸入信號,經(jīng)比較器輸出后再提供給FPGA進行脈沖信號的頻率、占空比、上升時間等參數(shù)測量。AGC電路模塊采用程控放大器AD603作為核心芯片,框圖如圖3所示。
圖3 AGC電路框圖
AGC電路原理圖如圖4所示。利用比較器和檢波電路構(gòu)成負反饋自動調(diào)節(jié)系統(tǒng),通過可變增益放大器AD603自動調(diào)節(jié)放大倍數(shù)。AD603依靠控制增益控制端電壓GPOS-GNEG控制放大倍數(shù);AD8561構(gòu)成比較器電路,比較輸入信號是第二級AD603輸出信號(IN+)和閾值電壓(IN-),使用二極管和RC電路對比較器輸出信號進行檢波,檢波的值(VG-)的范圍為0~3.3V,電路設(shè)置VG+為固定電壓值1.4 V,將檢波值作為AD603的VG-控制電壓,從而保證控制調(diào)節(jié)電壓((VG+)-(VG-))在AD603的控制電壓(-500 mV~500 mV)范圍內(nèi),確保AD603能正常工作。同時為了降低干擾,在后級連接高速放大器OPA690實現(xiàn)同向放大器,能起到緩沖作用,還能提高放大器的帶負載能力。
比較器的作用是將AGC電路輸出穩(wěn)定信號轉(zhuǎn)換成FPGA能夠識別的脈沖信號。利用比較器閾值為AGC輸出電壓90%那路輸出信號可以測量頻率和占空比。而為了測量上升時間需要將兩路比較電路閾值電壓分別設(shè)置為AGC的輸出電壓的10%和90%,產(chǎn)生的兩路方波信號同時輸入到FPGA中,利用FPGA計數(shù)測出兩路信號相位差就可以計算出上升時間。比較器電路原理見圖5。
圖4 AGC電路原理圖
圖5 比較器電路原理圖
測量脈沖信號幅度需要用到A/D轉(zhuǎn)換器件,該設(shè)計采用AD9280轉(zhuǎn)換芯片,AD9280是一款單通道、8位、32 MSPS模數(shù)轉(zhuǎn)換器,采用單電源供電,內(nèi)置一個片內(nèi)采樣保持放大器和基準電壓源。A/D采集電路原理見圖6。
圖6 A/D采集電路原理圖
系統(tǒng)參數(shù)測量設(shè)計主要包括基于FPGA設(shè)計的頻率、占空比、上升時間數(shù)據(jù)處理,以及單片機對脈沖信號幅度測量與數(shù)據(jù)顯示兩部分構(gòu)成。
頻率測量采用等精度測量法,啟動測量門控信號由被測信號和預(yù)置門共同控制,測量精度與被測信號的頻率無關(guān),只與基準信號的頻率和穩(wěn)定度有關(guān),因此保證在整個測量頻段內(nèi)測量精度不變[5]。在預(yù)置門時間和常規(guī)測頻閘門時間相同而被測信號頻率不同的情況下,測量頻率精度不變。等精度頻率測量設(shè)計在FPGA中實現(xiàn),其設(shè)計原理圖如圖7所示,被測信號是從比較器模塊輸出的脈沖信號,DFF觸發(fā)器是實現(xiàn)測頻開始和停止動作與被測信號上升沿同步的重要器件,從而消除了對被測信號計數(shù)所產(chǎn)生±1個字誤差。
圖7 FPGA等精度測頻設(shè)計原理圖
占空比=[(高電平計數(shù)×?xí)r鐘周期)/信號周期]×100%,需要對脈沖信號高電平內(nèi)對標準時鐘進行計數(shù),乘上時鐘周期就可以得出高電平持續(xù)時間[6],而信號周期可以根據(jù)已測得信號頻率的倒數(shù)計算。將FPGA芯片測量計數(shù)值傳出到單片機進行處理,根據(jù)公式計算出被測脈沖信號的占空比,顯示在液晶顯示屏LCD1602上。
圖8 上升時間測量示意圖
脈沖信號幅度是指上穩(wěn)定電平與下穩(wěn)定電平的差值,一般下穩(wěn)定電平為0 V,因此脈沖幅度就是要測量脈沖信號的上穩(wěn)定電平。
因為峰值檢波測量法對脈沖信號幅度測量誤差較大,該設(shè)計采用高速數(shù)據(jù)采樣技術(shù)進行幅度測量[9]。方法是設(shè)置一個閾值,取大于閾值的采樣數(shù)據(jù)并存儲;對存儲的采樣數(shù)據(jù)排序,取其中間值(或去極值去平均)作為幅值。如果被測信號最小脈寬為50 ns,需要在一個周期內(nèi)取25個數(shù)據(jù),則A/D轉(zhuǎn)換器采樣速率約需500 MHz,器件選擇比較困難,因此可以適度降低采樣速率,然后在多個周期內(nèi)取數(shù)據(jù)進行處理[10]。
采用采樣速率為50 MHz(20 ns)的A/D轉(zhuǎn)換器,則在脈寬為50 ns的被測脈沖信號上,一個周期內(nèi)至少可以取得2個幅度近似為脈沖幅度的采樣值,采集若干個數(shù)據(jù)后進行處理計算脈沖幅度。
被測量信號頻率可以達到2 MHz以上,占空比測量范圍是10%~90%,則輸入通道電路帶寬以2 MHz、占空比10%為設(shè)計指標,對應(yīng)的脈寬是50 ns。矩形脈沖信號的能量集中在0~2π/τ,因此0~2π/τ被認為是信號的頻帶寬度[11],如圖9所示。脈沖信號的帶寬與脈沖寬度τ有關(guān),對應(yīng)的帶寬是fB=1/τ=20 MHz。在設(shè)計電路時,為了能真實地再現(xiàn)被測脈沖信號,需要設(shè)計輸入通道的帶寬達到100 MHz以上。選擇THS3905作為輸入緩沖器,信號放大通道選擇OPA690電壓反饋型運算放大器,模數(shù)轉(zhuǎn)換采集電壓選擇AD9280。
圖9 周期矩形脈沖信號的時域波形和頻譜
單片機軟件設(shè)計實現(xiàn)A/D轉(zhuǎn)換、測量計算脈沖幅度,并從FPGA中讀取頻率、上升時間、占空比的測量數(shù)據(jù),經(jīng)計算處理后在LCD上顯示測得參數(shù)。軟件設(shè)計流程圖見圖10。
圖10 單片機軟件設(shè)計流程圖
FPGA內(nèi)部邏輯設(shè)計框圖如圖11所示,兩路TLV3501比較器的輸出信號送到FPGA中,用比較器1輸出信號測量頻率,用比較器2輸出信號測量占空比,上升時間需要將兩路信號進行相與整合后測量高電平脈沖時間。
圖11 FPGA內(nèi)部邏輯設(shè)計框圖
在輸入端輸入10 Hz~2 MHz的脈沖信號,分別取0.5、5 V兩種幅度,根據(jù)測量顯示得到的頻率值與標稱值計算誤差。測試結(jié)果見表1。
表1 頻率測量結(jié)果
在輸入端輸入1 V的脈沖信號,分別測試10 Hz、1 kHz、2 MHz頻率下對應(yīng)的占空比。測試結(jié)果見表2。
表2 占空比測量結(jié)果
在輸入端輸入占空比為50%的脈沖信號,分別測試10 Hz、1 kHz、2 MHz頻率下對應(yīng)的信號幅值。測試結(jié)果如表3所示。
表3 幅度測量結(jié)果
在輸入端輸入頻率為1 000 Hz的脈沖信號,調(diào)節(jié)不同上升沿時間。測試結(jié)果見表4。
表4 上升時間測量結(jié)果
根據(jù)測試結(jié)果可知,脈沖參數(shù)測量系統(tǒng)所測頻率、幅度、占空比、上升時間,具有較高的測量精度,其中頻率和占空比測量相對誤差在1%以內(nèi),幅度和上升時間測量相對誤差5%以內(nèi),達到預(yù)期設(shè)計指標。
測量誤差來源主要有標準頻率誤差、量化誤差、比較器閾值設(shè)置誤差。±1量化誤差對占空比測量誤差的影響隨著被測信號的頻率的增大而增加,頻率越低影響越小[12]。在兩路比較器閾值是根據(jù)AGC電路輸出幅度的10%和90%設(shè)定,由于AGC電路輸出幅度在測量頻帶范圍內(nèi)存在誤差,以及兩個比較器傳輸延遲時間的不一致也會引入誤差,因此造成上升時間的測量誤差相對偏大[13]。幅度測量可采用多次采樣測量和提高電路設(shè)計信噪比的方法,從而減小測量誤差。
本文設(shè)計的脈沖信號參數(shù)測量系統(tǒng),采用 單片機與FPGA相結(jié)合的方式實現(xiàn),充分發(fā)揮各自控制特點。通過FPGA并行處理特性實現(xiàn)脈沖信號幅度、頻率、占空比和上升時間的測量,所有測量數(shù)據(jù)再經(jīng)過單片機讀取后送到LCD顯示。同時為了滿足測試和系統(tǒng)校準的需要,設(shè)計制作了參數(shù)可調(diào)的脈沖信號發(fā)生器。系統(tǒng)經(jīng)過完整的參數(shù)測試達到預(yù)期設(shè)計指標,證明該設(shè)計方案具有可行性,后續(xù)可以進一步改善電路設(shè)計的信噪比,提高參數(shù)測量的一致性和穩(wěn)定性。設(shè)計中采用了模塊化設(shè)計方法,提高了設(shè)計效率,具有較高的實用性,性價比高,功能拓展靈活。