0、引言
北斗衛(wèi)星導(dǎo)航系統(tǒng)(BDS)是中國(guó)正在實(shí)施的自主發(fā)展、獨(dú)立運(yùn)行的全球衛(wèi)星導(dǎo)航系統(tǒng),致力于向全球用戶提供高質(zhì)量的定位、導(dǎo)航、授時(shí)服務(wù),并能向有更高要求的授權(quán)用戶提供進(jìn)一步服務(wù),軍用與民用目的兼具。
中國(guó)在2003年完成了具有區(qū)域?qū)Ш焦δ艿谋倍沸l(wèi)星導(dǎo)航試驗(yàn)系統(tǒng),之后開(kāi)始構(gòu)建服務(wù)全球的北斗衛(wèi)星導(dǎo)航系統(tǒng),于2012年起向亞太大部分地區(qū)正式提供服務(wù),并計(jì)劃至2020年完成全球系統(tǒng)的構(gòu)建。
北斗衛(wèi)星導(dǎo)航系統(tǒng)除能夠獲取時(shí)間信息和位置信息外,其主要特點(diǎn)是備有短報(bào)文通信功能,使得在系統(tǒng)覆蓋區(qū)域內(nèi)的終端用戶可以進(jìn)行雙向通信,這是其他衛(wèi)星導(dǎo)航系統(tǒng)所沒(méi)有的創(chuàng)新性功能,具備了通信與導(dǎo)航相結(jié)合的特色服務(wù)。而目前市場(chǎng)上以北斗衛(wèi)星作為導(dǎo)航系統(tǒng)的商品尚不是很多,特別是民用產(chǎn)品目前還處于起步階段,因此北斗相關(guān)應(yīng)用的巨大潛在市場(chǎng)還有待挖掘和開(kāi)發(fā)。本文提出的基于藍(lán)牙模塊的北斗通信便攜式終端亦是在北斗應(yīng)用市場(chǎng)的一個(gè)積極嘗試。
1、北斗終端系統(tǒng)簡(jiǎn)介
北斗導(dǎo)航定位系統(tǒng)和其他的導(dǎo)航定位系統(tǒng)一樣,用戶應(yīng)用終端設(shè)備始終是其一個(gè)重要組成部分,主要負(fù)責(zé)完成北斗信息接收,實(shí)現(xiàn)用戶特定的應(yīng)用需求。從衛(wèi)星導(dǎo)航終端的應(yīng)用對(duì)象來(lái)劃分,用戶應(yīng)用終端通常包括手持式終端、車載式終端、艦載式終端以及嵌入式終端等多種類型,提供實(shí)時(shí)的導(dǎo)航定位、報(bào)文通信和授時(shí)業(yè)務(wù)。其主要組成部分為北斗接收天線、北斗射頻信號(hào)處理模塊以及北斗基帶信息解析處理模塊,完成對(duì)北斗射頻信號(hào)的接收,解調(diào)以及數(shù)據(jù)解析的功能。
北斗衛(wèi)星通信采用BCD 編碼長(zhǎng)報(bào)文,每幀報(bào)文長(zhǎng)度大于200 B/次。通信主要有兩種類型:一種是用戶終端設(shè)備向北斗空間終端發(fā)出的控制指令;一種是北斗空間終端發(fā)送回來(lái)的北斗信息數(shù)據(jù)信息。這些通信數(shù)據(jù)幀格式如下:
幀頭:控制指令中的幀頭包含同步頭和指令類型,而接收信息數(shù)據(jù)幀的幀頭則包含同步頭和接收信息類型;幀長(zhǎng):表明數(shù)據(jù)幀長(zhǎng)度;源地址:表明控制指令發(fā)送地址或是接收信息接收地址;數(shù)據(jù)幀內(nèi)容:包含控制指令通信申請(qǐng)信息或是接收信息幀的信息內(nèi)容;校驗(yàn)碼:控制指令數(shù)據(jù)幀和接收信息幀都采用校驗(yàn)和的方式對(duì)內(nèi)容進(jìn)行校驗(yàn),即將校驗(yàn)碼之前的數(shù)據(jù)異或和,與校驗(yàn)碼做比較,檢測(cè)數(shù)據(jù)幀的正確性。
2、系統(tǒng)硬件模塊設(shè)計(jì)
2.1 系統(tǒng)整體設(shè)計(jì)
北斗終端系統(tǒng)可分為北斗射頻信號(hào)處理模塊和北斗用戶信息解析處理模塊。目前市面上的這兩部分多采用有線方式相連,而北斗射頻信號(hào)處理模塊的天線和射頻基帶部分體積較大,若是將此部分與北斗用戶信息解析處理模塊結(jié)合在一起,在實(shí)際應(yīng)用中會(huì)有諸多不便。針對(duì)這一應(yīng)用現(xiàn)狀,本課題研究的北斗終端在射頻信號(hào)處理部分與北斗用戶信息解析處理部分加入了藍(lán)牙通信功能模塊,通過(guò)藍(lán)牙無(wú)線傳輸?shù)姆绞较噙B,使得北斗用戶信息解析處理模塊體積大大減小,便于用戶攜帶。因此,本論文設(shè)計(jì)的北斗終端系統(tǒng)由北斗射頻信號(hào)處理模塊、北斗用戶信息解析處理模塊以及藍(lán)牙通信模塊組成。系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)北斗終端總體結(jié)構(gòu)框如圖1所示。
2.2 北斗終端射頻信號(hào)處理模塊
北斗終端射頻信號(hào)解調(diào)接收模塊主要負(fù)責(zé)接收北斗空間工作站發(fā)來(lái)的北斗射頻信息,調(diào)理和解調(diào)輸出。
本模塊主要是基于FDBD3111北斗RDSS射頻基帶模塊及其應(yīng)用電路組成,該模塊集成了LNA低噪放、射頻通道、PA功放和基帶處理四個(gè)功能模塊,可接收/發(fā)射北斗射頻信號(hào),輸出基帶信號(hào),輸出接口為通用串口接口。
利用該模塊即可將串口Rx輸入的北斗指令信息調(diào)制發(fā)送出去,又可以將天線接收的北斗信號(hào)解調(diào)通過(guò)串口的Tx 輸出。為便于該模塊的測(cè)試,該模塊還加入了基于MAX232芯片的串口電平轉(zhuǎn)換電路,通過(guò)串口轉(zhuǎn)USB線可連接PC機(jī),使得通過(guò)PC機(jī)的串口調(diào)試助手初步測(cè)試模塊電路,本模塊結(jié)構(gòu)如圖2所示。
2.3 藍(lán)牙通信模塊
藍(lán)牙通信模塊,該模塊帶有串口接口,直接接到FDBD3111 北斗RDSS 射頻基帶模塊串口接口,主要負(fù)責(zé)將北斗基帶信息轉(zhuǎn)成藍(lán)牙通信傳輸。該模塊采用CSR公司生產(chǎn)的藍(lán)牙芯片BC417為主控芯片,采用藍(lán)牙V2.0協(xié)議標(biāo)準(zhǔn),工作頻率為2.4 GHz.該芯片帶有串口、USB等接口,可直接將串口或是USB信息轉(zhuǎn)成藍(lán)牙信息發(fā)送出去,也能將藍(lán)牙接收的信息轉(zhuǎn)成串口或是USB輸出[4].通過(guò)AT指令,可將該藍(lán)牙芯片設(shè)置成主機(jī)模式和從機(jī)模式,當(dāng)芯片處于主機(jī)模式時(shí),可直接與從機(jī)模式的芯片相連。當(dāng)芯片處于從機(jī)模式時(shí),則可與手機(jī)藍(lán)牙、電腦藍(lán)牙等帶有藍(lán)牙功能設(shè)備相連,但處于從機(jī)模式的芯片之間不能互聯(lián)。
2.4 北斗終端用戶信息解析處理模塊
北斗終端用戶信息解析處理模塊,主要負(fù)責(zé)發(fā)送特定的北斗指令和對(duì)應(yīng)的北斗信息。該模塊采用基于ARM Cortex-M3 的STM32F103RBT 嵌入式處理器作為主控芯片,該芯片最高可工作在72 MHz頻率,工作電壓為2.0~3.6 V,擁有GPIO、UART、ADC 等豐富的外設(shè)接口,具備優(yōu)異的實(shí)時(shí)性能、杰出的功耗控制和良好外設(shè)性能等諸多優(yōu)點(diǎn),更重要的是ST公司提供了STM32系列處理器固件庫(kù)函數(shù),降低了該芯片開(kāi)發(fā)難度,大大縮短了產(chǎn)品開(kāi)發(fā)周期。
STM32F103RBT 芯片將用戶按鍵外部中斷選擇發(fā)送的北斗指令,加上北斗通信的報(bào)文幀頭信息,長(zhǎng)度信息和校驗(yàn)信息等,通過(guò)藍(lán)牙通信模塊傳輸給FDBD3111北斗RDSS射頻基帶模塊調(diào)制放大,最后輸送到北斗天線上發(fā)送出去;同時(shí),該芯片可讀取并解析藍(lán)牙通信模塊接收的北斗用戶信息,最后顯示在TFT液晶屏上,液晶背景圖片存儲(chǔ)在SD Card中。系統(tǒng)工作框圖如圖3所示。
3、北斗終端系統(tǒng)軟件設(shè)計(jì)
北斗信息處理模塊是北斗終端的核心部分,它將北斗終端的各個(gè)組件以及功能模塊貫穿在一起,通過(guò)北斗信息處理模塊運(yùn)行的系統(tǒng)軟件來(lái)協(xié)同北斗終端的硬件模塊以及軟件功能模塊共同實(shí)現(xiàn)北斗終端的各項(xiàng)功能以及協(xié)議要求。系統(tǒng)軟件總體框圖如圖4所示。
3.1 藍(lán)牙通信模塊
該模塊完成FDBD3111 北斗射頻基帶模塊處理的北斗信息與藍(lán)牙通信信息出傳輸?shù)霓D(zhuǎn)換。由于藍(lán)牙通信功能模塊式基于CSR藍(lán)牙芯片BC417的接口配置,該芯片是集成專用的藍(lán)牙芯片,芯片內(nèi)部已固化了串口或是USB轉(zhuǎn)藍(lán)牙的程序,通過(guò)特定指令配置即可設(shè)置工作模式、數(shù)據(jù)發(fā)送接收波特率等參數(shù)。這種指令叫AT指令,AT即Attention,該指令一般應(yīng)用于終端設(shè)備與PC應(yīng)用之間的連接與通信。通過(guò)PC機(jī)上位機(jī)軟件發(fā)送AT指令,從而對(duì)藍(lán)牙模塊工作模式及工作參數(shù)進(jìn)行設(shè)置。
3.2 北斗信息處理模塊
該模塊是北斗終端軟件的重要組成部分,需要完成發(fā)送和接收北斗衛(wèi)星通信信息。該部分主要是基于STM32F103RBT處理器的嵌入式軟件設(shè)計(jì),需要完成硬件驅(qū)動(dòng)的程序設(shè)計(jì)、北斗信息包的解析處理以及北斗信息顯示界面的設(shè)計(jì)。
按照北斗通信協(xié)議的數(shù)據(jù)幀格式,可以解析出的北斗數(shù)據(jù)信息,在STM32 串口中斷函數(shù)中實(shí)現(xiàn)這一解析的過(guò)程,即不斷的判斷接收數(shù)據(jù)是否與北斗數(shù)據(jù)幀格式相吻合,通過(guò)最后接收到的數(shù)據(jù)校驗(yàn)來(lái)判斷接收數(shù)據(jù)幀正確性。其具體實(shí)現(xiàn)思想如下:
(1)判斷是否接收到幀頭信息,若是則繼續(xù)接收,且已接收字符數(shù)加1.
(2)判斷是否接收到與幀頭對(duì)應(yīng)的北斗數(shù)據(jù)的長(zhǎng)度Len,若是則繼續(xù)接收,且已接收字符數(shù)加1.
(3)接收的都是北斗的信息內(nèi)容,可直接判斷已接收數(shù)據(jù)長(zhǎng)度是否等于Len-1,若是則說(shuō)明接收到最后一個(gè)校驗(yàn)信息,則要將前面接收的數(shù)據(jù)累加,判斷其和是否等于校驗(yàn)信息;若長(zhǎng)度不等于Len-1,則繼續(xù)接收。
(4)若接收數(shù)據(jù)完畢且正確,則將接收成功的標(biāo)志位置1,然后讀取對(duì)應(yīng)的北斗信息,顯示在液晶屏上。
(5)只要接收數(shù)據(jù)的幀頭或是長(zhǎng)度信息不匹配,或是最終校驗(yàn)和錯(cuò)誤,則接收緩沖區(qū)都要清除重新接收,對(duì)應(yīng)變量也都清零重新開(kāi)始計(jì)算。
4、結(jié)語(yǔ)
我國(guó)自主研發(fā)的北斗衛(wèi)星導(dǎo)航系統(tǒng)打破了GPS、GLONASS等衛(wèi)星導(dǎo)航系統(tǒng)在該領(lǐng)域的壟斷地位,具備了精密授時(shí)、快速定位、高可靠導(dǎo)航等優(yōu)點(diǎn),而獨(dú)有的短信通信功能使其應(yīng)用更加廣泛。北斗終端作為北斗導(dǎo)航系統(tǒng)的重要組成部分引起了廣泛關(guān)注,相信在不久的將來(lái)北斗衛(wèi)星導(dǎo)航會(huì)搭配完善的服務(wù),以輕巧好用,實(shí)惠便捷的姿態(tài)融入老百姓的生活中。