rtklib的载波相位双差部分 |
您所在的位置:网站首页 › 基线测量误差怎么算 › rtklib的载波相位双差部分 |
运行和调试
调试和运行rtklib自带的rnx2rtkp项目 main–>postpos–>execses_r–>execses_b–>execses execses函数进入rtklib的实际定位流程,前面的函数多是读入文件和设置的一些有效性判断??。 execses读入观测数据和导航电文:readobsnav 读入天线相位中心误差:setpcv–>searchpcv(通过卫星号和时间(接收机只通过时间)在pcvs_t结构体pcvss(卫星)、pcvsr(接收机)中查找对应的pcv(天线参数)) 读入海水负荷潮汐误差模型参数:readotl 计算基站位置:antpos(可选postype:1-使用单点定位平均值作为基站坐标,2- 从基站pos文件里读,3-从rinex文件头读取,似乎与rtklib软件界面有所不同,软件界面:平均值、在界面中输入给定的基站坐标),一般情况下有坐标信息就直接给定基站坐标,没有则使用平均值。 open solution statistics:没进去 写输出文件头outhead:(一般是.pos格式)的文件头(定位模式、误差模型选择,输入文件,基站坐标等信息) 判断滤波是forward、backward、combined后进入procpos函数–>每个历元调用rtkpos函数 单点定位单点定位流程和函数解析 相对定位算法和对应代码解析 detslp_ll 函数中LLI失锁标识符的存储方式 rtkposnr基站卫星数,nu流动站卫星数 单点定位计算流动站位置判断:单点定位(return)、精密单点定位(进入pppos解算)、相对定位模式都需要进入relpos相对定位relpos relpos相对定位算法在此实现输出y矩阵:先存载波后存伪距【卫星1:载波(nf个频率);伪距nf个频率 卫星2:……】 时间预测ustateudstate函数解析,站间单差 与模糊度(即相位偏移量)无关的待估计状态量的时间预测: 若dynamics模式开启,则状态量中有速度和加速度,需要根据时间间隔和转移矩阵进行时间预测 dynamics模式关闭,位置直接等于单点定位结果,没有速度和加速度时,x(k+1)=x(k),相当于不需要时间预测,每个历元的位置初值等于单点定位结果 udbias模糊度状态量(站间单差模糊度)的时间预测 整周模糊度解算resamb_LAMBDA固定模糊度为什么要用双差:单差模糊度里面还有很多误差没有消除,不一定具有整数特性,尤其是卫星钟差的影响,双差消除了大部分误差,整数特性更好。 ddmat ddmat求得D矩阵与X相乘得到的双差模糊度与双差残差不对应,只是第一颗无失锁&无周跳&高度角>最小高度角的卫星和其他卫星相减,并不是参考星的模糊度和非参考星相减。 /* single to double-difference transformation matrix (D') */ /*卡尔曼滤波解算时,x状态量中是单差模糊度,y=D'*x,通过D矩阵转换为双差模糊度*/ D=zeros(nx,nx); if ((nb=ddmat(rtk,D))双差*/ matmul("TN",ny, 1,nx,1.0,D ,rtk->x,0.0,y );//y=D'*x matmul("TN",ny,nx,nx,1.0,D ,rtk->P,0.0,DP);//DP=D'*P matmul("NN",ny,ny,nx,1.0,DP,D ,0.0,Qy);//Qy=DP*D /* phase-bias covariance (Qb) and real-parameters to bias covariance (Qab) */ for (i=0;i |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |