基于DSP的車載GPS/DR組合導(dǎo)航系統(tǒng)硬件設(shè)計
基于DSP的車載GPS/DR組合導(dǎo)航系統(tǒng)硬件設(shè)計
本文引用地址:http://m.butianyuan.cn/article/197715.htm針對低成本組合導(dǎo)航技術(shù)發(fā)展的需要,結(jié)合主要傳感器特點,本文介紹了以浮點DSPTMS320VC33為組合導(dǎo)航算法實現(xiàn)的核心處理器,利用TL16C554進(jìn)行通信口擴(kuò)展的GPS/DR組合導(dǎo)航系統(tǒng)的設(shè)計方案,給出了系統(tǒng)硬件的設(shè)計方法。所設(shè)計的系統(tǒng)具有體積小、成本低、實時性好、可靠性高、擴(kuò)展性好等特點,具有廣泛的應(yīng)用價值。
0引言
目前,差分GPS水平定位精度已經(jīng)達(dá)到3~5m,完全滿足車輛定位精度的要求。但是,由于在城市高建筑群中或穿過立交橋時,常常會出現(xiàn)GPS信號遮擋問題,導(dǎo)致GPS不能正常定位。航位推算(DR)是常用的車輛定位技術(shù),但方向傳感器隨時間積累誤差較大,不能單獨、長時間地使用。采用組合導(dǎo)航系統(tǒng)能夠利用GPS系統(tǒng)提供的位置和速度信息對DR系統(tǒng)的誤差進(jìn)行實時的校正和補償;當(dāng)GPS信號失鎖時,又可通過DR系統(tǒng)完成航位推算,提高了組合導(dǎo)航系統(tǒng)的可靠性。
組合導(dǎo)航系統(tǒng)除了要完成大量運算處理工作外,還要實現(xiàn)慣性測量單元IMU(陀螺儀和加速度計)和GPS等傳感器的數(shù)據(jù)采集、與外部系統(tǒng)的通信、時序邏輯控制和人機(jī)接口等功能。在這種情況下,如果僅用一片DSP芯片,則系統(tǒng)的實時性能較差,因此多數(shù)組合系統(tǒng)都采用兩個或多個DSP或是由一個或幾個通用的微處理器MPU加上一個DSP構(gòu)成主從式多處理器系統(tǒng)的方案。而目前利用DSP與FPGA結(jié)合的方案來處理高速的數(shù)字信號越來越被廣泛采用。
1 GPS/DR組合導(dǎo)航系統(tǒng)組成
該GPS/DR組合系統(tǒng)具有接收和處理里程計信息、電子羅盤信息、慣性測量單元IMU以及GPS的信息的功能,其系統(tǒng)組成主框圖如圖1所示。
GPS提供的絕對位置信息可以為DR提供推算定位的初始值并進(jìn)行誤差校正;另一方面,DR的推算結(jié)果可以用于補償部分GPS定位中的隨機(jī)誤差,從而平滑定位軌跡。所以,利用適當(dāng)?shù)姆椒▽煞N系統(tǒng)組合起來,充分利用其定位信息的互補性,就能夠獲得比單獨使用任何一種方法時都要高的定位精度和可靠性[1]。
2中心處理單元的組成
目前導(dǎo)航系統(tǒng)已經(jīng)發(fā)展成為采用多傳感器數(shù)據(jù)融合的組合導(dǎo)航系統(tǒng),導(dǎo)航計算機(jī)在完成復(fù)雜計算的同時,還要進(jìn)行大量的數(shù)據(jù)通信,因此必須具有豐富的通信接口,完成傳感器數(shù)據(jù)的采集、傳輸任務(wù)。這就需要中心處理單元能夠在進(jìn)行與外部通信的同時,還要保證計算精度和運算速度。
通過對系統(tǒng)進(jìn)行功能分析,導(dǎo)航計算機(jī)需要完成數(shù)據(jù)采集、數(shù)據(jù)處理和數(shù)據(jù)輸出功能。數(shù)據(jù)輸入部分主要完成各種傳感器輸出數(shù)據(jù)的采集;數(shù)據(jù)處理部分主要完成數(shù)據(jù)濾波、微型慣性測量元件的誤差補償和初始對準(zhǔn)、卡爾曼濾波以及進(jìn)行導(dǎo)航參數(shù)解算等等;數(shù)據(jù)輸出部分主要負(fù)責(zé)導(dǎo)航參數(shù)輸出,應(yīng)用于定位導(dǎo)航或者下一步需要的輸入。
由于采用多種傳感器進(jìn)行信息融合,需要較多的外圍通信接口,同時,外部傳感器數(shù)據(jù)輸出通信主要通過符合RS-232標(biāo)準(zhǔn)的異步串行通信口進(jìn)行,如果和中央處理器直接相連,大量的中斷響應(yīng)必將影響到CPU的處理速度,目前各種MCU、MPU可以提供的串口資源也是有限的。
傳統(tǒng)的設(shè)計很多都是采用PC104作為系統(tǒng)的中心處理器,PC104體積大,價格高,不利于系統(tǒng)的小型化、低功耗和低成本的實現(xiàn)。因此,本設(shè)計考慮采用DSP+FPGA+TL16C554的方案進(jìn)行設(shè)計,其中DSP完成主要的導(dǎo)航參數(shù)計算,利用TL16C554進(jìn)行外部通信接口的擴(kuò)展,F(xiàn)PGA完成串口的模擬以及相應(yīng)的邏輯控制以保證三者之間通過數(shù)據(jù)線的高速通信,提高系統(tǒng)的運行效率和運算精度。
中心處理單元的核心處理器要完成大規(guī)模的矩陣運算和代數(shù)運算,因此系統(tǒng)選用浮點DSP芯片TMS320VC33。該芯片具有150MFLOPS和75MIPS的運算速度,單指令周期13ns。TMS320VC33通過提高硬件功能來提高速度,而其他處理器是通過改善軟件功能或編碼速率來提高速度的。這種通過硬件來提高性能的方式在以往單芯片DSP上是不可能實現(xiàn)的。處理器具有在單個周期內(nèi)對整數(shù),浮點數(shù)據(jù)同時執(zhí)行并行乘法算數(shù)運算的強(qiáng)大功能。同時該芯片具有低功耗,低成本等特點,滿足系統(tǒng)的設(shè)計要求[2]。
FPGA具有可編程特性,能夠方便地完成我們所需要的邏輯功能。利用FPGA來擴(kuò)展外圍通信接口,主要是擴(kuò)展TTL電平的串行通信口作為系統(tǒng)的備用。根據(jù)完成串行通信的資源需求以及今后擴(kuò)展使用的考慮,這里采用ALTERA公司的ACEX1K30(以下簡稱ep1k30)來完成這項工作。ep1k30可以提供119000門的資源,具有1728個邏輯宏單元,可以實現(xiàn)UART串口,并同時能夠完成相應(yīng)的譯碼、邏輯控制等功能[3]。
系統(tǒng)包含有多個傳感器,這就要求處理器要擴(kuò)展出多個串口。DSP芯片TMS320VC33本身有串行通信口,如果直接利用DSP片上的串口資源進(jìn)行串行通信,只適用于傳輸數(shù)據(jù)比較少,傳輸速率慢的場合,[]其軟件編程比較復(fù)雜,而且控制串行通訊要占用很大的系統(tǒng)資源,影響傳感器的實時處理功能,因此,本系統(tǒng)采用了TI公司生產(chǎn)的4通道異步收發(fā)器集成芯片TL16C554擴(kuò)展DSP串口,實現(xiàn)傳感器與導(dǎo)航計算機(jī)的通信。該芯片是一種具有串行異步通信。
接口的大規(guī)模集成電路芯片,可以實現(xiàn)數(shù)據(jù)的并/串、串/并的轉(zhuǎn)換功能。其內(nèi)部帶有16字節(jié)的FIFO緩沖器。在FIFO模式下,傳輸和接收前將數(shù)據(jù)緩沖為16字節(jié)數(shù)據(jù)包,減少了CPU的中斷數(shù)量。內(nèi)部包含4片改良的16C550異步傳輸器件,使得串行I/O更加可靠[5]。
中心處理單元的整體硬件設(shè)計框圖如圖2。
評論