基于GPS的时标系统实现方法探究
摘要:介绍一种利用全球定位系统(GPS)并辅以复杂可编程逻辑器件,给高速数据采集系统中的采集数据帖上精确时间标签的方法。该方法显著地提高了时间标签的精度和可靠性。利用MAX PLUS II开发环境验证了设计方案的正确性。此设计方案已经成功地应用到自行设计的高速数据采集卡中。
关键词:全球定位系统(GPS) 复杂可编程逻辑器件 时间标签 ADuC812
基于全球定位系统(GPS)的双端行波故障定位系统是利用行波的第一个波头到达线路两端的时间差来计算故障点的位置的。由于行波的传播速度非常快(约为光速的98%),因此对行波波头到达线路两端时刻的时间精度要求非常高。在现场运行中,由于卫星信号调整、天线干扰以及GPS接收系统故障等原因,使得GPS接收系统可能在短时间内失步。这时不同厂站间GPS接收器发出的秒脉冲之间的相对误差可能达到几百μs。再者,相对于高速数据采集系统而言,单片机对时间的分辨能力很低,而且单片机不能直接得到故障发生时对应于静态存储器(SRAM)的确切地址。这两方面的因素都会大大降低时间标签的精度和可靠性,直接影响故障测距的精度,甚至导致定位失败。针对上述问题,对高速数据采集系统中精确时标的实现方法进行了探讨。
javascript:window.open(this.src);" style="cursor:pointer;"/>
1 全球定位系统
GPS是美国于1993年全面建成并运行的新一代卫星导航、定位和授时系统。电力系统中主要是利用GPS的精确授时特点。GPS接收器在任意时刻能同时接收其视野范围内4-8颗卫星信号,其内部硬件电路和处理软件通过对接收到的信号进行解码和处理,能从中提取并输出两种时间信号:(1)时间间隔为1s的脉冲信号PPS,其脉冲前沿与国际标准时间(格林威治时间)的同步误差不超过1μs;(2)经串行口输出的与PPS脉冲前沿对应的国际标准时间和日期代码。若以PPS信号作为标准时钟源去同步电网内运行的各时钟,则能保证各厂站时钟的高精确度同步运行。
2 ADuC812
ADuC812芯片是美国AD公司推出的微转换器。它是一个完整的数据采集微系统,其组成为:一个8通道、5μs转换时间、精度自校准、12位精度、逐次逼近的ADC;两个12位DAC;10.5KB的闪存E2PROM;16位计数/定时器和32条可编程I/0接口的8051/8052微控制器;256字节的SRAM。由于ADuC812的特殊功能寄存器组中添加了一个DPP(地址为84H),它与特殊功能寄存器DPH、DPL配合,使得ADuC812能够访问16MB的外部数据地址空间。ADuC812的内核是国内技术人员熟悉的Intel8051,应用开发比较方便。
3 复杂可编程逻辑器件及MAX PLUS II开发平台
本设计选用ALTERA公司的MAX 7000系列复杂可编程逻辑器件(CPLD)。其高性能和高密度是基于它先进的多重阵列矩阵架构。它采用E2CMOS工艺制作,传播延迟最小为3.5ns,可以实现速度高于200MHz的计数器,非常适合高速设计时应用。该公司推出的MAXPLUSⅡ软件是一款易于使用的开发工具,其界面友好、集成化程度高、兼容工业标准、支持FLEX等系列产品。CPLD要实现的逻辑功能一般是在MAX PLUSⅡ环境下通过硬件描述语言开发出来的,并能脱离硬件对设计方案进行仿真,在确认逻辑功能正确无误的情况下,通过并行口下载烧到CPLD中。CPLD在实际应用中有如下优点:
(1)以内部连线代替外部器件的连接,降低了噪声干扰,实现了线路互联的较短延时。
(2)可以在板编程,提高了系统的PCB设计和调试效率。
(3)在实际调试前,可由MAX PLUSⅡ开发平台对CPLD的逻辑功能进行仿真,确保了系统逻辑设计的正确性。
图2和图3
4 GPS失步监测及时钟信号实现方案
对GPS的PPS失步监测是通过解读其有关输出语句报文信息来实现的。报文信息通常使用NMEA-0183格式输出,目前广泛使用V2.0版本,输出的数据代码为ASCⅡ码字符。在NMEA-0183的主要语句中,GPRMC为时间、定位和日期输出语句,其标准格式为:
$GPRMC,hhmmss.ss,a,ddmm.mmmm,n,dddmm.mmmm,w,z.z,y.y,ddmmyy,d.d,v*CC<CR><LF>
每一项以逗号相隔,其中第一项为格林威治时间的时、分、秒信息;第九项为格林威治时间的日、月、年信息;第二项为定位数据是否有效信息,"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",与门