C語(yǔ)言計(jì)算GPS衛(wèi)星位置[驕陽(yáng)教育]_第1頁(yè)
C語(yǔ)言計(jì)算GPS衛(wèi)星位置[驕陽(yáng)教育]_第2頁(yè)
C語(yǔ)言計(jì)算GPS衛(wèi)星位置[驕陽(yáng)教育]_第3頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 C語(yǔ)言計(jì)算GPS衛(wèi)星位置1 概述在用GPS信號(hào)進(jìn)行導(dǎo)航定位以及制訂觀測(cè)計(jì)劃時(shí),都必須已知GPS衛(wèi)星在空間的瞬間位置。衛(wèi)星位置的計(jì)算是根據(jù)衛(wèi)星電文所提供的軌道參數(shù)按一定的公式計(jì)算的。本節(jié)專門講解觀測(cè)瞬間GPS衛(wèi)星在地固坐標(biāo)系中坐標(biāo)的計(jì)算方法。2 衛(wèi)星位置的計(jì)算1. 計(jì)算衛(wèi)星運(yùn)行的平均角速度n根據(jù)開普勒第三定律,衛(wèi)星運(yùn)行的平均角速度n0可以用下式計(jì)算: 式中為WGS-84坐標(biāo)系中的地球引力常數(shù),且=3.9860051014m3/s2。平均角速度n0加上衛(wèi)星電文給出的攝動(dòng)改正數(shù)n,便得到衛(wèi)星運(yùn)行的平均角速度nn=n0+n (4-12)2. 計(jì)算歸化時(shí)間tk首先對(duì)觀測(cè)時(shí)刻t作衛(wèi)星鐘差改正t=t-t然

2、后對(duì)觀測(cè)時(shí)刻t歸化到GPS時(shí)系tk=t-toc (4-13)式中tk稱作相對(duì)于參考時(shí)刻toe的歸化時(shí)間(讀者注意:toctoe)。3. 觀測(cè)時(shí)刻衛(wèi)星平近點(diǎn)角Mk的計(jì)算Mk=M0+ntk (4-14)式中M0是衛(wèi)星電文給出的參考時(shí)刻toe的平近點(diǎn)角。4. 計(jì)算偏近點(diǎn)角EkEk=Mk+esinEk(Ek,Mk以弧度計(jì)) (4-15)上述方程可用迭代法進(jìn)行解算,即先令Ek=Mk,代入上式,求出Ek再代入上式計(jì)算,因?yàn)镚PS衛(wèi)星軌道的偏心率e很小,因此收斂快,只需迭代計(jì)算兩次便可求得偏近點(diǎn)角Ek。5. 真近點(diǎn)角Vk的計(jì)算由于: 因此: 6升交距角k的計(jì)算為衛(wèi)星電文給出的近地點(diǎn)角距。7. 攝動(dòng)改正項(xiàng)u,

3、r,i的計(jì)算 u,r,i分別為升交距角u的攝動(dòng)量,衛(wèi)星矢徑r的攝動(dòng)量和軌道傾角i的攝動(dòng)量。8. 計(jì)算經(jīng)過(guò)攝動(dòng)改正的升交距角uk、衛(wèi)星矢徑rk和軌道傾角ik 9. 計(jì)算衛(wèi)星在軌道平面坐標(biāo)系的坐標(biāo)衛(wèi)星在軌道平面直角坐標(biāo)系(X軸指向升交點(diǎn))中的坐標(biāo)為 10. 觀測(cè)時(shí)刻升交點(diǎn)經(jīng)度k的計(jì)算升交點(diǎn)經(jīng)度k等于觀測(cè)時(shí)刻升交點(diǎn)赤經(jīng)(春分點(diǎn)和升交點(diǎn)之間的角距)與格林泥治視恒星時(shí)GAST(春分點(diǎn)和格林尼治起始子午線之間的角距)之差,k=-GAST (4-23)又因?yàn)? (4-24)其中oe為參與時(shí)刻toe的升交點(diǎn)的赤經(jīng);是升交點(diǎn)赤經(jīng)的變化率,衛(wèi)星電文每小時(shí)更新一次和toe。此外,衛(wèi)星電文中提供了一周的開始時(shí)刻tw的

4、格林尼治視恒星時(shí)GASTw。由于地球自轉(zhuǎn)作用,GAST不斷增加,所以:GAST=GASTw+et (4-25)式中e=7.2921156710-5rad/s為地球自轉(zhuǎn)的速率;t為觀測(cè)時(shí)刻。由式(4-24)和(4-25),得: 由(4-13)式,得:其中,、的值可從衛(wèi)星電文中獲取。11. 計(jì)算衛(wèi)星在地心固定坐標(biāo)系中的直角坐標(biāo)把衛(wèi)星在軌道平面直角坐標(biāo)系中的坐標(biāo)進(jìn)行旋轉(zhuǎn)變換,可得出衛(wèi)星在地心固定坐標(biāo)系中的三維坐標(biāo): 12. 衛(wèi)星在協(xié)議地球坐標(biāo)系中的坐標(biāo)計(jì)算考慮極移的影響,衛(wèi)星在協(xié)議地球坐標(biāo)系中的坐標(biāo)為利用C語(yǔ)言程序?qū)崿F(xiàn)#include #include #include #include #defi

5、ne u 3.986004418e+14#define WE 7.292115e-6struct canshuint prn, nian, yue, ri, shi, fen;/衛(wèi)星PRN號(hào),年,月,日,時(shí),分double miao;/秒long double adoe, a0, a1, a2, mo, dn, e, ga, pio, io, w, pid, ii, cuc, cus, cue, crs, crc, cis, cic, toe, aodc, wn;/*參數(shù)說(shuō)明: ADOE值,a0 衛(wèi)星鐘偏差, a1 衛(wèi)星鐘漂移, a2 衛(wèi)星鐘頻率漂移, M0 平近點(diǎn)角, n平運(yùn)動(dòng)差, e偏心率

6、, a1/2半長(zhǎng)軸的平方根, 0 軌道平面升交點(diǎn)經(jīng)度, i0 傾角, 近地點(diǎn)角距, * 升交點(diǎn)速率, IDot 傾角速率, Cuc Cus 升交角距的攝動(dòng)改正項(xiàng),Crc Crs 地心距的攝動(dòng)改正項(xiàng), Cic Cis 傾角的攝動(dòng)改正項(xiàng),toe 參考?xì)v元*/;void wxzbjx(struct canshu *pt)long double a, n0, n, t, tk, toc, mk, ek, vk, fik, uk, rk, ik;long double xk, yk ,zk, lk;long double XK, YK, ZK;int temp;pt-nian = pt-nian + 2

7、000;t = (long double)(pt -nian)- 1980) * 365 * 24 * 3600 + (pt -yue - 1) * 30 * 24 * 3600 + pt -ri * 24 * 3600 + pt-shi * 3600 + pt -miao);a = pt -ga * pt -ga;n0 = sqrt(WE/(a*a*a);/平均角速度n0n = n0 + pt -dn;tk = t - pt -toe;toc = pt -a0 + pt -a1 * (t - pt -toe) + pt -a2 * (t - pt-toe) * (t - pt -toe);t

8、k = tk - pt -toe;mk = pt -mo + n * tk;ek = mk;for(temp=0;tempe * sin(ek);/利用迭代法求偏近點(diǎn)角ek vk = 2 * atan(sqrt(1+ pt -e) / (1 - pt -e)* (tan(ek) / 2 );fik = vk + pt -w;uk = fik + pt -cuc * cos(2* fik) + pt -cus * sin(2*fik);rk = pt -ga * pt -ga * (1 - pt -e * ek) + pt -crc * cos(2* fik) + pt -crs * sin(2

9、*fik);ik = pt -io + pt -cic * cos(2 * fik) + pt -cis * sin(2* fik) + pt -ii * tk; xk = rk * cos(uk);yk = rk * sin(uk);zk = 0;lk = pt -pio + (pt -pid - WE) * tk - WE * pt-toe;XK = xk * cos(lk) - yk * cos(ik) * sin(lk);YK = xk * sin(lk) + yk * cos(ik) * cos(lk);ZK = yk * sin(ik);printf(n%d年%d月%d號(hào)%d時(shí)%.

10、2f秒 %d號(hào)衛(wèi)星的坐標(biāo):, pt-nian, pt-yue ,pt-ri , pt-shi ,pt-miao, pt-prn);printf(nXk = %.9fnYk= %.9fnZK = %.9fnn, XK, YK, ZK); int main(void)FILE *fp, *fp1, *fp2;struct canshu a;int i=0, hanhao = 1; long doubletemp1, temp2, temp3, temp5, temp4, temp6, temp7;char ch, ch1;if(fp1 = fopen(E:星歷文件guangboxingli2.tx

11、t, r) = NULL)/請(qǐng)自定義星歷文件位置及名稱printf(文件無(wú)法打開!);exit(0); elseif(fp2 = fopen(E:星歷文件guangboxingli2fu.txt, w) = NULL)printf(文件無(wú)法打開!);exit(0); elsewhile(ch1 = fgetc(fp1) != EOF)if(ch1 = n)i +;putchar(ch1);if(i = 15)break;while(!feof(fp1)ch1=fgetc(fp1);if(ch1 = D)ch1 = e;fputc(ch1,fp2);fclose(fp1); fclose(fp2

12、);printf(以上是星歷文件的頭文件!n);system(pause);printf(讀取文件參數(shù)數(shù)據(jù)n!);if(fp = fopen(E:星歷文件guangboxingli2fu.txt, r) = NULL)/創(chuàng)建計(jì)算結(jié)果文檔printf(文件無(wú)法打開!);exit(0); while(!feof(fp)switch(hanhao)case 1:fscanf(fp,n%d%d%d%d%d%d%lf %le %le %le, &a.prn, &a.nian, &a.yue, &a.ri, &a.shi, &a.fen, &a.miao, &a.a0, &a.a1, &a.a2);pri

13、ntf(%d %d %d %d %d %d %lf %le %le %le, a.prn, a.nian, a.yue, a.ri, a.shi, a.fen, a.miao, a.a0, a.a1, a.a2);hanhao+;case 2:fscanf(fp,%le %le %le %le, &a.adoe, &a.crs, &a.dn, &a.mo);printf(n%le %le %le %le, a.adoe, a.crs, a.dn, a.mo);hanhao+;case 3:fscanf(fp,%le %le %le %le, &a.cue, &a.e, &a.cus, &a.g

14、a);printf(n%le %le %le %le, a.cue, a.e, a.cus, a.ga);hanhao+;case 4:fscanf(fp,%le %le %le %le, &a.toe, &a.cic, &a.pio, &a.cis);printf(n%le %le %le %le, a.toe, a.cic, a.pio, a.cis);hanhao+;case 5:fscanf(fp,%le %le %le %le, &a.io, &a.crc, &a.w, &a.pid);printf(n%le %le %le %le, a.io, a.crc, a.w, a.pid);hanhao+;case 6:fscanf(fp,%le %le %le %le, &a.ii, &temp1, &a.wn, &temp2);printf(n%le %le %le %le, a.ii, temp1, a.wn, temp2);hanhao+;case 7:fscanf(fp,%le %le %le %le, &temp3, &temp4, &temp5, &a.aodc);printf(n%

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論