矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 44483|回复: 95

【参赛】BPC长波自动授时LED数码钟制作

  [复制链接]
发表于 2016-1-18 22:49:33 | 显示全部楼层 |阅读模式
本帖最后由 bluegrass 于 2016-1-18 22:49 编辑

一直想做一个分秒不差的时钟放在客厅用,也好让家里众多的时钟有一个可靠的对时参考,于是便有了下面的制作:用CPLD解码BPC长波授时信号,驱动LED数码管进行显示,同时可以在凌晨2:00或4:00自动校准的数码表。
背景篇:
电波授时是将高精度原子钟精确时间信息用时间编码方式,通过无线发射,以低频(20KHz—100KHz)无线电波进行传播,用户端利用无线接收机接收信号并解调以恢复时间编码,再经过微处理器对编码进行解码得到精确时间信息。目前在德、美、英、日等国家,电波授时已广泛应用于电力,通信,民航,铁路等各个领域。
2007年,中国科学院国家授时中心在河南商丘建立了一座大功率、连续发播的低频时码的商丘授时台,构筑了我国新一代BPC低频时码授时系统,授时信号可以有效覆盖京、津和长江三角洲等我国政治文化和经济中心。BPC低频时码授时系统是一个载频为68.5KHz的调幅无线发播系统。调幅脉冲下降沿的起始点,指示着国家授时中心UTC(NTSC)秒信号的发生时刻。调幅脉冲的宽度按指定的传输协议给出日历和时间的数字编码信息。低频时码信号形式都是以1秒为单位变化的,在1秒中包含了信号的秒脉冲信息和时间编码信息。BPC帧周期为20秒,每分钟包含三帧;以秒脉冲宽度表示四进制数的 0,1,2,3,以四进制数表示相应的“分”“时”“日”“月”“年”“星期”等时间信息。
Screenshot_2015-02-18-08-42-33_1.jpg
Screenshot_2015-02-18-08-44-14_1.jpg

原理篇:
BPC的接收过程类似AM广播接收,使用磁棒线圈和电容谐振于68.5KHz的载波频率,通过晶体滤波器去除干扰,通过AGC控制,最终解调出1PPM的秒脉冲。下图是专用长波授时信号接收芯片以及软封装版本的PCB。
IC11.jpg

对MAS6180加电后便可以通过示波器观测到如下图所示的1PPM信号,可以看到,波形的上升沿是每秒的起点,脉冲宽度携带着更多信息,需要解码处理才能恢复出具体时间信息。
1.JPG

解码可以通过单片机或FPGA、CPLD等实现,手头刚好有几个CPLD的最小系统板(成本约35元),就决定了用CPLD解码BPC,同时控制LED扫码显示的最终方案。实现本方案所需的主要材料见下图。
20150307_085957_1.jpg

为配合调试过程中监测波形时序,同时使用了一个FPGA作为辅助调试手段,主要利用了FPGA的Signal Tab虚拟逻辑分析仪功能,单独CPLD是不具备这个能力的。
20150321_100938_1.jpg

实现时间同步的第一步是使本地时钟的秒脉冲与标准BPC秒脉冲同步,下图所示便是检测每一个BPC秒脉冲的上升沿,并在检测到多个稳定的上升沿后复位本地时钟计数器,使本地秒脉冲的上升沿与BPC秒脉冲上升沿同步。
2.JPG

然后通过判断每个BPC脉冲的宽度,恢复出携带的时间信息,逐步凑齐时、分、秒等信息,并进行校验。如果校验结果正确,则将当前的时刻刷新到LED显示部分,并使用本地时钟驱动后续走时,完成了一次BPC授时过程,实现了对本地时钟的修正。
自动授时便是在凌晨2:00自动开始上述过程,如果失败则在4:00再进行一次。之所以选择这两个时刻,是因为此时工业活动相对较少,电磁干扰小,有利于AM信号可靠接收。
4.JPG

制作篇:
已经验证的电路最终装到盒子里就没有太多的悬念了。为了让显示字体大一些,选择了0.8英寸和0.4英寸的白色LED数码管。由于没有买到相同接线方式的LED(共阴或共阳)使得实现起来费了些周折。而且考虑到CPLD的I/O电平只有3.3V,白色LED的压降约3V,直接驱动亮度不足,所以需要增加一级驱动,增加CPLD驱动电平。
为了使时钟在断电下维持走时,找了一个接近废弃的锂离子电池作为后备电源,平时电路通过手机5V充电器供电,遇到断电情况则自动切换到电池。
左边两个按键分别手动调整小时和分钟,单按会使小时或分钟加1,长按会加速自动递增;右边的按键触发手动授时,1分钟内授时不成功则自动退出,不做时间修正。
无论是自动授时或是手动授时,均会在授时过程中关闭LED扫描,避免扫描噪声干扰授时信号接收,实践证明,此举是必要的也是有效的。
20150403_221540_1.jpg
20160117_094836-01.jpeg
20160117_092914-01.jpeg
20150404_162057_1.jpg

软件篇:
本制作的核心功能是通过VHDL软件实现的,VHDL属硬件描述语言,可以被综合器生成固化在CPLD内部的逻辑。CPLD和FPGA不同于MCU,可以多线程同时运行,在某些对并行运算和信号处理要求高的应用中CPLD和FPGA是其他处理器无法取代的。
下面的代码可以实现按键防抖动,不至于因为按键接触不稳定产生多次触发。
fpga1.JPG

通过对BPC脉冲宽度进行解码分析,生成时间帧。
fpga2.JPG

自动授时部分的代码。
fpga3.JPG

通过Quartus II软件编译,VHDL软件被自动将软件代码转换为硬件逻辑,并下载到CPLD芯片内部。以后每次CPLD加电便具有了特定的功能。下图则是硬件描述语言对应的硬件逻辑的部分区域。
fpga4.JPG

电路篇:
电路部分涉及CPLD最小系统,限于篇幅可参考MAX II EPM1270T144的数据手册,下面仅对主要电路构成作以简要说明。为了使LC谐振在68.5KHz频点上,可一边用示波器监测晶体滤波器输出端的信号幅度,一边增减线圈,使幅度最大。LED数码管采用扫描方式工作,下图仅表示出共阴0.8英寸的白色数码管的接法。
20160118_220218-01.jpg

花絮篇
本制作先利用手头的零件作了一次验证,确认工作稳定可靠后才购买了白色数码管完成的。因为刚开始,只找到了单个的LED数码管,所以还得费劲半天用漆包线连成共阴的阵列显示形式。
20150613_191852-01.jpeg
20150406_102416_1.jpg

性能篇:
这个小制作从2015年3月正式投入使用,一直稳定工作到现在。每天都能够正常自动授时,进行时间修正,所以时刻能够与天文台原子钟保持着1ms以内的精确同步。试验发现,如果禁止自动授时功能,则误差可控制在0.5s/周的范围内(20度室温)。气温偏低会使时钟变快一些(反之变慢),如有需要,可通过更换TCXO降低对温度的敏感。下图分别是授时状态和正常走时状态,为了美观,塑料盒内增加了一层淡蓝色磨沙膜,让LED看起来柔和一些。这款时钟还提供了另外一个实用功能:客厅里的小夜灯……
20160117_095219-01.jpeg
20160117_095251-01.jpeg


补充内容 (2016-1-19 20:50):
12楼增加了整机原理框图以及BPC服务范围图,谢谢关注。

补充内容 (2016-1-24 17:06):
感谢各位老师的加分鼓励和支持,24楼增加内部图片和待改进之处的说明。

补充内容 (2016-2-5 19:16):
22楼,炫彩老师补充了世界各地授时台资料;32楼增加了NTP网络授时与长波授时的对比和优势分析。

评分

10

查看全部评分

     
发表于 2016-1-18 23:57:46 | 显示全部楼层
要是做成客厅投射灯就更爽了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-19 07:16:47 | 显示全部楼层
yangjishu 发表于 2016-1-18 23:57
要是做成客厅投射灯就更爽了

这个主意不错(⊙o⊙),可以买个投射表改装。
回复 支持 反对

使用道具 举报

     
发表于 2016-1-19 08:57:45 | 显示全部楼层
这个很专业,有成品可出售吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-19 09:14:00 | 显示全部楼层
1940115 发表于 2016-1-19 08:57
这个很专业,有成品可出售吗?

这个是东拼西凑出来的,网上有成品卖的,一般是液晶显示或者指针形式的,因为这样干扰小。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-19 09:15:08 | 显示全部楼层
本帖最后由 bluegrass 于 2016-1-19 09:43 编辑

刚才不小心发重复了,晚些时候再补充几张内部电路图片和总原理框图。
现在的5v电流约25ma,还是非常省电的。
回复 支持 反对

使用道具 举报

     
发表于 2016-1-19 09:47:42 | 显示全部楼层
河南商丘发射台,看看传播大圆图,覆盖内可以玩玩。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-19 10:03:17 | 显示全部楼层
BG4IFY 发表于 2016-1-19 09:47
河南商丘发射台,看看传播大圆图,覆盖内可以玩玩。

没错的,信号覆盖挺广的,感觉用am收音机改装一下也可以接收bpc。
回复 支持 反对

使用道具 举报

发表于 2016-1-19 10:33:28 来自手机 | 显示全部楼层
一直以为只有gps 能准确受时呢,受教了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-19 10:40:06 | 显示全部楼层
srqsnet 发表于 2016-1-19 10:33
一直以为只有gps 能准确受时呢,受教了。

客气客气,受教可不敢当,gps,bd之类的卫星授时有一个缺点,天线必须能直视卫星,长波授时可以在任何地方。除此之外还有短波授时,大家可以听听sw10M,15M位置有没有秒脉冲的声音~
回复 支持 反对

使用道具 举报

     
发表于 2016-1-19 19:52:10 | 显示全部楼层
看到了口香糖电池了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-19 20:47:28 | 显示全部楼层
本帖最后由 bluegrass 于 2016-1-19 20:55 编辑

补充整机原理框图
20160119_203750-01.jpeg

以及中国BPC服务范围图(图片来自网络)
4264908847121261786.jpg
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-19 20:49:02 | 显示全部楼层
益斋 发表于 2016-1-19 19:52
看到了口香糖电池了。

好眼力,估计您也是也经历了辉煌的磁带随身听年代...
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-20 06:39:01 | 显示全部楼层
128032949qq 发表于 2016-1-19 23:26
我认为不必每天授时。一周一次也可以达到生活需要的精度

是的,当表用肯定足够足够的了,只是既然有这个功能也是不用白不用。
回复 支持 反对

使用道具 举报

     
发表于 2016-1-20 09:48:54 | 显示全部楼层
不错  这个是接收来的时间。

突然联想到原来短波 5M和10M的标准时间、标准频率发播台。貌似现在已经收不到了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2024-4-20 04:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表