info
西门子:电池白皮书
行业动态
MORE...
应用案例
MORE...
技术前沿
MORE...
当前位置:首页 技术 正文
GPS失步监测及时钟信号实现方案
中国智能交通产品网 :  zaoche168.com   2008年11月16日

        对GPS的PPS失步监测是通过解读其有关输出语句报文信息来实现的。报文信息通常使用NMEA-0183格式输出,目前广泛使用V2.0版本,输出的数据代码为ASCⅡ码字符。在NMEA-0183的主要语句中,GPRMC为时间、定位和日期输出语句,其标准格式为:
                          
     $GPRMC,,a,,n,,w,z.z,y.y,ddmmyy,d.d,v*CC
                          
     每一项以逗号相隔,其中第一项为格林威治时间的时、分、秒信息;第九项为格林威治时间的日、月、年信息;第二项为定位数据是否有效信息,"A"表示有效,"V"表示警告或者数据无效。单片机通过解读此报文信息便可判断GPS是否失步。
                          
     在GPS接收器工作正常时(GPS接收器能接收到卫星信号),由GPS提供秒脉冲信号。否则,由频率为20MHz的高精度恒温晶振(OXOF系列频率精度为1×10-8~1×10-9)和一个25位计数器临时替代GPS发出秒脉冲信号,使不同厂站间时钟偏差在一定时间内控制在要求的范围。时钟系统原理图如图1所示。

     时钟系统工作过程如下:
   (1)采用Jupiter型GPS接收器,在秒脉冲信号前沿来临前先发报文。
                          
   (2)采用单片机(如AT89C2051)接收GPS串行报文数据,产生年、月、日、时、分、秒信号,并判断GPS即将发出的秒脉冲信号是否有效,从而控制P1.0口的状态。
                          
   (3)采用频率为20MHz的高精度恒温晶振驱动25位计数器计数,当计数器计满1312D00H个数(时间为1s)时,计数器清零重新开始计数,同时在其输出口置"1"。当计数器计到7D000H个数(时间为25.6ms)时,在其输出口置"0",产生秒脉冲信号。
                          
   (4)当单片机获悉GPS接收器跟踪到卫星信号时,P1.0口置"1",与门(1)打开,与门(2)关闭,在与门(1)的输出口输出精确的秒脉冲信号,同时每一个秒脉冲信号上跳沿对25位计数器清零使之重新开始计数,为计数器提供精确的时间基准,以减少计数器的累计误差。
                          
   (5)当单片机获悉GPS接收器没有跟踪到卫星信号时,P1.0口置"0",与门1关闭,与门2打开,由25位计数器临时产生秒脉冲信号。 

      用MAX PLUSⅡ做仿真实验时,由于计算机资源不足,无法进行1秒钟的仿真实验,可以仿真1ms的情况。计数器计满4E20H个数(0000H-4E1FH),时间为1ms。图2和图3反映的是同一次仿真的两个不同片断。

     精确时间标签的实现方案
                          
     时钟系统能保证在任何情况下产生个稳定的、高精度的秒脉冲信号,从而为高速数据采集系统中的采集数据贴上精确的时间标签打下坚实基础。
                          
     时标系统原理图如图4所示。高速ADC、地址发生器、地址计数器、计时器在时钟源CLK(5MHz)的同步下以统一的步调工作。在ADuC812初始化时,将P3.5置"0",P3.4发出清零脉冲对地址发生器和地址计数器同时清零;当故障信号出现时,ADuC812将P3.5置"1",计时器和地址计数器同时停止计数;暂态信号记录完毕后,ADuC812分时读出计时器中的值并将该数值保存在双口RAM中,此值即为精度为0.2μs的时间信息;A-DuC812分时读出地址计数器中的值并将该数值保存在双口RAM中,此地址的精确时间即为计时器中的计数值。这样,就为高速数据采集系统中的采集数据贴上了精确的时间标签。

     时标系统工作过程如下:
                          
   (1)ADuC812初始化时P3.5置"0",同时P3.4发出清零脉冲使地址发生器和地址计数器同步计数。ADuC812控制内部的A/D转换模块对经过调整的取自电流互感器二次侧的电流进行A/D转换。采用半波比较,在每个工频内采集36个点,分别用第n个点和第n+18个点、第n+1个点和第n+19个点比较,依此类推。如果大于事先设定的门槛值即认为故障已经发生,ADuC812将P3.5置"1",计时器和地址计数器同时停止计数,计时器中的数据即为地址计数器记录的对应于SRAM相同地址的采集数据的时间标签。由于高速ADC的转换频率固定(本次设计为5MHz),所以,可以此为基准为整个SRAM中的采集数据贴上时间标签。

   (2)当P3.5置"0"即STOP端口为低电平时,计时器在5MHz的时钟源下以相同的频率计数。由于它是一个24位的计数器,从而确保了计时器能够记录一个整秒,并为一个整秒刻上了o.2ps(五而1丐面子:o.21xs) 的最小刻度。时钟系统输出的PPS信号(或SECOND信号)的上跳沿给计时器清零,从而为计时器提供精确的时间基准,以消除计时器的累计误差。
                          
   (3)当P3.5置"1"即STOP端口为高电平时,计时器停止计数,在此状态下时钟系统输出的PPS信号(或SECOND信号)的上跳沿不能对计时器清零。
                          
   (4)地址计数器的工作过程与计时器的工作过程类似,唯一的区别是地址计数器的清零信号(CLR)是在初始化时由ADuC812的P3.4口发出的。由于地址发生器和地址计数器共用同一个清零信号,从而确保地址发生器和地址计数器中的计数值完全相同。同理,当STOP端口为高电平时,地址计数器也停止计数,在此状态下ADuC812发出的清零信号不能改变地址计数器中的计数值。

                          
   (5)由于ADuC812是一种8位单片机,所以地址计数和计时器中的数据只能"分批"地送至双口RAM中保存。所以要设计锁存器、译码电路和总线隔离电路,避免总线冲突以及保证总线上的数据能正确无误地传递。在本次设计中;当ADuC812的特殊功能寄存器DPP高3位的值为"00H"时将计时器的高8位数据通过A-DuC812送至双口RAM中。依此类推,当特殊功能寄存器DPP高3位的值为"05H"时将地址计数器的低8位数据通过ADuC812送至双口RAM中保存。当特殊功能寄存器DPP为其它值时释放数据总线,便于ADuC812进行其它操作。
                          
     本文对GPS失步后的补救措施及给高速数据采集系统中的采集数据贴上精确时间标签的方法进行了详尽的叙述和仿真,得出如F结论:

   (1)在高频恒温晶振的精度得到保证的前提下,时钟系统产生的秒脉冲信号能满足实际应用的要求。
   (2)设高速ADC的转换频率为5MHz,时标系统能为存人SRAM中的转换数据贴上精度为0.2μs的时间标签。
   (3)通过CPLD间接地实现了"低速"的单片机系统对高速数据采集系统的实时监视。
 

 

品牌社区
—— 造车工艺 ——
—— 数字化制造 ——
—— 智能驾驶 ——
—— 新能源技术 ——
—— 机器人技术 ——