GPS數(shù)據(jù)采集分析課件_第1頁
GPS數(shù)據(jù)采集分析課件_第2頁
GPS數(shù)據(jù)采集分析課件_第3頁
GPS數(shù)據(jù)采集分析課件_第4頁
GPS數(shù)據(jù)采集分析課件_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于GPS數(shù)據(jù)采集系統(tǒng)的設(shè)計時間:2012-08-02 09:58:50 來源:現(xiàn)代電子技術(shù) 作者:史曉影關(guān)鍵字:GPS   數(shù)據(jù)采集系統(tǒng)      摘要:為了設(shè)計高精度、全天候、全天時的數(shù)據(jù)采集系統(tǒng),采用了GPS技術(shù)實現(xiàn)通信,信息采用NMEA-0183格式,單片機接收GPS輸出的時間和定位信息后,將信息調(diào)整為我國的標準,并將調(diào)整后的經(jīng)度、緯度、海拔高度和時間等信息通過液晶終端顯示。最終實現(xiàn)了GPS數(shù)據(jù)采集及轉(zhuǎn)換等工作,為事故定位、搜查救援等工作提供了技術(shù)依據(jù)。關(guān)鍵詞:GPS數(shù)據(jù)采集;

2、定位;數(shù)據(jù)處理;單片機    隨著科技的發(fā)展,移動技術(shù)的不斷成熟,定位導航開辟了一個重要的新興市場。GPS(Global Positioning System)以其高精度、全天候、全天時的特點,在定位、導航、測距等領(lǐng)域被廣泛應(yīng)用,具有測量精度高、速度快、用戶數(shù)量不限、抗干擾能力強等優(yōu)點。不僅用于軍事領(lǐng)域,還廣泛用于工農(nóng)業(yè)生產(chǎn)、交通運輸、野外探險等領(lǐng)域。本系統(tǒng)實現(xiàn)的數(shù)據(jù)采集精確度較高;采集到的位置可以控制在2 m范圍之內(nèi),接收數(shù)據(jù)并處理的時間小于2 s,存精確度和實時性上要優(yōu)于其他數(shù)據(jù)采集系統(tǒng)。1 GPS數(shù)據(jù)采集系統(tǒng)的設(shè)計   

3、0;硬件系統(tǒng)中主要由主控制器、液晶顯示模塊和CPS射頻前端,數(shù)據(jù)傳輸單元組成,如圖1所示。    GPS信號通過天線接收值射頻前端模塊,在射頻芯片中實現(xiàn)AD轉(zhuǎn)換,將模擬中頻信號轉(zhuǎn)化為數(shù)字信號通過串口傳入單片機,單片機接收的數(shù)據(jù)信息經(jīng)過時差,坐標處理等操作,在通過LCD顯示出來。2 GPS數(shù)據(jù)采集系統(tǒng)的設(shè)計及實現(xiàn)21 GPS語句的輸出格式    GPS-OEM板采用NMEA-0183通信格式,可以輸出多種句型,均以“$”開頭。其語句格式如表1所示。    輸出的語句按串口通信協(xié)議:1位開始位,8位

4、數(shù)據(jù)位,1位停止位,無奇偶校驗。輸出數(shù)據(jù)采用的是ASC碼字符,內(nèi)容包含了緯度、經(jīng)度、速度、日期、航向及衛(wèi)星狀況等信息。語句達十余種,其中定位語句$GPRMC其結(jié)構(gòu)為:    $GPRMC,<1><2>,<3><4>,<5><6>,<7>,<8>,<9>,<10>,<11>*hh<CR><LF>    其中:    “GP”-交談識別符; &#

5、160;  “RMC”-語句識別符;    “*”-校驗和識別符;    “hh”-為校驗和,其代表了“$”和“*”之間所有字符的按位異或值(不包括這兩個字符)。    $GPRMC語句數(shù)據(jù)區(qū)的內(nèi)容為:    1)定位點的協(xié)調(diào)世界時間(UTC),hhmmss(時分秒)格式;    2)定位狀態(tài),A=有效定位,V=無效定位;    3)定位點緯度,ddmmmmmmm(度分)格式;  

6、60; 4)緯度半球,N(北半球)或S(南半球);    5)定位點經(jīng)度,dddmmmmmmm(度分)格式;    6)經(jīng)度半球,E(東經(jīng))或W(西經(jīng));    7)地面速度,0000節(jié)9999節(jié);    8)地面航向,0000度3599度;    9)UTC日期,ddmmyy(日月年)格式;    10)磁偏角,0000度180度;    11)磁偏角方向,E(東)或W(西)。22 G

7、PS數(shù)據(jù)接收    利用單片機的串行接口接收GPS傳送過來的數(shù)據(jù),其硬件原理如圖2所示,GPS的接口及單片機串口均采用TTL電平傳輸數(shù)據(jù),所以GPS接口引腳4和3可直接與單片機的TXD和RXD引腳相連,無需電平轉(zhuǎn)換,硬件電路圖如圖2所示。    GPS模塊輸出的是數(shù)據(jù)流,每秒鐘更新一次數(shù)據(jù)。必須要用單片機對其輸出的數(shù)據(jù)流中的數(shù)據(jù)進行提取,以方便用戶直接讀取。首先打開串口中斷服務(wù)子程序,開始接收數(shù)據(jù),判斷其是否有“$”符號,然后根據(jù)逗號的個數(shù)進行判斷數(shù)據(jù)的類型,然后分別存儲時間、經(jīng)度、緯度、日期等信號,若接收到“n”則接收結(jié)束

8、。    用C語言編程,其程序如下:        在PC機上接收的GPRMC語句信息如下:    $GPRMC,103320,A,435095221,N,1252406042,E,0000,0000,130507,0091,W*50    這是一條GPS定位數(shù)據(jù)信息語句,涵義是UTC時間為10時33分20秒,位置在北緯43度509522分,東經(jīng)125度240604分,移動速度為0,移動范圍為0,日期為2007年5月13日,地磁變化為9

9、10,地磁變化方向為西,校驗和為50H。根據(jù)接收的信息用單片機進行相應(yīng)的處理,就可以得到所需的信息了,信息處理過程見3節(jié)。3 對接收信息的處理    數(shù)據(jù)的處理主要包括兩個方面:    1)時間的處理    直接從衛(wèi)星接收到的時間信息是UTC時間(格林尼治時間),需要處理成北京時間。    要變成北京時間需要加上8個小時,如果超過24小時,則減去24小時后,才是北京時間。    時間轉(zhuǎn)換處理程序如下:   

10、     2)定位的處理    GPS接受的經(jīng)度、緯度等信息采用的是美國的84坐標系統(tǒng),需要轉(zhuǎn)換成我國的54坐標系統(tǒng)。為便于描述設(shè)如下幾個參量:    大地坐標-(B,L,H)    平面坐標-(x,y,z)    橢球偏心率-C    橢球參數(shù)m,n-大地坐標轉(zhuǎn)換到指教坐標需要使用的參數(shù),則有:        4 結(jié)束語

11、60;   本系統(tǒng)討論了用單片機對GPS數(shù)據(jù)的讀取及處理的方法,分析了GPS模塊的信息格式并編制了通信軟件,不僅成功地實現(xiàn)了GPS定位信息的接收與提取,而且具有硬件電路簡單、成本低廉、編程方便、性能穩(wěn)定的特點,具有一定的使用價值。GPS模塊的數(shù)據(jù)格式對GPS模塊的數(shù)據(jù)處理本質(zhì)上還是串口通信程序設(shè)計,只是GPS模塊的輸出遵循固定的格式,通過字符串檢索查找即可從模塊發(fā)送的數(shù)據(jù)中找出需要的數(shù)據(jù),常用的GPS模塊大多采用NMEA-0183 協(xié)議。NMEA-0183 是美國國家海洋電子協(xié)會(National Marine Electronics Association)所指

12、定的標準規(guī)格,這一標準制訂所有航海電子儀器間的通訊標準,其中包含傳輸資料的格式以及傳輸資料的通訊協(xié)議。以下是一組正常的GPS 數(shù)據(jù)$GPGGA,082006.000,3852.9276,N,11527.4283,E,1,08,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下面分別對每組數(shù)據(jù)的含義進行分析。GPS 固定數(shù)據(jù)輸出語句($GPGGA),這是一幀GPS 定位的主要數(shù)據(jù),也是使用最廣的數(shù)據(jù)。為了便于理解,下面舉例

13、說明$GPGGA語句各部分的含義。例:$GPGGA,082006.000,3852.9276,N,11527.4283,E,1,08,1.0,20.6,M,0000*35其標準格式為:$GPGGA,(1),(2),(3),(4),(5),(6),(7),(8),(9),M,(10),M,(11),(12)hh(CR)(LF)各部分所對應(yīng)的含義為:(1) 定位UTC 時間:08 時20 分06 秒(2) 緯度(格式ddmm.mmmm:即dd 度,mm.mmmm 分);(3) N/S(北緯或南緯):北緯38 度52.9276 分;(4) 經(jīng)度(格式dddmm.mmmm:即ddd 度,mm.mmmm

14、 分);(5) E/W(東經(jīng)或西經(jīng)):東經(jīng)115 度27.4283 分;(6) 質(zhì)量因子(0=沒有定位,1=實時GPS,2=差分GPS):1=實時GPS;(7) 可使用的衛(wèi)星數(shù)(08):可使用的衛(wèi)星數(shù)=08;(8) 水平精度因子(1.099.9);水平精度因子=1.0;(9) 天線高程(海平面,9999.999999.9,單位:m);天線高程=20.6m);(10) 大地橢球面相對海平面的高度(999.99999.9,單位:m):無;(11) 差分GPS 數(shù)據(jù)年齡,實時GPS 時無:無;(12) 差分基準站號(00001023),實時GPS 時無:無;總和校驗域;hh 總和校驗數(shù):35(CR)

15、(LF)回車,換行。GPRMC(建議使用最小GPS 數(shù)據(jù)格式)$GPRMC,082006.000,A,3852.9276,N,11527.4283,E,0.00,0.0,261009,*38$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11><CR><LF>(1) 標準定位時間(UTC time)格式:時時分分秒秒.秒秒秒(hhmmss.sss)。(2) 定位狀態(tài),A = 數(shù)據(jù)可用,V =

16、 數(shù)據(jù)不可用。(3) 緯度,格式:度度分分.分分分分(ddmm.mmmm)。(4) 緯度區(qū)分,北半球(N)或南半球(S)。(5) 經(jīng)度,格式:度度分分.分分分分。(6) 經(jīng)度區(qū)分,東(E)半球或西(W)半球。(7) 相對位移速度, 0.0 至1851.8 knots(8) 相對位移方向,000.0 至359.9 度。實際值。(9) 日期,格式:日日月月年年(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,表

17、明該語句為Track Made Good and Ground Speed(VTG)地面速度信息字段1:運動角度,000 - 359,(前導位數(shù)不足則補0)字段2:T=真北參照系字段3:運動角度,000 - 359,(前導位數(shù)不足則補0)字段4:M=磁北參照系字段5:水平運動速度(0.00)(前導位數(shù)不足則補0)字段6:N=節(jié),Knots字段7:水平運動速度(0.00)(前導位數(shù)不足則補0)字段8:K=公里/時,km/h字段9:校驗值表 1 GPS模塊主要參數(shù)GPS模塊主要參數(shù)GPS芯片組SiRF Star III工作頻率L1, 1575.42 MHz粗捕獲碼 (C/A)率1.023

18、 MHz chip rate同時跟蹤通道數(shù)20靈敏度-159 dBm定位精度5m(2維均方根, 允許廣域差分系統(tǒng))最小速度0.1 m/s時間精度1S(與GPS時間同步)默認坐標系1984年世界大地坐標系(WGS-84)重獲時間0.1S(平均值)熱啟動1S(平均值)溫啟動38S(平均值)冷啟動42S(平均值)最高工作海拔18km(60000feet)最大移動速率515m/S(1000knots)最大加速度4g最大急沖度20m/S3電源電壓5V±0.5V整機電流約60mA,不超過100mA整板外形61mm×49mm×17mmGPS芯片外形27.9mm×20m

19、m×2.9mm波特率9600bps數(shù)據(jù)輸出格式SiRF二進制格式或NMEA 0183 GGA, GSA, GSV, RMC,VTG,GLL數(shù)據(jù)輸出電平同時具備TTL電平和RS232電平數(shù)據(jù)輸出接口20pin插針(TTL電平)和DB9母座 (RS232電平)天線類型外置有源GPS天線(3.3V/5V電壓可選, 默認為3.3V)后備電池CR1220鋰電池,3V,不可充電工作溫度-40ºC至+85ºCGPS模塊的應(yīng)用程序設(shè)計GPS模塊的應(yīng)用程序設(shè)計主要分為兩部分,第一部分為串口的設(shè)置于數(shù)據(jù)讀取,第二部分為數(shù)據(jù)的分析和需要數(shù)據(jù)的提取。與其他的關(guān)于設(shè)備編

20、程的方法一樣,在Linux下,操作、控制串口也是通過操作起設(shè)備文件進行的。在Linux下,串口的設(shè)備文件是/dev/ttyS0或/dev/ttyS1等。因此要讀寫串口,我們首先要打開串口,然后根據(jù)GPS模塊的配置參數(shù)對串口的波特率、校驗、流控制等進行設(shè)置,這些參數(shù)設(shè)置均通過對termios結(jié)構(gòu)中c_cflag的配置實現(xiàn),串口配置部分函數(shù)如下:int gps:set_opt(int fd,int nSpeed, int nBits, char nEvent, int nStop) struct termios newtio,oldtio; if ( tcgetattr( fd,&oldt

21、io) != 0) perror("SetupSerial 1"); return -1; bzero( &newtio, sizeof( newtio ) ); newtio.c_cflag |= CLOCAL | CREAD; newtio.c_cflag &= CSIZE; switch( nBits ) case 7: newtio.c_cflag |= CS7; break; case 8: newtio.c_cflag |= CS8; break; switch( nEvent ) case 'O': /奇校驗 newtio.c_

22、cflag |= PARENB; newtio.c_cflag |= PARODD; newtio.c_iflag |= (INPCK | ISTRIP); break; case 'E': /偶校驗 newtio.c_iflag |= (INPCK | ISTRIP); newtio.c_cflag |= PARENB; newtio.c_cflag &= PARODD; break; case 'N': /無校驗 newtio.c_cflag &= PARENB; break; switch( nSpeed ) case 2400: cfse

23、tispeed(&newtio, B2400); cfsetospeed(&newtio, B2400); break; case 4800: cfsetispeed(&newtio, B4800); cfsetospeed(&newtio, B4800); break; case 9600: cfsetispeed(&newtio, B9600); cfsetospeed(&newtio, B9600); break; case 115200: cfsetispeed(&newtio, B115200); cfsetospeed(&am

24、p;newtio, B115200); break; default: cfsetispeed(&newtio, B9600); cfsetospeed(&newtio, B9600); break; if( nStop = 1 ) newtio.c_cflag &= CSTOPB; else if ( nStop = 2 ) newtio.c_cflag |= CSTOPB; newtio.c_ccVTIME = 0; newtio.c_ccVMIN = 0; tcflush(fd,TCIFLUSH); if(tcsetattr(fd,TCSANOW,&new

25、tio)!=0) qDebug()<<"com set error"<<endl; return -1; qDebug()<<"set done!"<<endl; return 0;在GPS數(shù)據(jù)的處理上首先將窗口數(shù)據(jù)存入一個字符串,接著通過對字符串數(shù)據(jù)的判斷來提取數(shù)據(jù)內(nèi)容,判斷分為兩步,首先判斷是什么類型的數(shù)據(jù),在本程序的設(shè)計中需要讀取$GPRMC和$GPGGA兩組數(shù)據(jù),因此首先判斷字符串GPS_BUF5是C還是A,由于數(shù)據(jù)是通過符號“,”進行隔開,因此通過查找“,”來確定數(shù)據(jù)位置。在實現(xiàn)上將得到逗號位置函

26、數(shù)單獨封裝調(diào)用,程序如下:/得到指定序號的逗號位置int gps:GetComma(int num,char *str) int i,j=0; int len=strlen(str); for(i=0;i<len;i+) if(stri=',') j+; if(j=num) return i+1; return 0;接下來根據(jù)數(shù)據(jù)格式,通過逗號位置,提取數(shù)據(jù)信息,程序如下:void gps:gps_parse() int tmp; char c; c = GPS_BUF5; if(c='C') /"GPRMC" GPS->D.hour =(GPS_BUF 7-'0')*10+(GPS_BUF 8-'0'); GPS->D.minute =(GPS_BUF 9-'0')*10+(GPS_BUF10-'0'); GPS->D.second =(GPS_BUF11-'0')*10+(GPS_BUF12-'0'); tmp = GetComma(9,GPS_BUF); GPS->D.day =(GPS_BUFtmp+0-'0')*10+(GPS_BUFtmp+1-'0'); G

溫馨提示

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

評論

0/150

提交評論