本發(fā)明屬于通信技術(shù)領(lǐng)域,更進(jìn)一步涉及導(dǎo)航系統(tǒng)仿真技術(shù)領(lǐng)域中一種分布式全數(shù)字的北斗衛(wèi)星導(dǎo)航仿真方法。本發(fā)明利用系統(tǒng)仿真技術(shù)方法,可以實現(xiàn)北斗衛(wèi)星導(dǎo)航仿真方法運作的整個流程,并能觀察各個模塊的動態(tài)運行狀況。
背景技術(shù):
由于導(dǎo)航衛(wèi)星系統(tǒng)的競爭日益激烈,為了能夠進(jìn)行整個導(dǎo)航衛(wèi)星系統(tǒng)的指標(biāo)分析,同時更好的展示出科研能力,為導(dǎo)航衛(wèi)星的未來發(fā)展?fàn)幦〉接欣恢茫虼诵枰粋€價格低廉且仿真效果較好的全數(shù)字的北斗衛(wèi)星導(dǎo)航仿真方法。
劉剛在其發(fā)表的論文“導(dǎo)航衛(wèi)星有效載荷軟件仿真系統(tǒng)的研究與實現(xiàn)”(西安電子科技大學(xué)碩士學(xué)位論文2014年12月)中公開了一種利用VC++構(gòu)建了一個導(dǎo)航衛(wèi)星系統(tǒng)的仿真方法。該導(dǎo)航衛(wèi)星的仿真方法包括:監(jiān)控臺控制模塊、地面站信號注入模塊、上行信道傳輸模塊、載荷衛(wèi)星模塊、下行信道傳輸模塊以及地面接收機(jī)模塊。該方法模擬實際GPS導(dǎo)航仿真運行的整個流程,監(jiān)控臺控制整個仿真方法的運行,地面站將導(dǎo)航信息發(fā)送到導(dǎo)航衛(wèi)星,再由衛(wèi)星發(fā)送到接收機(jī),最后接收機(jī)解算得到定位坐標(biāo)。該導(dǎo)航衛(wèi)星系統(tǒng)的仿真方法存在的不足之處是:第一,該方法僅能仿真GPS衛(wèi)星導(dǎo)航信號,不能實現(xiàn)北斗衛(wèi)星導(dǎo)航信號的仿真,無法對北斗衛(wèi)星導(dǎo)航信號的仿真研究。第二,該方法僅采用一種對流層延時模型進(jìn)行仿真而無法對比分析定位結(jié)果的缺點,不能對比不同對流層延遲模型的定位效果。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于克服上述已有技術(shù)的不足,提出了一種分布式全數(shù)字的北斗衛(wèi)星導(dǎo)航仿真方法,通過初始化,發(fā)送導(dǎo)航電文、場景信息,生成北斗導(dǎo)航信號,生成帶碼偏的北斗導(dǎo)航信號,獲取衛(wèi)星坐標(biāo),確定北斗衛(wèi)星導(dǎo)航接收機(jī)的經(jīng)度、緯度、高度,實現(xiàn)了整個北斗衛(wèi)星導(dǎo)航仿真方法的運行流程。
本發(fā)明是基于一個北斗衛(wèi)星導(dǎo)航監(jiān)控臺模塊、一個北斗衛(wèi)星導(dǎo)航地面站模塊、一個北斗衛(wèi)星導(dǎo)航上行環(huán)境模塊、四個北斗衛(wèi)星導(dǎo)航衛(wèi)星模塊、一個北斗衛(wèi)星導(dǎo)航下行環(huán)境模塊、一個北斗衛(wèi)星導(dǎo)航接收機(jī)模塊實現(xiàn)的,具體步驟如下:
(1)初始化:
(1a)根據(jù)實際北斗衛(wèi)星所在的軌道,給4個北斗衛(wèi)星導(dǎo)航衛(wèi)星分別配置各自的6個軌道參數(shù);
(1b)根據(jù)北斗衛(wèi)星導(dǎo)航地面站所處的大氣環(huán)境,配置電離層延遲參數(shù);
(1c)根據(jù)北斗衛(wèi)星導(dǎo)航地面站所處的大氣環(huán)境,配置對流層延遲的模型與對流層延遲參數(shù);
(1d)加載仿真場景,通過衛(wèi)星工具包插件的命令獲取場景中的場景信息,按每個衛(wèi)星的坐標(biāo),分別生成對應(yīng)的4個導(dǎo)航電文;
(1e)分別對北斗衛(wèi)星導(dǎo)航監(jiān)控臺模塊、北斗衛(wèi)星導(dǎo)航地面站模塊、北斗衛(wèi)星導(dǎo)航上行環(huán)境模塊、四個北斗衛(wèi)星導(dǎo)航衛(wèi)星模塊、北斗衛(wèi)星導(dǎo)航下行環(huán)境模塊、北斗衛(wèi)星導(dǎo)航接收機(jī)模塊配置各自模塊所在計算機(jī)的IP地址,將所有模塊加入北斗衛(wèi)星導(dǎo)航監(jiān)控臺的仿真聯(lián)邦;
(2)發(fā)送導(dǎo)航電文、場景信息:
(2a)北斗衛(wèi)星導(dǎo)航監(jiān)控臺,將4個導(dǎo)航電文打包發(fā)送給北斗衛(wèi)星導(dǎo)航地面站,北斗衛(wèi)星導(dǎo)航地面站將4個導(dǎo)航電文打包發(fā)送給北斗衛(wèi)星導(dǎo)航上行環(huán)境,北斗衛(wèi)星導(dǎo)航上行環(huán)境將4個導(dǎo)航電文分別發(fā)送給其對應(yīng)北斗衛(wèi)星導(dǎo)航衛(wèi)星;
(2b)北斗衛(wèi)星導(dǎo)航監(jiān)控臺將對流層延遲模型與參數(shù)、電離層延遲參數(shù)和仿真場景獲得的4個北斗衛(wèi)星導(dǎo)航衛(wèi)星各自的衛(wèi)星偽距、衛(wèi)星速度同時發(fā)送給北斗衛(wèi)星導(dǎo)航上行環(huán)境和北斗衛(wèi)星導(dǎo)航下行環(huán)境;
(3)生成北斗衛(wèi)星導(dǎo)航信號:
按照實際北斗衛(wèi)星采用的調(diào)制方式,將每個導(dǎo)航電文分別生成與其北斗衛(wèi)星導(dǎo)航衛(wèi)星對應(yīng)的仿真的北斗衛(wèi)星導(dǎo)航信號,并保存到北斗衛(wèi)星導(dǎo)航信號的矩陣中;
(4)生成帶碼偏的北斗衛(wèi)星導(dǎo)航信號:
(4a)使用對流層延遲模型,分別計算每個北斗衛(wèi)星導(dǎo)航信號的對流層延遲值;
(4b)使用克羅布歇電離層延遲模型,分別計算每個北斗衛(wèi)星導(dǎo)航信號的電離層延遲值;
(4c)用每個北斗衛(wèi)星導(dǎo)航的衛(wèi)星偽距分別除以光速,得到每個北斗衛(wèi)星導(dǎo)航衛(wèi)星的偽距延遲值;
(4d)對每個北斗衛(wèi)星導(dǎo)航衛(wèi)星各自的對流層延遲值、電離層延遲值、偽距延遲值分別求和,得到每個北斗衛(wèi)星導(dǎo)航信號的總延遲值;
(4e)按照下式,分別計算每個北斗衛(wèi)星導(dǎo)航的碼偏:
其中,表示第k個北斗衛(wèi)星導(dǎo)航的碼偏,k的取值范圍為{1,2,3,4},tk表示第k個北斗衛(wèi)星導(dǎo)航的總延遲值,mk表示第k個北斗衛(wèi)星導(dǎo)航信號的矩陣長度,[·]表示取整操作;
(4f)將每個北斗衛(wèi)星導(dǎo)航信號的矩陣平移一個碼偏,得到每個帶碼偏的北斗衛(wèi)星導(dǎo)航信號;
(5)判斷4個北斗衛(wèi)星導(dǎo)航衛(wèi)星是否均生成帶碼偏的北斗衛(wèi)星導(dǎo)航信號,若是,執(zhí)行步驟(6),否則,執(zhí)行步驟(3);
(6)獲取北斗衛(wèi)星導(dǎo)航的衛(wèi)星偽距和衛(wèi)星坐標(biāo):
(6a)將4個帶碼偏北斗衛(wèi)星導(dǎo)航信號的矩陣按矩陣加法運算,得到帶碼偏北斗衛(wèi)星導(dǎo)航總信號的矩陣;
(6b)北斗衛(wèi)星導(dǎo)航接收機(jī)捕獲每個帶碼偏的北斗衛(wèi)星導(dǎo)航信號,按照下式計算每個北斗衛(wèi)星導(dǎo)航衛(wèi)星的衛(wèi)星偽距:
其中,ρ′r表示北斗衛(wèi)星導(dǎo)航接收機(jī)計算出的第r個北斗衛(wèi)星導(dǎo)航衛(wèi)星的衛(wèi)星偽距,r的取值范圍為{1,2,3,4},表示北斗衛(wèi)星導(dǎo)航接收機(jī)捕獲的第r個北斗衛(wèi)星導(dǎo)航信號的碼偏,mr表示第r個北斗衛(wèi)星導(dǎo)航信號的矩陣長度,c表示光速;
(6c)設(shè)置跟蹤仿真步范圍為1到3000;
(6d)北斗衛(wèi)星導(dǎo)航接收機(jī)跟蹤帶碼偏的北斗衛(wèi)星導(dǎo)航總信號,經(jīng)跟蹤得到每個北斗衛(wèi)星導(dǎo)航衛(wèi)星當(dāng)前仿真步的導(dǎo)航電文;
(6e)判斷是否獲得4個北斗衛(wèi)星導(dǎo)航衛(wèi)星的所有仿真步導(dǎo)航電文,若是,執(zhí)行步驟(6f),否則,執(zhí)行步驟(6d);
(6f)從每個二進(jìn)制值的導(dǎo)航電文中,依次提取三段二進(jìn)制值,將所提取的三段二進(jìn)制值分別轉(zhuǎn)換為十進(jìn)制值,將三段十進(jìn)制值依次作為與其對應(yīng)的北斗衛(wèi)星導(dǎo)航衛(wèi)星的x軸坐標(biāo)、y軸坐標(biāo)、z軸坐標(biāo);
(7)確定北斗衛(wèi)星導(dǎo)航接收機(jī)的經(jīng)度、緯度、高度:
(7a)利用當(dāng)前各北斗衛(wèi)星導(dǎo)航的衛(wèi)星所處位置的三維坐標(biāo)、各北斗衛(wèi)星導(dǎo)航的衛(wèi)星與北斗衛(wèi)星導(dǎo)航接收機(jī)的偽距,分別計算北斗衛(wèi)星導(dǎo)航接收機(jī)的x坐標(biāo)、y坐標(biāo)、z坐標(biāo):
其中,ρi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星到北斗衛(wèi)星導(dǎo)航接收機(jī)的偽距,i的取值范圍為{1,2,3,4},表示開平方操作,xi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星所處位置的x坐標(biāo),xu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的x坐標(biāo),yi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星所處位置的y坐標(biāo),yu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的y坐標(biāo),zi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星所,處位置的z坐標(biāo),zu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的z坐標(biāo),bu表示北斗衛(wèi)星導(dǎo)航接收機(jī)時鐘偏差,c表示光速;
(7b)用當(dāng)前北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的x坐標(biāo)、y坐標(biāo)、z坐標(biāo),分別計算北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的經(jīng)度、緯度、高度:
其中,L表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的經(jīng)度,arctan(·)表示反正切操作,yu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的y坐標(biāo),xu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的x坐標(biāo),B表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的緯度,zu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的z坐標(biāo),N表示地球橢球面卯酉圈的曲率半徑,H表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的高度,表示開平方操作,e表示地球的第一偏心率,cos(·)表示余弦操作。
本發(fā)明與現(xiàn)有技術(shù)相比具有以下優(yōu)點:
第一,由于本發(fā)明中按照實際北斗衛(wèi)星采用的調(diào)制方式,仿真生成北斗衛(wèi)星導(dǎo)航信號,克服了現(xiàn)有技術(shù)中僅能仿真GPS衛(wèi)星導(dǎo)航信號的缺點,使得本發(fā)明仿真的衛(wèi)星導(dǎo)航信號更加豐富,有利于對北斗衛(wèi)星導(dǎo)航信號的仿真研究。
第二,由于本發(fā)明中用配置的對流層延時模型計算北斗衛(wèi)星導(dǎo)航信號的對流層延遲,克服了現(xiàn)有技術(shù)中僅采用一種對流層延時模型進(jìn)行仿真而無法對比分析定位結(jié)果的缺點,使得本發(fā)明能對比不同對流層延遲模型的定位效果,有利于研究不同對流層延遲模型對于定位誤差的影響。
附圖說明
圖1為本發(fā)明方法的流程圖。
具體實施方式
下面結(jié)合圖1對本發(fā)明方法做進(jìn)一步的描述。
本發(fā)明的基于一個北斗衛(wèi)星導(dǎo)航監(jiān)控臺模塊、一個北斗衛(wèi)星導(dǎo)航地面站模塊、一個北斗衛(wèi)星導(dǎo)航上行環(huán)境模塊、四個北斗衛(wèi)星導(dǎo)航衛(wèi)星模塊、一個北斗衛(wèi)星導(dǎo)航下行環(huán)境模塊、一個北斗衛(wèi)星導(dǎo)航接收機(jī)模塊實現(xiàn)的。
步驟1.初始化。
根據(jù)實際北斗衛(wèi)星所在的軌道,給4個北斗衛(wèi)星導(dǎo)航衛(wèi)星分別配置各自的6個軌道參數(shù)。
所述的6個軌道參數(shù)是指,半長軸、偏心率、傾角、近地點幅角、升交點赤經(jīng)和平近點角。
根據(jù)北斗衛(wèi)星導(dǎo)航地面站所處的大氣環(huán)境,配置電離層延遲參數(shù)。
根據(jù)北斗衛(wèi)星導(dǎo)航地面站所處的大氣環(huán)境,配置對流層延遲的模型與對流層延遲參數(shù)。
所述的配置的對流層延遲的模型是指,從霍普菲爾德Hopfield模型、薩斯塔莫寧Saastamoinen模型、勃蘭克Black模型中任選其中一種模型進(jìn)行配置。
所述的對流層延遲參數(shù)是指,北斗衛(wèi)星導(dǎo)航接收機(jī)所處的地面氣壓、地面濕度、相對濕度。
(1d)加載仿真場景,通過衛(wèi)星工具包插件的命令獲取場景中的場景信息,按每個衛(wèi)星的坐標(biāo),分別生成對應(yīng)的4個導(dǎo)航電文。
(1e)分別對北斗衛(wèi)星導(dǎo)航監(jiān)控臺模塊、北斗衛(wèi)星導(dǎo)航地面站模塊、北斗衛(wèi)星導(dǎo)航上行環(huán)境模塊、四個北斗衛(wèi)星導(dǎo)航衛(wèi)星模塊、北斗衛(wèi)星導(dǎo)航下行環(huán)境模塊、北斗衛(wèi)星導(dǎo)航接收機(jī)模塊配置各自模塊所在計算機(jī)的IP地址,將所有模塊加入北斗衛(wèi)星導(dǎo)航監(jiān)控臺的仿真聯(lián)邦。
步驟2.發(fā)送導(dǎo)航電文、場景信息。
(2a)北斗衛(wèi)星導(dǎo)航監(jiān)控臺,將4個導(dǎo)航電文打包發(fā)送給北斗衛(wèi)星導(dǎo)航地面站,北斗衛(wèi)星導(dǎo)航地面站將4個導(dǎo)航電文打包發(fā)送給北斗衛(wèi)星導(dǎo)航上行環(huán)境,北斗衛(wèi)星導(dǎo)航上行環(huán)境將4個導(dǎo)航電文分別發(fā)送給其對應(yīng)北斗衛(wèi)星導(dǎo)航衛(wèi)星。
(2b)北斗衛(wèi)星導(dǎo)航監(jiān)控臺將對流層延遲模型與參數(shù)、電離層延遲參數(shù)和仿真場景獲得的4個北斗衛(wèi)星導(dǎo)航衛(wèi)星各自的衛(wèi)星偽距、衛(wèi)星速度同時發(fā)送給北斗衛(wèi)星導(dǎo)航上行環(huán)境和北斗衛(wèi)星導(dǎo)航下行環(huán)境。
步驟3.生成北斗衛(wèi)星導(dǎo)航信號。
按照實際北斗衛(wèi)星采用的調(diào)制方式,將每個導(dǎo)航電文分別生成與其北斗衛(wèi)星導(dǎo)航衛(wèi)星對應(yīng)的仿真的北斗衛(wèi)星導(dǎo)航信號,并保存到北斗衛(wèi)星導(dǎo)航信號的矩陣中。
步驟4.生成帶碼偏的北斗衛(wèi)星導(dǎo)航信號。
(4a)使用對流層延遲模型,分別計算每個北斗衛(wèi)星導(dǎo)航信號的對流層延遲值。
所述的計算每個北斗衛(wèi)星導(dǎo)航信號的對流層延遲值對流層延遲模型是指從以下三種模型中任選一種模型完成計算對流層延遲值:
第一種,對流層延遲霍普菲爾德模型:
其中,Δs表示對流層延遲值,Kd表示天頂方向干分量延遲,sin(·)表示正弦操作,表示開平方操作,E表示北斗衛(wèi)星導(dǎo)航信號傳播路徑高度角,Kw表示天頂方向濕分量延遲;
第二種,對流層延遲薩斯塔莫寧模型:
其中,Δs表示對流層延遲值,sin(·)表示正弦操作,E表示北斗衛(wèi)星導(dǎo)航信號傳播路徑高度角,Ts表示北斗衛(wèi)星導(dǎo)航地面站的絕對溫度,Ps表示北斗衛(wèi)星導(dǎo)航地面站氣壓,es表示北斗衛(wèi)星導(dǎo)航地面站水汽壓,cot(·)表示余切操作,hs表示北斗衛(wèi)星導(dǎo)航地面站高度,tan(·)表示正切操作,(·)″表示角度單位秒;
第三種,對流層延遲勃蘭克模型:
其中,Δs表示對流層延遲值,Kd表示北斗衛(wèi)星導(dǎo)航地面站的垂直地平面向上方向干分量延遲,表示開平方操作,cos(·)表示余弦操作,E表示北斗衛(wèi)星導(dǎo)航信號傳播路徑高度角,hd表示北斗衛(wèi)星導(dǎo)航地面站的干大氣頂高,r表示地球半徑,Kw表示北斗衛(wèi)星導(dǎo)航地面站的垂直地平面向上方向濕分量延遲,hw表示北斗衛(wèi)星導(dǎo)航地面站的濕大氣頂高。
(4b)使用克羅布歇電離層延遲模型,分別計算每個北斗衛(wèi)星導(dǎo)航信號的電離層延遲值。
所述的克羅布歇電離層延遲模型如下:
其中,T表示北斗衛(wèi)星導(dǎo)航地面站的電離層延遲值,T′表示北斗衛(wèi)星導(dǎo)航地面站的電離層天頂延遲值,E表示北斗衛(wèi)星導(dǎo)航信號傳播路徑高度角,(·)°表示角度單位的符號。
(4c)用每個北斗衛(wèi)星導(dǎo)航的衛(wèi)星偽距分別除以光速,得到每個北斗衛(wèi)星導(dǎo)航衛(wèi)星的偽距延遲值。
(4d)對每個北斗衛(wèi)星導(dǎo)航衛(wèi)星各自的對流層延遲值、電離層延遲值、偽距延遲值分別求和,得到每個北斗衛(wèi)星導(dǎo)航信號的總延遲值。
(4e)按照下式,分別計算每個北斗衛(wèi)星導(dǎo)航的碼偏:
其中,表示第k個北斗衛(wèi)星導(dǎo)航的碼偏,k的取值范圍為{1,2,3,4},tk表示第k個北斗衛(wèi)星導(dǎo)航的總延遲值,mk表示第k個北斗衛(wèi)星導(dǎo)航信號的矩陣長度,[·]表示取整操作。
(4f)將每個北斗衛(wèi)星導(dǎo)航信號的矩陣平移一個碼偏,得到每個帶碼偏的北斗衛(wèi)星導(dǎo)航信號。
步驟5.判斷4個北斗衛(wèi)星導(dǎo)航衛(wèi)星是否均生成帶碼偏的北斗衛(wèi)星導(dǎo)航信號,若是,執(zhí)行步驟6,否則,執(zhí)行步驟3。
步驟6.獲取北斗衛(wèi)星導(dǎo)航的衛(wèi)星偽距和衛(wèi)星坐標(biāo)。
(6a)將4個帶碼偏北斗衛(wèi)星導(dǎo)航信號的矩陣按矩陣加法運算,得到帶碼偏北斗衛(wèi)星導(dǎo)航總信號的矩陣。
(6b)北斗衛(wèi)星導(dǎo)航接收機(jī)捕獲每個帶碼偏的北斗衛(wèi)星導(dǎo)航信號,按照下式計算每個北斗衛(wèi)星導(dǎo)航衛(wèi)星的衛(wèi)星偽距:
其中,ρ′r表示北斗衛(wèi)星導(dǎo)航接收機(jī)計算出的第r個北斗衛(wèi)星導(dǎo)航衛(wèi)星的衛(wèi)星偽距,r的取值范圍為{1,2,3,4},表示北斗衛(wèi)星導(dǎo)航接收機(jī)捕獲的第r個北斗衛(wèi)星導(dǎo)航信號的碼偏,mr表示第r個北斗衛(wèi)星導(dǎo)航信號的矩陣長度,c表示光速。
所述的北斗衛(wèi)星導(dǎo)航接收機(jī)捕獲每個帶碼偏的北斗衛(wèi)星導(dǎo)航信號的步驟如下:
第1步,將本地載波發(fā)生器的頻率設(shè)置為北斗衛(wèi)星導(dǎo)航信號的中頻載波頻率,本地偽碼器的碼偏設(shè)置為0,中頻信號的頻率范圍設(shè)置為11.993MHz到12.007MHz,碼偏范圍設(shè)置為0到2046,頻率步長設(shè)置為500Hz,碼偏步長設(shè)置為1;
第2步,用本地載波發(fā)生器生成的正弦載波信號乘以帶碼偏的北斗衛(wèi)星導(dǎo)航信號,將相乘結(jié)果通過低通濾波器濾波后,得到同相支路信號;
第3步,用本地載波發(fā)生器生成的余弦載波信號乘以帶碼偏的北斗衛(wèi)星導(dǎo)航信號,將相乘結(jié)果通過低通濾波器濾波后,得到正交支路信號;
第4步,將同相支路的信號作為復(fù)信號的實部,正交支路的信號作為復(fù)信號虛部;
第5步,對本地偽碼器的偽碼做傅里葉變換后取共軛,得到偽碼的頻域共軛信號;
第6步,對復(fù)信號做快速傅里葉變換后乘以偽碼的頻域共軛信號,再對其做傅里葉逆變換,得到輸出信號;
第7步,判斷輸出信號的最大值除以輸出信號的第二大值是否大于2.5,若是,則捕獲成功,執(zhí)行第8步,否則,執(zhí)行第9步;
第8步,記錄捕獲成功時的本地載波發(fā)生器的載波頻率、本地偽碼器的碼偏;
第9步,判斷是否搜索完所有的碼相位,若是,執(zhí)行第11步,否則,執(zhí)行第10步;
第10步,調(diào)整本地偽碼器的碼偏增加一個碼偏步長,執(zhí)行第2步;
第11步,判斷是否搜索完所有的頻率,若是,結(jié)束捕獲,否則,執(zhí)行第12步;
第12步,調(diào)整本地載波發(fā)生器的頻率增加一個頻率步長,執(zhí)行第2步。
(6c)設(shè)置跟蹤仿真步范圍為1到3000。
(6d)北斗衛(wèi)星導(dǎo)航接收機(jī)跟蹤帶碼偏的北斗衛(wèi)星導(dǎo)航總信號,經(jīng)跟蹤得到每個北斗衛(wèi)星導(dǎo)航衛(wèi)星當(dāng)前仿真步的導(dǎo)航電文。
所述的北斗衛(wèi)星導(dǎo)航接收機(jī)跟蹤帶碼偏的北斗衛(wèi)星導(dǎo)航信號的步驟如下:
第1步,設(shè)置本地偽碼發(fā)生器的碼偏為捕獲到的碼偏,本地載波發(fā)生器的頻率為捕獲到的載波頻率,本地偽碼發(fā)生器的碼偏為捕獲到的碼偏,指定碼周期數(shù)范圍為1到100;
第2步,利用超前-滯后偽碼跟蹤算法,將輸入的北斗衛(wèi)星導(dǎo)航信號乘以本地振蕩器的正弦載波和余弦載波,分別得到同相支路信號、正交支路信號;
第3步,用同相支路信號、正交支路信號分別乘以基帶信號中的超前支路信號、即時碼支路信號、滯后支路信號,得到同相超前支路信號、同相即時支路信號、同相滯后支路信號、正交超前支路信號、正交即時支路信號、正交滯后支路信號的六路信號;
第4步,將六路信號分別通過積分清零處理,得到同相超前積分清零支路信號、同相即時積分清零支路信號、同相滯后積分清零支路信號、正交超前積分清零支路信號、正交即時積分清零支路信號、正交滯后積分清零支路信號6個積分清零后的支路信號;
第5步,按照下式,計算本地偽碼發(fā)生器的碼偏:
code=code′+75.8925×(D-D′)+0.1432×D
其中,D表示當(dāng)前指定碼周期數(shù)的本地偽碼和輸入信號偽碼的相位差,表示開平方操作,IE表示當(dāng)前指定碼周期數(shù)的同相超前積分清零支路信號,IL表示當(dāng)前指定碼周期數(shù)的同相滯后積分清零支路信號,QE表示當(dāng)前指定碼周期數(shù)的正交超前積分清零支路信號,QL表示當(dāng)前指定碼周期數(shù)的正交滯后積分清零支路信號,code表示當(dāng)前指定碼周期數(shù)的本地偽碼碼偏,code′表示上一指定碼周期數(shù)的本地偽碼碼偏,D′表示上一個指定碼周期數(shù)的本地偽碼和上一個指定碼周期數(shù)的輸入信號偽碼的相位差;
第6步,按照下式,計算本地載波的載波頻率:
carr=carr′+317.183×(ω-ω′)+ω×12.8588
其中,ω表示當(dāng)前指定碼周期數(shù)的本地載波與輸入信號載波的相位差,arctan(·)表示反正切操作,QP表示當(dāng)前指定碼周期數(shù)的正交超前積分清零支路信號,IP表示當(dāng)前指定碼周期數(shù)的同相滯后積分清零支路信號,carr表示當(dāng)前指定碼周期數(shù)的本地載波頻率,carr′表示上一個指定碼周期數(shù)的本地載波頻率,ω′表示上一個指定碼周期數(shù)的本地載波與輸入信號載波的相位差;
第7步,判斷當(dāng)前的指定碼周期數(shù)是否在指定碼周期數(shù)范圍內(nèi),若是,執(zhí)行第2步,否則,執(zhí)行第8步;
第8步,判斷當(dāng)前的同相即時積分清零支路信號是大于0,若是,輸出導(dǎo)航電文為0,否則,輸出導(dǎo)航電文為1。
步驟7.確定北斗衛(wèi)星導(dǎo)航接收機(jī)的經(jīng)度、緯度、高度。
(7a)利用當(dāng)前各北斗衛(wèi)星導(dǎo)航的衛(wèi)星所處位置的三維坐標(biāo)、各北斗衛(wèi)星導(dǎo)航的衛(wèi)星與北斗衛(wèi)星導(dǎo)航接收機(jī)的偽距,分別計算北斗衛(wèi)星導(dǎo)航接收機(jī)的x坐標(biāo)、y坐標(biāo)、z坐標(biāo):
其中,ρi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星到北斗衛(wèi)星導(dǎo)航接收機(jī)的偽距,i的取值范圍為{1,2,3,4},表示開平方操作,xi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星所處位置的x坐標(biāo),xu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的x坐標(biāo),yi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星所處位置的y坐標(biāo),yu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的y坐標(biāo),zi表示第i個北斗衛(wèi)星導(dǎo)航的衛(wèi)星所,處位置的z坐標(biāo),zu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的z坐標(biāo),bu表示北斗衛(wèi)星導(dǎo)航接收機(jī)時鐘偏差,c表示光速。
(7b)用當(dāng)前北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的x坐標(biāo)、y坐標(biāo)、z坐標(biāo),分別計算北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的經(jīng)度、緯度、高度:
其中,L表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的經(jīng)度,arctan(·)表示反正切操作,yu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的y坐標(biāo),xu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的x坐標(biāo),B表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的緯度,zu表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的z坐標(biāo),N表示地球橢球面卯酉圈的曲率半徑,H表示北斗衛(wèi)星導(dǎo)航接收機(jī)所處位置的高度,表示開平方操作,e表示地球的第一偏心率,cos(·)表示余弦操作。