黃武揚,吳 一,黎 坤
(中國航天第九研究院十六研究所,陜西西安 710100)
在慣性導(dǎo)航系統(tǒng)中,加速度計用來測量運載體的加速度。近年來,隨著加速度計精度的提高,系統(tǒng)對于加速度計模數(shù)轉(zhuǎn)換(I/F)電路也提出了更高的要求。傳統(tǒng)的I/F電路由分立器件搭建,要想得到更高的分辨率,必然要提高電路的工作頻率,然而這樣又會導(dǎo)致器件的開關(guān)特性變差,進(jìn)而導(dǎo)致線性度變差[2]。另外,對現(xiàn)有I/F電路來說,量程與分辨率互相矛盾,不能同時滿足大量程和高分辨率的需求[4]。A/D芯片具有較高的采集速度,能夠直接將模擬量轉(zhuǎn)換成數(shù)字量,但它的非線性度較低[2]。因此,本文將I/F電路與A/D芯片相結(jié)合,設(shè)計了一種既不損失其他性能指標(biāo),又具有高分辨率的模數(shù)轉(zhuǎn)換電路。采用FPGA實現(xiàn)邏輯控制,提高電路的可靠性;采用DSP進(jìn)行數(shù)據(jù)處理,提高電路的運算速度;采用FIR濾波對輸出數(shù)據(jù)進(jìn)行平滑,提高電路的穩(wěn)定性。
高分辨率模數(shù)轉(zhuǎn)換電路是基于電荷平衡原理建立的。加速度計的輸出電流對積分器充電,基準(zhǔn)反饋電流對積分器放電,使積分器上的電荷保持平衡。通過對放電電流的量化和對積分器殘余電荷的測量,就能得到輸入電流的大小。圖1為電路的原理框圖。
電路由積分器、比較器、電子開關(guān)、2路反饋恒流源、A/D采樣電路、FPGA、DSP組成。輸入電流Iin和反饋電流±Iref同時流入電路,使積分器輸出電壓Uout發(fā)生變化。比較器將Uout與零相比較,實時檢測Uout極性。FPGA接收比較器輸出信號,在時鐘信號下控制電子開關(guān)接通與Uout同相的反饋恒流源,使Uout減小至過零,再接通另外一相反饋恒流源,電路重復(fù)上述工作。對兩相反饋基準(zhǔn)恒流源的接通周期分別計數(shù),2個計數(shù)值的差值即為電路的基礎(chǔ)讀數(shù)。
將反饋恒流源在一個時鐘周期提供的電荷稱為一個量化電荷。在積分器中,總有小于一個量化電荷的殘余電荷不能被平衡。因此,使用A/D芯片對Uout進(jìn)行采樣,2次采樣的差值為殘余讀數(shù)。將其與基礎(chǔ)讀數(shù)進(jìn)行整合,即可得到電路的輸出數(shù)字量。
根據(jù)電荷平衡原理,可以得到:
(1)
式中:Qin為Iin輸入的電荷量;Nbase為電路基礎(chǔ)讀數(shù);T為時鐘周期;IrefT即為一個量化電荷Qref;CI為積分電容;UresCI即為殘余電荷Qres;Ures為殘余電壓。
圖1 高分辨率模數(shù)轉(zhuǎn)換電路原理框圖
積分器是電路的采樣保持環(huán)節(jié),作用是采集輸入電流,將結(jié)果以電荷形式存儲在積分電容上,再經(jīng)后級電路量化處理后轉(zhuǎn)換成數(shù)字量。積分器的原理如圖2所示。
圖2 積分器電路原理圖
積分器輸出電壓與輸入電流的關(guān)系為
(2)
式中:Is為反饋電流,有±Iref2種取值。
電路的量化過程由比較器、FPGA、電子開關(guān)及恒流源共同實現(xiàn)。比較器實時檢測Uout極性,F(xiàn)PGA接收比較器輸出信號,并控制電子開關(guān)接通正負(fù)兩相恒流源,使Uout在零值上下波動。圖3、圖4、圖5分別為輸入電流Iin=0、Iin>0、Iin<0時的電路工作波形圖。圖中波形從上至下依次為:時鐘脈沖、積分器輸出電壓、正相恒流源控制信號、負(fù)相恒流源控制信號。
圖3 Iin=0時電路工作波形圖
圖4 Iin>0時電路工作波形圖
圖5 Iin<0工作波形圖
當(dāng)輸入電流Iin=0時,正負(fù)相恒流源交替接通,設(shè)正相恒流源導(dǎo)通周期數(shù)為N+,負(fù)相恒流源導(dǎo)通周期數(shù)為N-,Nbase=N+-N-=0,基礎(chǔ)讀數(shù)為零。當(dāng)輸入信號Iin>0時,Nbase=N+-N-<0,基礎(chǔ)讀數(shù)小于零。當(dāng)輸入信號Iin<0時,Nbase=N+-N->0,基礎(chǔ)讀數(shù)大于零。
根據(jù)對電路工作原理的分析,A/D采樣電路的作用就是讀出殘余電荷Qres。
設(shè)A/D采樣芯片的位數(shù)為N。由于輸入電流和反饋電流同時流入電路,則在1個時鐘周期引起的Uout的最大變化為2Uref,Uref=Qref/CI,稱為一個量化電壓。設(shè)置A/D采樣電路參考電壓為±2Uref。則殘余電荷對應(yīng)的電路殘余讀數(shù)值為
(3)
由于一個量化電荷引起的電壓變化為Uref,電路的輸出數(shù)字量為
Nout=2N-2·Nbase+NAD
(4)
電路的軟件部分由FPGA和DSP共同實現(xiàn)。FPGA用來控制電路邏輯,包括電子開關(guān)、A/D采樣和數(shù)據(jù)處理的邏輯控制。DSP用來將基礎(chǔ)讀數(shù)和殘余讀數(shù)進(jìn)行整合及濾波處理,得到電路的輸出數(shù)字量。
FPGA接收比較器輸出信號,判斷Uout極性,控制電子開關(guān)接通相應(yīng)恒流源,對恒流源的接通周期進(jìn)行計數(shù),得到Nbase。同時,控制A/D芯片進(jìn)行采樣,控制DSP芯片進(jìn)行數(shù)據(jù)處理。FPGA的設(shè)計模塊如圖6所示。
圖6 FPGA設(shè)計模塊
DSP具有強(qiáng)大的數(shù)據(jù)處理功能,能夠快速完成數(shù)據(jù)的整合和濾波。在FPGA控制下,DSP首先接收基礎(chǔ)讀數(shù)Nbase,然后讀取殘余讀數(shù)NAD,之后對二者進(jìn)行整合及濾波,得到高分辨率模數(shù)轉(zhuǎn)換電路的輸出數(shù)字量Nout。DSP的軟件流程圖如圖7所示。
圖7 DSP軟件流程圖
根據(jù)原理圖搭建電路,在常溫下對電路進(jìn)行測試。I/F轉(zhuǎn)換頻率為fIF=32 kHz,A/D采樣頻率為fAD=1 kHz,A/D采樣芯片位數(shù)為16位。輸入電流范圍為-35~+35 mA。
電路的滿度輸出是電路輸入最大電流時輸出的數(shù)字量。電路的滿度輸出取決于 I/F轉(zhuǎn)換頻率和A/D芯片位數(shù)。I/F電路的最大輸出與轉(zhuǎn)換頻率相同,為3.2×104s-1。由于A/D轉(zhuǎn)換引入了高頻誤差,只保留轉(zhuǎn)換結(jié)果高M(jìn)位有效,則電路的滿度輸出為fIF×2M。取M=5,滿度輸出數(shù)字量為1.024×106s-1。
模數(shù)轉(zhuǎn)換電路的零位偏置用來表示當(dāng)輸入信號為零時的輸出數(shù)字量,可以通過軟件進(jìn)行補(bǔ)償,但是無法完全消除。圖8為電路每s輸出數(shù)字量測試結(jié)果。計算得到電路的零位偏置為7.04 s-1。
圖8 零位偏置測試結(jié)果
電路的標(biāo)度因數(shù)K用來表示每s每mA電流的輸出數(shù)字量,單位為(s·mA)-1。
在相同參數(shù)條件下分別輸入±1 mA電流對電路進(jìn)行多次測試,采樣100 s數(shù)據(jù),計算得到每s輸出數(shù)字量,結(jié)果如表1所示。
表1 電路標(biāo)度因數(shù)測試結(jié)果
計算得到高分辨率模數(shù)轉(zhuǎn)換電路的標(biāo)度因數(shù)為K=29 260.51 (s·mA)-1。
電路工作穩(wěn)定后,通入+1 mA電流,測試電路的標(biāo)度因數(shù)穩(wěn)定性,每10 s記錄電路的輸出數(shù)字量,結(jié)果如圖9所示。計算得到電路的穩(wěn)定性為5.32×10-6。
圖9 標(biāo)度因數(shù)穩(wěn)定性測試結(jié)果
電路的線性度用來描述輸出數(shù)字量與輸入電流之間的偏離程度。傳統(tǒng)的I/F電路輸出脈沖不均勻,識別小信號需要在時間上進(jìn)行積累,電路的線性度較差。電路的對稱性用來表征正負(fù)兩個極性輸出數(shù)字量的對稱特性。
取9個采樣電流值測試電路的線性度和對稱性,采樣時間為100 s,計算得到每s脈沖輸出。測試結(jié)果如表2所示。
表2 電路線性度和對稱性測試結(jié)果
計算得到電路的線性度為5.23×10-6,對稱性為3.34×10-5。
為了消除硬件電路和A/D采樣引入的高頻誤差,使用DSP芯片對輸出數(shù)據(jù)進(jìn)行FIR濾波,以對輸出數(shù)字量進(jìn)行平滑處理。
FIR濾波的輸出只與當(dāng)前時刻和之前時刻的輸入信號有關(guān),與輸出信號無關(guān),且FIR濾波器的沖激響應(yīng)序列是有限長的,因此濾波器一定是穩(wěn)定的[10]。由于DSP芯片強(qiáng)大的數(shù)據(jù)處理功能,使用DSP來實現(xiàn)FIR濾波幾乎不會影響系統(tǒng)的實時性。
使用MATLAB軟件的FDATool工具箱生成FIR濾波器。選取FIR濾波器的階數(shù)為10階。采樣頻率為Fs=1 kHz,設(shè)置通帶頻率Fpass=80 Hz,阻帶頻率Fstop=100 Hz,通帶波紋Ap=3 dB,阻帶衰減As=60 dB,得到濾波參數(shù)為
(5)
直接將得到的參數(shù)輸入DSP中的FIR濾波程序。輸入+1 mA電流對進(jìn)行測試。濾波前后的每ms數(shù)字量輸出如圖10所示。
(a)濾波前
(b)濾波后圖10 濾波前后每ms輸出數(shù)字量比較
可以看出,F(xiàn)IR濾波后的輸出數(shù)字量更為平滑,在不影響精度的前提下提高了穩(wěn)定性,有效減小了高頻誤差帶來的影響。
本文設(shè)計了一種高分辨率模數(shù)轉(zhuǎn)換電路。將傳統(tǒng)的電流頻率轉(zhuǎn)換電路和A/D采樣芯片相結(jié)合,使用FPGA進(jìn)行邏輯控制,減少分立器件的使用,增強(qiáng)了電路的可靠性,使用DSP進(jìn)行數(shù)據(jù)處理,提高了電路的運算速度。經(jīng)實驗驗證,在給定參數(shù)條件下,電路的滿度輸出數(shù)字量為1.024×106s-1,標(biāo)度因數(shù)為K=29 260.51 (s·mA)-1,標(biāo)度因數(shù)穩(wěn)定性為5.32×10-6,零位偏置為7.04 s-1,線性度為5.23×10-6,對稱性為3.34×10-5,在不影響電路精度和穩(wěn)定性的前提下,同時滿足了高分辨率和大量程的需求。
為了消除硬件電路和A/D采樣引入的高頻隨機(jī)誤差,基于DSP強(qiáng)大的數(shù)據(jù)處理能力,對電路的輸出數(shù)字量進(jìn)行了FIR濾波。使用MATLAB軟件生成濾波參數(shù)后輸入到DSP程序。實驗結(jié)果表明,F(xiàn)IR濾波能夠在不影響系統(tǒng)精度的前提下對輸出的數(shù)字量進(jìn)行平滑,有效消除電路引入的高頻隨機(jī)誤差的干擾,增加了系統(tǒng)的穩(wěn)定性。