基于AllJoyn的联动控制方法及装置与流程

文档序号:12116655阅读:231来源:国知局
基于AllJoyn的联动控制方法及装置与流程

本发明涉及物联网技术领域,特别是涉及一种基于AllJoyn的联动控制方法及装置。



背景技术:

现有的设备联动方法一般是多事件触发,即将多个事件的组合作为触发条件进行联动控制。该联动方法主要分为以下两个步骤:当网关检测到有事件被触发时,获取事件所属的预先设置的事件组合中各事件的状态;当各事件的状态表明事件组合中的各事件均被触发时,触发对应的联动规则中的操作。

因此,上述现有联动方法属于一维控制方法,仅通过多个事件(事件维度)的组合作为触发条件,造成了该方法不能灵活地设置时间触发,具有很大的局限性,在许多场景下不能完成联动控制。例如:

场景一:早上,如果用户在7点半之前起床,那么电饭煲开始煮粥,为用户准备早餐。但是如果用户在7点半之后起床,考虑到用户可能来不及吃早餐就要去上班,这个时候电饭煲就不需要煮粥。

场景二:对于一个有重力传感器的智能洗衣机设备,设置重量到达某一个特定的数值之后,如果在白天或晚上7点之前,则洗衣机开始加水工作;如果在晚上7点之后,考虑到用户可能要休息,则设置洗衣机不工作。



技术实现要素:

产生上述缺陷的原因在于现有联动方法缺少针对时间维度的控制。

鉴于发现的原因以及为了克服上述现有技术的缺陷,本发明要解决的技术问题是提供一种基于AllJoyn的联动控制方法及装置,用以基于多维度实现设备联动控制。

为解决上述技术问题,本发明中的一种基于AllJoyn的联动控制方法,所述方法用于网关侧,包括:

当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息;

向与所述动作信息对应的联动设备发送动作调用指令,以使所述联动设备执行所述动作信息对应的动作。

可选地,所述当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息的步骤,包括:

检测发生的事件信息;

当检测到的事件信息满足预置的事件条件时,检测时间信息;

当检测到的时间信息满足预置的时间条件时,获取与所述时间条件和所述事件条件同时对应的动作信息。

具体地,所述发生的事件信息包括:

预先设置的联动设备的状态信息和/或预先设置的环境中的事件信息。

可选地,所述当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息的步骤之前,还包括:

获取与网关连接的各设备的可执行的动作信息;

将检测到的各设备的可执行的动作信息发送给终端,以使所述终端从各设备中选择联动设备,并针对每个联动设备设置联动规则;

接收终端设置的联动规则;

将所述联动规则存储在预置的规则引擎中。

具体地,所述联动规则具体为时间条件、事件条件和动作信息之间的对应规则。

为解决上述技术问题,本发明中的一种基于AllJoyn的联动控制网关,包括:

检测单元,用于当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息;

调用单元,用于向与所述动作信息对应的联动设备发送动作调用指令,以使所述联动设备执行所述动作信息对应的动作。

可选地,所述检测单元包括:

检测模块,用于检测发生的事件信息;

时间模块,用于当检测到的事件信息满足预置的事件条件时,检测时间信息;

获取模块,用于当检测到的时间信息满足预置的时间条件时,获取与所述时间条件和所述事件条件同时对应的动作信息。

具体地,所述发生的事件信息包括预先设置的联动设备的状态信息和/或预先设置的环境中的事件信息。

可选地,所述网关还包括:

获取单元,用于获取与网关连接的各设备的可执行的动作信息;

发送单元,用于将检测到的各设备的可执行的动作信息发送给终端,以使所述终端从各设备中选择联动设备,并针对每个联动设备设置联动规则;

规则引擎单元,用于接收并存储终端设置的联动规则。

具体地,所述联动规则具体为时间条件、事件条件和动作信息之间的对应规则。

本发明有益效果如下:

本发明的基于AllJoyn的联动控制方法及装置通过设置时间维度信息和事件维度信息,只有两个维度的信息都满足触发条件时,才会触发与网关连接的设备执行相应的操作,明确了时间维度的概念,使得事件与时间的区别更加清晰,便于用户进行灵活设置;并通过事件与时间的灵活搭配,可以使设备明确满足事件触发的条件时,在不同的时间段执行不同的操作,或者不进行操作,从而实现更复杂的设置,获得更好的用户体验。

附图说明

图1是本发明实施例中用于网关侧的基于AllJoyn的联动控制方法的流程图;

图2是本发明实施例中智能家电设备、智能网关和智能终端的连接关系示意图;

图3是本发明实施例中网关与设备之间的交互示意图;

图4是本发明实施例中网关与设备之间的交互的时序图;

图5是本发明实施例中用于设备侧的基于AllJoyn的联动控制方法的流程图;

图6是本发明实施例中一种基于AllJoyn的联动控制网关的结构示意图。

具体实施方式

为了解决现有技术的问题,本发明提供了一种基于AllJoyn的联动控制方法及装置,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不限定本发明。

如图1所示,本发明第一实施例提供一种基于AllJoyn的联动控制方法,所述方法用于网关侧,包括:

S101,当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息;

S102,向与所述动作信息对应的联动设备发送动作调用指令,以使所述联动设备执行所述动作信息对应的动作。

本发明实施例通过设置时间维度信息和事件维度信息,只有两个维度的信息都满足触发条件时,才会触发与网关连接的设备执行相应的操作,明确了时间维度的概念,使得事件与时间的区别更加清晰,便于用户进行灵活设置;并通过事件与时间的灵活搭配,可以使设备明确满足事件触发的条件时,在不同的时间段执行不同的操作,或者不进行操作,从而实现更复杂的设置,获得更好的用户体验;同时也可以实现“事件”或“时间”的单维控制,不失简洁性。

本发明实施例中的事件信息可以是设备的状态信息,也可以是当前环境中的预设的事件信息(例如环境温度达到30度时,调用空调的制冷功能)。本发明实施例中的设备一般指代智能家电设备,例如洗衣机、冰箱、电视、空调等等。本发明实施例中的网关一般指代智能网关。本发明实施例中的动作信息一般指代动作的执行方法。

本发明实施例可以Alljoyn技术实现。详细说:

Alljoyn是一种基于C/S(Client/Server),客户机/服务器架构的设备之间点对点通信框架,Alljoyn由Bus Daemon和终端节点组成,Bus Daemon负责终端节点之间的消息路由,服务发现等功能。终端节点是指基于Alljoyn的应用程序,应用程序启动后需要连接到Bus Daemon上,终端节点如果需要提供服务,则向BusDaemon注册一个服务名称,注册得到的服务名称由Bus Daemon广播出去。如果Alljoyn作为客户端,其可以通过服务名称来查找服务,并通过远程调用或信号来完成指定功能。

在智能家居的实际应用场景中,往往需要使用联动控制。如果需要联动控制,则需要预先设置联动规则。联动规则是指某个设备状态发生改变或者是某一事件的发生与否,与其他的智能设备的行为之间定义的一对一或一对多的规则。前者,即“某个设备状态发生改变或者是某一事件的发生与否”作为触发条件,当符合该触发条件时,就触发后者“其他的智能设备的行为”。

联动控制是指,如果某一个智能设备状态发生了改变、某一事件的发生与预先设置的联动规则的触发条件相匹配,则会触发该联动规则,执行规则对应的设备行为。比如,如果预先设置联动规则“温度低于20℃,就打开空调”,那么,如果温度传感器检测到温度低于20℃,就打开空调。联动控制可以有效地减少用户操作的重复性和复杂性,可以有效地提高整个智能家居系统运行的效率,提升用户体验。

本发明实施例中的联动机制由事件event-time(触发事件信息和时间信息)与action(动作)配对作为联动规则,当event-time发生时,与规则匹配的action就会被触发。

在上述实施例的基础上,进一步提出上述实施例的变型实施例,在此需要说明的是,为了使描述简要,在各变型实施例中仅描述与上述实施例的不同之处。

在本发明的一个实施例中,所述当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息的步骤,包括:

检测发生的事件信息;

当检测到的事件信息满足预置的事件条件时,检测时间信息;

当检测到的时间信息满足预置的时间条件时,获取与所述时间条件和所述事件条件同时对应的动作信息。

具体说,每个事件都是一个signal(信号),当某个事件发生时,signal会发送到规则引擎中,规则引擎判断是否有对应的联动规则,若有,从检测模块获取事件是否符合当前联动规则的时间条件,若时间条件符合,规则引擎进行相关的操作。

本发明实施例仅当事件信息满足事件条件时,才开始时间信息的检测,有效提高网关的检测性能。

进一步说,所述发生的事件信息包括:

预先设置的联动设备的状态信息和/或预先设置的环境中的事件信息。

在本发明的另一个实施例中,所述当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息的步骤之前,还包括:

获取与网关连接的各设备的可执行的动作信息;

将检测到的各设备的可执行的动作信息发送给终端,以使所述终端从各设备中选择1个或多个联动设备,并针对每个联动设备设置联动规则。

接收终端设置的联动规则,所述联动规则具体为时间条件、事件条件和动作信息之间的对应规则;

将所述联动规则存储在预置的规则引擎中。

本发明实施例中的终端一般指代智能终端。

本发明实施例中的可执行的动作信息为设备可执行的操作,一般情况下,某个设备都会具备多种操作,例如洗衣机的洗衣、脱水操作等。

详细说明本发明实施例。

本发明实施例涉及智能家电设备(也可以称之为智能家居设备)、智能网关和智能终端设备三部分。

智能网关是该方法的核心部分,负责联动规则的管理与匹配、相关方法的调用、向用户侧的反馈等。在智能网关中设置有检测单元、规则引擎单元和调用单元,在检测单元中设置检测模块和时间模块等。基于检测单元、规则引擎单元和调用单元实现联动控制。其中,规则引擎单元用于存储联动规则,时间模块用于获取当前时间,检测模块用于检测当前条件是否与规则引擎中的联动规则相匹配。通过设置时间模块,可以使“时间”这一维度的概念更加清晰,从而对“事件”与“时间”两个维度做更好的区分。

智能家电设备,如智能洗衣机、智能冰箱等,其主要功能是提供状态消息及功能调用。厂商事先在设备内部写入描述性语言,当设备连接到网关之后,将状态消息及可调用的功能(也可称之为可执行的动作或操作)等发送到网关。与网关建立稳定连接,这样网关就可以获取智能家居设备的实时状态,并在匹配到触发条件时,根据联动规则执行相关的功能调用。

智能终端设备与网关相连,主要功能是与用户和网关进行交互。智能终端设备与网关进行数据交互包括:从网关处获取当前已经连接到网关的设备的可用状态和可行的设备行为,以及规则引擎中已有的联动规则;将用户设置好的联动规则发送到网关并在规则引擎内存储。与用户的交互包括:向用户展示当前连接到网关的智能家电设备的可用状态和可行的设备行为;用户通过智能终端可以查看当前已有的联动规则,并设置所需的联动规则。

智能家电设备、智能网关和智能终端设备三部分之间的模块关系如图2所示;在图2中,网关与智能家居设备的交互主要包括两部分,如图3所示:

(1)智能家电设备连接到网关,并向网关提供其自身可以用于联动规则设置的触发事件以及可以通过联动控制调用的相关操作。

(2)网关中检测单元匹配到联动规则中的触发条件,调用联动规则中规定要触发的操作,使智能家电设备执行对应的操作,完成联动控制。

用户、智能家电设备、智能网关和智能终端设备的详细交互如图4所示,

(1)智能家电设备连接到网关,并向网关提供自己可用的设备状态和可执行的设备操作。

(2)智能终端从网关处获取连接到网关的智能家电设备的上述信息,以及规则引擎中已有的联动规则,并将这些信息呈现给用户。

(3)用户从智能终端处获取上述信息,如果已有的联动规则不能满足用户的需求,则用户设置新的事件-时间-动作规则。

(4)智能终端与网关进行交互,将用户新设置的规则发送的网关并存储到规则引擎中。

(5)当检测模块检测到某个作为触发条件的事件发生时,检测模块调用时间模块获取当前时间并判断是否符合相应联动规则中的时间条件。

(6)若事件与时间两个条件均符合,则网关会执行规则中定义的相关操作,使智能家电设备执行相关的操作。若两个条件中有一个条件不符合,则不会触发规则中对应的操作。

举例说明该交互过程:例如,洗衣机与洗衣机中的压力传感器连接到网关。压力传感器将传感器的数据实时发送到网关,洗衣机将洗衣服的相关操作的执行方法提供给网关。网关将这些信息发送给智能终端。用户通过智能终端查看这些信息和规则引擎中已有的规则。用户设置规则:当压力传感器数值达到1.5kg,且当前时间为白天或晚上七点前时,执行洗衣服相关的操作。智能终端将这一规则发送给网关中的规则引擎中进行存储。当检测模块检测到压力传感器数值达到1.5kg时,设备获取当前的时间,若时间信息与触发条件相符合,则调用相关的方法使洗衣机执行洗衣服操作,若事件与时间二者中有一个不符合,比如虽然压力传感器数值已经达到1.5kg,但是现在是晚上8点,则洗衣机不会执行洗衣服操作。

本发明实施例将将“时间”的概念明确化,将“时间”作为一个独立的维度设置联动控制的触发条件。通过事件与时间二维的控制条件触发,为一些与时间有密切联系的动作设置更加灵活明确的触发方式。另外,该方案并不会影响一维情况下的联动控制,即如果用户只需要设置“事件”和“时间”中的一个进行触发,则将另外一个设置为空即可。

基于上述各实施例的用于网关侧的基于AllJoyn的联动控制方法,本发明进一步提出一种用于设备侧的基于AllJoyn的联动控制方法、网关和智能设备。

如图5所示,本发明中一种基于AllJoyn的联动控制方法,所述方法用于设备侧,包括:

S501,接收网关发送的动作调用指令;

S502,根据所述动作调用指令,执行所述动作调用指令对应的动作。

进一步说,所述接收网关发送的联动指令的步骤之前,还包括:

将向网关提供本设备的状态信息和可执行的动作信息,以使所述网关将状态信息和动作信息发送给终端,使终端设置联动规则。

如图6所示,本发明中一种基于AllJoyn的联动控制网关,包括:

检测单元610,用于当检测到时间信息和发生的事件信息分别满足预置的时间条件和事件条件时,获取与所述时间条件和所述事件条件同时对应的动作信息;

调用单元611,用于向与所述动作信息对应的联动设备发送动作调用指令,以使所述联动设备执行所述动作信息对应的动作。

其中,所述检测单元610包括:

检测模块,用于检测发生的事件信息;

时间模块,用于当检测到的事件信息满足预置的事件条件时,检测时间信息;

获取模块,用于当检测到的时间信息满足预置的时间条件时,获取与所述时间条件和所述事件条件同时对应的动作信息。

其中,所述发生的事件信息包括预先设置的联动设备的状态信息和/或预先设置的环境中的事件信息。

进一步说,所述网关还包括:

获取单元,用于检测与网关连接的各设备的可执行的动作信息;

发送单元,用于将检测到的各设备的可执行的动作信息发送给终端,以使所述终端从各设备中选择联动设备,并针对每个联动设备设置联动规则;

规则引擎单元,用于接收并存储终端设置的联动规则。

具体地,所述联动规则具体为时间条件、事件条件和动作信息之间的对应规则。

本发明核心在于通过设置时间维度信息和事件维度信息,只有两个维度的信息都满足触发条件时,才会触发与网关连接的设备执行相应的操作,明确了时间维度的概念,使得事件与时间的区别更加清晰,便于用户进行灵活设置;并通过事件与时间的灵活搭配,可以使设备明确满足事件触发的条件时,在不同的时间段执行不同的操作,或者不进行操作,从而实现更复杂的设置。基于上述核心,实现的上述基于AllJoyn的联动控制方法、网关和智能设备获得了更好的用户体验。

虽然本申请描述了本发明的特定示例,但本领域技术人员可以在不脱离本发明概念的基础上设计出来本发明的变型。

本领域技术人员在本发明技术构思的启发下,在不脱离本发明内容的基础上,还可以对本发明的方法做出各种改进,这仍落在本发明的保护范围之内。

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