国产亚洲精品AA片在线观看,丰满熟妇HD,亚洲成色www成人网站妖精,丁香五月天婷婷五月天男人天堂

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM和WINCE的便攜式差分GPS導(dǎo)航定位系統(tǒng)設(shè)計(jì)及

基于ARM和WINCE的便攜式差分GPS導(dǎo)航定位系統(tǒng)設(shè)計(jì)及

作者: 時(shí)間:2016-10-08 來源:網(wǎng)絡(luò) 收藏

2.2 設(shè)置HC12參數(shù)

本文引用地址:http://www.ljygm.com/article/201610/305935.htm

通過串口建立模塊與或PC機(jī)的連接,借助NMEA0183指令,通過任意一串口均可以設(shè)置HC12??捎瞄_發(fā)軟件串口通信區(qū)“發(fā)送”命令按鈕或串口助手軟件(或WINXP均可)進(jìn)行通信,首先設(shè)置接收機(jī)應(yīng)用模式為SBAS,再設(shè)置串口通信波特率、串口輸出的NMEA語句及輸出速率,最后設(shè)置最大差分齡期和衛(wèi)星仰角。

模塊串行通訊參數(shù)為:波特率=19200,數(shù)據(jù)位=8位,停止位=1位,無奇偶校驗(yàn)。通過串口建立和GPS的連接,GPS加電后便自動(dòng)搜索衛(wèi)星,并通過串口以每秒1次的頻率向發(fā)送GPRMC格式的定位信息,在定位信息有效后ARM便可以提取所需要的定位信息。

2.3 讀取串口

獲取GPS導(dǎo)航數(shù)據(jù)實(shí)際上就是通過串口讀取HC12輸出的NMEA格式數(shù)據(jù)的過程,下面介紹下讀取串口程序的開發(fā)過程。

2.3.1 打開串口

點(diǎn)擊“打開”按鈕,進(jìn)入此按鈕的消息響應(yīng)函數(shù),函數(shù)中執(zhí)行打開串口和串口參數(shù)配置等操作。首先調(diào)用CreateFile()函數(shù)打開指定的端口,接著對串口進(jìn)行參數(shù)配置,包括波特率、數(shù)據(jù)位、停止位、奇偶校驗(yàn)等。參數(shù)設(shè)置過程為:先調(diào)用GetCommState()獲取串口的當(dāng)前配置,得到結(jié)構(gòu)體DCB(Device Control Block,設(shè)備控制塊)的指針,通過它給DCB結(jié)構(gòu)體賦值,然后傳給SetCommState()函數(shù)對串口進(jìn)行配置。

最后設(shè)置串口的超時(shí)參數(shù),設(shè)置方法與上述參數(shù)設(shè)置類似,先通過GetCommTimeouts()得到一個(gè)結(jié)構(gòu)體指針,賦值后傳給Set Comm Time outs()進(jìn)行設(shè)置。

2.3.2 接收數(shù)據(jù)

串口打開后,自動(dòng)開始接收,函數(shù)中調(diào)用了CreateThread()開辟了一個(gè)線程,用于接收串口數(shù)據(jù)。由于接受過程需要調(diào)用WaitCommEven()函數(shù)來不停地等待數(shù)據(jù)到來事件,會(huì)致使程序無法響應(yīng)其他操作,因此采用開辟線程的辦法來防止信息擁堵。

基于ARM和WINCE的便攜式差分GPS導(dǎo)航定位系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)

圖4所示為接收串口數(shù)據(jù)的線程中執(zhí)行的操作流程。程序?qū)崿F(xiàn)了串口數(shù)據(jù)的接收,并把接收到的數(shù)據(jù)傳遞給Dig類,用于后期進(jìn)行定位信息提取及顯示等操作。

2.4 提取定位數(shù)據(jù)

NMEA-0183通信標(biāo)準(zhǔn)的輸出數(shù)據(jù)采用的是ASCⅡ碼,主要有GGA、GLL、GSA、GSV、RMC、VCT等不同的結(jié)構(gòu),每種類型的幀均是以“$”開頭,然后是兩個(gè)字母的“識(shí)別符”和3個(gè)字母的“語句名”組成ID信息頭,接著就是以逗號(hào)分割的數(shù)據(jù)體,末尾為校驗(yàn)和,以回車換行符結(jié)束。本設(shè)計(jì)只關(guān)心日期、時(shí)間、經(jīng)緯度、地面速度等,選用GPRMC語句,表1中對該語句結(jié)構(gòu)作了詳細(xì)說明,按圖5所示的流程即可完成GPS數(shù)據(jù)的提取。注意在編寫程序中不要出現(xiàn)m_strRecv[i+k](k>0)這樣的表達(dá)式,例如以(m_strDataReceived[i]==‘$’m_strDataReceived[i+3]==‘R’)為判斷條件來提取ID頭,容易造成超出數(shù)組元素個(gè)數(shù)的錯(cuò)誤。

基于ARM和WINCE的便攜式差分GPS導(dǎo)航定位系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)
基于ARM和WINCE的便攜式差分GPS導(dǎo)航定位系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)

3 系統(tǒng)實(shí)驗(yàn)及精度分析

實(shí)驗(yàn)地點(diǎn)選在運(yùn)動(dòng)場場開闊處,先采用靜態(tài)內(nèi)符合法進(jìn)行精度測試。連接天線,給系統(tǒng)上電,運(yùn)行開發(fā)軟件,設(shè)置好串口參數(shù),打開串口COM2,待差分GPS模塊進(jìn)入穩(wěn)定差分定位后開始保存數(shù)據(jù),采集數(shù)據(jù)約3 000組,用MATLAB處理采集數(shù)據(jù),結(jié)果如圖6所示。

基于ARM和WINCE的便攜式差分GPS導(dǎo)航定位系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)

導(dǎo)航定位等功能測試:手持該系統(tǒng)進(jìn)行直線和圓形運(yùn)動(dòng),觀察海圖區(qū)域航跡向軌跡形狀;設(shè)定1個(gè)目標(biāo)點(diǎn),畫半徑為200米的圓并設(shè)置航線,分別按直線和曲線前進(jìn),觀察距離、偏離、方位等參數(shù)變化;對海圖進(jìn)行放大、縮小和平移,分別點(diǎn)選本艦居中和目標(biāo)居中,觀察海圖顯示變化。

測試表明,終端軟件能平穩(wěn)地運(yùn)行在嵌入式5.0系統(tǒng)上,操作界面簡潔、直觀、實(shí)用、功能全面,具有良好的實(shí)時(shí)性和準(zhǔn)確性,系統(tǒng)定位精度(2DRMS)優(yōu)于1 m。

4 結(jié)束語

文中基于ARM硬件平臺(tái),以WINCE為嵌入式操作系統(tǒng),在Visual Studio2008下開發(fā)了串口通信導(dǎo)航數(shù)據(jù)軟件,通過串行接口實(shí)現(xiàn)差分GPS模塊與ARM之間的通信,構(gòu)建了一個(gè)體積小、功耗低、功能全面的便攜式差分GPS導(dǎo)航定位系統(tǒng),并給出了詳細(xì)的硬件和軟件設(shè)計(jì)實(shí)現(xiàn)。實(shí)驗(yàn)表明:該系統(tǒng)能實(shí)時(shí)顯示精度較高、持久有效的GPS定位數(shù)據(jù),具有重要的實(shí)用價(jià)值和一定的參考意義。


上一頁 1 2 下一頁

關(guān)鍵詞: ARM WINCE 差分GPS RS232串口

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉