一种时源切换对时处理方法、系统及介质与流程

摘要: 本技术属于电力系统,尤其涉及一种时源切换对时处理方法、系统及介质。背景技术:1、目前,电力嵌入式装置(例如继电保护、录波网分装置)常同时配备两种异构时源,即:i...
一种时源切换对时处理方法、系统及介质与流程

本技术属于电力系统,尤其涉及一种时源切换对时处理方法、系统及介质。

背景技术:

1、目前,电力嵌入式装置(例如继电保护、录波网分装置)常同时配备两种异构时源,即:irig-b硬件对时(inter-range instrumentation group-b time code)和sntp网络对时(simple network time protocol)。irig-b硬件对时为高精度主时源,由站内时间同步装置通过卫星天线接收gps或北斗卫星信号给各站内各设备授时;sntp网络对时为后备时源,通过局域网ntp(network time protocol)服务器获取信号。irig-b硬件对时可能因天线遮挡、时间同步装置故障、电磁干扰等原因间歇性丢失,需要在irig-b硬件对时丢失时,由sntp网络对时进行接管。

2、然而,在现有电力嵌入式装置的时源切换对时处理方法中,从irig-b丢失到sntp完成校时,需经过创建socket→绑定端口→发送请求→接收响应,延迟可达秒级,但电力嵌入式装置要求毫秒级时间精度,秒级切换意味着irig-b 丢失后最初若干秒系统时钟无校正,存在着切换延迟长、切换响应速度不足的缺陷。

技术实现思路

1、本技术实施例提供了一种时源切换对时处理方法、系统及介质,可以解决现有电力嵌入式装置的时源切换对时处理方法中,在硬件对时时源与网络对时时源相互切换时存在切换延迟长、切换响应速度不足的问题。

2、第一方面,本技术实施例提供了一种时源切换对时处理方法,应用于电力嵌入式装置,所述电力嵌入式装置中运行有硬件对时模块和网络对时模块,所述方法包括:

3、响应于所述电力嵌入式装置开机启动,控制所述硬件对时模块获取硬件授时信号状态,以及,控制所述网络对时模块创建用户数据报套接字udp socket,并建立与时间服务器的网络连接;

4、若所述硬件授时信号状态为有效状态,则控制所述硬件对时模块对所述电力嵌入式装置的系统时钟执行硬件校时处理,并保持所述udp socket处于开启状态,其中,所述硬件校时处理为基于所述硬件对时模块解析得到的硬件授时信号,修正所述系统时钟;

5、若所述硬件授时信号状态为失效状态,则控制所述网络对时模块通过所述udpsocket对所述系统时钟执行网络校时处理,其中,所述网络校时处理为基于经由所述udpsocket与所述时间服务器交互所获取的网络授时信号,修正所述系统时钟;

6、其中,所述硬件校时处理的时间同步精度高于所述网络校时处理的时间同步精度。

7、在第一方面的一种可能的实现方式中,所述方法包括:

8、当所述硬件授时信号状态由有效状态变为失效状态,且所述失效状态的第一持续时长大于第一预设迟滞时长时,则确定所述硬件授时信号状态的第一状态变更有效,并控制所述网络对时模块对所述系统时钟执行网络校时处理;

9、当所述硬件授时信号状态由失效状态变为有效状态,且所述有效状态的第二持续时长大于第二预设迟滞时长时,则确定所述硬件授时信号状态的第二状态变更有效,并控制所述硬件对时模块对系统时钟执行硬件校时处理。

10、在第一方面的一种可能的实现方式中,所述若所述硬件授时信号状态为失效状态,则控制所述网络对时模块通过所述udp socket对系统时钟执行网络校时处理,包括:

11、通过所述网络对时模块执行第一次网络时间测量,以获取第一时钟偏差量;

12、若所述第一时钟偏差量的绝对值小于第一门限,则基于所述第一时钟偏差量对所述系统时钟执行网络校时处理;

13、若所述第一时钟偏差量的绝对值大于或等于所述第一门限,则通过所述网络对时模块继续执行大于或等于预设次数的网络时间测量,将多次网络时间测量得到的多个时钟偏差量进行算术处理得到的值作为采纳偏差量,并基于所述采纳偏差量对所述系统时钟执行网络校时处理。

14、在第一方面的一种可能的实现方式中,在控制所述网络对时模块通过所述udpsocket对系统时钟执行网络校时处理的过程中,所述方法还包括:

15、计算当前网络时间测量的网络往返时延;

16、若所述网络往返时延超过预设网络质量门限,则将所述当前网络时间测量得到的当前时钟偏差值进行丢弃。

17、在第一方面的一种可能的实现方式中,在控制所述网络对时模块通过所述udpsocket对系统时钟执行网络校时处理的过程中,所述方法还包括:

18、通过所述网络对时模块,根据预设优先级顺序向多个时间服务器依次发起时间请求,其中,所述多个时间服务器划分为至少主层级、从层级两个层级;

19、在每一轮校时流程中,从主层级时间服务器开始尝试通信,若所述主层级时间服务器无有效响应,则降级访问从层级时间服务器;

20、若在当轮校时流程中,遍历全部层级内所述多个时间服务器后,所述多个时间服务器均无有效响应,则自动启动下一轮服务器遍历重试,直至达到预设重试轮数。

21、在第一方面的一种可能的实现方式中,所述方法还包括:

22、在检测到所述硬件授时信号状态和网络授时信号状态均为失效状态时,启动防抖定时器,其中,所述防抖定时器设置有预设防抖时长;所述网络授时信号状态由所述网络对时模块检测得到;

23、在所述防抖定时器的计时过程中,若检测到所述硬件授时信号状态恢复为有效状态或所述网络授时信号状态恢复为有效状态,则重置所述防抖定时器且不执行业务层告警;

24、若所述防抖定时器计时至所述预设防抖时长到期时,所述硬件授时信号状态仍为失效状态且所述网络授时信号状态仍为失效状态,则执行业务层告警。

25、在第一方面的一种可能的实现方式中,所述方法还包括:

26、在检测到所述系统时钟处于闰秒临界窗口时,控制所述网络对时模块暂停所述网络校时处理,其中,所述闰秒临界窗口为以闰秒生效时刻为基准预先配置的时间区间。

27、在第一方面的一种可能的实现方式中,所述方法还包括:

28、在通过所述网络对时模块完成首次网络校时处理之后,通过硬件时钟回写线程,将校时后的系统时钟写入硬件实时时钟芯片中。

29、第二方面,本技术实施例提供了一种时源切换对时处理系统,应用于电力嵌入式装置,包括:

30、硬件对时模块,用于响应于所述电力嵌入式装置开机启动,获取硬件授时信号状态,并在所述硬件授时信号状态为有效状态时,对所述电力嵌入式装置的系统时钟执行硬件校时处理,其中,所述硬件校时处理为基于所述硬件对时模块解析得到的硬件授时信号,修正所述系统时钟;

31、网络对时模块,用于响应于所述电力嵌入式装置开机启动,创建用户数据报套接字udp socket,并建立与时间服务器的网络连接;并在所述硬件授时信号状态为有效状态时,保持所述udp socket处于开启状态;以及,在所述硬件授时信号状态为失效状态时,通过所述udp socket对所述系统时钟执行网络校时处理,其中,所述网络校时处理为基于经由所述udp socket与所述时间服务器交互所获取的网络授时信号,修正所述系统时钟;其中,所述硬件校时处理的时间同步精度高于所述网络校时处理的时间同步精度。

32、第三方面,本技术实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的时源切换对时处理方法。

33、第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的时源切换对时处理方法。

34、第五方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的时源切换对时处理方法。

35、本技术实施例与现有技术相比存在的有益效果是:

36、本技术实施例提供一种时源切换对时处理方法,包括:响应于电力嵌入式装置开机启动,控制硬件对时模块获取硬件授时信号状态,以及,控制网络对时模块创建用户数据报套接字udp socket,并建立与时间服务器的网络连接。若硬件授时信号状态为有效状态,则控制硬件对时模块对电力嵌入式装置的系统时钟执行硬件校时处理,并保持udp socket处于开启状态,其中,硬件校时处理为基于硬件对时模块解析得到的硬件授时信号,修正系统时钟。若硬件授时信号状态为失效状态,则控制网络对时模块通过udp socket对系统时钟执行网络校时处理,其中,网络校时处理为基于经由udp socket与时间服务器交互所获取的网络授时信号,修正系统时钟。其中,硬件校时处理的时间同步精度高于网络校时处理的时间同步精度。该方法在硬件授时信号有效时优先采用精度更高的硬件校时处理对系统时钟进行修正,同时保持udp socket处于开启就绪状态,在硬件授时信号失效时可直接复用已创建的udp socket快速执行网络校时处理,避免硬件授时信号失效后再创建套接字、建立网络连接带来的切换时延,实现主备时源的快速无缝降级切换,提升切换响应速度。