基于云计算的智能家居控制系统、方法、设备和存储介质
技术领域
本发明涉及智能家居
技术领域
,具体涉及一种基于云计算的智能家居控制系统、方法、设备和存储介质。背景技术
随着科技的发展,智能化技术广泛地应用于生活家居中。而由于整屋智能化装修可以更好地统一管理智能家居终端,成为现代家居智能化的一个重要发展方向。
而在实际应用中,发明人发现,由于智能家居终端以及住宅中的智能家居控制中心并不需要时刻处于工作状态。例如,在无人环境下完成智能空调、扫地机器人等智能家居终端的任务配置之后,或是在用户直接接管智能家居终端等情况下,智能家居的控制中心实际上长时间处于空闲状态,造成计算资源的浪费。而在需要进行整屋的智能化调配的情况下,例如根据住户的行为习惯提前启动智能家居终端,或对智能家居终端的运行状态进行节能化调整等情况下,由于运算量较大,智能家居的控制中心往往会出现算力不足的问题,难以对信息进行有效处理,限制了整屋装修的智能化水平。
发明内容
本发明实施例提供的基于云计算的智能家居控制系统、方法、设备和存储介质,通过以住宅作为单元接入云计算系统,使智能家居单元的计算资源得到充分的利用的同时,为各个智能家居单元提供了强大的运算资源,极大地提高了整屋装修可能实现的智能化水平。
本发明第一实施例提供了一种基于云计算的智能家居控制系统,包括系统服务器和多个智能家居单元;
所述多个智能家居单元,包括发起计算任务的发起单元和接受所述计算任务的至少一个运算单元;
所述系统服务器,用于根据所述计算任务进行任务调度,包括步骤:
接收所述发起单元发送的计算请求;所述计算请求包括所述计算任务;
确定所述多个智能家居单元中处于空闲状态的智能家居单元,得到候选集合;
根据所述计算任务,从所述候选集合中选择符合任务要求的至少一个智能家居单元,得到所述运算单元的集合;
根据所述运算单元的数量,将所述计算任务分解为对应数量的子计算任务,并向所述运算单元分配所述子计算任务;
根据所述运算单元返回的子计算结果,获得所述计算任务的执行结果;
向所述发起单元发送所述执行结果。
作为上述方案的改进,所述确定所述多个智能家居单元中处于空闲状态的智能家居单元,得到候选集合,包括步骤:
获取所述多个智能家居单元的工作状态;其中,已接收所述系统服务器分配任务,且未返回结果的智能家居单元标记为忙碌状态;未接收所述系统服务器分配任务的智能家居单元,或已返回结果的智能家居单元,标记为空闲状态;
将处于空闲状态的智能家居单元加入所述候选集合。
作为上述方案的改进,所述根据所述计算任务,从所述候选集合中选择符合任务要求的至少一个智能家居单元,得到所述运算单元的集合,包括步骤:
确定执行所述计算任务所需的最低配置需求;
从所述候选集合中选择满足所述最低配置需求的N个智能家居单元,作为所述运算单元;其中,N为正整数。
作为上述方案的改进,从所述候选集合中选择满足所述最低配置需求的N个智能家居单元,作为所述运算单元,具体为:
从所述候选集合中,选择满足所述最低配置需求,且处于空闲状态时间最长的N个智能家居单元,作为所述运算单元。
作为上述方案的改进,所述根据所述运算单元的数量,将所述计算任务分解为对应数量的子计算任务,包括步骤:
将所述计算任务中发起单元的标识匿名化,得到匿名化的计算任务;
将所述匿名化的计算任务分解为与所述运算单元数量对应的子计算任务。
作为上述方案的改进,所述根据所述运算单元返回的子计算结果,获得所述计算任务的执行结果,包括步骤:
接收所述运算单元返回的所述子计算结果,记录所述运算单元的工作量;工作量满足如下关系:;
其中,为运算单元n的工作量,为所述系统服务器接收到运算单元n的子计算结果的时间,为所述系统服务器向运算单元n发送子计算任务的时间,为根据运算单元n的配置条件预先设定的单位工作量;
所述向所述发起单元发送所述执行结果之后,还包括步骤:
根据所述计算任务的总工作量,扣减所述发起节点的工作量;扣减的工作量满足如下关系:
。
作为上述方案的改进,每一所述智能家居单元,包括至少一个智能家居终端和至少一个控制器;所述至少一个控制器用于控制所述智能家居终端,且所述至少一个控制器与所述系统服务器通信连接。
本发明第二实施例提供了一种基于智能家居控制系统的任务调度方法,适用于如上任一项所述的智能家居控制系统的系统服务器,包括步骤:
接收所述发起单元发送的计算请求;所述计算请求包括所述计算任务;
确定所述多个智能家居单元中处于空闲状态的智能家居单元,得到候选集合;
根据所述计算任务,从所述候选集合中选择符合任务要求的至少一个智能家居单元,得到所述运算单元的集合;
根据所述运算单元的数量,将所述计算任务分解为对应数量的子计算任务,并向所述运算单元分配所述子计算任务;
根据所述运算单元返回的子计算结果,获得所述计算任务的执行结果;
向所述发起单元发送所述执行结果。
本发明第三实施例提供了一种基于云计算的智能家居控制设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的基于云计算的智能家居控制方法。
本发明第四实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备实现如上所述的基于云计算的智能家居控制方法。
本发明实施例提供的基于云计算的智能家居控制系统、方法、设备和存储介质,通过以住宅作为单元接入云计算系统,由系统服务器接收各智能家居单元发送的计算任务,并分配至各空闲的智能家居单元进行处理,充分了地利用了智能家居单元的空闲计算资源。并且通过整合介入到所述云计算系统中的智能家居单元的计算资源,为各智能家居单元提供了强大的运算能力,使智能化程度更高的整屋智能家居控制成为可能。
附图说明
图1是本发明第一实施例提供的基于云计算的智能家居控制系统的结构示意图。
图2是本发明第一实施例提供的系统服务器的任务调度过程的流程示意图。
图3是本发明第二实施例提供的基于智能家居控制系统的任务调度方法的流程示意图。
图4是本发明第三实施例提供的基于云计算的智能家居控制设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明第一实施例提供了一种基于云计算的智能家居控制系统。参见图1,智能家居控制系统100包括系统服务器110和多个智能家居单元120。其中,每个所述智能家居单元120至少具有一个控制器,具体可以是一个具有智能控制器的住宅,例如配置了智能家居控制中心的住宅,接入所述智能家居控制系统100以作为一个所述智能家居单元100。可以理解地,在一个住宅配置了多个控制器的情况下,该住宅可以是作为一个所述智能家居单元100接入到所述智能家居控制系统100,也可以是每个控制器及其所控制的智能家居终端作为一个所述智能家居单元100接入到所述智能家居控制系统100。
针对每一所述智能家居单元120,具体可以是用户通过加入云计算协议的方式,允许其住宅的控制器接入到所述智能家居控制系统100中,以作为智能家居单元120,在为系统提供算力支持的同时,享受智能家居控制系统100提供的云计算服务。
所述多个智能家居单元120,包括发起计算任务的发起单元和接受所述计算任务的至少一个运算单元。可以理解地,发起单元和运算单元为基于所述计算任务所划定的分类,也即对于每个所述智能家居单元120而言,作为一个计算任务的发起单元的同时,还可以作为另一计算任务的运算单元。下文涉及计算任务的描述均指同一计算任务,发起单元和运算单元指基于该计算任务所划分的发起单元和运算单元。
所述系统服务器110,用于根据所述计算任务进行任务调度。参见图2,该任务调度过程包括步骤S11至S16。
S11、接收所述发起单元发送的计算请求;所述计算请求包括所述计算任务。
任一所述智能家居单元120向所述系统服务器110发送计算请求,该智能家居单元120即成为相应的发起单元。所述计算请求包括发起单元的标识、所述计算任务的基础数据和任务目标。优选地,所述计算请求还可以包括对运算单元的最低配置要求;在其他情况下,所述最低配置要求也可以是由所述系统服务器110基于所述基础数据和所述任务目标进行分析以确定。
S12、确定所述多个智能家居单元120中处于空闲状态的智能家居单元120,得到候选集合。
具体地,所述智能家居单元120的工作状态可以包括忙碌状态和空闲状态,步骤S12具体可以包括步骤S12-1至S12-2。
S12-1、获取所述多个智能家居单元120的工作状态。其中,已接收所述系统服务器110分配任务,且未返回结果的智能家居单元120标记为忙碌状态;未接收所述系统服务器110分配任务的智能家居单元120,或已返回结果的智能家居单元120,标记为空闲状态。
更优选地,所述智能家居单元120的工作状态标记,还可以在步骤S12-1的基础上,结合每个所述智能家居单元120自行上报当前工作状态。例如,智能家居单元120a未接收所述系统服务器110分配的任务,在所述系统服务器110中标记为空闲状态,而此时智能家居单元120a需要执行本地的运算,可以通过向所述系统服务器110上报忙碌信息,从而在所述系统服务器110中标记为忙碌状态,并在完成所述本地的运算之后,向所述系统服务器110上报空闲信息,从而再次标记为空闲状态。
S12-2、将处于空闲状态的智能家居单元120加入所述候选集合。
S13、根据所述计算任务,从所述候选集合中选择符合任务要求的至少一个智能家居单元120,得到所述运算单元的集合。
优选地,步骤S13可以包括步骤S13-1至S13-2。
S13-1、确定执行所述计算任务所需的最低配置需求。
可以理解地,所述最低配置要求可以是由所述发起单元提供,或是由所述系统服务器110基于所述基础数据和所述任务目标进行分析以确定。所述最低配置需求具体可以包括处理器核心数、处理器频率、处理器架构、内存大小、内存频率、系统参数等配置参数中的一项或多项。
S13-2、从所述候选集合中选择满足所述最低配置需求的N个智能家居单元120,作为所述运算单元。其中,N为正整数。
对于正整数N的取值,可以是预先设置的固定值,也可以是由所述系统服务器110根据所述候选集合中的智能家居单元120数量所确定的变化值。例如,以所述候选集合中的智能家居单元120数量的3%,向下取整,得到该正整数N的取值。
当所述候选集合中满足所述最低配置需求的所述智能家居单元120数量大于数量N时,可以是从中筛选出处于空闲状态的时间最长的N个所述智能家居单元120,作为所述运算单元;而在小于等于数量N时,可以将所述候选集合中满足所述最低配置需求的全部所述智能家居单元120作为所述运算单元,并进入步骤S14的流程处理。
S14、根据所述运算单元的数量,将所述计算任务分解为对应数量的子计算任务,并向所述运算单元分配所述子计算任务。
其中,对于所述计算任务的分解可以包括步骤S14-1至S14-2。
S14-1、将所述计算任务中发起单元的标识匿名化,得到匿名化的计算任务。
通过匿名化处理,避免所述发起单元的隐私数据泄露,为智能家居单元120的信息安全提供有效保障。
S14-2、将所述匿名化的计算任务分解为与所述运算单元数量对应的子计算任务。
S15、根据所述运算单元返回的子计算结果,获得所述计算任务的执行结果。
结合步骤S14-2,对所述匿名化的计算任务的分解过程和对子计算结果的复合过程,可以参考现有的云计算任务分解复合技术,在此不做限制。
在接收到所述运算单元返回的所述子计算结果之后,还可以进一步执行:记录所述运算单元的工作量;工作量满足如下关系:。
其中,为运算单元n的工作量,为所述系统服务器110接收到运算单元n的子计算结果的时间,为所述系统服务器110向运算单元n发送子计算任务的时间,为根据运算单元n的配置条件预先设定的单位工作量。例如,可以预先为处理器参数和其他软硬件参数设置相应的权重指标,进而根据运算单元n的处理器参数和其他软硬件参数,结合该权重指标计算对应的单位工作量,以区分不同运算单元之间的运算能力。
S16、向所述发起单元发送所述执行结果。
在执行步骤S16之后,还可以进一步执行:根据所述计算任务的总工作量,扣减所述发起节点的工作量。扣减的工作量满足如下关系:。
具体地,结合工作量计算,可以是在每一所述智能家居单元120接入所述智能家居控制系统100时,为该智能家居单元120分配一定额度的工作量;在步骤S11之后还可以对所述发起单元剩余的工作量进行判断,若所述发起单元剩余的工作量低于预设阈值,例如低于零,则向所述发起单元发出工作量不足的提醒,等待所述发起单元取消所述计算任务,或是在所述发起单元充值工作量之后再进行后续流程的处理。从而避免用户无节制地占用其他智能家居单元120的运算资源,造成运算资源的过度损耗,提高云计算的运算资源分配效率。
本发明第一实施例提供的基于云计算的智能家居控制系统,通过以住宅作为单元接入云计算系统,由系统服务器接收各智能家居单元发送的计算任务,并分配至各空闲的智能家居单元进行处理,充分了地利用了智能家居单元的空闲计算资源。并且通过整合介入到所述云计算系统中的智能家居单元的计算资源,为各智能家居单元提供了强大的运算能力,使智能化程度更高的整屋智能家居控制成为可能。
本发明第二实施例提供了一种基于智能家居控制系统的任务调度方法,适用于如第一实施例所述的智能家居控制系统的系统服务器。参见图3,该任务调度方法包括步骤S21至S26。
S21、接收所述发起单元发送的计算请求;所述计算请求包括所述计算任务。
S22、确定所述多个智能家居单元中处于空闲状态的智能家居单元,得到候选集合。
S23、根据所述计算任务,从所述候选集合中选择符合任务要求的至少一个智能家居单元,得到所述运算单元的集合。
S24、根据所述运算单元的数量,将所述计算任务分解为对应数量的子计算任务,并向所述运算单元分配所述子计算任务。
S25、根据所述运算单元返回的子计算结果,获得所述计算任务的执行结果。
S26、向所述发起单元发送所述执行结果。
所述任务调度方法可以根据如第一实施例所示的步骤S11至S16进行优化,并取得相应效果,在此不作赘述。
本发明实施例提供的基于智能家居控制系统的任务调度方法,通过以住宅作为单元接入云计算系统,由系统服务器接收各智能家居单元发送的计算任务,并分配至各空闲的智能家居单元进行处理,充分了地利用了智能家居单元的空闲计算资源。并且通过整合介入到所述云计算系统中的智能家居单元的计算资源,为各智能家居单元提供了强大的运算能力,使智能化程度更高的整屋智能家居控制成为可能。
参见图4,是本发明第三实施例提供的基于云计算的智能家居控制设备300的示意图。所述基于云计算的智能家居控制设备300包括:处理器310、存储器320以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如任务调度程序。所述处理器执行所述计算机程序时实现上述基于云计算的智能家居控制方法实施例中的步骤,例如图3所示的任务调度方法的步骤。或者,所述处理器执行所述计算机程序时实现上述各系统实施例中各单元的功能,例如第一实施例所述的系统服务器或智能家居单元。
示例性的,所述计算机程序可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器320中,并由所述处理器310执行,以完成本发明。所述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述智能家居控制终端设备中的执行过程。例如,S21、接收所述发起单元发送的计算请求;所述计算请求包括所述计算任务;S22、确定所述多个智能家居单元中处于空闲状态的智能家居单元,得到候选集合;S23、根据所述计算任务,从所述候选集合中选择符合任务要求的至少一个智能家居单元,得到所述运算单元的集合;S24、根据所述运算单元的数量,将所述计算任务分解为对应数量的子计算任务,并向所述运算单元分配所述子计算任务;S25、根据所述运算单元返回的子计算结果,获得所述计算任务的执行结果;S26、向所述发起单元发送所述执行结果。
所述基于云计算的智能家居控制设备300可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述基于云计算的智能家居控制设备300可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述示意图仅仅是基于云计算的智能家居控制设备300的示例,并不构成对基于云计算的智能家居控制设备300的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述基于云计算的智能家居控制设备300还可以包括输入输出设备、网络接入设备、总线等。
所称处理器310可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器310是所述基于云计算的智能家居控制设备300的控制中心,利用各种接口和线路连接整个智能家居控制终端设备的各个部分。
所述存储器320可用于存储所述计算机程序或模块,所述处理器310通过运行或执行存储在所述存储器内的计算机程序或模块,以及调用存储在存储器内的数据,实现所述智能家居控制终端设备的各种功能。所述存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(SecureDigital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述基于云计算的智能家居控制设备300集成的模块或单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明第三实施例提供的基于云计算的智能家居控制设备和存储介质,通过以住宅作为单元接入云计算系统,由系统服务器接收各智能家居单元发送的计算任务,并分配至各空闲的智能家居单元进行处理,充分了地利用了智能家居单元的空闲计算资源。并且通过整合介入到所述云计算系统中的智能家居单元的计算资源,为各智能家居单元提供了强大的运算能力,使智能化程度更高的整屋智能家居控制成为可能。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。