文獻標(biāo)識碼: A
文章編號: 0258-7998(2013)03-0074-03
激光陀螺由于具有精度高、動態(tài)響應(yīng)快、壽命長、穩(wěn)定性好等優(yōu)點廣泛運用于各類戰(zhàn)術(shù)導(dǎo)彈、軍用飛機、航天航海等領(lǐng)域[1]。
激光陀螺信號解調(diào)常用的實現(xiàn)方法是用DSP實現(xiàn)。由于解調(diào)過程中一般需要高階濾波,雖然DSP運算速度特別快,但是由于濾波是多個串行乘法和加法的組合,當(dāng)濾波階數(shù)較高時,濾波周期很大。由此造成了基于DSP的激光陀螺解調(diào)系統(tǒng)速度慢的問題。如果還需要后續(xù)的導(dǎo)航算法,系統(tǒng)也只能采用多個DSP芯片分工的辦法來提高系統(tǒng)的工作速度。但這樣做也無法克服濾波器濾波周期大的缺點,同時也增加了系統(tǒng)成本和功耗。因此急需一種高速低功耗同時具備高精度的激光陀螺信號解調(diào)系統(tǒng)來替代現(xiàn)有系統(tǒng)。
基于FPGA的激光陀螺信號解調(diào)系統(tǒng)將用于陀螺信號解調(diào)的所有模塊都集成到FPGA中。由于FPGA的高速并行性和極大的靈活性,解調(diào)過程中的各模塊間以及模塊內(nèi)部實現(xiàn)了真正的并行性,極大地提高了解調(diào)的速度。FPGA程序設(shè)計中巧妙的時鐘邏輯設(shè)計,實現(xiàn)了解調(diào)過程中的零丟數(shù)。另外FPGA只有在上電配置的過程中有較大電流,而在工作過程中工作電流比DSP小很多,從而此解調(diào)系統(tǒng)具有低功耗的優(yōu)點。因此基于FPGA的激光陀螺信號解調(diào)系統(tǒng)將是陀螺解調(diào)領(lǐng)域理想的實現(xiàn)方案,而DSP只是配套用來做后續(xù)的算法實現(xiàn)。
1 系統(tǒng)程序結(jié)構(gòu)設(shè)計
圖1是本系統(tǒng)的FPGA程序框圖。圖中FA、FB是陀螺輸出的正余弦信號經(jīng)過整形后得到的方波信號,兩路信號進入FPGA后首先進入鑒相模塊,鑒相后得到的兩路數(shù)據(jù)進入計數(shù)模塊后進行可逆計數(shù)??赡嬗嫈?shù)得到的計數(shù)值每隔一段時間再送到濾波器中進行高階濾波,濾波后的結(jié)果對應(yīng)濾波采樣時間內(nèi)的陀螺凈轉(zhuǎn)動角度[2]。同時FPGA具有脈沖計數(shù)、機抖周期計算及控制AD讀取系統(tǒng)工作參數(shù)的功能。FPGA最終將得到的各路數(shù)據(jù)編幀發(fā)送到上位機顯示。如果需要對陀螺解調(diào)后的信號進行導(dǎo)航計算,則FPGA將解調(diào)后的角速度值發(fā)送到DSP進行后續(xù)處理。
由于本系統(tǒng)設(shè)計的濾波器需要占用大量FPGA資源,因此選用XILINX 公司的 SPARTAN 3E系列的FPGA芯片 XC3S300E,在ISE9.1以后的系統(tǒng)中對于這款芯片具有自帶的FIR濾波器IP核,能減小濾波器設(shè)計的工作量。
2 系統(tǒng)關(guān)鍵程序設(shè)計及分析
2.1 系統(tǒng)時鐘設(shè)計
激光陀螺解調(diào)需要準(zhǔn)確讀入兩路脈沖數(shù),要求不能存在誤計數(shù)的情況。因此需要完善的系統(tǒng)時鐘協(xié)調(diào)各模塊來準(zhǔn)確無誤地對輸入數(shù)據(jù)進行處理??伸`活設(shè)計的時鐘系統(tǒng)和對時序的精確控制是FPGA在陀螺解調(diào)中的優(yōu)勢之一。
鑒相需要將輸入的兩路方波信號和主時鐘同步,陀螺輸入兩路方波由于機抖的原因,方波的頻率隨時間成正弦變化[3]。經(jīng)測量,頻率最大處為2 MHz左右。因此鑒相電路需要引入的主時鐘必須為8 MHz以上,采用15 MHz的主時鐘將兩路信號同步。同步后的方波頻率正好是輸入的4倍頻,如圖2所示。
從圖2可以看出,當(dāng)SIN超前時,CW有輸出。當(dāng)COS超前時,CCW有輸出。輸出信號分別為兩路信號的上升和下降沿被同步后的輸出,脈沖寬度正好為一個時鐘周期[4]。由于鑒相后兩路信號輸出的交替性,其交替周期便是機抖周期,因此可以據(jù)此來計算陀螺機抖頻率。
2.2 計數(shù)器設(shè)計
CW和CCW信號已經(jīng)與主時鐘上升沿同步,脈沖寬度正好是一個主時鐘周期。因此當(dāng)主時鐘下降沿到來時,CW、CCW一定沒有跳變。據(jù)此特性可以利用系統(tǒng)主時鐘的下降沿來作為計數(shù)器的工作時鐘,主時鐘下降沿到來時檢測到CW、CCW為高電平時,各自的計數(shù)器加1。計數(shù)值采樣時鐘為主時鐘的分頻,和主時鐘的上升沿同步,因此當(dāng)采樣時鐘上升沿到來時,可以保證CW、CCW沒有跳變。這種設(shè)計方案使得計數(shù)器在計數(shù)和取數(shù)的過程中都不會發(fā)生多一個脈沖或少一個脈沖的現(xiàn)象。圖3是以10 kHz的采樣頻率得到的陀螺脈沖計數(shù)的波形圖。
由于陀螺的自轉(zhuǎn)角速度相對機抖轉(zhuǎn)動小很多,1 s的時間內(nèi)也只累加幾個脈沖,因此圖中不能明顯觀察出此轉(zhuǎn)速的直流偏置量。由于合理的時鐘設(shè)計,系統(tǒng)采樣時鐘到來后便對計數(shù)器清零,清零的過程中也可以保證不丟脈沖數(shù)。采樣清零的方法使得計數(shù)器寬度可以較小,且不會有計數(shù)器溢出的危險。
2.3 濾波器設(shè)計
濾波器定時采樣計數(shù)器計數(shù)值的采樣頻率可以通過外部撥碼開關(guān)選擇5 kHz、10 kHz、20 kHz、50 kHz等4個擋。要想設(shè)計一個截止頻率為100 Hz,把計數(shù)脈沖高頻段(200 Hz~400 Hz機抖頻率)衰減-80 dB以上的FIR濾波器,經(jīng)過分析濾波器階數(shù)至少需要200階才能滿足要求[5]。通過實驗發(fā)現(xiàn),當(dāng)用DSP做一個16 bit的200階FIR低通濾波時,用業(yè)界最快的浮點DSP TMS320C6713濾波器的采樣頻率最高也只有10 kHz左右,如果再加上其他算法,系統(tǒng)工作的速度會更慢。由于FPGA的高速并行性,使用分布式算法設(shè)計高階濾波器,完成一次濾波只需要簡單的幾次查表運算,因此濾波周期也就是幾次查表運算的時間之和,并且對于階數(shù)增加,查表時間并沒有明顯變長,實驗發(fā)現(xiàn)200階濾波器的采樣頻率理論上可以到達1 MHz以上[6]。此外FIR濾波器的系數(shù)可以由Matlab fdatool工具生成[7]。由于FPGA不能直接進行浮點運算,因此需要將浮點數(shù)整型化,因此整型化的好壞直接影響濾波精度。通過實驗,在保證系統(tǒng)較低資源利用率的情況下,原始數(shù)據(jù)需要擴大224倍。Matlab中整型化和系數(shù)存儲程序如下:
COE=Num*4194304;
INDA=round(COE);
fid=fopen('fir200.txt','wt');
fprintf(fid,'%d\n',COE);
fclose(fid);
設(shè)計完成的濾波器對計數(shù)信號進行濾波,濾波結(jié)果傳輸?shù)缴衔粰C進行繪圖,波形如圖4所示。
從圖中可以看出,濾波結(jié)果波動范圍正好為式(2)的計算值。其均值便對應(yīng)1 s內(nèi)一定轉(zhuǎn)速下對應(yīng)的陀螺輸出值。
3 系統(tǒng)實驗結(jié)果
利用本系統(tǒng)和原有系統(tǒng)對國產(chǎn)某型號陀螺進行多次測試并將測試結(jié)果進行對比分析。在本系統(tǒng)以10 kHz采樣頻率濾波,原有系統(tǒng)以5 kHz采樣頻率濾波的測試條件下發(fā)現(xiàn),本系統(tǒng)的測試結(jié)果明顯優(yōu)于原有系統(tǒng),在提高采樣頻率的情況下反而有更大的解調(diào)精度。圖6是本系統(tǒng)的測試結(jié)果,圖7是原有系統(tǒng)的測試結(jié)果。
從以上測試結(jié)果中可以看出,本解調(diào)系統(tǒng)在提高系統(tǒng)響應(yīng)速度的前提下,濾波結(jié)果波動性反而更小,能夠解調(diào)出更微弱的陀螺感知的外界角速度。
本文簡介了基于FPGA的激光陀螺信號解調(diào)系統(tǒng)的設(shè)計方法,并著重介紹了FPGA算法和陀螺解調(diào)的理論基礎(chǔ)。
由于FPGA解調(diào)系統(tǒng)較現(xiàn)有DSP解調(diào)系統(tǒng)解調(diào)速度更快,解調(diào)精度更高,加之FPGA本身穩(wěn)定性和抗干擾能力等都優(yōu)于DSP,因此基于FPGA的陀螺信號解調(diào)系統(tǒng)將在彈道導(dǎo)彈、航天航空等領(lǐng)域具有更大的優(yōu)勢。
參考文獻
[1] 樊振方,王天武,羅暉.基于軟核處理器的二頻機抖陀螺信號處理系統(tǒng)[J].電子設(shè)計工程,2009,17(9):14-16.
[2] 張慶華,謝元平,胡紹民.基于相關(guān)濾波技術(shù)實現(xiàn)激光陀螺信號抖動的剝除[J].傳感技術(shù)學(xué)報,2009,22(9):1289-1292.
[3] 高伯龍,李樹棠.激光陀螺[M].長沙:國防科技大學(xué)出版社,1984.
[4] 謝元平. 機械抖動激光陀螺鑒相解調(diào)與穩(wěn)頻技術(shù)的研究[D].長沙:國防科技大學(xué),2000.
[5] 劉凌.數(shù)字信號處理的FPGA實現(xiàn)[M].北京:清華大學(xué)出版社,2011.
[6] XILINX.FIR Compiler v3.2.2007.
[7] 孫耀奇,高火濤,熊超,等.基于MATLAB和FPGA的FIR數(shù)字濾波器設(shè)計與實現(xiàn)[J].現(xiàn)代電子技術(shù),2008(11):89-92.