李鹏杰
基于Visual Studio 2013调试RTKlib 2.4.3源码(续)
2022-1-29 00:07
阅读:2263

以“基于Visual Studio 2013调试RTKlib 2.4.3源码”中建立的RTKlib工程为基础,本文直接给出调试rtklib/PPP源码中,编译器设置及源码中几处bug的修复方法。

1、在项目文件夹中新建brdc、igs、rinex和tables等文件夹,用以存放GNSS数据处理过程中,所需的观测文件、星历文件和其他依赖文件。

image.png

2、在调试中设置命令参数,如下(文件路径根据实际情况进行修改):

-x 3 -k PPP.conf -ts 2021/10/03 00:00:00 -te 2021/10/03 23:59:30 -o jfng.pos F:\rtklib_b34\rinex\jfng2760.21o F:\rtklib_b34\brdc\brdc2760.21n F:\rtklib_b34\igs\wum21780.sp3 F:\rtklib_b34\igs\wum21780.clk

image.png

3、在预处理器定义中,开启BDS、GLO、GAL系统和日志文件打印的宏定义;

image.png

4、修复源码中读取sp3-d格式精密星历错误以及精密星历间隔异常的问题;

原码:

image.png


修改后:

image.png

精密星历间隔异常问题:

image.png

image.png

源码修改:

image.png

5、在处理BDS-3观测数据中,发现程序读取的BDS-3卫星只有B1I频点伪距、载波等观测量。该问题可通过改变源码rtkcmn.c中B2I和B3频点观测量读取顺序进行修复,具体如下:

修改1:

image.png

修改2:

image.png

6、解决源码中变量初始化问题;

原始:

image.png

修改:

image.png

7、对于源码中伪距单点定位(SPP)中,无法通过卡方检验;

解决方法:

image.png

8、修改ppp.c文件中的static void udclk_ppp(rtk_t *rtk)函数;

image.png

注:上述修改仍存在不足之处,发现问题欢迎交流。谢谢!


转载本文请联系原作者获取授权,同时请注明本文来自李鹏杰科学网博客。

链接地址:https://wap.sciencenet.cn/blog-3486472-1323154.html?mobile=1

收藏

分享到:

当前推荐数:0
推荐到博客首页
网友评论0 条评论
确定删除指定的回复吗?
确定删除本博文吗?