• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種兼容的GNSS星歷實(shí)時(shí)解析方法

      2016-09-22 03:11:08張建偉
      無(wú)線電工程 2016年9期
      關(guān)鍵詞:子幀電文存儲(chǔ)空間

      張建偉,謝 松

      (1.衛(wèi)星導(dǎo)航系統(tǒng)與裝備技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,河北 石家莊 050081;2.中國(guó)電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081)

      ?

      一種兼容的GNSS星歷實(shí)時(shí)解析方法

      張建偉1,2,謝松1,2

      (1.衛(wèi)星導(dǎo)航系統(tǒng)與裝備技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,河北 石家莊 050081;2.中國(guó)電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081)

      全球衛(wèi)星導(dǎo)航系統(tǒng)(GNSS)發(fā)展對(duì)用戶設(shè)備的信息兼容性提出了更高的要求,同時(shí)對(duì)設(shè)備存儲(chǔ)空間以及運(yùn)算能力的需求增加,而受成本和功耗等因素影響,處理資源不可能無(wú)限制地?cái)U(kuò)充。針對(duì)該問(wèn)題,在GNSS設(shè)備信息層設(shè)計(jì)了一種兼容的衛(wèi)星星歷解析方法,并在微型嵌入式平臺(tái)上進(jìn)行了驗(yàn)證。該方法能夠提高嵌入式系統(tǒng)的RAM資源利用率,節(jié)省CPU的運(yùn)算資源。便于GNSS接收機(jī)程序開發(fā)與后續(xù)升級(jí),滿足兼容性要求。

      GNSS;星歷解析;數(shù)據(jù)結(jié)構(gòu);位段;嵌入式

      0 引言

      當(dāng)前,GNSS現(xiàn)代化進(jìn)程逐漸深入,導(dǎo)航衛(wèi)星數(shù)目不斷增加,信號(hào)類型也在逐漸完善。兼容性和互操作性成為GNSS系統(tǒng)現(xiàn)代化的主要考慮因素,它可以使GNSS接收機(jī)設(shè)計(jì)簡(jiǎn)化,能夠讓用戶受益于接收機(jī)的低成本和高性能[1]。由于不同GNSS之間有著相近的信號(hào)結(jié)構(gòu)層次和相同的定位原理,所以GNSS接收機(jī)在結(jié)構(gòu)與設(shè)計(jì)上不存在很大差異[2]。由此,GNSS接收機(jī)設(shè)計(jì)的兼容性成為評(píng)估產(chǎn)品優(yōu)劣的重要標(biāo)準(zhǔn)。這要求開發(fā)者能夠利用有限資源,實(shí)現(xiàn)更多的跟蹤衛(wèi)星數(shù)以及更強(qiáng)的信息處理能力。本文基于兼容性思想,結(jié)合GNSS接收機(jī)開發(fā)的實(shí)際經(jīng)驗(yàn),提出了一種新的GNSS星歷實(shí)時(shí)解析方法。該方法能充分利用微型嵌入式平臺(tái),以C語(yǔ)言為程序載體,合理利用數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換,實(shí)現(xiàn)多通道GNSS衛(wèi)星電文的快速解析并存儲(chǔ),為后續(xù)衛(wèi)星位置解算以及接口設(shè)計(jì)提供數(shù)據(jù)源。

      1 GNSS電文及解析流程

      GNSS衛(wèi)星信號(hào)至少包括3個(gè)層次:載波、偽碼和導(dǎo)航電文數(shù)據(jù)碼[3]。接收機(jī)經(jīng)過(guò)捕獲和跟蹤處理,實(shí)現(xiàn)對(duì)載波頻率的穩(wěn)定估計(jì)以及對(duì)偽碼的解擴(kuò),從而剝離出數(shù)據(jù)碼,即GNSS衛(wèi)星導(dǎo)航電文。

      導(dǎo)航電文主要由同步標(biāo)志、時(shí)間標(biāo)志、即時(shí)軌道參數(shù)(星歷)、非即時(shí)軌道參數(shù)(歷書)以及校驗(yàn)碼構(gòu)成,以數(shù)據(jù)幀的格式進(jìn)行播發(fā)[4]。同步標(biāo)志用于接收機(jī)解析過(guò)程中數(shù)據(jù)同步,實(shí)現(xiàn)數(shù)據(jù)幀起始位置識(shí)別。若干數(shù)據(jù)幀信息組合拼接成完整的星歷或歷書信息。時(shí)間標(biāo)志為用戶提供周期性時(shí)間信息。GNSS導(dǎo)航衛(wèi)星電文雖然在幀結(jié)構(gòu)方面存在一定的差異,但其處理方式基本相同。

      以GPS衛(wèi)星導(dǎo)航系統(tǒng)導(dǎo)航電文為例,說(shuō)明GNSS電文的特點(diǎn)以及解析過(guò)程。GPS導(dǎo)航電文民碼子幀1的部分結(jié)構(gòu)[4]如圖1所示。

      圖1 GPS電文子幀1的基本結(jié)構(gòu)

      分析得出,GPS導(dǎo)航電文以字為基本單位,字內(nèi)包含電文基本信息以及校驗(yàn)信息。子幀由10個(gè)字組合而成,若干子幀組合即構(gòu)成全部的導(dǎo)航電文。導(dǎo)航電文比特流是以位段數(shù)據(jù)連續(xù)拼接的形式提供給用戶。當(dāng)導(dǎo)航電文數(shù)據(jù)碼由微處理器獲取時(shí),又會(huì)將被分解到若干個(gè)CPU能夠識(shí)別并操作的存儲(chǔ)單元(字節(jié)或字)。這樣位段和存儲(chǔ)單元間就建立了某種固定的關(guān)系。電文的位段提取以及拼接就是基于這種固定關(guān)系執(zhí)行的[5-6]。

      針對(duì)上述單一的GPS電文解析,可采用編寫針對(duì)性的解析程序的方法,通過(guò)映射執(zhí)行對(duì)各存儲(chǔ)單元的移位和比特提取,最終完成電文信息的有效輸出。完整的解析方法流程如圖2所示。

      圖2 常規(guī)解析方法流程

      圖2所示的方法邏輯簡(jiǎn)單、容易理解,且通過(guò)滿足要求的程序設(shè)計(jì)即可提取出導(dǎo)航信息。該方法存在以下不足:

      ① 需要為所有信息建立位置關(guān)系映射,當(dāng)進(jìn)行多系統(tǒng)GNSS程序設(shè)計(jì)時(shí),浪費(fèi)較多存儲(chǔ)資源;

      ② 信息關(guān)聯(lián)性較小,在獲取連續(xù)信息字段時(shí),執(zhí)行重復(fù)查找索引操作,浪費(fèi)處理器運(yùn)算資源;

      ③ 移位邏輯設(shè)計(jì)繁瑣,處理能力取決于所編寫程序的執(zhí)行效率,浪費(fèi)處理器運(yùn)算資源;

      ④ 代碼量與信息提取量成正比,兼容性較差。

      2 兼容的電文解析方法

      本文提出的方法繼承了常規(guī)解析的處理流程,同時(shí)利用數(shù)據(jù)結(jié)構(gòu)間的合理重構(gòu),直接定義與存儲(chǔ)單元相匹配的信息位段邏輯[7]。相對(duì)于建立索引,新方法能夠存儲(chǔ)單元內(nèi)位段的物理意義明晰,運(yùn)算更為簡(jiǎn)易。

      文獻(xiàn)[8-10]分別介紹了GLONASS、GALILEO以及BDS導(dǎo)航電文的詳細(xì)構(gòu)成。分析得出,GNSS導(dǎo)航電文信息是以子幀或字符串為基本單位進(jìn)行同步和處理的??紤]到嵌入式系統(tǒng)資源約束,本文提出的方法同樣以子幀或字符串為單位進(jìn)行處理。

      新方法充分考慮了GNSS導(dǎo)航信號(hào)數(shù)據(jù)碼的共性以及程序設(shè)計(jì)兼容性,利用C程序設(shè)計(jì)中位段以及共用體概念,實(shí)現(xiàn)多系統(tǒng)衛(wèi)星電文信息的存儲(chǔ)并轉(zhuǎn)換。位段聲明和共用體聲明規(guī)則參照文獻(xiàn)[5]。

      微處理器作為芯片或其他基帶設(shè)備的信息受體,首先要為電文接收開辟一定的存儲(chǔ)空間。因涉及多系統(tǒng)信息類型,需要定義子幀或字符串的最大占用資源空間為接收緩沖。假設(shè)嵌入式系統(tǒng)的存儲(chǔ)單位為1個(gè)字(32 bit),GPS/BDS/GALILEO子幀占用10個(gè)字存儲(chǔ)空間,GLONASS僅占用3個(gè)字存儲(chǔ)空間,同樣可將其分配在10個(gè)字的存儲(chǔ)空間內(nèi),以便于程序設(shè)計(jì)。

      首先設(shè)計(jì)原始電文的接收緩沖BitNavMsg,定義如下:

      typedef union

      {

      GPSSubFrame1Type gf1;

      ……

      GPSSubFrame5Type gf5;

      BDSubFrame1Type bf1;

      ……

      BDSubFrame5Type bf5;

      GLSString1Typegs1;

      ……

      GLSString15Type gs15;

      GALFnavFrame1Type ga1;

      ……

      GALFnavFrame1Type ga12;

      unsigned int data[10];

      }BitNavMsg;

      可以看出,BitNavMsg實(shí)體對(duì)象為一個(gè)共用體變量。內(nèi)部各成員變量占用同一存儲(chǔ)空間。在明確輸入的條件下,data字段內(nèi)數(shù)據(jù),可被轉(zhuǎn)義成GPS的子幀,也可理解為BDS子幀,從而保證信息層兼容。假設(shè)BitNavMsg中的GNSS子幀和字符串的變量占用空間都不大于10個(gè)字,則實(shí)體對(duì)象最大占用空間是10個(gè)字,即data域的大小。

      繼續(xù)定義公用體內(nèi)出現(xiàn)的GNSS結(jié)構(gòu)體變量,限于篇幅,本文僅列出GPSSubFrame1Type的相關(guān)定義,其他變量采用類似的設(shè)計(jì)方式。

      typedef struct

      {

      unsigned int Pre1:6;

      unsigned int :2;

      unsigned int TLM:22;

      unsigned int:0;

      unsigned int Pre2:6;

      unsigned int :2;

      unsigned int Frmnum:3;

      unsigned int :2;

      unsigned int TOW:17;

      ……

      unsigned int Pre10:6;

      unsigned int :2;

      unsigned int a_f0:22;

      } GPSSubFrame1Type;

      GPSSubFrame1Type變量的字段詳細(xì)含義請(qǐng)參照文獻(xiàn)[4]。這里強(qiáng)調(diào),子幀結(jié)構(gòu)體變量的定義采用特定位數(shù)的位段域,而不是以整字節(jié)或字為單位,方便地實(shí)現(xiàn)了結(jié)構(gòu)體與電文信息的一一映射,意義更加清晰明確。

      除定義電文接收緩沖外,在保存星歷時(shí),可設(shè)計(jì)解析完整電文的結(jié)構(gòu)體變量,定義所示。

      typedef struct

      {

      BitNavMsg Frm1;

      BitNavMsg Frm2;

      BitNavMsg Frm3;

      BitNavMsg Frm4;

      BitNavMsg Frm5;

      }GPSBitEphemeris;

      GPSBitEphemeris結(jié)構(gòu)體定義充分利用數(shù)據(jù)結(jié)構(gòu)的特點(diǎn),可將相應(yīng)的單幀電文直接復(fù)制保存,便于后續(xù)軌道參數(shù)提取和轉(zhuǎn)換。

      3 應(yīng)用示例

      本文提出的方法可充分利用GNSS導(dǎo)航電文子幀或字符串信息的一些共同特點(diǎn),比如GPS/GLONASS/BDS/GALILEO的子幀號(hào)或字符串串號(hào)都位于子幀或字符串的固定位段,即該位段相對(duì)于幀頭位置不變。在明確衛(wèi)星導(dǎo)航系統(tǒng)前提下,對(duì)子幀號(hào)或字符串號(hào)提取時(shí)可不區(qū)分接收到的信息類別。這些特性對(duì)正確解析星歷起到了很重要的作用。以GPS為例,當(dāng)電文解析任務(wù)開始后,需要執(zhí)行的操作如下。

      BitNavMsg navmsg;//對(duì)象聲明

      for(idx=0;idx<10;idx++)

      {

      nav_msg.data[idx]=*(int*)(ADDR_NAV+idx);

      //ADDR_NAV為電文寄存器的基地址

      }//從基帶中獲取GPS導(dǎo)航電文的子幀數(shù)據(jù)

      //識(shí)別子幀號(hào),同系統(tǒng)位段位置相同

      switch(nav_msg.gf1.Frmnum)

      {

      case 1://對(duì)子幀1的處理

      ……x1=(nav_msg.gf1.a_f0);……

      case 2://對(duì)子幀2的處理

      ……x2=(nav_msg.gf2.toe);……

      case 3://對(duì)子幀3的處理

      ……x3=(nav_msg.gf3.idot);……

      case 4:……//對(duì)子幀4的處理

      case 5:……//對(duì)子幀5的處理

      }

      經(jīng)過(guò)共用體變量的轉(zhuǎn)義功能,可方便地將電文信息按照一定的邏輯進(jìn)行處理或者按照子幀結(jié)構(gòu)定義直接提取相應(yīng)的信息位段,無(wú)需再編寫針對(duì)性的移位操作函數(shù)。

      同樣,在獲知系統(tǒng)類型和衛(wèi)星號(hào)的通道信息前提下,可以方便地將程序移植至其他GNSS導(dǎo)航電文解析,BDS可利用nav_msg.bf1-bf5進(jìn)行解析;GLONASS,則對(duì)nav_msg.gs1-gs15進(jìn)行解析;而GALILEO用ga1-ga12進(jìn)行解析處理,從根本上避免了繁復(fù)的移位和拼接操作,便于程序維護(hù)和狀態(tài)管理。

      4 性能分析

      根據(jù)本文提出的解析方法,編寫示例代碼,通過(guò)在TMS320C2000系列DSP嵌入式平臺(tái)上編譯運(yùn)行,分析該方法在嵌入式系統(tǒng)應(yīng)用中的優(yōu)點(diǎn)。示例代碼經(jīng)過(guò)TMS320C2000系列DSP編譯后的C代碼以及對(duì)應(yīng)匯編語(yǔ)句如圖3所示。

      圖3 微處理器的編譯結(jié)果示例

      分析圖3匯編語(yǔ)句可知,嵌入式設(shè)計(jì)軟件編譯器能夠自動(dòng)識(shí)別結(jié)構(gòu)體的位段定義,并充分利用EXTU以及LDBU等位操作指令,進(jìn)行歸并處理,指令執(zhí)行簡(jiǎn)單快捷,執(zhí)行效率大大提高。

      而位段作為數(shù)據(jù)結(jié)構(gòu)的基本組成部分,使得本文提出的方法在GNSS導(dǎo)航電文解析層面具有普遍性意義,即嵌入式開發(fā)平臺(tái)編譯器均包含相應(yīng)的庫(kù)函數(shù)操作,避免了開發(fā)者額外編寫代碼實(shí)現(xiàn)功能。通過(guò)與常規(guī)解析方法比較并統(tǒng)計(jì)程序優(yōu)化量,本文提出的解析方法在運(yùn)算代碼量和存儲(chǔ)空間占比均不超過(guò)常規(guī)方法的50%,從而大大節(jié)省了資源。

      5 結(jié)束語(yǔ)

      本文在分析了常規(guī)的GNSS電文解析方法基礎(chǔ)上,提出了一種兼容性更好的電文解析方法。通過(guò)對(duì)比本文方法與常規(guī)方法的優(yōu)劣,證明了本文提出的方法可操作性好,對(duì)程序代碼簡(jiǎn)化、存儲(chǔ)空間優(yōu)化以及對(duì)多系統(tǒng)處理流程都具備很好的適應(yīng)能力,便于系統(tǒng)擴(kuò)展和升級(jí),可直接應(yīng)用于GNSS嵌入式系統(tǒng)的工程設(shè)計(jì)中。

      [1]謝鋼.全球?qū)Ш叫l(wèi)星系統(tǒng)原理-GPS、GLONASS和伽利略系統(tǒng)[M].北京:電子工業(yè)出版社,2013.

      [2]段召亮,楊文津,魏亮.一種基于軟件仿真的GNSS信號(hào)性能評(píng)估技術(shù)[J].無(wú)線電工程,2014,44(10):39-42.

      [3]黃智剛,王陸瀟,梁宵.導(dǎo)航電文設(shè)計(jì)與評(píng)估技術(shù)研究綜述[J].數(shù)據(jù)采集與處理,2015,30(4):747-759.

      [4]The Navstar GPS Wing.IS-GPS-200,Navstar GPS Space Segment Navigation User Interfaces (Revision D) [S],2006.

      [5]譚浩強(qiáng).C語(yǔ)言程序設(shè)計(jì)(第3版)[M].北京:機(jī)械工業(yè)出版社,2009.

      [6]方興,王步云.基于Bit Fields的AIS報(bào)文解析及實(shí)現(xiàn)[J].艦船電子工程,2014,34(7):125-129.

      [7]孫偉杰,張曉欣,畢嘉鴻.C程序代碼結(jié)構(gòu)審查算法的研究與實(shí)現(xiàn)[J].無(wú)線電通信技術(shù),2013,39(3):89-92.

      [8]Russian Space Agency.Glonass Interface Control Document(Ver 5.1)[S],2008.

      [9]European GNSS (Galileo) Open Service Signal in Space Interface Control Document (Issue.1) [S],2010.

      [10]中國(guó)衛(wèi)星導(dǎo)航系統(tǒng)管理辦公室.北斗衛(wèi)星導(dǎo)航系統(tǒng)空間信號(hào)接口控制文件公開服務(wù)信號(hào)(2.0版)[S],2013.

      張建偉男,(1986—),碩士,工程師。主要研究方向:GNSS接收機(jī)設(shè)計(jì)。

      謝松男,(1982—),碩士,工程師。主要研究方向:GNSS接收機(jī)設(shè)計(jì)。

      A Compatible Method of GNSS Ephemeris Real-time Decoding

      ZHANG Jian-wei1,2,XIE Song1,2

      (1.StateKeyLaboratoryofSatelliteNavigationSystemandEquipmentTechnology,ShijiazhuangHebei050081,China;2.The54thResearchInstituteofCETC,ShijiazhuangHebei050081,China)

      The development of GNSS requires more compatibility for popular facilities.And more demanding requirement on memory and computing velocity has been needed for various applications.Limited by factors such as cost and power consumption,resources would never be expanded for all time.Therefore,a novel realization method is designed for GNSS ephemeris real-time decoding.And it is validated on embedded platform.The method can enhance the utilization of RAM and save the time resource of CPU in embedded system.Users can conveniently achieve the GNSS receiver program and expand interface and satisfy the compatibility of GNSS receivers.

      GNSS;ephemeris decoding;data framework;bit field;union

      10.3969/j.issn.1003-3106.2016.09.14

      2016-05-16

      國(guó)家高技術(shù)研究發(fā)展計(jì)劃(“863”計(jì)劃)基金資助項(xiàng)目(2015AA124001)。

      TP391.4

      A

      1003-3106(2016)09-0055-04

      引用格式:張建偉,謝松.一種兼容的GNSS星歷實(shí)時(shí)解析方法[J].無(wú)線電工程,2016,46(9):55-58.

      猜你喜歡
      子幀電文存儲(chǔ)空間
      基于多種群協(xié)同進(jìn)化算法的數(shù)據(jù)并行聚類算法
      一種與內(nèi)部缺陷儀設(shè)備通訊的接口模塊
      ADS-B延遲轉(zhuǎn)發(fā)電文檢測(cè)及干擾臺(tái)定位方法
      蘋果訂閱捆綁服務(wù)Apple One正式上線
      用好Windows 10保留的存儲(chǔ)空間
      LAA系統(tǒng)在非授權(quán)頻段上的動(dòng)態(tài)子幀配置策略
      用于針對(duì)LTE中的eIMTA有效使用DAI比特的方法和裝置
      衛(wèi)星導(dǎo)航系統(tǒng)導(dǎo)航電文編排結(jié)構(gòu)研究
      LTE-A異構(gòu)網(wǎng)中空白子幀的動(dòng)態(tài)配置*
      TD—LTE特殊子幀配比的優(yōu)化設(shè)計(jì)
      兖州市| 扬州市| 鹤岗市| 百色市| 平顺县| 清涧县| 荆门市| 宜州市| 景洪市| 博野县| 剑川县| 道真| 醴陵市| 高清| 衡山县| 缙云县| 高清| 崇义县| 祁连县| 林芝县| 茂名市| 临颍县| 梅河口市| 信阳市| 兰州市| 屏山县| 乐山市| 保亭| 金堂县| 舒城县| 阿荣旗| 清远市| 安宁市| 建阳市| 慈溪市| 遂平县| 建阳市| 康定县| 宜州市| 新乡市| 同心县|