本發明屬于衛星導航領域,具體涉及gnss(globalnavigationsatellitessystem)接收機內部多頻多系統偽隨機碼相位測量值與偽距測量值生成的gnss接收機碼相位估計與補償方法。
背景技術:
全球導航衛星系統能夠為用戶提供位置、速度、時間信息,并且具有全天候、全球覆蓋、實時、連續、高精度、高可靠性、成本低的特點,廣泛的應用到民用和軍用領域。在定位和導航方面如船舶遠洋導航與進港引導,汽車自主導航,飛機航路引導和進場著艦,自動化精準農業,智慧城市與智能交通等;在授時和校頻領域如為電力、郵電、通信網絡系統提供精確的時間和頻率參考;在大地測量領域如機型地殼運動、工程測量、工程形變測量等。
全球一共有四全球大衛星導航系統以及若干區域衛星導航系統,四大全球衛星導航系統分別是中國的北斗衛星導航系統,俄羅斯的格洛納斯衛星導航系統,美國的gps衛星導航系統,和歐洲的伽利略衛星導航系統,北斗衛星導航系統和伽利略衛星導航系統正在建設當中;而區域衛星導航系統主要包括日本的準天頂衛星系統(qzss)印度的印度區域導航衛星系統(irnss)。多頻多系統的聯合導航定位能夠提高可視衛星數量、改善衛星幾何分布、提高定位測速精度,隨著我國北斗衛星導航系統的發展,多頻多系統聯合定位已經成為衛星導航的發展趨勢之一。
對任何衛星導航系統,對gnss信號碼相位的測量精度直接決定了偽距測量的精度,進而影響到定位和授時的精度。然而,影響gnss接收機測量gnss信號內碼相位的困難會來自兩個方面:第一是射頻前端的濾波效應,射頻前端濾波器使得接受到的碼信號發生形變,進而破壞理想的碼信號呈現“三角形”的自相關特性,一方面本地碼在跟蹤接收碼的時候會產生公共誤差,另一方面基于理想的自相關特性的碼相位鑒別器輸出的碼相位誤差包含偏差,不但使得本地碼相位不能鎖定自相關峰,而且降低了碼相位測量精度,進而影響偽距測量精度,這里需要注意的是,不同的gnss碼信號可能經過了不同的射頻前端濾波器,因此不同類型的碼信號收到的影響是不一樣的,因此對應碼信號的自相關曲線以及公共偏差是不相等的;第二是噪聲效應,gnss衛星信號中的噪聲很難被射頻前端濾波器以及相關運算完全濾除,因此基于i/q相關值的碼相位鑒別器很難輸出不受噪聲干擾的碼相位誤差。因此,從受到到噪聲干擾和濾波效應的接受碼信號中準確的提取碼相位信息非常重要。
技術實現要素:
本發明目的在于針對估計gnss衛星信號偽碼相位的技術問題,提出一種基于自相關曲線擬合的碼相位估計技術,用來克服射頻前端濾波效應和噪聲帶來的對碼相位估計的困難的gnss接收機碼相位估計與補償方法。
本發明的目的是這樣實現的:
(1)運用頻譜分析儀對第n個射頻前端中頻濾波器的幅頻特性和相頻特性進行測量并記錄測量結果,射頻中頻濾波器的幅頻特性和相頻特性通過查閱對應的射頻前端電路的數據手冊得到;在計算機上通過線性系統系統辨識的的方式,得到近似的射頻前端中頻濾波器的傳遞函數
(2)用軟件仿真的形式生成本地生成將要通過該射頻濾波器的gnss偽碼信號,衛星號可以任意選擇;完成后,讓偽碼信號通過傳遞函數為
(3)本地再產生一份對應衛星的偽隨機碼并且與濾波碼進行相關,以確定使相關值最大的本地碼的相位,并且記錄下來,以此得到原始碼、濾波碼、本地碼在時域上的關系;通過測量本地碼與原始碼之間的碼相位偏差,來得到公共誤差;
(4)定義相關值最大處的碼相位誤差為0,再移動本地碼相位與濾波碼做相關,以此得到碼相位誤差在[-1,1]碼片范圍內的實際自相關值曲線的形狀;每次移動碼相位的值記為c[chip],理論上來說c的值越小,則得到的自相關曲線也就越精確,通常c可以取0.001chip;在每一次計算自相關值之后,自相關值要作歸一化處理,因此實際自相關曲線的最大值為1;
(5)對其他尚未完成擬合的射頻濾波器以及對應的碼信號繼續執行步驟(1)-(4),以得gnss系統內不同碼信號實際的自相關曲線以及公共誤差;全部完成后則可以進入步驟(6);
(6)接收機內部采用相干預濾波器提取碼相位誤差;此相干預濾波器系統模型中的自相關曲線形狀由步驟(4)得到;相干預濾波器得到碼相位誤差后,可以裝入跟蹤環路中完成碼nco控制量生成;相干預濾波器估計的碼相位誤差修正對應的公共誤差,得到修正后的碼相位誤差,進而完成偽距測量;
(7)各個系統通過步驟(6)得到的碼相位誤差組裝偽距;并通過得到的偽距進行導航解算,并且輸出導航解算的結果。
本發明的有益效果在于:
(1)自相關曲線擬合以及公共誤差的測量主要以軟件的方式完成,為整個系統的設計提供了靈活性和便捷性。
(2)將自相關曲線擬合技術與公共誤差修正技術引入到相干預濾波器設計中來,精確的自相關曲線幫助相干預濾波器準確的估計出碼相位誤差,此碼相位誤差進入環路濾波器進行碼nco計算,這可以使得本地碼能夠更加精確的鎖定自相關峰值;相干預濾波器輸出的碼相位誤差修正公共誤差后進入偽距測量模塊,進一步提高測距精度和時間測量精度,在多衛星導航系統系統聯合定位時具有更大的優勢。
附圖說明
圖1為射頻前端中頻濾波器傳遞函數的辨識方法。
圖2為自相關曲線擬合和prn碼相位公共誤差測量的原理圖。
圖3為碼相位公共誤差計算原理圖。
圖4為自相關曲線擬合原理圖。
圖5為系統的偽碼相位生成的原理圖。
圖6為信號發射時間組裝公式。
具體實施方式
下面根據說明書附圖對該發明的具體實現方式做進一步說明。
(1)運用頻譜分析儀對第n個射頻前端中頻濾波器的幅頻特性和相頻特性進行測量并記錄測量結果,射頻中頻濾波器的幅頻特性和相頻特性同樣可以通過查閱對應的射頻前端電路的數據手冊得到。在計算機上通過線性系統系統辨識的的方式,得到近似的射頻前端中頻濾波器的傳遞函數
(2)用軟件仿真的形式生成本地生成將要通過該射頻濾波器的gnss偽碼信號,衛星號可以任意選擇。完成后,讓偽碼信號通過傳遞函數為
(3)本地再產生一份對應衛星的偽隨機碼(以下稱本地碼),并且與濾波碼進行相關,以確定使相關值最大的本地碼的相位,并且記錄下來,以此得到原始碼、濾波碼、本地碼在時域上的關系。通過測量本地碼與原始碼之間的碼相位偏差,來得到公共誤差。
(4)定義相關值最大處的碼相位誤差為0,再移動本地碼相位與濾波碼做相關,以此得到碼相位誤差在[-1,1]碼片范圍內的實際自相關值曲線的形狀。每次移動碼相位的值記為c[chip],理論上來說c的值越小,則得到的自相關曲線也就越精確,通常c可以取0.001chip;在每一次計算自相關值之后,自相關值要作歸一化處理,因此實際自相關曲線的最大值為1。
(5)實際射頻電路不僅有一個射頻濾波器,因此對其他尚未完成擬合的射頻濾波器以及對應的碼信號繼續執行步驟1~4,以得gnss系統內不同碼信號實際的自相關曲線以及公共誤差。全部完成后則可以進入步驟6。
(6)接收機內部采用相干預濾波器提取碼相位誤差。此相干預濾波器系統模型中的自相關曲線形狀由步驟(4)得到。相干預濾波器得到碼相位誤差后,可以裝入跟蹤環路中完成碼nco控制量生成;相干預濾波器估計的碼相位誤差修正對應的公共誤差,得到修正后的碼相位誤差,進而完成偽距測量。
(7)各個系統通過步驟(6)得到的碼相位誤差組裝偽距。并通過得到的偽距進行導航解算,并且輸出導航解算的結果。
如圖1所示首先根據射頻電路器件的數據手冊,或者采用頻譜分析儀實際測量的方式,確定射頻前端電路中頻濾波器n(n∈[0,n],n為射頻電路所有不同中頻濾波器數量總和)的幅頻特性
an(ω)=|gn(jω)|(1)
以及相頻特性
θn(ω)=arggn(jω)(2)
二者組成射頻前端濾波器n的復數幅相特性:
gn(jω)=an(ω)*cos(θn(ω))+an(ω)*sin(θn(ω))(3)
其中,ω為一系列離散的頻率點[rad/s],j為虛數單位,將該頻域數據gn(jω)送入matlab線性系統辨識模塊中,則可通過軟件模擬出射頻前端中頻濾波器n的線性傳遞函數
如圖2所示,在得到射頻前端中頻濾波器n的傳遞函數
如圖3所示,scope1展示的是碼相位誤差與相關值之間的關系,由于射頻前端的濾波效應,自相關曲線不再是理想的三角形,而且具有兩個特性:非對稱性和平滑性。因此采用三次樣條差值的方法對其進行擬合,取碼相位誤差為[-1,1]范圍及其對應的相關值,作為曲線擬合的輸入,采用三次樣條差值的方法,對實際的自相關曲線進行擬合。理想的三角形自相關曲線定義為r(δτ),擬合后的實際曲線定義為rf(δτ),δτ為碼相位誤差[chip]。
如圖4所示,scope2記錄了原始碼,濾波碼,本地碼的部分形態。其中此時本地碼相位保證了本地碼與濾波碼之間的相關值最大。由此可以看出,由于射頻前端帶寬有限,即使本地碼完全與濾波碼同步,但是仍然與原始碼存在恒定的偏移。通過scope2記錄的結果,可以測量出對應的恒定偏移的大小。不同射頻濾波器的公共誤差并不相同,為了方便表達,將其統一記為δτcommon。
如圖5所示,為碼相位誤差估計的結構。總體上采用相干預濾波器來提取相關值中包含的碼相位誤差信號。
其中,采用相干預濾波器來估計碼相位誤差。相干預濾波器采用卡爾曼濾波的形式,選擇信號幅度a、碼相位差δτ[chip]、載波相位差
其狀態量如下所示:
其中k為當前歷元標號。
其觀測量如下所示:
zk=[ie,k,qe,k,ip,k,qp,k,il,k,ql,k]t;(5)
其狀態模型如下式所示:
其中,tcoh為對應通道內的相干積分時間[s],β為對應通道處理的衛星信號碼頻率與載波頻率的比值,qk為系統狀態噪聲協方差矩陣。
其觀測模型如下式所示:
其中,
觀測模型中用擬合得到的實際自相關曲線rf(δτ)代替理想的自相關曲線r(δτ)。由于觀測模型的非線性,因此采用擴展卡爾曼濾波器來進行濾波器更新。在相干預濾波器得到碼相位誤差估計值δτ之后,隨即將其裝入碼跟蹤環路,
相干預濾波器估計出碼相位誤差δτ,隨后要按下式修正公共偏差,以得到更加精確的碼相位誤差估計值,以進一步參與偽距組裝。
如圖6所示,為gnss信號碼相位與發射時間組裝的原理圖。導航衛星信號的載波、偽碼、電文三級調制的結構本身就標明了其發射時間,發射時間具體的組裝公式可以由下式得到:
其中,ts代表信號發射時間[s],n代表距離幀頭的整周碼計數;tchip代表碼周期[s];cp代表測量采樣點點處的碼相位[chip],其取值范圍為[0,prn碼碼長);
在得到導航衛星信號的發射時間之后,可以進一步得到對應的偽距測量值,偽距組裝的公式由下式給出:
ηi=c*(tr-ts,i)(11)
其中,ηi為第i顆衛星的偽距測量值[m],tr為接收機的測量時刻[s],根據接收機時鐘得到,ts,i為第i顆衛星信號的發射時間[s],c為光速[m/s]。在偽距得到之后,接收機便可以結合對應衛星星歷通過導航解算得到接收機的位置和速度。