Advertisement

matlab编程求卫星轨道长度,GPS卫星轨道计算及其MATLAB仿真.pdf

阅读量:

GPS 卫星轨道计算及其MATLAB 仿真

黎奇,白征东,李帅,陈波波

(清华大学地球空间信息研究所,北京100084)

一、程序设计思路

1. 读取RINEX 文件(注意:文件路径)

2. 计算测量日周积秒(测量日的格里历→GPST )

3. 按卫星轨道计算步骤计算WGS-84 坐标系坐标 (内插)

4. 按需要将WGS-84 坐标系下坐标转换为所需坐标系坐标

5. 画图输出

主程序

function tracePlot() % 主程序

format long

%读取RINEX格式n文件

data被赋值为RinexNreader函数的结果;其中参数包括指定的输入文件路径和卫星编号1;注释:请确保指定正确的数据文件路径及对应的卫星编号以避免错误运行。

%计算测量日的周积秒

[JD,FOD,GPSW,SOW,DOY,DOW] =

GCtoGPS(data(1,1),data(2,1),data(3,1),data(4,1),data(5,1),data(6,1));

t0 = SOW; % SOW-周积秒

%计算卫星坐标

i = 1;

for t = t0:10*60:(t0+86400) % 从 t0 到 t0+86400秒(1天) 间隔 600秒(10min),决定轨迹疏密

satPosECEF(:,i) = orbitDetermine(data,t);

% 输入:卫星PRN编号、时刻t

% 输出:卫星WGS-84坐标x、y、z

[B_ECEF(i),L_ECEF(i)] = XYZtoBLH(satPosECEF(1,i),satPosECEF(2,i),satPosECEF(3,i));

XYZtoBLH - 实现卫星坐标的XYZ形式转换为BLH坐标系,并规定以东经为正方向、北纬为正方向

i = i + 1;

end

geoshow('landareas.shp','FaceColor', [0.15 0.5 0.15]),hold on % 绘制底图地球

plot(L_ECEF,B_ECEF,'r.'); % 绘制坐标

end

二、n 文件说明及读取程序

参考时刻 的 RINEX 格式的 “ . n ”广播星历文件具体如下:(加粗部分为本次轨道

t

oe

计算中实际使用的参数)

(头文件)

END OF HEAD

(61-73)

卫星PRN 号 参考时刻toe 2

卫星钟差常数项a ,秒 卫星钟差漂移项a ,秒/秒 卫星钟差漂移速率a ,秒/秒

f 0 f 1 f 2

全部评论 (0)

还没有任何评论哟~