设备及其时间同步方法和计算机可读存储介质与流程

文档序号:16886427发布日期:2019-02-15 22:40阅读:171来源:国知局
设备及其时间同步方法和计算机可读存储介质与流程

本发明涉及通信技术领域,尤其涉及一种设备的时间同步方法、装置和计算机可读存储介质。



背景技术:

随着技术的发展,越来越多智能的设备步入人们的生活。

智能的设备通常具备时间功能,智能设备通过时间来进行定时操作,比如,定时维护、定时启动以及定时关闭。

在当智能设备的时间与实际时间不同时,使得智能设备的日志时间不准确,从而降低定时事件的触发准确性,也即设备的时间与实际时间不同步,造成设备的定时事件触发准确性低。



技术实现要素:

本发明的主要目的在于提供一种设备的时间同步方法、装置和计算机可读存储介质,旨在解决设备的时间与实际时间不同步,造成设备的定时事件触发准确性低的问题。

为实现上述目的,本发明提供的一种设备的时间同步方法,应用所述设备的时间同步方法的设备包括多个wifi模块,所述设备的时间同步方法包括以下步骤:

检测wifi模块是否处于时间已同步状态;

在wifi模块未处于时间已同步状态时,向处于时间已同步状态的wifi模块发送时间获取请求;

接收处于时间已同步状态的wifi模块反馈的第一时间,并将所述wifi模块的当前时间更新为所述第一时间。

在一实施例中,所述设备的时间同步方法,还包括:

判断所述wifi模块是否满足时间已同步状态的设置条件;

在所述wifi模块满足时间已同步状态的设置条件时,将所述wifi模块的状态设置为时间已同步状态。

在一实施例中,所述wifi模块满足时间已同步状态的设置条件包括以下至少一种:

所述wifi模块连接时间服务器;

所述wifi模块与时间服务器之间的当前网络连接信息与上一次网络连接信息不匹配;

所述wifi模块的持续运行时长大于或等于预设时长;

所述wifi模块获取处于时间已同步状态的wifi的时间。

在一实施例中,所述将所述wifi模块的状态设置为时间已同步状态的步骤之后,还包括:

判断所述wifi模块是否满足时间未同步状态的设置条件;

在所述wifi模块满足时间未同步状态的设置条件时,将所述wifi模块的时间已同步状态切换为时间未同步状态。

在一实施例中,所述wifi模块满足时间未同步状态的设置条件包括以下至少一种:

所述wifi模块与时间服务器断开连接;

所述wifi模块停止运行;

所述wifi模块向时间服务器获取时间失败。

在一实施例中,所述检测wifi模块是否处于时间已同步状态的步骤包括:

检测wifi模块是否存储时间同步标识,其中,在所述wifi模块未存储时间同步标识时,判定所述wifi模块未处于时间已同步状态;

或者,检测wifi模块是否存储预设类型的时间同步标识,其中,在所述wifi模块未存储预设类型的时间同步标识时,判定所述wifi模块未处于时间已同步状态。

在一实施例中,所述接收处于时间已同步状态的wifi模块反馈的第一时间的步骤之后,还包括:

计算所述wifi模块的当前时间与第一时间之间的差值;

在所述差值大于或等于预设差值时,执行所述将所述wifi模块的当前时间更新为所述第一时间的步骤。

在一实施例中,所述检测wifi模块是否处于时间已同步状态的步骤之后,还包括:

在wifi模块未处于时间已同步状态时,检测其它wifi模块是否处于时间已同步状态;

在其它wifi模块处于时间已同步状态时,执行所述向处于时间已同步状态的wifi模块发送时间获取请求的步骤;

在其它wifi模块未处于时间已同步状态时,向所述时间服务器发送时间获取请求;

在接收所述时间服务器反馈的第三时间后,将所述wifi模块的当前时间替换第三时间,且将所述wifi模块的状态设置为时间已同步状态。

为实现上述目的,本发明还提供一种设备,所述设备包括多个wifi模块,所述wifi模块包括存储器、处理器以及存储在所述存储器并可在处理器上运行的设备的时间同步程序,所述设备的时间同步程序被处理器执行时实现如上所述的设备的时间同步方法的各个步骤.

为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有设备的时间同步程序,所述设备的时间同步程序被处理器执行时实现如上所述的设备的时间同步方法的各个步骤。

本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:

设备设有多个wifi模块,在当wifi模块未处于时间已同步状态时,wifi模块向处于时间已同步状态的wifi模块发送时间获取请求,使得该wifi模块将时间更新为处于时间已同步状态的wifi模块反馈的时间;由于已同步状态的wifi模块的时间与实际时间一致,使得设备中的各个wifi模块的时间与实际时间进行统一,从而使得设备能够根据实际时间准确的触发定时事件。

附图说明

图1为本发明实施例涉及的设备的硬件结构示意图;

图2为本发明设备的时间同步方法第一实施例的流程示意图;

图3为本发明设备的时间同步方法第二实施例的流程示意图;

图4为本发明设备的时间同步方法第三实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例的主要解决方案是:检测wifi模块是否处于时间已同步状态;在wifi模块未处于时间已同步状态时,向处于时间已同步状态的wifi模块发送时间获取请求,其中,处于时间已同步状态的wifi模块的时间与实际时间同步;接收处于时间已同步状态的wifi模块反馈的第一时间,并将所述wifi模块的当前时间更新为所述第一时间。

由于已同步状态的wifi模块的时间与实际时间一致,使得设备中的各个wifi模块的时间与实际时间进行统一,从而使得设备能够根据实际时间准确的触发定时事件。

作为一种实现方案,设备可以如图1所示。

本发明实施例方案涉及的是设备,设备设有多个wifi模块,wifi模块包括:处理器101,例如cpu,存储器102,通信总线103。其中,通信总线103用于实现这些组件之间的连接通信。

存储器102可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。如图1所示,作为一种计算机存储介质的存储器102中可以包括设备的时间同步程序;而处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

检测wifi模块是否处于时间已同步状态;

在wifi模块未处于时间已同步状态时,向处于时间已同步状态的wifi模块发送时间获取请求;

接收处于时间已同步状态的wifi模块反馈的第一时间,并将所述wifi模块的当前时间更新为所述第一时间。

在一实施例中,处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

判断所述wifi模块是否满足时间已同步状态的设置条件;

在所述wifi模块满足时间已同步状态的设置条件时,将所述wifi模块的状态设置为时间已同步状态。

在一实施例中,处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

所述wifi模块连接时间服务器;

所述wifi模块与时间服务器之间的当前网络连接信息与上一次网络连接信息不匹配;

所述wifi模块的持续运行时长大于或等于预设时长;

所述wifi模块获取处于时间已同步状态的wifi的时间。

在一实施例中,处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

判断所述wifi模块是否满足时间未同步状态的设置条件;

在所述wifi模块满足时间未同步状态的设置条件时,将所述wifi模块的时间已同步状态切换为时间未同步状态。

在一实施例中,处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

所述wifi模块与时间服务器断开连接;

所述wifi模块停止运行;

所述wifi模块向时间服务器获取时间失败。

在一实施例中,处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

检测wifi模块是否存储时间同步标识,其中,在所述wifi模块未存储时间同步标识时,判定所述wifi模块未处于时间已同步状态;

或者,检测wifi模块是否存储预设类型的时间同步标识,其中,在所述wifi模块未存储预设类型的时间同步标识时,判定所述wifi模块未处于时间已同步状态。

在一实施例中,处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

计算所述wifi模块的当前时间与第一时间之间的差值;

在所述差值大于或等于预设差值时,执行所述将所述wifi模块的当前时间更新为所述第一时间的步骤。

在一实施例中,处理器101可以用于调用存储器102中存储的设备的时间同步程序,并执行以下操作:

在wifi模块未处于时间已同步状态时,检测其它wifi模块是否处于时间已同步状态;

在其它wifi模块处于时间已同步状态时,执行所述向处于时间已同步状态的wifi模块发送时间获取请求的步骤;

在其它wifi模块未处于时间已同步状态时,向所述时间服务器发送时间获取请求;

在接收所述时间服务器反馈的第三时间后,将所述wifi模块的当前时间替换第三时间,且将所述wifi模块的状态设置为时间已同步状态。

本实施例根据上述方案,由于设备设有多个wifi模块,在当wifi模块未处于时间已同步状态时,wifi模块向处于时间已同步状态的wifi模块发送时间获取请求,使得该wifi模块将时间更新为处于时间已同步状态的wifi模块反馈的时间;由于已同步状态的wifi模块的时间与实际时间一致,使得设备中的各个wifi模块的时间与实际时间进行统一,从而使得设备能够根据实际时间准确的触发定时事件。

基于上述设备的硬件构架,提出本发明设备的时间同步方法的实施例。

参照图2,图2为本发明设备的时间同步方法的第一实施例,所述设备的时间同步方法包括以下步骤:

步骤s10,检测wifi模块是否处于时间已同步状态;

在本发明中,执行主体为设备中的wifi模块,设备设有多个wifi模块,至少一个wifi模块存储控制程序,该控制程序即为设备的时间同步程序。各个wifi模块可以通过串口进行通信,wifi模块可与时间服务器连接,各个wifi模块可以连接同一个时间服务器,当然,各个wifi模块可以连接不同的时间服务器。wifi模块的数量优选为2个,一个wifi模块设置在设备的led显示模块内,一个wifi模块设置在电控模块内,且二个wifi模块优选连接不同的时间服务器,不同的时间服务器的时间均与实际时间相同。

在本发明中,wifi模块至少包括二种状态,一种为时间已同步状态,另一种为时间未同步状态。

wifi模块在运行后,会判断wifi模块是否满足时间已同步状态的设置条件,若是满足,则将wifi模块的状态设置为时间已同步状态,而满足时间已同步状态的设置条件包括:wifi模块连接时间服务器、wifi模块与时间服务器之间的当前网络连接信息与上一次网络连接信息不匹配以及wifi模块的持续运行时长大于或等于预设时长中的至少一个;

具体的,在当wifi模块连接时间服务器时,wifi模块会向时间服务器发送时间获取请求,在当wifi模块接收到时间服务器反馈的时间时,会将wifi模块的时间更新为反馈的时间,并同时将wifi模块的状态设置为时间已同步状态,且时间已同步状态会记录在该wifi模块中,也即wifi模块存储在时间已同步状态对应的信息;此外,wifi模块在连接时间服务器后,可以定时向时间服务器获取时间,而定时时长可为时间已同步状态的存储时长,若是wifi模块在间隔定时时长后,并未成功获取该时间服务器的时间,那么会将时间已同步状态切换为时间未同步状态;若能成功获取该时间服务器的时间并进行更新,时间已同步状态继续存储,并重新开始计时。

wifi模块会间隔一定时长来轮询wifi模块与时间服务器之间的网络连接信息,一定时长可为任意合适的数值,比如3s,网络连接信息可为网络的ssid等信息,若是当前获取的网络连接信息与上一次获取的网络连接不匹配,也即不相同时,wifi模块立即向时间服务器获取时间,并在更新时间后,将wifi模块的状态设置为时间已同步状态。

wifi模块会获取其持续运行时长,若是持续运行时长较大时,wifi模块的时间可能不准确,此时需要对wifi模块的时间进行更新,也即wifi持续运行时长大于预设时长,wifi模块向时间服务器获取时间,并更新时间,且将wifi模块的状态设置为时间已同步状态。

需要说明的是,wifi模块可以根据时间同步标识来判断wifi模块是否处于时间已同步状态,具体的,在当wifi模块的状态为时间已同步状态时,wifi模块课生成时间同步标识,时间同步标识可为符号、形状、文字、数字等用以表征时间已同步的标记;在当wifi模块的状态为时间未同步,则wifi模块未存储时间同步标识;此外,可以用不同类型的时间同步标识表征wifi模块时间已同步以及时间未同步,例如,可将三角形形状作为时间已同步的标识表征wifi模块处于时间已同步状态,而将正方形作为时间未同步的标识以表征wifi模块处于时间未同步状态,也即,可将三角形作为预设类型的时间同步标识,若是wifi模块存储该类型的时间同步标识,则表明wifi模块处于时间已同步状态,反之,则处于时间未同步状态。

wifi模块在处于时间已同步状态后,需要判断wifi模块是否满足时间未同步状态的设置条件,若是满足,则将wifi模块的时间已同步状态切换为时间未同步状态,而wifi模块满足时间未同步状态的设置条件包括wifi模块与时间服务器断开连接、wifi模块停止运行以及wifi模块向时间服务器获取时间失败中的至少一种。

步骤s20,在wifi模块未处于时间已同步状态时,向处于时间已同步状态的wifi模块发送时间获取请求;

设备中的各个wifi模块在进行时间同步后,会向其它wifi模块发送该wifi模块处于时间已同步状态的信息,且wifi模块时间已同步状态切换为时间未同步状时,也会向其它wifi模块发送该wifi模块处于时间未同步状态的信息。

在wifi模块未处于时间已同步状态时,wifi模块根据已接受的其它wifi模块的信息来判断其它wifi模块是否处于时间已同步状态,从而随机选择一个处于时间已同步状态的wifi模块,从而向该wifi模块发送时间获取请求,该wifi模块在接收到时间获取请求时,会将其时间,也即第一时间反馈至发送时间获取请求的wifi模块。

步骤s30,接收处于时间已同步状态的wifi模块反馈的第一时间,并将所述wifi模块的当前时间更新为所述第一时间。

wifi模块在接收到第一时间后,将wifi模块的当前时间更新为第一时间,由此,使得该wifi模块的时间与实际时间统一。以此类推,各个未处于时间已同步状态的wifi模块均可通过步骤s20以及步骤s20进行时间更新,或者,该wifi模块在获得第一时间后,将第一时间发送其它未处于时间已同步状态的wifi模块,使得各个未处于时间已同步状态的wifi模块进行时间的更新。

需要说明的是,在wifi模块根据第一时间进行更新后,会将wifi模块的状态设置为时间已同步状态,也即满足时间已同步状态的设置条件还包括wifi模块获取处于时间已同步状态的wifi的时间。

在本实施例提供的技术方案中,设备设有多个wifi模块,在当wifi模块未处于时间已同步状态时,wifi模块向处于时间已同步状态的wifi模块发送时间获取请求,使得该wifi模块将时间更新为处于时间已同步状态的wifi模块反馈的时间;由于已同步状态的wifi模块的时间与实际时间一致,使得设备中的各个wifi模块的时间与实际时间进行统一,从而使得设备能够根据实际时间准确的触发定时事件。

参照图3,图3为本发明设备的时间同步方法的第二实施例,基于第一实施例,所述步骤s30中接收处于时间已同步状态的wifi模块反馈的第一时间的步骤之后,还包括:

步骤s40,计算所述wifi模块的当前时间与第一时间之间的差值;

步骤s50,在所述差值大于或等于预设差值时,执行所述将所述wifi模块的当前时间更新为所述第一时间的步骤;

在本实施例中,在wifi模块获得第一时间后,并不会立即进行更新,而会计算wifi模块与当前时间之间的差值,也即wifi模块记录的当前时间点与实际时间点之间的时间差,若是差值大于或等于预设差值,即表征wifi模块的当前时间与实际时间之间的误差较大,此时,需要将wifi模块的时间更新为第一时间;而在当差值小于预设差值,则表征当前时间与实际时间的误差较小,无需对wifi模块的当前时间进行更新,也即省去wifi模块更新当前时间的步骤,节省wifi模块的更新操作,此种情况下也会将wifi模块的状态设置为时间已同步,或者设置时间同步待确认状态,对处于时间同步待确认状态的时间同步轮询间隔时间较短,以及时发现该wifi模块的时间与实际时间之间出现较大的误差。

在本实施例提供的技术方案中,wifi模块在获得第一时间后,进一步计算第一时间与wifi模块当前时间之间的差值,若是差值大于或等于预设差值,则将wifi模块的当前时间更新为第一时间,若是小于预设差值,则不进行时间同步更新,节省了wifi模块的更新操作。

参照图4,图4为本发明设备的时间同步方法的第三实施例,基于第一或第二实施例,所述步骤s10之后,还包括:

步骤s60,在wifi模块未处于时间已同步状态时,检测其它wifi模块是否处于时间已同步状态;

步骤s70,在其它wifi模块处于时间已同步状态时,执行所述向处于时间已同步状态的wifi模块发送时间获取请求的步骤;

步骤s80,在其它wifi模块未处于时间已同步状态时,向所述时间服务器发送时间获取请求;

步骤s90,在接收所述时间服务器反馈的第三时间后,将所述wifi模块的当前时间替换第三时间,且将所述wifi模块的状态设置为时间已同步状态。

设备中的各个wifi模块在进行时间同步后,会向其它wifi模块发送该wifi模块处于时间已同步状态的信息,且wifi模块时间已同步状态切换为时间未同步状时,也会向其它wifi模块发送该wifi模块处于时间未同步状态的信息。

由此,wifi模块可以检测其它wifi模块是否处于时间已同步状态,若是有wifi模块处于时间已同步状态,则执行步骤s20以及步骤s30;而在当其它wifi模块均未处于时间已同步状态时,则向时间服务器发送时间获取请求,若是检测到未与时间服务器通信连接,则向时间服务器发送连接请求,从而发送时间获取请求;若是wifi模块与时间服务器连接失败,则通知其它wifi模块向时间服务器获取时间,从而从时间服务器中间接获取时间,将wifi模块的时间与实际时间进行统一。

在本实施例提供的技术方案中,在检测到wifi模块未处于时间已同步状态时,确定其它wifi模块是否处于时间已同步状态,若有其它wifi模块处于时间已同步状态时,则获取处于时间已同步状态的wifi模块的时间,若其它wifi模块均未处于时间已同步状态时,则向时间服务器获取时间,以确定wifi模块与实际时间统一,使得设备能够根据实际时间准确的触发定时事件。

本发明还提供一种设备,所述设备包括多个wifi模块,所述wifi模块包括存储器、处理器以及存储在所述存储器并可在处理器上运行的设备的时间同步程序,所述设备的时间同步程序被处理器执行时实现如上实施例所述的设备的时间同步方法的各个步骤.

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有设备的时间同步程序,所述设备的时间同步程序被处理器执行时实现如上实施例所述的设备的时间同步方法的各个步骤。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1