關(guān)鍵字:物流 車輛監(jiān)控 終端
本文對(duì)物流車輛監(jiān)控終端進(jìn)行研究,提出了基于GPS+GIS+CDMA的總體系統(tǒng)構(gòu)架。系統(tǒng)將全球定位系統(tǒng)(Global Position-ing System,GPS)、地理信息系統(tǒng)(Geographic Information System,GIS)以及CDMA(Code Division Multiple Access)無線通信技術(shù)融于一身。
本文設(shè)計(jì)的物流運(yùn)輸車輛監(jiān)控終端,通過GPS衛(wèi)星定位獲得車輛的經(jīng)緯度等信息后,經(jīng)過CDMA無線通信網(wǎng)絡(luò)與監(jiān)控中心進(jìn)行通信,實(shí)時(shí)地將運(yùn)輸車輛的各種信息傳輸給監(jiān)控中心,供監(jiān)控中心對(duì)整體運(yùn)輸車隊(duì)進(jìn)行顯示、查詢、調(diào)度。
1 系統(tǒng)總體設(shè)計(jì)
基于GPS和CDMA的物流運(yùn)輸車輛監(jiān)控系統(tǒng)由車輛監(jiān)控終端、數(shù)據(jù)傳輸網(wǎng)絡(luò)以及監(jiān)控中心組成。其中數(shù)據(jù)傳輸網(wǎng)絡(luò)由CDMA網(wǎng)絡(luò)和Internet組成。
通過GPS衛(wèi)星網(wǎng)絡(luò),車輛終端能夠?qū)ξ锪鬈囕v和物流對(duì)象進(jìn)行精確定位,經(jīng)CDMA無線網(wǎng)絡(luò)接入Internet鏈接到監(jiān)控中心服務(wù)器,實(shí)時(shí)向監(jiān)控中心傳輸物流車輛的經(jīng)緯度、速度、航向、海拔、時(shí)間等GPS數(shù)據(jù)信息,監(jiān)控中心可以在具有地理信息處理和查詢功能的電子地圖上顯示、查詢車輛的各種信息,實(shí)時(shí)監(jiān)控車輛運(yùn)行狀態(tài)。
另外監(jiān)控中心還具有與車載終端通訊的功能,能夠?qū)ξ锪鬟\(yùn)輸車輛實(shí)時(shí)調(diào)度、對(duì)突發(fā)事故進(jìn)行及時(shí)處理,適用于各種物流交通領(lǐng)域。
2 終端硬件設(shè)計(jì)
本文設(shè)計(jì)的物流車載終端硬件結(jié)構(gòu)由S3C2440A、JTAG片上調(diào)試接口、視頻接口、音頻接口、復(fù)位電路、CDMA無線通信模塊、GPS模塊、電源電路、LCD觸摸屏、鍵盤等組成,外接SDRAM、NAND FLASH、NOR FLASH作為外部存儲(chǔ)器,其硬件結(jié)構(gòu)如圖1所示。
圖1 終端硬件設(shè)計(jì)硬件結(jié)構(gòu)
2.1 CPU選型
為了滿足系統(tǒng)對(duì)實(shí)時(shí)性、大數(shù)據(jù)量處理、GPS信號(hào)接收、CDMA數(shù)據(jù)發(fā)送等各方面的要求,終端采用三星公司的S3C2440A 32位ARM芯片作為CPU。S3C2440A采用了先進(jìn)的ARM920T內(nèi)核,片上集成了3路UART串口,2路SPI口,8路10位ADC,具有日歷功能的RTC,帶PLL的片上時(shí)鐘發(fā)生器,130個(gè)通用I/O口,24個(gè)外部中斷源等豐富的資源,易于開發(fā),是一款性價(jià)比非常高的芯片。
2.2 CDMA模塊接口設(shè)計(jì)
終端采用了華為EM200 CDMA1X模塊。該模塊工作頻段為800 MHz,最大發(fā)射功率為0.25 W,接收靈敏度小于-106 dBm,工作電壓3.3~4.2 V,集成了UART,UIM卡,天線等豐富的資源接口。支持標(biāo)準(zhǔn)AT指令集。極限工作溫度為-30℃~+75℃,工作溫度范圍廣,適合各種物流運(yùn)輸環(huán)境。
S3C2440A有3個(gè)UART串口,EM200模塊與S3C2440A通過串口1相連,因?yàn)槎咻斎胼敵龆际荰TL電平,所以無需電平轉(zhuǎn)換可直接相連,其中EM200的管腳是數(shù)據(jù)發(fā)出端,與S3C2440A的RXD端相連;EM200的管腳是數(shù)據(jù)接收端,與S3C2440A的TXD端相連,由此實(shí)現(xiàn)了兩者之間的數(shù)據(jù)收發(fā)。華為EM200 CDMA1X模塊與S3C2440A連接圖如圖2所示。
圖2 華為EM200 CDMA1X模塊與S3C2440A連接圖
其中S3C2440的TXD0、nRTS0、DTR腳,分別經(jīng)過3個(gè)1 kΩ電阻與EM200的腳相連,目的是防止電流過大對(duì)芯片造成損害。
2.3 GPS模塊接口設(shè)計(jì)
GPS模塊是終端實(shí)現(xiàn)精確定位的關(guān)鍵,是終端設(shè)計(jì)的核心,所以本終端選取了Gstar公司的SIFEIII代GS-15B模塊。
GS-15B是一個(gè)高效能、低功耗的智能型衛(wèi)星接收模塊。它采用臺(tái)灣聯(lián)發(fā)科技股份有限公司所設(shè)計(jì)的MT3329F衛(wèi)星定位接收芯片,是一個(gè)完整的衛(wèi)星定位接收器。同時(shí)具備全方位功能,能滿足專業(yè)定位的嚴(yán)格要求與工業(yè)級(jí)需求。內(nèi)置GPS天線,采用MTK高靈敏度、低耗電量芯片MT3 329F。具備快速定位及追蹤32顆衛(wèi)星的能力。體積超小,芯片內(nèi)建20萬個(gè).運(yùn)算器,大幅提高搜尋及運(yùn)算衛(wèi)星訊號(hào)能力。支持NMEA-0183 v2.2版本規(guī)格輸出。接收靈敏度為-157 dBm,工作溫度為-40℃~85℃,TTL電平輸出,工作電壓3.3~5.0 V,冷啟動(dòng)定位時(shí)間僅為42 s,平均定位精度為10~15 m。既滿足了終端對(duì)高性價(jià)比需求,也滿足了終端的精確定位的需求。
S3C2440A與GS-15B的接口連接圖如圖3所示。終端使用S3C2440A的串口2連接GPS模塊,為了增強(qiáng)驅(qū)動(dòng)能力,在 S3C2440A的TXD1和PXD1管腳上加了2個(gè)100 kΩ的上拉電阻。終端一般只接收GPS信息,不對(duì)GPS做寫操作,所以為了保護(hù)芯片,在S3C2440A的RXD1與GS-15B之間加了1個(gè)100 Ω的電阻和1個(gè)型號(hào)為MCIA148的反向二極管,從而保證了終端運(yùn)行時(shí)的穩(wěn)定。
圖3 S3C2440A與GS-15B的接口連接圖
3 終端軟件設(shè)計(jì)
終端的軟件部分是基于WinCE 5.0嵌入式操作系統(tǒng)設(shè)計(jì)的,WinCE是一個(gè)多任務(wù)、完全搶占式的32位嵌入式操作系統(tǒng),支持WinCE MFC、ATL、WinCE API和一些附加的編程接口以及各種通信技術(shù)。WinCE嵌入式操作系統(tǒng)具有操作界面良好、實(shí)時(shí)性較高、占用資源少、開發(fā)工具豐富以及強(qiáng)大的技術(shù)支持等優(yōu)勢(shì),充分滿足本終端軟件的設(shè)計(jì)需求。
3.1 終端軟件設(shè)計(jì)流程
首先系統(tǒng)上電,啟動(dòng)bootloader,加載WinCE內(nèi)核,啟動(dòng)WinCE嵌入式操作系統(tǒng)。然后初始化CPU、LCD、GPS,CDMA等外圍模塊,再加載串口驅(qū)動(dòng)和網(wǎng)絡(luò)協(xié)議,若加載成功則執(zhí)行用戶應(yīng)用程序,若加載失敗則返回,重新加載串口驅(qū)動(dòng)和網(wǎng)絡(luò)協(xié)議。其中終端的用戶應(yīng)用程序包括:CDMA無線網(wǎng)絡(luò)接入程序、網(wǎng)絡(luò)數(shù)據(jù)傳輸程序、GPS串口接收程序等。終端軟件設(shè)計(jì)流程圖如圖4所示。
圖4 終端軟件設(shè)計(jì)流程圖
3.2 CDMA無線網(wǎng)絡(luò)接入程序
終端通過AT指令控制CDMA模塊,實(shí)現(xiàn)無線網(wǎng)絡(luò)接入和網(wǎng)絡(luò)數(shù)據(jù)傳輸。
系統(tǒng)運(yùn)行后,首先初始化CDMA模塊,設(shè)置波特率為115 200 b/s,然后進(jìn)入撥號(hào)等待狀態(tài),終端經(jīng)過PPP撥號(hào)連接登錄網(wǎng)絡(luò),接入號(hào)為777,用戶名和密碼均為card。確認(rèn)登陸網(wǎng)絡(luò)成功后,則調(diào)用GPS串口接收程序和網(wǎng)絡(luò)數(shù)據(jù)傳輸程序,采用定時(shí)方式向監(jiān)控中心發(fā)送終端的GPS定位信息。
建立PPP(point-to-point protocol)連接的AT指令及返回值如下:
3.3 CDMA無線網(wǎng)絡(luò)通信程序
終端通過CDMA網(wǎng)絡(luò)接入Internet后,無線網(wǎng)絡(luò)通信程序?qū)⒔K端解析的GPS數(shù)據(jù)通過Intemet上傳到監(jiān)控中心。本終端軟件設(shè)計(jì)采用流格式套接字進(jìn)行網(wǎng)絡(luò)通信,對(duì)應(yīng)于TCP/IP協(xié)議中面向連接的TCP協(xié)議。網(wǎng)絡(luò)數(shù)據(jù)傳輸程序采用客戶機(jī)/服務(wù)器機(jī)制編程,終端(客戶機(jī))進(jìn)程由用戶操縱;而監(jiān)控中心(服務(wù)器)進(jìn)程則駐留在主機(jī)上連續(xù)運(yùn)行,等待終端連接請(qǐng)求進(jìn)入。
監(jiān)控中心的網(wǎng)絡(luò)通信程序流程如下:1)用socket()函數(shù)創(chuàng)建套接口,并給套接口地址結(jié)構(gòu)賦值;2)用bind()函數(shù)使套接口與本地IP地址、端*綁定,選用靜態(tài)IP地址;3)用listen()函數(shù)在該套接口上*連接請(qǐng)求;4)用accept()函數(shù)接收終端連接請(qǐng)求,產(chǎn)生新的套接口及描述字并與終端連接,利用新的套接字發(fā)送和接收數(shù)據(jù);5)用 fork()函數(shù)派生新的子進(jìn)程與終端通信,父進(jìn)程繼續(xù)*其他請(qǐng)求。這樣就可避免一個(gè)終端與監(jiān)控中心建立連接后,監(jiān)控中心不能再與其他終端通信的問題。
終端的TCP程序流程如下:1)用socket()創(chuàng)建本地套接口,給監(jiān)控中心套接口地址結(jié)構(gòu)賦值;2)用connect()函數(shù)使本地套接口向監(jiān)控中心套接口主動(dòng)發(fā)出建立連接請(qǐng)求,經(jīng)三次握手建立TCP連接;3)若連接建立成功,則用send()和recv()函數(shù)與監(jiān)控中心通信;4)通信結(jié)束,用close()關(guān)閉套接口。
3.4 終端GPS串口程序
軟件開發(fā)工具采用EVC(embedded visual C++),EVC是Windows CE上的主流開發(fā)工具,封裝了網(wǎng)絡(luò)底層通訊、COM互操作、RAPI等。EVC支持MFC類庫的子集,使Win32平臺(tái)上的VC程序可以方便地移植到WinCE平臺(tái)上。
終端GPS串口程序主要完成兩個(gè)功能:接收GPS數(shù)據(jù)和解析GPS數(shù)據(jù)。GPS模塊輸出遵循NMEA-0183標(biāo)準(zhǔn)。程序流程如下:
1)使用OpenPort()函數(shù)打開串口,該函數(shù)使用創(chuàng)建文件函數(shù)CreatFile()打開串口2,以獲取串口2的操作句柄m_hComm;
2)如果串口2打開成功,則讀取當(dāng)前串口的設(shè)置,即通過GetCommState()讀取串口參數(shù)結(jié)構(gòu)體DCB變量;
3)用SetCommState()對(duì)串口2進(jìn)行相應(yīng)的設(shè)置:如設(shè)置波特率為4 800 b/s,8位數(shù)據(jù)位,無奇偶校驗(yàn),1位停止位,無數(shù)據(jù)流控制;
4)按位讀取數(shù)據(jù),判斷幀起始是否為$GPRMC,若為$GPRMC則從中提取時(shí)間、經(jīng)度、緯度、速度等信息并存入相應(yīng)結(jié)構(gòu)體;判斷幀起始是否為$GPGGA,若為$GPGGA則從第9字段提取海拔高度并存入相應(yīng)結(jié)構(gòu)體;判斷幀起始是否為$GPGSV,若為$GPGSV則從中提取有效衛(wèi)星數(shù)目、有效衛(wèi)星編號(hào)等信息并存入相應(yīng)結(jié)構(gòu)體;
5)用SetWindowText()在LCD上顯示接收到的GPS數(shù)據(jù)和解析后的GPS信息;
6)最后,在需要時(shí)用ClosePort()函數(shù)關(guān)閉串口2。該函數(shù)使用CloseHandh()關(guān)閉串口2的句柄m_hComm。
4 運(yùn)行結(jié)果
本文所設(shè)計(jì)的終端軟件運(yùn)行結(jié)果如圖5所示。終端GPS數(shù)據(jù)顯示包括UTC時(shí)間、經(jīng)緯度、星歷、方向、海拔等。實(shí)現(xiàn)了全面地、直觀地顯示GPS數(shù)據(jù)的功能,具有友好的人機(jī)界面風(fēng)格。其中圖5(a)中可以對(duì)GPS串口進(jìn)行配置,以及顯示接收到的原始NEMA-0183語句。圖5(b)中的經(jīng)緯度是在天津市北辰區(qū)河北工業(yè)大學(xué)新校區(qū)測(cè)得的,精確到秒級(jí),經(jīng)度為東經(jīng)117°41’34.4”,緯度為北緯39°37’6.2”。測(cè)試時(shí)間是2010年6月6日,下午16點(diǎn)24分22秒。
圖5 終端GPS數(shù)據(jù)顯示界面
測(cè)試表明,終端軟件能平穩(wěn)地運(yùn)行在嵌入式WinCE 5.0系統(tǒng)上,具有良好的實(shí)時(shí)性和準(zhǔn)確性。
另外,終端通過CDMA無線通信網(wǎng)絡(luò)實(shí)時(shí)地將GPS定位數(shù)據(jù)傳給監(jiān)控中心,監(jiān)控中心的電子地圖上即實(shí)時(shí)顯示終端的地理位置。經(jīng)測(cè)試,終端的實(shí)際位置與電子地圖上的位置完全符合,并且具有良好的實(shí)時(shí)性,數(shù)據(jù)刷新時(shí)間小于3 s,GPS位置漂移值小于20 m。
5 結(jié)束語
針對(duì)我國(guó)物流行業(yè)快速發(fā)展的背景,本文對(duì)基于GPS和CDMA的物流車輛監(jiān)控終端進(jìn)行了軟硬件設(shè)計(jì)。實(shí)現(xiàn)了對(duì)物流車輛的遠(yuǎn)程監(jiān)控和實(shí)時(shí)調(diào)度。相比傳統(tǒng)的車載終端,本設(shè)計(jì)采用32位ARM處理器,具有更快的處理速度、更大的存儲(chǔ)空間、更直觀的界面顯示等優(yōu)點(diǎn)。尤其在GPS數(shù)據(jù)無線傳輸方面采用了 CDMA無線通信技術(shù),比傳統(tǒng)GPRS技術(shù)更適用于長(zhǎng)距離、大數(shù)據(jù)量、實(shí)時(shí)性要求非常高的車載終端領(lǐng)域。