2024 年 10 月 27 日上午 10 时至 2024 年 10 月 31 日上午 11 时,国家授时中心计划在频率为 5MHz 的短波授时信号上间断性开展科学实验,期间可能会影响 5MHz 短波用户的信号接收,2.5MHz、10MHz 和 15MHz 授时信号正常发播,请使用短波授时信号的用户提前做好准备。
我偶然发现有时BPM有一些频率(5MHz大概是24小时播发时码)在载波附近大概±100Hz的位置有OOK的信号,在互联网上搜索发现了中国科学院国家授时中心蒙智谋于2014年发表的《BPM短波时码授时发播技术方案》。经过分析,此论文所述125Hz时码格式与接收到的不符。
那就只能自己分析一下了吧?
使用韩国的websdr接收5MHz的BPM,但是使用窄带CW,将通带定位在5000.098KHz上。使用了支持BPC帧的“timecode”时间码模式进行OOK的解调,可以在屏幕上显示出每一码元的长短,并且此模式下BPC时码接收显示区两分钟为一页,20秒为一行,适用于BPM一分钟一帧的定时。
图1
图2
图1与图2为2024年10月9日17时,从43分到46分接收到的数据
图3
图3为2024年10月9日18时,从6分至7分接收到的数据
通过判断图片上信号时间的长短,人肉转化为二进制,这些数据分别为
00000000011111111112222222222333333333344444444445555555555
12345678901234567890123456789012345678901234567890123456789
20241009 1743
00000000211000001020001010002110000001201000000020000000002
20241009 1744
00000000200100001020001010002110000001201000000020000000002
20241009 1745
00000000210100001020001010002110000001201000000020000000002
20241009 1746
00000000201100001020001010002110000001201000000020000000002
20241009 1806
00000000201100000021001010002110000000201000000020000000002
20241009 1807
00000000211100000021001010002110000001201000000020000000002
据此分析,每帧第0位是空缺的,为帧起始标志。有三种符号长度,其中最长的为分隔标志,最短的代表0,中等长度代表1。
第10至13位分别代表权重1 2 4 8,各位数据分别与对应权重相乘后相加即为分钟数的个位,
第15至17位分别代表权重1 2 4,如上处理后得到分钟数的十位。
第20至23位分别代表权重1 2 4 8,处理后得到小时数的个位,
第25至26位分别代表权重1 2,处理后得到小时数的十位,
但此时得到的两位小时数需要减一才是北京时间的小时数,也许BPM时码播发是按照UTC+9来的?
至此基本确定了帧结构是小端序,并且破译出了时间和分钟数,但是日期呢?如果联合我七月份接收的数据
00000000011111111112222222222333333333344444444445555555555
12345678901234567890123456789012345678901234567890123456789
20240719 1356Z 2156
00000000201100101020100001002100000000201000000020000000002
20240719 1357Z 2157
00000000211100101020100001002100000000201000000020000000002
20240719 1358Z 2158
00000000200010101020100001002100000000201000000020000000002
20240719 1359Z 2159
00000000210010101020100001002100000000201000000020000000002
20240719 1400Z 2200
00000000200000000021100001002100000000201000000020000000002
20240719 1401Z 2201
00000000210000000021100001002100000000201000000020000000002
20240719 1428Z 2228
00000000200010010021100001002100000000201000000020000000002
20240719 1429Z 2229
00000000210010010021100001002100000000201000000020000000002
20240719 1430Z 2230
00000000200000110021100001002100000000201000000020000000002
20240719 1431Z 2231
00000000210000110021100001002100000000201000000020000000002
20240720 0955Z 1755
00000000210100101020001010002010000000201000000020000000002
20240720 0956Z 1756
00000000201100101020001010002010000000201000000020000000002
20240720 1159Z 1959
00000000210010101020000001002010000000201000000020000000002
20240720 1200Z 2000
00000000200000000021000001002010000000201000000020000000002
会发现根本无法解码,因为七月份数据里小时数之后的0太多了,仅有一个进位的操作。
然而最近有人告诉我,在北京航空航天大学电子信息工程学院的王雨竹、秦红磊、万国龙发表的论文《陆基无线电授时系统信号分析与解算》中提到了他们破解的BPM时码,经过查看,情况属实…
图4 论文关于BPM的片段
不过只提到了小时个位是被提前加一的,没提到十位进位的事,而且依然描述在125Hz而不是100Hz,优势在我。
《陆基》一文提到,
第30至33代表一年当中天数的个位,
第35至38位代表天数的十位,
第40至41位代表天数的百位。
使用10月9日接收的数据进行验证,数据吻合;但与7月接收的数据不匹配。
至于到底是不是UTC+9,等我接收到23时的数据再更新这篇博客…
至于7月份数据的日期数据是什么情况,是不是发射机出了问题?尚不知情。
如果我早点发现《陆基》一文,就不用那么费劲的接收和破译了T_T
于本日23时接收到数据
00000000011111111112222222222333333333344444444445555555555
12345678901234567890123456789012345678901234567890123456789
20241210 2307
00000000211100000020000000002011000010211000000020000000002
20241210 2308
00000000200010000020000000002011000010211000000020000000002
根据第20至26位均为0,且天数为346(UTC+8时间应为第345天),联合分析时域信号可以得出结论
BPM时码采用UTC+9,即东九区
BPM时码在5MHz上以调幅下的2ASK(OOK)发送,子载波频率100Hz,
200ms宽脉冲代表0,500ms宽脉冲代表1,800ms宽脉冲为分隔标志。脉冲宽度与《陆基》所述基本相符。
每帧第0位是空缺的,为帧起始标志,此时时号播发频率1800Hz、宽800ms的分钟信号,信号起点应为UTC每分钟第0秒时刻。
注意到有频率为1800Hz、宽5ms的脉冲超前于时码每位起点时刻30ms,且每分钟内第一个此种脉冲滞后于上述时号的分钟信号1秒整,此脉冲应为时号的秒信号。
图5 分钟信号 秒信号 时码第一位
据《长短波授时时间频率控制与监测》等论文所述,为便于区分不同电台的秒信号,BPM的UTC秒信号脉冲超前于国家授时中心的UTC时刻20ms,未能验证。
第10至13位分别代表权重1 2 4 8,各位数据分别与对应权重相乘后相加即为分钟数的个位,
第15至17位分别代表权重1 2 4,如上处理后得到分钟数的十位。
第20至23位分别代表权重1 2 4 8,处理后得到小时数的个位,
第25至26位分别代表权重1 2,处理后得到小时数的十位。
第30至33代表权重1 2 4 8,处理后得到天数的个位,
第35至38位代表权重1 2 4 8,处理后得到天数的十位,
第40至41位代表权重1 2,处理后得到天数的百位。
由此,BPM时码的帧格式已经被全部破解完毕,可以据此解析BPM时码,得到天数、小时、分钟信息,结合数据位的定时和时号可以得到秒信号,据此确定准确的日期时间。
另外注意到数据中并不包含年份信息,年份需要手动设置以确定平闰年,获得具体的日历信息。
注意到数据中不含有校验或纠错信息,建议至少接收三帧以获得可靠的数据。
感谢BH6ABO在破解BPM时码格式中做出的支持和贡献。
下面给出接收到的BPM(AM)和BPM时码(窄带CW)示例音频(均包含前后分钟的片段)
BPM.mp3516.14KB立即下载
BPM_timecode.mp3520.22KB立即下载
本文所述BPM时码格式的知识产权应当归时码开发者或其所属单位所有。
本文所述BPM时码格式仅供个人学习研究使用,无意侵犯任何个人、单位或企业的任何知识产权。
使用本文所述BPM时码格式所造成的一切后果与本人无关。
[1]蒙智谋.BPM短波时码授时发播技术方案[J].时间频率学报,2014,37(03):XXXXXXXXXXI:10.13875/XXXXsn.1674-0637.2014-03-0145-06.
[2]王雨竹,秦红磊,万国龙.陆基无线电授时系统信号分析与解算[J].导航定位与授时,2023,10(05):XXXXXXXXXXI:10.19306/XXXXki.2095-8110.2023.05.012.
[3]车爱霞,魏孝锋,乔建武,等.长短波授时时间频率控制与监测[J].时间频率学报,2022,45(03):XXXXXXXXXXI:10.13875/XXXXsn.1674-0637.2022-03-0194-08.
[修改于 10天23时前 - 2024/12/11 01:04:11]
200字以内,仅用于支线交流,主线讨论请采用回复功能。