盧 剛, 郝順義, 亢紅占
(1.空軍工程大學 航空航天工程學院, 陜西 西安 710038;2.陜西華燕航空儀表有限公司, 陜西 漢中 723102)
一種基于TMS320C6713的捷聯(lián)慣導系統(tǒng)設計*
盧 剛1, 郝順義1, 亢紅占2
(1.空軍工程大學 航空航天工程學院, 陜西 西安 710038;2.陜西華燕航空儀表有限公司, 陜西 漢中 723102)
為適應目前捷聯(lián)慣性導航系統(tǒng)(SINS)實時性好、速度快、精度高、小型化、低功耗發(fā)展需求,設計一種DSP+FPGA的捷聯(lián)慣導系統(tǒng)平臺,采用FPGA完成傳感器數(shù)據(jù)采集與控制;采用高性能TMS320C6713 DSP為核心處理器完成航姿解算;介紹了FPGA與DSP數(shù)據(jù)交互關系;DSP程序采用C語言和匯編語言編寫,F(xiàn)PGA設計采用VHDL語言描述;實驗證明:設計可行,姿態(tài)角誤差在0.05°范圍內,精度符合設計要求。
捷聯(lián)慣導系統(tǒng); 傳感器; TMS320C6713 數(shù)字信號處理器; 現(xiàn)場可編程門陣列
所謂的捷聯(lián)慣導系統(tǒng)(strapdown inertial navigation system,SINS)是指將慣性元件—主要是加速度計和陀螺直接安裝在載體上的慣導系統(tǒng),用“數(shù)學平臺”取代機械平臺對慣性元件測量信息進行處理,從而得到載體位置、姿態(tài)等信息,但這增加了導航計算機的計算量[1]。隨著航空導航技術發(fā)展,對于載體的位置、姿態(tài)信息的實時性、高精度要求越來越高,導航計算機也朝著體積小、速度快、精度高、低功耗等方向發(fā)展。目前,國外有Crossbow公司研制處理器主頻達到400 MHz的單板計算機[2],而國內導航計算機[3~5]對于高性能數(shù)字信號處理器(DSP)的使用還比較少,大多數(shù)研究使用的是以TI公司通用型DSP作為核心處理器,其運算速度、實時性比起國外高性能處理器的導航計算機有較大差距。
針對捷聯(lián)慣導航姿解算中矩陣、積分運算量大的特點,應用現(xiàn)代芯片發(fā)展成果,使用TI公司的TMS320C6713[6]高性能32位浮點DSP作為捷聯(lián)慣導平臺數(shù)據(jù)處理器,采用Xilinx公司XC3S50型號的FPGA芯片作為主要控制器,設計實現(xiàn)了一種DSP+FPGA的捷聯(lián)慣導系統(tǒng)。
圖1 捷聯(lián)慣導系統(tǒng)基本原理Fig 1 Basic principle of SINS
捷聯(lián)慣導系統(tǒng)硬件平臺主要是由慣性測量元件(IMU)、數(shù)據(jù)采集模塊、導航數(shù)據(jù)解算模塊等部分組成。IMU信息是捷聯(lián)慣導平臺運行的基礎,捷聯(lián)慣導平臺IMU元件包括3只加速度計和3只陀螺儀,3只加速度計和3只陀螺是以其敏感軸相互垂直安裝在捷聯(lián)航姿系統(tǒng)坐標系的右、前、上三個方向對應軸上。IMU測量數(shù)據(jù)經由FPGA控制的數(shù)據(jù)采集模塊采集輸送到導航數(shù)據(jù)解算模塊,即在DSP中進行航姿解算,解算出的結果經由RS-429總線輸出送給飛控系統(tǒng)的顯控裝置。捷聯(lián)慣導系統(tǒng)硬件平臺的結構原理圖如圖2所示。
圖2 硬件結構原理框圖Fig 2 Block diagram of hardware structure
2.1 IMU數(shù)據(jù)采集模塊
采用石英撓性加速度計,其輸出為模擬信號,因此,需要將加速度計模擬信號轉換為數(shù)字信號,由FPGA芯片完成數(shù)據(jù)采集。使用量化器完成加速度計的模擬信號轉換為一定頻率的脈沖信號,轉換的脈沖信號由FPGA進行可逆計數(shù)得到數(shù)字信號。FPGA時鐘使能的方法產生2 kHz低頻時鐘信號,對可逆計數(shù)得到的數(shù)字信號進行采樣獲得導航解算所需要加速度計數(shù)據(jù)信息,將采樣數(shù)據(jù)緩存在FPGA中。
設計中使用某型光纖陀螺,其輸出為RS—422數(shù)據(jù)格式的數(shù)字量信息,陀螺輸出數(shù)字信號由MAX3490芯片完成電平轉換,采用串口管理器芯片XR16C854來實現(xiàn)三路陀螺數(shù)據(jù)的采集并直接送至DSP的數(shù)據(jù)總線,從而給DSP提供航姿解算所需格式的陀螺信號.
在IMU數(shù)據(jù)采集中起到主要控制作用的是FPGA,而3路陀螺、3路加速度計信號采集使用的是電平觸發(fā)方式,F(xiàn)PGA產生中斷電平來觸發(fā)DSP的INT5中斷。在FPGA中設計中斷復用邏輯電路,其中,3路陀螺、3路加速度計復用外部中斷INT5,這樣才能保證6路信號同步實時更新。FPGA設計FIFO端口用以接收3路加速度計信號[8],XR16C854為FIFO芯片,由FPGA控制好串口的時序設置,數(shù)據(jù)先進先出,保證了6路信號的時序不出現(xiàn)亂碼狀況。
2.2 DSP模塊
DSP模塊是捷聯(lián)慣導平臺航姿解算的核心,DSP的運算速度、精度決定了平臺的性能。設計采用的是TI公司TMS320C6713高性能32位浮點型DSP芯片,其工作主頻達到225 MHz,最高運算達到1350MFLOPS,即13.5億次操作,滿足航姿解算大量矩陣、積分運算要求;外部有8,16,32 bit尋址,EMIF擁有512 Mbytes的寄存器尋址空間,可與SDRAM,FLASH存儲器無縫對接。
C6713沒有內部FLASH掉電保存功能,外擴FLASH用于C6713掉電后導航程序存儲,采用HY29LV160型號FLASH映射到DSP的CE1空間,起始首地址為0X9000 0000,F(xiàn)LASH的前1 kB空間存放一小段程序,其功能是將FLASH中導航解算程序復制到DSP片內RAM中,DSP上電復位后Bootloader這一小段程序,然后由這段程序來完成導航程序加載。DSP在導航解算中有大量矩陣和積分計算,因此,其內部實時緩存不夠用,外擴一片SDRAM。采用MT48LC4M16A2,4M×16 bit的SDRAM,映射到CE2空間,地址范圍為0xA00 0000~0xA07F FFFFH。
DSP時鐘由外部晶振提供50 MHz頻率,經DSP內部PLL 8倍頻到400 MHz,再經內部分頻提供給CPU和其它外設使用,這樣就滿足整個系統(tǒng)由同一個時鐘源提供頻率。DSP工作電壓為內核(CVdd)1.2 V,I/O接口(DVdd)3.3 V,由TPS54310芯片得到3.3,1.2 V電壓。
2.3 FPGA與DSP接口
整個平臺中DSP和FPGA是兩個主要信號處理器,二者相輔相成,協(xié)調工作。兩者要進行大量數(shù)據(jù)通信,F(xiàn)PGA輸出數(shù)據(jù)經過DSP總線進入DSP芯片,在DSP沒有對FPGA數(shù)據(jù)進行讀操作時要保持高阻態(tài),DSP的選通信號為高電平有效的情況下才把數(shù)據(jù)放到DSP的數(shù)據(jù)總線上。DSP進行一次航姿解算周期約為0.01 s,DSP設計為每隔0.01 s向FPGA發(fā)送一個中斷信號,F(xiàn)PGA控制采集的IMU數(shù)據(jù)傳輸?shù)紻SP進行解算并將解算結果輸出。硬件設計中把DSP的16位數(shù)據(jù)總線與FPGA的16位數(shù)據(jù)總線一一對應連接。DSP通過AWE,ARE和CE3信號控制串口信號,但是這幾個信號不能直接控制串口芯片,而是通過FPGA進行邏輯控制。
DSP處理完的數(shù)據(jù)通過RS-429總線輸出送到飛控顯示系統(tǒng),采用HS3282/3182芯片實現(xiàn)RS—429電平轉換; PC與DSP之間通信以RS—232總線形式完成,采用MAX3232來實現(xiàn)。
捷聯(lián)慣導系統(tǒng)平臺的功能通過軟件來實現(xiàn)的,系統(tǒng)軟件包括2個子系統(tǒng):FPGA和DSP系統(tǒng)。
1)FPGA模塊是采用VHDL語言編程實現(xiàn)功能的。VHDL語言不同于其他軟件語言,其擁有語言功能靈活強大、支持高層次的設計抽象、可應用于設計復雜的數(shù)字電路系統(tǒng)、不依賴廠商和器件,移植性好。FPGA芯片在整個系統(tǒng)中的主要作用是對所有外設與DSP之間的控制和數(shù)據(jù)的傳輸,實現(xiàn)對IMU的信號采樣控制、外部數(shù)字信號的通信以及與DSP的EMIF進行接口和數(shù)據(jù)交互。程序編寫時可以避開具體器件的結構,對被控對象進行系統(tǒng)級的邏輯行為描述進行系統(tǒng)的設計,其可移植能力和多層次設計描述功能強[9]。
2)DSP在該設計中主要用來完成對IMU數(shù)據(jù)的處理,解算獲得航姿信息,即完成大量的數(shù)學運算,沒有使用DSP來實現(xiàn)對外設的邏輯控制。其程序包括兩部分:一是DSP的Bootloader程序;二是捷聯(lián)慣導導航程序,實現(xiàn)整個航姿算法,包括IMU的誤差補償、初始對準、捷聯(lián)航姿解算和導航結果輸出等。采用C語言和匯編語言混合編程,捷聯(lián)算法用C編寫,嵌入少量硬件控制的匯編語言,從而提高整個程序的高效性、準確性。
捷聯(lián)航姿的解算是對IMU數(shù)據(jù)進行處理,得到載體的速度、位置以及航姿信息。捷聯(lián)慣導平臺上電后,DSP初始化后從FLASH中加載導航程序,然后接收IMU數(shù)據(jù)進行航姿系統(tǒng)的初始對準(包括粗對準和精對準,主要是利用加速度計調平等方式),對準完成后,采用四元數(shù)法進行捷聯(lián)航姿解算,最后輸出航姿解算結果。其流程圖如圖3所示。
圖3 軟件運行流程圖Fig 3 Flow chart of software running
本文設計了一種DSP+FPGA的捷聯(lián)慣導系統(tǒng),實現(xiàn)了導航程序的引導加載,對該捷聯(lián)慣導系統(tǒng)進行了試驗調試來驗證其功能和效果,通過PC串口接收IMU實測數(shù)據(jù)和捷聯(lián)慣導系統(tǒng)平臺解算結果,利用Matlab繪制曲線進行數(shù)據(jù)分析。
圖4~圖5為系統(tǒng)平臺進行140 s時長的靜態(tài)純慣導實驗時得到的角度和速度誤差曲線。
圖4 角度誤差Fig 4 Angle error
圖5 速度誤差Fig 5 Velocity error
各導航參數(shù)的誤差值如表1所示。
表1 導航參數(shù)誤差
Tab 1 Navigation parameters errors
參數(shù)航向角誤差(°)俯仰角誤差(°)橫滾角誤差(°)東速誤差(m·s-1)北速誤差(m·s-1)平均值0.36266-0.01502-0.037820-3.758822.82192均方根值0.365350.017130.0386564.028203.34206最大值0.494000.028200.0543006.054305.51650
對曲線圖和數(shù)據(jù)分析可知,在靜態(tài)情況下,俯仰角誤差為0.015 1°,橫滾角誤差為0.037 8°,航向角隨時間發(fā)散,主要原因是缺少外部航向信息;速度在短時間內達到5 m/s,由于慣性導航中速度、位置是通過積分運算得到的,其誤差隨著時間積累而增大。通過實驗調試可知,該設計對于載體的姿態(tài)角的精度滿足實際需求。由于慣性導航的高度通道是發(fā)散的,因此,圖中未給出天向速度信息。
以TMS320C6713高性能32位浮點DSP芯片作為捷聯(lián)慣導平臺的核心處理器,利用FPGA的靈活性控制數(shù)據(jù)采集和外設存儲通信,設計實現(xiàn)了體積小、功耗低、航姿解算速度快、精度高的某捷聯(lián)慣導平臺。通過靜態(tài)試驗調試和分析,證明設計達到了捷聯(lián)航姿的實際要求,由于TMS320C6713的豐富外設接口,設計過程中預留了串行擴展接口用于接入GPS接收機,磁強計等外部導航設備,構成組合導航,這也是下一步研究內容。
[1] 秦永元.慣性導航[M].北京:科學出版社,2007.
[2] Ribes,M,Spahlinger G,Kennler M.0.1deg/h DSP-controlled fiber optic gyroscope[C]∥Ptoceedings of the SPIE:The Internationsl Society for Optical Engineering(USA),1996:199-206.
[3] 許高雁,湯建勛,金世龍.基于DSP和CPLD的小型化導航CPU設計[J].電子技術,2004(9):14-17.
[4] 楊興光,李緒友,叢 麗.基于DSP的光纖陀螺捷聯(lián)導航系統(tǒng)的設計[J].應用科技,2004,31(1):17-19.
[5] 范振洋,郝順義,翁大慶.基于DSP/FPGA的光纖捷聯(lián)航子系統(tǒng)設計[J].計算機測量與控制,2012,20(3):764-767.
[6] TMS320C6713 Floaying-point digital signal processor[DB].Texas Instruments,2005.
[7] 張宗麟.慣性導航與組合導航[M].北京:航空工業(yè)出版社,2000:8.
[8] 李海洋,劉建業(yè),趙 偉.基于FPGA的微小型導航計算機數(shù)據(jù)采集系統(tǒng)設計[J].微計算機應用,2006,1(1):94-97
[9] 王 彥.基于FPGA的工程設計與應用[M].西安:西安電子科技大學出版社,2007.
Design of a strapdown inertial navigation system based on TMS320C6713*
LU Gang1, HAO Shun-yi1, KANG Hong-zhan2
(1.College of Aeronautics and Astronautics Engineering,Air Force Engineering University,Xi’an 710038,China;2.Shaanxi Huayan Aero-instrument Co Ltd,Hanzhong 723102,China )
To adapt to development needs for good real-time,fast speed,high precision,small size,low power consumption,of current SINS design a DSP + FPGA SINS platform,use FPGA to complete sensor data acquisition and control;use high performance TMS320C6713 DSP as the core processor to complete attitude and heading reference system(AHRS); describe interaction relationship between FPGA and DSP; DSP programs are compiled by C language and assembly language,FPGA design is described using VHDL language; test proves the design is feasible,the errors of attitude angle is within 0.05,the precision is up to design criterion.
strapdown inertial navigation system (SINS); sensor; TMS320C6713 DSP; FPGA
10.13873/J.1000—9787(2015)10—0104—03
2015—03—18
總裝備部預研基金資助項目(102080501);航空科學基金資助項目(20100818015)
TP 273
: A
: 1000—9787(2015)10—0104—03
盧 剛(1988-),男,湖北黃岡人,碩士研究生,學科專業(yè)是控制科學與工程,現(xiàn)在研究方向為慣性導航與組合導航。