本发明涉及通信,尤其涉及一种时间同步修正方法、装置、设备及存储介质。
背景技术:
1、gnss技术可以准确测量建筑结构在全球坐标系下的形变值,并且能够达到较高的精度,在对建筑结构进行监测的监测网络中,应用了ptp协议的网络,称为ptp域,整个监测网络中可能含有多个ptp域,ptp域是独立的ptp时钟同步系统,一个ptp域内有且只有一个时钟源,域内的所有设备都以该时钟源的时间为基准进行时间同步。
2、目前,由传输接收端的装置进行时间附加,通过结合终端装置间的传输系统延迟及装置内的处理时间延迟,对信息附加的时间将产生实际时钟偏差和网络延迟时间量的误差,由于丢包、分包以及传输噪声干扰等影响使得时间同步参数解算失效以及时间同步不准确的问题,即时间同步精度受到限制。此外,目前gnss技术在应用于超高层建筑监测时,往往需要设置多个监测点,并形成多个ptp域,每个ptp域中分别进行域内时间同步,不同ptp域采集得到的数据独立发送回服务器。然而,对于不同ptp域采集得到的数据,则会存在一个问题:不同域内的时间同步参数解算结果可能会存在差异,导致不同域之间数据的时间坐标不对齐,往往需要人工在服务器端对不同域之间的数据进行时间坐标的二次调整以及对齐,耗费人工劳动力。
3、上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
1、本发明的主要目的在于提供了一种时间同步修正方法、装置、设备及存储介质,旨在解决现有技术丢包和传输噪声干扰等影响使得时钟偏差失效以及时间同步精确度较低的技术问题。
2、为实现上述目的,本发明提供了一种时间同步修正方法,所述方法包括以下步骤:
3、发送同步报文至所在监测节点内的待同步传感器,以使所述待同步传感器接收所述同步报文,并根据所述同步报文反馈响应报文,所述同步报文中包含同步报文发送时刻;
4、接收所述响应报文,并根据所述响应报文确定所述同步报文的同步报文接收时刻、所述响应报文的响应报文发送时刻和响应报文接收时刻;
5、基于所述同步报文发送时刻、所述同步报文接收时刻、所述响应报文发送时刻和所述响应报文接收时刻确定时钟偏差和网络时延;
6、返回所述发送同步报文至所在监测节点内的待同步传感器的步骤;
7、在获得预设个数时钟偏差和预设个数网络时延时,根据当前获得的时钟偏差与第一历史时钟偏差确定时钟偏差差值,根据当前获得的网络时延与第一历史网络时延确定网络时延差值,所述第一历史时钟偏差为所述当前获得的时钟偏差的上一次时钟偏差,所述第一历史网络时延为所述当前获得的网络时延的上一次网络时延;
8、判断所述时钟偏差差值是否小于预设时钟偏差阈值,且所述网络时延差值是否小于预设网络时延阈值;
9、若所述时钟偏差差值小于预设时钟偏差阈值,且所述网络时延差值小于预设网络时延阈值,则将所述当前获得的时钟偏差发送至所述待同步传感器,以使所述待同步传感器进行时间同步修正。
10、可选地,所述基于所述同步报文发送时刻、所述同步报文接收时刻、所述响应报文发送时刻和所述响应报文接收时刻确定时钟偏差和网络时延的步骤,包括:
11、基于所述同步报文发送时刻、所述同步报文接收时刻、所述响应报文发送时刻和所述响应报文接收时刻,通过预设公式确定时钟偏差和网络时延;
12、其中,所述预设公式为:
13、t1+网络时延+时钟偏差=t2;
14、t3+网络时延-时钟偏差=t4;
15、时钟偏差={(t2-t4)-(t1-t3)}/2;
16、网络时延={(t2-t1)(t4-t3)}/2;
17、式中,t1为所述同步报文发送时刻,t2为所述同步报文接收时刻,t3为所述响应报文发送时刻,t4为所述响应报文接收时刻。
18、可选地,所述接收所述响应报文,并根据所述响应报文确定所述同步报文的同步报文接收时刻、所述响应报文的响应报文发送时刻和响应报文接收时刻的步骤之后,还包括:
19、检测所述响应报文中的预设时间字节是否完整;
20、若否,则返回所述发送同步报文至所在监测节点内的待同步传感器的步骤;
21、若是,则执行所述基于所述同步报文发送时刻、所述同步报文接收时刻、所述响应报文发送时刻和所述响应报文接收时刻确定时钟偏差和网络时延的步骤。
22、可选地,所述返回所述发送同步报文至所在监测节点内的待同步传感器的步骤之后,包括:
23、基于所有获得的时钟偏差,通过预设时钟偏差均值计算公式确定时钟偏差均值,基于所有获得的网络偏差,通过预设网络时延均值计算公式确定网络时延均值;
24、在获得预设个数时钟偏差均值和预设个数网络时延均值时,根据当前获得的时钟偏差均值与第一历史时钟偏差均值确定时钟偏差均值差值,根据当前获得的网络时延均值与第一历史网络时延均值确定网络时延均值差值,所述第一历史时钟偏差均值为所述当前获得的时钟偏差均值的上一次时钟偏差均值,所述第一历史网络时延均值为所述当前获得的网络时延均值的上一次网络时延均值;
25、判断所述时钟偏差均值差值是否小于预设时钟偏差阈值,且所述网络时延均值差值是否小于预设网络时延阈值;
26、若所述时钟偏差均值差值小于预设时钟偏差阈值,且所述网络时延均值差值小于预设网络时延阈值,则将所述当前获得的时钟偏差均值发送至所述待同步传感器,以使所述待同步传感器进行时间同步修正;
27、其中,所述预设时钟偏差均值计算公式和所述预设网络时延均值计算公式分别为:
28、
29、
30、式中,为所述时钟偏差均值,为所述时钟偏差,i=1,2,……,n,n为所有获得的时钟偏差的总数,为所述网络时延均值,为所述网络时延,i=1,2,……,m,m为所有获得的网络时延的总数,m=n。
31、可选地,所述判断所述时钟偏差均值差值是否小于预设时钟偏差阈值,且所述网络时延均值差值是否小于预设网络时延阈值的步骤,包括:
32、通过第二预设公式判断所述时钟偏差均值差值是否小于预设时钟偏差阈值,且通过第三预设公式判断所述网络时延均值差值是否小于预设网络时延阈值;
33、其中,所述第二预设公式和所述第三预设公式分别为:
34、;
35、;
36、式中,为所述当前获得的时钟偏差均值,为所述第一历史时钟偏差均值,w1为所述预设时钟偏差阈值,,所述k1为第一预设稳定系数,,为第二历史时钟偏差均值,为所述当前获得的网络时延均值,为所述第一历史网络时延均值,w2为所述预设网络时延阈值,,所述k2为第二稳定系数,,为第二历史网络时延均值,所述第二历史时钟偏差均值为所述第一历史时钟偏差均值的上一次时钟偏差均值,所述第二历史网络时延均值为所述第一历史网络时延均值的上一次网络时延均值。
37、可选地,在各监测节点之间,所述方法包括:
38、发送同步报文至相邻监测节点内的相邻节点传感器,以使所述相邻节点传感器接收所述同步报文,并根据所述同步报文反馈响应报文;
39、接收所述响应报文,并根据所述响应报文确定所述同步报文的同步报文接收时刻、所述响应报文的响应报文发送时刻和响应报文接收时刻;
40、基于所述同步报文发送时刻、所述同步报文接收时刻、所述响应报文发送时刻和所述响应报文接收时刻确定相邻时钟偏差和相邻网络时延;
41、返回所述发送同步报文至相邻监测节点内的相邻节点传感器的步骤;
42、在获得预设个数相邻时钟偏差和预设个数相邻网络时延时,根据当前获得的相邻时钟偏差与第一历史相邻时钟偏差确定相邻时钟偏差差值,根据当前获得的相邻网络时延与第一历史相邻网络时延确定相邻网络时延差值,所述第一历史相邻时钟偏差为所述当前获得的相邻时钟偏差的上一次相邻时钟偏差,所述第一历史相邻网络时延为所述当前获得的相邻网络时延的上一次相邻网络时延;
43、若所述相邻时钟偏差差值小于预设相邻时钟偏差阈值,且所述相邻网络时延差值小于预设相邻网络时延阈值,则发送修正指令至所述相邻监测节点内的相邻节点gnss接收站,以使所述相邻节点gnss接收站对所述相邻节点传感器进行时间同步修正。
44、此外,为实现上述目的,本发明还提出一种时间同步修正装置,所述装置包括:
45、发送模块,用于发送同步报文至所在监测节点内的待同步传感器,以使所述待同步传感器接收所述同步报文,并根据所述同步报文反馈响应报文,所述同步报文中包含同步报文发送时刻;
46、接收模块,用于接收所述响应报文,并根据所述响应报文确定所述同步报文的同步报文接收时刻、所述响应报文的响应报文发送时刻和响应报文接收时刻;
47、确定模块,用于基于所述同步报文发送时刻、所述同步报文接收时刻、所述响应报文发送时刻和所述响应报文接收时刻确定时钟偏差;
48、循环模块,用于返回所述发送同步报文至所在监测节点内的待同步传感器的步骤;
49、差值模块,用于在获得预设个数时钟偏差和预设个数网络时延时,根据当前获得的时钟偏差与第一历史时钟偏差确定时钟偏差差值,根据当前获得的网络时延与第一历史网络时延确定网络时延差值,所述第一历史时钟偏差为所述当前获得的时钟偏差的上一次时钟偏差,所述第一历史网络时延为所述当前获得的网络时延的上一次网络时延;
50、判断模块,用于判断所述时钟偏差差值是否小于预设时钟偏差阈值,且所述网络时延差值是否小于预设网络时延阈值;
51、修正模块,用于若所述时钟偏差差值小于预设时钟偏差阈值,且所述网络时延差值小于预设网络时延阈值,则将所述当前获得的时钟偏差发送至所述待同步传感器,以使所述待同步传感器进行时间同步修正。
52、此外,为实现上述目的,本发明还提出一种时间同步修正设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的时间同步修正程序,所述时间同步修正程序配置为实现如上文所述的时间同步修正方法的步骤。
53、此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有时间同步修正程序,所述时间同步修正程序被处理器执行时实现如上文所述的时间同步修正方法的步骤。
54、本发明通过发送同步报文至所在监测节点内的待同步传感器,以使所述待同步传感器接收所述同步报文,并根据所述同步报文反馈响应报文,所述同步报文中包含同步报文发送时刻;接收所述响应报文,并根据所述响应报文确定所述同步报文的同步报文接收时刻、所述响应报文的响应报文发送时刻和响应报文接收时刻;基于所述同步报文发送时刻、所述同步报文接收时刻、所述响应报文发送时刻和所述响应报文接收时刻确定时钟偏差和网络时延;返回所述发送同步报文至所在监测节点内的待同步传感器的步骤;在获得预设个数时钟偏差和预设个数网络时延时,根据当前获得的时钟偏差与第一历史时钟偏差确定时钟偏差差值,根据当前获得的网络时延与第一历史网络时延确定网络时延差值,所述第一历史时钟偏差为所述当前获得的时钟偏差的上一次时钟偏差,所述第一历史网络时延为所述当前获得的网络时延的上一次网络时延;判断所述时钟偏差差值是否小于预设时钟偏差阈值,且所述网络时延差值是否小于预设网络时延阈值;若所述时钟偏差差值小于预设时钟偏差阈值,且所述网络时延差值小于预设网络时延阈值,则将所述当前获得的时钟偏差发送至所述待同步传感器,以使所述待同步传感器进行时间同步修正。由于本发明通过获得预设个数时钟偏差和网络时延,并对预设个数时钟偏差和预设个数网络时延求均值后获得时钟偏差差值和网络时延差值,若所述时钟偏差差值小于预设时钟偏差阈值,且所述网络时延差值小于预设网络时延阈值,则对待同步传感器进行时间同步修正,从而解决了目前由于丢包和传输噪声干扰等影响使得时钟偏差失效以及时间同步精确度较低的技术问题。