目录
- 写在前面
- 文件解读
-
- 观测(o)文件识读
- 气象(m)文件识读
- 广播星历(n)文件识读
- 计算基本原理
-
- 选择一个历元中的某个卫星
- 计算站星近似几何距离
- 误差改正
- 迭代求解测站位置
- 最小二乘求解及迭代终止条件
- 源代码及计算结果
-
- o文件读取函数
- m文件读取函数
- 计算用的脚本
- 总结
写在前面
本篇博文用于充实个人分类专栏“GNSS课程”,同时希望能够对有需要的朋友有所帮助。
教材采用《GPS测量原理及应用 第3版》徐绍铨等。
另有疏漏之处,还请评论指出。
文件解读
观测(o)文件识读
气象(m)文件识读
计算站星近似几何距离
迭代求解测站位置
源代码及计算结果
自编的代码分为3个部分,在之前卫星星历计算卫星位置的基础上,增加了O文件、M文件的读取函数readfileo.m和readfilem.m,以及计算测站位置的主脚本Prange_Positioning.m。使用者在主脚本中的“配置参数”区域,正确配置相关的参数后,运行此脚本即可得到结果。这些参数包括观测时刻的UTC时,测站的大地高,导航电文中电离层的Alpha和Beta参数,去头的n、o、m文件。需要注意的是,程序对于时间的查找除了n文件外,都是严格查找,也就是说,受限于m文件的观测时间间隔,观测时刻的分位只能是5的整数倍,秒位只能是0。经过相应的调试后,可以接受小范围的变动。
o文件读取函数
计算用的脚本

总结
这里不再详细介绍卫星位置计算的方法了,这部分详见这里。
本篇博文采用的编程语言是MATLAB,所使用的数据文件已放在链接资源里了,需要请自取。
另外,采用MATLAB的Appdesigner,编写了一个UI,同时改变了数据的存储结构,引入结构体来操作数据,减少与文件的交互,以减少计算时间,可以用来处理RINEX格式的文件。软件也会按需更新。资源请见这里。
最后,希望这篇博文对你有帮助。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!