同昭豫, 趙 鵬, 黃武揚, 王 豪, 張焜鋋
(西安航天精密機電研究所, 西安 710100)
慣性器件在航空航天領域應用十分廣泛, 作為慣導系統(tǒng)的核心器件, 石英撓性加速度計通過輸出電流的大小來表示載體加速度的大小, 具有精度高、 抗干擾性好等一系列優(yōu)點[1-3]。 石英撓性加速度計輸出的電流模擬量需要通過模數(shù)轉換電路轉換為數(shù)字量, I/F 轉換電路以其轉換精度高、溫度系數(shù)小、 對噪聲具有平滑抑制作用等優(yōu)點被廣泛應用于慣導系統(tǒng)中[4-6]。
近年來, 慣性導航系統(tǒng)應用場景更為嚴苛,對加速度計的量程需求更高, 從以往的30g0提高到了60g0。 在保證分辨率的前提下, I/F 轉換電路需要大幅提高工作頻率[7-9]。 而在高工作頻率下,分立器件特性會發(fā)生變化, 導致電流增大時電路的輸出脈沖會產(chǎn)生非線性失真。 同時隨著溫度的變化, 元器件的參數(shù)特性會發(fā)生改變, 因此對I/F轉換電路的線性度提出了更高的要求[10]。 針對I/F轉換電路非線性失真問題, 目前常用的解決辦法有三種: 第一種是增加硬件補償電路, 通過硬件調試改善電路的線性度, 但是僅能補償電路的一階誤差; 第二種是降低I/F 轉換電路的工作頻率,后級增加A/D 轉換電路, 在不降低分辨率的前提下改善電路的線性度, 但是該方法需要增大電路體積, 且高精度A/D 轉換芯片依賴進口器件[11];第三種是對I/F 轉換電路的輸出脈沖進行脈沖補償[12-13], 但該方法僅從輸出脈沖維度對線性度進行了補償, 未考慮溫度變化時硬件器件特性對線性度的影響。
本文提出了一種二級補償算法, 該算法通過分析I/F 轉換電路原理和元器件參數(shù)特性, 建立了電子開關漏電流和開關通斷時間對線性度影響的誤差模型, 分別對輸出脈沖進行溫度補償以及全量程的線性度補償, 在不進行硬件調試的情況下改善了電路的非線性失真, 一定程度上解決了量程與線性度互相矛盾的問題, 從而達到提高I/F 轉換電路精度的目的。
I/F 轉換電路基于電荷平衡原理完成對輸入電流的量化, 主要包括積分器、 比較器、 FPGA 中的控制邏輯、 電子開關和恒流源。 I/F 轉換電路的工作原理框圖如圖1 所示。
圖1 I/F 轉換電路的工作原理框圖Fig.1 Working principle diagram of I/F conversion circuit
輸入電流Iin在積分器上進行積分, 改變積分器輸出電壓Uout, 比較器電路處理Uout, 輸出控制信號Ucmp, FPGA 解析比較器的輸出信號Ucmp, 并以此為依據(jù)控制電子開關接通對應極性的反饋恒流源。 恒流源電路提供兩路大小相等極性相反的恒值電流±Iref, 經(jīng)過電子開關給積分器提供反饋電流Is。
反饋恒流源的接通時間以周期TIF為單位, 是TIF的整數(shù)倍。 一個時鐘周期TIF內(nèi)由反饋電流提供的電荷量記為一個量化電荷Qref, FPGA 在控制電子開關通斷的同時, 對反饋恒流源進行計數(shù), 得到某段時間內(nèi)反饋恒流源Iref的接通周期數(shù)NIF。 量化電荷量Qs為
輸入電荷量在一個時鐘周期TIF內(nèi)的電荷量為
根據(jù)電荷平衡原理, 一段時間內(nèi), 積分器上由輸入電流Iin提供的輸入電荷量和反饋電流Iref提供的量化電荷量應相同量化電荷
式(3)中,NIF也就是I/F 轉換電路的輸出脈沖,其理想情況下為
式(4)中,NIF為正比于Iin的線性函數(shù), 但僅在理想狀態(tài)下為常量。 實際上, 量化電荷Qref會隨著輸入電流的大小而改變, 也會隨環(huán)境溫度而改變, 導致I/F 轉換電路的輸出脈沖和輸入電流呈非線性。
Iref為I/F 轉換電路的反饋基準恒流源, 經(jīng)過電子開關后直接進入積分器, 因此其主要誤差來源于電子開關。 FPGA 在控制電子開關通斷時, 電子開關會從兩方面對線性度產(chǎn)生影響: 1)恒流源在接通和關斷時, 其上升沿和下降沿(簡稱通斷沿)存在接通時間和關斷時間, 導致恒流源的接通時間不完全為時鐘周期的整數(shù)倍, 如圖2 所示; 2)電子開關中的開關管存在漏電流δIDSS, 當電子開關在工作時, 另一相電子開關的漏電流會流入, 影響反饋電流的大小, 如圖3 所示。
圖2 接通時間、 關斷時間示意圖Fig.2 Schematic diagram of turn-on time and turn-off time
圖3 電子開關漏電流示意圖Fig.3 Schematic diagram of leakage current for electronic switch
首先分析開關通斷沿對線性度的影響。 電子開關每控制恒流源進行一次開關所經(jīng)過的時間即為一個關斷時間和一個開通時間, 將開通時間內(nèi)恒流源未提供給積分器的電荷稱為δQon, 關斷時間內(nèi)恒流源提供給積分器的電荷稱為δQoff, 因此某相恒流源導通一次, 對積分器電路提供的電荷實際大小為
故由通斷沿影響, 某相恒流源導通一次實際提供的電荷量與理想狀態(tài)下提供的電荷量之間的誤差為
接下來考慮電子開關的漏電流帶來的影響。在工作電路中, 某一相恒流源接通、 另外一相恒流源關斷時, 由于開關管存在截止漏電流, 反饋電流會被另一相電子開關的漏電所影響。
設截止漏電流大小為δIDSS, 漏電流所引入的誤差電荷量為
綜合式(6) 和式(7) 可知, 電子開關工作一次,反饋電荷的誤差為
將其代入式(4)中, 可得實際的輸入電流和輸出脈沖之間的關系為
由于硬件的器件特性, 每一次電子開關的開通時間和關斷時間都有差異, 并且電子開關內(nèi)部有輸入電容Ciss、 輸出電容Coss以及反向轉移電容Crss, 隨著輸入電流的增大, 反饋脈沖個數(shù)增多,電子開關工作頻率提高, 電容值也會發(fā)生變化,此時通斷沿的時間會發(fā)生改變, 導致δQon和δQoff也發(fā)生改變。 因此,δQon和δQoff不是常量, 而是關于輸入電流Iin的函數(shù)。 另一方面, 由元器件參數(shù)可知, 電子開關的漏電流會隨溫度變化而變化, 所以當輸入電流為Iin、 環(huán)境溫度為T時, 式(9) 可寫為
由式(10)可知, 輸出脈沖與輸入電流之間本應呈線性關系, 但由于Iref存在非線性誤差, 其實際的關系曲線如圖4 所示。
圖4 脈沖輸出的理想線性度與實際線性度示意圖Fig.4 Schematic diagram of ideal linearity and actual linearity for pulse output
隨著輸入電流的增大, 電路的發(fā)熱量增多,電子開關漏電流會發(fā)生變換; 與此同時, 電子開關工作頻率也提高, 通斷沿時間發(fā)生改變, 導致在工作電流逐漸增大時輸出脈沖和輸入電流呈現(xiàn)出了非線性關系。
輸出脈沖的誤差來源于兩個方面, 一個是溫度變化引起的漏電流誤差, 另一個是輸入電流變化引起的電子開關通斷沿的變化。 若僅在某個溫度點下對不同輸入電流的輸出脈沖進行線性度補償,則電路也僅在該溫度點下呈現(xiàn)出良好的線性輸出,變換應用場景后線性度則無法保證。 因此, 對線性度的誤差補償應從兩方面進行, 一是通過溫度補償來保證溫度對輸出當量無影響, 二是補償不同電流下的輸出脈沖。 補償流程圖如圖5 所示。
圖5 二級補償流程圖Fig.5 Flowchart of secondary compensation
首先是溫度補償, 將單板放進溫箱, 環(huán)境溫度分別設置為-10℃、 15℃、 40℃、 65℃, 將電路板保溫至環(huán)境溫度后輸入±1 mA 的電流, 測量至電路達到穩(wěn)定工作狀態(tài), 分別得到正負向通道輸出脈沖曲線, 選取指定溫度下得到的一組有效數(shù)據(jù)作為基準建立溫度誤差模型, 溫度擬合模型如下
式(11)中,α、β、γ為通過有效數(shù)據(jù)與當前溫度T由最小二乘所擬合出的參數(shù)。
擬合后漏電流為常量, 此時式(10)可寫為
由于輸出數(shù)字量和輸入電流之間的比例關系是一個與輸入電流相關的函數(shù), 對式(12)進行泰勒展開可得到
測量多組[Iin,NIF(Iin)]值, 則可用最小二乘法擬合出系數(shù)[NIF(0),N′IF(0),N″IF(0)], 進而實現(xiàn)對線性度的誤差擬合, 使得輸入電流Iin和輸出脈沖NIF呈線性關系。
本文選用6166 恒流源來進行實驗, 具體參數(shù)如表1 所示。 在實驗過程中, 將I/F 轉換電路固定在高精度溫箱內(nèi)。 通過對單路通道輸入±1 mA 電流對I/F 轉換電路的溫度系數(shù)進行測試, 補償后將I/F 轉換電路放在常溫環(huán)境中, 給該通道輸入1 mA、2 mA、 3 mA、 5 mA、 8 mA、 10 mA、15 mA、20 mA、 30 mA、 40 mA、 50 mA、 60 mA 等典型電流值進行線性度測試。
表1 6166 恒流源參數(shù)Table 1 Parameters of 6166 constant current source
結合I/F 轉換電路的特點, 在實驗過程中, 將溫箱溫度分別設置在-10℃、 15℃、 40℃、 65℃,在各個溫度點下保溫1 h 以上, 使電路溫度達到環(huán)境溫度, 之后通電進行測試。
將各溫度點下的輸出脈沖連在一起并用式(11)進行數(shù)據(jù)擬合, 得到正向輸出脈沖關于溫度的擬合曲線, 如圖6、 圖7 所示。 負向輸出脈沖與正向輸出脈沖處理方式相似, 這里不再贅述。
圖6 正向輸出脈沖溫補前曲線Fig.6 Curve of positive output pulse before temperature compensation
圖7 正向輸出脈沖溫補后曲線Fig.7 Curve of positive output pulse after temperature compensation
由圖6、 圖7 可知, 利用式(11)對正負通道各溫度點下的輸出脈沖建立的模型曲線能較好地描述數(shù)據(jù)特性, 以補償漏電流對線性度的影響。 I/F模數(shù)轉換電路溫度系數(shù)通過計算-40℃~70℃輸出脈沖方差與平均值的比值進行評估, I/F 轉換電路溫度系數(shù)所帶來的誤差從3.24 ×10-5降到7.67 ×10-6, 有效減小了溫度環(huán)境變化給線性度帶來的誤差。
分別對I/F 轉換電路單通道輸入1 mA、 2 mA、3 mA、 5 mA、 8 mA、 10 mA、 15 mA、 20 mA、30 mA、40 mA、 50 mA、 60 mA 電流, 測試其輸出脈沖。 將測試數(shù)據(jù)除以對應輸入電流, 如: 輸入電流為20 mA 時輸出脈沖為4188440, 則處理后的數(shù)據(jù)為4188440/20 =209422; 輸入電流為40 mA時輸出脈沖為8372566, 處理后的數(shù)據(jù)為8372566/40 = 209314。 由此得到對應1 mA、 2 mA、 …、60 mA 等12 個測試點電流下的等效脈沖輸出, 線性度指標通過計算12 個測試點等效脈沖輸出的極差與平均值的比值進行評估。
在25℃的初始溫度下測得原始脈沖數(shù), 分別對其進行硬件補償、 脈沖補償和二級補償。 脈沖補償即不做溫度補償, 只做線性度輸出脈沖補償?shù)乃惴? 再在40℃的初始溫度下分別測量其線性度。
以處理后的輸出脈沖為縱坐標、 輸入電流為橫坐標, 畫出I/F 轉換電路線性度補償曲線, 如圖8 所示。
圖8 I/F 電路線性度補償前后的測試曲線Fig.8 Test curves of I/F circuit linearity before and after compensation
由圖8 可知, I/F 電路補償前線性度呈非線性遞減, 存在高階項。 硬件補償可對電路中的一階誤差進行有效改善, 但是仍存在高階非線性項。僅經(jīng)過脈沖補償?shù)臓顟B(tài), 在改變初始環(huán)境后, 其線性度可達1.78 ×10-5, 而經(jīng)過二級補償后其線性度可達4.93 ×10-6, 一階項、 高階項以及溫度系數(shù)均得到了補償。 表2 中列出了通過逐級補償?shù)玫降碾娐肪€性度指標, 可以看出二級補償?shù)男Ч黠@優(yōu)于硬件補償和脈沖補償?shù)男Ч? 從而證明了二級補償算法的有效性。
表2 I/F 電路線性度補償前后的數(shù)據(jù)Table 2 Data of I/F circuit linearity before and after compensation
脈沖補償未考慮環(huán)境變化的因素, 隨著電路通電升溫至穩(wěn)定狀態(tài), 電子開關的漏電流會隨溫度變化而變化, 如果僅在某一溫度點下進行脈沖補償, 變換溫度環(huán)境后會因為漏電流的改變使得線性度損失精度。 而二級補償算法則充分考慮到這一點, 有效提升了I/F 轉換電路的適應性和精度。
本文針對I/F 轉換電路非線性失真提出了一種二級補償算法, 通過對電子開關漏電流和通斷沿的誤差參數(shù)進行誤差建模, 得到溫度補償模型和脈沖補償模型, 進行了全溫全量程的線性度誤差補償。 實驗結果表明, 經(jīng)過二級補償后的線性度指標得到了明顯提升, 對環(huán)境溫度有良好的適應性, 且不需要更改硬件電路, 有效提高了I/F 轉換電路在大量程下的精度, 具有較高的工程應用價值。