徐文博,趙利,黃書婷,劉小康
(桂林電子科技大學(xué) 信息與通信學(xué)院,廣西 桂林 541004)
摘要:為了實(shí)現(xiàn)對(duì)各類車輛的有效調(diào)度、協(xié)調(diào)控制和管理,提高物流運(yùn)輸?shù)男屎桶踩?,針?duì)物流系統(tǒng)應(yīng)用環(huán)境,基于STM32微控制器設(shè)計(jì)開發(fā)了一種北斗導(dǎo)航與通信一體化的智能車載網(wǎng)絡(luò)終端。該終端以STM32F103ZET6微控制器為核心,由北斗定位模塊UM220、GPRS模塊SIM900A和ZigBee無(wú)線網(wǎng)絡(luò)模塊組成。其中,UM220模塊負(fù)責(zé)接收北斗衛(wèi)星信號(hào)定位;SIM900A模塊與物流中心通信;無(wú)線ZigBee模塊用于傳輸車載物流相關(guān)信息。實(shí)驗(yàn)表明,該終端能自動(dòng)完成車載網(wǎng)絡(luò)數(shù)據(jù)的采集、處理和傳輸?shù)裙δ?,滿足物流環(huán)境下的應(yīng)用需求。
關(guān)鍵詞:一體化;物流;北斗定位; ZigBee
0引言
隨著我國(guó)物流業(yè)的快速發(fā)展,智能物流管理系統(tǒng)受到廣泛重視,對(duì)車輛精確監(jiān)控與調(diào)度的需求也越來越迫切[1]。國(guó)內(nèi)外眾多車輛監(jiān)控研究機(jī)構(gòu)和公司廠商都已將嵌入式車輛監(jiān)控系統(tǒng)作為研究開發(fā)的重點(diǎn)。
目前,市面上的車載終端產(chǎn)品受不同車型和應(yīng)用場(chǎng)景的限制,通用性較差,有的僅支持車輛定位,功能單一;終端設(shè)備之間無(wú)法方便地組建車載網(wǎng)絡(luò),不能靈活采集各類車載信息,應(yīng)用難以擴(kuò)展;各個(gè)終端及設(shè)備之間的通信沒有統(tǒng)一標(biāo)準(zhǔn),難以互聯(lián)互通[2]。
針對(duì)現(xiàn)有車載終端及應(yīng)用存在的問題,本文開發(fā)了一種基于STM32的北斗定位與通信一體化的智能車載網(wǎng)絡(luò)終端。該終端以STM32F103ZET6微控制器為核心,通過片上三個(gè)串口分別控制UM220、SIM900A和ZigBee模塊。UM220模塊負(fù)責(zé)接收北斗衛(wèi)星信號(hào),對(duì)車輛實(shí)時(shí)定位、跟蹤。利用國(guó)內(nèi)北斗的定位技術(shù)可以擺脫依賴國(guó)外導(dǎo)航的潛在危害[3 4],技術(shù)不再受制于人。SIM900A和ZigBee均為無(wú)線通信模塊,SIM900A模塊利用現(xiàn)有GPRS移動(dòng)通信網(wǎng)絡(luò)基礎(chǔ)設(shè)施,實(shí)現(xiàn)終端設(shè)備與車載平臺(tái)中心站之間定位、跟蹤、控制等信息以及物聯(lián)網(wǎng)信息的傳遞與交互操作;ZigBee則通過短距無(wú)線接口方式[5 6],與各種應(yīng)用傳感器(例如:條碼掃描器、RFID、攝像頭、溫度傳感器等)和手持式應(yīng)用終端連接,組成車載信息網(wǎng)絡(luò),實(shí)現(xiàn)各種應(yīng)用信息的感知和采集。
1系統(tǒng)結(jié)構(gòu)與總體方案設(shè)計(jì)
系統(tǒng)主要由定位通信一體化終端以及物流控制和數(shù)據(jù)中心兩部分組成。系統(tǒng)總體結(jié)構(gòu)如圖1所示。北斗導(dǎo)航系統(tǒng)全天候向地面發(fā)送衛(wèi)星定位信號(hào),定位與通信一體化終端接收衛(wèi)星信號(hào),獲取定位信息,并連同其他所采集的信息,按協(xié)議通過GPRS無(wú)線通信網(wǎng)絡(luò)發(fā)回控制和數(shù)據(jù)圖1系統(tǒng)總體結(jié)構(gòu)圖中心。控制和數(shù)據(jù)中心是系統(tǒng)控制、通信與應(yīng)用的中心,主要由前端數(shù)據(jù)無(wú)線收發(fā)設(shè)備、數(shù)據(jù)庫(kù)、監(jiān)控和管理平臺(tái)組成。前端數(shù)據(jù)無(wú)線收發(fā)設(shè)備用于以無(wú)線方式與一體化終端完成各種通信操作;數(shù)據(jù)庫(kù)對(duì)接收到的數(shù)據(jù)進(jìn)行存儲(chǔ)和處理;監(jiān)控和管理平臺(tái)對(duì)于一體化終端進(jìn)行控制和管理以及數(shù)據(jù)庫(kù)管理。
2終端硬件設(shè)計(jì)
2.1終端硬件結(jié)構(gòu)
車載終端以STM32微控制器為核心,總體架構(gòu)如圖2所示,包含STM32處理控制模塊、電源模塊、BD定位接收模塊、SMS/GPRS模塊、ZigBee收發(fā)模塊及LCD顯示模塊。終端的主電源為車輛電源,終端內(nèi)應(yīng)具備可充電電池,當(dāng)終端失去主電源后,備用電池工作時(shí)間應(yīng)足夠終端向監(jiān)控中心報(bào)警或傳輸必要的數(shù)據(jù)。終端涉及的通信模塊較多,需要根據(jù)各個(gè)不同的通信模塊設(shè)計(jì)專門的供電電源。STM32處理器負(fù)責(zé)數(shù)據(jù)處理及各個(gè)通信模塊間的調(diào)度。SIM900A模塊負(fù)責(zé)將STM32傳來的消息回傳給監(jiān)控和管理平臺(tái)。利用覆蓋范圍廣泛的GPRS移動(dòng)通信網(wǎng)絡(luò)基礎(chǔ)設(shè)施,可以穩(wěn)定可靠地實(shí)現(xiàn)終端與中心之間的通信。信息的回傳以GPRS方式為主,像報(bào)警類的重要信息則采用短消息方式。
另外,車載終端硬件還包含一些外圍電路,比如SD卡、EEPROM以及各模塊間的接口設(shè)計(jì)。制作好的字庫(kù)或者圖片信息放在SD卡里,LCD觸摸屏就能夠任意顯示需要使用的漢字和圖片了。在實(shí)際應(yīng)用中,終端應(yīng)具有斷電保護(hù):當(dāng)終端斷電,系統(tǒng)自動(dòng)進(jìn)入保護(hù)狀態(tài)。一些重要的終端參數(shù)初始化配置信息(比如:心跳間隔、服務(wù)器TCP端口、中心設(shè)定的監(jiān)聽號(hào)碼等)存放在EEPROM存儲(chǔ)芯片中。基于STM32的硬件系統(tǒng)需要設(shè)計(jì)的接口有電源接口、LCD接口、USB接口及串口,串口波特率為9 600 b/s,顯示屏采用34PIN軟排線與系統(tǒng)電路板連接。
2.2主要硬件模塊的選型及設(shè)計(jì)要點(diǎn)
2.2.1STM32核心微控制器
STM32處理器與各模塊間通信,對(duì)接收的數(shù)據(jù)進(jìn)行處理,是整個(gè)終端最核心的部分。采用STM32F103xx系列MCU為核心,STM32F103ZET6具有ARM Cortex-M3內(nèi)核,片內(nèi)集成512 KB Flash、64 KB SRAM、1個(gè)USB、2個(gè)基本定時(shí)器、4個(gè)通用定時(shí)器、2個(gè)高級(jí)定時(shí)器、5個(gè)USART、3個(gè)12位ADC、2個(gè)DAC、3個(gè)SPI、2個(gè)I2C、2個(gè)I2S、1個(gè)SDIO接口、1個(gè)CAN、1個(gè)FSMC總線(支持NOR、NAND、SRAM)、112個(gè)通用I/O口。CPU主頻為72 MHz,采用LQFP144封裝。該芯片的配置非常強(qiáng)大,價(jià)格又十分實(shí)惠。帶有的外部總線FSMC可以用來外擴(kuò)SRAM和連接LCD等,通過FSMC驅(qū)動(dòng)LCD,可顯著提高LCD的刷屏速度。
2.2.2UM220定位模塊
北斗定位接收模塊負(fù)責(zé)接收北斗衛(wèi)星信號(hào),采用和芯星通公司的UM220北斗/GPS雙系統(tǒng)模塊,具有尺寸小、集成度高,功耗低的特點(diǎn),可滿足各種定位需求。UM220系列是和芯星通公司針對(duì)車輛監(jiān)控/導(dǎo)航、手持設(shè)備等應(yīng)用推出的北斗/GPS雙系統(tǒng)模塊。UM220-III是UM220系列模塊的第三代產(chǎn)品,能夠同時(shí)支持BD2 B1、GPS L1兩個(gè)頻點(diǎn)。UM220-III采用和芯星通公司完全自主知識(shí)產(chǎn)權(quán)的“蜂鳥”低功耗GNSS SoC芯片,是目圖3車載終端主程序流程圖前市場(chǎng)上尺寸最小的完全國(guó)產(chǎn)化的北斗/GPS模塊。該模塊集成度高、功耗低,非常適合于集成在小型化的北斗終端上。
2.2.3SIM900A通信模塊
SIM900A是SIMCOM推出的一款尺寸緊湊的GSM/GPRS通信模塊,采用SMT封裝,基于STE的單芯片,采用ARM926EJ-S架構(gòu),性能強(qiáng)大,可以內(nèi)置客戶應(yīng)用程序,廣泛應(yīng)用于車載跟蹤、車隊(duì)管理、無(wú)線POS、手持PDA、智能抄表與電力監(jiān)控等眾多方向。該芯片性能穩(wěn)定,外觀精巧,性價(jià)比高。SIM900A采用工業(yè)標(biāo)準(zhǔn)接口,工作頻率為900 MHz~1 800 MHz, 內(nèi)嵌嵌入式TCP/UDP協(xié)議,可以低功耗實(shí)現(xiàn)語(yǔ)音、短信、數(shù)據(jù)和傳真信息的傳輸;支持點(diǎn)對(duì)點(diǎn)的短消息,支持GPRS數(shù)據(jù)傳輸,適用于2G通信網(wǎng)絡(luò)。模塊提供串行接口和SPI接口,支持AT指令。SIM900A功耗低、尺寸小、價(jià)格低廉,適合緊湊型產(chǎn)品的設(shè)計(jì)和開發(fā)。
2.2.4無(wú)線ZigBee模塊
短距通信模塊采用2.4 GHz IEEE 802.15.4無(wú)線ZigBee模塊(REX3DP型號(hào)),RF模塊采用天線外置方式。模塊采用STM32W108xx系列芯片,帶有ARM Cortex-M3內(nèi)核,具有出色的射頻和低功耗微控制器性能,配置I/O、模數(shù)轉(zhuǎn)換器、定時(shí)器、SPI、I2C和UART,并支持RF4CE、IEEE 802.15.4 MAC軟件庫(kù),帶有64~256 KB片上Flash存儲(chǔ)器和16 KB SRAM的器件,采用VFQFN40、UFQFN48和VFQFN48封裝。REX3DP是一款外形小巧、高靈敏度的低功率ZigBee模塊,符合IEEE 802.15.4ZigBee協(xié)議棧,支持自我修復(fù)、自我組織的網(wǎng)狀網(wǎng)絡(luò),進(jìn)而優(yōu)化網(wǎng)絡(luò)流量并降低功耗,非常適合應(yīng)用于無(wú)線傳感、控制及數(shù)據(jù)采集。
2.2.5LCD觸摸屏
終端LCD顯示屏是駕駛員和車載終端之間的交互界面,駕駛員可以利用LCD與監(jiān)控中心進(jìn)行信息交互。它可以顯示通信過程中的相關(guān)信息,并可以通過觸摸式顯示屏輸入動(dòng)態(tài)IP地址直接進(jìn)行TCP連接。采用的LCD型號(hào)為2.8英寸的ALIENTEK TFTLCD,該模塊支持65K色顯示,分辨率為320×240,接口為16位的80并口,自帶觸摸屏。
3終端軟件設(shè)計(jì)
3.1軟件工作流程
終端的軟件主要包括:主控程序、北斗數(shù)據(jù)處理模塊、SIM900A通信模塊以及ZigBee通信模塊。具體軟件工作流程如圖3所示。
3.2關(guān)鍵軟件模塊的設(shè)計(jì)要點(diǎn)
3.2.1北斗數(shù)據(jù)接收與處理模塊
在硬件電路上,UM220模塊與STM32的UART2相連,每隔1 s發(fā)送一次指令,因此使用STM32的UART2中斷函數(shù)來處理接收的數(shù)據(jù)更為方便。UM220每條NMEA指令都是一串以“MYM”開始、以“*”結(jié)束的字符串,不同指令的數(shù)據(jù)長(zhǎng)度也不同,正確存儲(chǔ)BDGGA和BDRMC指令是正確解析所需的經(jīng)緯度、高度、速度和角度信息的前提。
3.2.2SIM900A通信模塊
SIM900A模塊內(nèi)嵌了TCP/IP協(xié)議和UDP協(xié)議。為確?;貍餍畔⒌姆€(wěn)定性和可靠性,選擇TCP/IP協(xié)議進(jìn)行傳輸。通過該模塊,可以很方便地進(jìn)行GPRS數(shù)據(jù)通信。SIM900A模塊與處理器通過串口通信,向模塊發(fā)送相應(yīng)的AT操作指令,就可以完成相關(guān)的配置。與中心建立TCP連接之后,便可利用命令“AT+CIPSEND”發(fā)送信息。信息接收是通過串口自動(dòng)回傳的,因此雙方可實(shí)現(xiàn)實(shí)時(shí)通信。
3.2.3ZigBee通信模塊
ZigBee模塊與處理器通信同樣是利用UART串口。對(duì)相應(yīng)串口配置好之后,再對(duì)ZigBee模塊初始化。由于ZigBee模塊每條消息具有與UM220模塊相同的結(jié)束標(biāo)志位,因此對(duì)ZigBee模塊的中斷處理函數(shù)可以參考UM220模塊的中斷處理函數(shù)。同時(shí),ZigBee模塊和SIM900A模塊一樣,可以通過AT指令進(jìn)行操控,實(shí)現(xiàn)其初始化。本車載終端使用的是COO節(jié)點(diǎn),手持終端則是路由節(jié)點(diǎn)。需要特別注意的是,必須保證COO節(jié)點(diǎn)與路由節(jié)點(diǎn)處于相同的網(wǎng)絡(luò)PANID圖4車輛位置服務(wù).Net平臺(tái)通信界面
圖5終端定位信息及位置參數(shù)和相同的網(wǎng)絡(luò)信道才能正常通信。
3.3數(shù)據(jù)通信協(xié)議
為保證本車載終端與后臺(tái)中心之間通信的完整性及通用性,提高通信的檢錯(cuò)能力,必須有一套規(guī)范讓通信雙方共同遵守。就本終端而言,通信協(xié)議嚴(yán)格遵守《道路運(yùn)輸車輛衛(wèi)星定位系統(tǒng)北斗兼容車載終端通訊協(xié)議技術(shù)規(guī)范》。它規(guī)定了包括通信的格式、內(nèi)容以及對(duì)應(yīng)不同消息的應(yīng)答要求,為車載終端和物流中心之間的通信提供了一個(gè)標(biāo)準(zhǔn)的信息結(jié)構(gòu)規(guī)范。
4終端驗(yàn)證與測(cè)試
首先給終端上電,燒錄預(yù)先寫好的程序,讓其完成端口配置及各模塊初始化。同時(shí),啟動(dòng)上位機(jī)中的Visual Basic.Net車輛位置服務(wù)平臺(tái),并搭建好網(wǎng)絡(luò)環(huán)境,為終端提供一個(gè)穩(wěn)定的公網(wǎng)IP地址。當(dāng)終端成功連接到數(shù)據(jù)中心時(shí),服務(wù)平臺(tái)便能與終端通信并實(shí)時(shí)監(jiān)控終端作業(yè)。各種通信數(shù)據(jù)通過平臺(tái)存入MySQL數(shù)據(jù)庫(kù),方便后臺(tái)管理。車輛位置服務(wù).Net平臺(tái)通信界面如圖4所示。
通過平臺(tái)上位置查詢欄中如圖5所示的人機(jī)界面,可以看到電子地圖上通過終端定時(shí)上報(bào)的位置圖標(biāo)以及相應(yīng)的位置參數(shù)。由圖5可見,所注冊(cè)的車牌號(hào)為桂AGK898的車輛當(dāng)前??吭诠鹆蛛娮涌萍即髮W(xué)附近。
5結(jié)束語(yǔ)
該智能車載網(wǎng)絡(luò)終端選用Cortex-M3內(nèi)核的處理器STM32F103ZET6,結(jié)合定位模塊UM220和SIM900A、ZigBee無(wú)線通信模塊,實(shí)現(xiàn)了在物流環(huán)境下的定位與通信的一體化應(yīng)用。通過采用模塊化設(shè)計(jì),有效降低了終端功耗,減小了終端體積?,F(xiàn)場(chǎng)測(cè)試表明,定位信息準(zhǔn)確,通信穩(wěn)定可靠,易于擴(kuò)展應(yīng)用。
參考文獻(xiàn)
[1] 惠曉威,劉彥每.基于GPS/GPRS的物流車載終端系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用與軟件,2015,32(6):7982.
?。?] 馬麗芳.基于北斗和GPRS車載終端的設(shè)計(jì)與研究[D].西安:西安科技大學(xué), 2013.
?。?] 龔凌翔,葉芝慧,馮奇,等.基于STM32的北斗/RFID組合定位系統(tǒng)設(shè)計(jì)[J].電子測(cè)量技術(shù),2014,37(4):7682.
?。?] 潘未莊, 陳石平.采用北斗模塊的車載監(jiān)控終端設(shè)計(jì)與實(shí)現(xiàn)[J].電子測(cè)試,2013(16):4547.
?。?] 韓月霞,李雄偉,張陽(yáng),等.基于物聯(lián)網(wǎng)的物流車載終端系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].傳感器與微系統(tǒng),2015,34(5):6971.
?。?] 黃繼聰,趙利,方曉科.基于多模式的物流定位跟蹤通信終端的設(shè)計(jì)[J].電子技術(shù)應(yīng)用, 2014,40(2):811.