“定位”就是测定位置。“卫星定位系统”这个词听上去给人感觉很生硬也很复杂,换成GPS(Global Positioning System,全球卫星定位系统)这个说法,想必大家就不陌生了。GPS 传感器在车载导航系统和智能手机上也有所应用,在除工程师之外的人群中也有着很高的知名度。并且想必各位也知道,GPS 是一款利用人造卫星测量位置的传感器
前面说的还是作为电子零件的传感器,不知不觉地,现在话题竟上升到宇宙层面了。那么就索性一起来思考一下这浪漫的GPS 的机制。说到宇宙层面大家可能有点犯怵,不过只要有初中程度的数学知识就足以理解GPS 定位的基本原理,所以不必担心。

GPS 的结构

首先,如果大家想借助GPS 的力量,则需要专用的“接收器”。接收器的功能不同,其尺寸和价格也不同。小到用在智能手机上的小接收器,大到带有精密的土地测量功能的接收器,可谓是一应俱全。因为接收器是接收无线电波用的,所以还能够把接收器分解成天线,以及解析无线电波的装置。这里就不往深处讲了,不过请大家记住,接收器中装有一台能够知道现在时刻的“时钟”。

GPS 是由不少于24 颗的人造卫星组成的,这些卫星无时无刻都围绕着地球旋转。基础轨道是由24 颗人造卫星负责的,事实上用于GPS 的人造卫星约有30 颗左右,第25 颗及以后的卫星则用于提升可靠性和精确度。

还有一个重要角色大家可不能忘了。那就是从地面上监测卫星状态的“监控站”。监控站是GPS 的一个重要的构成要素,它负责确认轨道,修正卫星时刻的偏差。GPS 原本是美国政府为了军事目的而配备的,当然现在也仍然为美军所用。

要注意的是,GPS 接收器并不会向卫星发射信息,它毕竟只是一台用来接收卫星发来的无线电波的设备。正因如此,不管有多少人使用GPS,也不会出现GPS 被挤爆的现象。

可想而知,如果有24 颗用于GPS 的人造卫星在绕着地球周围旋转,那么有一半都在地球的内侧飞着。而剩下的12 颗中可能有差不多一半刚好在绕地平线飞行。这样一来,通常能观测到的人造卫星最多也只有6 颗左右。

话说回来,在这些卫星发射出的无线电波中,都含有什么样的信息呢?由GPS 人造卫星发射的无线电波与手机和Wi-Fi 一样,都包含刻意生成的数据。下面两条信息尤其重要。

●发射无线电波时的准确时刻
●卫星在宇宙空间中的位置

第一条是准确时刻,这无疑是GPS 最重要的要素。

第二条是卫星的位置。

GPS 定位法

用一句话来概括,GPS 定位就是“寻找球的交点”。

你可以估算出人造卫星所在的轨道离你有多远。这又是怎么一回事儿呢?

GPS 接收器里是内置有“时钟”的。那么人造卫星发出的无线电波里包含着什么样的信息呢?里面包含有“发射无线电波时的准确时刻”,也就是说接收器知道“无线电波从卫星飞过来用了多长时间”。因为用时间乘以速度就可以求出距离,所以,根据无线电波的传播速度(光速:2.99792458×108 m/s)就可以求出接收器与卫星之间的距离。这样一来就可以把你跟接收器的位置缩小为“以卫星为中心画的圆周上的某一处”了

当然光这样是确定不了位置的。大家在智能手机的地图应用和车载导航上应用的GPS 显示的不是“一条线上的某一处”,而是清晰的一个点(尽管可能存在误差)。这里就需要用到“球的交点”这一思路了。

2 颗人造卫星离接收器的距离是各不相同的,所以两个圆的大小(半径)也不同。这两个圆周表示的是你(接收器)可能所在的位置。那么当然,你实际所在的位置就是两个圆周的交点处。因为从
地球上来看,其中一个交点的位置刚好跟人造卫星的位置相反,所以就算有两个交点,也不难判断出哪个才是你的当前位置。

从人造卫星的角度来看,可以推测出接收器的位置在球面的某处。用2 颗人造卫星时,接收器的所在区域就被缩小到两个球相交而成的圆上,如果再加1 颗人造卫星,所在位置就是圆周和球面的交点,其可能范围就缩小到了两处。跟二维平面的例子一样,因为其中一个点位于卫星的另一侧,所以能够判断出哪个交点才是接收器的所在位置。

从上述也就可以知道,接收器和卫星差别很大。人造卫星的时钟显示时刻永远都是精确的,而接收器的时钟却并非如此。这就需要使用多颗卫星的数据进行计算。

从GPS 到GNSS

 GPS:Global Position System 全球定位系统

GNSS:Global Navigation Satellite System 全球导航卫星系统

GPS 说到底只是卫星定位系统的名称之一,使用的是美国人造卫星。现在除了GPS,还存在着各种各样的卫星定位系统。这些卫星定位系统的统称是GNSS,其中美国版的系统叫作GPS。

除了GPS 以外, 著名的GNSS 还有俄罗斯的GLONASSA

GLONASS 的起源能够追溯到苏联时代。跟美军开发GPS 的目的一样,当时的苏联政府对GLONASS 的定位是:用于导弹制导等方面的具有高精确度的位置测定系统。苏联政府就是基于此定位逐步整顿GLONASS的。相传20 世纪90 年代,苏联已经发射了数量相当多的人造卫星。苏联解体后,GLONASS 就由俄罗斯联邦政府接管。不过因为没能进行充分的维护,GLONASS 失去了它原本的价值。

像这种支持多种GNSS 的情况就叫作“支持GNSS” 或“多重GNSS”。除此之外,还有欧盟的Galileo中国的北斗等能在世界范围内使用的卫星定位系统。

事实上现在的很多智能设备都是支持多种gnss协议同时配置的

多种gnss协议的意义在于:

大家手里的智能手机和移动电话上或许已经配备支持多种GNSS 的接收器了。如果装有这种接收器,那么即使只有一颗GPS 卫星在我们的正上方,也有可能通过把这颗卫星跟GLONASS 卫星或Galileo 卫星相结合,来保证卫星的个数在4 颗及以上。

【物联网】23.物联网开发之感测系统 - GPS(GNSS)相关推荐

  1. 视频教程-用Java从零开始开发一个物联网项目-物联网技术

    用Java从零开始开发一个物联网项目 多年的产品设计和开发经验,带领团队完成多个知名产品.历任多家大型公司的Java架构师,对知名框架的源码均有深入研究.拥有IT一线开发.教学10多年的实战经验,能充 ...

  2. 未来物联网全栈开发 --JavaScript or Python?

    版权声明:本文为博主杜锦阳原创文章,未经博主允许不得转载,如有侵权将依法追究其法律责任. 目录(?)[+] 先来说说 Javascript 再来说说 Python 未来谁是王者 未来物联网全栈开发 - ...

  3. 【华为出品】物联网全栈开发实战营第2期来啦!送海思开发板

    物联网一直在改变我们生活的方方面面.可穿戴设备有助于监控我们的偏好.习惯和健康状况.智能家居设备可提高家居的舒适度.安全性和便利性.城市利用连接的数字设备收集的海量数据(数十亿个)来改善城市规划.制造 ...

  4. 【华为云技术分享】LiteAI四大绝招,解锁物联网智能设备AI开发难关

    [摘要] IoT设备中嵌入AI能力实现产品的智能升级,已经是AIoT行业发展的重要通道,那怎样才能实现AIoT = AI + IoT呢?如何将AI模型塞到小小的IoT设备里,让它可以轻松运行起来呢?成 ...

  5. 物联网全栈开发实战系列文章汇总(共865篇,持续更新-2023.05.02)

    物联网全栈开发实战(共865篇) 文章目录 物联网全栈开发实战(共865篇) 1.Arduino单片机系列 1.1 Arduino开发实例(包含各类传感器驱动.通信实例.DIY实例,共114篇) 1. ...

  6. 探索最佳物联网全栈开发之道 | 附 PPT 下载

    作者 | 苏宓 责编 | 苏宓 微信公众号ID | csdn_iot 万物互联时代,随着国外的谷歌.微软,国内的阿里.华为.百度等诸多行业巨头纷纷入局,物联网迎来的新的浪潮,将更多的商机及机遇呈现出来 ...

  7. 一天掌握物联网全栈开发之道 | 附 PPT 下载

    万物互联时代,随着国外的谷歌.微软,国内的阿里.华为.百度等诸多行业巨头纷纷入局,物联网迎来的新的浪潮,将更多的商机及机遇呈现出来,无数创业者及开发者纷至沓来,希望从中可分一杯羹.然而在庞大的物联体系 ...

  8. 《物联网 - 机智云开发笔记》第1章 机智云平台快速入门

    机智云官网 1.1机智云与GoKit3简介 机智云为开发者提供物联网设备的自助开发工具.后台技术支持服务.设备远程操控管理.数据存储分析.第三方数据整合.硬件社交化等技术服务,也为智能硬件厂家提供一站 ...

  9. 基于TCP/IP协议的物联网安卓应用开发基础教程(Android Studio开发)

    [华为云IOT物联网论坛外部版主:中华小能能] 第0章 简介 大家好,在上上上期发布的教程中,教大家如何利用Android Studio开发出一款接入华为云物联网平台并调用相关API完成设备属性查询. ...

最新文章

  1. 从 AlphaGo 到具有人类智慧的 AI 究竟有多远?François Chollet 有了一些新想法
  2. 微波人体感应模块 24G 24.125g 感应开关微波传感器模块
  3. Linux USB 驱动开发(五)—— USB驱动程序开发过程简单总结
  4. unity调用普通java类_Unity中C#和Java的相互调用实例代码
  5. layui 隐藏工具栏打印按钮_PDF如何打印?为什么点打印没反应?
  6. 富丽的SUSE Linux 10.3(1)
  7. 启动项 mysql命令大全_mysql常用命令
  8. FPGA时序约束设计经验总结
  9. AI大牛Jerry Kaplan:AGI?没有技术和工程基础
  10. linux添加一块硬盘分区,centos6中添加一块新的硬盘并分区的方法介绍
  11. OSI/RM体系结构
  12. 8个顶级云安全解决方案
  13. 计算机网络规划与设计
  14. 史上最简单的 GitHub 教程
  15. 应对CentOS 停服,麒麟信安迁移方案已就绪
  16. 数字高程(移动曲面)拟合(C++)
  17. 剑指offer-丑数(Java)
  18. API+段子+美图+未来的视频+关注+python
  19. iOS 语音合成支持后台和锁屏情况
  20. 称为超级计算机,哪台机器被称为世界上最快的超级计算机?

热门文章

  1. java-IO流-搜索含java字符的文件问题
  2. [LeetCode-java实现]3. 无重复字符的最长子串
  3. Tornado实现多线程、多进程HTTP服务
  4. vue项目运行后页面一片空白
  5. 家用宽带搭建个人服务器(二)
  6. [每日一题]14:用54张不同的扑克牌构成牌堆,发给3个玩家。
  7. 如何在一夜之间获得成功:我「从无到有」的 5 年 [英文版]
  8. 关于MD服装大师制作后导入到SP中的设置相关问题
  9. excel表格两个表格合并
  10. linux mysql 进程查看工具_linux查看正在运行的进程(如何在Linux中查看所有正在运行的进程)...