节点设备的控制方法、装置及路由器转让专利

申请号 : CN201510341570.1

文献号 : CN104954148B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孟德国张彦路侯恩星

申请人 : 小米科技有限责任公司

摘要 :

本公开是关于节点设备的控制方法、装置及路由器,该方法包括:判断主控设备所控制的所有被控设备是否都已进入休眠状态;在判断为所有所述被控设备都已进入所述休眠状态时,进入休眠状态。应用本公开实施例,本公开中主控设备可以在所控制的所有被控设备都进入休眠状态之后,也进入休眠状态,从而降低功耗,节省电力资源消耗,有利于延长主控设备和各被控设备的使用寿命。

权利要求 :

1.一种节点设备的控制方法,其特征在于,包括:判断主控设备所控制的所有被控设备是否都已进入休眠状态;

在判断为所有所述被控设备都已进入所述休眠状态时,所述主控设备进入休眠状态;

所述主控设备进入休眠状态之前,所述方法还包括:确定所述被控设备的最早醒来时间;

计算所述被控设备的最早醒来时间与所述被控设备进入休眠状态的最晚休眠时间之间的时间差;

基于所述时间差确定所述主控设备的自身醒来时间,所述主控设备的自身醒来时间早于所述被控设备的最早醒来时间;

所述基于所述时间差确定所述主控设备的自身醒来时间,包括:判断所述时间差是否大于设定时间阈值;

在判断为所述时间差大于所述设定时间阈值时,将少于所述时间差的时间确定为所述主控设备的自身醒来时间;

所述判断主控设备所控制的所有被控设备是否都已进入休眠状态,包括:基于所存储的各所述被控设备的标识查找休眠状态记录;

在所有所述被控设备的标识都存在于所述休眠状态记录中时,确定所有所述被控设备都已进入所述休眠状态。

2.根据权利要求1所述的方法,其特征在于,所述判断主控设备所控制的所有被控设备是否都已进入休眠状态之前,所述方法还包括:确定所述被控设备进入休眠状态。

3.根据权利要求2所述的方法,其特征在于,所述确定所述被控设备进入休眠状态,包括:接收所述被控设备发送的休眠请求;

基于所述被控设备的当前工作状况向所述被控设备发送允许休眠应答,以使所述被控设备基于所述允许休眠应答进入休眠状态;

将所述休眠应答的发送时间作为所述被控设备的休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。

4.根据权利要求2所述的方法,其特征在于,所述确定所述被控设备进入休眠状态,包括:接收所述被控设备发送的休眠通知;

基于所述休眠通知向所述被控设备发送休眠应答,以使所述被控设备基于所述休眠应答进入休眠状态;

将所述休眠应答的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。

5.根据权利要求2所述的方法,其特征在于,所述确定所述被控设备进入休眠状态,包括:基于各所述被控设备的工作状况确定能够休眠的被控设备;

向所述能够休眠的被控设备发送休眠指示,以使所述被控设备基于所述休眠指示进入休眠状态;

将所述休眠指示的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。

6.根据权利要求1所述的方法,其特征在于,所述判断主控设备所控制的所有被控设备是否都已进入休眠状态,包括:基于所存储的休眠状态记录统计进入休眠状态的所述被控设备的个数;

判断所统计的个数是否等于所存储的所有所述被控设备的个数;

在判断为所统计的个数等于所有所述被控设备的个数时,确定所述所有被控设备都已进入所述休眠状态。

7.根据权利要求1所述的方法,其特征在于,所述确定所述被控设备的最早醒来时间,包括:基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间;

基于计算出的各所述被控设备的醒来时间确定所述被控设备的最早醒来时间。

8.根据权利要求7所述的方法,其特征在于,所述基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间之前,所述方法还包括:接收各所述被控设备上报的各自的休眠时间长度;

将所述休眠时间长度与对应的所述被控设备的标识对应的进行存储。

9.根据权利要求7所述的方法,其特征在于,所述基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间之前,所述方法还包括:基于各所述被控设备的工作状况确定各所述被控设备的休眠时间长度;

将所确定的休眠时间长度与各所述被控设备的标识对应的进行存储。

10.根据权利要求1所述的方法,其特征在于,所述进入休眠状态之后,所述方法还包括:在各所述被控设备的所述醒来时间,以预设的方式唤醒对应的被控设备。

11.一种节点设备的控制装置,其特征在于,包括:判断模块,用于判断主控设备所控制的所有被控设备是否都已进入休眠状态;

休眠模块,用于在判断为所有所述被控设备都已进入所述休眠状态时,所述主控设备进入休眠状态;

所述装置还包括:

最早醒来时间确定模块,用于确定所述被控设备的最早醒来时间;

时间差计算模块,用于计算所述被控设备的最早醒来时间与所述被控设备进入休眠状态的最晚休眠时间之间的时间差;

自身醒来时间确定模块,用于基于所述时间差确定所述主控设备的自身醒来时间,所述主控设备的自身醒来时间早于所述被控设备的最早醒来时间;

所述自身醒来时间计算模块包括:

时间差判断子模块,用于判断所述时间差是否大于设定时间阈值;

自身醒来时间确定子模块,用于在判断为所述时间差大于所述设定时间阈值时,将少于所述时间差的时间确定为所述主控设备的自身醒来时间;

所述判断模块包括:

休眠状态记录查找子模块,用于基于所存储的各所述被控设备的标识查找休眠状态记录;

第一确定子模块,用于在所有所述被控设备的标识都存在于所述休眠状态记录中时,确定所有所述被控设备都已进入所述休眠状态。

12.根据权利要求11所述的装置,其特征在于,所述装置还包括:确定模块,用于确定所述被控设备进入休眠状态。

13.根据权利要求12所述的装置,其特征在于,所述确定模块包括:休眠请求接收子模块,用于接收所述被控设备发送的休眠请求;

允许休眠应答发送子模块,用于基于所述被控设备的当前工作状况向所述被控设备发送允许休眠应答,以使所述被控设备基于所述允许休眠应答进入休眠状态;

第一存储子模块,用于将所述休眠应答的发送时间作为所述被控设备的休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。

14.根据权利要求12所述的装置,其特征在于,所述确定模块包括:休眠通知接收子模块,用于接收所述被控设备发送的休眠通知;

休眠应答发送子模块,用于基于所述休眠通知向所述被控设备发送休眠应答,以使所述被控设备基于所述休眠应答进入休眠状态;

第二存储子模块,用于将所述休眠应答的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。

15.根据权利要求12所述的装置,其特征在于,所述确定模块包括:休眠设备确定子模块,用于基于各所述被控设备的工作状况确定能够休眠的被控设备;

休眠指示发送子模块,用于向所述能够休眠的被控设备发送休眠指示,以使所述被控设备基于所述休眠指示进入休眠状态;

第三存储子模块,用于将所述休眠指示的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。

16.根据权利要求11所述的装置,其特征在于,所述判断模块包括:统计子模块,用于基于所存储的休眠状态记录统计进入休眠状态的所述被控设备的个数;

判断子模块,用于判断所统计的个数是否等于所存储的所有所述被控设备的个数;

第二确定子模块,用于在判断为所统计的个数等于所有所述被控设备的个数时,确定所述所有被控设备都已进入所述休眠状态。

17.根据权利要求11所述的装置,其特征在于,所述最早醒来时间确定模块包括:醒来时间计算子模块,用于基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间;

最早醒来时间确定子模块,用于基于计算出的各所述被控设备的醒来时间确定所述被控设备的最早醒来时间。

18.根据权利要求11所述的装置,其特征在于,所述装置还包括:休眠时间长度接收模块,用于接收各所述被控设备上报的各自的休眠时间长度;

第一存储模块,用于将所述休眠时间长度与对应的所述被控设备的标识对应的进行存储。

19.根据权利要求11所述的装置,其特征在于,所述装置还包括:休眠时间长度确定模块,用于基于各所述被控设备的工作状况确定各所述被控设备的休眠时间长度;

第二存储模块,用于将所确定的休眠时间长度与各所述被控设备的标识对应的进行存储。

20.根据权利要求11所述的装置,其特征在于,所述装置还包括:唤醒模块,用于在各所述被控设备的所述醒来时间,以预设的方式唤醒对应的被控设备。

21.一种路由器,其特征在于,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:判断主控设备所控制的所有被控设备是否都已进入休眠状态;

在判断为所有所述被控设备都已进入所述休眠状态时,所述主控设备进入休眠状态;

所述主控设备进入休眠状态之前,还包括:确定所述被控设备的最早醒来时间;

计算所述被控设备的最早醒来时间与所述被控设备进入休眠状态的最晚休眠时间之间的时间差;

基于所述时间差确定所述主控设备的自身醒来时间,所述主控设备的自身醒来时间早于所述被控设备的最早醒来时间;

所述基于所述时间差确定所述主控设备的自身醒来时间,包括:判断所述时间差是否大于设定时间阈值;

在判断为所述时间差大于所述设定时间阈值时,将少于所述时间差的时间确定为所述主控设备的自身醒来时间;

所述判断主控设备所控制的所有被控设备是否都已进入休眠状态,包括:基于所存储的各所述被控设备的标识查找休眠状态记录;

在所有所述被控设备的标识都存在于所述休眠状态记录中时,确定所有所述被控设备都已进入所述休眠状态。

说明书 :

节点设备的控制方法、装置及路由器

技术领域

[0001] 本公开涉及网络通信技术领域,尤其涉及一种节点设备的控制方法、装置及路由器。

背景技术

[0002] 对于路由器控制多个终端、或智能家庭网关控制多个智能家电等一个主控设备控制多个被控设备的情况,通常,由主控设备对各个被控设备的运行进行控制,例如,主控设备控制各被控设备的数据传输等。
[0003] 相关技术中,主控设备作为各被控设备的数据传输服务或者其他控制服务的提供者,由于并不知道什么时候需要工作,因而需要一直处于工作状态,功耗较高、消耗大量电力和资源。相关技术中并没有较好的方式来对设备休眠进行控制。

发明内容

[0004] 本公开提供了一种节点设备的控制方法、装置及路由器,以解决相关技术中没有较好的方式对设备的休眠进行控制、功耗较高的问题。
[0005] 根据本公开实施例的第一方面,提供一种节点设备的控制方法,包括:
[0006] 判断主控设备所控制的所有被控设备是否都已进入休眠状态;
[0007] 在判断为所有所述被控设备都已进入所述休眠状态时,所述主控设备进入休眠状态。
[0008] 可选的,所述判断主控设备所控制的所有被控设备是否都已进入休眠状态之前,所述方法还包括:
[0009] 确定所述被控设备进入休眠状态。
[0010] 可选的,所述确定所述被控设备进入休眠状态,包括:
[0011] 接收所述被控设备发送的休眠请求;
[0012] 基于所述被控设备的当前工作状况向所述被控设备发送允许休眠应答,以使所述被控设备基于所述允许休眠应答进入休眠状态;
[0013] 将所述休眠应答的发送时间作为所述被控设备的休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。
[0014] 可选的,所述确定所述被控设备进入休眠状态,包括:
[0015] 接收所述被控设备发送的休眠通知;
[0016] 基于所述休眠通知向所述被控设备发送休眠应答,以使所述被控设备基于所述休眠应答进入休眠状态;
[0017] 将所述休眠应答的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。
[0018] 可选的,所述确定所述被控设备进入休眠状态,包括:
[0019] 基于各所述被控设备的工作状况确定能够休眠的被控设备;
[0020] 向所述能够休眠的被控设备发送休眠指示,以使所述被控设备基于所述休眠指示进入休眠状态;
[0021] 将所述休眠指示的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。
[0022] 可选的,所述判断主控设备所控制的所有被控设备是否都已进入休眠状态,包括:
[0023] 基于所存储的各所述被控设备的标识查找休眠状态记录;
[0024] 在所有所述被控设备的标识都存在于所述休眠状态记录中时,确定所有所述被控设备都已进入所述休眠状态。
[0025] 可选的,所述判断主控设备所控制的所有被控设备是否都已进入休眠状态,包括:
[0026] 基于所存储的休眠状态记录统计进入休眠状态的所述被控设备的个数;
[0027] 判断所统计的个数是否等于所存储的所有所述被控设备的个数;
[0028] 在判断为所统计的个数等于所有所述被控设备的个数时,确定所述所有被控设备都已进入所述休眠状态。
[0029] 可选的,所述主控设备进入休眠状态之前,所述方法还包括:
[0030] 确定所述被控设备的最早醒来时间;
[0031] 计算所述被控设备的最早醒来时间与所述被控设备进入休眠状态的最晚休眠时间之间的时间差;
[0032] 基于所述时间差确定所述主控设备的自身醒来时间,所述主控设备的自身醒来时间早于所述被控设备的最早醒来时间。
[0033] 可选的,所述确定所述被控设备的最早醒来时间,包括:
[0034] 基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间;
[0035] 基于计算出的各所述被控设备的醒来时间确定所述被控设备的最早醒来时间。
[0036] 可选的,所述基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间之前,所述方法还包括:
[0037] 接收各所述被控设备上报的各自的休眠时间长度;
[0038] 将所述休眠时间长度与对应的所述被控设备的标识对应的进行存储。
[0039] 可选的,所述基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间之前,所述方法还包括:
[0040] 基于各所述被控设备的工作状况确定各所述被控设备的休眠时间长度;
[0041] 将所确定的休眠时间长度与各所述被控设备的标识对应的进行存储。
[0042] 可选的,所述基于所述时间差确定所述主控设备的自身醒来时间,包括:
[0043] 判断所述时间差是否大于设定时间阈值;
[0044] 在判断为所述时间差大于所述设定时间阈值时,将少于所述时间差的时间确定为所述主控设备的自身醒来时间。
[0045] 可选的,所述进入休眠状态之后,所述方法还包括:
[0046] 在各所述被控设备的所述醒来时间,以预设的方式唤醒对应的被控设备。
[0047] 根据本公开实施例的第二方面,提供一种节点设备的控制装置,包括:
[0048] 判断模块,用于判断主控设备所控制的所有被控设备是否都已进入休眠状态;
[0049] 休眠模块,用于在判断为所有所述被控设备都已进入所述休眠状态时,所述主控设备进入休眠状态。
[0050] 可选的,所述装置还包括:
[0051] 确定模块,用于确定所述被控设备进入休眠状态。
[0052] 可选的,所述确定模块包括:
[0053] 休眠请求接收子模块,用于接收所述被控设备发送的休眠请求;
[0054] 允许休眠应答发送子模块,用于基于所述被控设备的当前工作状况向所述被控设备发送允许休眠应答,以使所述被控设备基于所述允许休眠应答进入休眠状态;
[0055] 第一存储子模块,用于将所述休眠应答的发送时间作为所述被控设备的休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。
[0056] 可选的,所述确定模块包括:
[0057] 休眠通知接收子模块,用于接收所述被控设备发送的休眠通知;
[0058] 休眠应答发送子模块,用于基于所述休眠通知向所述被控设备发送休眠应答,以使所述被控设备基于所述休眠应答进入休眠状态;
[0059] 第二存储子模块,用于将所述休眠应答的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。
[0060] 可选的,所述确定模块包括:
[0061] 休眠设备确定子模块,用于基于各所述被控设备的工作状况确定能够休眠的被控设备;
[0062] 休眠指示发送子模块,用于向所述能够休眠的被控设备发送休眠指示,以使所述被控设备基于所述休眠指示进入休眠状态;
[0063] 第三存储子模块,用于将所述休眠指示的发送时间作为休眠时间,与所述被控设备的标识对应的存储为休眠状态记录。
[0064] 可选的,所述判断模块包括:
[0065] 休眠状态记录查找子模块,用于基于所存储的各所述被控设备的标识查找休眠状态记录;
[0066] 第一确定子模块,用于在所有所述被控设备的标识都存在于所述休眠状态记录中时,确定所有所述被控设备都已进入所述休眠状态。
[0067] 可选的,所述判断模块包括:
[0068] 统计子模块,用于基于所存储的休眠状态记录统计进入休眠状态的所述被控设备的个数;
[0069] 判断子模块,用于判断所统计的个数是否等于所存储的所有所述被控设备的个数;
[0070] 第二确定子模块,用于在判断为所统计的个数等于所有所述被控设备的个数时,确定所述所有被控设备都已进入所述休眠状态。
[0071] 可选的,所述装置还包括:
[0072] 最早醒来时间确定模块,用于确定所述被控设备的最早醒来时间;
[0073] 时间差计算模块,用于计算所述被控设备的最早醒来时间与所述被控设备进入休眠状态的最晚休眠时间之间的时间差;
[0074] 自身醒来时间确定模块,用于基于所述时间差确定所述主控设备的自身醒来时间,所述主控设备的自身醒来时间早于所述被控设备的最早醒来时间。
[0075] 可选的,所述最早醒来时间确定模块包括:
[0076] 醒来时间计算子模块,用于基于所存储的各所述被控设备的休眠时间长度计算各所述被控设备的醒来时间;
[0077] 最早醒来时间确定子模块,用于基于计算出的各所述被控设备的醒来时间确定所述被控设备的最早醒来时间。
[0078] 可选的,所述装置还包括:
[0079] 休眠时间长度接收模块,用于接收各所述被控设备上报的各自的休眠时间长度;
[0080] 第一存储模块,用于将所述休眠时间长度与对应的所述被控设备的标识对应的进行存储。
[0081] 可选的,所述装置还包括:
[0082] 休眠时间长度确定模块,用于基于各所述被控设备的工作状况确定各所述被控设备的休眠时间长度;
[0083] 第二存储模块,用于将所确定的休眠时间长度与各所述被控设备的标识对应的进行存储。
[0084] 可选的,所述自身醒来时间计算模块包括:
[0085] 时间差判断子模块,用于判断所述时间差是否大于设定时间阈值;
[0086] 自身醒来时间确定子模块,用于在判断为所述时间差大于所述设定时间阈值时,将少于所述时间差的时间确定为所述主控设备的自身醒来时间。
[0087] 可选的,所述装置还包括:
[0088] 唤醒模块,用于在各所述被控设备的所述醒来时间,以预设的方式唤醒对应的被控设备。
[0089] 根据本公开实施例的第三方面,提供一种路由器,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:
[0090] 判断主控设备所控制的所有被控设备是否都已进入休眠状态;
[0091] 在判断为所有所述被控设备都已进入所述休眠状态时,所述主控设备进入休眠状态。
[0092] 本公开的实施例提供的技术方案可以包括以下有益效果:
[0093] 本公开中主控设备可以在其所控制的所有被控设备都进入休眠状态之后,也进入休眠状态,从而降低功耗,节省电力资源消耗,有利于延长主控设备和各被控设备的使用寿命。
[0094] 本公开中可以由主控设备基于被控设备的休眠请求及其当前工作状况确定是否允许其休眠,例如在被控设备工作状态较忙时不允许其休眠,如果已经有一段时间处于不工作状态则允许其休眠。从而灵活控制各个被控设备的休眠时间,既能保证被控设备不耽误工作,又能够保证其有休眠的时间,降低功耗。
[0095] 本公开中,主控设备可以基于被控设备的标识或个数查找休眠状态记录,来确定是否所有的被控设备都已进入休眠状态,这种方式易于实现。
[0096] 本公开中,由于为了保证被控设备的正常运行,主控设备应该在最早醒来的被控设备之前醒来,因而主控设备可以在进入休眠状态之前,确定被控设备中的最早醒来时间并基于该最早醒来时间确定自身醒来时间。
[0097] 本公开中主控设备可以基于休眠时间长度计算各被控设备的醒来时间,该休眠时间长度可以由主控设备来设置也可以由被控设备各自设置。
[0098] 本公开中还设置了时间阈值,只有当被控设备的最早醒来时间与最晚休眠时间之间的时间差大于时间阈值时,主控设备才进行休眠,如果该时间差小于时间阈值,也就是说主控设备能够休眠的时间特别短,那么主控设备不进入休眠,以免频繁切换工作状态给主控设备带来损耗。
[0099] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

[0100] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0101] 图1是本公开根据一示例性实施例示出的一种节点设备的控制方法流程图。
[0102] 图2是本公开根据一示例性实施例示出的一种节点设备的控制应用场景示意图。
[0103] 图3是本公开根据一示例性实施例示出的一种节点设备的控制装置框图。
[0104] 图4是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0105] 图5是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0106] 图6是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0107] 图7是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0108] 图8是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0109] 图9是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0110] 图10是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0111] 图11是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0112] 图12是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0113] 图13是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0114] 图14是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0115] 图15是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图。
[0116] 图16是本公开根据一示例性实施例示出的一种用于节点设备的控制装置的一结构示意图。

具体实施方式

[0117] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0118] 在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0119] 应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0120] 如图1所示,图1是根据一示例性实施例示出的一种节点设备的控制方法流程图,包括以下步骤:
[0121] 步骤101、判断主控设备所控制的所有被控设备是否都进入休眠状态。
[0122] 本公开中,节点设备包括主控设备及其连接的多台被控设备,可以为有线连接也可以为无线连接。连接方式可以包括I2C(Inter Integrated Circuit)、SPI(Serial Peripheral Interface,串行外设接口)、Wi-Fi(WirelessFidelity,无线保真)、蓝牙、Zigbee(紫蜂)和其它各种有线协议及无线协议的连接方式。
[0123] 本公开中,可选的,主控设备可以为各被控设备提供数据传输服务,例如,将接收到的数据传输给对应的被控设备,将来自被控设备的数据传输至目的设备。主控设备可以为路由器,被控设备可以为与主控设备连接的终端、智能家电、或者智能设备等。可选的,主控设备可以为其他类型的主控设备,例如智能家庭网关、服务器、智能家庭控制中心。主控设备还可以是用于控制智能家电、智能设备的终端等设备。主控设备还可以是用于控制传感器、触摸屏等外设的I2C控制器。
[0124] 本公开中的路由器作为一种智能路由设备,其不仅具有传统的路由功能,还可以进一步包括独立操作系统和磁盘,该磁盘的存储空间大小可以根据需要灵活设置,例如,设置为1T。本公开中的终端可以是任何具有上网功能的智能终端,例如,可以具体为手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)等。其中,终端可以通过无线局域网接入路由器,并通过路由器访问公网上的服务器。智能家电可以是智能电视、智能空调、智能空气净化器、智能净水器等。智能设备可以是智能手表、智能手环、智能电子称等设备。
[0125] 本公开中,主控设备可以通过多种方式判断被控设备是否进入休眠状态。主控设备中存储有各个被控设备的标识,例如终端的MAC(Media Access Control,媒体访问控制)地址。还可以存储有被控设备的个数。主控设备可以统计各个被控设备的状态,包括休眠状态还是正常工作状态。本公开中主要统计休眠状态。
[0126] 本公开步骤中,例如,被控设备可以向主控设备请求进入休眠状态。
[0127] 主控设备接收到被控设备发送的休眠请求,主控设备基于该被控设备的当前工作情况向被控设备发送允许休眠应答,或不允许休眠应答,在被控设备接收到该允许休眠应答时,进入休眠状态。主控设备将该被控设备进入休眠状态的休眠时间,与该被控设备的标识对应的进行记录,可以将发送允许休眠应答的时间作为休眠时间。如果被控设备接收到不允许休眠应答,则被控设备不能够休眠,主控设备无需做记录。
[0128] 本公开步骤中,被控设备还可以向主控设备上报休眠通知。
[0129] 主控设备接收到被控设备发送的休眠通知,主控设备向被控设备发送休眠应答,被控设备接收到该休眠应答,进入休眠状态。主控设备将该被控设备进入休眠状态的休眠时间,与该被控设备的标识对应的进行记录,主控设备可以将发送休眠应答的时间作为休眠时间。
[0130] 本公开步骤中,还可以由主控设备向被控设备发送休眠指示。
[0131] 主控设备基于自身工作情况以及被控设备的工作情况,向被控设备发送休眠指示,被控设备接收到该休眠指示,进入休眠状态。主控设备将该被控设备进入休眠状态的休眠时间,与该被控设备的标识对应的进行记录,该记录的内容可以称之为休眠状态记录。可以将发送休眠指示的时间作为休眠时间。
[0132] 本公开中,主控设备基于所连接的被控设备的个数以及休眠状态记录,判断是否所连接的所有被控设备都进入休眠状态。
[0133] 例如,主控设备可以基于各个被控设备的标识查找休眠状态记录,如果全部被控设备的标识都存在于休眠状态记录中,则说明所有的被控设备都进入了休眠状态。如果仅有部分被控设备的标识存在于休眠状态记录中,则说明部分被控设备进入了休眠状态,因而主控设备不能够休眠。
[0134] 主控设备还可以统计休眠状态记录中记载的被控设备的个数,如果该个数等于所连接的所有被控设备的个数,则说明所有的被控设备都进入了休眠状态。如果该统计的个数少于所有被控设备的个数,则说明部分被控设备进入了休眠状态,仍有被控设备在工作,主控设备不能进入休眠。
[0135] 步骤102、在判断为所有被控设备都处于休眠状态时,主控设备进入休眠状态。
[0136] 本公开中,主控设备可以在所有被控设备都处于休眠状态的情况下,进入休眠状态,即低功耗状态,从而达到使得主控设备适度休息,延长主控设备的使用寿命,降低整个系统的功耗,节省电力资源的目的。
[0137] 本公开中,在主控设备进入休眠状态之前,主控设备可以计算各被控设备的最早醒来时间,由此确定主控设备的醒来时间。也就是说,要保证主控设备要在最早醒来的被控设备之前醒来,以保证系统的正常运行。确定了醒来时间之后主控设备可以进入休眠状态。
[0138] 其中,可以由主控设备预先设置各个被控设备的休眠时间长度,从而基于各个被控设备的休眠时间能够计算出各个被控设备的醒来时间;也可以由被控设备各自设置休眠时间长度,并上报给主控设备,主控设备对各被控设备的休眠时间长度进行存储,并基于该休眠时间长度计算各被控设备的醒来时间。
[0139] 本公开中,在判断为所有被控设备都进入休眠状态的情况下,主控设备计算各被控设备中应该最早醒来的被控设备的醒来时间,这里称之为最早醒来时间,并计算该最早醒来时间与最晚进入休眠状态的被控设备的最晚休眠时间之间的时间差,在该时间差大于设定时间阈值的情况下,主控设备计算自己的休眠时间。
[0140] 例如,在各个被控设备的休眠时间长度相同的情况下,假设最早休眠时间为10:00,其休眠时间长度设定为1小时,那么唤醒时间应该为11:00;最晚休眠时间为10:55,那么最晚休眠时间距离最早唤醒时间仅5分钟,设定时间阈值为10分钟,该时间差小于设定时间阈值,则主控设备不进行休眠。
[0141] 如果最晚休眠时间为10:30,那么最晚休眠时间距离最早唤醒时间为30分钟,大于时间阈值,主控设备可以休眠,由于主控设备要在被控设备醒来之前醒来,因而可以确定休眠时间长度为28分钟。
[0142] 本公开中,如果在主控设备和被控设备都处于休眠状态时,某一被控设备出现紧急情况,需要紧急处理,那么被控设备的驱动向主控设备发送紧急通知,使主控设备紧急唤醒,恢复到正常工作状态,然后主控设备将该被控设备唤醒。
[0143] 本公开中,对于有线连接方式,唤醒方式可以为中断唤醒,主控设备通过传输线上电位的变化,唤醒被控设备;对于无线连接方式,需预先设定约定格式的报文,在到达唤醒时间时,主控设备向被控设备发送约定格式的报文以唤醒被控设备,以保证被控设备能够醒来。
[0144] 如图2所示,图2是本公开根据一示例性实施例示出的一种节点设备的控制应用场景示意图。在图2所示的场景中,包括:作为主控节点设备的小米路由器,以及作为被控节点设备的小米4、红米2和小米Note。
[0145] 在该应用场景中,小米路由器首先于18:10接收到红米2的休眠请求,小米路由器向红米2发送允许休眠应答,红米2基于接收到的允许休眠应答进入休眠状态,小米路由器将红米2的休眠时间18:12(发送允许休眠应答的时间)及红米2的MAC地址对应的存储到休眠状态记录中。然后,在18:29分小米路由器接收到小米4的休眠请求,小米路由器基于小米4的工作状况向小米4发送允许休眠应答,小米4基于接收到的允许休眠应答进入休眠状态,小米路由器将小米4的休眠时间18:30(发送允许休眠应答的时间)与小米4的MAC地址对应的存储到休眠状态记录中。最后,小米路由器于18:56分接收到小米Note的休眠请求,基于小米Note的工作状况向小米Note发送允许休眠应答,小米Note基于接收到的允许休眠应答进入休眠状态,小米路由器将小米Note的休眠时间18:57(发送允许休眠应答的时间)对应的存储到休眠状态记录中。小米路由器每隔设定的时间查找休眠状态记录中的进入休眠状态的被控节点设备的个数,当查找结果为3,与存储的所有被控节点设备的个数相等时,小米路由器确定所有被控节点设备都已进入休眠状态。然后小米路由器计算被控节点设备中的最早醒来时间,假设小米4、红米2和小米Note的休眠时间长度都为2小时,则最早醒来时间应该是红米2的醒来时间20:12,该时间与最晚休眠时间18:57相比,时间差为1小时15分,大于预设时间阈值10分,因而,小米路由器将自身醒来时间设定为20:10分,也就是说,小米路由器要在最早醒来的红米2之前醒来,以免耽误工作。在该应用场景中,小米路由器可以休眠1个多小时。
[0146] 在图2所示应用场景中,实现节点设备的控制的具体过程可以参见前述对图1中的描述,在此不再赘述。
[0147] 与前述节点设备的控制方法实施例相对应,本公开还提供了节点设备的控制装置及其所应用的路由器的实施例。
[0148] 如图3所示,图3是本公开根据一示例性实施例示出的一种节点设备的控制装置框图,该装置可以包括:判断模块310和休眠模块320。
[0149] 其中,判断模块310,被配置为判断主控设备所控制的所有被控设备是否都已进入休眠状态;
[0150] 休眠模块320,被配置为在判断模块310判断为所有被控设备都已进入休眠状态时,主控设备进入休眠状态。
[0151] 上述实施例中,主控设备可以在所控制的所有被控设备都进入休眠状态之后,也进入休眠状态,从而降低功耗,节省电力资源消耗,有利于延长主控设备和各被控设备的使用寿命。
[0152] 如图4所示,图4是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图3所示实施例的基础上,该装置还可以包括:确定模块330。
[0153] 其中,确定模块330,被配置为确定被控设备进入休眠状态。
[0154] 本公开中,主控设备可以预先对被控设备进入休眠状态进行确定,从而有利于判断是否全部被控设备都进入休眠状态。
[0155] 如图5所示,图5是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图4所示实施例的基础上,确定模块330可以包括:休眠请求接收子模块331、允许休眠应答发送子模块332和第一存储子模块333。
[0156] 其中,休眠请求接收子模块331,被配置为接收被控设备发送的休眠请求;
[0157] 允许休眠应答发送子模块332,被配置为基于被控设备的当前工作状况及休眠请求接收子模块331接收的休眠请求向被控设备发送允许休眠应答,以使被控设备基于允许休眠应答进入休眠状态;
[0158] 第一存储子模块333,被配置为将允许休眠应答发送子模块332发送休眠应答的发送时间作为被控设备的休眠时间,与被控设备的标识对应的存储为休眠状态记录。
[0159] 本公开中,可以由主控设备基于被控设备的休眠请求及其当前工作状况确定是否允许其休眠,例如在被控设备工作状态较忙时不允许其休眠,如果被控设备已经有一段时间处于不工作状态则允许其休眠。从而灵活控制各个被控设备的休眠时间,既能保证被控设备不耽误工作,又能够保证其有休眠的时间,降低功耗。
[0160] 如图6所示,图6是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图4所示实施例的基础上,确定模块330可以包括:休眠通知接收子模块334、休眠应答发送子模块335和第二存储子模块336。
[0161] 其中,休眠通知接收子模块334,被配置为接收被控设备发送的休眠通知;
[0162] 休眠应答发送子模块335,被配置为基于休眠通知接收子模块334接收的休眠通知向被控设备发送休眠应答,以使被控设备基于休眠应答进入休眠状态;
[0163] 第二存储子模块336,被配置为将休眠应答发送子模块335发送休眠应答的发送时间作为休眠时间,与被控设备的标识对应的存储为休眠状态记录。
[0164] 本公开中,可以由被控设备自身决定是否需要休眠,并上报给主控设备,主控设备记录对应的休眠状态。
[0165] 如图7所示,图7是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图4所示实施例的基础上,确定模块330可以包括:休眠设备确定子模块337、休眠指示发送子模块338和第三存储子模块339。
[0166] 其中,休眠设备确定子模块337,被配置为基于各被控设备的工作状况确定能够休眠的被控设备;
[0167] 休眠指示发送子模块338,被配置为向休眠设备确定子模块337确定的能够休眠的被控设备发送休眠指示,以使被控设备基于休眠指示进入休眠状态;
[0168] 第三存储子模块339,被配置为将休眠指示发送子模块338发送休眠指示的发送时间作为休眠时间,与被控设备的标识对应的存储为休眠状态记录。
[0169] 本公开中,主控设备可以每隔设定的时间段基于被控设备的工作状况确定能够休眠的被控设备,并指示其进行休眠,有利于合理利用被控设备的资源,降低功耗。
[0170] 如图8所示,图8是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图3所示实施例的基础上,该判断模块310可以包括:休眠状态记录查找子模块311和第一确定子模块312。
[0171] 其中,休眠状态记录查找子模块311,被配置为基于所存储的各被控设备的标识查找休眠状态记录;
[0172] 第一确定子模块312,被配置为在所有被控设备的标识都存在于休眠状态记录查找子模块311所查找的休眠状态记录中时,确定所有被控设备都已进入休眠状态。
[0173] 上述实施例中,主控设备可以基于被控设备的标识查找休眠状态记录,来确定是否所有的被控设备都已进入休眠状态,这种方式易于实现。
[0174] 如图9所示,图9是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图3所示实施例的基础上,判断模块310还可以包括:统计子模块313、判断子模块314和第二确定子模块315。
[0175] 其中,统计子模块313,被配置为基于所存储的休眠状态记录统计进入休眠状态的被控设备的个数;
[0176] 判断子模块314,被配置为判断统计子模块313所统计的个数是否等于所存储的所有被控设备的个数;
[0177] 第二确定子模块315,被配置为在判断子模块314判断为所统计的个数等于所有被控设备的个数时,确定所有被控设备都已进入休眠状态。
[0178] 上述实施例中,主控设备还可以基于休眠状态记录中的被控设备的个数来确定是否所有被控设备都已进入休眠状态,这种方式易于实现。
[0179] 如图10所示,图10是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图3所示实施例的基础上,该装置还可以包括:最早醒来时间确定模块340、时间差计算模块350和自身醒来时间确定模块360。
[0180] 其中,最早醒来时间确定模块340,被配置为确定被控设备的最早醒来时间;
[0181] 时间差计算模块350,被配置为计算最早醒来时间确定模块340所确定的被控设备的最早醒来时间与被控设备进入休眠状态的最晚休眠时间之间的时间差;
[0182] 自身醒来时间确定模块360,被配置为基于时间差计算模块350所计算的时间差确定主控设备的自身醒来时间,该主控设备的自身醒来时间早于被控设备的最早醒来时间。
[0183] 上述实施例中,由于为了保证被控设备的正常运行,主控设备应该在最早醒来的被控设备之前醒来,因而主控设备可以在进入休眠状态之前,确定被控设备中的最早醒来时间,并基于该最早醒来时间确定自身醒来时间。
[0184] 如图11所示,图11是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图10所示实施例的基础上,该最早醒来时间确定模块340可以包括:醒来时间计算子模块341和最早醒来时间确定子模块342。
[0185] 其中,醒来时间计算子模块341,被配置为基于所存储的各被控设备的休眠时间长度计算各被控设备的醒来时间;
[0186] 最早醒来时间确定子模块342,被配置为基于醒来时间计算子模块341计算出的各被控设备的醒来时间确定被控设备的最早醒来时间。
[0187] 如图12所示,图12是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图10所示实施例的基础上,该装置还可以包括:休眠时间长度接收模块370和第一存储模块380。
[0188] 其中,休眠时间长度接收模块370,被配置为接收各被控设备上报的各自的休眠时间长度;
[0189] 第一存储模块380,被配置为将休眠时间长度接收模块370接收的休眠时间长度与对应的被控设备的标识对应的进行存储。
[0190] 如图13所示,图13是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图10所示实施例的基础上,该装置还可以包括:休眠时间长度确定模块390和第二存储模块3100。
[0191] 其中,休眠时间长度确定模块390,被配置为基于各被控设备的工作状况确定各被控设备的休眠时间长度;
[0192] 第二存储模块3100,被配置为将休眠时间长度确定模块390所确定的休眠时间长度与各被控设备的标识对应的进行存储。
[0193] 上述实施例中,主控设备可以基于休眠时间长度计算各被控设备的醒来时间,该休眠时间长度可以由主控设备来设置也可以由被控设备各自设置。
[0194] 如图14所示,图14是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图10所示实施例的基础上,自身醒来时间计算模块360包括:时间差判断子模块361和自身醒来时间确定子模块362。
[0195] 其中,时间差判断子模块361,被配置为判断时间差计算模块350计算出的时间差是否大于设定时间阈值;
[0196] 自身醒来时间确定子模块362,被配置为在时间差判断子模块361判断为时间差大于设定时间阈值时,将少于时间差的时间确定为主控设备的自身醒来时间。
[0197] 上述实施例中,设置了时间阈值,只有当被控设备的最早醒来时间与最晚休眠时间之间的时间差大于该时间阈值时,主控设备才进行休眠,如果该时间差小于时间阈值,也就是说主控设备能够休眠的时间特别短,那么主控设备不进入休眠,以免频繁切换工作状态给主控设备带来损耗。
[0198] 如图15所示,图15是本公开根据一示例性实施例示出的另一种节点设备的控制装置框图,该实施例在前述图10所示实施例的基础上,装置还可以包括:唤醒模块3110。
[0199] 其中,唤醒模块3110,被配置为在各被控设备的醒来时间,以预设的方式唤醒对应的被控设备。
[0200] 本公开中,主控设备在计算的各被控设备的醒来时间唤醒对应的被控设备,以防被控设备休眠过度耽误正常工作。
[0201] 上述图3至图15示出的节点设备的控制装置实施例可以应用在路由器中。
[0202] 上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0203] 对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0204] 相应的,本公开还提供一种路由器,该路由器包括有处理器;用于存储处理器可执行指令的存储器;其中,该处理器被配置为:判断主控设备所控制的所有被控设备是否都已进入休眠状态;在判断为所有所述被控设备都已进入所述休眠状态时,主控设备进入休眠状态。
[0205] 如图16所示,图16是根据一示例性实施例示出的一种用于节点设备的控制装置1600的一结构示意图。例如,装置1600可以被提供为一路由设备。参照图16,装置1600包括处理组件1622,其进一步包括一个或多个处理器,以及由存储器1632所代表的存储器资源,用于存储可由处理组件1622的执行的指令,例如应用程序。存储器1632中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1622被配置为执行指令,以执行上述访问网页的方法。
[0206] 装置1600还可以包括一个电源组件1626被配置为执行装置1600的电源管理,一个有线或无线网络接口1650被配置为将装置1600连接到网络,和一个输入输出(I/O)接口1658。装置1600可以操作基于存储在存储器1632的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
[0207] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0208] 以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。