一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 7547|回复: 23
收起左侧

[其他综合] GPS授时的陷阱

[复制链接]
发表于 2013-12-10 20:41 | 显示全部楼层 |阅读模式
继前面的帖子:GPS自动授时万年历12864大数字翻页版
https://www.yleee.com.cn/thread-29201-1-1.html

最近折腾万年历,所以早上上班第一件事就是开机检查GPS时间与万年历时间,突然发现电脑接收到的GPS时间比电脑和万年历时间都快了18秒,可昨天下班前刚校时的(昨晚17点到今早8点)
如果承认GPS时间是准确的,可电脑和万年历就那么巧合地同步慢了吗?认命了,电脑和万年历同步校时了。
半小时后查看,发现GPS竟然又比电脑和万年历慢了约18秒,彻底崩溃了!
可两次GPS时间都是在出现了定位信息之后,按说没道理会错的。
可不知道GPS在什么时候又偷偷跑慢了,把原来的GPS测试电脑版修改了下,增加了数据记录功能,GPS断电5小时后,重新开机,电脑软件监控采集,顿时发现了GPS的秘密了:
原来$GPRMC中间的有效位“A”并不代表时间有效!内置时间会“偷偷服务”很长时间。
也就是说如果GPS冷启动,至少要有定位信息3分钟以上采集的时间才算靠谱的
不知道是不是二手GPS的问题,也不知道所谓的3代有无这个问题,提出自己的分析供大家参考。

早上8点20校时后:
快照1.png

误差1秒,允许范围内。

GPS关机,下午13:57:30 GPS开机:
13:57:38 出现时间、日期数据有定位信息了,时间误差18秒:
快照4.png


9分钟后时间误差2秒,因为没有时间基准无法判断哪个准。
快照5.png



分析记录的数据:
$GPRMC,,V,,,,,,,,,,N*53
$GPRMC,055738.18,V,,,,,,,101213,,,N*78
$GPRMC,055739.18,V,,,,,,,101213,,,N*79
$GPRMC,055740.00,V,,,,,,,101213,,,N*7E

$GPRMC,060351.00,V,,,,,,,101213,,,N*7C
$GPRMC,060352.00,V,,,,,,,101213,,,N*7F
$GPRMC,060353.00,V,,,,,,,101213,,,N*7E
$GPRMC,060354.00,V,,,,,,,101213,,,N*79
$GPRMC,060355.00,A,3333.25829,N,11859.15623,E,1.318,359.70,101213,,,A*6B
$GPRMC,060356.00,A,3333.25829,N,11859.15613,E,1.215,0.10,101213,,,A*6E
$GPRMC,060357.00,A,3333.25804,N,11859.15608,E,1.091,0.68,101213,,,A*6B
$GPRMC,060358.00,A,3333.25745,N,11859.15605,E,0.701,3.57,101213,,,A*63
$GPRMC,060359.00,A,3333.25671,N,11859.15604,E,0.661,4.41,101213,,,A*62
$GPRMC,060400.00,A,3333.25591,N,11859.15602,E,0.660,4.42,101213,,,A*60

$GPRMC,060401.00,A,3333.25504,N,11859.15602,E,0.757,3.62,101213,,,A*6D
$GPRMC,060402.00,A,3333.25403,N,11859.15605,E,1.210,359.85,101213,,,A*6D
$GPRMC,060403.00,A,3333.25314,N,11859.15607,E,1.372,359.45,101213,,,A*66

$GPRMC,060622.00,A,3333.29175,N,11859.15800,E,1.156,359.96,101213,,,A*6D
$GPRMC,060623.00,A,3333.29167,N,11859.15807,E,1.110,359.83,101213,,,A*6E
$GPRMC,060624.00,A,3333.29160,N,11859.15815,E,1.092,0.13,101213,,,A*60       //////////////
$GPRMC,060609.00,A,3333.29171,N,11859.15826,E,1.037,0.76,101213,,,A*63       //此处骤降15秒
$GPRMC,060610.00,A,3333.29177,N,11859.15839,E,1.146,0.00,101213,,,A*65
$GPRMC,060611.00,A,3333.29184,N,11859.15852,E,1.130,359.54,101213,,,A*6A
$GPRMC,060612.00,A,3333.29196,N,11859.15865,E,0.955,1.23,101213,,,A*6A



修正的GPS调试软件(带数据自动保存功能):

GPS调试软件: gps.rar (306.35 KB, 下载次数: 5468)


评分

参与人数 1一乐金币 +5 收起 理由
xgsun + 5 很给力!

查看全部评分

发表于 2013-12-10 20:49 | 显示全部楼层
所以GPS授时时钟也要搞一个RTC,比如用个DS3231,只要GPS接收的时间和RTC对比差异大过DS3231的误差,那么还是相信RTC时间。
 楼主| 发表于 2013-12-10 21:04 | 显示全部楼层
我原本想用12C887的,可是针脚太多,改装麻烦,DS3231有现成的模块板子只有4个引脚改装应该容易,以后入手折腾。百度 DS3231 :

DS3231

DS3231


发表于 2013-12-10 21:09 | 显示全部楼层
GPS时钟不是一般gps能够胜任的,不然专业的GPS授时模块不会卖那么贵,我手头有两块moto的M12,基站上拆下的
 楼主| 发表于 2013-12-10 21:32 | 显示全部楼层
hicool 发表于 2013-12-10 21:09
GPS时钟不是一般gps能够胜任的,不然专业的GPS授时模块不会卖那么贵,我手头有两块moto的M12,基站上拆下的 ...

钻研了几本GPS资料,发现定位精度跟时间精度是相关的。时间精度越高定位精度越高,主要是因为无线电速度太快。但是UTC时间原本应该是卫星直接发送下来的,而不是通过星图公式计算出来的,跟GPS内置时钟的精度应该没有多大关系。
希望玩3代或更新的GPS模块的坛友贡献出测试经验
发表于 2013-12-10 21:42 | 显示全部楼层
GPS时间按1Hz频度输出时都是正常走秒,不应该出现跳秒现象,可以用串口助手和自编软件对比一下,看是否软件解析有问题。
 楼主| 发表于 2013-12-10 21:56 | 显示全部楼层
zpxa001 发表于 2013-12-10 21:42
GPS时间按1Hz频度输出时都是正常走秒,不应该出现跳秒现象,可以用串口助手和自编软件对比一下,看是否软件 ...

1、我的测试软件应该是没有问题的,10多年的C++经验实力摆在这里,已提供免费下载,目前还没有坛友提出bug。
2、我通过冷测试分析,应该是GPS内置时钟不准了,二手的不知服务多少年了。在跳秒前的时间是连续的,说明跳秒前应该是使用的内置时间

3、我的困惑是本来定位数据有效位“A”出现好几分钟了还在走“内置”时间就有些离谱。算是玩二手货的一个收获吧



发表于 2013-12-10 23:27 | 显示全部楼层
拆掉gps上的电池,让它每次都是冷启动,看时间正常不

点评

量了下电池电压,0.3V,看来是没电了。便宜的二手货也不能强求了  发表于 2013-12-11 19:28
发表于 2013-12-10 23:27 | 显示全部楼层
谢谢分享调试软件,调试二手货总会有意想不到的收获。
发表于 2013-12-11 09:32 | 显示全部楼层
学习了!

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-10 08:00 , Processed in 0.059080 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表