GPS定位基本原理简析
位置服务已经成为越来越流行的技术,并将成为未来所有移动设备的标准功能(智能手机、手持电脑等)。在定位导航技术中,精度最高、应用最广泛的自然是GPS。我们通常所说的GPS定位是指卫星定位,但实际上卫星定位是GNSS(全球导航卫星系统)定位,GPS定位只是GNSS定位的一种。 网络上有很多介绍GPS原理的专业资料,本文尝试从程序员的角度出发,以通俗易懂的方式为了程序员的理解,我们简单介绍一下GPS定位的基本原理。当然,本文不涉及具体的开发技术。
1. GPS定位数学模型
之所以先介绍数学模型,是因为这个数学模型可能是程序员比较关心的问题。当然,这个模型只是程序员根据一些GPS数据总结出来的简化模型。细节可能与实际不符。如需了解具体详情,请参阅专业GPS讲解资料。
GPS定位实际上是通过四颗已知位置的卫星来确定GPS接收器的位置。
如上图所示,图中的GPS接收器为当前待确定的设备,卫星1、2、3、4为本次定位所用的四颗卫星:
(1) Position1、Position2、Position3、Position4分别为四颗卫星的当前位置(空间坐标),已知;
(2) d1、d2、d3、d4为四颗卫星到待定位GPS接收机的距离,已知;
(3)Location 是要定位、要查找的卫星接收机的位置。
所以定位过程,简单来说就是用一个函数GetLocation()从四对已知的数据[Position1, d1], [Position2, d2], [Position3, d3], [Position4, d4]中找到Location价值。
用程序员熟悉的函数调用来表示:Location=GetLocation([Position1,d1],[Position2,d2],[Position3,d3],[Position4,d4]);
2.逐层分析
一看到这个函数调用,程序员应该会兴奋:这些参数从哪里来?这个函数是如何执行的呢?谁执行它?也许立体几何还没有被完全遗忘。你一定会问:为什么需要4对参数?让我们一起探索一下吧。
1.位置信息从哪里来?
(1)事实上,宇宙中运行的每颗GPS卫星都在不断地通过卫星信号向全世界广播自己当前的位置坐标信息。
(2)任何GPS接收器都可以通过天线轻松接收到这些信息,并且能够理解这些信息(这实际上是每个GPS芯片的核心功能之一)。
(3) 这就是这些位置信息的来源。
2.距离信息d1、d2、d3、d4从哪里来?
(1) 我们已经知道,每颗GPS卫星都在孜孜不倦地广播自己的位置,因此在发送位置信息时,也会附加上发送数据包时的时间戳。
(2)GPS接收器收到数据包后,用当前时间减去时间戳上的时间(当然当前时间只能由GPS接收器自己确定),即为该数据包所花费的时间才能在空气中传播。
(3)知道数据包在空中的传输时间,然后乘以它的传输速度,就是数据包在空中传输的距离,也就是卫星到GPS接收机的距离。
(3)数据包是通过无线电波传输的,所以理想的速度是光速c。若将传播时间记为Ti,则公式为:di=c*Ti(i=1,2,3,4);这就是di(i=1,2,3,4)的来源。
3.GetLocation()函数是如何执行的?
(1) 该函数是为了说明问题而虚构的。事实上,可能不存在,但一定有这样类似的操作逻辑。
(2)这些计算逻辑可以通过软件来实现,但实际上大部分可能是由硬件芯片来完成(这也可能是每个GPS芯片的核心功能之一)。
4. 为什么需要四对参数?
(1)根据立体几何知识,在三维空间中,[Positioni,di]等三对数据可以确定一个点(实际上可能是两个,但我们可以通过逻辑判断丢弃一个)。为什么这里需要它?四对呢?理想情况下,三对就足够了,这意味着理想情况下只需要三颗卫星即可实现GPS定位。但事实上,四个是必要的。
(2)因为根据上式,di是通过c*Ti计算出来的,而c的值很大(理想的速度是光速),那么对于时间Ti来说,一个很小的误差就会被放大很多times 这使得整个结果无效。也就是说,在GPS定位中,对时间的精度要求极高。 GPS卫星使用铯原子钟来计时,但我们不可能为每个GPS接收器配备铯原子钟,因为铯原子钟的价格可能已经超过了GPS设备加上使用GPS的昂贵汽车。的价格。
(3)同时,由于速度c也会受到空气中电离层的影响,也会产生误差;此外,GPS卫星广播的自身位置也可能存在误差。其他因素也可能影响数据的准确性。
(4)简而言之,数据存在错误。这些误差可能导致定位精度降低,或者直接导致定位无效。 GetLocation(函数)中使用了一组额外的数据只是为了纠正错误。至于具体的细节,我们不需要关心。我们只需要知道,通过使用一组额外的数据,我们可以通过一些巧妙的算法消除或减少错误并确保有效定位。这就是为什么GetLocation()函数必须使用四组数据,以及为什么必须有四颗卫星来定位。
总结一下,GPS误差来自于:
(1)电离层引起的误差;
(2) 接收设备引起的错误;
(3)遮挡和多径效应引起的误差。遮挡是指无法接收到卫星信号。多径效应是指不仅接收到来自卫星的直接信号,还接收到高楼反射的信号。这样,传播时间就会错误,计算出的位置也会错误。
5. GetLocation()函数返回的位置信息如何被GPS设备识别?
(1)前面提到,在计算位置时,是以空间坐标的形式来表达的,但对于GPS设备和应用来说,通常需要使用【经度、纬度、海拔】等位置信息。
(2) 那么我们可以想象,在GetLocation()函数返回位置结果之前,可能会进行一次从空间坐标形式到经纬度形式的转换
(3)我们不妨假设有一个像Convert(纬度、经度、空间坐标)这样的函数来执行这种转换。
6. 为什么GPS启动缓慢?
(1) 寻找星星需要时间;
(2)接收到的GPS信号需要解调;
(3)卫星连续发送信息,周期为30秒,必须分析这30秒的信息才能找到位置信息。
这就是为什么所谓的毫无知识的GPS启动至少持续30秒的原因。
7.单点定位和差分定位
(1) 其实上面说的只是其中一种定位原理,叫单点定位,或者绝对定位:就是通过单个GPS接收器来确定位置
(2)目前定位精度最高的是差分定位,或者说相对定位:是通过增加参考GPS接收机来提高定位精度
(3)上面我们已经基本了解了围绕一个虚拟的GetLocation()函数的GPS定位的基本数学模型。对于编程来说,知道这个就够了(其实不知道并不影响编程)。如果你的好奇心还没有满足,我们就继续学习一些GPS相关的背景知识吧。
3. GPS卫星从哪里来?
GPS(Global Position System,全球定位系统),全称为NAVSTAR GPS(NAVigation Satellite Timing And Ranging Global Position System,导航卫星授时与测距全球定位系统)。 GPS是美国国防部开发的天基全天候导航系统。用于满足军方在地面或近地空间通用参考系统中获取位置、速度和时间信息的需求。
1.GPS发展历史
1957年10月,第一颗人造地球卫星Sputnik I发射成功,天基导航定位开始了
1958年,开始设计子午线卫星系统NNSS-TRANSIT;
该系统于1964年正式投入运行;
1967年,该系统被解密供民用。
1973年,美国国防部批准研制GPS;
1991年海湾战争,GPS首次大规模应用于实战;
1994年,GPS全面建成并投入使用;
2000年,克林顿宣布GPS取消实施SA(一种对民用GPS精度的人为限制策略)。
2. 美国政府的GPS战略
两个 GPS 服务:
SPS--标准定位服务,民用,精度100M左右;
PPS - 精密定位服务,供军事和有许可的民用用户使用,精度高达 10M。
限制民用定位精度的两项措施(保护国家利益不受侵犯):
SA——选择可用性,考虑降低普通用户的测量精度,限制水平定位精度为100M,垂直定位精度为157M(2005年5月1日取消);
AS--反电子欺骗。
3.其他卫星导航系统
GLONASS(全球轨道导航卫星系统),前苏联;
Galileo-ENSS(欧洲导航卫星系统,伽利略计划),欧盟;
北斗导航系统,中国。
4. GPS系统的组成
GPS系统=空间部分+控制部分+用户部分。
空间部分
GPS空间部分主要由24颗GPS卫星组成,其中工作卫星21颗,备份卫星3颗。
24颗卫星在6个轨道平面上运行,运行周期为12小时。
保证在任何时间、任何地点、高度角大于15度的情况下都能观测到4颗以上的卫星。
主要功能:发送卫星信号进行导航定位。
组成:24颗卫星=21颗工作卫星+3颗备用卫星。
控制部分
GPS控制部分由1个主控站、5个检测站和3个注入站组成。
组成:GPS控制部分=主控站(1)+监控站(5)+注入站(3);
功能:监视和控制卫星运行,编制卫星星历(导航电文),维护系统时间。
(1)主控站:采集各监测站的卫星数据,计算卫星的星历和时钟修正参数等,通过注入站注入卫星;向卫星发出指令,控制卫星,当卫星出现故障时,出动备用卫星。
(2)监测站:接收卫星信号,检测卫星运行状态,收集气象数据,并将这些信息传输给主控站。
(3)注入站:将主控站计算出的卫星星历和钟差参数注入卫星。
分布:
(1)主控站:位于美国科罗拉多州(Calorado)的猎鹰空军基地。
(2)注入站:阿塞松森、大西洋;印度洋迪戈加西亚岛;夸贾林岛,东太平洋。
(3)监控站:1个为主控站; 3个设有注射站;另一个在西太平洋的夏威夷(Hawaii)。
用户部分
GPS用户设备部分包括GPS接收机及相关设备。
GPS接收器主要由GPS芯片组成。例如,车载、船载GPS导航仪、内置GPS功能的移动设备、GPS测绘设备等都属于GPS用户设备。
构成:主要是GPS接收器
功能:接收、跟踪、转换和测量GPS信号的设备,GPS系统的消费者。
来源:于飞工作室
-->