对于新手而言,RTKLIB本身的功能完全能够满足你们的需求;而且最好的参考资料就是RTKLIB MANUAL,介绍的很全,很细,包括怎么使用,每个模块的功能甚至对于代码所用的模型都有介绍;但是对于英文差或者是没有太多GNSS基础的人士来说,无疑Manual并不是一个好的参考资料;我在网上查找RTKLIB相关的资料时,同时也发现了一些科普性质的网页,在此推荐给大家。

一、demo

首先,作者给出了一个demo,教给大家如何使用RTKLIB进行RTK定位,包括配置文件、数据等;

RTKLIB源码和exe下载地址:

RTKLIB: An Open Source Program Package for GNSS Positioning

其中最新版本的源码在GITHUB上面下载:

Tomoji Takasu

RTKLIB手册/manual:

RTKLIB: Documents

数据集和操作指南:

RTKLIB: Tutorial and Demonstration for RTK

网络中对以上数据如何使用的中文介绍:RTKlib使用介绍

二、RTK/RTD/PPP/PPK定位方式介绍:

RTD:伪距差分

RTK:载波差分

PPP/Precise Point Positioning:精密单点定位,只需一个接收机;译为精密单点定位,属于单点定位也叫绝对定位,精密单点定位是指利用载波相位观测值以及由IGS等组织提供的高精度的卫星星历及卫星钟差来进行高精度单点定位的方法。

PPK/Post Processed Kinematic:事后定位;是一种与RTK相对应的定位技术,这是一种利用载波相位观测值进行事后处理的动态相对定位技术,而RTK是实时的。

WAAS/Wide Area Augmentation System,译为广域增强系统,是由美国运输部(DOT)和联邦航空管理局(FAA)联合开发的一个系统,主要应用在航空领域,如飞机的GPS导航等。

SBAS/Satellite-Based Augmentation System,中文意思是广域差分增强系统,如果不知道这是什么意思,那么说星基增强系统相信大家都知道。广域差分增强系统也就是星基增强系统。

关于星基/地基增强系统可以通过产品来了解:

1、中国精度/Atlas atlas

2、全球精度

3、天音计划

比较好的知识网站:

千寻知识课堂

北斗视频

三、如何利用RTKNAVI实现PPP/RTK/RTD定位:

关于RTKNAVI,INPUT中,输入数据类型做一个介绍,如下:

Rover Type里面有 :
Serial(串口),设备通过串口连到电脑;
TCP Client流动站数据吐给RTKLIB原始观测值;走的是TCP协议
TCP SERVER流动站数据是由RTKLIB去拿;走的是TCP协议
NTRIP Client和TCP Client类似,不过走的是Ntrip协议
File,用于没有流动数据站,就一些原始观测数据集,是放在文本里的,那就选这种。

使用Rtklib进行PPP定位和RTK差分定位

RTKLNAVI使用教程

四、如何利用RTKPOST实现PPP/RTK/RTD定位:

1、采用BIN的方式,基于RTKLIB目前的库函数进行定位解算;

2、根据RTKLIB的源码,进行修改,完善模型,进行任意系统、频点的定制化解算;

RTKLIB单点定位处理流程之一(postpos/后处理)

RTKLIB源码——如何在VS2017中配置、调试

在VS配置RTKLIB中,常见错误汇总:

(1)C/C++下预处理器 里面我们添加了

(配置属性 ->C/C++ -> 预处理器-> 预处理器定义-> 编辑)

_CRT_SECURE_NO_WARNINGS
_WINSOCK_DEPRECATED_NO_WARNINGS

(2)C/C++下的附加包含目录 里面我们添加了

(配置属性 ->C/C++ 常规-> 附加包含目录-> 编辑)

【.\src】

.\     表示项目文件所在目录之下的目录。                   ..\     表示项目文件所在目录向上一级目录下的目录。        ..\..\   表示项目文件所在目录向上二级目录之下的目录。       都是针对项目文件所在目录而言,用于定位其它文件的路径位置。

(3)连接器下的附加依赖项 里面我们添加了

(配置属性 -> 链接器 -> 输入 -> 附加依赖项)

winmm.libws2_32.lib

补充:

通过上面的设置,我们可以发现,我们大多操作的是[C/C++]下的配置选项,而同样,在[VC++]配置选项下,

同样有[包含目录],作用几乎与[C/C++]下面的[附加包含目录]一样,我们首先了解【包含目录、库目录、附加包含目录、附加库目录、附加依赖项区别】

VC++目录:

包含目录:寻找#include<xxxx.h>中的xxxx.h的搜索目录

库目录:寻找.lib文件的搜索目录

C/C++:

常规->附加包含目录:寻找#include<xxxx.h>中的xxxx.h的搜索目录(每一项对应一个文件夹XXXX,文件夹中包含了编译时所需的头文件,使用时直接#include<XXXX>即可)

链接器:

常规->附加库目录:寻找.lib文件的搜索目录

输入->附加依赖项:lib库(C++的库会把函数、类的声明放在*.h中,实现放在*.cpp或*.cc中。编译之后,*.cpp,*.cc,*.c会被打包成一个.lib文件,这样可以保护源代码)

故,包含目录和附加包含目录(库目录和附加库目录)的区别:

包含目录:修改了系统的include宏的值,是全局的;

附加包含目录:用于当前项目,对其他项目没有影响。

(库目录和附加库目录的区别同上)

进而可知包含目录和附加包含目录(库目录和附加库目录)的区别主要在于全局还是当前,那么当需要对某工程添加这些目录时,通常情况下,都是在附加包含目录和附加库目录中添加的。

补充这些是因为,笔者刚开始编译RTKLIB库时,头文件的包含路径都是添加在[VC++/包含目录]下的,当时惊奇的发现,即使笔者一开始在[VC++/包含目录]下包含的是“绝对路径”,工程也是可以编译通过,并可以移植到任何地方的。但了解到以上以后,建议我们一般使用C/C++和Linker下面的设置,而一般不建议使用VC++下面的设置。
 参考:VS2012编译RTKLIB——GNSS定位开源库

五、数据/产品下载网址:

1、中国卫星导航系统管理办公室测试评估研究中心

2、香港大地测量服务

3、rtkexplorer

4、怎样才能下载到精密星历和 gnss 的观测数据?

5、国内外IGS数据及产品下载网站

6、GPS广播星历和精密星历的下载

六、对RTKLIB代码分析比较好的博客/网址:

1、GPS/北斗

2、WHU-学渣

3、 RTKLIB/BNC

4、RTKLIB源码解析(一)——单点定位(pntpos.c)

5、这个博客有多个专栏,可以关注下!

https://blog.csdn.net/Pro2015

6、李英冰的个人主页

7、神秘的卫星导航世界:你到底有什么宝藏会议!

参考:

详解RTK,RTD,SBAS,WAAS,PPP,PPK,广域差分等技术之间的关系与区别

【GNSS】星基与地基增强系统

RTKLIB 开源代码之科普快速入门网络资料产品/数据下载相关推荐

  1. matlab 写入 MYSQL_阿里开源MySQL中间件Canal快速入门

    前言 距离上一篇文章发布又过去了两周,这次先填掉上一篇秒杀系统文章结尾处开的坑,介绍一下数据库中间件Canal的使用. 「Canal用途很广,并且上手非常简单,小伙伴们在平时完成公司的需求时,很有可能 ...

  2. ​HealthKit开发快速入门教程之HealthKit数据的操作

    ​HealthKit开发快速入门教程之HealthKit数据的操作 数据的表示 在HealthKit中,数据是最核心的元素.通过分析数据,人们可以看到相关的健康信息.例如,通过统计步数数据,人们可以知 ...

  3. python初学者代码示例_Selenium 快速入门笔记和代码示例(Python版)

    链接 文档链接: 安装 selenium 模块和 Chrome 浏览器驱动 步骤: 安装 Selenium 模块: pip install selenium 下载浏览器驱动(下载即可,无需安装,使用时 ...

  4. 开源分布式中间件 DBLE 快速入门指南

    2019独角兽企业重金招聘Python工程师标准>>> 环境准备 DBLE项目资料 DBLE官方网站:https://opensource.actionsky.com 可以详细了解D ...

  5. 开源性能测试工具JMeter快速入门(一)

    目录 一.JMeter简介 二.JMeter功能介绍 三.JMeter脚本 四.关于JMeter小提示 一.JMeter简介 1.定义 JMeter是Apache组织开发的基于Java的压力测试工具. ...

  6. 快速入门网络爬虫系列 Chapter16 | 爬虫性能提升

    Chapter16 | 爬虫性能提升 一.基础简介 1.任务调度 2.线程与进程 2.1.进程 2.2.线程 2.3.线程与进程的联系 2.4.线程与进程的区别 3.多线程 3.1.多线程的原理 3. ...

  7. Android开源框架之Dagger快速入门

    文章目录 一.Dagger是什么? 二.Dagger的使用 2.1 实现目标 2.2 准备工作 2.3 添加Dagger依赖 2.4 @Inject注解的双层含义 2.5 @Component注解 2 ...

  8. 开源性能测试工具JMeter快速入门(二)

    目录 一.JMeter简介 二.JMeter功能介绍 三.JMeter脚本 四.关于JMeter小提示 三.JMeter脚本 1.测试计划 测试计划是JMeter进行测试的起点 ,是其他JMeter测 ...

  9. 如何快速入门网络基础知识(TCP/IP 和 HTTP)

    前言 在写之前,先给这篇文章做一个明确定位,读完这篇文章后,希望你能够: 对于计算机网络有初步的认识和了解,了解一些经典专业术语,如三次握手.四次挥手.DNS解析的含义. 了解一些应用层协议,如传统的 ...

最新文章

  1. 分享python os.system一点心得
  2. 【摩天好课推荐】数字时代职业生涯规划
  3. 致研究者的一封信 Duane A. Bailey
  4. java知识回顾_Java7 –回顾
  5. C语言中要改变循环语句的流程可以使用的语句有哪些
  6. 发送邮件 (Send Email)
  7. 销售面销五个最基础步骤步骤_3个步骤,可提供强有力的反馈
  8. 解决ora-00054 Oracle锁表问题
  9. mysql 设置utf8mb4_mysql配置utf8_mb4
  10. 用于线程间的同步与互斥-信号量sem
  11. SQL 2008镜像配置
  12. java8新增特性一:lambda表达式
  13. 阶段性PJ某软件APK
  14. html动态图片怎么设背景,微信8.0状态背景视频怎么设置?状态视频动态背景图设置教程[多图]...
  15. steam服务器维护6月28,绝地求生6月28日更新到几点 吃鸡更新维护公告
  16. 顺序表基本操作(完整)
  17. Windows系统中文版切换英文版教程
  18. Tensorflow2.0 自定义网络
  19. 太极英语笔记-前传语法-代词
  20. BAT的“江湖地位”毋庸置疑,但互联网公司这些奇葩绰号,你知道吗?

热门文章

  1. 国内专业的HR软件品牌与供应商简介
  2. 4种数据分析基础方法,终于有人讲明白了
  3. 软件生命周期的基本任务
  4. python在线执行源码_1.2 在线云编辑器:有网络,就能学Python
  5. 华为手机如何升级鸿蒙系统_华为手机可以进行升级版鸿蒙系统,赶紧看看你的手机可不可以!...
  6. 剑三重制版怎么同步插件_实现剑网3正式服与体服共享插件方法
  7. mysql自然连接和等值连接,SQL技巧:等值连接与自然连接的区别
  8. 如何用matlab画剪力弯矩,[参考]ANSYS中弯矩、剪力图的绘制.docx
  9. 分子医学有哪些最新发表的毕业论文呢?
  10. 企业网盘市场期待大爆发,联想能否“六连庄”?