GPS通信
目录
一、GPS启动的方式
二、GPS经纬度坐标转换
三、GPS定位和网络定位
四、3D定位和2D 定位
五、同步GPS时间到本地时间
六、卫星分布对GPS performance有很大影响吗
一、GPS启动的方式
热启动:指在上次关机的地方没有过多移动过,且距离上次定位时间小于2个小时。再次定位时,GPS芯片通过软件的方式,可以继续使用之前的星历快速搜星,实现秒定位。
PS:普通的GPS芯片,星历最长有效期为12小时,故此星历过期后,GPS芯片无法使用星历实现快速定位。
温启动:指距离上次定位时间超过2个小时的启动,搜星定位时间介于冷启动和热启动之间的情况。
譬如某时间使用过GPS定位实现3D FIX,GPS芯片内部生成星历(或者外部灌入AGPS数据),那么在2小时内启动GPS芯片进行定位的行为就属于温启动。启动后,GPS芯片首先会输出上次的位置信息。因为上次关机前的经纬度和高度已知,但由于关机时间过长,卫星状态发生了变化,之前3D FIX时的卫星接受不到了,所以星历中参数中的若干颗卫星已经和GPS接收机失去了联系,GPS芯片需要继续搜星补充位置信息,所以搜星的时间要长于热启动,短于冷启动。
冷启动:指在一个陌生的环境下启动GPS,直到GPS芯片和可用卫星联系并且计算出坐标的过程。以下几种情况开机均属冷启动:
- 初次开机使用时;
- 电池耗尽导致GPS芯片内星历信息丢失时;
- 关机状态下将接收机移动1000公里以上距离。
也就是说,冷启动是通过硬件方式的强制性启动,因为物理距离较远,或者时间间隔很久,GPS芯片已经把内部的星历信息清除掉,或者内部的星历信息完全失效。GPS接收机失去卫星参数,或者已经存在的参数和实际接收到卫星参数相差太多,导致GPS芯片无法靠星历快速搜星,所以必须从新获得卫星提供的坐标数据。
这也是很多定位器(譬如车载定位器)启动后,搜星时间长、定位耗时久的原因。
有的地方(譬如室内、峡谷、高架桥下等)GPS信号极弱,定位效果差,开发者应该使用GPS + LBS(基站定位)等方式进行互补,实现定位。

二、GPS经纬度坐标转换
一般从GPS得到的数据是经纬度。经纬度有多种表示方法。
- ddd.ddddd, 度 . 度的十进制小数部分(5位)例如:31.12035º
- ddd.mm.mmm,度 . 分的十进制小数部分(3位)例如 31º10.335'
- ddd.mm.ss, 度 . 分 . 秒 例如 31º12'42"
地球上任何一个固定的点都可以用确定的经纬度表示出来。
关于经纬度坐标转换的方法,把经纬度转换成十进制的方法很简单。
如下就可以了
Decimal Degrees = Degrees + minutes/60 + seconds/3600
例:57°55'56.6" =57+55/60+56.6/3600=57.9323888888888
114°65'24.6"=114+65/60+24.6/3600=自己算!

三、GPS定位和网络定位
GPS定位是需要卫星参与的,设备借助搜到的卫星讯号,来计算出来设备的位置。open sky环境下,6颗卫星信号强度大于40db,CEP67=3米
网络定位是指利用基站、WIFI MAC,获取一个粗略的位置。基站定位和覆盖范围有关,所以精度可能很低。WIFI MAC 通过机器能搜到的 WIFI ,从服务器按照 MAC 地址去取到对应 WIFI 的位置信息,及当前信号强度来确定大概位置,精度相对会比基站高点
四、3D定位和2D 定位
3D一般是指使用至少4颗以上卫星完成的定位。
2D一般使用3颗卫星完成的定位过程。
3D相比于2D 定位,即定位精度更高。

五、同步GPS时间到本地时间
Step1:将设置中的时间选项,设置为用GPS时间同步。
Step2:将设置中的位置服务打开。
Step3:打开任何的地图应用,定位成功后,就可以看到时间同步了。例如用工程模式下面的YGPS定位APK。
计算方式:GPS UTC 时间 + 当前时区,例如 GPS UTC 时间为 071249.988 ,对应北京时间就是 15(07+08):12:49.988
六、卫星分布对GPS performance有很大影响吗
是的。在NMEA 中GPGGA、GPGSA都有相关数据精度因子,该值越小越好,建议小于2。设备位于地球上的某一点,可以认为在地球上方,有4个象限,仰角0~90度。好的卫星分布要满足如下条件:
- 每个象限都有卫星;
- 卫星不能在同样的仰角上。
- 低仰角卫星被干扰的可能性更大、传输距离更远,容易出现问题。
解释常见的卫星分布:
open sky的环境下,各个象限都有卫星。
窗边的环境下,只能看到半边天的卫星,即半圆内有卫星。
在闹市中,高楼围起来的街道上,只能看到高仰角的卫星。
相关文章:
GPS通信
目录 一、GPS启动的方式 二、GPS经纬度坐标转换 三、GPS定位和网络定位 四、3D定位和2D 定位 五、同步GPS时间到本地时间 六、卫星分布对GPS performance有很大影响吗 一、GPS启动的方式 热启动:指在上次关机的地方没有过多移动过,且距离上次定位…...
Java高频面试题,ReentrantLock 是如何实现锁公平和非公平性的?
我先解释一下个公平和非公平的概念。 公平,指的是竞争锁资源的线程,严格按照请求顺序来分配锁。 非公平,表示竞争锁资源的线程,允许插队来抢占锁资源。 ReentrantLock 默认采用了非公平锁的策略来实现锁的竞争逻辑。 其次&…...
「JVM 原理使用」 实际开发中的应用
Class 文件格式、执行引擎主要以 Class 文件描述了存储格式、类何时加载、如何连接、VM 如何执行字节码指令,这些动作基本都是 JVM 直接控制,用户代码无法干预和改变; 用户可以干预的只有字节码生成、类加载器两部分,而这两部分的…...
最最普通程序员,如何利用工资攒够彩礼,成为人生赢家
今天我们不讲如何提升你的专业技能去涨工资,不讲面试技巧如何跳槽涨工资,不讲如何干兼职赚人生第一桶金,就讲一个最最普通的程序员,如何在工作几年后,可以攒够彩礼钱,婚礼酒席钱,在自己人生大事…...
脏话越多,代码越好!
你在读开源代码的时候有没有遇到过这种注释?What the fuck ?Dude,WTFFuck this !我遇到过,每次都忍不住笑,心想老外可真是性情中人,遇到不爽的地方就开骂,还直接写到注释中,甚至代码中。Bob大叔…...
【Node.js】模块化
模块化模块化的基本概念模块化规范Node.js中模块化分类模块作用域向外共享模块作用域的成员Node.js中的模块化规范模块化的基本概念 指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程对于整个系统来说,模块是可组合,分解和更换…...
训练一个中文gpt2模型
前言 这是我的github上的一个介绍,关于如何训练中文版本的gpt2的。链接为: https://github.com/yuanzhoulvpi2017/zero_nlp 介绍 本文,将介绍如何使用中文语料,训练一个gpt2可以使用你自己的数据训练,用来:写新闻、…...
python文件头规范和函数注释自动生成(pycharm)
#!/usr/bin/env python # -*- coding: utf-8 -*- """ Time : ${DATE} ${TIME} Author : xxx Email : xxxxxx.comFileName: ${NAME}.py Software: ${PRODUCT_NAME} """if __name__ __main__:print(Python)pycharm python文件头规范和函数注…...
Fluent Python 笔记 第 17 章 使用 future 处理并发
future 指一种对象,表示异步执行的操作。这个概念的作用很大,是 concurrent.futures 模块和 asyncio 包(第 18 章讨论)的基础。 17.1 示例:网络下载的三种风格 17.1.1 依序下载的脚本 17.1.2 使用 concurrent.futures 模块下载 from concurrent impo…...
Android进阶之路 - StringUtils、NumberUtils 场景源码
忘记是在去年还是前年的时候遇到一个需要检测所传字符串是否为数字的场景,开始使用 NumberUtils.isNumber() 提示错误 ,没有解决问题(可能是因为依赖版本导致),最后使用的是StringUtils.isNumeric(),当时关…...
装备制造业数字化转型CRM系统解决方案(信息图)
一、制造企业面临的机遇与挑战 2021年12月28日,工业和信息化部等八部门联合对外发布《“十四五”智能制造发展规划》,明确提到“推进智能制造,要立足制造本质,紧扣智能特征,以工艺、装备为核心,以数据为基…...
CGAL 二维剖分
目录一、 2D Triangulations1、定义2 Representation2.1 The Set of Faces2.2 A Representation Based on Faces and Vertices3 Software Design4 Basic Triangulations4.1 Description遍历三角网顶点4.2 Implementation4.3 Geometric Traits4.4 Example of a Basic Triangulat…...
node.js+vue婚纱影楼摄影婚庆管理系统vscode项目
:减少管理婚庆工作人员的负担;管理人员可以随时浏览婚纱网站以便及时知道哪里需要修改和更进,同时还可以查看用户反馈给我们的信息,让管理员更加直观的了解客户的需求;该系统改变了以前手工记录的方式,使用…...
C语言 指针的新理解
16年写了很多 C 与 C 相关的文章,但是后面从事了 Android 开发,就全部删掉了,无意中发现了这篇由还存在草稿箱,索性就找回来吧,也是追忆当年学习的青葱岁月 1.指针就是一个存储了其他变量地址的变量。 指针存储的是整…...
【向每个应用View中增加子控件 Objective-C语言】
一、把刚才计算九宫格的思路再给大家过一遍 1.现在我们要计算九宫格坐标 1)先把每一个格子,每一个九宫格的大小,先确定了, 在这里先指定宽和高 CGFloat appW = 75; CGFloat appH = 90; 2)再去计算第一个格子的一些间距, 到上面的间距,marginTop = 30; 再计算出…...
【FPGA】Verilog:组合电路设计 | 三输入 | 多数表决器
前言:本章内容主要是演示Vivado下利用Verilog语言进行电路设计、仿真、综合和下载的示例:表决器(三人表决器)。 功能特性: 采用 Xilinx Artix-7 XC7A35T芯片 配置方式:USB-JTAG/SPI Flash 高达100MHz 的内部…...
【安全等保】安全等保二级和三级哪个高?哪个费用更高?
等保政策已经严格落地执行了,各大企业纷纷接到了过等保的通知,但有的估计是第一次听到等保,对于等保相关政策都是非常蒙圈的。这不不少企业相关负责人在问,安全等保二级和三级哪个高?哪个费用更高?这里我们…...
C++ STL学习记录(v1)
C STL学习记录一. 什么是STL1.1 STL的诞生1.2 STL基本概念1.3 STL的六大组件1.4 STL中的容器、算法、迭代器1.5 容器、算法、迭代器实践一. 什么是STL 1.1 STL的诞生 STL建立的目的就是为了解决软件界复用性的需求。C的面向对象和泛型编程思想,目的就是为了复用性的…...
开发中遇到的问题
1.当写一个导出功能时,因为编码写URL地址&参数的时候,用反转字符串的时候换行了,造成地址拼接不成,一直报错,后来发现是编码格式造成的,已解决。 解决方案:不换行或者用 “”拼接 2.当本地…...
Javascript笔记
数据类型 基本类型(primitive value) 简单的数据段,包括 Undefined, Null, Boolean, Number, String初始化只使用2原始字面量形式,如果使用new则会创建Object无法加入新的属性 引用类型(reference value) 可能由多个值构成的对象判断类型 typeofinstanc…...
从LLaVA到Stable Diffusion:多模态融合选拼接还是交叉注意力?一张图帮你做技术选型
多模态融合技术选型指南:拼接与交叉注意力的深度对比与实践策略 在构建现代多模态AI系统时,工程师们常常面临一个关键决策点:如何有效地融合来自不同模态的信息?想象一下,你正在开发一个智能医疗影像分析系统ÿ…...
SEO_网站SEO诊断与快速优化解决办法分享
<h2>SEO诊断:了解你的网站现状,为优化铺路</h2> <p>在当今数字化时代,拥有一个高效、优化良好的网站是任何企业或个人成功的关键。网站SEO诊断是这一过程中的重要步骤。通过网站SEO诊断,我们可以全面了解你的网…...
RTX4090D显存优化:OpenClaw+Qwen3-32B-Chat批量处理千页PDF
RTX4090D显存优化:OpenClawQwen3-32B-Chat批量处理千页PDF 1. 为什么需要显存优化 当我第一次尝试用OpenClaw对接Qwen3-32B-Chat处理PDF文档时,遇到了一个棘手的问题——显存爆炸。当时只是处理一个200页的PDF,显存占用就飙到了22GB&#x…...
Arduino激光360°扫描库:VL53L0X+28BYJ-48低成本建图方案
1. 项目概述LaserToMap360 是一个面向嵌入式空间感知应用的轻量级 Arduino 库,专为构建低成本、可复现的 360 激光测距扫描系统而设计。其核心目标并非替代专业 SLAM 系统,而是提供一种工程上可快速验证、硬件上可即插即用、数据上可直接对接上位机可视化…...
【AI+教育】告别“硬啃”长文,它把文档直接变成你的专属视频课
在这个信息大爆炸的时代,我们最不缺的就是资料:网盘里屯满的行业报告、收藏了却从未打开的学术论文、买来盖泡面的大部头教材……知识就在那里,但“学进去”实在太难了。 秘塔推出的“今天学点啥”,就是为了解决这个痛点而生的。它的核心逻辑非常简单粗暴:你把看不进去的文…...
从串口通信到内存总线:手把手拆解‘波特率’、‘比特率’与‘总线带宽’的异同与实战计算
从串口通信到内存总线:深度解析波特率、比特率与总线带宽的实战差异 在嵌入式开发和计算机体系结构领域,数据传输速率的计算是工程师日常工作中无法绕开的基础技能。但令人困惑的是,同样的"速率"概念在不同场景下却有着完全不同的…...
【Zynq 进阶一】深度解析 PetaLinux 存储布局:NAND Flash 分区与 DDR 内存分配全攻略
【Zynq 进阶】深度解析 PetaLinux 存储布局:NAND Flash 分区与 DDR 内存分配全攻略 文章目录【Zynq 进阶】深度解析 PetaLinux 存储布局:NAND Flash 分区与 DDR 内存分配全攻略📝 前言📦 第一部分:大局观——NAND 与 D…...
PyTorch实战(38)——深度学习模型可解释性
PyTorch实战(38)——深度学习模型可解释性0. 前言1. PyTorch 模型可解释性2. 训练手写数字分类器3. 可视化模型卷积核4. 可视化特征图小结系列链接0. 前言 在本专栏中,我们已经构建了多种深度学习模型来完成不同任务,包括手写数字…...
从SOP到AI Society:MGX多智能体协作平台如何重塑软件开发流程
1. MGX平台如何用SOP机制颠覆传统开发模式 我第一次接触MGX平台时,被它的标准化操作流程(SOP)惊艳到了。这就像把一个混乱的施工现场变成了井然有序的装配线,每个智能体都知道自己该在什么时候做什么事。传统开发中,我…...
手把手教你用丹青识画:智能影像雅鉴系统保姆级入门教程
手把手教你用丹青识画:智能影像雅鉴系统保姆级入门教程 1. 认识丹青识画系统 "以科技之眼,点画意之睛。"这句话完美诠释了丹青识画系统的核心理念。这是一款将人工智能技术与东方美学相结合的创新工具,能够自动分析图像内容并生成…...
