图解GPS原理 为什么需要4颗卫星才能定位,而不是3颗

2023-05-16

转载https://blog.csdn.net/hugohong/article/details/43191597

GPS 是英文Global Positioning System(全球定位系统)的简称,而其中文简称为“球位系”。GPS是20世纪70年代由美国陆海空三军联合研制的新一代空间卫星导航定位系统 。

欧盟和欧洲空间局共同提出和组织实施的伽利略(Galileo)系统是全球第一个民用卫星导航定位系统。伽利略系统的配置、频率分布、信号设计、安全保障等导航定位服务特点,使得它与美国全球定位系统(global positioning system,GPS)相比,具有更高的效率和可靠性

北斗导航系统是我国自主研发的卫星导航系统。

GPS、伽利略导航系统、北斗导航系统都并列称为卫星导航系统。

假设t时刻在地面待测点上安置GPS接收机,可以测定GPS信号到达接收机的时间△t,再加上接收机所接收到的卫星星历等其它数据可以确定以下四个方程式:

  上述四个方程式中x、y、z为待测点坐标,Vto为接收机的钟差为未知参数,其中di=c△ti,(i=1、2、3、4),di分别为卫星i到接收机之间的距离,△ti 分别为卫星i的信号到达接收机所经历的时间,xi 、yi 、zi为卫星i在t时刻的空间直角坐标,Vti为卫星钟的钟差,c为光速。

  由以上四个方程即可解算出待测点的坐标x、y、z 和接收机的钟差Vto。

公式的理解 为什么需要引入第四颗卫星:

接收机的时间和卫星的时间都不是标准时间,都有误差。假设:标准时间是8:00,接收机时间是8:01,卫星是8:02,卫星发射电磁波到接收机的时间要5分钟。在标准时间8:00的时候,卫星以为时间是8:02,所以它发射一个信号“我是在卫星时间8:02发射信号的”。接收机将在(标准时间8:05接收到信号),但此时接收机是时间8:06,它以为现在时间是8:06。所以,接收机就这么计算8:06-8:02=4分钟,信号传播了4分钟,而实际上,信号传播了5分钟。

产生此误差的原因就是接收机和卫星用的不是同一时间。

 【(x1-X)平方+(y1-y)平方+(z1-z)平方】开方=光速 X 卫星1信号传播时间理想状态下,只需三个这样的公式变可得出xyz坐标,现实世界中,由于卫星和接收机时间的不统一,导致了信号传播时间的误差,造成的距离误差将是不可接受的。所以就需要引入标准时间的概念。 【(x1-X)平方+(y1-y)平方+(z1-z)平方】开方=光速 X    【(接收机时间-接收机钟差)-(卫星时间-卫星钟差) 】卫星坐标X1 y1 z1是已知的,光速、接收机时间、卫星时间也是已知的, 而卫星钟差可以通过卫星控制器或其他途径获得,所以卫星钟差也是已知的,未知的有接收机坐标x y z 和接收机钟差 4个未知数。 所以需要4个这样的公式,来求解这4个未知数。也就是说,需要4颗卫星,提供(x1,y1,z1)  (x2,y2,z2)  ( x3,y3,z3) ( x4 ,y4,z4)才能求解接收机坐标x y z。 所以为什么是4颗卫星才能定位,而不是3颗。

    这时候就有人说了,干嘛要四颗卫星呢,三颗不就够了吗?想想还蛮有道理的,三个球面,交汇于一点,不就可以定出接收机所在的位置了吗?但是实际上,GPS接收器在仅接收到三颗卫星的有效信号的情况下只能确定二维坐标即经度和纬度,只有收到四颗或四颗以上的有效GPS卫星信号时,才能完成包含高度的3D定位。这是为什么呢?

    原来,大家忽略了一件事情,那就是时间。先来看一颗卫星,它在一个规定的时间发送一组信号到地面,比如说每天8:00整开始发送一组信号,如果地面接收机就在8点零2秒收到了这一组信号,那么就是说信号从卫星到接收机的距离是电波花2秒能够跑到的距离,由于这颗卫星的位置和电波的速度已知,那么就可以肯定接收机就在以卫星为球心的一个球面上,那么再多测2个卫星的距离,就可以得到3个空间球,3个空间球的焦点只有2个,那么逻辑排出一个不在地球表面的,剩下的就是接收机的位置。这就是我们所想象的三颗卫星可以定位的情形。但是,这只是假象的情况,卫星和接收机的距离如此之近,以至于卫星和接收机的时钟必须完全同步和准确【而实际上卫星时间和接收时间是不统一的,所以需要引入标准时间,也就是(卫星时间-卫星钟差)(接收机时间-接收机钟差),多引入了一个未知数,需要多一个卫星坐标列方程才能求解】,否则距离偏差会很大。实际上,如果接收机这端不配备一个?原子钟的话,定出来的位置肯定差了个十万八千里。?原子钟的价格我也不太清楚,反正肯定是比你坐的汽车要贵了。所以,由于时间需要校准,这就需要四颗卫星。可以从方程里看到,时间都不是绝对时间,都是以卫星之间的钟差来计量的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图解GPS原理 为什么需要4颗卫星才能定位,而不是3颗 的相关文章

  • 传递给 onLocationChanged 的​​位置对象是否为 null?

    我有一个在我的应用程序中实现 LocationListener 的活动 并且我的 onLocationChanged 方法直到最近为止一直运行良好 由于某种原因 传递给该方法的 Location 对象为 null 我的问题是 为什么它是空的
  • 如何在 python 中创建自己的数据类型以便覆盖算术运算符?

    我目前正在使用 Python Numpy 处理地理 GPS 数据 喜欢它 并且我面临着计算由坐标对定义的地理点之间的距离的重复任务pn lon lat 我有一个这样使用的函数 dist geodistance p1 p2 它类似于线性代数中
  • 如何在 JavaScript 中查找到已知位置的距离

    在浏览器中使用 JavaScript 如何确定从我当前位置到另一个我有纬度和经度的位置的距离 如果您的代码在浏览器中运行 您可以使用 HTML5 地理定位 API window navigator geolocation getCurren
  • 如何停止位置管理器?

    不知道为什么 但有时 LocationManager 在关闭应用程序后仍然工作 我在一个 Activity 的 onCreate Methode 中调用 startGPS 只有一个 让我称之为 StartActivity protected
  • 使用 Android.Xamarin 查找纬度和经度

    我正在尝试在 Android Xamarin 中开发商店定位器应用程序 我的第一步是找到我所在位置的纬度和经度 但我的模拟器 设备屏幕没有显示任何内容 我有我的uses permissions set to
  • Android GPS 路由系统

    我正在开发一个 Android 应用程序 它可以定位用户 假设用户在路上 并且该应用程序将为用户创建最短路线 以便能够到达用户选择的目的地 定位用户不是问题 因为这里有一个 API http www vogella com articles
  • GPS/GIS 计算:根据运动/每小时预测未来位置的算法?

    寻找资源或算法来在导航应用程序中计算以下内容 如果我当前的 GPS 位置为 0 0 并且我以 15 英里 小时的速度前进 32 度 我如何计算 10 秒后我的位置 i e GPSCoordinate predictedCoord GPSCo
  • C#:GPS跟踪系统[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如何在 C net 中构建带有移动设备 带 GPS 的 GPS 跟踪系统 场景是 通过支持 GPS 的手机跟踪用户 服务工程师 这里没
  • 在带有校准点的地图上将经度和纬度转换为 X Y

    如果我有一张尺寸为 sizeX sizeY 的 jpeg 地图 以及地图上的一些校准点 X Y 经度 纬度 使用给定的经度 纬度对计算地图中相应 XY 点的算法是什么 这对我有用 没有那么多废话 int x int MAP WIDTH 36
  • GPS 坐标(以度为单位)来计算距离

    在iPhone上 我以十进制度数获取用户的位置 例如 纬度39 470920和经度 0 373192 也就是A点 我需要用另一个 GPS 坐标 同样以十进制表示 B 点创建一条线 然后 计算从 A 到 B 的线与另一个点 C 之间的距离 垂
  • Android 应用无法获取位置权限

    我的清单中有以下内容
  • 从 GPS 坐标获取城市名称

    我想从 GPS 坐标获取城市的名称 我可以使用 Google API 获取 GPS 点的详细信息 http maps googleapis com maps api geocode output parameters 输出是 XML 但我不
  • GPS 对比加速度计计算距离

    我正在尝试实现一个健身应用程序 可以在Android 中跟踪跑步速度和跑步距离 看起来我可以使用 GPS 或加速度计来计算这些信息 由于跑步者可能会将手机放在手里 放在肩膀上或放在口袋里 所以我的第一直觉是使用 GPS 获取位置并计算跑步速
  • 根据步行速度在 2 个 GPS 位置之间进行插值

    Problem 给定两个位置 L1 latitude1 longitude1 timestamp1 L2 latitude2 longitude2 timestamp2 以及可配置但恒定的移动速度 v 1 39 米每秒 例如 How can
  • C# - LINQ - GPS 纬度和经度的最短距离

    我有数据库 其中有带有 GPS 坐标的一流酒店 我想获得距离我选择的坐标最近的地方 我认为它应该看起来像这样 我在这里找到了很多示例代码 就像这样 var coord new GeoCoordinate latitude longitude
  • 如何从 Android 手机获取 GPS 数据?

    有没有办法将 Android 手机的 GPS 数据连接 USB 有线 到 PC 我目前正在使用基于 gpsd 项目的 GPSTether 应用程序 我正在寻找比该应用程序提供更多控制且错误更少的替代方案 另外 是否有另一种方法可以在不使用任
  • Android 查找 GPS 位置一次,显示加载对话框

    我正在编写一个应用程序 它需要用户的当前位置 lastknownlocation 不会很有帮助 并显示从数据库中获取的所有最接近的 项目 的列表 我已经找到了最近的项目 效果很好 但暂时只使用硬编码的纬度和经度位置 但现在是时候实现查找实际
  • 使用 iPhone 版 gmap 中的经纬度计算两个地点之间的距离 [重复]

    这个问题在这里已经有答案了 可能的重复 GPS 坐标 以度为单位 来计算距离 https stackoverflow com questions 6994101 gps coordinates in degrees to calculate
  • 如何创建在 React-Native 中检测自动位置的地图

    我已经在react native中创建了地图 参考https github com lelandrichardson react native maps https github com lelandrichardson react nat
  • Ruby on Rails:如何使用 TCP 套接字连接 GPS 设备

    ruby 2 3 0p0 2015 12 25 修订版 53290 x86 64 linux 轨道 4 2 4 我正在使用 cloud9 IDE 和 webrick 服务器 我的项目是实时跟踪GPS 我想使用TCP连接与GPS跟踪设备进行通

随机推荐

  • MBR&/BOOT和GRUB三者关系总结

    做了一个大自然的搬运工 介绍的不错 备份下 MBR是硬盘上的一个扇区 包含三部分内容 xff08 引导程序 分区表及分隔标识 xff0c MBR总计512字节 xff1b 其中引导程序最多占446个字节 xff09 xff1b 为什么需要这
  • 寄存器映射与直接操作寄存器

    一 存储器映射 与重映射 存储器本身不具有地址信息 xff0c 它的地址是由芯片厂商或用户分配 xff0c 给 物理 存储器分配 逻辑 地址的过程就称为存储器映射 xff0c 通过这些逻辑地址就可以访问到相应的存储器的物理存储单元 如果给存
  • html+js翻页时钟

    html 43 js翻页时钟 index html lt doctype html gt lt html gt lt head gt lt meta charset 61 34 utf 8 34 gt lt title gt html5带翻
  • 云计算的主要部署模式

    云计算与大数据 云计算的最终目标是将计算 服务和应用作为一种公共设施提供给公众 xff0c 使人们能够像使用水 电 煤气和电话那样使用计算机资源 云计算技术都是基于3种特殊的云计算服务模式 xff0c 它们都具有流行 有效 灵活 用户友好等
  • TP5 + PHPWord导出word文档中文出现乱码的问题

    场景 xff1a 项目需要将html页面转word文档 1 下载安装phpword插件composer require phpoffice phpword 2 安装成功在tp目录下的vendor会出现phpoffice文件夹 xff0c 说
  • 基于 Matlab/simulink的锂电池建模与仿真——复现论文《基于二阶EKF的锂离子电池SOC估计的建模与仿真》的仿真部分

    运用simulink实现该论文的锂电池建模仿真 1 模型分解1 1 SOC计算模块1 2 RC参数计算模块1 3 电压计算模块1 4 电流生成器 由Singal Builder模块生成 2 建模细节详解2 1 SOC OCV xff1a L
  • Qt使用记录

    Q amp A 1 错误 qt network ssl QSslSocket cannot call 解决 Qt5 12 4 Tools mingw730 64 opt bin下的libeay32 dll和ssleay32 dll拷贝到Qt
  • Keras的自定义lambda层去reshape tensor张量时model保存出错的解决办法

    背景 分割网络在进行上采样的时候我用的是双线性插值上采样的 xff0c 而Keras里面并没有实现双线性插值的函数 xff0c 所以要自己调用tensorflow里面的tf image resize bilinear 函数来进行resize
  • c++ 中 class 和 struct 的区别是什么

    xfeff xfeff C 43 43 中的struct对C中的struct进行了扩充 xff0c 它已经不再只是一个包含不同数据类型的数据结构了 xff0c 它已经获取了太多的功能 struct能包含成员函数吗 xff1f 能 xff01
  • Linux top命令的了解以及使用

    以root权限运行 top 命令后 xff0c 会以全屏的方式显示 xff0c 并且会处在对话的模式 操作实例 root登录之后 xff0c 在命令行中输入 xff1a top xff0c 回车 xff0c 即会以全屏的显示模式显示所有内容
  • 一键激活office,激活windows

    github地址 xff1a https github com massgravel Microsoft Activation Scripts 正文 xff1a Microsoft Activation Scripts MAS A Wind
  • Jupyter not connection to kernel 的解决方案

    不知道什么原因 xff0c 今天启动Jupyter Notebook发现不对经 xff0c 各种警告如 xff1a 内核没有连接什么的 xff0c 然后我试了试用spyder编写Python xff0c 结果一进去也是告诉我 error x
  • svm核函数的理解和选择

    特征空间的隐式映射 xff1a 核函数 咱们首先给出核函数的来头 xff1a 在上文中 xff0c 我们已经了解到了SVM处理线性可分的情况 xff0c 而对于非线性的情况 xff0c SVM 的处理方法是选择一个核函数 xff0c 通过将
  • list indices must be integers or slices, not tuple 解决方案

    解决方案 xff1a 用numpy里的array转化下 xff0c 转成元组 xff1a dataSet 61 np array dataSet 或者也可以将dataSet转化为矩阵 xff1a mat dataSet 两者都可行
  • 回归模型——树回归(理论方面的知识)

    一 xff1a 模型介绍 1 线性回归的薄弱处 xff1a 1 1 需要拟合所有的样本点 xff08 局部加权线性回归除外 xff09 但是当数据拥有众多特征并且特征之间关系十分复杂时 xff0c 构建全局模型的想法就显得太难了 xff0c
  • 二叉树遍历(图解)

    二叉树的顺序存储结构就是用一维数组存储二叉树中的节点 xff0c 并且节点的存储位置 xff0c 也就是数组的下标要能体现节点之间的逻辑关系 gt 一般只用于完全二叉树 链式存储 gt 二叉链表 定义 xff1a lchild data r
  • (hive) Execution Error, return code -101 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask解决方案

    解决bug思路 xff1a 出现这个问题说明你的mapreduce input fileinputformat split maxsize设置的太小了 解决方案 xff1a hive default gt set mapreduce inp
  • Ubuntu16.04 server配置记录

    1 安装vmtool 因为没有图形界面 xff0c 这里全部使用命令行操作 xff0c 虚拟机菜单点击安装vmtool工具后 xff0c 需要手动挂载 a mkdir tmp cdrom b mount dev cdrom tmp cdro
  • GCC的编译过程

    今天学习了gcc的编译过程 xff0c gcc是一个交叉平台编译器 xff0c 简单的说就是 xff0c 你可以在一个平台上编译出可以在另一个平台运行的代码 gcc的编译过程细分可以分成四个阶段 一 预处理阶段 预处理阶段有三个功能 有文件
  • 图解GPS原理 为什么需要4颗卫星才能定位,而不是3颗

    转载https blog csdn net hugohong article details 43191597 GPS 是英文Global Positioning System xff08 全球定位系统 xff09 的简称 xff0c 而其