barrie_xie 发表于 2010-8-12 13:14:36

我的毕设,基于GPS和FPGA的便携式高精度同步时钟

从3月份开始就在纠结这个东西,调试了快2个多月了,终于在毕业前把核心部分完成了..
       同步时钟的概念就是利用GPS的高精度时钟信号来驯服本地时钟,使GPS收不到卫星时依旧正常提供精准时钟源,同时给下属终端授时。
       这个同步时钟主要是应用于工业控制领域的,比如变电站系统的线路检测等。时钟的作用是提供一个可靠的时间基准源,对电力系统各种装置的时钟进行一校正。

所用的主要器材:
       SST的51单片机 SST89E58
       Altera 的CPLD EPM7128SLC84-15
       恒温压控振荡器
       Motorola 的GPS模块 M12M+ TIMING ONCORE
......
       目前CPLD核心部分可以达到的授时精度为(GPS断开或搜不到卫星时)相位误差:25ns以内,频率误差:0.05ppm(@25度)。由于毕业设计的时间很短,所以外围的电路没有做很好的设计,MCU的程序也只完成了60%...


       没有做板子,所有的芯片都是手工焊在万能板上的
http://cache.amobbs.com/bbs_upload782111/files_32/ourdev_574545.jpg
(原文件名:1.jpg)

http://cache.amobbs.com/bbs_upload782111/files_32/ourdev_574546.JPG
(原文件名:DSC06991.JPG)

http://cache.amobbs.com/bbs_upload782111/files_32/ourdev_574547.JPG
(原文件名:DSC07001.JPG)

barrie_xie 发表于 2010-8-14 08:46:47

附上GPS的模块文档

点击此处下载 ourdev_574929.pdf(文件大小:1.86M) (原文件名:m12m users guide 1.0.pdf)
点击此处下载 ourdev_574930.pdf(文件大小:1.98M) (原文件名:M12MT_compressed.pdf)
点击此处下载 ourdev_574931.pdf(文件大小:82K) (原文件名:M12MT产品资料.pdf)
点击此处下载 ourdev_574932.pdf(文件大小:190K) (原文件名:M12MT应用指南.pdf)

armok 发表于 2010-8-14 08:52:46

barrie_xie 发表于 2010-8-14 08:52:54

再发几个相关文献资料

点击此处下载 ourdev_574936.pdf(文件大小:920K) (原文件名:GPS_IRIG_B码时间系统分析.pdf)
点击此处下载 ourdev_574937.pdf(文件大小:163K) (原文件名:GPS同步时间冗余系统及其在电力系统中的应用.pdf)
点击此处下载 ourdev_574938.pdf(文件大小:281K) (原文件名:高精度GPS同步时钟的研究与实现.pdf)
点击此处下载 ourdev_574939.pdf(文件大小:464K) (原文件名:基于GPS的嵌入式同步时钟系统的设计与实现.pdf)

barrie_xie 发表于 2010-8-14 08:58:15

回复【2楼】armok阿莫
-----------------------------------------------------------------------


昨天我才新发现开了这个版块,资料我还没怎么整理,先发个MCU的源代码吧~

由于写的时间仓促,所以格式什么的都没有很规范...大家将就着看吧..

代码还没全部完成,但基本功能已经可以实现了。

点击此处下载 ourdev_574941.rar(文件大小:87K) (原文件名:GPS 0.1.3.rar)

ourfxt 发表于 2010-8-14 09:27:24

想问下普通gps模块能做授时用吗?gps定位模块和授时模块到底有何区别?

barrie_xie 发表于 2010-8-14 09:51:17

回复【5楼】ourfxt
-----------------------------------------------------------------------

可以是可以的,但是精度很差,授时模块里有专门的电路保证与GPS时间同步,普通模块里没有。

ljt8015 发表于 2010-8-14 10:54:37

mark!~~

wodeworld1234 发表于 2010-8-14 23:39:16

学习中

eworker 发表于 2010-8-14 23:49:55

回复【楼主位】barrie_xie
-----------------------------------------------------------------------

做得不错。

zlj644 发表于 2010-8-19 09:22:43

回复【楼主位】barrie_xie
-----------------------------------------------------------------------

楼主能不能说说这个GPS怎么发命令给它没反应呢?我发初始化到默认状态,它就是没反应,不知道怎么解决啊?非常感谢!

barrie_xie 发表于 2010-8-20 10:26:12

回复【10楼】zlj644
-----------------------------------------------------------------------

每个GPS模块的初始化命令不一定相同的,这个要查芯片手册的

ammcu 发表于 2010-8-20 18:40:05

mark

zlj644 发表于 2010-8-21 11:42:30

回复【11楼】barrie_xie
-----------------------------------------------------------------------

我用的就是这个,后来证实是那个模块坏了,换了一个就好了,呵呵,话说这款好贵啊,LZ在哪里买的?我问了下北京几家代理,最便宜要780

barrie_xie 发表于 2010-8-22 01:50:24

回复【13楼】zlj644
-----------------------------------------------------------------------

我导师给我的,他申请的模块。

LinuxTux.China 发表于 2010-8-22 09:55:38

GPS模块选有PPS输出的,也就是平常说的秒脉冲输出。一般普通的GPS模块是没有这个功能的。

另外,请问下,相位误差25ns是如何得到的?

coslight_dt 发表于 2010-8-22 10:10:56

mark

esdart 发表于 2010-8-22 11:03:28

收藏。

barrie_xie 发表于 2010-8-22 16:39:06

回复【15楼】LinuxTux.ChinaTux
-----------------------------------------------------------------------

在GPS收不到卫星信号时,系统的PPS脉冲输出依旧能与卫星的PPS保持25ns以内的相位误差。一般的模块如果收不到卫星时凭内部的时钟走时精度是很差的。

LinuxTux.China 发表于 2010-8-22 23:27:54

回复【18楼】barrie_xie
回复【15楼】linuxtux.chinatux
-----------------------------------------------------------------------
在gps收不到卫星信号时,系统的pps脉冲输出依旧能与卫星的pps保持25ns以内的相位误差。一般的模块如果收不到卫星时凭内部的时钟走时精度是很差的。
-----------------------------------------------------------------------

可能我没表达清楚,,我是想了解下,你提出的相位误差是25ns,请问这个数据你是如何得到的,,或者说你用什么实验方法来得到的这个结果呢?

关于PPS输出这一点,如果没有卫星同步,其精度可信度应该比较低,可以作为参考但是不能作为授时标准。

另外,个人觉得,时钟同步难度不在于GPS模块上面,而在于PLL部分,

上面是个人理解,,希望楼主指点下

barrie_xie 发表于 2010-8-22 23:40:15

回复【19楼】LinuxTux.ChinaTux
-----------------------------------------------------------------------

嗯,没错,无信号的守时部分关键在FPGA这块(当然,也有很牛的国外模块本身的无信号守时就很精准,不过那价格就...)。至于那个25ns我是用Quartus II仿真得到的,指的是输出信号和GPS模块的PPS误差,也就是说当PPS消失时输出信号依旧可以保持高精度输出,与消失前的PPS相位误差在25ns内,之后的频率误差为0.05ppm(@25度)。

pingpinggu 发表于 2010-10-27 14:51:05

用ublox的就行,带1PPS信号,标称有30nS,不过这个信号丢星时这个信号会丢失,如果自己做守时模块,还是这样子的好.
那个压控很贵呀.

FlashNuk 发表于 2010-10-27 16:55:20

楼主可否提供一个原理图啊?用的是哪个型号的恒温压控晶振

amote 发表于 2010-11-15 21:37:00

回复【22楼】FlashNuk
-----------------------------------------------------------------------
"大普","天奥","朗讯"..我去翻翻资料再上传
----------------------------
笔误了..不是"朗讯",是"迅腾.."

amote 发表于 2010-11-15 21:54:49

回复【19楼】LinuxTux.ChinaTux
-----------------------------------------------------------------------
民用GPS每天的PPS漂移和抖动大概在50ns,还不包括特殊天气时段,如果只是用GPS授时,通过实际网络NTP,SDH,PTN后精度的传递能到微秒级的精度就可以保证电力级同步(目前而言);但是电信级的同步(3G)提的要求就比较麻烦了...CDMA2000中要求每天的滑码次数小于5,中移动测试要求守时是30000秒TDEV指标满足G811噪声模板....,守时很大程度上体现的是本地钟的性能,比如喷泉钟,铯钟,铷钟,晶体钟,同时也和控制钟调整的算法密不可分;
另外测试秒脉冲的精度有频率分析仪,接触的是上一代的工具 铯钟 + HP-1725B/SJ300E + 频率计....
---------------------
随便写写,比较乱...

amote 发表于 2010-11-16 09:10:42

上传M12详细资料
M12模块使用手册ourdev_598242CWY32G.rar(文件大小:514K) (原文件名:M12 Oncore Users Guide Supplement v1.1.rar)

dew2901 发表于 2011-1-5 23:01:41

mark

yaya001 发表于 2011-1-6 00:10:21

mark

baozhen1989 发表于 2011-1-6 00:35:25

想不到现在的本科生都这么NB了。。。。

yl604922959 发表于 2011-1-6 11:22:32

mark...

arodnap 发表于 2011-1-6 11:36:17

还行

这里有没有做北斗的?
上个月又一颗星上去了

yfqzdh 发表于 2011-3-22 20:59:04

我最近也在做这个,用LM3S8962+EP2C8Q208

ymj2010 发表于 2011-5-25 10:32:52

mark

jwfjia_333 发表于 2011-10-10 19:44:42

牛啊,参考下,准备用STM32的systick和GPS的1pps信号,做一下GPS与IMU信号的时间同步。

beiguoqishi 发表于 2012-2-9 09:04:27

楼主能给一下联系方式吗?

lkl10800139 发表于 2012-3-29 23:40:40

标记,支持楼主

lhh1389 发表于 2012-4-2 23:38:31

标记一下,不错不错。

at90s 发表于 2012-4-2 23:51:17

我用两百来块的TEA-5T GPS模块 + 简单PID算法,就可以达到15ns的授时精度。但是当GPS信号丢失时的保持性能(即hold over模式)就不好做了,中国移动的TD基站间同步要求是1.5us,在GPS信号丢失后24小时内也要保持这个同步性能,用几ppb的OCXO只能保持几个小时就飘出1.5us了,后来加了老化补偿等等也只能撑半天。

yuhang 发表于 2012-4-3 00:07:29

作为毕业设计已经很不错了

我们做的产品 授时仪 也就1ns的精度

七天不超过5mS

gzhuli 发表于 2012-4-3 00:16:23

at90s 发表于 2012-4-2 23:51 static/image/common/back.gif
我用两百来块的TEA-5T GPS模块 + 简单PID算法,就可以达到15ns的授时精度。但是当GPS信号丢失时的保持性能 ...

所以现在淘宝那些铷钟绝大部分都是CDMA基站淘汰下来的。

835392444 发表于 2012-7-23 15:45:51

标记一下,不错不错。

lryxr2507 发表于 2012-8-2 14:52:48

留个爪印,顺带收藏,哪天有空了又来玩.

ngyg12 发表于 2012-8-3 19:46:41

收藏      

wzh314 发表于 2012-8-4 11:27:44

好东西,呵呵,下载了学习

835392444 发表于 2012-8-5 14:00:28

{:smile:}{:smile:}

835392444 发表于 2012-8-5 14:16:12

at90s 发表于 2012-4-2 23:51 static/image/common/back.gif
我用两百来块的TEA-5T GPS模块 + 简单PID算法,就可以达到15ns的授时精度。但是当GPS信号丢失时的保持性能 ...

楼主您好,我也要做个TEA-5T的gps模块去和fpga一起去控制AD采样,实现多个节点同步采样,是不是每个节点的AD芯片都要获得同样的CLK时序啊!

zhoufenga 发表于 2012-8-28 14:51:45

顶楼主,

carsio 发表于 2013-1-23 17:09:10

mark{:smile:}

zjg473 发表于 2013-1-31 13:50:47

目前正在做北斗同步时钟,希望多交流

zsh 发表于 2013-1-31 13:52:54

能驯服10MHz恒温晶体吗???

xiaoguo1 发表于 2014-12-10 04:34:44

是本科比设计吗?

cjwdyzdd 发表于 2014-12-10 09:17:18

收藏学习
页: [1]
查看完整版本: 我的毕设,基于GPS和FPGA的便携式高精度同步时钟