基于S3C2410的GPS通訊的實(shí)現(xiàn)
1 gps的基本介紹
gps(global positioning system,全球定位系統(tǒng))是美國從20世紀(jì)70年代開始研制,歷時20年,耗資200億美元,具有在海、陸、空進(jìn)行全方位實(shí)時三維導(dǎo)航與定位能力的新一代衛(wèi)星導(dǎo)航與定位系統(tǒng)[1]。其地面監(jiān)控系統(tǒng)的原理框圖如圖1所示。
1.1 gps定位原理
gps定位的基本原理是根據(jù)高速運(yùn)動的衛(wèi)星瞬間位置作為已知的起算數(shù)據(jù),采用空間距離后方交會的方法,確定待測點(diǎn)的位置。如圖2所示,假設(shè)t時刻在地面待測點(diǎn)上安置gps接收機(jī),可以測定gps信號到達(dá)接收機(jī)的時間t,再加上接收機(jī)所接收到的衛(wèi)星星歷等其他數(shù)據(jù)可以確定以下4個方程式:
上述4個方程式中待測點(diǎn)坐標(biāo)x,y,z和vt0為未知參數(shù),其中di=cti(i=1,2,3,4)。di(i=1,2,3,4)分別為衛(wèi)星1,衛(wèi)星2,衛(wèi)星3,衛(wèi)星4到接收機(jī)之間的距離。ti(i=1,2,3,4)分別為衛(wèi)星1,衛(wèi)星2,衛(wèi)星3,衛(wèi)星4的信號到達(dá)接收機(jī)所經(jīng)歷的時間。c為gps信號的傳播速度(即光速)。
4個方程式中各個參數(shù)意義如下:
x,y,z為待測點(diǎn)坐標(biāo)的空間直角坐標(biāo)。
xi,yi,zi(i=1,2,3,4)分別為衛(wèi)星1、衛(wèi)星2、衛(wèi)星3、衛(wèi)星4在t時刻的空間直角坐標(biāo),可由衛(wèi)星導(dǎo)航電文求得。vti(i=1,2,3,4)分別為衛(wèi)星1,衛(wèi)星2,衛(wèi)星3,衛(wèi)星4的衛(wèi)星鐘的鐘差,由衛(wèi)星星歷提供。vt0為接收機(jī)的鐘差。
由以上4個方程即可解算出待測點(diǎn)的坐標(biāo)x,y,z和接收機(jī)的鐘差vt0。
目前gps系統(tǒng)提供的定位精度低于10m,而為得到更高的定位精度,通常采用差分gps技術(shù):將一臺gps接收機(jī)安置在基準(zhǔn)站上進(jìn)行觀測。根據(jù)基準(zhǔn)站已知精密坐標(biāo),計(jì)算出基準(zhǔn)站到衛(wèi)星的距離改正數(shù),并由基準(zhǔn)站實(shí)時將這一數(shù)據(jù)發(fā)送出去。用戶接收機(jī)在進(jìn)行g(shù)ps觀測的同時,也接收到基準(zhǔn)站發(fā)出的改正數(shù),并對其定位結(jié)果進(jìn)行改正,從而提高定位精度。
1.2 gps主要用途
gps性能優(yōu)異,應(yīng)用范圍極廣??梢哉f,凡是需要導(dǎo)航和定位的部門,都可以采用gps。gps的建成和應(yīng)用,是導(dǎo)航技術(shù)的一場革命,影響深遠(yuǎn)。其主要用途有:
(1)導(dǎo)航定位應(yīng)用
gps是空中、海洋和陸地導(dǎo)航定位最先進(jìn)、最理想的技術(shù)。他可以為飛機(jī)、艦船、車輛、坦克、炮兵、陸軍部隊(duì)和空降兵提供全天候連續(xù)導(dǎo)航定位。他是航天飛機(jī)和載人飛船最理想的制導(dǎo)、導(dǎo)航系統(tǒng)。為其起飛、在軌運(yùn)行和再入過程連續(xù)服務(wù)。
(2)精密定位應(yīng)用
應(yīng)用gps載波相位測量技術(shù),可以精確地測定兩點(diǎn)間的相對位置,為大地測量、海洋測量、航空攝影測量和地球動力學(xué)測量提供了高精度、現(xiàn)代化的測量手段。gps已廣泛應(yīng)用于建立準(zhǔn)確的大地基準(zhǔn)、大地控制網(wǎng)和地殼運(yùn)動監(jiān)測網(wǎng)等。
(3)精密授時、大氣研究
gps用戶接收機(jī)通過對gps衛(wèi)星的觀測,可獲得準(zhǔn)確gps時。gps時與utc時是同步的,因此gps亦是當(dāng)今精度最高的全球授時系統(tǒng)。一般接收機(jī)測時精度為100 ns;專用定時接收機(jī)可獲得更高的精度,用于遠(yuǎn)距離時間同步可達(dá)ns級。由于utc時有跳秒,故gps時與utc時有已知的整數(shù)秒差。利用gps測定的電離層延遲和多普勒頻移延遲,可用來研究電離層的電子積分濃度、折射系數(shù)、電子濃度隨高度的分布,以及上述電離層參量在時間和空間上的相關(guān)性等。
(4)為武器精確制導(dǎo)
應(yīng)用gps/ins組合制導(dǎo)系統(tǒng)時,gps不斷修正導(dǎo)彈飛行中慣性導(dǎo)航誤差,提高制導(dǎo)精度,增強(qiáng)武器的"精確打擊"能力。在海灣戰(zhàn)爭中,gps為提高武器的命中精度,發(fā)揮了巨大作用,故被稱為"效益倍增器"。
(5)航天與武器試驗(yàn)中的應(yīng)用
gps在各類航天器定軌和導(dǎo)彈、常規(guī)武器試驗(yàn)中有著廣泛的應(yīng)用。gps可為各類衛(wèi)星測定精密軌道。用差分gps完成飛船的交會和對接。在武器試驗(yàn)中,應(yīng)用gps可精確測定彈道。他具有不受天氣條件、發(fā)射場區(qū)、射向、射程和發(fā)射窗口的限制;可實(shí)現(xiàn)連續(xù)、全程跟蹤測量,可跟蹤低飛和多個目標(biāo),且精度高、費(fèi)用低。
gps還可用于飛行器姿態(tài)測量。姿態(tài)測量采用gps載波相檢測量技術(shù)。在衛(wèi)星或其他航天器的適當(dāng)位置上安裝多副天線,用gps測定各天線的精確位置,從而確定航天器的姿態(tài)。
2 目標(biāo)平臺介紹
在本文中使用的目標(biāo)平臺s3c2410是samsung公司使用arm920t處理器內(nèi)核開發(fā)的一款嵌入式處理器。s3c2410是samsung公司專門為pda,internet設(shè)備和手持設(shè)備等專門開發(fā)的微處理器。該芯片還包含有16 kb一體化的cache/mmu,這一特性使開發(fā)人員能夠?qū)inux和vx-work移植到基于該處理器的目標(biāo)系統(tǒng)中。
該目標(biāo)板的系統(tǒng)資源如下:
(1)cpu:s3c2410微處理器,工作頻率為200 mhz;
(2)flash:16 mb;
(3)sdram:64 mb sdram;
(4)uart:rs 232串行接口;
(5)其他:14針arm jtag接口等;
(6)液晶顯示屏。
在目標(biāo)平臺s3c2410上所選配的gps模塊是gps15l/h。接口特性如下:rs 232輸出,可輸入rs 232或者具有rs 232極性的ttl電平??蛇x的波特率為:300,600,1 200,2 400,4 800,9 600,19 200。gps15與pc串口的連接見示意圖(圖3)所示。
串口輸出協(xié)議:輸出nema0183格式的ascii碼語句,輸出:gpalm,gpgga,gpgll,gpgsa,gpgsv,gprmc,gpvtg(nmea標(biāo)準(zhǔn)語句);pgrmb,pgrme,pgrmf,pgrmm,pgrmt,pgrmv(garmin定義的語句)。還可將串口設(shè)置為輸出包括gps載波相位數(shù)據(jù)的二進(jìn)制數(shù)據(jù)。輸入:初始位置、時間、秒脈沖狀態(tài)、差分模式、nmea輸出間隔等設(shè)置信息。在缺省的狀態(tài)下,gps模塊輸出數(shù)據(jù)的波特率為4800,輸出信息包括:gprmc,gpgga,gpgsa,gpgsv,pgrme等,每秒鐘定時輸出,如3所示。
3 交叉編譯環(huán)境的建立及程序的實(shí)現(xiàn)
基于linux操作系統(tǒng)的應(yīng)用開發(fā)環(huán)境一般是由目標(biāo)系統(tǒng)硬件(開發(fā)板)和宿主pc機(jī)所構(gòu)成[2]。目標(biāo)硬件開發(fā)板用于運(yùn)行操作系統(tǒng)和系統(tǒng)應(yīng)用軟件,而目標(biāo)板所用到的操作系統(tǒng)的內(nèi)核編譯、應(yīng)用程序的開發(fā)和調(diào)試則需要通過宿主pc機(jī)來完成(所以稱為交叉編譯)。雙方之間一般通過串口,并口或以太網(wǎng)接口建立連接關(guān)系。
3.1 燒寫linux內(nèi)核等
通過串口,宿主pc機(jī)向目標(biāo)開發(fā)板燒寫vivi,經(jīng)過裁減的linux內(nèi)核以及根文件系統(tǒng)等,然后安裝主編譯器armv41-unknown-linux-gcc。
3.2 nfs服務(wù)器的配置
在本文中宿主pc機(jī)上裝的是readhat 9.2,他默認(rèn)的是打開了防火墻,目標(biāo)開發(fā)平臺無法用nfs mount。因此應(yīng)先關(guān)閉防火墻,然后點(diǎn)擊主菜單運(yùn)行系統(tǒng)設(shè)置→服務(wù)器設(shè)置→nfs服務(wù)器(英文為:setup→system service→nfs),點(diǎn)擊增加,在目錄(directory)中填入需要共享的路徑,主機(jī)(hosts);中填入允許進(jìn)行連接的主機(jī)ip地址[3],并選擇允許客戶對共享目錄的操作為只讀(read-only)或讀寫(read/write)。
3.3 配置minicom
在linux操作系統(tǒng)xwindow界面下建立終端(在桌面上點(diǎn)擊右鍵→新建終端),在終端的命令行提示符后輸入minicom,回車,出現(xiàn)wincom的啟動畫面,然后按照提示設(shè)置即可。
3.4 編程和調(diào)試
在此交叉編譯環(huán)境下,根據(jù)前面提到的gps定位原理,經(jīng)過編程和調(diào)試,在目標(biāo)平臺的液晶顯示屏上可顯示本地的地理位置信息。
注意,gps的天線要放在能良好接受室外信號的地方,比如說窗臺等。否則可能接收不到信號。
4 結(jié)語
本文介紹了gps定位的工作原理及其在s3c2410上的實(shí)現(xiàn)方法,在車載gps系統(tǒng)及其他導(dǎo)航系統(tǒng)中有很多的應(yīng)用前景。
評論