image.png

什么是GNSS

GNSS的全称是全球导航卫星系统(Global Navigation Satellite System).

它是泛指所有的卫星导航系统,包括全球的、区域的和增强的,如美国的GPS、俄罗斯的Glonass、欧洲的Galileo、中国的北斗卫星导航系统,以及相关的增强系统,如美国的WAAS(广域增强系统)、欧洲的EGNOS(欧洲静地导航重叠系统)和日本的MSAS(多功能运输卫星增强系统)等,还涵盖在建和以后要建设的其他卫星导航系统。

image.png

三边测量定位算法(Trilateration)

image.png

Trilateration(三边测量)是一种常用的定位算法:

已知三点位置 (x1, y1), (x2, y2), (x3, y3)
已知未知点 (x0, y0) 到三点距离 d1, d2, d3
以 d1, d2, d3 为半径作三个圆,根据毕达哥拉斯定理,得出交点即未知点的位置计算公式:

image.png

这样就可以算出来位置点的坐标.

在2维平面,一个固定点用已知的半径长确定一个圆,两个固定点用已知的半径确定两个点,三个固定点可以确定一个点。这个原理映射到3维,两个球相交确定一个圆,三个球相交确定两个点。远离地球的点舍弃,另一个点就是你的位置了。

但是实际上真正应用比这个复杂,首先就要想,原理上三颗卫星可以解决的问题问什么一定要4颗。因为前面的简单解释是已知卫星和接受机/使用GPS 的人)的距离。在实际应用中这距离是不知道的,这个距离需要去计算。就是常说的伪距(pseudorange)。

卫星定位的组成

卫星是有三个成分组成的分别是空间部分,控制部分和用户部分。

用户部分

image.png

只要能使用卫星定位的仪器都是用户部分,比如专业接收机,手机,智能手表等等能收到GNSS信号的都可以。

空间部分

image.png

最直接的就是天上的卫星了。这些卫星是在中轨道上运行,大概有20200km那么高。平均是6个平面,一个平面上有四个点,每个点上至少一个卫星,也就是说也许有多个。之前是是24颗卫星, 这种安排基本上全球大部分地区可以看到至少4颗卫星。

控制部分

image.png

这个分为三个,1个主要控制站,1个备用控制站,11个地面的天线,16个地面的监测站。主要用于跟踪,监测,接收和传输一些数据和命令。监测站的主要功能是当卫星从头顶飞过时,收集数据(载波和伪距)然后穿给控制站。

GPS

GPS是70年代规划,80年代实施,90年代运营,耗资300亿美元,仅次于阿波罗登月计划和航天飞机计划的美国第三大航天工程。其主要目的是为陆、海、空三大领域提供实时、 全天候和全球性的导航服务,并用于情报收集、核爆监测和应急通讯等一些军事目的。其次,也为民用、商用提供导航、定位、测速和授时等服务。1994年3月,全球覆盖率高达98%的24颗GPS卫星星座己布设完成。

数据格式

GPS 上电后,每隔一定的时间就会返回一定格式的数据,数据格式为:

$信息类型,x,x,x,x,x,x,x,x,x,x,x,x,x

每行开头的字符都是'$',接着是信息类型,后面是数据,以逗号分隔开。

GPS信息类型:

类型 解释
GPGSV 可见卫星信息
GPGLL 地理定位信息
GPRMC 推荐最小定位信息
GPVTG 地面速度信息
GPGGA GPS定位信息
GPGSA 当前卫星信息

GPGSV 可视卫星状态

标准格式:

$GPGSV,(1),(2),(3),(4),(5),(6),(7),…(4),(5),(6),(7)*hh(CR)(LF)

含义为:

  • (1)总的GSV语句电文数;2;
  • (2)当前GSV语句号:1;
  • (3)可视卫星总数:08;
  • (4)PRN码(伪随机噪声码)也可以认为是卫星编号
  • (5)仰角(00~90度):33度;
  • (6)方位角(000~359度):240度;
  • (7)信噪比(00~99dB):45dB(后面依次为第10,16,17号卫星的信息); *总和校验域hh 总和校验数:78; (CR)(LF)回车,换行。
    注:每条语句最多包括四颗卫星的信息,每颗卫星的信息有四个数据项,即:
    (4)-卫星号,(5)-仰角,(6)-方位角,(7)-信噪比。

GPRMC 最小定位信息

标准格式:

$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh

含义为:

  • <1> UTC 时间,hhmmss(时分秒)格式
  • <2> 定位状态,A=有效定位,V=无效定位
  • <3>纬度ddmm.mmmm(度分)格式(前面的0也将被传输)
  • <4> 纬度半球N(北半球)或S(南半球)
  • <5>经度dddmm.mmmm(度分)格式(前面的0也将被传输)
  • <6> 经度半球E(东经)或W(西经)
  • <7>地面速率(000.0~999.9节,前面的0也将被传输)
  • <8>地面航向(000.0~359.9度,以真北为参考基准,前面的0也将被传输)
  • <9> UTC 日期,ddmmyy(日月年)格式
  • <10>磁偏角(000.0~180.0度,前面的0也将被传输)
  • <11> 磁偏角方向,E(东)或W(西)
  • <12>模式指示(仅NMEA01833.00版本输出,A=自主定位,D=差分,E=估算,N=数据无效)

GPGGA GPS定位数据

标准格式:

$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*xx<CR><LF>

含义为:

  • <1> UTC 时间,格式为hhmmss.sss;
  • <2> 纬度,格式为ddmm.mmmm(第一位是零也将传送);
  • <3> 纬度半球,N 或S(北纬或南纬)
  • <4> 经度,格式为dddmm.mmmm(第一位零也将传送);
  • <5> 经度半球,E 或W(东经或西经)
  • <6> 定位质量指示,0=定位无效,1=定位有效;
  • <7>使用卫星数量,从00到12(第一个零也将传送)
  • <8>水平精确度,0.5到99.9
  • <9>天线离海平面的高度,-9999.9到9999.9米M指单位米
  • <10>大地水准面高度,-9999.9到9999.9米M指单位米
  • <11>差分GPS数据期限(RTCMSC-104),最后设立RTCM传送的秒数量
  • <12>差分参考基站标号,从0000到1023(首位0也将传送)。

GPVTG 地面速度信息

标准格式:

$GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh

含义为:

  • <1> 以正北为参考基准的地面航向(000~359度,前面的0也将被传输)
  • <2> 以磁北为参考基准的地面航向(000~359度,前面的0也将被传输)
  • <3> 地面速率(000.0~999.9节,前面的0也将被传输)
  • <4> 地面速率(0000.0~1851.8公里/小时,前面的0也将被传输)
  • <5> 模式指示(仅NMEA0183 3.00版本输出,A=自主定位,D=差分,E=估算,N=数据无效

GPGSA 当前卫星信息

标准格式:

$GPGSA,A,3,01,20,19,13,,,,,,,,,40.4,24.4,32.2*0A

北斗定位

参考

Trilateration三边测量定位算法GPS数据包格式+数据解析


http://www.taodudu.cc/news/show-5741320.html

相关文章:

  • 苹果系统地图定位服务器,iOS 系统地图实现及定位
  • 将lrc歌词整体提前或推迟
  • android 读取歌词.qrc,Unity读取lrc歌词并显示出来
  • Latex写作 图片或表格如何跨两栏排版
  • Word双栏格式下图片表格一栏排版 自定义位置
  • LATEX图片(子图)排版
  • 成都拓嘉辰丰:拼多多草稿箱怎样删除商品,草稿箱在哪
  • 拼多多搜索商品详情分析接口代码对接教程
  • 弘辽科技:拼多多商家上传宝贝的步骤及注意事项
  • 16S全长测序解密转基因玉米根瘤菌群落组成
  • 16s之稀释曲线绘制
  • SMURF-Science封面文章使用的16S新流程
  • 使用R语言获得16S物种丰度
  • 16S rRNA测序鉴定分析实验
  • java fit 16s_16s分析之差异展示(热图)
  • 影响因子14.65:16S全长测序+低丰度简化菌群,提供根腐病防控新视角
  • C#爬虫selenium webdriver使用火狐浏览器截取全屏并转成pdf
  • Python办公自动化之三,操作PDF
  • 究竟是多牛的微服务深度原理实践进阶PDF,竟让阿里换下了Dubbo
  • Java 处理PDF文档(一):页眉页脚、水印、背景、附件
  • pdf文件的分割使用工具
  • Ubuntu下命令行方式对PDF文件进行缩放、合并、拆分
  • JavaScript设计模式与开发实践pdf
  • 赋能 打造应对不确定性的敏捷团队 pdf_如何打造一支应对不确定的团队
  • Django 实现HTML转PDF 用通用视图编写PDF 并且让PDF支持中文
  • PDF Explained(翻译)第六章 文本和字体
  • mlc颗粒的m.2固态有哪些(多款MLC企业级SSD性能实测)
  • 组装电脑基础知识之固态硬盘
  • 固态硬盘的选购
  • SSD之颗粒

百度Apollo源码学习之定位系统介绍相关推荐

  1. 百度Apollo源码学习之Bazel编译介绍

    image.png 什么是Bazel Bazel是一个类似于Make的编译工具,是Google为其内部软件开发的特点量身定制的工具,如今Google使用它来构建内部大多数的软件.(怪不得看起来很像An ...

  2. 百度apollo源码学习(二)apollo中的工厂模式

    文章目录 一.什么是工厂 二. 简单工厂模式 UML类图 简单工厂模式结构 代码 一.定义抽象产品类AbstractProduct 二.定义具体产品类 三.定义工厂类和工厂方法 应用 扩展 一.扩展具 ...

  3. Apollo 5.5 源码学习笔记(五) | transform模块 | Apollo中的坐标系统详解

    本系列博客旨在记录自己在学习百度无人驾驶开源框架Apollo的心得和体会,欢迎大家阅读和点赞,并提出宝贵意见,大家相互学习,如需转载,请注明出处,谢谢! 文章目录 1.前言 2.车辆传感器布局 3.传 ...

  4. Apollo源码剖析学习笔记2

    Apollo 源码剖析学习笔记2 Talker-ListenerNode 目录中包含了 Node 对象.Reader 对象和 Writer 对象.Node 对象主要对应 Ros 中的 Node 节点, ...

  5. 【知其然,知其所以然】配置中心 Apollo源码剖析

    第2章 Apollo源码剖析 能力目标 能够基于Git导入Apollo源码 能够基于IDEA实现DEBUG分析APP创建 掌握Namespace创建过程 掌握Item创建过程 掌握灰度发布创建过程 1 ...

  6. php 第三方认证中心 框架,仿百度钱包源码红色优享钱包网贷借款源码/接入第三方认证,去后门修复缺陷ThinkPHP开发...

    源码说明 非常漂亮红色网贷借款源码,接入第三方认证,ThinkPHP框架,无加密,无授权,可封装APP 已集成支付.短信.查询借款,支持购买会员.签到,状态短信通知 看上去挺好看的这UI就发出来给大家 ...

  7. Spring源码深度分析一-Spring前世今生以及源码学习路线图

    大家好,我是王老狮,今天开始开新坑.作为JAVA程序员,Spring基本上是必备的技能,也是面试经常考核的技能,特别是大厂,Spring源码基本是必问的题目.但是很多同学看到源码就头疼,根本不知道源码 ...

  8. Opencascade源码学习之模型算法_TKO模块文件介绍

    Opencascade源码学习之模型数据_TKO模块文件介绍 1.TKO 1.BOPAlgo 2.BOPDS 3.BOPTools 4.BRepAlgoAPI 5.IntTools 1.TKO 1.B ...

  9. Opencascade源码学习之模型数据

    Opencascade源码学习之模型数据 1.模型数据 2.几何工具 1.插值和拟合 1.分析一组点 2.基本插值和近似 3.2D 插值 4.3D 插值 5.2D 拟合 6.3D 拟合 7.曲面拟合 ...

最新文章

  1. MySQL遇到Deadlock found when trying to get lock,解决方案
  2. 数控技能大赛计算机程序设计员,2018全国技能大赛–第八届全国数控技能大赛通知...
  3. Mysql 查看、创建、更改 数据库和表
  4. es5如何实现promise_彻底理解Promise对象——用es5语法实现一个自己的Promise(上篇)...
  5. Java LinkedList getFirst()方法与示例
  6. javascript Date对象
  7. phpstorm 的下载、安装与激活
  8. 高精度PSEnet文本检测在windows/linux运行教程
  9. Head First 设计模式 —— 装饰器模式与门面模式
  10. Writing udev rules
  11. Mujoco的关节与外力和驱动器
  12. 计算机进制算法在线,16进制计算(十六进制计算器在线)
  13. Solidworks 3D Onshape 3D 繪圖自學分享
  14. STM32Cube IDE环境安装
  15. 职业学校计算机教学总结报告,中职计算机教师教学工作总结(共6篇) .docx
  16. 生活不可能像你想的那么好,但也不会像你想的那么糟
  17. 拼多多怎么设置快捷回复
  18. 什么是操作系统虚拟机?
  19. html中怎样写渐变色代码,纯css简单几行代码实现颜色渐变效果 非常漂亮
  20. vscode多行注释,自定义按键多行注释

热门文章

  1. JPS(jump point search)寻路算法
  2. 【css实现table斜线表头】
  3. Java 循环删除list中指定元素
  4. linux格式化硬盘命令
  5. Hololens2-OpenXR开发(四)-坐标系同步
  6. Android进阶之路 - 存、取、读 本地 Json 文件
  7. [附源码]JAVA+ssm基于html5手机销售网站(程序+Lw)
  8. 《亲爱的,热爱的》告诉大家需要具备的网络安全意识
  9. 我也谈谈日新网社区运营的一些东西
  10. 经典的一套SQL面试题及答案