原由

在公众号后台,以及我个人知乎,收到了多位同学的需求;同时在和一些同学交流的时候,发现很多时间都花费在不需要重点关注的知识点上。

所以想着以我个人的视角,如何从零开始入门GNSS算法。

如果从研一算起,我在GNSS数据处理方向也有大约九年的经验,其中PPP/RTK都有实际工程经验。希望抛砖引玉,各位大佬都能分享自己的经验和代码。

受限于个人水平,如有错误,请不吝批评。

目标

①熟悉GNSS的基本算法,单点定位和相对定位(RTK)。

②可以自行阅读RTKLIB源码,初步入门GNSS算法。

内容说明

不会系统的介绍GNSS的基础知识,只会推荐和标注重点;

大概分为三个推文:

第一个,也就是本篇,通过标注书籍的重点章节,快速的了解GNSS数据处理所需要的基础知识和架构。

第二个,从论文上来加深GNSS基础知识,会从大佬的学位论文来对GNSS算法的知识架构进一步完善。

第三个,则会结合RTKLIB,标注哪些算法逻辑需要看,哪些代码逻辑可以稍后看,哪些逻辑不需要关心。

如何使用本系列进行学习

依据教材标注的都是需要关注的知识和方向。

依据我标注的重点章节,系统的学习到底需要哪些知识,才能完整的理解GNSS的知识框架。

我选择的教材肯定不是最好的,它只是一个指示作用。尽信书不如无书(字面意思)。

如果一些知识点不理解怎么办

不理解,那就多看几本教材,互相印证;上网看其他人写的博客,他山之石,可以攻玉;找同行交流,找懂的人交流,别人的一句话可能就令你醍醐灌顶;切忌闭门造车。

初学者很大的一个问题,就是知识架构不够系统,遇到问题压根不知道如何去定位问题。所以你需要建立一个相对完备的知识架构,你需要去和别人交流。

以下是正文:

我会以《全 ~球 导航! 卫星~系统原~理—— GPS、格洛~ 纳斯和 伽利 略系 统》这本书的目录作为切入点,会逐个章节进行标注。

选用这本书的原因,是因为我手头的书也就这本知识相对新一些。虽然是十年前的书,但作为简单的初级入门,已经可以了。毕竟有些基础知识,永远不可能过时。

另外一本书就是武汉大学的《G PS!测 量!!与数 据! 处理》,我手中的这本书是第二版,太老了,现在应该出到第四版了。两本书可以对照着看,基础知识点都是相同的,只是部分表述上可能存在差异。

标注分为三个等级 重要、一般和不用关注。

其中红色框中,是最重要的知识点,是必须要搞明白的章节,我会解释为何必须要搞明白。

黄色框中的,可以学习作为补充知识,或者后续再进行学习。

未标注的,基本和GNSS算法相关性不大,或者可以作为后续的后续再进行学习。


​第一章的其他小节,我没有标注。仅简单了解GPS的整个系统,基本已经足够了,有个大概概念就可以。



​第4.8章节,如果有对卫星星历解码有需求的,可以重点看此章节。

其他章节都是关于信号捕获的或者星历的一些知识,多看一些知识肯定没有坏处,让你更深刻的去了解信号是如何产生的,但此部分需要较多的通信知识背景,理解起来比较困难。而且对于GNSS数据处理没有太大的关系。



7.1节介绍了GNSS时间系统,GNSS的中的GPS时间/BDS时间与其他时间系统之间的关系,是肯定要掌握的知识点。

GNSS中的各种参考坐标系,其实我们主要用的是地球坐标系,即7.2.2和7.2.3介绍的,而且基本都是在直角坐标系和大地坐标之间进行转换。

而站心坐标系,则主要是为了评估定位的精度,即在ENU方向的误差分量。

至于7.3中卫星轨道的计算,看看也行,反正公式各种开源代码都已给实现,在前期没必要搞的很明白。

7.5节则是一个比较令人迷糊的知识点,因为我们使用的是地心地固坐标系,而卫星发射信号和接收机收到信号时的参考框架因为地球自转的原因存在差异。

8.1节则重要介绍了观测值的生成,即我们从接收机拿到的观测量是怎么来的,对于我们整体理解GNSS会很有帮助。

而8.2节则介绍了观测量中包含的各种误差,理论上来说这部分应该很重要,但因为RTK的站星双差处理,大的误差基本都已被消除,不能被消除的,你其实也没太好的手段对其进行处理。

其实对于GNSS中的误差,如果想要搞得更明白,可以去阅读一些精密单点定位方向的博士论文,会有更清晰的认识。关于博士论文的推荐,我会放在下一个推文,欢迎持续关注。



​这一页到了最实际的地方,即如何组方程,如何利用观测值去估计出我们需要的状态量,正如我以前写的一系列的关于单点的教程,其实基于双差定位的RTK技术在一定程度上比单点还简单,如果不考虑模糊度,它只需要考虑三个位置状态参数。

9.1.1节肯定是重点关注的对象,这关系到如何将非线性的距离转换成线性可估计的状态量,如果看不明白,可能需要加强高等数学的学习。

9.1.2节最小二乘也是要重点关注的对象,光看教材可能还是不太理解,建议上知乎看一些大神对最小二乘通俗理解的介绍。

9.1.3和9.1.4可以结合起来看,这就涉及到了GNSS数据处理中最简单的例子,csdn上也有一些不错的博文,可以互相印证学习。

8.3和9.3中的双差部分,看看就好了,理解理论与原理。大部分知识有些老旧。

其中的双差部分,看其单个系统如何组双差,系统之间的组双差不需要看,也不必看。

但我希望从推荐的这本书中学习到的是原理层面的知识,其中的一些关于经验性的介绍,比如9.4.4节中的一些关于选参考卫星的方法,比如不同系统选择同一个参考卫星,简单了解就可以了,没必要深究。



另外关于GLONASS的知识一律不建议关注,在现有卫星系统如此多的情况下,在仅民用领域,我的建议是放弃GLO系统,仅BDS、GPS和GAL三个系统已经完全足够。

如此挑挑拣拣,其实一本书需要看的内容并不多,即使重点标注的章节,也没必要完全搞明白,如果一个知识点,已经不在阻碍你往更深层次的学习,那可以先放一放。或者不要拘泥于一本教材,多看一些,或者看一些本方向的博士硕士论文。网上的博文可以作为参考,但不建议作为学习主线。

重点还是以教材和学位论文为主。下一个推文我会介绍几篇硕博学位论文,学位论文的研究要比教材前沿,教材一般多年才更新一次。

公众号

有时会将代码 或者资源放在个人公众号上,有问题,在公众号后台回复,也回答的比较快一些,欢迎关注 GNSS和自动驾驶

其他相关文章链接汇总

GNSS算法学习系列教程 - 文章列表_梧桐Fighting的博客-CSDN博客

小白如何学习GNSS(一)相关推荐

  1. React Native小白入门学习路径——五

    React Native小白入门学习路径--五 序 "哦天呐!" 这句话成了我在实验室的口头禅, 老师可能觉得我们都是大神吧,都还在看着基础就给布置了那么多任务:写一个RN的TDD ...

  2. 零基础小白如何学习UI设计

    0基础学员小白想学习UI设计,一共有三个步骤,分别是准备阶段,了解阶段和学习阶段. 准备阶段 一般来说一个零基础学员想要学习UI设计,就得先准备好软件 只有下载好了软件我们才能进入下一步的学习,目前U ...

  3. Arduino小白的学习历程

    Arduino小白的学习历程 例7 温度报警器 作为一名刚接触Arduino的小白,觉得温度报警器这个东西特别新鲜,先把它的效果描述一下: 效果一:打开串口监视器(至于怎么理解串口监视器,我来说说自己 ...

  4. 新手小白开始学习verilog(学习方法有点歪门邪道的,大佬勿喷( ̄▽ ̄)“)

    新手小白开始学习verilog(学习方法有点歪门邪道的,大佬勿喷( ̄▽ ̄)") #一. 编译环境安装 我用的是Quaters,不会装的话我推荐正点原子的教程爱学习的万能B站 ##二. 基本知 ...

  5. 小白前端学习流程【爱创课堂专业前端培训】

    对于零基础非科班的同学来说,一个良好的前端学习流程和学习误区是需要我们去规避和计划的,爱创课堂目前专注于前端培训,总结了以下几点,给大家一个参考. 在开始学习之前你需要做到以下5点: 第一:需要达到什 ...

  6. 小猿学python_小猿圈详解小白如何学习Python网络爬虫

    人工智能发展的今天,现在很多企业也都在学习python技术开发,但是真正会的却不是很多,特别是很多都喜欢爬虫,因为可以爬取一些自己喜欢的内容,那么对于小白的话该如何学习python爬虫呢?下面小猿圈P ...

  7. 找到了!宝藏公众号合集,新媒体运营小白必须学习

    新媒体运营公众号不用关注的多,小白多关注对自己且又能学习到知识的,是最方便不过了,这方面我有经验,一天忙忙碌碌,也只有晚间休息的时候,属于自己的时间,看看公众号内容,对自己慢慢提升. 一.热点追踪类 ...

  8. 小白深度学习入坑指南

    小白深度学习入坑指南 小白深度学习入坑指南 写博客的初衷适合的人群 理论篇 说明 数学 CV ML DL 优化 实践篇 linux python 深度学习框架 框架学习 硬件配置 软件环境配置 常见的 ...

  9. 小白量化学习(4)基本面选股与股票池

    小白量化学习(4)基本面选股与股票池 选股一般有多种方式,传统方式有基本面选股,技术指标选股.目前还有量化分析选股,深度学习选股等等. 一.股票基本面数据获取 我们使用tushare股票数据,做一个基 ...

最新文章

  1. 文凭-决定的人生成败?下
  2. pandas内容像日期的数据如何变成真DataTime,并赋予时间类似的操作
  3. python定时器timer_python通过线程实现定时器timer的方法
  4. mysql 数据库dbhelp_C# VS连接数据库DBhelp
  5. Important table for SEGW
  6. 408最后计算机网络题库,2021考研计算机统考408专业基础综合题库
  7. urban数据集_JUST技术|CK实现时序数据管理
  8. 关于那些表单的验证码
  9. TCP通信之获取本机IPV4地址
  10. 问号和点运算符是什么? 在C#6.0中意味着什么?
  11. 司徒正美--前端招聘与前端卖身的困境
  12. android+背景虚化,android背景虚化
  13. cesium使用primitives加载模型数据,点击事件
  14. jme-旋转的双子星
  15. 信息安全网络安全到底有哪些资质?被大家追逐。。。
  16. LAME应用教学--HIFI级MP3制作之路
  17. Curio for Mac(头脑风暴思维导图)
  18. Python如何解决火狐浏览器不弹出下载框直接下载
  19. Widows 注册表
  20. 历年高考省录取分数线 API 接口

热门文章

  1. 3年没写线段树题了,今天帮小学弟水了棵线段树,想不到现在依然有看到Accepted的鸡冻哈哈哈
  2. Attention-based Multi-Level Fusion Network for Light Field Depth Estimation
  3. 妹子帮个忙!嫁给程序员好吗?
  4. 山东专升本计算机网络(一)
  5. 如何批量新建文件夹?
  6. 微信小程序引爆朋友圈的秘密
  7. 实盘api交易接口C#调用DEMO示例
  8. 实习入职第二十天:从setRecyclerListener看listView回收机制
  9. 春招攻略:我是怎样进入字节跳动做技术的
  10. 毛阿敏湖南春晚搭档曾轶可 走音忘词遭吐槽