【信息科學(xué)與控制工程】
BD/GPS雙模衛(wèi)星通用導(dǎo)航模塊的設(shè)計(jì)與實(shí)現(xiàn)
龔江昆,達(dá)風(fēng)
(武漢大學(xué) 測(cè)繪遙感信息工程國(guó)家重點(diǎn)實(shí)驗(yàn)室, 武漢430079)
摘要:設(shè)計(jì)實(shí)現(xiàn)了一款BD/GPS雙模通用衛(wèi)星導(dǎo)航模塊,可用于包括無(wú)人飛行器自主飛行控制與導(dǎo)航在內(nèi)的多個(gè)領(lǐng)域。該模塊由包括導(dǎo)航核心模塊及外圍EEPROM、備用電池、天線接口、輸出接口等多個(gè)部分組成。通過(guò)設(shè)計(jì)軟件測(cè)試方案,進(jìn)行實(shí)際測(cè)試,證明該模塊具有單模/雙模組合工作能力、定位速度快,定位精度高、接口豐富等優(yōu)點(diǎn),各項(xiàng)性能均達(dá)到了指標(biāo)要求。
關(guān)鍵詞:BD/GPS;衛(wèi)星導(dǎo)航模塊;軟件測(cè)試
收稿日期:2014-12-18
作者簡(jiǎn)介:龔江昆(1989—),男,碩士研究生,主要從事無(wú)人機(jī)自主飛行控制研究。
doi:10.11809/scbgxb2015.06.027
中圖分類號(hào):P228.4
文章編號(hào):1006-0707(2015)06-0109-04
本文引用格式:龔江昆,達(dá)風(fēng).BD/GPS雙模衛(wèi)星通用導(dǎo)航模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].四川兵工學(xué)報(bào),2015(6):109-112.
Citation format:GONG Jiang-kun, DA Feng.Design and Implementation of the BD/GPS Dual-System General Satellite Navigation Module[J].Journal of Sichuan Ordnance,2015(6):109-112.
Design and Implementation of the BD/GPS Dual-System
General Satellite Navigation Module
GONG Jiang-kun, DA Feng
(State Key Laboratory of Information Engineering in Surveying, Mapping and Remote Sensing,
Wuhan University, Wuhan 430079, China)
Abstract:This paper designed and implemented a BD/GPS dual-system general satellite navigation module, which can be used to many fields, including the field of unmanned spacecraft autonomous flight control and navigation. The module consists of navigation core modules along with peripheral EEPROM, backup battery, antenna interface and output interface and other parts. Being proved by the actual software tests, the result shows that module has single mode/dual-mode integrated work ability, fast positioning speed, high positioning accuracy and the advantage of rich interfaces. In a word this module has achieved the design requirements.
Key words: BD/GPS; satellite navigation module; software tests
在自主導(dǎo)航系統(tǒng)中,衛(wèi)星導(dǎo)航模塊居于核心地位。通過(guò)接收在軌衛(wèi)星發(fā)射的無(wú)線電信號(hào)進(jìn)行被動(dòng)測(cè)距,衛(wèi)星導(dǎo)航模塊可向系統(tǒng)提供實(shí)時(shí)位置、航速、航向和時(shí)間等信息,廣泛應(yīng)用于船舶、地面駕駛器、飛行器等領(lǐng)域[1]。
常規(guī)導(dǎo)航模塊多采用GPS、GLNASS、BD系統(tǒng)等單系統(tǒng),比如導(dǎo)航模塊U-BLOX NEO-6 GPS模塊。該模塊采用瑞士U-BLOX芯片NEO-6系列[2]。但是,該系列僅支持GPS系統(tǒng),不支持雙系統(tǒng),具有局限性。
鑒于我國(guó)自主研制的北斗導(dǎo)航系統(tǒng)正逐步完善并已具備區(qū)域定位導(dǎo)航能力,未來(lái)將具備全球定位導(dǎo)航能力,開(kāi)展基于北斗的導(dǎo)航終端研制與應(yīng)用已成為當(dāng)前技術(shù)發(fā)展方向[3],本研究設(shè)計(jì)并實(shí)現(xiàn)了一款BD/GPS雙模的導(dǎo)航模塊(產(chǎn)品代號(hào)Nemobg,下同),用于包括無(wú)人飛行器自主飛行控制與導(dǎo)航在內(nèi)的多個(gè)領(lǐng)域。Nemobg的設(shè)計(jì)要求如下:
1) 支持雙模組合導(dǎo)航,單獨(dú)使用BD導(dǎo)航系統(tǒng)或GPS導(dǎo)航系統(tǒng)。
2) 水平方向圓概率誤差5 m(開(kāi)闊地)。
3) 具有掉電自恢復(fù)功能。
4) 寬電壓輸入。
5) 具有數(shù)據(jù)存儲(chǔ)功能。
1硬件設(shè)計(jì)
按照Nemobg的設(shè)計(jì)要求,選取的UM220III-N芯片[4]作為核心芯片,通過(guò)設(shè)計(jì)外圍電路,構(gòu)建功能完善的導(dǎo)航模塊。Nemobg硬件系統(tǒng)框架如圖1所示。
圖1 Nemobg系統(tǒng)框架
1.1UM220III-N芯片
UM220III-N芯片是和芯星通公司的雙模多頻率高性能SoC(System-on-a-Chip)芯片,可以同時(shí)支持BD2 B1和GPS L1 2個(gè)頻點(diǎn)。其外形尺寸小,使用SMT焊盤(pán),適用于低功耗、低成本的領(lǐng)域。除此之外,UM220III-N支持串口輸入輸出,提供1PPS輸出,包含一個(gè)外部中斷信號(hào)。
其性能標(biāo)稱指標(biāo)包括如表1所示。
表1 UM220III-N的標(biāo)稱參數(shù)指標(biāo)
1.2擴(kuò)展電路
1.2.1電源管理
根據(jù)UM220III-N的工作電壓范圍,為滿足更多應(yīng)用需求,設(shè)計(jì)了電源管理電路。該部分可以使該Nemobg工作電壓正常工作在3 V,誤差在2%以內(nèi),而輸入電壓可以3~6.5 V 之間,這樣一方面增大了輸入電壓范圍,另一方面也可以保證系統(tǒng)工作電壓的穩(wěn)定。為了完成上述功能本模塊采用一款低壓差線性穩(wěn)壓器NCP584[5]。NCP584是一款極低靜態(tài)電流的低壓差線性穩(wěn)壓器,具有使能模式(CE mode)、快速轉(zhuǎn)換模式(FT mode)、低功耗模式(LP mode),其輸出電壓精確且可以根據(jù)實(shí)際需要進(jìn)行調(diào)節(jié),具有線性調(diào)整率和負(fù)載調(diào)整率。此外,電源管理電路還增加了電源指示燈,方便用戶觀察上電情況;以及設(shè)計(jì)了備用電池接口,通過(guò)3V紐扣電池可以在掉電的情況下提供備用電源,增加了Nemobg系統(tǒng)的安全性。
1.2.2復(fù)位管理
由于UM220III-N及天線對(duì)電壓精度要求較高,當(dāng)輸入電壓偏離允許范圍時(shí),要求復(fù)位電路可以實(shí)時(shí)發(fā)現(xiàn)并且可以重新啟動(dòng)系統(tǒng),從而為整個(gè)Nemobg的安全性提供保障。因此,本模塊采用MAX809復(fù)位芯片[6]。作為一款MAX809微處理器復(fù)位芯片,用于監(jiān)控微控制器和其他邏輯系統(tǒng)的電源電壓,可以在上電、掉電和節(jié)電情況下向微控制器提供復(fù)位信號(hào)。本模塊使用電壓門(mén)限值2.6~2.66V,當(dāng)系統(tǒng)電壓低于門(mén)限值時(shí),復(fù)位信號(hào)輸出,直到系統(tǒng)電壓恢復(fù)到正常電壓為止,電路結(jié)構(gòu)如圖2所示。
1.2.3接口電路
接口電路部分,UM220III-N提供串口、IIC、SPI接口。其中串口包括2個(gè)串口,都是TVLL電平,UART1[7]用于數(shù)據(jù)的輸出和固件升級(jí),因此使用MAX3232[8]將TVLL電平轉(zhuǎn)換為RS232[9]電平,作為Nemobg數(shù)據(jù)輸出的主要信息交互接口。另外,UART2、IIC、SPI接口直接引出,作為系統(tǒng)保留接口,方便本模塊應(yīng)用于其他嵌入式設(shè)計(jì)領(lǐng)域。
1.2.4天饋及阻抗匹配
Nemobg采用3V的有源微帶天線,因此可以直接從UM220III-N的VCC_RF引腳通過(guò)饋電電感給天線饋電,電路結(jié)構(gòu)如圖3所示。本部分線路在PCB板設(shè)計(jì)時(shí),要做50 Ω阻抗匹配[10]。
圖2 復(fù)位電路
圖3 天線接口電路
1.2.5數(shù)據(jù)存儲(chǔ)
此外,為了使Nemobg具有數(shù)據(jù)存儲(chǔ)能力,兼顧系統(tǒng)升級(jí)固件需要,使用板載IIC總線,通過(guò)CAT24C256[11]擴(kuò)展了一塊大小為256k的EEPROM。完成的Nemobg實(shí)物圖如圖4所示。
圖4 Nemobg實(shí)物
2軟件測(cè)試設(shè)計(jì)
在上述硬件設(shè)計(jì)的基礎(chǔ)上,通過(guò)設(shè)計(jì)一系列實(shí)驗(yàn),評(píng)價(jià)Nemobg的性能,這些測(cè)試實(shí)驗(yàn)應(yīng)該包括常規(guī)條件下的單點(diǎn)定位精度評(píng)定、精度漂移估計(jì)、定位時(shí)間估計(jì),遮擋干擾條件下的影響,多路徑干擾下的影響等內(nèi)容。
而為了獲得測(cè)試實(shí)驗(yàn)所獲得的數(shù)據(jù)需進(jìn)行軟件測(cè)試設(shè)計(jì)。將Nemobg與自主開(kāi)發(fā)的基于TMS320F28335[12]飛控開(kāi)發(fā)板級(jí)聯(lián)進(jìn)行Nemobg的軟件測(cè)試。
Nemobg輸出的導(dǎo)航數(shù)據(jù)協(xié)議基于NEMA0813[13],擴(kuò)展兼容BD的數(shù)據(jù)協(xié)議,即Unicore協(xié)議[14]。
在該數(shù)據(jù)協(xié)議中,輸入和輸出的語(yǔ)句統(tǒng)稱為消息,而每條消息是由全ASCII字符組成的字符串。
消息的基本格式為:
$MSGNAME,data1,data2,data3,…[*CC]
例如:
$GNRMC,070552.000,A,3031.670883,N,11421.413536,E,0.190,267.283,300414,,E,A*32
$GNGGA,070553.000,3031.670888,N,11421.413483,E,1,20,0.905,84.012,M,0,M,,*5F
$GNGLL,3031.670888,N,11421.413483,E,070553.000,A,A*45
所有的消息都以‘$’(0x24)開(kāi)始,后面是消息名。之后跟有不定數(shù)目的參數(shù)或數(shù)據(jù)。消息名與數(shù)據(jù)之間均以逗號(hào)(0x2C)進(jìn)行分隔。最后一個(gè)參數(shù)之后是可選的校驗(yàn)和,以‘*’(0x2A)與前面的數(shù)據(jù)分割。最后,輸入的消息可以以‘ ’(0x0D)或‘ ’(0x0A)或兩者的任意組合結(jié)束。輸出的消息以“ ”結(jié)束。
每條消息的總長(zhǎng)度不超過(guò)256個(gè)字節(jié)。消息名和參數(shù)、校驗(yàn)和中的字母均不區(qū)分大小寫(xiě)。
本研究主要測(cè)試Nemobg的定位性能,因此本次軟件測(cè)試選取接收$G*GGA數(shù)據(jù)作為案例。
$G*GGA語(yǔ)句是衛(wèi)星導(dǎo)航模塊定位的一條主要語(yǔ)句,也是使用最廣的數(shù)據(jù)。
其中$G*GGA數(shù)據(jù)語(yǔ)句在Unicore的協(xié)議內(nèi)定義如表2所示。
表2 $G*GGA數(shù)據(jù)語(yǔ)句在Unicore協(xié)議內(nèi)定義
本次Nemobg接收數(shù)據(jù)軟件測(cè)試,在DSP飛控開(kāi)發(fā)板上進(jìn)行,測(cè)試采用DSP飛控開(kāi)發(fā)板串口中斷的方式進(jìn)行$G*GGA語(yǔ)句的接收(其他語(yǔ)句可以根據(jù)需要接收),預(yù)設(shè)的通信波特率為9 600 bps。
根據(jù)數(shù)據(jù)結(jié)構(gòu),使用串口中斷接收Nemobg數(shù)據(jù)的主函數(shù)流程圖和中斷服務(wù)函數(shù)流程圖分別如圖5和圖6所示。
圖5 主函數(shù) 圖6 中斷服務(wù)函數(shù)
在整個(gè)軟件中,系統(tǒng)初始化函數(shù)[15]主要完成DSP運(yùn)行的配置,包括系統(tǒng)初始化寄存器、時(shí)鐘、PLL、看門(mén)狗、外設(shè)引腳、中斷向量表、外設(shè)模塊的初始化等。本次涉及外設(shè)主要是串口模塊,需要配置相關(guān)的寄存器和波特率設(shè)置等。
中斷處理函數(shù)是主要的功能實(shí)現(xiàn)函數(shù),其運(yùn)行過(guò)程為:首先,響應(yīng)中斷服務(wù)函數(shù),進(jìn)入中斷處理BD/GPS導(dǎo)航模塊發(fā)過(guò)來(lái)的導(dǎo)航原始信息;其次,清空存放BD/GPS定位的結(jié)構(gòu)體變量,尋找$GNGGA標(biāo)識(shí)頭,以該標(biāo)識(shí)頭篩選出要讀取BD/GPS導(dǎo)航定位語(yǔ)句;再次,置標(biāo)志位,將$GNGGA的字句信息存儲(chǔ)到BD/GPS定位信息結(jié)構(gòu)體指針變量中;最后,判斷該語(yǔ)句信息是否接收完,并且進(jìn)行和校驗(yàn),如果校驗(yàn)有效,則置數(shù)據(jù)有效標(biāo)志位,退出中斷,進(jìn)入該信息進(jìn)一步處理函數(shù)。
導(dǎo)航信息處理函數(shù)主要處理$G*GGA定位語(yǔ)句,包括從語(yǔ)句多種字段中提取經(jīng)緯度和高程的字段;將經(jīng)緯度的度分秒格式換算成度格式;將經(jīng)緯度和高度值通過(guò)坐標(biāo)轉(zhuǎn)換算法轉(zhuǎn)換到WGS84平面坐標(biāo)系下xyH坐標(biāo)值[16];輸出數(shù)據(jù)到相應(yīng)的文件中。
3結(jié)束語(yǔ)
經(jīng)相關(guān)測(cè)試,Nemobg單模BD模式水平定位精度在5 m以內(nèi),單模GPS模式水平定位精度在7 m以內(nèi),雙模BD/GPS模式水平定位精度在4 m以內(nèi)。實(shí)際測(cè)試證明Nemobg雙模BD/GPS模式定位時(shí),所測(cè)試的定位點(diǎn)更集中,更接近測(cè)試點(diǎn)精確坐標(biāo)。
本文設(shè)計(jì)實(shí)現(xiàn)了一款BD/GPS雙模通用衛(wèi)星導(dǎo)航模塊,可用于包括無(wú)人飛行器自主飛行控制與導(dǎo)航在內(nèi)的多個(gè)領(lǐng)域。經(jīng)過(guò)相關(guān)測(cè)試,測(cè)得的性能指標(biāo)包括:
1) 支持雙模組合導(dǎo)航,單模BD導(dǎo)航系統(tǒng)或GPS導(dǎo)航系統(tǒng)3種模式。
2) 水平方向圓概率誤差4 m(開(kāi)闊地)。
3) 可自動(dòng)復(fù)位,具有掉電自恢復(fù)功能。
4) 輸入電壓3~6.5 V,寬電壓輸入。
5) 板載EEPROM,具有數(shù)據(jù)存儲(chǔ)功能。
由上面性能指標(biāo),可知該Nemobg達(dá)到設(shè)計(jì)需求,該設(shè)計(jì)在飛控系統(tǒng)中可用性好,工作穩(wěn)定可靠,定位模式多種,定位精度優(yōu)于單GPS系統(tǒng)或者單BD系統(tǒng),滿足實(shí)時(shí)導(dǎo)航定位要求,并可作為一款通用導(dǎo)航定位模塊適,用于絕大多數(shù)相關(guān)應(yīng)用場(chǎng)合。
參考文獻(xiàn):
[1]Paul D.Groves.GNSS與慣性及多傳感器組合導(dǎo)航系統(tǒng)原理[M].國(guó)防大學(xué)出版社,2010:8-9.
[2]uBlox.NEO-6 u-blox 6 GPS modules datasheet[Z].2010.
[3]中國(guó)衛(wèi)星導(dǎo)航系統(tǒng)管理辦公室.北斗導(dǎo)航系統(tǒng)簡(jiǎn)介[EB/OL].[2010-01-15].http://www.beidou.gov.cn/xtjs.html.2010.
[4]和芯星通科技有限公司.UM220-IIIN BDS/GPS Dual-System Navigation/Positioning Module DataSheet[Z].2013.
[5]Maxim integrated.MAX803/MAX809/MAX810 DataSheet[Z].2012.
[6]ON Semiconductor.NCP584 Datasheet[Z].2008.
[7]聶濤,許世宏.基于FPGA的UART設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2006(2):127-129.
[8]Maxim integrated.MAX3232 DataSheet[Z].2007.
[9]郝立兵.基于FPGA技術(shù)的RS232接口時(shí)序電路設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012,35(11):175-177.
[10]何遠(yuǎn)吉,田曉明.GPS模塊射頻輸入端的阻抗控制[J].現(xiàn)代電子技術(shù),2007(23):171-173.
[11]ON Semiconductor.CAT24C256 Datasheet[Z].2012.
[12]Texas instruments.TMS320F28335 Datasheet[Z].2012.
[13]NMEA office.The NMEA 0183 Protocol[Z].2001.
[14]和芯星通科技有限公司.UM220-IIIN BDS/GPS雙系統(tǒng)導(dǎo)航/定位模塊數(shù)據(jù)接口協(xié)議[Z].2013.
[15]任潤(rùn)柏,周荔丹,姚鋼.TMS320F28X源碼解讀[M].北京:電子工業(yè)出版社,2011:21-23.
[16]張勤,李家權(quán).GPS測(cè)量原理及應(yīng)用[M].北京:科學(xué)出版社,2011:19-20.
[17]徐蓓蓓,關(guān)震宇,張赫,等.無(wú)人飛行器視覺(jué)導(dǎo)航半實(shí)物仿真系統(tǒng)[J].兵工自動(dòng)化,2014(7):24-28.
(責(zé)任編輯楊繼森)