1. 概述
地图采集车上有相机、激光、惯导等多种传感器设备,采集的数据为图像、激光点云、轨迹等,生成地图数据的流程中,需要将这些数据关联起来,但是这些设备都是各自独立运行的,而能完成这个任务的就是时间同步系统。
时间同步系统是以GPS(Global Positioning System,全球定位系统)的时间信息为基础进行时间授时的。本文主要讲述时间系统中GPS授时原理、授时方法、授时过程以及授时中的异常情况。
系列文章回顾:
2. GPS 授时原理
GPS卫星上搭载有高精度原子钟(铯原子),它能够让各个卫星之间保持高精度的时间同步,并且各自的时间起始时刻也能够对的很准。由于用户接收机与卫星存在钟差,对零点做时间参考系至少需要四颗卫星才能实现导航定位。
当用户解算出自己和卫星的钟差之后就可以校正自己本地的时钟,将其和卫星精准的时钟同步到同一个时刻,这个过程就叫授时。
原子钟的原理:原子中的电子从一个能级跃迁到另一个能级的时候,频率非常稳定,以此为钟摆就能得到非常精准的时间。
GPS授时原理是GPS接收机在任意时刻能同时接收其视野范围内>=4颗卫星信号,经解码和处理后从中提取并输出两种时间信号:
(1)时间间隔为1S的同步脉冲信号PPS( Pulse Per Second,秒脉冲),其脉冲前沿与国际标准时间的同步误差<1us.
(2)串行口输出的信息是与PPS前沿对应的国际标准时间和日期,应用最为广泛的是NMEA-0183协议,如$GPGGA,$GPRMC等。
GPRMC:Recommended Minimum SpeGPS / TRANSIT Data(RMC)推荐定位信息。
协议格式:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>*hh<CR><LF>
样例数据:
$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598,*10
3. GPS授时方法
3.1 PPS与NMEA关系
要讲述GPS的授时方法,要先了解PPS与NMEA的关系及作用,如下图所示,在GPS定位的情况下,PPS会先到,NMEA数据后到,但是不同GPS厂商设置的两者之间的时间间隔不尽相同,有的几毫秒,而有的几百毫秒。
PPS与NMEA
黄色:PPS,上升沿为整秒零时刻。
蓝色:NMEA,GPS时间信息,包含年月日、时分秒。
3.2 GPS授时过程详解
GPS授时系统结构图
如上图所示的GPS授时系统结构图:
(1)GPS接收机在定位的情况下产生输出PPS脉冲信号,以及有效的GPS时间信息,此信息以串行通信输出,TTL/RS232信号类型,ASCII码,波特率9600bps~460800bps,可配置,遵循的是NMEA-0183协议,此协议的数据信息有十几种之多,而提取GPS时间信息的语句,通常RMC足以满足要求。
(2)晶振可以为MCU(Microcontroller Unit,微控制单元或者单片机)提供精确的时钟源,维持系统运行,受环境影响较大,特别是温度变化。可选用OCXO—恒温晶振,温度特性达到3ppb。
(3)具体的做法如下:
- 通过提取RMC中的GPS时间信息,得到时分秒、年月日,并赋值给以晶振为时钟源的系统时间,使MCU的系统时间校正为UTC时间。
- MCU利用IO的中断机制得到PPS的脉冲时刻,以此为基础将毫秒及以下时间清零,从而校正系统时间的整秒零时刻。
- Check时间,等3秒后,再取GPS时间与系统时间对比,是否吻合,验证PPS授时整秒时可能出现的+1秒或-1秒的情况。
如上图所示,是授时后测试的数据样例。利用GPS接收机的EVENT功能和MCU同时记录同一个信号脉冲,然后做时间对比,测试的路段有高架桥、商场、环线、街道等多场景。测试时长为5小时38分钟,对比结果为:秒差值=0,微秒差值<=4us。
3.3 时间同步系统的应用之相机同步
图像数据来源是采集车上的传感器——相机,我们的采集车上安装有多个相机,分布在车顶平台的不同位置,朝向各个方向,采集道路标识、POI等,这些图像信息要与位置轨迹信息匹配才能作为地图数据,时间同步系统就可以将这些数据进行唯一匹配。
时间同步系统之相机时间同步结构图
如上图所示,时间同步系统的应用之一相机时间同步结构图,在时间系统已授时的情况下,简单讲述相机时间同步方法:
(1)相机工作在外触发模式,MCU提供触发源,也就是脉冲信号,并记录脉冲序号。
(2)相机拍照时,曝光时刻会产生脉冲对外输出,由MCU捕获,并记录此时刻时间及序号。
(3)记录的时间信息及序号会存储起来,照片的存储会一一对应序号,时间信息也可以与位置轨迹匹配起来,这样就完成了照片与位置的关联。
4. GPS授时异常处理
上面介绍了GPS的授时原理、方法及过程,即可完成时间的授时,但是实际的应用情景是复杂且随机的,由于GPS接收机从失锁到定位的过程不是固定的时间,设备、环境因素都有影响。以晶振为时钟源的MCU的系统时间在授时之前是自由运行状态。这些因素都对GPS授时带了未知的情况,在此列举一些异常情况;
4.1 PPS与晶振
如上图所示,PPS与晶振时钟的对齐存在三种情况:
(1)PPS上升沿与晶振时钟对齐,此为理想状态,是晶振经分频、倍频后为MCU系统时间提供了完美的1秒时长,但这种情况几乎不存在。
(2)MCU的系统时长慢于1秒,PPS到来进入下1秒,而系统时间还未结束当前秒,此时要做特殊处理,提前结束系统时间的整秒,立即进入下1秒的零时刻,时间信息的秒及以上单位对应“+1”。
(3)MCU的系统时长快于1秒,在PPS到来之前,系统时间已经进入下1秒,并运行一段时长,此时要将系统时间重新归到此秒的零时刻,时间信息的秒无需“+1”或者“-1”。
4.2 PPS与GPS时间信息
通常PPS与GPS时间信息NMEA数据是相对时间间隔稳定的,但是也有特殊情况。如上图所示:“GNRMC”语句的输出时间是变化的。
此情况会带来时间“回跳”的现象:当时间信息在0.999秒到的时候,它所包含的时间信息为当前秒,在时间信息传输与解析完成之前,下1秒的PPS到来,时间进入下1秒零时刻,再经过若干时间(一般100ms内),时间信息授时系统时间,此时秒信息是上1秒的时间,这样就出现了秒回跳的情况。
处理的方法是多种的,可自行思考。
5. 小结
了解GPS的授时原理与方法,更能设计出稳定、高精度的时间同步系统。在此基础上,可尝试使用不同厂家的GPS设备,在复杂环境下试验,差异补缺,完善授时方法。
6. 附录
PPS信号处理:抗干扰,滤除杂波干扰
GPS时间信号电平转换
晶振处理信号:控制时钟电压幅度,隔直流滤波