gps北斗时钟同步器产品技术方案
安徽京准电子科技专业开发gps北斗时钟同步器产品
如何利用gps oem来进行二次开发,产生高精度时钟发生器是一个研究的热点问题。在电力系统、cdma2000、dvb、dmb等系统中,高精度的gps时钟发生器(gps同步时钟)对维持系统正常运转有至关重要的意义。
如在dvb-t单频网(sfn)中,对于时间同步的要求,同步精度达到几十个ns,对于这样高精度高稳定性的系统,如何进行商业级设计?
1 引言
在电力系统的许多领域,诸如时间顺序记录、继电保护、故障测距、电能计费、实时信息采集等等都需要有一个统一的、高精度的时间基准。利用gps卫星信号进行对时是常用的方法之一。
目前,市场上各种类型的gps-oem板很多,价格适中,具有实用化的条件。利用gps-oem板进行二次开发,可以精确获得gps时间信息的gps时钟发生器(gps同步时钟)。本文就是以加拿大马可尼公司生产的superstar gps oem板为例介绍如何开发应用于电力系统的的gps时钟发生器(gps同步时钟)。?
2 gps授时模块?
gps时钟发生器(gps同步时钟)采用superstar gps oem板作为gps接受模块,superstar gps oem板为并行12跟踪通道,全视野gps接受模块。oem板具有可充电锂电池。l1频率为1575.42mhz,提供伪距及载波相位观测值的输出和1pps(1 pulse per second)脉冲输出。oem板提供两个输入输出串行口,一个用作主通信口,可通过此串行口对oem板进行设置,也可从此串口读取标准时间、日期、所处方位等信息。另一个串行口用于rtcm格式的差分数据的输出,当无差分信号或仅用于gps授时,此串行口可不用。1pps脉冲是标准的ttl逻辑输出形式,当导航输出有效时,该脉冲的上升沿与时间相对应。1pps脉冲是每秒中输出的正脉冲信号,其幅值为5v,1pps脉冲的上升沿与uct标准时间的秒脉冲同步,其误差在正负1μs之内。可以利用此脉冲信号的上升沿作为utc时间的对时信号,此外我们可通过同步脉冲电路将1pps信号扩展为1ppm(1 pulse per minute)、1pph(1 pulse per hour)等等根据实际情况用于对时。每种脉冲的输出口数可以根据应用要求进行扩展。
superstar gps oem板的主串口的通讯数据格式可采用cmc binary二进制或者cmc支持的nmea的ascii码,波特率可以在300bps到38400bps之间根据应用要求进行调整,具有8位数据位、1位起始位,1位停止位,无奇偶校验位。gps数据信息中包含卫星状态、经度、纬度、时间、高度、速度等等各种信息,对于同步时钟的开发来讲,我们只需要读取其时间信息即可。因而,可以通过主串口对oem板进行设置,使其以一定的波特率和某种通讯数据格式仅仅发送时间信息。例如我们若采取nmea的ascii码,则只需读取以“$gpzda”为命令头的时间数据即可,然后可以很方便地从中分离出utc时间的年、月、日、时、分、秒。
3 系统组成
gps时钟发生器(gps同步时钟)包括gps接受模块、中心处理单元、rs-232/485接口、can总线接口、同步脉冲发生电路、显示电路等几个部分。
3.1中心处理单元
gps同步时钟采用ds80c320作为系统的cpu。ds80c320是美国dallas公司推出的8位高速单片机,是与mcs-51系列兼容的单片微机。由于对微处理器内核进行了重新设计省去了多余的时钟和存储周期,若时钟工作频率相同,执行相同的程序代码,ds80c320的执行速度至少为8051的2.5倍。
ds80c320与80c32具有*相同的封装,除拥有80c32所具有的i/o口、2个定时/计数器、串行口等资源外,还具有一些新增资源,现列举如下。
a.串行口1
ds80c320额外提供与80c32相同的一个硬件串行通信口,在gps同步时钟的开发中,我们由串行通信口0获得gps时间数据,而由串行通信口1负责与各种电网自动化装置进行通讯。
b.双数据指针?
ds80c320提供两个数据指针,当gps时钟接收到gps oem板信息后,利用这两个数据指针,可以将数据送到不同的存储区域。
c.片内复位电路
ds80c320具有一套完整的上电/掉电复位逻辑。所以,使用ds80c320,无需外加外部复位电路。简化了硬件,提高了可靠性。
d.看门狗定时器
ds80c320具有一个可编程的看门狗定时器,因而无须象80c32那样外加看门狗电路。
3.2同步脉冲发生电路?
p3.2和p3.3是1ppm(1 pulse per minute)和1pph(1 pulse per hour)脉冲的选通信号输出端(为禁止发送1pps脉冲,这两个控制端在平时均置为低)。以产生1ppm脉冲为例:当由串行口0读入utc时间信息,并判断其为某一分钟的59秒时刻之后,cpu将p3.2置高,从而在整分时刻发送一个脉冲。当再一次读入时间信息,并判断其为整分时刻时,重又将p3.2置低,以禁止发出脉冲。依次循环,即可得到精确的1ppm脉冲信号。采用同样的方法,也可以产生1pph的脉冲信号。
由于静态空节点方式控制端与信号通道隔离较好,耐压高,所以gps时钟发生器(gps同步时钟)将同步脉冲信号作为一个开关量以静态空节点方式输出。
3.3rs-232/485接口?
gps 时钟发生器(gps同步时钟)具有rs232与rs485两个通信接口,以满足不同的通信系统的要求。通过这两个接口,同步时钟可以输出每秒一次包括年、月、日、时、分、秒在内的完整utc时间信息,也可以作为通信下位机在需要的时候为处于上位机的电网自动化装置提供准确的时间信息。
3.4can总线接口?
can(controller area network)总线是重要的现场总线之一,目前在电力系统的一些领域(如变电站综合自动化系统)中也有重要应用。因而在设计gps时钟发生器(gps同步时钟)时,配置了can总线接口。gps时钟发生器(gps同步时钟)采用philips公司生产的sja1000作为can协议控制器,pca82c250作为sja1000与物理总线的接口。在整分或整时时,ds80c320可直接将标识符和数据通过地址/数据总线送入sja1000的发送缓冲区,然后置位命令寄存器cmr中的发送请求位tr,启动can核心模块读取发送缓冲区中的数据,按can协议封装成一完整can信息帧通过收发器发往总线。也可在电网自动化装置要求时响应外部中断,将单片机发送缓存中的gps数据以can协议向外输出。
4 软件设计
gps 时钟发生器(gps同步时钟)的软件由主程序和接收/发送中断子程序组成。在主程序中进行系统的初始化,包括对superstar gps oem板、两个串行通信口、内置可编程看门狗、定时器等的初始化。程序每秒产生一次串行通信口0的中断,读取utc时间数据,并将之转化为北京时间,以bcd码格式通过串行通信口1发出。在中断子程序中,还将对时间信息进行判断,在每分钟的59秒时刻和每小时的59分59秒时刻产生1ppm和1pph信号的选通信号,在整时或整分时刻,则禁止发出选通信号。
gps时钟发生器(gps同步时钟)也可响应电网自动化装置发来的校时命令,将当时的准确时间信息发送出去。为此只需在程序中增加一个串行通信口1的中断子程序,使之按照一定的通信协议,为电网自动化装置提供实时时间信息。
5 结束语?
本文所介绍的基于ds80c320的gps时钟发生器(gps同步时钟)已用于实际的变电站综合自动化系统中。调试和运行的结果表明,该时钟装置为整个系统提供了精确的时间信息,具有较高的可靠性、准确性和实用性。在电力系统事故分析、故障定位、相位测量等等方面,该同步时钟装置都具有非常广泛的运用前景。