我的毕设,基于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) 附上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) 再发几个相关文献资料
点击此处下载 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) 回复【2楼】armok阿莫
-----------------------------------------------------------------------
昨天我才新发现开了这个版块,资料我还没怎么整理,先发个MCU的源代码吧~
由于写的时间仓促,所以格式什么的都没有很规范...大家将就着看吧..
代码还没全部完成,但基本功能已经可以实现了。
点击此处下载 ourdev_574941.rar(文件大小:87K) (原文件名:GPS 0.1.3.rar) 想问下普通gps模块能做授时用吗?gps定位模块和授时模块到底有何区别? 回复【5楼】ourfxt
-----------------------------------------------------------------------
可以是可以的,但是精度很差,授时模块里有专门的电路保证与GPS时间同步,普通模块里没有。 mark!~~ 学习中 回复【楼主位】barrie_xie
-----------------------------------------------------------------------
做得不错。 回复【楼主位】barrie_xie
-----------------------------------------------------------------------
楼主能不能说说这个GPS怎么发命令给它没反应呢?我发初始化到默认状态,它就是没反应,不知道怎么解决啊?非常感谢! 回复【10楼】zlj644
-----------------------------------------------------------------------
每个GPS模块的初始化命令不一定相同的,这个要查芯片手册的 mark 回复【11楼】barrie_xie
-----------------------------------------------------------------------
我用的就是这个,后来证实是那个模块坏了,换了一个就好了,呵呵,话说这款好贵啊,LZ在哪里买的?我问了下北京几家代理,最便宜要780 回复【13楼】zlj644
-----------------------------------------------------------------------
我导师给我的,他申请的模块。 GPS模块选有PPS输出的,也就是平常说的秒脉冲输出。一般普通的GPS模块是没有这个功能的。
另外,请问下,相位误差25ns是如何得到的? mark 收藏。 回复【15楼】LinuxTux.ChinaTux
-----------------------------------------------------------------------
在GPS收不到卫星信号时,系统的PPS脉冲输出依旧能与卫星的PPS保持25ns以内的相位误差。一般的模块如果收不到卫星时凭内部的时钟走时精度是很差的。 回复【18楼】barrie_xie
回复【15楼】linuxtux.chinatux
-----------------------------------------------------------------------
在gps收不到卫星信号时,系统的pps脉冲输出依旧能与卫星的pps保持25ns以内的相位误差。一般的模块如果收不到卫星时凭内部的时钟走时精度是很差的。
-----------------------------------------------------------------------
可能我没表达清楚,,我是想了解下,你提出的相位误差是25ns,请问这个数据你是如何得到的,,或者说你用什么实验方法来得到的这个结果呢?
关于PPS输出这一点,如果没有卫星同步,其精度可信度应该比较低,可以作为参考但是不能作为授时标准。
另外,个人觉得,时钟同步难度不在于GPS模块上面,而在于PLL部分,
上面是个人理解,,希望楼主指点下 回复【19楼】LinuxTux.ChinaTux
-----------------------------------------------------------------------
嗯,没错,无信号的守时部分关键在FPGA这块(当然,也有很牛的国外模块本身的无信号守时就很精准,不过那价格就...)。至于那个25ns我是用Quartus II仿真得到的,指的是输出信号和GPS模块的PPS误差,也就是说当PPS消失时输出信号依旧可以保持高精度输出,与消失前的PPS相位误差在25ns内,之后的频率误差为0.05ppm(@25度)。 用ublox的就行,带1PPS信号,标称有30nS,不过这个信号丢星时这个信号会丢失,如果自己做守时模块,还是这样子的好.
那个压控很贵呀. 楼主可否提供一个原理图啊?用的是哪个型号的恒温压控晶振 回复【22楼】FlashNuk
-----------------------------------------------------------------------
"大普","天奥","朗讯"..我去翻翻资料再上传
----------------------------
笔误了..不是"朗讯",是"迅腾.." 回复【19楼】LinuxTux.ChinaTux
-----------------------------------------------------------------------
民用GPS每天的PPS漂移和抖动大概在50ns,还不包括特殊天气时段,如果只是用GPS授时,通过实际网络NTP,SDH,PTN后精度的传递能到微秒级的精度就可以保证电力级同步(目前而言);但是电信级的同步(3G)提的要求就比较麻烦了...CDMA2000中要求每天的滑码次数小于5,中移动测试要求守时是30000秒TDEV指标满足G811噪声模板....,守时很大程度上体现的是本地钟的性能,比如喷泉钟,铯钟,铷钟,晶体钟,同时也和控制钟调整的算法密不可分;
另外测试秒脉冲的精度有频率分析仪,接触的是上一代的工具 铯钟 + HP-1725B/SJ300E + 频率计....
---------------------
随便写写,比较乱... 上传M12详细资料
M12模块使用手册ourdev_598242CWY32G.rar(文件大小:514K) (原文件名:M12 Oncore Users Guide Supplement v1.1.rar) mark mark 想不到现在的本科生都这么NB了。。。。 mark... 还行
这里有没有做北斗的?
上个月又一颗星上去了 我最近也在做这个,用LM3S8962+EP2C8Q208 mark 牛啊,参考下,准备用STM32的systick和GPS的1pps信号,做一下GPS与IMU信号的时间同步。 楼主能给一下联系方式吗? 标记,支持楼主 标记一下,不错不错。 我用两百来块的TEA-5T GPS模块 + 简单PID算法,就可以达到15ns的授时精度。但是当GPS信号丢失时的保持性能(即hold over模式)就不好做了,中国移动的TD基站间同步要求是1.5us,在GPS信号丢失后24小时内也要保持这个同步性能,用几ppb的OCXO只能保持几个小时就飘出1.5us了,后来加了老化补偿等等也只能撑半天。 作为毕业设计已经很不错了
我们做的产品 授时仪 也就1ns的精度
七天不超过5mS
at90s 发表于 2012-4-2 23:51 static/image/common/back.gif
我用两百来块的TEA-5T GPS模块 + 简单PID算法,就可以达到15ns的授时精度。但是当GPS信号丢失时的保持性能 ...
所以现在淘宝那些铷钟绝大部分都是CDMA基站淘汰下来的。 标记一下,不错不错。 留个爪印,顺带收藏,哪天有空了又来玩. 收藏 好东西,呵呵,下载了学习 {:smile:}{:smile:} at90s 发表于 2012-4-2 23:51 static/image/common/back.gif
我用两百来块的TEA-5T GPS模块 + 简单PID算法,就可以达到15ns的授时精度。但是当GPS信号丢失时的保持性能 ...
楼主您好,我也要做个TEA-5T的gps模块去和fpga一起去控制AD采样,实现多个节点同步采样,是不是每个节点的AD芯片都要获得同样的CLK时序啊! 顶楼主, mark{:smile:} 目前正在做北斗同步时钟,希望多交流 能驯服10MHz恒温晶体吗??? 是本科比设计吗? 收藏学习
页:
[1]