PPP精密单点定位GAMP(一)

周锋老师的GAMP是一款非常优秀的PPP定位开源程序,将rtklib中某些多余的函数、代码简洁化。

学习配置文件

配置文件可以设置我们解算的模式、参数处理,相当于我们窗口信息用文本存储下来obs

# GNSS data Analysis software for Multi-constellation and multi-frequency Precise positioning (GAMP) options

obs file/folder     = 0   %(0:file  1:folder)
                    = D:\2017244\cut02440.17o
obs file/folder     = 1   %(0:file  1:folder)
                    = D:\2017244\test

obs file可以以文件形式、也可以用文件夹形式进行打开 1、代表文件夹形式打开,所有定位需要的文件可以存储在1下设定的test文件夹。0、代表打开单一的文件,需要具体的文件名。

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)
start_time          = 1    2017/01/01  03:00:00.0       %(0:from obs  1:from inp)
end_time            = 1    2017/01/01  23:59:30.0       %(0:from obs  1:from inp)

start_time、end_time:启止时间 0、代表从观测文件中直接读取,1、代表从配置文件中读取比如从三点到下午十一点,时间可以自己设置。

posmode             = 6                     %(0:spp  6:ppp_kinematic  7:ppp_static)

posmode表示以什么形式进行定位 0、表示标准单点定位 6、精密单点定位(动态处理模式)7、精密单点定位(静态处理模式)6与7的区别:如果我们的测站静止,变形监测,控制点我们就可以选7,用很多数据结算一个xyz,精度高。6代表载体是动态的,比如车载、船载。

soltype             = 0                     %(0:forward  1:backward  2:combined-bf  3:combined-fb)

soltype:0、表示前向滤波,1、表示后向滤波,2、表示先后向再前向,3、表示先前向再后向

0可以当作实时处理,拿到一个数据就处理一个数据,不会用到往后数据。比如我们有0点到24点的数据文件,但是解算到1点,只会用到0点到1点的数据,不会用到1点01秒的数据。

后处理可以选择2、3这种平滑的方法、为了提高精度,刚开始其实对于精密单点不是太准确的,前一个小时或者半个小时,数据不是太精确,实际使用会出现问题,如果用2或3这样结合的方法,可以使整个时间段数据变好。一般不需要事后处理0就可以了。

navsys              = 4                     %(1:gps  4:glo  5:gps+glo  8:gal  16:qzs  32:bds)

navsys:导航系统 1、GPS 4、glo 如果需要处理多个数据加起来就可以。比如1+4就是gps glo 如果要处理所有系统就是 1+4+8+16+32

gnsisb              = 1                     %(0:off  1:time constant  2:piece-wise constant  3:random walk process  4:white noise process)

gnsisb;系统偏差 处理两个系统,他们的时间系统是不统一的,还需要估计系统间偏差。0、表示不估计1、表示随机常数 2、分段线性常数。比如0到1点是常数,3点到4点是常数,将每个时段内看成常数 3、随机游走 4、白噪声。选择的时候其实可以参看周峰老师在《gps solution》上的一篇论文。需要和精密星历产生的方式对应上,与相关的机构有关,但是差异不是特别大。

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)

gloicb:卫星钟偏差,只有处理多频的时候会用到、三频及以上。双频和单频都遇不到,因为我们的精密钟差用得是双频、两个特定频率,如果用3、4频数据会多出频率,兼容性会有一点影响,偏差无法模型化。

minelev             = 7.0                   %satellite cut-off elevation (deg)

minelev:这个是卫星高度角,7度就可以了

maxout              = 3

maxout:代表如果连续三个历元不能搜索到,代表断开了,重新在断开的位置初始化

sampleprc           = 0                     %(sec)
sampleprc           = 30                     %(sec)

sampleprc:设置数据采样长度。比如我是1秒1秒的数据,如果设置为30秒,则会在每三十秒上采样进行计算,这个数据文件就会变得稀疏。如果文件是每三秒的采样,你设置为1秒,程序依旧会按照文件的30秒采样进行计算。

inpfrq              = 2                     % the number of processing frequencies

inpfrp :代表双频率,如果是三频就设置为3频

ionoopt             = 5                     %(0:off  1:brdc  2:IF1  3:IF12  4:UC1  5:UC12  6:ion-tec)

ionoopt:电离层参数选项,选择电离层参数是如何处理的。0、关掉不估计 1、广播星历计算电离层3、无电离层组合 4、UC估计电离层、单频估计电离层参数5、双频非差非组合形式,估计电离层参数 6、精密电离层改正产品去做,电离层格网。 在rtklib里面没有非差非组合,周峰老师在gamp里加入了非差非组合。 如果这里选择非差非组合,在下面选择了电离层白噪声估计其实就是等于无电离层组合的效果。

ionopnoise          = 1                     %(0: static  1: random walk  2: random walk (new)  3:white noise)

ionopnpise: 如何估计0\静态 12、随机游走 3、白噪声

ionconstraint       = 0                     %(0:off  1:on)

ionconstraint:电离层约束,如果我们对电离层进行估计,但是拥有一个很好的电离层数据就可以对其进行优化,相当于最优估计中的条件优化。有外部电离层新息进来,提高解的精度和PPP收敛时间。

tropopt             = 3                     %(0:off  1:saas  3:ztd-est  4:ztdgrad-est)

tropopt:对流层处理方法 0、关掉不估计 1、saas方法 干延迟、spp需要 2、天顶对流层延迟 4、对流层梯度 相当于对流层的变化率

tropmf              = 1                     %(0:nmf  1:gmf)

tropmf:投影函数,卫星到接收机路径相当于倾斜的,估计对流层是垂直方向,投影到倾斜方向

tidecorr            = 7                     %(0:off  1:stl  2:otl  4:ptl  7:stl+otl+ptl)

tidecorr:潮汐改正 stl固体潮 otl海洋潮汐 ptl 极潮  一般选7全部加在一起,如果没有相应的文件,程序会自动省略。

cycleslip_GF        = 1  0.00               %threshold values for geometry-free (GF) cycle-slip detection (m)
cycleslip_MW        = 1  0.00               %threshold values for Melbourne-W��bbena (MW) cycle-slip detection (c)

cycleslip_GF:周跳探测,一般就是GF、MW两种方法进行周跳探测 1、代表打开,0.00代表可以自设一个预值

errratio(P/L GPS)   = 100.0                 %measurement error ratio between pseudorange and carrier phase observations
errratio(P/L GLO)   = 100.0
errratio(P/L BDS)   = 500.0
errratio(P/L GAL)   = 100.0
errratio(P/L QZS)   = 100.0

代表伪距和相位的载噪比,系统间也要比较,程序这里认为北斗精度比其他低,也可以设为100

errmeas(L)          = 0.003                 %the precision of carrier phase observations (m)

相位观测值精度为三个毫米

prcNoise(AMB)       = 1.0e-07               %process noise for ambiguity parameters (m/sqrt(s))
prcNoise(ZTD)       = 1.0e-04               %process noise for tropospheric zenith total delay (ZTD) parameters (m/sqrt(s))
prcNoise(ION)       = 4.0e-02               %process noise of random walk for slant ionospheric delay parameters (m/sqrt(s))
prcNoise(ION_GF)    = 1.0e-03               %process noise of random walk (new) for slant ionospheric delay parameters (m/sqrt(s))

参数过程噪声 AMB模糊度接近0 ZTD频率普密度 ION电离层 ION_GF新随机游走方式

其实没有规定哪种效果好,要根据自己的需求设置。

outdir              = result
output              = 21                    %(sum),0:off,1:on
     pos            = 1
     debug          = 1
     pdop           = 1
     elev           = 0
     dtrp           = 0
     ifamb          = 0
     wlamb_no       = 0
     wlamb_yes      = 0
     gf             = 0
     amb_cs         = 0
     resc1          = 0
     resp1          = 0
     resc2          = 0
     resp2          = 0
     resc3          = 0
     resp3          = 0
     stec           = 0
     isb            = 0
     ibm            = 0
     ifb            = 0
     ippp           = 0

结果输出 result 文件 读取21行的文件 1代表打开 0代表关闭

  • 27
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 24
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值