徐瑤 張繼宏
摘要:該文介紹了GPS差分定位的主要誤差來(lái)源,提出了相應(yīng)的解決方法。通過(guò)對(duì)RTCM協(xié)議的具體內(nèi)容分析,以舉例的方式給出了具體的解碼流程;根據(jù)RTCM的解碼原理,提出了此協(xié)議存在的不足之處,同時(shí)對(duì)RTCM的發(fā)展前景進(jìn)行了探討。
關(guān)鍵詞:GPS;差分定位;RTCM
中圖分類(lèi)號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)17-4150-03
The Decoding Progress of RTCM Format for Differential GPS
XU Yao, ZHANG Ji-hong
(Chongqing University of Posts and Telecommunications, Chongqing 400065,China)
Abstract: This paper discusses the main error sources and the solutions of GPS. Give the detail decoding process by analysing the RTCM format. According to the decoding principle of RTCM, discussing the shortcomings and the developing direction of RTCM format .
Key words: GPS; Differential positioning; RTCM
GPS(Global Position System)是美國(guó)建立的衛(wèi)星導(dǎo)航定位系統(tǒng),它由24顆衛(wèi)星組成,能提供全實(shí)時(shí)、全天候和全球性的導(dǎo)航定位服務(wù)。目前的定位精度可達(dá)到25m左右。為了提高GPS的定位精度,差分GPS應(yīng)運(yùn)而生?,F(xiàn)在在建與建成的差分增強(qiáng)系統(tǒng)有美國(guó)的空基增強(qiáng)系統(tǒng)WAAS和地基增強(qiáng)系統(tǒng)NDGPS 、俄羅斯的SDCM、日本的MSAS、歐洲的EGNOS以及印度的GAGAN系統(tǒng)?,F(xiàn)在運(yùn)用最廣泛的為偽距差分技術(shù),其定位精度可達(dá)米級(jí),而載波相伴的定位精度可達(dá)厘米級(jí)。
1 差分定位的主要誤差來(lái)源
差分系統(tǒng)由基準(zhǔn)站、流動(dòng)站和數(shù)據(jù)鏈三部分組成。基準(zhǔn)站坐標(biāo)已知并有高精度的接收機(jī),它接收衛(wèi)星系統(tǒng)并編碼成差分?jǐn)?shù)據(jù),通過(guò)數(shù)據(jù)鏈傳送給流動(dòng)站用戶(hù),流動(dòng)站可通過(guò)差分?jǐn)?shù)據(jù)調(diào)整自己的定位數(shù)據(jù)。根據(jù)所發(fā)送的差分?jǐn)?shù)據(jù)的類(lèi)型不同,差分定位可分為位置差分、偽距差分和載波相位差分。
限制差分GPS精度的因素有以下幾個(gè):1)星歷不確定性。星歷誤差不能完全由差分校正消除,剩余的誤差是由基準(zhǔn)站和流動(dòng)站之間的關(guān)系函數(shù)。2)對(duì)流層延遲。對(duì)流層對(duì)衛(wèi)星信號(hào)有著明顯的影響,這種影響在基準(zhǔn)站和流動(dòng)站也許不相同。3)電離層延遲?;鶞?zhǔn)站和流動(dòng)站到衛(wèi)星經(jīng)過(guò)了不同的路徑,通過(guò)了不同的大氣層,因而導(dǎo)致了不同信號(hào)延遲。4)遮擋物。由于建筑物或者地形可能遮蔽衛(wèi)星,使其對(duì)流動(dòng)站可見(jiàn)對(duì)基準(zhǔn)站不可見(jiàn)。5)地球曲率。衛(wèi)星對(duì)流動(dòng)站可視而對(duì)基準(zhǔn)站不可視。6)多路徑。由天線(xiàn)周?chē)姆瓷湟?,其誤差具有隨機(jī)性?;鶞?zhǔn)站和流動(dòng)站兩個(gè)天線(xiàn)之間的反射狀況是不可相同的。7)接收機(jī)噪聲。噪聲是影響定位精度的一個(gè)重要問(wèn)題,當(dāng)接收機(jī)不處于一個(gè)固定位置以及位置精度系統(tǒng)不是最佳的時(shí)候,噪聲誤差特別明顯。8)其它因素。如潮汐等。
解決上述誤差的幾個(gè)方案:由2)、3)因素引起的誤差可通過(guò)建立數(shù)學(xué)模型來(lái)消除。6)引起的誤差消除可通過(guò)選擇具有旁波瓣抑制功能的天線(xiàn),同時(shí)在放置天線(xiàn)時(shí)應(yīng)避開(kāi)反射物,也可采取7)中的方案。7)中的誤差可通過(guò)載波輔助和窄相關(guān)器技術(shù)消除。8)中的誤差屬于自然誤差,目前還沒(méi)得到有效的解決方案。
2 RTCM SC-104協(xié)議電文內(nèi)容分析
RTCM協(xié)議是當(dāng)前應(yīng)用于衛(wèi)星導(dǎo)航定位系統(tǒng)的差分技術(shù)中運(yùn)用最廣泛的協(xié)議,它是由1983年11月國(guó)際海運(yùn)事業(yè)無(wú)線(xiàn)電技術(shù)委員會(huì)制定,到目前為止已經(jīng)有7個(gè)版本。RTCM差分協(xié)議是由二進(jìn)制的數(shù)據(jù)流組成,每一幀內(nèi)容都是包含(N+2)個(gè)字長(zhǎng),N中包含電文中的數(shù)據(jù),并隨電文類(lèi)型及內(nèi)容而改變,“2”代表是每幀電文中的報(bào)文頭,由兩個(gè)字碼組成,具體的內(nèi)容如圖1如示。
引導(dǎo)字:共8bit,由“0110010”組成,是每幀電文的開(kāi)始標(biāo)志,作為用戶(hù)搜索用。只有當(dāng)用戶(hù)搜索到引導(dǎo)字并確認(rèn)正確以后才開(kāi)始電文的解碼。幀識(shí)別:6bit,由二進(jìn)制轉(zhuǎn)換成十進(jìn)制后可得出電文類(lèi)型,范圍為1-64。基準(zhǔn)站識(shí)別:10bit,確定基準(zhǔn)站序號(hào),范圍是0-1024。修正的Z計(jì)數(shù):13bit,Z計(jì)數(shù)是下一幀的開(kāi)始及電文參數(shù)的參考時(shí)間,范圍為0-3599.4s,精度為0.6s。流動(dòng)站可根據(jù)Z計(jì)數(shù)得到準(zhǔn)確的GPS時(shí)。幀長(zhǎng):確定幀的長(zhǎng)度,通過(guò)幀長(zhǎng)和序號(hào)可以確定下一引導(dǎo)字的位置?;_(tái)狀況:判斷基準(zhǔn)站的工作狀況。奇偶校驗(yàn):判定該字碼是否通過(guò)。
本文主要介紹電文類(lèi)型1的幀內(nèi)容與解碼過(guò)程。電文類(lèi)型1是目前偽距差分領(lǐng)域運(yùn)用最廣泛的電文類(lèi)型,它提供了偽距改正數(shù)(PRC)和偽距改正數(shù)變化率(RRC)數(shù)據(jù)。任一時(shí)刻“t”的偽距改正數(shù)PRC(t):
比例因子為1bit,編碼只能是“0”或者“1”,主要作用是確定偽距改正數(shù)和偽距改正變化率的精度。當(dāng)編碼為“0”時(shí),偽距改正數(shù)與偽距改正變化率的精度分別為0.02m和0.002m/s。當(dāng)編碼為“1”時(shí),偽距改正數(shù)與偽距改正變化率的精度分別為0.032m和0.0032m/s。UDRE是用戶(hù)差分距離誤差,為2bit,有4種不同類(lèi)型的編碼,每種編碼代表不同的誤差范圍。衛(wèi)星識(shí)別是衛(wèi)星的ID,轉(zhuǎn)換成十進(jìn)制后可得到衛(wèi)星的編號(hào),其中編號(hào)32以全零“00000”表示。數(shù)據(jù)發(fā)布日期(IOD)是用來(lái)判定用戶(hù)接收的差分?jǐn)?shù)據(jù)是否過(guò)時(shí),通過(guò)比對(duì)(IOD)與GPS導(dǎo)航數(shù)據(jù)發(fā)布日期,可以得到用戶(hù)接收到的差分?jǐn)?shù)據(jù)相對(duì)于GPS時(shí)的延時(shí)時(shí)間。偽距改正數(shù)提供的是對(duì)應(yīng)衛(wèi)星與基準(zhǔn)站之間的偽距改正值,為16bit,有符號(hào)位,這里的PRC是一個(gè)推測(cè)值,是由上一個(gè)數(shù)值“過(guò)時(shí)值”推測(cè)出來(lái)的,轉(zhuǎn)換成十進(jìn)制后乘以相應(yīng)的精度可得到具體的偽距改正值,范圍是“±655.34或±10485.44”。偽距改正變化率是偽距改正數(shù)的變化幅度,為8bit,有符號(hào)位,轉(zhuǎn)換成十進(jìn)制后乘以相應(yīng)的精度可得到具體的偽距變化率,是個(gè)常數(shù),范圍是“±0.254或±4.064”。奇偶校驗(yàn)是判定流動(dòng)站所接收到的該字碼的碼字是否正確,為6bit,它不僅與該字碼的碼字編號(hào)有關(guān),還與上一字碼的最后兩位有關(guān)。填充字是采用“1”、“0”交替進(jìn)行編碼的,避免了與引導(dǎo)字同步碼進(jìn)行混淆。由于電文1類(lèi)型中每幀數(shù)據(jù)最多只能有3顆衛(wèi)星的改正數(shù)信息,而每一顆衛(wèi)星的改正數(shù)要求為40bit,所以不能使要求的字碼是嚴(yán)格的整數(shù)。若衛(wèi)星的數(shù)值不是3的整數(shù)倍,每幀電文的最后一個(gè)字碼只能進(jìn)行填充,填充的格式只有兩種,8bit 或者是16bit。endprint
3 RTCM電文的解碼過(guò)程
RTCM電文的解碼過(guò)程可分為以下幾個(gè)步驟:
Step1:字節(jié)的讀取。RTCM電文協(xié)議是以6/8進(jìn)行數(shù)據(jù)傳輸,只有低6位是有效位,7、8位是填充位,第7位是“1”,第8位是“0”,所以只有當(dāng)接到的字節(jié)的十進(jìn)制數(shù)在64-127之間時(shí),才是有效的,否則就應(yīng)當(dāng)刪除。
Step2:字節(jié)的滾動(dòng)。UART是約定的異步通訊,首先發(fā)送或接收的是低位數(shù)據(jù),所以在接收到的數(shù)據(jù)后應(yīng)當(dāng)進(jìn)行字節(jié)滾動(dòng)。滾動(dòng)原則為
Step3:字節(jié)取補(bǔ)碼。如果前一個(gè)字節(jié)的最后一位d*30為“1”時(shí),則該字節(jié)的前24位應(yīng)取補(bǔ)碼,后6位奇偶校驗(yàn)則保持不變。否則該字節(jié)保持不變。需注意,不管前一字節(jié)的d*30編碼是“0”還是“1”,該字節(jié)的后6位始終保持不變。
Step4:電文同步。RTCM每幀都是由引導(dǎo)字“0110010”開(kāi)始的,電文解碼時(shí),首先要搜索引導(dǎo)字。找到引導(dǎo)字后,先假設(shè)它是有效的,再進(jìn)行該字的奇偶校驗(yàn),若奇偶校驗(yàn)通過(guò),則可對(duì)該字進(jìn)行解碼,否則重新搜索引導(dǎo)字。
Step5:奇偶校驗(yàn)。奇偶校驗(yàn)碼是由該字節(jié)的前24位和前一字節(jié)的最后2位確定的,其編碼規(guī)則如下表,只有當(dāng)該校驗(yàn)碼與接收到的字節(jié)的奇偶校驗(yàn)碼一致時(shí),才能表示該字節(jié)通過(guò)。
第七碼字:01101000,11111111,11011001,110100
4 總結(jié)
本文介紹了差分系統(tǒng)的定位原理以及差分誤差,重點(diǎn)介紹了現(xiàn)在常用的RTCM SC-104協(xié)議并分析了及解碼過(guò)程,給出了具體的解算步驟。運(yùn)用奇偶校驗(yàn)碼進(jìn)行判定解碼的正確性存在一定的缺陷,當(dāng)接收的該字碼錯(cuò)誤個(gè)數(shù)為偶數(shù)時(shí),會(huì)被判定該字碼解碼正確,所以RTCM SC-104的解碼過(guò)程有待進(jìn)一步的完善。再者RTCM SC-104協(xié)議只針對(duì)于GPS系統(tǒng),中國(guó)的北斗系統(tǒng)已經(jīng)逐漸步入世界市場(chǎng),提出適合于北斗系統(tǒng)的差分協(xié)議將是未來(lái)的發(fā)展方向。
參考文獻(xiàn):
[1] 劉智敏,林文介,唐衛(wèi)明.GPS 差分協(xié)議 RTCM 電文分析與應(yīng)用[J].桂林工學(xué)院學(xué)報(bào),2004,24(2): 188-191.
[2] 李思超,葉甜春,徐建華. DGPS RTCM 數(shù)據(jù)格式簡(jiǎn)介及其解碼算法實(shí)現(xiàn)[J].電子測(cè)量技術(shù),2008,12.
[3] 黃運(yùn)乾,程鵬飛,蔡艷輝.北斗衛(wèi)星導(dǎo)航系統(tǒng) RTCM 電文類(lèi)型預(yù)定義研究[J].測(cè)繪通報(bào),2013 (5): 5-7.
[4] 林霽.DGPS 差分信息傳輸協(xié)議研究 [D].大連海事大學(xué),2010.
[5] 楊杰, 張凡.高精度 GPS 差分定位技術(shù)比較研究[J]. 移動(dòng)通信, 2014, 38(2): 54-58.
3 RTCM電文的解碼過(guò)程
RTCM電文的解碼過(guò)程可分為以下幾個(gè)步驟:
Step1:字節(jié)的讀取。RTCM電文協(xié)議是以6/8進(jìn)行數(shù)據(jù)傳輸,只有低6位是有效位,7、8位是填充位,第7位是“1”,第8位是“0”,所以只有當(dāng)接到的字節(jié)的十進(jìn)制數(shù)在64-127之間時(shí),才是有效的,否則就應(yīng)當(dāng)刪除。
Step2:字節(jié)的滾動(dòng)。UART是約定的異步通訊,首先發(fā)送或接收的是低位數(shù)據(jù),所以在接收到的數(shù)據(jù)后應(yīng)當(dāng)進(jìn)行字節(jié)滾動(dòng)。滾動(dòng)原則為
Step3:字節(jié)取補(bǔ)碼。如果前一個(gè)字節(jié)的最后一位d*30為“1”時(shí),則該字節(jié)的前24位應(yīng)取補(bǔ)碼,后6位奇偶校驗(yàn)則保持不變。否則該字節(jié)保持不變。需注意,不管前一字節(jié)的d*30編碼是“0”還是“1”,該字節(jié)的后6位始終保持不變。
Step4:電文同步。RTCM每幀都是由引導(dǎo)字“0110010”開(kāi)始的,電文解碼時(shí),首先要搜索引導(dǎo)字。找到引導(dǎo)字后,先假設(shè)它是有效的,再進(jìn)行該字的奇偶校驗(yàn),若奇偶校驗(yàn)通過(guò),則可對(duì)該字進(jìn)行解碼,否則重新搜索引導(dǎo)字。
Step5:奇偶校驗(yàn)。奇偶校驗(yàn)碼是由該字節(jié)的前24位和前一字節(jié)的最后2位確定的,其編碼規(guī)則如下表,只有當(dāng)該校驗(yàn)碼與接收到的字節(jié)的奇偶校驗(yàn)碼一致時(shí),才能表示該字節(jié)通過(guò)。
第七碼字:01101000,11111111,11011001,110100
4 總結(jié)
本文介紹了差分系統(tǒng)的定位原理以及差分誤差,重點(diǎn)介紹了現(xiàn)在常用的RTCM SC-104協(xié)議并分析了及解碼過(guò)程,給出了具體的解算步驟。運(yùn)用奇偶校驗(yàn)碼進(jìn)行判定解碼的正確性存在一定的缺陷,當(dāng)接收的該字碼錯(cuò)誤個(gè)數(shù)為偶數(shù)時(shí),會(huì)被判定該字碼解碼正確,所以RTCM SC-104的解碼過(guò)程有待進(jìn)一步的完善。再者RTCM SC-104協(xié)議只針對(duì)于GPS系統(tǒng),中國(guó)的北斗系統(tǒng)已經(jīng)逐漸步入世界市場(chǎng),提出適合于北斗系統(tǒng)的差分協(xié)議將是未來(lái)的發(fā)展方向。
參考文獻(xiàn):
[1] 劉智敏,林文介,唐衛(wèi)明.GPS 差分協(xié)議 RTCM 電文分析與應(yīng)用[J].桂林工學(xué)院學(xué)報(bào),2004,24(2): 188-191.
[2] 李思超,葉甜春,徐建華. DGPS RTCM 數(shù)據(jù)格式簡(jiǎn)介及其解碼算法實(shí)現(xiàn)[J].電子測(cè)量技術(shù),2008,12.
[3] 黃運(yùn)乾,程鵬飛,蔡艷輝.北斗衛(wèi)星導(dǎo)航系統(tǒng) RTCM 電文類(lèi)型預(yù)定義研究[J].測(cè)繪通報(bào),2013 (5): 5-7.
[4] 林霽.DGPS 差分信息傳輸協(xié)議研究 [D].大連海事大學(xué),2010.
[5] 楊杰, 張凡.高精度 GPS 差分定位技術(shù)比較研究[J]. 移動(dòng)通信, 2014, 38(2): 54-58.
3 RTCM電文的解碼過(guò)程
RTCM電文的解碼過(guò)程可分為以下幾個(gè)步驟:
Step1:字節(jié)的讀取。RTCM電文協(xié)議是以6/8進(jìn)行數(shù)據(jù)傳輸,只有低6位是有效位,7、8位是填充位,第7位是“1”,第8位是“0”,所以只有當(dāng)接到的字節(jié)的十進(jìn)制數(shù)在64-127之間時(shí),才是有效的,否則就應(yīng)當(dāng)刪除。
Step2:字節(jié)的滾動(dòng)。UART是約定的異步通訊,首先發(fā)送或接收的是低位數(shù)據(jù),所以在接收到的數(shù)據(jù)后應(yīng)當(dāng)進(jìn)行字節(jié)滾動(dòng)。滾動(dòng)原則為
Step3:字節(jié)取補(bǔ)碼。如果前一個(gè)字節(jié)的最后一位d*30為“1”時(shí),則該字節(jié)的前24位應(yīng)取補(bǔ)碼,后6位奇偶校驗(yàn)則保持不變。否則該字節(jié)保持不變。需注意,不管前一字節(jié)的d*30編碼是“0”還是“1”,該字節(jié)的后6位始終保持不變。
Step4:電文同步。RTCM每幀都是由引導(dǎo)字“0110010”開(kāi)始的,電文解碼時(shí),首先要搜索引導(dǎo)字。找到引導(dǎo)字后,先假設(shè)它是有效的,再進(jìn)行該字的奇偶校驗(yàn),若奇偶校驗(yàn)通過(guò),則可對(duì)該字進(jìn)行解碼,否則重新搜索引導(dǎo)字。
Step5:奇偶校驗(yàn)。奇偶校驗(yàn)碼是由該字節(jié)的前24位和前一字節(jié)的最后2位確定的,其編碼規(guī)則如下表,只有當(dāng)該校驗(yàn)碼與接收到的字節(jié)的奇偶校驗(yàn)碼一致時(shí),才能表示該字節(jié)通過(guò)。
第七碼字:01101000,11111111,11011001,110100
4 總結(jié)
本文介紹了差分系統(tǒng)的定位原理以及差分誤差,重點(diǎn)介紹了現(xiàn)在常用的RTCM SC-104協(xié)議并分析了及解碼過(guò)程,給出了具體的解算步驟。運(yùn)用奇偶校驗(yàn)碼進(jìn)行判定解碼的正確性存在一定的缺陷,當(dāng)接收的該字碼錯(cuò)誤個(gè)數(shù)為偶數(shù)時(shí),會(huì)被判定該字碼解碼正確,所以RTCM SC-104的解碼過(guò)程有待進(jìn)一步的完善。再者RTCM SC-104協(xié)議只針對(duì)于GPS系統(tǒng),中國(guó)的北斗系統(tǒng)已經(jīng)逐漸步入世界市場(chǎng),提出適合于北斗系統(tǒng)的差分協(xié)議將是未來(lái)的發(fā)展方向。
參考文獻(xiàn):
[1] 劉智敏,林文介,唐衛(wèi)明.GPS 差分協(xié)議 RTCM 電文分析與應(yīng)用[J].桂林工學(xué)院學(xué)報(bào),2004,24(2): 188-191.
[2] 李思超,葉甜春,徐建華. DGPS RTCM 數(shù)據(jù)格式簡(jiǎn)介及其解碼算法實(shí)現(xiàn)[J].電子測(cè)量技術(shù),2008,12.
[3] 黃運(yùn)乾,程鵬飛,蔡艷輝.北斗衛(wèi)星導(dǎo)航系統(tǒng) RTCM 電文類(lèi)型預(yù)定義研究[J].測(cè)繪通報(bào),2013 (5): 5-7.
[4] 林霽.DGPS 差分信息傳輸協(xié)議研究 [D].大連海事大學(xué),2010.
[5] 楊杰, 張凡.高精度 GPS 差分定位技術(shù)比較研究[J]. 移動(dòng)通信, 2014, 38(2): 54-58.