基于WinCE的GPS數(shù)據(jù)采集系統(tǒng)設計
摘要:由于數(shù)據(jù)采集設備利用Windows桌面系統(tǒng)在戶外易受環(huán)境影響以及攜帶不方便等不足,設計采用ARM11處理器和WinCE 6.0操作系統(tǒng)作為硬件開發(fā)平臺,設計出一種基于ARM-WinCE 6.0的便攜式GPS數(shù)據(jù)采集系統(tǒng),控制GPS模塊接收數(shù)據(jù)信息,實現(xiàn)對數(shù)據(jù)進行采集、提取、顯示、存儲。這對深入理解嵌入式系統(tǒng)應用和GPS在導航組合中應用具有一定的實用價值,有利于提高工作效率并為定位性能的評定提供依據(jù)。
關鍵詞:ARM11處理器;WinCE 6.0操作系統(tǒng);GPS數(shù)據(jù)采集系統(tǒng);導航組位
0 引言
GPS(Global Positioning System,全球衛(wèi)星定位系統(tǒng))以其高精度、全天候、全天時的特點,在定位、導航、測距、授時遙感等領域廣泛應用,并得到了快速的發(fā)展。對于在低功耗、高便攜性和高性能設備上實現(xiàn)GPS數(shù)據(jù)采集和分析技術也顯得越發(fā)重要。傳統(tǒng)的Windows桌面系統(tǒng)體積大,占用系統(tǒng)資源較多,也不利于野外作業(yè),而基于嵌入式系統(tǒng)的ARM硬件平臺則具有體積小、功耗低、性能高等特點。WinCE系統(tǒng)作為嵌入式系統(tǒng)的一種類型,相對于Linux和Andriod系統(tǒng),其開發(fā)難度要比后兩種系統(tǒng)要低,軟件調(diào)試也比較容易、靈活,并且WinCE系統(tǒng)類似桌面系統(tǒng)在軟件開發(fā)方面也較為便利。因此,在未來高性能的便攜式設備領域,WinCE系統(tǒng)的應用空間將十分巨大。
本文根據(jù)GPS信號接收原理及嵌入式技術,并遵循NMEA-0183協(xié)議,接收并解析GPS模塊的原始數(shù)據(jù)報文,設計出友好的人機界面環(huán)境,將系統(tǒng)所處的經(jīng)度、緯度、高度、速度、日期時間等信息顯示出來,解決了人工記錄數(shù)據(jù)的不足,提高了工作效率,并為車輛運動參數(shù)估計提供了依據(jù)。
1 系統(tǒng)總體設計
GPS數(shù)據(jù)采集界面的設計采用面向?qū)ο蟮目删幊碳夹g,在Visual Studio 2005(VS 2005)編程環(huán)境下,運用C#語言實現(xiàn)。本設計采用飛凌公司研發(fā)的OK6410開發(fā)板,該開發(fā)板以ARM11內(nèi)核架構(gòu)為核心,并內(nèi)嵌WinCE 6.0操作系統(tǒng),硬件性能上能夠滿足對數(shù)據(jù)采集的需求。通過USB同步,完成PC機與ARM開發(fā)板之間的硬件平臺搭建,這樣就可以在PC機上進行應用程序的設計。
在VS 2005環(huán)境下,對設計完成的GPS數(shù)據(jù)采集應用程序進行編譯,并將編譯后生成的應用程序通過USB同步植入到ARM開發(fā)板的NAND FLA SH里。再通過串口擴展電路將ARM開發(fā)板與GPS模塊進行連接完成通信,然后運行NAND FLASH里GPS數(shù)據(jù)采集的應用程序,對GPS模塊接收來的數(shù)據(jù)進行采集、解析后送至外接的液晶,顯示其需要的信息,從而完成WinCE 6.0環(huán)境下GPS數(shù)據(jù)采集系統(tǒng)的設計。GPS數(shù)據(jù)采集系統(tǒng)總體框圖如圖1所示,GPS數(shù)據(jù)采集開發(fā)系統(tǒng)如圖2所示。
2 GPS協(xié)議分析及GPS數(shù)據(jù)數(shù)據(jù)格式
GPS數(shù)據(jù)遵循NMEA-0183協(xié)議,該數(shù)據(jù)標準是美國國家海洋電子協(xié)會(National Marine Electronics Association)所指定的標準規(guī)格。GPS接收機根據(jù)NMEA-0183協(xié)議的標準規(guī)范,將位置、速度等信息通過串口傳送到PC機、PDA等設備。NMEA-0183協(xié)議采用統(tǒng)一標準格式,輸出采用ASCII碼,數(shù)據(jù)傳輸以“語句”方式進行,每個語句均以“$”開頭,然后是兩個字母的“識別符”和三個字母的“語句名”,接著是以逗號分隔的數(shù)據(jù)體,語句末尾為校驗和,整條語句以回車換行符結(jié)束。
NMEA-0183的數(shù)據(jù)信息種類較多,而一組正常的GPS數(shù)據(jù)則包括$GPGGA,$GPRMC,$GPVTG,$GPGLL。$GPGGA輸出的是GPS的定位信息,$GPR MC則輸出GPS推薦的最短數(shù)據(jù)信息,$GPVTG輸出的是地面速度信息,$GPGLL輸出的是大地坐標信息?,F(xiàn)以最常見的$GPRMC為例分析其數(shù)據(jù)格式格式如下:
$GPRMC,1>,2>,3>,4>,5>,6>,7>,8>,9>,10>,11>,12>*hhCR>LF>
1>為UTC時間,格式:hhmmss(時分秒);2>為定位狀態(tài),A=數(shù)據(jù)可用,V=數(shù)據(jù)不可用;3>為緯度,格式:ddmm.mmmm(度分);4>為緯度區(qū)分,北半球(N)或南半球(S);5>為經(jīng)度,格式:ddmm.mmmm(度分);6>為經(jīng)度區(qū)分,東半球(E)或西半球(W);7>為地面速率(000.0~999.9節(jié));8>為地面航向(000.0°~359.9°,以正北為參考基準);9>為UTC日期,格式:ddmmyy(年月日);10>為磁偏角(000.0°~180.0°);11>為磁偏角方向,E(東)或W(西);12>為模式指示。
評論