今天打电话请教一位通过采集双频GPS数据进行PPP解算能反演潮位的老师,下图是他们反演的潮位曲线
这个gps高程数据没有进行姿态修正,通过滤波消除了姿态对高程的干扰。
在知网搜索了相关文献,无验潮模式主要采用PPK方式,用于离岸80km范围内的水深测量。
在以前的文章GPS反演潮位修复方法,采用商用软件terrapos联合姿态和定位数据解算的结果如下:
从上图可以看出,高程跳动比较厉害,无法使用。如果仅使用定位数据进行解算呢,结果如下:
高程文件在excel里做一下粗差剔除和简单的滤波,得到的结果如下:
我们处理GPS方面的能力实在太弱了,总是想绕过去可总也绕不去,这次下定决心不饶了,直面问题。我们必须具备评估GPS原始数据的能力,使用开源或者商业软件处理GPS原始数据的能力。用必应搜索了一顿,有款叫RTKLIB的开源处理软件排名比较靠前,山科的周锋老师也在其上作了二次开发。他开发的软件的中文名字叫:非差非组合多系统GNSS精密单点定位软件,英文名字叫GAMP。这款软件的下载地址如下:
https://www.ngs.noaa.gov/gps-toolbox/GAMP.htm,
GAMP下载以后,按照其说明,通过如下命令运行里面的例子,注意修改gamp.cfg的路径使其与自己电脑一样。
gamp gamp.cfg
gamp.cfg
obs file/folder = 1 %(0:file 1:folder)
= E:\terraprj\PPP\mannual_GAMP\Examples\2017244
start_time = 0 2017/01/01 00:00:00.0 %(0:from obs 1:from inp)
end_time = 0 2017/01/01 23:59:30.0 %(0:from obs 1:from inp)
posmode = 6 %(0:spp 6:ppp_kinematic 7:ppp_static)
soltype = 0 %(0:forward 1:backward 2:combined-bf 3:combined-fb)
navsys = 45 %(1:gps 4:glo 5:gps+glo 8:gal 16:qzs 32:bds)
gnsisb = 1 %(0:off 1:time constant 2:piece-wise constant 3:random walk process 4:white noise process)
gloicb = 0 %(0:off 1:linear function of frequency number 2:quadratic polynomial function of frequency number
% 3:isb+icb every sat 4:isb+icb every frq)
minelev = 7.0 %satellite cut-off elevation (deg)
命令执行完成以后,得到了一大堆结果文件,其中有个.pos文件包含空间直角坐标XYZ,用OpenCoord将空间直角坐标转成大地坐标,然后转成平面投影坐标。
选取北坐标和高程坐标,去掉前100行(收敛),制作其曲线,见下图。
北坐标跳动区间为5cm
高程坐标跳动区间为15cm
文章开头那位老师用他们自己的软件帮我们解算了上图跳跃比较厉害的数据,结果如下:
根据解算的结果,他们判断这个数据有问题,而不是软件的问题,因为多个软件解算结果都不理想。至此我们总算明白了,反演曲线不好的原因是原始数据不行。
原始数据是船舶靠泊码头时测量的,那么在大洋中的效果如何呢?
terrapos中的软件设置见下图,采用CODE精密星历和时钟文件。
解算的高程结果如下:
从上图可以看出,数据质量仍然不行。
当时差分GPS-NavCom SF3050的原始数据也被记录下来,我们来看看它的处理效果如何。
从上图可以看出,差分GPS解算的高程曲线很不错,说明其原始数据质量不错。高程数据在excel中进行粗差剔除和简单的滤波以后会得到如下图的曲线。
上图是一个大地高的曲线,如果要得到基于平均海平面的高程,那么必须减去高程异常。