首页 网站首页 商业信息 定位 查看内容

RTKlib相对定位学习笔记

私域运营 2022-12-18 21:56 10740人围观 定位

参考文献:

1.《GPS丈量与数据处置(第三版)》 李征航,黄劲松

2.《RTKLIB 软件结构及挪用方式》 丁 鑫,陶庭叶,陶征广,何 蓉 合肥产业大学 土木与水利工程学院,合肥 230009

3.《GPS相对定位的数额学模子》 魏子卿,葛茂荣


相对定位首要采用载波相位差分技术,其标准丈量形式为,一台接收机置于已知点,作为基准站来停止静态丈量,另一台接收机置于载体上,作为活动站来停止静态丈量。两台接收机同步观察不异的卫星,然后将两台GPS接收机的观察值停止组合处置,便可以获得活动站相对于基准站的坐标和速度。

一、相对定位整体框架

读一个大型法式首先要找到主函数,RTKlib 的主函数位于文件 rnx2rtkp.c 中,主函数中首要界说了一些变量的缺省值,比如定位处置选项、处理计划输出选项等。





postpos 函数首要分为 3 个部分:

第1 部分是翻开处置测段,包括读取卫星天线参数(readpcv)、读取接收机天线参数(readpcv)、读取分歧范例码观丈量硬件提早误差(readdcb)参数;

第2 部分是基准站处置,包括读取紧密星历(readpreceph)、活动站处置(exceses_r)、开释紧密星历(freepreceph)等;

第 3 部分是封闭处置测段,包括封闭大地水准面数据、封闭解状态文件。







活动站处置进程如图所示,包括挪用 execses 函数,履行处置测段,具体包括读取观察值和导航数据(readobsnav)、设备天线参数(setpcv)、读取陆地潮汐荷载参数(readdotl)、天线相位中心(antpos)、获得活动站/参考站的牢固位置(procpos)、翻开解状态文件(rtkopenstat)、写文件头到输出文件(output header)、翻开输出文件追加内容(openfile)、处置定位(procpos)、组合前向/后向解(combres)、开释观察值和导航数据(freeobsnav)。







处置定位进程如图所示,包括初始化 RTK结构体、输入观察值数据、紧密定位、输出解到输出文件、开释 RTK 结构体。

在处置定位中,首先要输入 1 个历元的观察值,然后挪用 rtkpos 函数停止紧密定位。该函数首要包括标准单点定位 pntpos 、紧密单点定位pppos 、相对定位 relpos 。

pntpos 函数计较接收机的位置、速度、钟误差;

pppos 函数操纵 1 台接收机获得高精度的定位成果;

relpos 函数将 2 台接收机的同步观察值停止组合处置,获得 1 台接收机相对于另 1 台接收机的坐标和速度。





相对定位 relpos ,如图所示,适用于 DGPS/DGNSS、Kinematic、Static、Moving-Base、

Fixed 5 种形式。

satposs 计较卫星位置和钟误差;

zdres计较活动站或基准站的非差残差项;

udstate 实时更新状态;

ddres 计较双差残差项;

filter 操纵卡尔曼滤波停止状态更新;

resamb_LAMBDA 估量整周模糊度解。

若定位形式是 Moving-Base,则除了利用标准单点定位估量活动站的位置/速度外,还需要利用标准单点定位估量基准站的位置/速度。

二、文件读取

1.观察值文件读取



文件头读取:

RINEX格式的文件头用于寄存与全部文件有关的全局性信息,位于每个文件的最前部,其最初一个记录为“END OF HEADER”。

文件头中,每一记录的第61~80列为该行记录的标签,用于说明第1~60列中所暗示的内容。文件头寄存有文件的建立日期、单元名、测站名、天线信息、测站近似坐标、观察值数目及范例、观察历元间隔等信息。







2.观察值文件的记录数据读取



文件的记录数据读取:

RINEX格式的记录数据紧跟在文件头的前面,在观察文件中寄存的是观察进程中每一观察历元所观察到的卫星及载波相位、伪距和多普勒等范例的观察值数据等。

在观察值文件中,所记录的载波相位数据的单元为周,伪距数据的单元为m。观察值所对应的时标(即观察时辰)是根据接收机钟的读数所天生的,而不是标准的GPS时,因此在该时标中含有接收机的钟差。



3.导航电文文件读取



文件头读取:

导航电文文件文件头的格式与观察文件头基底细同,但包括内容略有分歧。导航电文文件的文件头寄存有文件建立日期、单元名及其他一些相关信息,别的,还有能够会包括电离层模子的参数以及说明GPS时与UTC间关系的参数和跳秒等。

导航文件的文件头读取的函数挪用进程与观察文件文件头读取流程不异。

4.导航电文文件的记录数据读取



文件的记录数据读取:

导航电文文件中寄存的是所观察卫星的钟差更正模子参数及卫星轨道数据等。

GPS导航电文文件数据记录节中的内容为按卫星和参考时辰寄存的各颗卫星的时钟和轨道数据,每颗卫星一个参考时辰的数据占8行,第1行为卫星的PRN号和该卫星钟的参考时辰及其更正模子参数,第2~8行为该卫星的广播轨道数据。

导航文件的文件记录数据读取的函数挪用进程与观察文件文件头读取流程基底细同,只是在挪用最初一个函数时,导航电文文件挪用的是函数 readrnxnavb。



三、计较基准站位置和速度

求基站位置有三种方式,第一种是用伪距单点定位的方式求取,挪用的是avepos函数;第二种是间接从位置文件中读取,挪用的是getstapos函数;第三种是间接从rinex的文件头中读取。首要进修了操纵伪距单点定位的方式求取基准站接收机的位置。

由于观察文件是以历元的方式存取数据,所以在avepos中要逐历元挪用函数pntpos(pntpos.c)处置数据。

pntpos函数是处置单点定位的函数,该函数包括了卫星位置和钟差计较(satposs)、接收机位置和速度计较(estpos/estvel)等进程。



















































挪用datainden别离计较1、2、3、4网格点 tec:

假如穿刺点在网格内,利用 xy 偏向做双线性差值获得穿刺点的 tec;

假如穿刺点在网分外,选用间隔穿刺点比来的网格点的 tec 作为穿刺点的 tec。



四、计较活动站位置和速度

在静态相对定位中,参考站A的接收机牢固在基线向量已知的点上,活动站接收机是移动的,需要肯定其在肆意历元的位置。相对定位的处置进程,挪用的函数是 procpos(postpos.c.)。

在函数procpos中,首先挪用函数 inputobs(postpos.c)函数来输入每一历元的观察数据和星历数据,然后再挪用 rtkpos(rtkpos.c) 函数来停止紧密定位。

整体流程如图所示。



可是,仅从代码和流程上了解非常困难!

需要一步一步梳理,才能进一步了解其中的寄义!

下面和大师分享我的了解进程!

1.设备基准站的坐标

1.1 间接设备

1.2 按照avepos求得

2.pntpos单点定位求得移动站的近似状态,可以看做是初值



3.进入relpos停止紧密定位

3.1 satposs计较出卫星的位置和钟差

3.2 zdres计较出基准站的非差残差

按照rtklib的界说,求解非差残差的步调以下:

第一步:计较站星多少间隔;

第二步:计较卫星的方位角、高度角,并与高度停止角作比力;

第三步:剔除不介入导航的卫星;

第四步:用计较出来的站星多少间隔减去卫星钟差提早,并加上对流层提早和天线相位中心引发的误差;

第五步:计较载波相位和伪距的残差

为了便于后续推导公式,设基准站为B,假定和活动站配合观察了1、2、3号卫星,且都为有用卫星,利用单频。可以写出载波相位和伪距的非差残差:



4.udstate停止状态的更新

4.1 udpos按照先验状态方程更新移动站的状态

按照kalman filter,写出移动站的状态方程:



即:



带入由单点定位获得的移动站近似状态便可以获得下一个sample time的先验状态估值

4.2 udion采纳类似的思绪获得电离层的先验状态参数估值

4.3 udtrop 采纳类似的思绪获得对流层的先验状态参数估值

4.4 udbias对单差模糊度停止参数更新

4.4.1 停止周跳检测

4.4.1.1 采用detslp_ll来判定基准站和移动站能否存在周跳

4.4.1.2 采用detslp_gf_L1L2、detslp_gf_L1L5构建多少无关组合停止检验,假如当前历元的GF组合,与上一历元GF组合差值大于0.05,则以为有周跳

4.4.2 遍历一切的共视卫星,假如存在周跳(slip = 1),将模糊度置0,重新计较

4.4.3 遍历一切共视卫星,操纵载波相位和伪距计较站间单差模糊度(移动站—基准站)



利用载波相位和伪距的组合(载波相位—伪距/波长)获得单差模糊度的浮点解,是分歧历元状态下的单差模糊度

5.zdres计较基准站的非差残差

类似于计较基准站的非差残差计较,这里给出成果:



6.ddres计较双差,构成量测方程

6.1 遍历一切卫星

6.1.1 对移动站和基准站的电离层估量值求和取均匀值

6.1.2 别离估量移动站、基准站的电离层提早

6.2 遍历一切共视卫星,拔取高度角最高的卫星作为基准星,停止在站间单差的根本上停止双差,获得以下成果



下面停止线性化:



可以写成:



这就是kalman filter里面要用到的量测方程,明显H是随时候变化的,每一个历元H均纷歧样。是以可以写出量测方程的状态向量X的方差协方差矩阵:



7.kalman filter

按照前面的分析,我们有了一个移动站的状态方程和量测方程,别离对应一个“量出来的移动站状态成果”和“量出来的移动站状态成果”,这两个方程计较出来的移动站的状态都是不完全牢靠的,是以kalman filter的感化就是操纵这两个不太牢靠的成果计较出一个牢靠的成果,即在状态方程算出来的状态和量测方程算出来的状态中加以适当的权重,简单来说就是假如“算出来的移动站状态成果”不正确就更相信“量出来的移动站状态成果”,假如“量出来的移动站状态成果”不成信(方差太大)就更相信“量出来的移动站状态成果”,而这个相信的水平就是kalman gain(卡尔曼增益)。

回到相对定位里,按照rtklib的kalman filter,我们可以获得一个后验移动站状态:



R暗示丈量矩阵中的误差方差协方差矩阵,这个矩阵经过计较出基准站和移动站的非差残差求双差后求得。

至此,我们就获得了一个比力牢靠的移动站状态,其中包括收敛了的单差模糊度浮点解!!!

8.valpos 考证浮点解的有用性

9.resamb_LAMBDA模糊度的牢固解

刚刚举得例子里推导出来了若何用kalman filter计较获得单差模糊度,由于情形设备的比力简单,状态向量里的单差模糊度只要三个,现实上更多。

假定矩阵B为由前面步调解算出来的单差模糊度浮点解,那末要停止搜索模糊度是在最小二乘条件下停止的,即:



式中QB为B的方差协方差矩阵,B0为按照置信区间搜索出来的整数模糊度。

首先辈行降相关处置,目标是将以上量变更到新的空间:



然落后行以下处置:



最落后行模糊度的搜索:



有了对相对定位顶层逻辑的梳理把握,了解代码就相对轻易了一些。



五、利用成果

1.rtklib 代码编译

查阅相关材料,从网高低载了 Curtin University 的观察数据,连系导航电文,在 VS2022 情况下实现了其中一个接收机(CUTA00AUS)的单点定位:



2.相对定位成果分析

按照 Curtin University 的观察数据,连系导航电文,设备 CUT00 站为基准站,别离计较 CUTA0 站、 CUTB0 站的载波相位相对定位成果。





2.1 计较 CUTA0 站





2.2 计较 CUTB0 站





3.接收机天线相位更正对相对定位的影响

rtklib 中在 kinematic 形式下支持接收机天线相位中心更正,以CUTB0 站为例,查阅 TRM59800 天线相位中心有关材料,在ENU三个偏向上更正别离为0.66mm、0.19mm、86.54mm。更正前后计较成果以下:



4.改变基准站位置对相对定位的影响



5.利用消电离层组合对相对定位的影响



高端人脉微信群

高端人脉微信群

人脉=钱脉,我们相信天下没有聚不拢的人脉,扫码进群找到你所需的人脉,对接你所需的资源。

商业合作微信

商业合作微信

本站创始人微信,13年互联网营销经验,擅长引流裂变、商业模式、私域流量,高端人脉资源丰富。

精彩点评

相关推荐

1元开通测试!华为“高精度定位”功能上线

1元开通测试!华为“高精度定位”功能上线

11月29日,华为系列手机把鸿蒙系统更新到最新版本后,取消了“辅助定位设置”的选项,

定位理论5大坑,你踩过几个?

定位理论5大坑,你踩过几个?

编辑导语:有些“定位方法论”充分利用了读者的“简化冲动”,可能我们在市面上接受到

一篇文章,读懂定位理论 | 到底什么是定位?

一篇文章,读懂定位理论 | 到底什么是定位?

定位二字,不断出现在各类圈层的朋友口中。可这个词到底是什么意思,或许没有太多人会

教你如何使用Ip地址进行精准定位

教你如何使用Ip地址进行精准定位

首先,看到这个标题,很多人可能没由的一楞,Ip地址?地位?Ip地址怎么定位?是的,没

安卓Android手机如何利用软件修改系统定位

安卓Android手机如何利用软件修改系统定位

工具/原料:1、Fake Location APPFake Location APP功能介绍:1.以ROOT环境运行,不易

虚拟定位/ Fake Location

虚拟定位/ Fake Location

某东有时候会联合发些地域性的消费券,像什么“云南消费券”、“东莞消费券”,app定

老司机揭秘手机定位技术,这下彻底明白啦!

老司机揭秘手机定位技术,这下彻底明白啦!

今天我们所处的移动互联网时代,手机成了每个人的生活标配。这些手机里,安装了形形色

原神:太香了!水神少女形象定位曝光,海灯节全新角色登场 ...

原神:太香了!水神少女形象定位曝光,海灯节全新角色登场 ...

果然是亲女儿,每次复刻的武器池都香到让人流口水​。​有点小失望,绫华皮肤竟然是四

定位凉凉了?定位为什么会定死?

定位凉凉了?定位为什么会定死?

定位凉凉了?定位为什么会定死?作者/李兴随着当今营销生态的变化,品牌呈现出全新的

百度地图宣布切换为优先运用国产北斗系统进行定位

百度地图宣布切换为优先运用国产北斗系统进行定位

IT之家 9 月 30 日消息,近日,百度地图发布了北斗卫星导航系统应用的最新进展,北斗

有什么好用的手机号码定位APP推荐吗?

有什么好用的手机号码定位APP推荐吗?

常有不少杠精说位置定位类APP打着亲情的招牌,实际上在侵犯个人隐私。但是,工具本身

手机关机拔卡仍可定位,大数据行程卡,揭开信息无处遁形的面纱

手机关机拔卡仍可定位,大数据行程卡,揭开信息无处遁形的面纱

你相信吗?将手机关机拔卡之后依旧可以定位,它就是一个隐形的GPS定位工具,放在以前

用手机就能知道你的位置,摄像头也能带定位功能,偷听偷窥神器网络热销

用手机就能知道你的位置,摄像头也能带定位功能,偷听偷窥神器网

楚天都市报11月14日讯(记者 周丹)近日,“有人利用软件通过手机非法定位他人位置”

手机号怎么定位对方在哪?分享个手机定位找人小窍门,误差仅10米

手机号怎么定位对方在哪?分享个手机定位找人小窍门,误差仅10米

生活中,有很多时候都会用到手机定位找人这种找人的方法,那么,手机号怎么定位对方在

华为上线高精度定位服务!收费仅需1元,为何网友还说不厚道?

华为上线高精度定位服务!收费仅需1元,为何网友还说不厚道?

近日,有媒体报道称,华为在会员服务中心中新增了一项全新的功能——“高精度定位”,

手机定位很简单,一张微信照片就能定位对方的位置,真的涨知识了

手机定位很简单,一张微信照片就能定位对方的位置,真的涨知识了

在日常生活中,相信有不少的朋友时时刻刻想要知道自己的另一半去了哪里?可是,自己又

这可能是把产品定位讲得最透彻的一篇文章了

这可能是把产品定位讲得最透彻的一篇文章了

产品定位,归根到底是用户定位、场景定位、价值定位、价格定位4大块。想要一款产品最

品牌定位,抢占用户心智第一步

品牌定位,抢占用户心智第一步

为了更好地经营品牌,以及更好地瞄准目标群体、向用户传递品牌价值,品牌需要做好自身

谈谈华杉对定位理解的5个误区

谈谈华杉对定位理解的5个误区

编辑导语:前几天,华与华董事长华杉围绕《定位》这本书,提出了对定位理论的5个质疑

如何做好个人定位?

如何做好个人定位?

随着粉丝经济的增长,越来越多人意识到个人IP的高价值,很多人开始有打造个人品牌的意

商业洽谈 文章投递 寻求报道
电话咨询: 15924191378
关注微信