本发明涉及智能控制技术领域,尤其涉及的是一种智能家居的控制方法、系统及存储介质。
背景技术:
随着科技的发展,家用电器的智能化,越来越多的家用电器也开始通过接入网络,实现多台家电可以通过一个控制平台实现人机远程管控,进而实现智能家居。
由于各大厂家推出的智能家居产品只能使用各自的通信协议,各个厂家都有一个终端app控制。若用户买了多个厂家的家居产品,不得不下载多个app操控。用户操控时需要记住每个家居产品的品牌,用对应的app操控,各个app的操作习惯统一,使用极为不方便。例如,某移动终端品牌的智能家居平台允许用户使用该旗下智能手机和平板电脑,通过客户端和智能语音控制系统等服务控制家居灯光、门锁和音响等;此外,另一某移动终端品牌则通过自己的路由器,实现对智能家居的控制;在家电行业,也有家电厂商也致力于开发自己的手机,作为智能家居控制的切入点,由此可以看出,诸多的厂商推出的智能家居控制策略,导致智能家居产品彼此之间难以兼容,给用户的使用带来诸多不便。
因此,现有技术有待于进一步的改进。
技术实现要素:
鉴于上述现有技术中的不足之处,本发明的目的在于提供一种智能家居的控制方法、系统及存储介质,克服现有技术中由于智能家居设备之间通信协议不同,导致设备之间不兼容,无法使用同一个控制平台对来自不同厂家不同通信协议的多个智能设备进行控制的缺陷。
本发明公开的第一实施例为一种智能家居的控制方法,应用于控制中间件,包括:
预先为各个智能家居设备安装用于将其接收到的控制指令转化成可识别指令的服务插件;
通过所述服务插件以及与各个智能家居设备之间的通信接口建立与各个智能家居设备之间的通信连接;
接收用户界面转发的由用户发出的对至少一个智能家居设备的控制指令;
识别所述控制指令所对应的目标设备,并将所述控制指令通过与目标设备之间的通信接口发送至所述目标设备,以使得所述目标设备根据所述服务插件转化后的可识别指令执行相应的操作。
可选的,各个智能家居设备所属控制逻辑不同,对应安装不同的服务插件。
可选的,所述通过所述服务插件以及与各个智能家居设备之间的通信接口建立与各个智能家居设备之间的通信连接还包括:
搜索所述服务插件,并利用安卓aidl通信协议为各个服务插件建立通信通道;
利用所述通信通道进行信息传输。
可选的,所述搜索所述服务插件的步骤还包括:
接收各个智能家居设备发送的注册信息,并根据注册信息搜索相对应的各个服务插件,并建立绑定。
可选的,所述接收用户界面转发的由用户发出的对至少一个智能家居设备的控制指令的步骤还包括:
通过相连接的服务代理接收用户界面转发的用户发出的控制指令。
可选的,所述方法还包括:
通过与服务代理之间建立连接的监控接口将通过通信接口获取到的目标设备状态信息发送至用户界面。
本发明提供的第二实施例的一种智能家居的控制系统,其中,包括:控制中间件和多个智能家居设备;
所述控制中间件包括:ui模块、智能家居服务模块、设备通信接口模块和设备服务插件模块;
所述ui模块,用于接收用户界面转发的用户发出的对至少一个智能家居设备的控制指令;
所述智能家居服务模块,用于识别所述控制指令所对应的目标设备,并将所述控制指令通过与目标设备之间的设备通信服务模块发送至所述目标设备;
所述设备通信接口模块,用于识别与目标设备相匹配的设备服务插件模块,并将控制指令发送至服务插件,以使得所述控制指令通过所述设备服务插件模块转化成所述目标设备可识别指令,以及使得目标设备根据接收到的指令执行相应的控制操作。
可选的,各个智能家居设备所属控制逻辑不同,对应安装不同的设备服务插件模块。
可选的,所述控制中间件还包括:家居服务代理模块、家居服务接口模块和家居监听接口模块;
所述家居服务代理模块,与所述智能家居服务模块相连接,用于接收用户界面接收到的控制指令,以及通过其与用户界面之间的家居监听接口模块将通过设备通信接口模块获取到的目标设备状态信息发送至用户界面。
本发明提供的第三实施例为一种存储介质,其中,包括:所述存储介质上存储有智能家居的控制程序,所述智能家居的控制程序被处理器执行时实现所述的智能家居的控制方法的步骤。
有益效果,本发明提供了一种智能家居的控制方法、系统及存储介质,通过预先为各个智能家居设备安装用于将其接收到的控制指令转化成可识别指令的服务插件;通过所述服务插件以及与各个智能家居设备之间的通信接口建立与各个智能家居设备之间的通信连接;接收用户界面转发的由用户发出的对至少一个智能家居设备的控制指令;识别所述控制指令所对应的目标设备,并将所述控制指令通过与目标设备之间的通信接口发送至所述目标设备,以使得所述目标设备根据所述服务插件转化后的可识别指令执行相应的操作。本发明所提供的方法及系统,可以实现一个控制设备与多个智能家居设备兼容,也即使用一个控制终端统一控制各个智能家居终端,为用户提供了便利。
附图说明
图1是本发明提供的所述智能家居的控制方法的步骤流程图;
图2是本发明提供的所述方法中插件管理的方法步骤流程图;
图3是本发明提供的所述智能家居的控制系统原理结构框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
实施例1
本发明公开的第一实施例为一种智能家居的控制方法,如图1所示,应用于控制中间件,包括:
步骤s1、预先为各个智能家居设备安装用于将其接收到的控制指令转化成可识别指令的服务插件;
步骤s2、通过所述服务插件以及与各个智能家居设备之间的通信接口建立与各个智能家居设备之间的通信连接;
步骤s3、接收用户界面转发的由用户发出的对至少一个智能家居设备的控制指令;
步骤s4、识别所述控制指令所对应的目标设备,并将所述控制指令通过与目标设备之间的通信接口发送至所述目标设备,以使得所述目标设备根据所述服务插件转化后的可识别指令执行相应的操作。
本发明所述方法应用于控制中间件,该控制中间件可以安装在控制终端上,也可以独立设置,也可以内置到控制终端上,只要满足其具有上述方法所提出的功能,以及与控制终端和各个智能家居设备之间建立连接即可。
具体的,所述控制中间件,接收控制终端发出的控制指令;所述控制终端可以是遥控器,也可以是移动终端,也可以是通过其他方式发出的控制指令;所述控制指令可以是向一个智能家居设备发出的控制指令,也可以是向多个智能家居设备发出的控制指令。所述控制指令可以是开机、关机或者音量调节控制等。
控制中间件对接收到的控制指令进行识别,判断是向哪个智能家居设备发出的控制指令,并将控制指令转化成对应的目标设备可识别的指令,并将转化后的指令传输至相对应的目标设备。
目标设备的智能家居设备为了能顺利的识别出控制中间件通过通信接口接收到的控制指令,需要预先为安装用于将其接收到的控制指令转化成可识别指令的服务插件;以及通过所述服务插件建立与控制中间件之间的通信连接,该服务插件可以将智能家居设备接收到的控制指令转化成相应智能家居设备可识别的指令,则目标设备可以根据可识别指令进行相应的操作。
具体的,为了实现将控制指令转化成对应的目标设备可识别的指令步骤的顺利完成,所述方法还包括:
各个智能家居设备所属控制逻辑不同,对应安装不同的设备服务插件模块。也即是,本发明所述控制中间件通过在与智能家居设备上安装一个插件,该插件具有将控制指令转化为所对应智能家居设备可识别指令的功能,从而实现发出的控制指令分别发送至对应的目标设备,且保证了各个目标设备可识别该控制指令的目的。
较佳的,所述建立与各个智能家居设备之间的通信连接还包括:
搜索所述服务插件,并利用安卓aidl通信协议为各个服务插件建立通信通道;利用所述通信通道进行信息传输。
进一步的,搜索所述服务插件的步骤还包括:
接收各个智能家居设备发送的注册信息,并根据注册信息搜索相对应的服务插件,并建立绑定。
结合图2所示,关于插件及通信接口的连接及通信方式,解析如下:
厂商继承设备服务插件模块并注册service描述,以便能被智能家居服务模块发现。厂商插件在androidmanifest.xml注册如下:
<serviceandroid:name=".service.xxproviderservice">//插件类名自定义
<intent-filter>
<actionandroid:name="com.tcl.home.设备服务插件模块"/>//固定描述
<categoryandroid:name="android.intent.category.default"/>
</intent-filter>
<meta-dataandroid:name="com.tcl.home.device.provider"/>//固定描述
android:resource="@xml/setupactivity"/>//插件信息,如插件名,初始界面等
</service>智能家居服务模块搜索出厂商插件服务。
智能家居服务模块启动时,根据注册的service描述找到各个插件服务,并绑定插件服务,利用androidserviceaidl通信,为每个插件创建通信通道。
绑定各个插件服务后,androidservice利用aidl为智能家居服务模块与各个插件服务之间创建各自对应的通信通道。利用通信通道发现、查询、控制设备。
利用上述步骤中建立的通信通道,智能家居服务模块可以搜索发现所有厂商插件的设备,并将设备整合后,返回给ui显示。
ui查询、控制设备时,利用设备的厂商属性,找到对应的通信,将命令传递到对应的插件,进行查询、控制等操作。
较佳的,所述接收来自用户界面的对至少一个智能家居设备的控制指令的步骤还包括:
通过与服务代理之间建立连接的服务接口转发用户界面接收到的控制指令,以及通过与服务代理之间建立连接的监控接口将通过通信接口获取到的目标设备状态信息发送至用户界面。
下面以本发明所述方法的具体应用实施例为例,对本发明所述方法做更进一步的说明。
首先,各个智能家居设备(比如:电视、电冰箱、空调等)继承设备服务插件模块并注册service描述;
其次,智能家居服务模块根据注册的service描述找到各个插件服务,并绑定各个插件服务,利用androidserviceaidl通信,为每个插件创建通信通道;
再次,智能家居服务模块接收ui模块转发的控制指令,并识别该控制指令所对应的目标设备,并控制指令转到至与该目标设备相连接的设备通信接口模块;
最后,安装在设备通信接口模块的设备服务插件将控制指令转化成对应目标设备可识别的控制指令,发送至对应的目标设备,所述目标设备根据接收到的控制指令,进行相应的操作。
另外,智能家居服务模块与设备服务插件模块之间还设置有设备监听接口模块,用于对监听各个设备的状态信息,并将监听到的设备状态信息发送至智能家居服务模块。
实施例2
本发明所提供的一种智能家居的控制系统,包括:控制中间件和多个智能家居设备;如图3所示,所述控制中间件包括:ui模块、智能家居服务模块、设备通信接口模块和设备服务插件模块;
所述ui模块,用于接收用户界面转发的用户发出的对至少一个智能家居设备的控制指令;
所述智能家居服务模块,用于识别所述控制指令所对应的目标设备,并将所述控制指令通过与目标设备之间的设备通信服务模块发送至所述目标设备;
所述设备通信接口模块,用于识别与目标设备相匹配的设备服务插件模块,并将控制指令发送至服务插件,以使得所述控制指令通过所述设备服务插件模块转化成所述目标设备可识别指令,以及使得目标设备根据接收到的指令执行相应的控制操作。
可选的,各个智能家居设备所属控制逻辑不同,对应安装不同的设备服务插件模块。
可选的,所述控制中间件还包括:家居服务代理模块、家居服务接口模块和家居监听接口模块;
所述家居服务代理模块,与所述智能家居服务模块相连接,用于接收用户界面转发的由用户发出的控制指令,以及通过其与用户界面之间的家居监听接口模块将通过设备通信接口模块获取到的目标设备状态信息发送至用户界面。
1、智能家居服务模块是系统的核心service,运行在独立的进程,它的职责有2个。
(1).管理各个智能家居厂商服务设备服务插件模块。
(2).通过它的代理服务代理模块给提供ui、ai接口,如查询厂商列表,查询所有的设备列表接口,查询各厂商的设备列表接口,查询设备状态信息接口,控制设备接口等。
2、ui模块通过家居服务接口模块获取数据显示,控制设备。
3、设备服务插件模块是智能家居厂商service,
它对接各个厂商sdk,管理自己的智能家居设备。如查询设备列表,查询设备状态,控制设备。各个智能家居厂商service相互对立,每增加一个厂商service,只需继承实现设备服务插件模块即可,且每个设备服务插件模块运行在独立的进程。
4.ui与智能家居服务模块通过aidl跨进程双向通信,智能家居服务模块与设备服务插件模块也是跨进程双向通信。
ui接口类服务代理模块与智能家居服务模块用aidl通过i智能家居服务模块与家居监听接口模块实现双向通信。
智能家居服务模块和各个设备服务插件模块用aidl通过设备通信接口模块与设备监听接口模块实现双向通信。
这样,ui或ai与各个厂商的通信通过智能家居服务模块,完全独立开来。
每增加一个智能家居厂商,比如美的,只需要下载对应合作美的sdk实现的设备服务插件模块插件即可,ui控制逻辑都是一样的。
实施例3
本发明提供的第三实施例为一种存储介质,包括:所述存储介质上存储有智能家居的控制程序,所述智能家居的控制程序被处理器执行时实现如所述的智能家居的控制方法的步骤。
存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储工业设备管理方法使用或接收的数据等。此外,存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
上述计算机设备可执行本发明实施例所提供的方法,具备执行该方法相应的功能模块和得到相应的有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
本发明提供了一种智能家居的控制方法、系统及存储介质,通过接收来自用户界面的对至少一个智能家居设备的控制指令;识别所述控制指令所对应的目标设备,并将所述控制指令通过与目标设备之间的通信接口发送至所述目标设备,以使得所述目标设备根据所述服务插件转化后的可识别指令执行相应的操作。本发明所提供的方法及系统,可以实现一个控制设备与多个智能家居设备兼容,也即使用一个控制终端统一控制各个智能家居终端,为用户提供了便利。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。