资源描述:
《gps广播星历计算卫星位置和速度》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、“GPS广播星历计算卫星位置和速度”及“GPS伪距定位”计算试验1.试验内容及上交成果1.1试验内容应用C语言按预定格式(函数、输入输出变量之名称、类型)编写“GPS广播星历计算卫星位置和速度”函数SatPos_Vel()、“GPS伪距定位”函数Positioning()。将此两个函数组成文件F2.cpp,并包含于文件GPS_Positioning.cpp中。编译、连接并运行文件GPS_Positioning.cpp,逐一时刻读取广播星历(Ephemeris.dat)、观测时间及伪距、卫星号(Observation.dat)信息,计算WGS84坐标系中观测时刻相应的卫星位置、速度以及载体位
2、置,结果保存于文件Position.dat中。1.2上交成果磁盘文件F2.cpp、Position.dat,并存于“学号作者中文姓名”目录中。2.函数说明2.1星历文件读取函数voidEFileReading(Efile)功能:读取星历文件,给星历数据结构体Ephemeris赋值。输入变量:EFile字符串,文件名。2.2观测数据读取函数intObsReading(fp_Obs,Time,Rho,Mark)功能:从文件Observation.dat中读取某一时刻的伪距、卫星号。读取成功函数值返回“1”,失败返回“-1”(读错,或至文件尾)。输入变量:fp_Obs文件指针;输出变量:Time
3、double,时间(秒);Rhodouble[12],伪距(米);Markint[12],卫星号,“-1”表示此通道无卫星、无伪距。2.3最小二乘估计函数intLeastSquareEstimation(Y,A,P,m,n,X)功能:最小二乘方法求解观测方程Y=AX+ε,其中观测值方差阵的逆阵为P(也称为权阵),得未知参数X。成功返回“1”,失败返回“-1”(亏秩)。输入变量:Ydouble[m],观测方程自由项(米);Adouble[m×n],系数阵(无量纲),按第1行第1、2……n元素,5第2行……顺序存放;Pdouble[m],权矩阵对角线元素,0或1(无量纲);mint,观测值个数
4、;nint,未知参数个数;输出变量:Xdouble[n],未知参数(米)。原理:X=(ATPA)-1ATPY例:Y=[1,2,3,6],A=[1,0,0,0,1,0,0,0,1,1,1,1],P=[1,1,1,1],m=4,n=3。调用LeastSquareEstimation(Y,A,P,m,n,X),求得X=[1,2,3]。2.4计算卫星位置、速度函数intSatPos_Vel(Num,Time,SatPos,SatVel)功能:计算WGS84坐标系中卫星位置、速度。成功返回“1”,失败返回“-1”(无星历)。输入变量:Numint,卫星号;Timedouble,时间(秒)。(隐含引用
5、全局变量Ephemeris[32],星历数据结构体)输出变量:SatPosdouble[3],位置(米,WGS84);SatVeldouble[3],速度(米/秒,WGS84)。2.5伪距测量定位intPositioning(Time,Rho,Mark,Pos,dt)功能:由单一时刻伪距计算载体位置,并保存接收机钟面时、卫星位置、速度及载体位置于定位结果文件Position.dat中。成功返回“1”,失败返回“-1”(观测值数量不够,亏秩)。输入变量:Timedouble,伪距观测时刻接收机钟面时(秒);Rhodouble[12],伪距(米);Markint[12],卫星号,“-1”表示此
6、通道无信号;输出变量:Posdouble[3],载体位置(米,WGS84);dtdouble,钟差(秒)。3.全局变量说明LightVelocity字符常量,光速(米/秒),299792458;PI字符常量,圆周率,3.141592653589793;MU字符常量,地球引力常数(米3秒-2),3.986005e14;OMEGAE字符常量,地球自转角速度(弧度·秒-1),7.292115e-5;fp_Obs文件指针,观测数据文件;fp_Pos文件指针,位置结果文件。StructureEph_Str{Mark整型,标识,“1”有,“-1”无wn整型,星期数toc卫星钟差改正参考时刻(秒)5af
7、2卫星钟差改正系数(秒/秒2)af1(秒/秒)af0(秒)aode数据龄期deltan平均角速度改正(半周/秒)m0参考时刻平近点角(半周)e偏心率;rootaa1/2(米1/2)toe星历参考时刻(秒)cic(弧度)crc(米)cis(弧度)crs(米)cuc(弧度)cus(弧度)omega0准升交点赤经(半周)omega近地点角距(半周)i0轨道倾角(半周)omegadot升交点赤经变化率(半周/秒)idot轨道倾角