GPS數(shù)據(jù)采集分析要點(diǎn)_第1頁
GPS數(shù)據(jù)采集分析要點(diǎn)_第2頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、基于GPS數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)時(shí)間:2012-08-0209:58:50來源:現(xiàn)代電子技術(shù)作者:史曉影關(guān)鍵字:GPS數(shù)據(jù)采集系統(tǒng)摘要:為了設(shè)計(jì)高精度、全天候、全天時(shí)的數(shù)據(jù)采集系統(tǒng),采用了GPS技術(shù)實(shí)現(xiàn)通信,信息采用NMEA-0183格式,單片機(jī)接收GPS輸出的時(shí)間和定位信息后,將信息調(diào)整為我國的標(biāo)準(zhǔn),并將調(diào)整后的經(jīng)度、緯度、海拔高度和時(shí)間等信息通過液晶終端顯示。最終實(shí)現(xiàn)了GPS數(shù)據(jù)采集及轉(zhuǎn)換等工作,為事故定位、搜查救援等工作提供了技術(shù)依據(jù)。關(guān)鍵詞:GPS數(shù)據(jù)采集;定位;數(shù)據(jù)處理;單片機(jī)隨著科技的發(fā)展,移動(dòng)技術(shù)的不斷成熟,定位導(dǎo)航開辟了一個(gè)重要的新興市場。GPS(GlobalPositioning

2、System)以其高精度、全天候、全天時(shí)的特點(diǎn),在定位、導(dǎo)航、測距等領(lǐng)域被廣泛應(yīng)用,具有測量精度高、速度快、用戶數(shù)量不限、抗干擾能力強(qiáng)等優(yōu)點(diǎn)。不僅用于軍事領(lǐng)域,還廣泛用于工農(nóng)業(yè)生產(chǎn)、交通運(yùn)輸、野外探險(xiǎn)等領(lǐng)域。本系統(tǒng)實(shí)現(xiàn)的數(shù)據(jù)采集精確度較高;采集到的位置可以控制在2m范圍之內(nèi),接收數(shù)據(jù)并處理的時(shí)間小于2s,存精確度和實(shí)時(shí)性上要優(yōu)于其他數(shù)據(jù)采集系統(tǒng)。1GPS數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)硬件系統(tǒng)中主要由主控制器、液晶顯示模塊和CPS射頻前端,數(shù)據(jù)傳輸單元組成,如圖1所示。斛1題址襤圏GPS信號(hào)通過天線接收值射頻前端模塊,在射頻芯片中實(shí)現(xiàn)A/D轉(zhuǎn)換,將模擬中頻信號(hào)轉(zhuǎn)化為數(shù)字信號(hào)通過串口傳入單片機(jī),單片機(jī)接收的數(shù)

3、據(jù)信息經(jīng)過時(shí)差,坐標(biāo)處理等操作,在通過LCD顯示出來。2GPS數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)2.1GPS語句的輸出格式GPS-OEM板采用NMEA-0183通信格式,可以輸出多種句型,均以“$”開頭。其語句格式如表1所示。旬將衣Tb.1NMKA.01A3jAhterkkent符仔ASCII說明g24H前瞎也為識(shí)別罰.騎弋位Aac申城介端捋I,/”卄IdHHkir松號(hào)利符號(hào)后諭的卿怕數(shù)圧樓酚和L片臆陽呂S3ODH.OAH凹牟*澳行:冷反輸出的語句按串口通信協(xié)議:1位開始位,8位數(shù)據(jù)位,1位停止位,無奇偶校驗(yàn)。輸出數(shù)據(jù)采用的是ASCII碼字符,內(nèi)容包含了緯度、經(jīng)度、速度、日期、航向及衛(wèi)星狀況等信息。語句

4、達(dá)十余種,其中定位語句$GPRMC其結(jié)構(gòu)為:$GPRMC,1.2,3.4,v5.6,7,8,9,10,11*hhvCRxLF其中:“GP”-交談識(shí)別符;“RMC”-語句識(shí)別符;“*”-校驗(yàn)和識(shí)別符;“hh”-為校驗(yàn)和,其代表了“$”和“*”之間所有字符的按位異或值(不包括這兩個(gè)字符)。$GPRMC語句數(shù)據(jù)區(qū)的內(nèi)容為:1)定位點(diǎn)的協(xié)調(diào)世界時(shí)間(UTC),hhmmss(時(shí)分秒)格式;2)定位狀態(tài),A二有效定位,V二無效定位;3)定位點(diǎn)緯度,ddmm.mmmmm(度分)格式;4)緯度半球,N(北半球)或S(南半球);5)定位點(diǎn)經(jīng)度,dddmm.mmmmm(度分)格式;6)經(jīng)度半球,E(東經(jīng))或W(西

5、經(jīng));7)地面速度,000.0節(jié)999.9節(jié);8)地面航向,000.0度359.9度;9)UTC日期,ddmmyy(日月年)格式;10)磁偏角,000.0度180度;11)磁偏角方向,E(東)或W(西)。2.2GPS數(shù)據(jù)接收利用單片機(jī)的串行接口接收GPS傳送過來的數(shù)據(jù),其硬件原理如圖2所示,GPS的接口及單片機(jī)串口均采用TTL電平傳輸數(shù)據(jù),所以GPS接口引腳4和3可直接與單片機(jī)的TXD和RXD引腳相連,無需電平轉(zhuǎn)換,硬件電路圖如圖2所示。OEMAT89S52伽】*U)站D】TX&CM)1GNE)Jt圖2G?S啟裾接收GPS模塊輸出的是數(shù)據(jù)流,每秒鐘更新一次數(shù)據(jù)。必須要用單片機(jī)對(duì)其輸出的數(shù)據(jù)流中

6、的數(shù)據(jù)進(jìn)行提取,以方便用戶直接讀取。首先打開串口中斷服務(wù)子程序,開始接收數(shù)據(jù),判斷其是否有“$”符號(hào),然后根據(jù)逗號(hào)的個(gè)數(shù)進(jìn)行判斷數(shù)據(jù)的類型,然后分別存儲(chǔ)時(shí)間、經(jīng)度、緯度、日期等信號(hào),若接收到則接收結(jié)束。用C語言編程,其程序如下:vidchkhd()interrupt4#串口攥收申瞞uchaichnumip37=!p37;if(ch=SBUF:Ih-=*S*)Iji(和邛=i);W(ob-e(Twtgp盅弋燼“|rturn+|=ch;iffaum79)KRS_revnum)=AO;KPJal();Kps_fla=O:jiEll=O;在PC機(jī)上接收的GPRMC語句信息如下:$GPRMC,10332

7、0,A,4350.95221,N,12524.06042,E,000.0,000.0,130507,009.1,W*50這是一條GPS定位數(shù)據(jù)信息語句,涵義是UTC時(shí)間為10時(shí)33分20秒,位置在北緯43度50.9522分,東經(jīng)125度24.0604分,移動(dòng)速度為0,移動(dòng)范圍為0,日期為2007年5月13日,地磁變化為9.10,地磁變化方向?yàn)槲鳎r?yàn)和為50H。根據(jù)接收的信息用單片機(jī)進(jìn)行相應(yīng)的處理,就可以得到所需的信息了,信息處理過程見3節(jié)。3對(duì)接收信息的處理數(shù)據(jù)的處理主要包括兩個(gè)方面:1)時(shí)間的處理直接從衛(wèi)星接收到的時(shí)間信息是UTC時(shí)間(格林尼治時(shí)間),需要處理成北京時(shí)間。要變成北京時(shí)間需要

8、加上8個(gè)小時(shí),如果超過24小時(shí),則減去24小時(shí)后,才是北京時(shí)間。時(shí)間轉(zhuǎn)換處理程序如下:if(pps_receive|-)for(i=O:iwgi+#、IIimriveiijian(1)+i;)ifCtimeS1ptimeJ0=l:dme()-=2ftke(imr|I+=82)定位的處理GPS接受的經(jīng)度、緯度等信息采用的是美國的84坐標(biāo)系統(tǒng),需要轉(zhuǎn)換成我國的54坐標(biāo)系統(tǒng)。為便于描述設(shè)如下幾個(gè)參量:大地坐標(biāo)-(B,L,H)平面坐標(biāo)-(x,y,z)橢球偏心率-C橢球參數(shù)m,n-大地坐標(biāo)轉(zhuǎn)換到指教坐標(biāo)需要使用的參數(shù),則有:mp=m-二j:爛啦ir弓十和島由3k4結(jié)束語本系統(tǒng)討論了用單片機(jī)對(duì)GPS數(shù)據(jù)的

9、讀取及處理的方法,分析了GPS模塊的信息格式并編制了通信軟件,不僅成功地實(shí)現(xiàn)了GPS定位信息的接收與提取,而且具有硬件電路簡單、成本低廉、編程方便、性能穩(wěn)定的特點(diǎn),具有一定的使用價(jià)值。GPS模塊的數(shù)據(jù)格式對(duì)GPS模塊的數(shù)據(jù)處理本質(zhì)上還是串口通信程序設(shè)計(jì),只是GPS模塊的輸出遵循固定的格式,通過字符串檢索查找即可從模塊發(fā)送的數(shù)據(jù)中找出需要的數(shù)據(jù),常用的GPS模塊大多采用NMEA-0183協(xié)議。NMEA-0183是美國國家海洋電子協(xié)會(huì)(NationalMarineElectronicsAssociation)所指定的標(biāo)準(zhǔn)規(guī)格,這一標(biāo)準(zhǔn)制訂所有航海電子儀器間的通訊標(biāo)準(zhǔn),其中包含傳輸資料的格式以及傳輸

10、資料的通訊協(xié)議。以下是一組正常的GPS數(shù)據(jù)$GPGGA,082006.000,3852.9276,N,11527.4283,E,1,0&1.0,20.6,M,0000*35$GPRMC,082006.000,A,3852.9276,N,11527.4283,E,0.00,0.0,261009,*38$GPVTG,0.0,T,M,0.00,N,0.0,K*50下面分別對(duì)每組數(shù)據(jù)的含義進(jìn)行分析。GPS固定數(shù)據(jù)輸出語句($GPGGA),這是一幀GPS定位的主要數(shù)據(jù),也是使用最廣的數(shù)據(jù)。為了便于理解,下面舉例說明$GPGGA語句各部分的含義。例:$GPGGA,082006.000,3852.9276,

11、N,11527.4283,E,1,08,1.0,20.6,M,0000*35其標(biāo)準(zhǔn)格式為:$GPGGA,(1),(2),(3),(4),(5),(6),(7),(8),(9),M,(10),M,(11),(12)火hh(CR)(LF)各部分所對(duì)應(yīng)的含義為:(1) 定位UTC時(shí)間:08時(shí)20分06秒(2) 緯度(格式ddmm.mmmm:即dd度,mm.mmmm分);(3) N/S(北緯或南緯):北緯38度52.9276分;(4) 經(jīng)度(格式dddmm.mmmm:即ddd度,mm.mmmm分);(5) E/W(東經(jīng)或西經(jīng)):東經(jīng)115度27.4283分;(6) 質(zhì)量因子(0二沒有定位,1二實(shí)時(shí)GP

12、S,2二差分GPS):1=實(shí)時(shí)GPS;(7) 可使用的衛(wèi)星數(shù)(08):可使用的衛(wèi)星數(shù)=08(8) 水平精度因子(1.099.9);水平精度因子=1.0;(9) 天線高程(海平面,一9999.999999.9,單位:m);天線高程=20.6m);(10) 大地橢球面相對(duì)海平面的高度(一999.99999.9,單位:m):無;(11) 差分GPS數(shù)據(jù)年齡,實(shí)時(shí)GPS時(shí)無:無;(12) 差分基準(zhǔn)站號(hào)(00001023),實(shí)時(shí)GPS時(shí)無:無;火總和校驗(yàn)域;hh總和校驗(yàn)數(shù):35(CR)(LF)回車,換行。GPRMC(建議使用最小GPS數(shù)據(jù)格式)$GPRMC,082006.000,A,3852.9276,

13、N,11527.4283,E,0.00,0.0,261009,*38$GPRMC,1,2,3,4,5,6,7,8,9,10,11CRLF(1) 標(biāo)準(zhǔn)定位時(shí)間(UTCtime)格式:時(shí)時(shí)分分秒秒.秒秒秒(hhmmss.sss)。(2) 定位狀態(tài),A=數(shù)據(jù)可用,V二數(shù)據(jù)不可用。(3) 緯度,格式:度度分分分分分分(ddmm.mmmm)。(4) 緯度區(qū)分,北半球(N)或南半球(S)。(5) 經(jīng)度,格式:度度分分.分分分分。(6) 經(jīng)度區(qū)分,東(E)半球或西(W)半球。(7) 相對(duì)位移速度,0.0至1851.8knots(8) 相對(duì)位移方向,000.0至359.9度。實(shí)際值。(9) 日期,格式:日日月

14、月年年(ddmmyy)。(10) 磁極變量,000.0至180.0。(11) 度數(shù)。(12) Checksum.(檢查位)$GPVTG地面速度信息例:$GPVTG,0.0,T,M,0.00,N,0.0,K*50字段0:$GPVTG,語句ID,表明該語句為TrackMadeGoodandGroundSpeed(VTG)地面速度信息字段1:運(yùn)動(dòng)角度,000-359,(前導(dǎo)位數(shù)不足則補(bǔ)0)字段2:T二真北參照系字段3:運(yùn)動(dòng)角度,000-359,(前導(dǎo)位數(shù)不足則補(bǔ)0)字段4:M二磁北參照系字段5:水平運(yùn)動(dòng)速度(0.00)(前導(dǎo)位數(shù)不足則補(bǔ)0)字段6:N二節(jié),Knots字段7:水平運(yùn)動(dòng)速度(0.00)(

15、前導(dǎo)位數(shù)不足則補(bǔ)0)字段8:K二公里/時(shí),km/h字段9:校驗(yàn)值表1GPS模塊主要參數(shù)GPS模塊主要參數(shù)GPS芯片組SiRFStarIII工作頻率L1,1575.42MHz粗捕獲碼(C/A)率1.023MHzchiprate同時(shí)跟蹤通道數(shù)20靈敏度-159dBm定位精度5m(2維均方根,允許廣域差分系統(tǒng))最小速度0.1m/s時(shí)間精度1uS(與GPS時(shí)間同步)默認(rèn)坐標(biāo)系1984年世界大地坐標(biāo)系(WGS-84)重獲時(shí)間0.1S(平均值)熱啟動(dòng)1S(平均值)溫啟動(dòng)38S(平均值)冷啟動(dòng)42S(平均值)最咼工作海拔18km(60000feet)最大移動(dòng)速率515m/S(1000knots)最大加速度4

16、g最大急沖度20m/S3電源電壓5V0.5V整機(jī)電流約60mA,不超過100mA整板外形61mmX49mmX17mmGPS芯片外形27.9mmX20mmX2.9mm波特率9600bps數(shù)據(jù)輸出格式SiRF二進(jìn)制格式或NMEA0183GGA,GSA,GSV,RMC,VTG,GLL數(shù)據(jù)輸出電平同時(shí)具備TTL電平和RS232電平數(shù)據(jù)輸出接口20pin插針(TTL電平)和DB9母座(RS232電平)天線類型外置有源GPS天線(3.3V/5V電壓可選,默認(rèn)為3.3V)后備電池CR1220鋰電池,3V,不可充電工作溫度-40C至+85CGPS模塊的應(yīng)用程序設(shè)計(jì)GPS模塊的應(yīng)用程序設(shè)計(jì)主要分為兩部分,第一部

17、分為串口的設(shè)置于數(shù)據(jù)讀取,第二部分為數(shù)據(jù)的分析和需要數(shù)據(jù)的提取。與其他的關(guān)于設(shè)備編程的方法一樣,在Linux下,操作、控制串口也是通過操作起設(shè)備文件進(jìn)行的。在Linux下,串口的設(shè)備文件是/dev/ttySO或/dev/ttySl等。因此要讀寫串口,我們首先要打開串口,然后根據(jù)GPS模塊的配置參數(shù)對(duì)串口的波特率、校驗(yàn)、流控制等進(jìn)行設(shè)置,這些參數(shù)設(shè)置均通過對(duì)termios結(jié)構(gòu)中c_cflag的配置實(shí)現(xiàn),串口配置部分函數(shù)如下:intgps:set_opt(intfd,intnSpeed,intnBits,charnEvent,intnStop)struettermiosnewtio,oldtio;

18、if(tcgetattr(fd,&oldtio)!=0)perror(SetupSerial1);return1;bzero(&newtio,sizeof(newtio);newtio.c_cflag|=CLOCAL|CREAD;newtio.c_cflag&二CSIZE;switch(nBits)case7:newtio.c_cflag|=CS7;break;case8:newtio.c_cflag|=CS8;break;switch(nEvent)caseO:/奇校驗(yàn)newtio.c_cflag|=PARENB;newtio.c_cflag|=PARODD;newtio.c_iflag|=

19、(INPCK|ISTRIP);break;caseE:/偶校驗(yàn)newtio.c_iflag|=(INPCK|ISTRIP);newtio.c_cflag|=PARENB;newtio.c_cflag&=PARODD;break;caseN:/無校驗(yàn)newtio.c_cflag&=PARENB;break;switch(nSpeed)case2400:cfsetispeed(&newtio,B2400);cfsetospeed(&newtio,B2400);break;case4800:cfsetispeed(&newtio,B4800);cfsetospeed(&newtio,B4800);b

20、reak;case9600:cfsetispeed(&newtio,B9600);cfsetospeed(&newtio,B9600);break;case115200:cfsetispeed(&newtio,B115200);cfsetospeed(&newtio,B115200);break;default:cfsetispeed(&newtio,B9600);cfsetospeed(&newtio,B9600);break;if(nStop=1)newtio.c_cflag&二CST0PB;elseif(nStop=2)newtio.c_cflag|=CSTOPB;newtio.c_cc

21、VTIME=0;newtio.c_ccVMIN=0;tcflush(fd,TCIFLUSH);if(tcsetattr(fd,TCSANOW,&newtio)!=0)qDebug()comseterrorendl;return-1;qDebug()setdone!endl;return0;在GPS數(shù)據(jù)的處理上首先將窗口數(shù)據(jù)存入一個(gè)字符串,接著通過對(duì)字符串?dāng)?shù)據(jù)的判斷來提取數(shù)據(jù)內(nèi)容,判斷分為兩步,首先判斷是什么類型的數(shù)據(jù),在本程序的設(shè)計(jì)中需要讀取$GPRMC兩組數(shù)據(jù),因此首先判斷字符串GPS_BUF5是。還是A,由于數(shù)據(jù)是通過符號(hào)“,”進(jìn)行隔開,因此通過查找“,”來確定數(shù)據(jù)位置。在實(shí)現(xiàn)上將得到逗號(hào)位置函數(shù)單獨(dú)封裝調(diào)用,程序如下:/得到指定序號(hào)的逗號(hào)位置intgps:GetComma(intnum,char*str)inti,j=O;intlen二strlen(str);for(i=0;iD.hour=(GPS_BUF7-O)*10+(GPS_BUF8-O);GPS-D.minute=(GPS_BUF9-O)*10+(GPS_BUF10-0);GPS-D.second=(GPS_BUF11-O)*1O+(GPS_BUF12-O);tmp=GetComma(9,GPS_BUF);GPS-D.day=(GPS_BUFtmp+O-O)*10+(GPS_BUFtmp+

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論