新四季網

Gps數字中頻信號的模擬方法及系統的製作方法

2023-05-26 04:43:06

專利名稱:Gps數字中頻信號的模擬方法及系統的製作方法
技術領域:
本發明涉及一種衛星導航領域的方法及系統,具體為一種使用軟體方法模擬GPS 數字中頻信號的方法及系統。
背景技術:
功能完備的GPS接收機需要三個功能模塊第一個是射頻接收模塊,具體功能是通過天線接收GPS衛星發射的射頻信號,再經過混頻和濾波處理將射頻信號變為頻率較低的中頻信號,最後經過ADC採樣後成為數位訊號交與基帶處理模塊處理;第二個是基帶處理模塊,負責對射頻接收模塊輸出的數位訊號進行捕獲和跟蹤,獲取導航電文信息和各個衛星的傳播時間信息;第三個是導航解算模塊,負責將基帶處理模塊輸出的信息經過一定的數學運算處理得到接收機的PVT (位置、速度、時間)信息,實現了 GPS定位。因此,GPS接收機晶片在前期設計驗證的過程中就需要有GPS信號源作為測試激勵,並且設計驗證人員需要掌握信號的一定先驗信息,方能驗證接收機的正確性和健壯性。 一般採用的解決方案有兩種。一種是建立真實的接收環境,即購買第三方的射頻接收模塊和自己的測試系統對接,通過實地信號接收和測量來獲取測試統計結果,並需要一臺參考接收機同時同地點同條件地運行,獲取對比測試數據;另一種是搭建獨立的射頻接收和採樣系統,該系統需要連接存儲設備,把實地採集的信號以文件形式存儲,作為測試激勵。這兩種解決方案的局限都在於環境成本較高,而且實驗條件非常苛刻。對第一種方案來說,一方面實時的測試環境只能完成系統級測試,很難實現模塊測試或者高層次模型測試,另一方面需要在戶外進行,需要大量額外的人工成本和使用如機車、可攜式電源等額外的輔助設備、工具。對於第二種方案來說,同樣需要額外的人工和設備,並且存儲的信號是沒有先驗知識的,需要額外的軟體工具對其進行分析,掌握可靠的信息後才能用於測試,而測試結果的可靠性又依賴於對信號信息的挖掘是否正確。

發明內容
本發明針對上述技術中的缺點和不足,提出了一種基於通用計算機平臺的軟體方式實現的GPS中頻數位訊號模擬方法及系統。該方法使用真實星曆數據,經過軟體編碼和模擬真實的載波與擴頻碼調製,並經過逆推運算調整不同衛星的信號到達接收機的時間差,合成出給定時間、地點和信噪比的可見衛星信號,以二進位文件形式存儲,可隨時用於測試激勵。該系統模擬的為GPS導航接收機的射頻模塊中ADC的輸出信號。軟體方法保證了使用的便捷性和靈活性,信號可以隨時生成並且滿足任意的信號特徵的需求。根據本發明的一個方面,提出一種GPS數字中頻信號的模擬方法,包括如下步驟 步驟一,讀取用戶按照規定格式編寫的配置文件,提取系統配置參數,配置模擬的信號特徵和系統工作所需輸入;步驟二,提取RINEX文件頭信息和所定義時間段內的全部衛星的星曆數據組;步驟三,將步驟二中提取出的星曆數據進行編碼,形成二進位的導航電文碼流; 步驟四,將步驟三中得到的電文碼流調製載波和擴頻碼,合成出中頻數位訊號數據。
根據本發明的另一個方面,還提供一種GPS數字中頻信號的模擬系統,包括信號生成模塊、RINEX管理模塊和輔助模塊,其中,輔助模塊主要包含的子模塊有導航解算模塊、 時間系統管理模塊、地理坐標轉換模塊、宏模塊。更為具體地,本發明是通過以下的技術方案實現的
本發明涉及的基於通用計算機平臺的軟體GPS中頻數位訊號模擬方法,包括以下步

步驟一,讀取用戶按照規定格式編寫的配置文件,提取系統配置參數,配置模擬的信號特徵和系統工作所需輸入。所述系統配置參數包括
1) RINEX導航星曆文件路徑。RINEX是一種存儲導航相關數據的通用文本文件格式,
其中的一種導航星曆文件用於存儲一段時間內某觀測站採集的衛星星曆數據。星曆數據用於計算衛星運行參數(速度、位置、鐘差等)。從該格式文件提取星曆、並且按照官方給定星曆編碼格式和規範進行編碼,能夠還原指定衛星在一定時間段內發射的導航數據流。2)彳j收機位置、速度、加速度信息。這些參數用於配置接收機模型的運動狀態。 這些和運動狀態相關的參數最終會作用到模擬出的GPS信號中。&所模擬的信號的接收起始時刻、時間跨度、星曆使用組數信息。該步驟從配置文件讀取以上列舉的配置參數配置系統的各個模塊,設定了系統當前的運行方式和數據的生成模式。 步驟二,檢查RINEX導航星曆文件有效性,提取RINEX星曆文件頭信息和所定義時間段內的全部衛星的星曆數據。所述RINEX星曆文件頭信息,包含=RINEX版本信息、觀測站位置信息、信號接收時段信息、電離層校正模型參數、UTC時間信息等。其中較為重要的有版本信息,決定了文件的格式;電離層校正模型參數和UTC時間信息,這些參數也存在於衛星播發的導航電文中, 分別用於校正電離層延遲和在GPST時與UTC之間轉換。任何一類信息在文件頭中佔據若干行,並用一個描述符(descriptor)區分。該步驟首先緩存RINEX文件的文件頭,然後用戶可根據需要通過特定的描述符在緩存中搜索相應的信息,在信號生成中使用。步驟一中說明了星曆的作用,它用來描述衛星軌道信息和衛星運動信息。GPS衛星以兩個小時為周期更新播發的星曆,保證這些信息的精度。製作RINEX文件的觀測站會不間斷地接收衛星信號,把一個時間段(例如一天)內所能觀測到的全部衛星的多套星曆按照時間順序存儲於一個RINEX導航星曆文件中。該步驟在解析完RINEX文件頭之後,把信號模擬時間段內的全部星曆數據提取出來,存儲於一個動態二維數組中構成星曆數據組。所述星曆數據組的類型為一個自定義結構體,該結構體存儲一顆衛星的一套星曆。之所以是動態數組,是因為當信號模擬的時間跨度中存在理論上的星曆更新時,每顆衛星需要多套星曆。該二維數組的每一行對應一顆GPS 衛星,共32行,而每一列對應一套星曆數據,不同列對應不同的時間段,列數則由。該步驟根據信號起始時間和時間跨度的配置信息,在RINEX導航星曆文件中搜尋對應於該時間段的全部衛星星曆,並計算是否存在星曆更新,總共更新幾次。例如,當計算出需要生成的信號包含一次星曆更新,則每顆衛星需提取兩套時間上連續的星曆,且和起始時間和長度的配置信息吻合。
步驟三,將步驟二中提取出的星曆數據進行編碼形成二進位的導航電文碼流。所述將步驟二中提取出的星曆數據進行編碼,形成二進位的導航電文碼流,是指 根據所模擬的信號起始時刻和時間跨度,以及GPS官方文檔對電文格式的規定,對每一顆衛星的星曆進行編碼,形成二進位的導航電文碼流,同時計算出奇偶校驗位,最後將每顆衛星的碼流都存儲於一個獨立的文件中。導航電文為二進位格式,以30秒為一幀,步驟二中提取出的星曆數據即對應一幀包含的信息。一幀包含5個子幀,編號從1到5,每個子幀包含300比特數據,所以每比特數據的寬度為20 ms。每顆衛星都從世界協調時間(UTC)的周日凌晨開始播送導航電文,從1號子幀到5號子幀不斷循環,並以兩小時為間隔進行更新。 對所有衛星電文編碼的算法相同,其流程如下
1.根據信號起始時刻的信息計算周內時TOW;
2.用TOW除以6得到的商對5取餘,(餘數+1)即為信號起始時刻所在子幀的子幀號 k(理論上每顆衛星發射子幀的時間是同步的,以上計算的子幀號可作為所有衛星生成的導航電文碼流的起始子幀);
3.根據信號時間跨度η(單位為秒)計算每顆衛星需要生成的子幀數量Ν = n/6+l ;
4.對衛星ρ,需要生成的第i(0 < i< N)個子幀的子幀號
sf = (k+i) * 5,若計算得 sf 為 0,sf = sf ! 5 ; 根據該子幀對應的周內時itow計算應選取哪一個星曆組中的星曆數據 itow = TOW - TOW * 6 + (i-1) X 6
找到所模擬的信號時間跨度內的2小時星曆更新時刻,判斷itow出現的時間段,判斷應該選取的星曆數據組。根據sf號子幀對應的子幀格式和所選星曆數據組中衛星ρ的星曆數據進行第i個子幀的編碼;重複該步驟完成所有子幀的編碼,得到衛星P的電文碼流。步驟四,對導航電文調製載波和擴頻碼,合成出中頻數位訊號數據。本發明模擬 GPS導航接收機射頻模塊中ADC的輸出信號,該信號的特徵為1.數位訊號,2.載波頻率為範圍在幾兆到幾十兆之間的中頻,該中頻認為是接收機射頻模塊將射頻下變頻得到。依據這兩點特徵,該步驟完成信號最後的模擬合成功能,核心思想是逐採樣點地計算信號樣值, 即在每個採樣點處計算此時刻天線所接收到的信號由哪幾顆衛星的信號合成,分別是怎樣的電文數值、擴頻碼相位和載波相位、頻率,並考慮天線對信號進行降頻時出現的頻率摺疊、ADC的量化階數等因素,準確地模擬接收端的行為對信號的影響。其算法步驟如下
1.計算GPS擴頻碼序列。生成方式按照GPS官方接口文檔的定義實現,生成的序列存於一個二維數組CA_Code中,其行向量代表一顆GPS衛星的CA碼序列。CA碼周期為1ms, 包含1023個碼片,因此行向量的長度為1023,存放CA碼一個周期序列值。計算待生成的數字中頻信號的樣點數Nsample。計算方法是IfeanijIe:::
π Xsanpling_£reqo其中η為信號的時間跨度(單位為秒),sanplingjreq為採樣率(單
位為Hz)。當i小於Nsample時,開始計算第i (初始值為0)個採樣點的值。進入步驟4。否則進入步驟6。
判斷i是否對應於整毫秒的樣點數。該算法在整毫秒處推算每顆衛星的信號的傳播時間(信號從衛星天線到接收機天線),並假設在接下來的1毫秒內該傳播時間不變,即接下來的1毫秒內到達接收機的信號的傳播時間是不變的,這種假設保證了極小的誤差,並且避免對每個採樣點對應的各顆衛星信號的傳播時間進行推算,在採樣率為1兆以上的前提下,將算法效率提高了 1000倍以上。若i為整毫秒的樣點數,則對每一顆衛星(在全部32 顆GPS衛星範圍內)進行如下步驟1)到5)的計算,否則跳至步驟5
1)根據i找到當前時刻對應的衛星星曆數據組,從中提取當前衛星P的星曆,檢查星曆的有效性,無效則該衛星置為不可見,並跳至下一顆衛星重複步驟4的流程;
2)依據GPS官方接口文檔的說明計算當前時刻(和i對應)接收到的該衛星的信號在
傳播時間propogate—time秒之前的衛星鐘差校正值elk和鍾漂校正值clk_drift ;傳播時
間propogate—tiioe使川丨一次整毫秒計算時得到的值,即暫時認為在過去的Ims內傳播時
間沒有發生變化,在初始化時定義為0. 07秒;
3)計算當前時亥IJ(和i對應)接收到的該衛星的信號的發射時亥IJ,發射時刻
二 ini t_gpstow + ids ~clk-propogate_tiiDe, inlt^pstow 為信號起始時刻(周內時),
ms為當前記錄的毫秒數(單位為秒);
4)循環迭代計算當前計算的信號被發射的時刻的衛星PVT信息、衛星和接收機距離及其變化率信息。具體方法是
i.重新計算傳播時間
propogat e_t iiiie = range / LIGIII'SPEED
range為上一次進行步驟4時計算得到的衛星和接收機距離,LIGHTSPEED為光速; .重新計算信號發射時刻tow
tow = init_gpstow + ms ■■ propogate_tiroe ;
iii.根據GPS官方接口文檔定義的方法計算衛星在tow時刻的PVT信息;
iv.在ECEF坐標系下計算在tow時刻衛星和接收機之間的距離range和距離變化率 x'ange_rate ;
V.返回第i步重複這個過程,迭代4次得到精確的range、range^rate和 propogate_t Iiue0)計算在tow時刻的衛星仰角和方位角,若仰角大於0,則計算都卜勒頻移 doppler = ^range_rate / WAVELEWGTHL1
其中WAVELENGTHL1為GPS Ll信號載波波長。此處的負號是因為認為射頻接收模塊在下變頻中將頻譜做了反轉,因此doppler的符號出現了反轉; 然後計算當前採樣率下的載波相位步長
Carrierphasestep = ( IF + doppler ) / saspling^_freq
其中IF為中頻頻率。最後計算精確的傳播時間propogate—time = range / LIGHTSPEED ~ elk
elk為第2)步計算出的衛星鐘差。計算完畢後返回第1)步,進入對下一顆衛星在當前整毫秒時刻到達的信號的發射時刻和相應PVT信息。若仰角小於0,則該顆衛星設置為不可見,跳過該步的其他運算,同樣返回第1)步對下一顆衛星執行以上步驟。對當前可見的每顆衛星的信號計算第i個採樣點的值。衛星的可見性已經在步驟 4中確定,並在下一次處理步驟4 (即到達下一個整毫秒)之前保持不變。該步驟的算法步驟如下
1)計算當前可見衛星q的第i個採樣點對應的導航電文數值。其偽代碼如下 rel_tx = i / sanpling^fi-eq - propogat e_time + iiiit_gpstow % 6, bite = (int) (xel_tx * 50)+1; n_(¥or<i = bite / 30; n—bit = bite % 30;
t ..nav_bit = ( nav data[q] [jx..word] (29 - njbit) ) & 0x1,
其中,init^ffitow 6表示信號起始時刻所在子幀的起始時刻,則:rel—tX表示當前
採樣點距離該子幀起點的時間距離。計算rel—tx的原因是,在步驟三中編碼得到的每顆衛星的導航電文碼流均以該子幀為起點,因此尋找當前採樣點對應的電文數值也需以此為起點。設該子幀、M START_;fraie ..^data為一個二維數組,每一行對應一顆衛星的導航電文碼流,該碼流在步驟三中得到。一行中的每個元素在軟體中為無符號整型,其低30位存放一個長度為30比特的導航字。以上偽代碼找到當前採樣點所在的碼流中的第幾個字(η—word)的第幾個比
特(n—Mt),然後從胃_data中找出對應的電文數值tjmvJ}it。)計算當前可見衛星q的第i個採樣點對應的擴頻碼和載波數值。其偽代碼如下 codf hase (rel_tx * 1000 - Cint) (rel_tx * 1000) ) * 1023;
data + t_nav_bi t [q] * CA_Codc[int (codci^iasc)] [q] * sin(2 * PI *
carrier);
carrier += carri erphas est ep ;
if*《camrier ^i) carrier - caorrier - 1;
由於CA碼以Ims為周期,一周期包含1023個碼片,該算法假設STAKT—FRAIE起始對應
的碼相位為0,並且CA碼的doppler效應忽略不計。因此cod印hase即為當前採樣點對應的擴頻碼碼相位。為載波相位,其步長由第4步計算得到,並在Ims內保持不變。合成的數據data即為各顆衛星在當前採樣點處的導航電文、CA碼和載波數值的乘積之和。)對data疊加高斯白噪聲,其信噪比在步驟一中由用戶配置。將data存入預先打開的二進位文件中。所有採樣點計算完畢,退出步驟四,同時得到了 GPS數字中頻信號的文件。本發明涉及的GPS數字中頻信號模擬系統,包括信號生成模塊、RINEX管理模塊和輔助模塊,其中輔助模塊主要包含的子模塊有導航解算模塊、時間系統管理模塊、地理坐標轉換模塊、宏模塊。所述信號生成模塊提供以下功能的接口,包括系統配置信息的提取;調用RINEX 管理模塊提取所需數量的星曆數據組,該星曆數據組對應所有GPS衛星在兩小時有效期內的全部星曆,而該星曆組的組數由所模擬的信號的起始時間和時間跨度決定,在該時間跨度中出現多少次星曆更新,則需提取相應數量的星曆數據組;對星曆數據進行編碼和校驗位添加,得到導航電文碼流;對導航電文碼流調製載波和擴頻碼;高斯噪聲模擬;提供組合以上功能部件實現信號模擬的整體算法流程。所述RINEX管理模塊提供以下功能的接口,包括獲取用戶配置的RINEX星曆文件;解析文件名檢查文件可用性和提取文件名包含的信息,包括基站名稱縮寫、信號採集時間;緩存RINEX星曆文件的文件頭數據;提取RINEX星曆文件的文件頭中的RINEX版本信息、基站位置信息、信號接收時段信息、電離層校正參數、UTC時間信息等;根據一個時間參考點提取一組星曆數據,該功能模塊由前述信號生成模塊中提取星曆數據組的接口反覆調用,獲取所需數量的星曆數據組。所述導航解算模塊提供以下功能的接口,包括衛星鐘差和鍾漂的計算;衛星位置、速度信息的計算;衛星、接收機距離、距離變化率的計算;衛星相對於接收機的仰角和方位角的計算。所述時間系統管理模塊負責不同時間系統間的數據轉換。所述地理坐標轉換模塊負責不同地理坐標系統間坐標值的轉換。所述宏模塊負責完成系統的宏管理,包括全局常量的管理、自定義數學運算宏的管理。


圖1為本發明GPS數字中頻信號模擬系統的輸入輸出示意圖; 圖2為本發明的軟體頂層流程圖3為本發明系統輸入配置文件格式的示意圖; 圖4為本發明RINEX文件頭信息提取的過程示意圖; 圖5為本發明衛星星曆數據組提取的過程示意圖; 圖6為本發明的衛星電文碼流生成過程的示意圖; 圖7為本發明的信號合成過程的算法流程圖; 圖8為本發明的軟體邏輯層次結構圖。
具體實施例方式下面結合附圖對本發明的實施例作詳細說明本實施例在以本發明技術方案為前提下進行實施,給出了詳細的實施方式和具體的操作過程,但本發明的保護範圍不限於下述的實施例。如圖1所示,為根據本發明提供的系統的IO模式,所述系統的輸入為用戶按對生成的信號的需求和系統對配置文件的格式要求編寫的配置文本文件,輸出為存儲數字中頻信號的二進位文件。如圖2所示,為根據本發明提供的系統的軟體頂層流程圖。該圖顯示了本發明所提供的GPS數字中頻信號模擬方法,包括以下具體步驟
步驟一,讀取用戶按照規定格式編寫的配置文件,提取接收機位置、RINEX星曆文件路徑、信號時間信息等參數。如圖3所示為所述系統輸入配置文件格式的示意圖,可配置參數分為三類,用波浪號( .)加大寫英文字母標識,分別是接收機坐標信息、RINEX星曆文件路徑信息和時間信息。每組信息中的每個單元信息之間用空格區分。具體說明參見下表
表1配置文件格式說明表
步驟二,配置參數提取成功後,打開RINEX星曆文件,將頭信息進行緩衝,並根據需求提取出相應的數據。提取完畢後尋找所需組數的導航星曆數據組,供後續的電文編碼使用。如圖4所示,在本實施例中電離層延遲校正模型的參數存在於文件頭的第三行和第四行中。在文件頭緩衝於一個一維字符串數組中後,以換行符為結束符、行為單位進行搜索,在每個搜索單元中搜索和電離層校正模型參數對應的描述符(descriptor),找到後將該搜索單元提取出來放入一個臨時數組,然後檢查下一個搜索單元,如此反覆直到文件頭緩衝區的末尾。所有臨時數組按先後順序組成新的緩衝區,最後從該緩衝區中按照RINEX 的官方格式提取出對應數據。如圖5所示,按照配置的信號起始時刻、時間跨度、更新的星曆數據組數提取衛星星曆。RINEX文件的正文部分按時間段存儲每顆可見衛星的星曆,該時間段長度為GPS衛星星曆的更新周期——2小時。本實施例採用的RINEX文件存儲了一天的星曆,所以其正文分為12段。而所模擬的信號的起始時刻1點58分,時間跨度為330秒,因此出現了一次星曆更新,需要提取兩組星曆數據組。搜索信號起始時刻所在的時間段,將該時間段和隨後的一個時間段、共兩組星曆數據組提取出來,放入一個二維數組。該二維數組的每一列對應一個時間段的一組星曆數據,列長度為GPS衛星總數;每一行對應於同一顆衛星,其數據結構包含標誌位來標識該顆衛星的星曆在對應時間段內是否有效(存在)。步驟三,計算信號的起始時刻對應的周內時,從該時刻開始、每隔6秒對當前子幀進行編碼,直到完成不小於信號時長的幀數據。每顆衛星的電文碼流存於一個文本文件中。如圖6所示,將步驟一中配置的信號起始時刻換算到周內時T0W,在本實施例中為 93520s,因GPS子幀長度為6s,所以從93516s開始對導航電文逐子幀編碼。首先計算起始子幀的子幀號
93520 / 6 = 15586 ...... 4
15586 5+1=2
則此後的子幀序列為2, 3, 4,5, 1,2, 3,4, 5,1.……;
同時需要生成的子幀總數為 330 / 6 + 1 = 56
即每顆衛星均需從2號子幀開始編碼56個連續子幀。對於衛星ρ的第i個子幀G < i < 56),其應該生成的子幀號Sf為(2+i) % 5,
若sf等於0,則令其為5。根據其對應的周內時計算應選取哪一個星曆組。本實施例中信號時間跨度內的2 小時整倍數時間出現於93600s。因此,計算第i個子幀存在的時間
it 93516 + (i-1) X6
當it小於93600,則選取第一組星曆組中衛星ρ的星曆,否則選取第二組星曆組中衛星 P的星曆。然後按照GPS電文格式對星曆進行編碼得到對應子幀的碼流。衛星ρ的所有子幀編碼完成後,存入一個單獨的文件。所有衛星均進行如上的步
馬聚ο步驟四,對步驟三得到的導航電文調製載波和擴頻碼,合成出中頻數位訊號數據。如圖7所示,為該信號合成過程的算法流程圖。計算GPS擴頻碼序列。生成方式按照GPS官方接口文檔的定義實現,生成的序列存於一個二維數組.CAJCode*,其行向量代表一顆GPS衛星的CA碼序列。CA碼周期為1ms, 包含1023個碼片,因此行向量的長度為1023,存放CA碼一個周期序列值。計算樣點數:Nsanule:Nsanple = 330 X 5. 714285e6. 其中 5. 714285e6 為採樣率。逐採樣點計算樣值。設臨時變量i=0。當i小於Nsample時,計算第i個採樣點的值。進入步驟4。否則進入步驟6。判斷iH5714是否為0,其中5714取Ims採樣點數的約數。若i是否對應於整毫秒
的樣點數,則對全部GPS衛星進行如下1)到5)的步驟,否則跳過該步驟
1)根據i找到當前時刻對應的衛星星曆數據組,從中提取當前衛星P的星曆,檢查星曆的有效性,無效則衛星P置為不可見,並跳至下一顆衛星重複步驟4的流程;
2)依據GPS官方接口文檔的說明計算當前時刻接收到的該衛星的信號在傳播時
IhJ prop ogat e_t ι me
秒之前的衛星鐘差校正值elk和鍾漂校正值:clk drift ;傳播時間propogate—time使用上一次整毫秒計算時得到的值,即暫時認為在過去的Ims內傳播時間沒有發生變化,在初始化時定義為0. 07秒;
3)計算當前時刻(和i對應)接收到的該衛星的信號的發射時刻=93520 f ins ~c Ik-propogat e_t i me ;
4)循環迭代計算當前計算的信號被發射的時刻的衛星PVT信息、衛星和接收機距離及其變化率信息。具體方法是
i.重新計算傳播時間
propogate—time 二 range / LIGHTSPEED
range為上一次進行步驟4時計算得到的衛星和接收機距離,LIGHTSPEED為光速。重新計算信號發射時刻tow
tow 二 93520 + ids - propogate_time
iii.根據GPS官方接口文檔定義的方法計算衛星在tow時刻的PVT信息;
iv.在ECEF坐標系下計算在tow時刻衛星和接收機之間的距離range和距離變化率 range_rate ;
V.返回第i步重複這個過程,迭代4次得到精確的range、range—rate和 prcjpogate_time □)計算在tow時刻的衛星仰角和方位角,若仰角大於0,則計算都卜勒頻移
doppler = orange—rate / WAVELEW&THIJ
其中WAVELENGTHL1為GPS Ll信號載波波長。此處的負號是因為認為射頻接收模塊在下變頻中將頻譜做了反轉,因此doppler的符號出現了反轉; 然後計算當前採樣率下的載波相位步長
Carxierphasestep - ( IF + doppler ) / sanpling_freq
其中IF為中頻頻率。最後計算精確的傳播時間
propoga t e_t ime 二 range / LIGHTSPEED _ elk
elk為第2)步計算出的衛星鐘差。計算完畢後返回第1)步,進入對下一顆衛星在當前整毫秒時刻到達的信號的發射時刻和相應PVT信息。若仰角小於0,則該顆衛星設置為不可見,跳過該步的其他運算,同樣返回第1)步對下一顆衛星執行以上步驟。對當前可見的每顆衛星的信號計算第i個採樣點的值。衛星的可見性已經在步驟 4中確定,並在下一次處理步驟4 (即到達下一個整毫秒)之前保持不變。該步驟的算法步驟如下
1)計算可見衛星q的第i個採樣點對應的導航電文數值rel_tx = i / 5. 714285e6 - propogat e_t ime I- 93520 % 6; bite 二 (int)(rel_tx * b0)+lj njword = bite / 30; n—bit = bite % 30;
t_nav_bit :: ( nay_data[q] [n_srard] (29 - n_bit) ) & 0x1;
2)計算衛星q的第i個採樣點對應的擴頻碼和載波數值。其偽代碼如下 codephase = (rel_t* * IWO — Gut) (rel_ti:傘 1000))孝 102 data ■§·= t—naw—bitiq] * CA_Code|iiit Ccodephase)] [q] * sin(2 * Pl *
3)對data疊加高斯白噪聲,其信噪比在步驟一中由用戶配置。將data存入預先打開的二進位文件中。所有採樣點計算完畢,退出步驟四,同時得到了 GPS數字中頻信號的文件。如圖8所示,為本發明提供的GPS中頻信號模擬系統的軟體邏輯層次結構圖,本發明的軟體實現包括三個邏輯層次信號生成模塊、RINEX管理模塊、輔助模塊。所述信號生成模塊提供以下功能的接口,包括系統配置信息的提取;調用RINEX 管理模塊提取所需數量的星曆數據組,該星曆數據組對應所有GPS衛星在兩小時有效期內的全部星曆,而該星曆組的組數由所模擬的信號的起始時間和時間跨度決定,在該時間跨度中出現多少次星曆更新,則需提取相應數量的星曆數據組;對星曆數據進行編碼和校驗位添加,得到導航電文碼流;對導航電文碼流調製載波和擴頻碼;高斯噪聲模擬;提供組合以上功能部件實現信號模擬的整體算法流程。所述RINEX管理模塊提供以下功能的接口,包括獲取用戶配置的RINEX星曆文件;解析文件名檢查文件可用性和提取文件名包含的信息,包括基站名稱縮寫、信號採集時間;緩存RINEX星曆文件的文件頭數據;提取RINEX星曆文件的文件頭中的RINEX版本信息、基站位置信息、信號接收時段信息、電離層校正參數、UTC時間信息等;根據一個時間參考點提取一組星曆數據,該功能模塊由前述信號生成模塊中提取星曆數據組的接口反覆調用,獲取所需數量的星曆數據組。所述導航解算模塊提供以下功能的接口,包括衛星鐘差和鍾漂的計算;衛星位置、速度信息的計算;衛星、接收機距離、距離變化率的計算;衛星相對於接收機的仰角和方位角的計算。所述時間系統管理模塊負責不同時間系統間的數據轉換。所述地理坐標轉換模塊負責不同地理坐標系統間坐標值的轉換。所述宏模塊負責完成系統的宏管理,包括全局常量的管理、自定義數學運算宏的管理。
權利要求
1.一種GPS數字中頻信號的模擬方法,其特徵在於,包括如下步驟步驟一,讀取用戶按照規定格式編寫的配置文件,提取系統配置參數,配置模擬的信號特徵和系統工作所需輸入;步驟二,提取RINEX文件頭信息和所定義時間段內的全部衛星的星曆數據組;步驟三,將步驟二中提取出的星曆數據進行編碼,形成二進位的導航電文碼流;步驟四,將步驟三中得到的電文碼流調製載波和擴頻碼,合成出中頻數位訊號數據。
2.根據權利要求1所述的GPS數字中頻信號的模擬方法,其特徵在於,所述系統配置參數包括=RINEX導航星曆文件路徑、接收機位置信息、所模擬的信號的接收起始時刻、時間跨度、以及星曆使用組數信息;其中,星曆文件路徑指定信號模擬所使用的RINEX導航星曆文件,使用該文件內的星曆作為電文編碼的來源;接收機位置信息指定了所模擬信號的接收位置;接收起始時刻、時間跨度、以及星曆使用組數信息描述了所模擬信號的時間信息和星曆更新信息;步驟一包括子步驟提取全部信息配置系統工作所需輸入和各模塊的運行參數。
3.根據權利要求1所述的GPS數字中頻信號的模擬方法,其特徵在於,所述RINEX文件頭信息包含RINEX版本信息、觀測站位置信息、信號接收時段信息、電離層校正模型參數、 UTC時間信息等;其中,RINEX版本信息決定了文件的格式;電離層校正模型參數和UTC時間信息,這些參數也存在於衛星播發的導航電文中,分別用於校正電離層延遲和在GPST時與UTC之間轉換;任何一類信息在文件頭中佔據若干行,並用一個描述符區分,根據此描述符能夠從緩存的RINEX文件頭中搜索相應的信息並加以提取,在信號生成中使用。
4.根據權利要求1所述的GPS數字中頻信號的模擬方法,其特徵在於,所述星曆數據組包含所模擬的信號起始時刻的衛星星曆和在模擬時間跨度內出現更新的星曆,按照二維數組形式存儲,二維數組的每一列對應一個時間段的一組星曆數據,列長度為GPS衛星總數; 每一行對應於同一顆衛星,其數據結構包含標誌位來標識該顆衛星的星曆在對應時間段內是否有效。
5.根據權利要求1所述的GPS數字中頻信號的模擬方法,其特徵在於,所述星曆數據編碼,是指根據所模擬的信號起始時刻和時間跨度,以及GPS官方文檔對電文格式的規定, 對每一顆衛星的星曆進行編碼,形成二進位的導航電文碼流,同時計算出奇偶校驗位,最後將每顆衛星的碼流都存儲於一個獨立的文件中。
6.根據權利要求1所述的GPS數字中頻信號的模擬方法,其特徵在於,所述對導航電文調製載波和擴頻碼,合成出中頻數位訊號數據,是指完成信號最後的模擬合成功能,其包括逐採樣點地計算信號樣值,即在每個採樣點處計算此時刻天線所接收到的信號由哪幾顆衛星的信號合成,分別是怎樣的電文數值、擴頻碼相位和載波相位、頻率,並考慮天線對信號進行降頻時出現的頻率摺疊、ADC的量化階數等因素,準確地模擬接收端的行為對信號的影響。
7.—種GPS數字中頻信號的模擬系統,其特徵在於,包括信號生成模塊、RINEX管理模塊和輔助模塊,其中,輔助模塊主要包含的子模塊有導航解算模塊、時間系統管理模塊、地理坐標轉換模塊、宏模塊。
8.根據權利要求7所述的模擬系統,其特徵在於,所述信號生成模塊提供以下功能的接口,包括系統配置信息的提取;調用RINEX管理模塊提取所需數量的星曆數據組,該星曆數據組對應所有GPS衛星在兩小時有效期內的全部星曆,而該星曆組的組數由所模擬的信號的起始時間和時間跨度決定,在該時間跨度中出現多少次星曆更新,則需提取相應數量的星曆數據組;對星曆數據進行編碼和校驗位添加,得到導航電文碼流;對導航電文碼流調製載波和擴頻碼;高斯噪聲模擬;提供組合以上功能部件實現信號模擬的整體算法流程。
9.根據權利要求7所述的模擬系統,其特徵在於,所述RINEX管理模塊提供以下功能的接口,包括獲取用戶配置的RINEX星曆文件;解析文件名檢查文件可用性和提取文件名包含的信息,包括基站名稱縮寫、信號採集時間;緩存RINEX星曆文件的文件頭數據;提取 RINEX星曆文件的文件頭中的RINEX版本信息、基站位置信息、信號接收時段信息、電離層校正參數、UTC時間信息等;根據一個時間參考點提取一組星曆數據,該功能模塊由前述信號生成模塊中提取星曆數據組的接口反覆調用,獲取所需數量的星曆數據組。
10.根據權利要求7所述的模擬系統,其特徵在於,所述導航解算模塊提供以下功能的接口,包括衛星鐘差和鍾漂的計算;衛星位置、速度信息的計算;衛星、接收機距離、距離變化率的計算;衛星相對於接收機的仰角和方位角的計算;所述時間系統管理模塊負責不同時間系統間的數據轉換;所述地理坐標轉換模塊負責不同地理坐標系統間坐標值的轉換;所述宏模塊負責完成系統的宏管理,包括全局常量的管理、自定義數學運算宏的管理。
全文摘要
本發明提供一種使用軟體方法模擬GPS數字中頻信號的方法及系統,方法包括步驟一,讀取用戶按照規定格式編寫的配置文件,提取系統配置參數,配置模擬的信號特徵和系統工作所需輸入;步驟二,提取RINEX文件頭信息和所定義時間段內的全部衛星的星曆數據組;步驟三,將步驟二中提取出的星曆數據進行編碼,形成二進位的導航電文碼流;步驟四,將步驟三中得到的電文碼流調製載波和擴頻碼,合成出中頻數位訊號數據。系統包括信號生成模塊、RINEX管理模塊和輔助模塊。本發明通過軟體方法模擬GPS數字中頻信號,作為GPS原型接收機系統及其子模塊測試激勵,簡化了測試中信號收集的問題,並快速滿足了測試人員對信號特徵豐富性的需求。
文檔編號G01S19/13GK102375146SQ201110285920
公開日2012年3月14日 申請日期2011年9月23日 優先權日2011年9月23日
發明者劉佩林, 應忍冬, 廖夢新 申請人:上海交通大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀