羅林燕+吳伯農(nóng)
摘 要: 由于陀螺儀量程較小,難以應(yīng)用于高轉(zhuǎn)速載體的姿態(tài)測試中,因此設(shè)計了以MEMS線加速度計ADXL377和地磁傳感器HMC1043為微慣性測量單元(MIMU)的微型角速度解算系統(tǒng)。系統(tǒng)以FPGA作為協(xié)處理器控制ADC模塊對11路傳感器信號的同步轉(zhuǎn)化,并對轉(zhuǎn)換后的數(shù)據(jù)進行及時采集、緩存;以DSP 芯片TMS320C6713作為主處理器完成角速度的實時解算。系統(tǒng)最大可測角速度達30 r/s,信號的采集、解算實時性強,角速度的測量精度高,而且電路半徑僅5 cm,安裝方便、功耗低。
關(guān)鍵字: 無陀螺捷聯(lián)式慣性導(dǎo)航系統(tǒng); 角速度解算; ADXL377; TMS320C6713
中圖分類號: TN911.7?34 文獻標(biāo)識碼: A 文章編號: 1004?373X(2014)15?0089?05
Design of angular velocity resolving system for high rotation carrier
based on DSP and FPGA
LUO Lin?yan, WU Bo?nong
(North China University of Technology, Beijing 100144, China)
Abstract: To solve the problem that gyroscope can not be used in the attitude testing of high rotation carrier due to its smmal measuring range, a mini angular velocity resolving system was designed to detect angular velocity. The system takes MEMS accelerometer ADXL377 and geomagnetic sensor HMC1043 as MIMU, FPGA as its coprocessor to control the ADC module to make the 11?way sensor signals converted synchronously, and DSP chip TMS320C6713 as core processor to achieve real?time resolving of angular velocity. The system has a large measuring range and high?accuracy in detection of angular velocity, and high performance in high?speed real?time information accquisition and resolving, as well as small size, easy installation and low power consumption. The system′s maximum angular detecting speed is up to 30 r/s.
Keywords: gyroscope free strap?down inertial navigation system; angular velocity resolving; ADXL377; TMS320C6713
0 引 言
常規(guī)的角速度測量采用陀螺儀,但陀螺儀量程小,且內(nèi)含有不可轉(zhuǎn)動部件,不能承受大的線加速度沖擊,難以滿足高轉(zhuǎn)速載體的測量要求。在無陀螺捷聯(lián)式慣性導(dǎo)航系統(tǒng)中(GFSINS),采用線加速度代替陀螺儀,從線加速度計的輸出中解算出角加速度及角速度[1]。
目前,國內(nèi)對無陀螺捷聯(lián)式慣性導(dǎo)航系統(tǒng)的研究,系統(tǒng)MIMU以九加速度計和八加速度計兩種方案為主。以九加速度計與磁強計為MIMU的系統(tǒng),能完備地解算出載體的三維姿態(tài)信息,且解算精度較高,但需要立體安裝多個加速度計,而無陀螺捷聯(lián)式慣性導(dǎo)航系統(tǒng)對安裝誤差非常敏感[2]。本系統(tǒng)只要求解算出載體的角速度,且載體的連續(xù)飛行時間較短,加速度計的累積誤差有限,所以選用只需要對加速度計進行平面安裝的八加速度計方案,同時選用磁強計實時修正解算結(jié)果。
MEMS加速度計不僅量程大,精度高,可靠性高,壽命長,成本低,能進行多軸輸出,而且體積小、安裝方便,是捷聯(lián)式慣性導(dǎo)航系統(tǒng)的理想選擇。以FPGA作為協(xié)處理器,不僅可以把DSP從繁瑣的數(shù)據(jù)采集及緩存中斷中解脫出來,專注于角加速度及角速度的解算,還可以以硬件的方式設(shè)計系統(tǒng)與其他計算機的接口,提高了效率,節(jié)省了系統(tǒng)成本,減小了體積。
1 系統(tǒng)總體方案設(shè)計
八加速度計及磁強計的安裝方式如圖1所示,其中[x]軸為載體的縱軸方向,編號1~8為加速度計,編號9~11為磁強計,箭頭方向為加速度或磁強計的敏感方向[3?4]。
由文獻[2]可知,某一加速度計的輸出表達式為:
[A=(θb)T?(fb+Ωbib?rb+(Ωbib)2?rb)] (1)
式中:[θb]表示該加速度計敏感方向向量在載體系中的投影;[fb]表示載體質(zhì)心處的比力矢量在載體系中的投影;[Ωbib]表示載體坐標(biāo)系相對慣性系旋轉(zhuǎn)角速度向量[wbib]的反對稱矩陣;[rb]表示加速度安裝位置處相對載體中心的位置矢量。由式(1)可得角加速度的計算公式為:
[wbib=(JTJ)-1JT?A1?Aj?An-M?F(wbib)] (2)
式中:[Jj=[(rbj×θbj)T(θbj)T]]
[Fwbib=wbibx2 wbiby2 wbibz2 wbibywbibz wbibxwbibz wbibxwbibyT]
[Mj=-θbjyrbjy-θbjzrbjz-θbjxrbjx-θbjzrbjz-θbjxrbjx-θbjyrbjyθbjzrbjy+θbjyrbjzθbjzrbjx+θbjxrbjzθbjyrbjx+θbjxrbjyT]
圖1 八加速度計及磁強計安裝示意圖
則角速度可通過對式(2)積分得到:
[wbibt=wbib(0)+0twbibτdτ] (3)
系統(tǒng)最高可測轉(zhuǎn)速達30 r/s,加速度計距載體中心的距離[rb]均為40 mm,加速度計的最大輸出[1,5][A]=145 g。磁強計與加速度計建立觀測方程,對系統(tǒng)的解算結(jié)果進行校正[6]。
1.1 加速度計與磁傳感器的選擇與安裝
加速度計選用Analog Devices于2012年推出的首款模擬MEMS三軸高g加速度計ADXL377。該器件量程高達±200 g,完全滿足高轉(zhuǎn)速載體的測試要求;靈敏度為6.5 mV/g;[x,][y,][z]三軸的輸出帶寬均可根據(jù)用戶需要進行設(shè)置,最高可達1 300 Hz;其體積僅為3 mm×3 mm×1.45 mm,電路板空間比需要多個單軸加速度計的典型解決方案縮小了至少5倍;且加速度計無需初始對準(zhǔn)及放置正交傳感器。在本系統(tǒng)中,共選用4個ADXL377加速度計(每個加速度計都只采集[x]軸和[y]軸的輸出信號),分別安裝在圖1中箭頭1和2、箭頭3和4、箭頭5和6、箭頭7和8的交點處,傳感器的[x,][y]敏感軸分別與箭頭所指方向?qū)R。
磁強計選用美國霍尼韋爾公司的三軸表面安裝磁傳感器HMC1043。該器件適用于地磁場磁性傳感,靈敏度極高,可達1.0 mV/V/guass(設(shè)置/重置電流為0.5 A時),且分辨率為120 μguass(帶寬為50 kHz,電橋電壓5 V時),進行簡單的信號放大后便可進行地磁場測量;其體積為3 mm×3 mm× 1.40 mm,方便在狹小的空間安裝。本系統(tǒng)選用一個HMC1043地磁傳感器,安裝在圖1的質(zhì)心處,傳感器的敏感軸方向分別與9,10,11箭頭所指方向?qū)R。
2 系統(tǒng)硬件設(shè)計
角速度解算系統(tǒng)的硬件結(jié)構(gòu)如圖2所示,主要包括MIMU單元、信號調(diào)理電路、A/D轉(zhuǎn)換模塊、FPGA協(xié)處理器模塊、DSP數(shù)據(jù)處理部分和存儲系統(tǒng)。
圖2 角速度解算系統(tǒng)硬件系統(tǒng)結(jié)構(gòu)框圖
MIMU輸出的模擬信號經(jīng)信號調(diào)理電路低通濾波、放大后,進行A/D轉(zhuǎn)換。在FPGA中設(shè)計了ADC控制器、FIFO存儲器。由ADC控制器對A/D轉(zhuǎn)換模塊的啟動、輸出模式進行控制;A/D轉(zhuǎn)換芯片輸出的數(shù)字信號送入FIFO存儲器進行緩存,DSP及時讀走FIFO存儲器中的數(shù)據(jù),防止FIFO中的數(shù)據(jù)溢出;ADC控制器與FIFO存儲器通過握手信號進行通信,ADC控制器的工作狀態(tài)由DSP以操作外設(shè)存儲器的方式進行控制。
為滿足角速度解算時需要快速處理大容量數(shù)字信號的要求,本系統(tǒng)選用TI公司的新型浮點DSP芯片TMS320C6713作為主處理器。該芯片主頻最高可達200 MHz;CPU采用Veloci TI結(jié)構(gòu),具有8個獨立的功能單元(包括2個乘法器和6個算術(shù)邏輯單元),可同時執(zhí)行8條32位指令,其運算能力可達1 GFLOPS。
為實現(xiàn)對MIMU單元中11通道模擬信號(8路加速度計信號和3路磁強計信號)的實時、同步采集,系統(tǒng)選用兩片AD7656作為模/數(shù)轉(zhuǎn)化芯片。該芯片內(nèi)置6個16位、快速、低功耗逐次逼近型ADC,并且允許6個ADC同時工作;最高吞吐率可達250 KSPS,轉(zhuǎn)化時間僅為3.1 μs,并且內(nèi)置低噪聲、寬帶寬采樣保持放大器,可處理高達4.5 MHz的輸入頻率;輸入/輸出模式均可進行軟硬件配置。
2.1 MIMU單元電路設(shè)計
2.1.1 ADXL377電路設(shè)計
在進行高轉(zhuǎn)速載體的角速度解算時,要求高轉(zhuǎn)速載體上傳感器的輸出信號盡可能的實時、準(zhǔn)確,從而提高解算精度。為此,在不超過后端A/D芯片模擬信號最高輸入頻率的前提下,盡量提高傳感器輸出信號的發(fā)生頻率。本系統(tǒng)把ADXL377加速度傳感器[x,][y,][z]軸的信號輸出頻率均設(shè)為1 kHz。ADXL377加速度傳感器的功能框圖如圖3所示。只需按要求配置[Cx,][Cy,][Cz,]則可得到相應(yīng)軸的信號發(fā)生頻率。本系統(tǒng)中,[Cx,][Cy,][Cz]均配為0.005 μF。
圖3 ADXL377功能框圖
2.1.2 HMC1043復(fù)位電路設(shè)計
為了保持磁傳感器的高靈敏度及靈敏度的線性特性,同時降低交叉軸效應(yīng)和溫度效應(yīng),需要定期對磁傳感器進行復(fù)位。本系統(tǒng)中,為了防止系統(tǒng)其他部分對磁傳感器的電磁干擾,磁傳感器的PCB電路與系統(tǒng)其他電路分離開來,以插針的形式進行連接。
磁傳感器復(fù)位電路如圖4所示。為了簡化系統(tǒng)設(shè)計,復(fù)位電路采用單極性脈沖電路,手動復(fù)位。每次測量前,對磁傳感器進行一次復(fù)位。
圖4 磁傳感器HMC1043復(fù)位電路
2.2 模/數(shù)轉(zhuǎn)換芯片AD7656工作方式設(shè)置
AD7656模/數(shù)轉(zhuǎn)換芯片有兩種啟動轉(zhuǎn)換的方式:硬件方式和軟件方式。本系統(tǒng)中,為了節(jié)省DSP和FPGA資源,全部采用硬件方式。在硬件方式下,啟動轉(zhuǎn)換需要一個完整的CONVST脈沖,在脈沖的上升沿開始轉(zhuǎn)換。每片AD7656包含CONVST A,CONVST B,CONVST C三個啟動引腳,可分別啟動通道V1,V2,V3,V4,V5,V6進行轉(zhuǎn)換。本系統(tǒng)中,為了實現(xiàn)8路線加速計信號和3路磁強計數(shù)據(jù)的同步轉(zhuǎn)換,將兩片AD芯片的上述三個啟動引腳全連接到一起,由一個控制信號驅(qū)動。A/D轉(zhuǎn)換時鐘由芯片內(nèi)部提供,基準(zhǔn)電壓選用芯片內(nèi)部基準(zhǔn)電壓。
為了提高數(shù)據(jù)采集的速度,本系統(tǒng)對模/數(shù)轉(zhuǎn)換完成后的數(shù)據(jù)設(shè)置為并行方式輸出,每片A/D芯片的16根數(shù)據(jù)線直接與FPGA的16個I/O口進行連接,而系統(tǒng)選用的FPGA芯片XC3S400A最大可用I/O為311個,可滿足設(shè)計要求。同時為了便于后期的DSP數(shù)據(jù)處理,數(shù)據(jù)以字的模式輸出。
2.3 FPGA功能設(shè)計
若DSP直接操作ADC芯片,頻繁地接收來自ADC芯片的反饋信號,進入中斷程序讀取ADC輸出總線上的數(shù)據(jù),不僅降低了DSP的工作效率,而且影響角速度解算的實時性、精度。為此,系統(tǒng)采用FPGA設(shè)計了ADC控制器、FIFO存儲器。其中ADC控制器負(fù)責(zé)對A/D芯片的控制,F(xiàn)IFO存儲器用來緩存模/數(shù)轉(zhuǎn)化完成后的數(shù)據(jù)。
2.3.1 ADC控制器設(shè)計
從AD7656的并行接口時序圖[1]可以看出,AD7656的啟動轉(zhuǎn)換較為簡單,但轉(zhuǎn)換后數(shù)據(jù)的讀取,因涉及到6個通道的數(shù)據(jù),較為復(fù)雜。而6個通道的數(shù)據(jù)讀取是按照一定的順序進行的,并且各階段均有相應(yīng)的啟動和狀態(tài)信號,所以系統(tǒng)引用狀態(tài)機的方式來實現(xiàn)ADC控制器。圖5為ADC控制器的狀態(tài)轉(zhuǎn)移圖,整個ADC控制器(狀態(tài)機)共分為5個狀態(tài):開始、轉(zhuǎn)換、讀數(shù)據(jù)、間歇、空閑,不同狀態(tài)之間的轉(zhuǎn)移嚴(yán)格遵照AD7656并行接口的時序要求。
圖5 ADC控制器狀態(tài)轉(zhuǎn)移圖
(1) 在開始狀態(tài)下,ADC控制器將連接AD7656 CONVEST的引腳拉高,啟動轉(zhuǎn)換,直至AD7656輸出的反饋信號忙(BUSY)變?yōu)楦唠娖?,表明A/D轉(zhuǎn)化已成功啟動,此時再把CONVEST引腳拉低,為下一次轉(zhuǎn)換做準(zhǔn)備。
(2) 轉(zhuǎn)換狀態(tài)。ADC控制器不輸出任何控制信號,等待AD7656完成模/數(shù)轉(zhuǎn)換(轉(zhuǎn)換時間大約為3.1 μs),直至忙(BUSY)引腳輸出低電平,表明模/數(shù)轉(zhuǎn)換已完成。
(3) 讀數(shù)據(jù)狀態(tài)。當(dāng)忙(BUSY)輸出低電平后,便進入這一狀態(tài),開始讀某一通道的數(shù)據(jù)。A/D轉(zhuǎn)換完成后,數(shù)據(jù)寄存在ADC輸出數(shù)據(jù)寄存器中,需要及時啟動讀信號線RD將數(shù)據(jù)讀出,寫入本系統(tǒng)設(shè)計的FIFO中,并等待FIFO寫成功信號(Fifo WrRe)有效。若FIFO寫成功信號(Fifo WrRe)有效,ADC控制器則進入下一狀態(tài)——間隔。
(4) 間隔狀態(tài)。某一通道的數(shù)據(jù)成功寫入FIFO后,ADC控制器進入這一狀態(tài)。設(shè)置間隔狀態(tài)的主要目的,是因為對6個通道數(shù)據(jù)的讀取不能持續(xù)進行,同時也為了辨別每個通道數(shù)據(jù)在FIFO中的存放位置,便于DSP對數(shù)據(jù)的提取。在間隔狀態(tài)下,模/數(shù)轉(zhuǎn)換芯片的讀信號線無效,數(shù)據(jù)的讀取暫時停止。只要6個通道數(shù)據(jù)的讀取沒有全部完成,并且FIFO寫成功信號無效,幾個時鐘周期后ADC控制器又會返回讀數(shù)據(jù)狀態(tài),繼續(xù)對下一個通道數(shù)據(jù)進行讀取。若是6個通道數(shù)據(jù)的讀取全部完成,則進入空閑狀態(tài)。
(5) 空閑狀態(tài)。其是一種待命狀態(tài),不對外界發(fā)送任何控制信息,但每個時鐘周期均會檢驗一次CONVEST信號,一旦有效,控制器便會轉(zhuǎn)入開始狀態(tài)。
ISE的狀態(tài)機工具STATE CAD可以把圖5所示的狀態(tài)轉(zhuǎn)移圖直接轉(zhuǎn)換為相應(yīng)的VHDL/Verilog代碼,但本系統(tǒng)為了把每個通道數(shù)據(jù)準(zhǔn)確地存放在系統(tǒng)指定存儲區(qū)域中,需要在讀每個通道數(shù)據(jù)的同時設(shè)計計數(shù)器,同時也為了調(diào)試的方便,ADC控制器部分的代碼采用手動編寫。
2.3.2 FIFO存儲器設(shè)計
FIFO的設(shè)計可以使DSP專注于數(shù)據(jù)解算而無需頻繁的進行數(shù)據(jù)讀取操作,當(dāng)FIFO中的數(shù)據(jù)達到一定量時,DSP再對FIFO中的數(shù)據(jù)集中讀取,使低速的ADC可以與高速的DSP協(xié)調(diào)工作,并提高DSP的效率。同時AD7656模/數(shù)轉(zhuǎn)換完成后,數(shù)據(jù)的輸出順序是第一通道、第二通道…第六通道,而FIFO屬于先進先出的存儲器,當(dāng)DSP需要讀取某一通道的數(shù)據(jù)時,尋址非常方便。
Xilinx提供了免費的IP核FIFO Generator v4.3用來生成FIFO。利用該IP核,用戶可自主配置、選擇存儲器的存儲深度、數(shù)據(jù)寬度、讀數(shù)據(jù)方式、狀態(tài)標(biāo)志、握手信號、存儲器空/滿信號等。
本系統(tǒng)為兩片ADC分別設(shè)計了一片F(xiàn)IFO,調(diào)用FPGA內(nèi)部的塊狀RAM實現(xiàn),每片F(xiàn)IFO的存儲深度均設(shè)為2 KB,寫入數(shù)據(jù)寬度和輸出數(shù)據(jù)寬度均設(shè)為16位;FIFO的讀/寫時鐘采用異步,寫時鐘為10 KHz,讀時鐘為1 MHz;FIFO的讀采取首字直傳模式(First Word Fall Through,F(xiàn)WFT),避免讀操作時一個周期的延遲。
圖6為ADC控制器與FIFO的連接圖。模/數(shù)轉(zhuǎn)換完成后,轉(zhuǎn)換數(shù)據(jù)出現(xiàn)在AD7656的輸出數(shù)據(jù)總線上,ADC控制器便啟動WR EN信號,向FIFO中寫數(shù)據(jù);進行下一通道數(shù)據(jù)的寫操作前,ADC控制器先檢測寫成功信號(Fifo WrRe)是否有效,只有寫成功信號有效,才繼續(xù)寫數(shù)據(jù),從而保證寫操作的正確性;DSP不斷查詢FIFO反饋的滿信號FULL是否有效,若FIFO已滿,則DSP及時將FIFO中的數(shù)據(jù)讀走。
圖6 ADC控制器與FIFO的連接圖
2.4 FPGA與DSP的通信設(shè)計
本系統(tǒng)中,F(xiàn)PGA作為DSP的異步外設(shè),接在DSP的外存儲器接口EMIF上,如圖7所示。TMS320C6713的異步接口非常方便,用戶除了通過硬件連接改變讀/寫時序以外,還可以通過對EMIF全局控制寄存器和相應(yīng)的CEX空間控制寄存器進行參數(shù)配置來改變讀寫周期,實現(xiàn)與不同速度和類型的異步器件的直接接口。為了方便DSP對FPGA中的不同功能模塊讀/寫,系統(tǒng)以配置控制寄存器參數(shù)的方式為主。TMS320C6713的EMIF整個外部空間容量為64 MB,分為CE0~CE3四個區(qū)間,每個空間彼此獨立,可以進行不同的訪問控制。系統(tǒng)將CE2,CE3兩個區(qū)間分配給FPGA:區(qū)間CE2用來設(shè)計ADC控制器,占用的地址范圍為0xA0000000~0xA0000FF;區(qū)間CE3用來設(shè)計FIFO,共調(diào)用4 KB的空間用來存儲數(shù)據(jù),其他空間用來設(shè)計相關(guān)的控制寄存器。
圖7 DSP與FPGA接口示意圖
圖7中,F(xiàn)PGA部分的CE,OE等接口,實物連接時均為FPGA的I/O口。DSP遵照異步讀寫的時序要求來控制CEX,AOE,AWE三根信號線,實現(xiàn)對FPGA的控制。
3 系統(tǒng)軟件設(shè)計
系統(tǒng)的程序流程如圖8所示。系統(tǒng)復(fù)位后,對系統(tǒng)的各個模塊進行初始化設(shè)置,主要包括系統(tǒng)狀態(tài)設(shè)置、EMIF端口設(shè)置、數(shù)據(jù)采集頻率設(shè)置、中斷寄存器設(shè)置等;初始化完成后,啟動定時器,等待中斷發(fā)生;中斷發(fā)生后,軟件開始讀取FIFO中的數(shù)據(jù),并將讀取到的數(shù)據(jù)導(dǎo)入濾波和角速度解算函數(shù),開始濾波、解算,并將解算結(jié)果實時輸出到上位機和指定的存儲位置;若預(yù)定的解算時間到達,結(jié)束程序,若預(yù)定的解算時間還未到達,則等待下一次中斷,繼續(xù)讀取數(shù)據(jù)、解算。
圖8 系統(tǒng)程序流程圖
4 結(jié) 語
本文設(shè)計的角速度解算系統(tǒng)最高可測轉(zhuǎn)速達30 r/s,解決了陀螺角速度測量范圍小,不能承受較大線性沖擊的問題。整個系統(tǒng)電路半徑僅5 cm,裝載方便;MEMS三軸高g平面加速度計和三軸磁傳感器的選用,不僅使大量程角速度解算系統(tǒng)的研制成為可能,同時也消除了以往多個傳感器立體安裝引起的誤差。以FPGA作為協(xié)處理器,實現(xiàn)了對多路傳感器信號的高速實時采集,顯著提高了DSP解算角速度的效率,同時也用FPGA設(shè)計了其他接口,減少了芯片數(shù)量,降低了功耗,節(jié)省了成本。
參考文獻
[1] 史震,于秀萍,馬澍田.無陀螺捷聯(lián)式慣性導(dǎo)航系統(tǒng)[M].哈爾濱:哈爾濱工程大學(xué)出版社,2005.
[2] 丁明理,王祁.無陀螺慣性測量組合實驗系統(tǒng)設(shè)計[J].哈爾濱工業(yè)大學(xué)學(xué)報,2006,38(10):1748?1749.
[3] 崔敏,馬鐵華,張萌.無陀螺慣性測量系統(tǒng)的標(biāo)定及誤差補償研究[J].電子測量與儀器學(xué)報,2009,23(9):23?26.
[4] 張寶山,黃衛(wèi)權(quán).多通道高精度AD芯片AD7656在捷聯(lián)慣性導(dǎo)航系統(tǒng)中的應(yīng)用[J].應(yīng)用科技,2007,34(1):15?18.
[5] 楊杰,史震,岳鵬,等.無陀螺慣性測量系統(tǒng)角速度估計算法[J].彈箭與制導(dǎo)學(xué)報,2010,30(3):25?28.
[6] 馬國梁,李巖,葛敬飛.磁阻傳感器測量旋轉(zhuǎn)彈滾轉(zhuǎn)姿態(tài)的原理分析[J].彈道學(xué)報,2012,24(1):32?36.
[7] 包超,郭美鳳,周斌,等.MIMU/GPS組合導(dǎo)航系統(tǒng)小型化設(shè)計[J].傳感器與微系統(tǒng),2014, 33(1):116?119.
[8] 梁志劍,馬鐵華,范錦彪,等.飛行體姿態(tài)慣性測量技術(shù)綜述[J].探測與控制學(xué)報,2010,32(5):11?15.
[9] 史震.無陀螺捷聯(lián)慣導(dǎo)系統(tǒng)中加速度計配置方式[J].中國慣性技術(shù)學(xué)報,2002,10(1):15?19.
[10] 張遠(yuǎn)超,蔡體菁.嵌入式MIMU/GPS緊組合導(dǎo)航數(shù)據(jù)控制實現(xiàn)[J].艦船電子工程,2011,31(4):77?80.
[11] 宋玥,高偉強,閻秋生.基于DSP?TMS320C6713控制系統(tǒng)的最小系統(tǒng)板的設(shè)計[J].現(xiàn)代電子技術(shù),2008,31(8):41?43.
[12] 蔣學(xué)東.基于FPGA實現(xiàn)多路模擬信號自適應(yīng)采集系統(tǒng)[J].現(xiàn)代電子技術(shù),2010,33(8):27?29.
[13] 陳國彬,張曉明,崔星,等.基于磁阻傳感器的相對轉(zhuǎn)速測量系統(tǒng)[J].彈箭與制導(dǎo)學(xué)報,2011,31(5):196?199.
[14] 常樹茂,王利,弓楠.基于地磁傳感器的彈丸轉(zhuǎn)數(shù)測試[J].彈箭與制導(dǎo)學(xué)報,2011,31(5):200?205.
[15] ADI公司.AD7656數(shù)據(jù)手冊[EB/OL].[2012?11?06].http://wenku.baidu.com.
圖7 DSP與FPGA接口示意圖
圖7中,F(xiàn)PGA部分的CE,OE等接口,實物連接時均為FPGA的I/O口。DSP遵照異步讀寫的時序要求來控制CEX,AOE,AWE三根信號線,實現(xiàn)對FPGA的控制。
3 系統(tǒng)軟件設(shè)計
系統(tǒng)的程序流程如圖8所示。系統(tǒng)復(fù)位后,對系統(tǒng)的各個模塊進行初始化設(shè)置,主要包括系統(tǒng)狀態(tài)設(shè)置、EMIF端口設(shè)置、數(shù)據(jù)采集頻率設(shè)置、中斷寄存器設(shè)置等;初始化完成后,啟動定時器,等待中斷發(fā)生;中斷發(fā)生后,軟件開始讀取FIFO中的數(shù)據(jù),并將讀取到的數(shù)據(jù)導(dǎo)入濾波和角速度解算函數(shù),開始濾波、解算,并將解算結(jié)果實時輸出到上位機和指定的存儲位置;若預(yù)定的解算時間到達,結(jié)束程序,若預(yù)定的解算時間還未到達,則等待下一次中斷,繼續(xù)讀取數(shù)據(jù)、解算。
圖8 系統(tǒng)程序流程圖
4 結(jié) 語
本文設(shè)計的角速度解算系統(tǒng)最高可測轉(zhuǎn)速達30 r/s,解決了陀螺角速度測量范圍小,不能承受較大線性沖擊的問題。整個系統(tǒng)電路半徑僅5 cm,裝載方便;MEMS三軸高g平面加速度計和三軸磁傳感器的選用,不僅使大量程角速度解算系統(tǒng)的研制成為可能,同時也消除了以往多個傳感器立體安裝引起的誤差。以FPGA作為協(xié)處理器,實現(xiàn)了對多路傳感器信號的高速實時采集,顯著提高了DSP解算角速度的效率,同時也用FPGA設(shè)計了其他接口,減少了芯片數(shù)量,降低了功耗,節(jié)省了成本。
參考文獻
[1] 史震,于秀萍,馬澍田.無陀螺捷聯(lián)式慣性導(dǎo)航系統(tǒng)[M].哈爾濱:哈爾濱工程大學(xué)出版社,2005.
[2] 丁明理,王祁.無陀螺慣性測量組合實驗系統(tǒng)設(shè)計[J].哈爾濱工業(yè)大學(xué)學(xué)報,2006,38(10):1748?1749.
[3] 崔敏,馬鐵華,張萌.無陀螺慣性測量系統(tǒng)的標(biāo)定及誤差補償研究[J].電子測量與儀器學(xué)報,2009,23(9):23?26.
[4] 張寶山,黃衛(wèi)權(quán).多通道高精度AD芯片AD7656在捷聯(lián)慣性導(dǎo)航系統(tǒng)中的應(yīng)用[J].應(yīng)用科技,2007,34(1):15?18.
[5] 楊杰,史震,岳鵬,等.無陀螺慣性測量系統(tǒng)角速度估計算法[J].彈箭與制導(dǎo)學(xué)報,2010,30(3):25?28.
[6] 馬國梁,李巖,葛敬飛.磁阻傳感器測量旋轉(zhuǎn)彈滾轉(zhuǎn)姿態(tài)的原理分析[J].彈道學(xué)報,2012,24(1):32?36.
[7] 包超,郭美鳳,周斌,等.MIMU/GPS組合導(dǎo)航系統(tǒng)小型化設(shè)計[J].傳感器與微系統(tǒng),2014, 33(1):116?119.
[8] 梁志劍,馬鐵華,范錦彪,等.飛行體姿態(tài)慣性測量技術(shù)綜述[J].探測與控制學(xué)報,2010,32(5):11?15.
[9] 史震.無陀螺捷聯(lián)慣導(dǎo)系統(tǒng)中加速度計配置方式[J].中國慣性技術(shù)學(xué)報,2002,10(1):15?19.
[10] 張遠(yuǎn)超,蔡體菁.嵌入式MIMU/GPS緊組合導(dǎo)航數(shù)據(jù)控制實現(xiàn)[J].艦船電子工程,2011,31(4):77?80.
[11] 宋玥,高偉強,閻秋生.基于DSP?TMS320C6713控制系統(tǒng)的最小系統(tǒng)板的設(shè)計[J].現(xiàn)代電子技術(shù),2008,31(8):41?43.
[12] 蔣學(xué)東.基于FPGA實現(xiàn)多路模擬信號自適應(yīng)采集系統(tǒng)[J].現(xiàn)代電子技術(shù),2010,33(8):27?29.
[13] 陳國彬,張曉明,崔星,等.基于磁阻傳感器的相對轉(zhuǎn)速測量系統(tǒng)[J].彈箭與制導(dǎo)學(xué)報,2011,31(5):196?199.
[14] 常樹茂,王利,弓楠.基于地磁傳感器的彈丸轉(zhuǎn)數(shù)測試[J].彈箭與制導(dǎo)學(xué)報,2011,31(5):200?205.
[15] ADI公司.AD7656數(shù)據(jù)手冊[EB/OL].[2012?11?06].http://wenku.baidu.com.
圖7 DSP與FPGA接口示意圖
圖7中,F(xiàn)PGA部分的CE,OE等接口,實物連接時均為FPGA的I/O口。DSP遵照異步讀寫的時序要求來控制CEX,AOE,AWE三根信號線,實現(xiàn)對FPGA的控制。
3 系統(tǒng)軟件設(shè)計
系統(tǒng)的程序流程如圖8所示。系統(tǒng)復(fù)位后,對系統(tǒng)的各個模塊進行初始化設(shè)置,主要包括系統(tǒng)狀態(tài)設(shè)置、EMIF端口設(shè)置、數(shù)據(jù)采集頻率設(shè)置、中斷寄存器設(shè)置等;初始化完成后,啟動定時器,等待中斷發(fā)生;中斷發(fā)生后,軟件開始讀取FIFO中的數(shù)據(jù),并將讀取到的數(shù)據(jù)導(dǎo)入濾波和角速度解算函數(shù),開始濾波、解算,并將解算結(jié)果實時輸出到上位機和指定的存儲位置;若預(yù)定的解算時間到達,結(jié)束程序,若預(yù)定的解算時間還未到達,則等待下一次中斷,繼續(xù)讀取數(shù)據(jù)、解算。
圖8 系統(tǒng)程序流程圖
4 結(jié) 語
本文設(shè)計的角速度解算系統(tǒng)最高可測轉(zhuǎn)速達30 r/s,解決了陀螺角速度測量范圍小,不能承受較大線性沖擊的問題。整個系統(tǒng)電路半徑僅5 cm,裝載方便;MEMS三軸高g平面加速度計和三軸磁傳感器的選用,不僅使大量程角速度解算系統(tǒng)的研制成為可能,同時也消除了以往多個傳感器立體安裝引起的誤差。以FPGA作為協(xié)處理器,實現(xiàn)了對多路傳感器信號的高速實時采集,顯著提高了DSP解算角速度的效率,同時也用FPGA設(shè)計了其他接口,減少了芯片數(shù)量,降低了功耗,節(jié)省了成本。
參考文獻
[1] 史震,于秀萍,馬澍田.無陀螺捷聯(lián)式慣性導(dǎo)航系統(tǒng)[M].哈爾濱:哈爾濱工程大學(xué)出版社,2005.
[2] 丁明理,王祁.無陀螺慣性測量組合實驗系統(tǒng)設(shè)計[J].哈爾濱工業(yè)大學(xué)學(xué)報,2006,38(10):1748?1749.
[3] 崔敏,馬鐵華,張萌.無陀螺慣性測量系統(tǒng)的標(biāo)定及誤差補償研究[J].電子測量與儀器學(xué)報,2009,23(9):23?26.
[4] 張寶山,黃衛(wèi)權(quán).多通道高精度AD芯片AD7656在捷聯(lián)慣性導(dǎo)航系統(tǒng)中的應(yīng)用[J].應(yīng)用科技,2007,34(1):15?18.
[5] 楊杰,史震,岳鵬,等.無陀螺慣性測量系統(tǒng)角速度估計算法[J].彈箭與制導(dǎo)學(xué)報,2010,30(3):25?28.
[6] 馬國梁,李巖,葛敬飛.磁阻傳感器測量旋轉(zhuǎn)彈滾轉(zhuǎn)姿態(tài)的原理分析[J].彈道學(xué)報,2012,24(1):32?36.
[7] 包超,郭美鳳,周斌,等.MIMU/GPS組合導(dǎo)航系統(tǒng)小型化設(shè)計[J].傳感器與微系統(tǒng),2014, 33(1):116?119.
[8] 梁志劍,馬鐵華,范錦彪,等.飛行體姿態(tài)慣性測量技術(shù)綜述[J].探測與控制學(xué)報,2010,32(5):11?15.
[9] 史震.無陀螺捷聯(lián)慣導(dǎo)系統(tǒng)中加速度計配置方式[J].中國慣性技術(shù)學(xué)報,2002,10(1):15?19.
[10] 張遠(yuǎn)超,蔡體菁.嵌入式MIMU/GPS緊組合導(dǎo)航數(shù)據(jù)控制實現(xiàn)[J].艦船電子工程,2011,31(4):77?80.
[11] 宋玥,高偉強,閻秋生.基于DSP?TMS320C6713控制系統(tǒng)的最小系統(tǒng)板的設(shè)計[J].現(xiàn)代電子技術(shù),2008,31(8):41?43.
[12] 蔣學(xué)東.基于FPGA實現(xiàn)多路模擬信號自適應(yīng)采集系統(tǒng)[J].現(xiàn)代電子技術(shù),2010,33(8):27?29.
[13] 陳國彬,張曉明,崔星,等.基于磁阻傳感器的相對轉(zhuǎn)速測量系統(tǒng)[J].彈箭與制導(dǎo)學(xué)報,2011,31(5):196?199.
[14] 常樹茂,王利,弓楠.基于地磁傳感器的彈丸轉(zhuǎn)數(shù)測試[J].彈箭與制導(dǎo)學(xué)報,2011,31(5):200?205.
[15] ADI公司.AD7656數(shù)據(jù)手冊[EB/OL].[2012?11?06].http://wenku.baidu.com.