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