CN110034983B - 基于发布-订阅消息处理机制的家居设备联动方法及*** - Google Patents
基于发布-订阅消息处理机制的家居设备联动方法及*** Download PDFInfo
- Publication number
- CN110034983B CN110034983B CN201910177126.9A CN201910177126A CN110034983B CN 110034983 B CN110034983 B CN 110034983B CN 201910177126 A CN201910177126 A CN 201910177126A CN 110034983 B CN110034983 B CN 110034983B
- Authority
- CN
- China
- Prior art keywords
- performance
- linkage
- equipment
- devices
- home
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000007246 mechanism Effects 0.000 title claims abstract description 55
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000006855 networking Effects 0.000 claims abstract description 97
- 238000004891 communication Methods 0.000 claims abstract description 75
- 230000009471 action Effects 0.000 claims description 15
- 230000002159 abnormal effect Effects 0.000 claims description 12
- 230000001360 synchronised effect Effects 0.000 claims description 8
- 230000008878 coupling Effects 0.000 abstract description 10
- 238000010168 coupling process Methods 0.000 abstract description 10
- 238000005859 coupling reaction Methods 0.000 abstract description 10
- 230000000875 corresponding effect Effects 0.000 description 21
- 230000008569 process Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 7
- 230000001276 controlling effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/26—Pc applications
- G05B2219/2642—Domotique, domestic, home control, automation, smart house
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Manufacturing & Machinery (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了基于发布‑订阅消息处理机制的家居设备联动方法及***,包括用户终端、多个联网设备、家庭路由器和云服务器,所述用户终端和多个联网设备之间采用发布‑订阅消息处理机制进行通信,所述用户终端和云服务器之间采用发布‑订阅消息处理机制进行通信,多个联网设备划分为高性能设备和低性能设备两类,并进行分组:一个高性能设备和多个低性能设备绑定成一组,所有的高性能设备之间建立信道,所有的高性能设备均与家庭路由器采用发布‑订阅消息处理机制进行通信,在同一个高性能设备下的所有低性能设备之间建立信道,从而联网设备间构成网状网通信。从而降低联网设备之间的耦合度,家庭无外网或断网时,也能保证设备间的联动。
Description
技术领域
本发明涉及智能家居技术领域,尤其涉及基于发布-订阅消息处理机制的家居设备联动方法及***。
背景技术
智能家居是在互联网影响之下物联化的体现。智能家居通过物联网技术将家中的各种联网设备进行智能控制,而最新的智能家居是可以根据预先设定的场景使得多个相关的联网设备按特点流程执行对应的动作,即实现联网设备间的联动控制。
而现有的联动控制采用请求/回应消息处理机制,所有的数据和控制逻辑集中在云服务器处理,某一个联网设备发出请求后,就一定得等到云服务器执行并回应后,该联网设备才能执行其它动作,网络延时厉害;同理,云服务器发出请求后,对应的联网设备得尽快执行完成请求指令,并回应结果给云服务器,连接了数万亿联网设备的云服务器负荷非常重。而且,家中所有的联网设备均连接到路由器,网络信道拥挤,一些数据量小的联网设备也联网到路由器,占用了无线信道,导致一些数据量大的联网设备反而得不到无线信道。集中于云服务器处理数据,强依赖于家庭网络与云服务器通信的流畅性,一旦与云服务器的网络中断,家庭联网设备无法实现联动。而有些家庭联网设备处理能力强,比如支持语音识别、图像处理、摄像头的设备,只在极少的时间内处理专有的功能,大部分时候设备处于空闲状态,造成资源浪费。
发明内容
本发明的一个目的在于提出一种基于发布-订阅消息处理机制的家居设备联动方法,降低联网设备之间的耦合度,家庭无外网或断网时,也能保证设备间的联动。
本发明的另一个目的在于提出一种基于发布-订阅消息处理机制的家居设备联动***,降低联网设备之间的耦合度,家庭无外网或断网时,也能保证设备间的联动。
为达此目的,本发明采用以下技术方案:
一种基于发布-订阅消息处理机制的家居设备联动方法,应用于对智能家居的联网设备进行控制,包括用户终端、多个联网设备、家庭路由器和云服务器,所述用户终端和多个联网设备之间采用发布-订阅消息处理机制进行通信,所述用户终端和云服务器之间采用发布-订阅消息处理机制进行通信,所述家庭路由器和云服务器通过互联网进行通信;包括以下步骤:
网状网通信建立步骤,多个联网设备划分为高性能设备和低性能设备两类,并进行分组:一个所述高性能设备和多个低性能设备绑定成一组,所有的高性能设备之间建立信道,所有的高性能设备均与家庭路由器采用发布-订阅消息处理机制进行通信,在同一个高性能设备下的所有低性能设备之间建立信道,从而联网设备间构成网状网通信;
联动步骤,用户终端发布联动消息,相关的所述高性能设备根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备,相关的所述低性能设备执行对应的联动动作,若联动相关的联网设备包含高性能设备,则待联动的高性能设备根据联动控制命令执行对应的联动动作;
当家庭路由器和云服务器通信异常或断网时,用户终端直接向家庭路由器发布联动消息,由家庭路由器下发联动消息至相关的所述高性能设备。
优选地,还包括数据预保存步骤:
当家庭路由器和云服务器通信正常时,联网设备间联动产生的数据直接同步至云服务器;
当家庭路由器和云服务器通信异常或断网时,联网设备间联动产生的数据保存至与其绑定的高性能设备的数据库中,并且高性能设备之间相互备份彼此的数据库数据;
当家庭路由器和云服务器通信恢复正常时,家庭路由器将所有的高性能设备的数据库数据同步至云服务器。
优选地,还包括故障转移步骤:
对所有的高性能设备建立优先级;
当某个高性能设备出现故障时,家庭路由器根据优先级,将故障的高性能设备绑定的所有低性能设备转移至正常运行且优先级最高的高性能设备上进行绑定。
优选地,在所述高性能设备上部署分布式的MQTT服务器,所述分布式的MQTT服务器为EMQ服务器或VerneMQ服务器。
优选地,所述用户终端和云服务器之间、所述家庭路由器和高性能设备之间和所述用户终端和高性能设备之间均采用MQTT通信协议;
所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑。
优选地,一种基于发布-订阅消息处理机制的家居设备联动***,应用于对智能家居的联网设备进行控制,包括用户终端、多个联网设备、家庭路由器和云服务器,所述用户终端和多个联网设备之间采用发布-订阅消息处理机制进行通信,所述用户终端和云服务器之间采用发布-订阅消息处理机制进行通信,所述家庭路由器和云服务器通过互联网进行通信;
多个联网设备划分为高性能设备和低性能设备两类,并进行分组:一个所述高性能设备和多个低性能设备绑定成一组,所有的高性能设备之间建立信道,所有的高性能设备均与家庭路由器采用发布-订阅消息处理机制进行通信,在同一个高性能设备下的所有低性能设备之间建立信道,从而联网设备间构成网状网通信;
所述用户终端用于发布联动消息;所述高性能设备用于根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备,和若联动相关的联网设备包含高性能设备则根据联动控制命令执行对应的联动动作;所述低性能设备用于执行对应的联动动作;
当家庭路由器和云服务器通信异常或断网时,用户终端直接向家庭路由器发布联动消息,由家庭路由器下发联动消息至相关的所述高性能设备。
优选地,所述高性能设备设有数据预保存模块,所述数据预保存模块用于:
当家庭路由器和云服务器通信正常时,将联网设备间联动产生的数据直接同步至云服务器;
和当家庭路由器和云服务器通信异常或断网时,将联网设备间联动产生的数据保存至自身的数据库中,并且备份其他高性能设备的数据库数据;
家庭路由器用于当家庭路由器和云服务器通信恢复正常时,将所有的高性能设备的数据库数据同步至云服务器。
优选地,所述家庭路由器设有故障转移模块,所述故障转移模块用于:
对所有的高性能设备建立优先级;
和当某个高性能设备出现故障时,根据优先级,将故障的高性能设备绑定的所有低性能设备转移至正常运行且优先级最高的高性能设备上进行绑定。
优选地,所述高性能设备部署有分布式的MQTT服务器,所述分布式的MQTT服务器为EMQ服务器或VerneMQ服务器。
优选地,所述用户终端和云服务器之间、所述家庭路由器和高性能设备之间和所述用户终端和高性能设备之间均采用MQTT通信协议;
所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑。
所述基于发布-订阅消息处理机制的家居设备联动方法,用户终端和多个联网设备之间采用发布-订阅消息处理机制进行通信,发布者只管发布消息,订阅者只管相应订阅信息的到来,将发布者和订阅者在时间及空间上隔离,让发布者和订阅者有更多时间处理其它信息,双方负荷大大减少;例如当用户终端发布了联动消息后,用户终端无需等待联动情况的反馈,而是去处理其它信息;家庭路由器将联动消息下发时,高性能设备也只是接收自身订阅的联动消息,若该联动消息不是自身订阅的是不会接收,从而降低联网设备之间的耦合度。
附图说明
附图对本发明做进一步说明,但附图中的内容不构成对本发明的任何限制。
图1是本发明其中一个实施例的基于发布-订阅消息处理机制的家居设备联动拓扑结构示意图。
其中:用户终端1;家庭路由器2;云服务器3;高性能设备4;低性能设备5。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
实施例一
本实施例的基于发布-订阅消息处理机制的家居设备联动方法,应用于对智能家居的联网设备进行控制,如图1所示,包括用户终端1、多个联网设备、家庭路由器2和云服务器3,所述用户终端1和多个联网设备之间采用发布-订阅消息处理机制进行通信,所述用户终端1和云服务器3之间采用发布-订阅消息处理机制进行通信,所述家庭路由器2和云服务器3通过互联网进行通信;包括以下步骤:
网状网通信建立步骤,多个联网设备划分为高性能设备4和低性能设备5两类,并进行分组:一个所述高性能设备4和多个低性能设备5绑定成一组,所有的高性能设备4之间建立信道,所有的高性能设备4均与家庭路由器2采用发布-订阅消息处理机制进行通信,在同一个高性能设备4下的所有低性能设备5之间建立信道,从而联网设备间构成网状网通信;
联动步骤,用户终端1发布联动消息,相关的所述高性能设备4根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备5,相关的所述低性能设备5执行对应的联动动作,若联动相关的联网设备包含高性能设备4,则待联动的高性能设备4根据联动控制命令执行对应的联动动作;
当家庭路由器2和云服务器3通信异常或断网时,用户终端1直接向家庭路由器2发布联动消息,由家庭路由器2下发联动消息至相关的所述高性能设备4。
所述基于发布-订阅消息处理机制的家居设备联动方法,用户终端1和多个联网设备之间采用发布-订阅消息处理机制进行通信,发布者只管发布消息,订阅者只管相应订阅信息的到来,将发布者和订阅者在时间及空间上隔离,让发布者和订阅者有更多时间处理其它信息,双方负荷大大减少;例如当用户终端1发布了联动消息后,用户终端1无需等待联动情况的反馈,而是去处理其它信息;家庭路由器2将联动消息下发时,高性能设备4也只是接收自身订阅的联动消息,若该联动消息不是自身订阅的是不会接收,从而降低联网设备之间的耦合度。
联网设备间构成网状网通信,只有高性能设备4和家庭路由器2通信连接,减少了直接连接路由器的设备数量,减轻了网络信道的拥挤;并且采用分布式处理,由相关的所述高性能设备4根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备5,而非集中于云服务器3或家庭路由器2来分析处理数据和控制联网设备。这样的分布式处理,当家庭路由器2和云服务器3通信异常或断网时,仍可通过家庭内部的网状网通信来实现联网设备间的联动。例如,用户终端1发布需要低性能设备a联动低性能设备b的联动消息时,与低性能设备a绑定的高性能设备A接收该联动消息并下发对应的联动控制命令至低性能设备a,与低性能设备b绑定的高性能设备B也接收该联动消息并下发对应的联动控制命令至低性能设备b,低性能设备a和低性能设备b无需经过云服务器3即可实现对应的联动动作。所述基于发布-订阅消息处理机制的家居设备联动方法充分利用了高性能设备4的强大的处理性能,减轻网络臃肿,同时能够很好地解决设备间的互联互通及联动功能;家庭无外网或断网时,也能保证设备间的联动。
所述用户终端1为手机、应用APP、平板电脑、智能手表等。所述高性能设备4为除了完成其自身专用的语音、图像处理、摄像头、音频输出等功能外,设备本身性能较高,还有大量冗余性能未发挥的设备,如电视、冰箱、空调等大型家用电器。所述低性能设备5为功能较单一或冗余性能少的设备,如电灯、电水壶、智能门锁等小型家用电器。
优选地,还包括数据预保存步骤:
当家庭路由器2和云服务器3通信正常时,联网设备间联动产生的数据直接同步至云服务器3;
当家庭路由器2和云服务器3通信异常或断网时,联网设备间联动产生的数据保存至与其绑定的高性能设备4的数据库中,并且高性能设备4之间相互备份彼此的数据库数据;
当家庭路由器2和云服务器3通信恢复正常时,家庭路由器2将所有的高性能设备4的数据库数据同步至云服务器3。
当家庭路由器2和云服务器3通信正常时,联网设备间联动产生的数据依次经过高性能设备4和家庭路由器2同步至云服务器3,云服务器3将联动产生的数据发布至对应的用户终端1,用户终端1接收自身订阅的联动产生的数据。
高性能设备4的数据库还用于存储与其绑定的联网设备间联动产生的数据,从而避免断网时联网设备间联动产生的数据无法保存的问题。并且,高性能设备4之间相互备份彼此的数据库数据,有效避免数据丢失或缺失的情况;当网络恢复正常时,高性能设备4的数据库数据同步至云服务器3,云服务器3从中查找出联网设备间联动产生的数据,从而大大地提高联动可靠性和稳定性。
优选地,还包括故障转移步骤:
对所有的高性能设备4建立优先级;当某个高性能设备4出现故障时,家庭路由器2根据优先级,将故障的高性能设备4绑定的所有低性能设备5转移至正常运行且优先级最高的高性能设备4上进行绑定。
当某个高性能设备4出现故障时,会影响到联动的实现,因此需要将其隔离,并为与其绑定的低性能设备5寻找新的高性能设备4。所以对所有的高性能设备4建立优先级,通过优先级让家庭路由器2寻找到最优的高性能设备4进行绑定,优先级可以高性能设备4的处理能力强弱来决定,以避免因绑定的低性能设备5大大增多而影响联动的实现或高性能设备4自身的功能实现。
优选地,在所述高性能设备4上部署分布式的MQTT服务器,所述分布式的MQTT服务器为EMQ服务器或VerneMQ服务器。从而使所述高性能设备4拥有与云服务器等同的数据、设备处理逻辑,使所述高性能设备4可根据接收的联动消息产生相关的联动控制命令。
优选地,所述用户终端1和云服务器3之间、所述家庭路由器2和高性能设备4之间和所述用户终端1和高性能设备4之间均采用MQTT通信协议;所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑。
所述用户终端1和云服务器3之间、所述家庭路由器2和高性能设备4之间和所述用户终端1和高性能设备4之间均采用MQTT通信协议,而非基于请求/回应的消息处理机制,减轻网络臃肿,让发布者和订阅者有更多时间处理其它信息,双方负荷大大减少。所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑,从而各联网设备间能够直接或者间接通信,即使在没有外网的家庭,联网设备间的联动依然正常。
所述非基于请求/回应的消息处理机制应用之间具有强耦合性,比如:应用A请求的指令,需要得到另一个应用B处理完成后回应,耦合度极高,增加了应用A的延时等待时间,同时也意味着应用B要放下当前执行的其它任务,尽快响应请求指令,完成后回应结果给请求方,加重了应用B的负担。
实施例二
本实施例的基于发布-订阅消息处理机制的家居设备联动***,如图1所示,应用于对智能家居的联网设备进行控制,包括用户终端1、多个联网设备、家庭路由器2和云服务器3,所述用户终端1和多个联网设备之间采用发布-订阅消息处理机制进行通信,所述用户终端1和云服务器3之间采用发布-订阅消息处理机制进行通信,所述家庭路由器2和云服务器3通过互联网进行通信;
多个联网设备划分为高性能设备4和低性能设备5两类,并进行分组:一个所述高性能设备4和多个低性能设备5绑定成一组,所有的高性能设备4之间建立信道,所有的高性能设备4均与家庭路由器2采用发布-订阅消息处理机制进行通信,在同一个高性能设备4下的所有低性能设备5之间建立信道,从而联网设备间构成网状网通信;
所述用户终端1用于发布联动消息;所述高性能设备4用于根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备5,和若联动相关的联网设备包含高性能设备4则根据联动控制命令执行对应的联动动作;所述低性能设备5用于执行对应的联动动作;
当家庭路由器2和云服务器3通信异常或断网时,用户终端1直接向家庭路由器2发布联动消息,由家庭路由器2下发联动消息至相关的所述高性能设备4。
所述基于发布-订阅消息处理机制的家居设备联动***,用户终端1和多个联网设备之间采用发布-订阅消息处理机制进行通信,发布者只管发布消息,订阅者只管相应订阅信息的到来,将发布者和订阅者在时间及空间上隔离,让发布者和订阅者有更多时间处理其它信息,双方负荷大大减少;例如当用户终端1发布了联动消息后,用户终端1无需等待联动情况的反馈,而是去处理其它信息;家庭路由器2将联动消息下发时,高性能设备4也只是接收自身订阅的联动消息,若该联动消息不是自身订阅的是不会接收,从而降低联网设备之间的耦合度。
联网设备间构成网状网通信,只有高性能设备4和家庭路由器2通信连接,减少了直接连接路由器的设备数量,减轻了网络信道的拥挤;并且采用分布式处理,由相关的所述高性能设备4根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备5,而非集中于云服务器3或家庭路由器2来分析处理数据和控制联网设备。这样的分布式处理,当家庭路由器2和云服务器3通信异常或断网时,仍可通过家庭内部的网状网通信来实现联网设备间的联动。例如,用户终端1发布需要低性能设备a联动低性能设备b的联动消息时,与低性能设备a绑定的高性能设备A接收该联动消息并下发对应的联动控制命令至低性能设备a,与低性能设备b绑定的高性能设备B也接收该联动消息并下发对应的联动控制命令至低性能设备b,低性能设备a和低性能设备b无需经过云服务器3即可实现对应的联动动作。所述基于发布-订阅消息处理机制的家居设备联动***充分利用了高性能设备4的强大的处理性能,减轻网络臃肿,同时能够很好地解决设备间的互联互通及联动功能;家庭无外网或断网时,也能保证设备间的联动。
所述用户终端1为手机、应用APP、平板电脑、智能手表等。所述高性能设备4为除了完成其自身专用的语音、图像处理、摄像头、音频输出等功能外,设备本身性能较高,还有大量冗余性能未发挥的设备,如电视、冰箱、空调等大型家用电器。所述低性能设备5为功能较单一或冗余性能少的设备,如电灯、电水壶、智能门锁等小型家用电器。
优选地,所述高性能设备4设有数据预保存模块,所述数据预保存模块用于:当家庭路由器2和云服务器3通信正常时,将联网设备间联动产生的数据直接同步至云服务器3;
和当家庭路由器2和云服务器3通信异常或断网时,将联网设备间联动产生的数据保存至自身的数据库中,并且备份其他高性能设备4的数据库数据;
家庭路由器2用于当家庭路由器2和云服务器3通信恢复正常时,将所有的高性能设备4的数据库数据同步至云服务器3。
当家庭路由器2和云服务器3通信正常时,联网设备间联动产生的数据依次经过高性能设备4和家庭路由器2同步至云服务器3,云服务器3将联动产生的数据发布至对应的用户终端1,用户终端1接收自身订阅的联动产生的数据。
高性能设备4的数据库还用于存储与其绑定的联网设备间联动产生的数据,从而避免断网时联网设备间联动产生的数据无法保存的问题。并且,高性能设备4之间相互备份彼此的数据库数据,有效避免数据丢失或缺失的情况;当网络恢复正常时,高性能设备4的数据库数据同步至云服务器3,云服务器3从中查找出联网设备间联动产生的数据,从而大大地提高联动可靠性和稳定性。
优选地,所述家庭路由器2设有故障转移模块,所述故障转移模块用于:
对所有的高性能设备4建立优先级;和当某个高性能设备4出现故障时,根据优先级,将故障的高性能设备4绑定的所有低性能设备5转移至正常运行且优先级最高的高性能设备4上进行绑定。
当某个高性能设备4出现故障时,会影响到联动的实现,因此需要将其隔离,并为与其绑定的低性能设备5寻找新的高性能设备4。所以对所有的高性能设备4建立优先级,通过优先级让家庭路由器2寻找到最优的高性能设备4进行绑定,优先级可以高性能设备4的处理能力强弱来决定,以避免因绑定的低性能设备5大大增多而影响联动的实现或高性能设备4自身的功能实现。
优选地,所述高性能设备4部署有分布式的MQTT服务器,所述分布式的MQTT服务器为EMQ服务器或VerneMQ服务器。从而使所述高性能设备4拥有与后台服务器等同的数据、设备处理逻辑,使所述高性能设备4可根据接收的联动消息产生相关的联动控制命令。
优选地,所述用户终端1和云服务器3之间、所述家庭路由器2和高性能设备4之间和所述用户终端1和高性能设备4之间均采用MQTT通信协议;所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑。
所述用户终端1和云服务器3之间、所述家庭路由器2和高性能设备4之间和所述用户终端1和高性能设备4之间均采用MQTT通信协议,而非基于请求/回应的消息处理机制,减轻网络臃肿,让发布者和订阅者有更多时间处理其它信息,双方负荷大大减少。所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑,从而各联网设备间能够直接或者间接通信,即使在没有外网的家庭,联网设备间的联动依然正常。
所述非基于请求/回应的消息处理机制应用之间具有强耦合性,比如:应用A请求的指令,需要得到另一个应用B处理完成后回应,耦合度极高,增加了应用A的延时等待时间,同时也意味着应用B要放下当前执行的其它任务,尽快响应请求指令,完成后回应结果给请求方,加重了应用B的负担。
以上结合具体实施例描述了本发明的技术原理。这些描述只是为了解释本发明的原理,而不能以任何方式解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式,这些方式都将落入本发明的保护范围之内。
Claims (10)
1.一种基于发布-订阅消息处理机制的家居设备联动方法,其特征在于,应用于对智能家居的联网设备进行控制,包括用户终端、多个联网设备、家庭路由器和云服务器,所述用户终端和多个联网设备之间采用发布-订阅消息处理机制进行通信,所述用户终端和云服务器之间采用发布-订阅消息处理机制进行通信,所述家庭路由器和云服务器通过互联网进行通信;包括以下步骤:
网状网通信建立步骤,多个联网设备划分为高性能设备和低性能设备两类,并进行分组:一个所述高性能设备和多个低性能设备绑定成一组,所有的高性能设备之间建立信道,所有的高性能设备均与家庭路由器采用发布-订阅消息处理机制进行通信,在同一个高性能设备下的所有低性能设备之间建立信道,从而联网设备间构成网状网通信;
联动步骤,用户终端发布联动消息,相关的所述高性能设备根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备,相关的所述低性能设备执行对应的联动动作,若联动相关的联网设备包含高性能设备,则待联动的高性能设备根据联动控制命令执行对应的联动动作;
当家庭路由器和云服务器通信异常或断网时,用户终端直接向家庭路由器发布联动消息,由家庭路由器下发联动消息至相关的所述高性能设备。
2.根据权利要求1所述的基于发布-订阅消息处理机制的家居设备联动方法,其特征在于,还包括数据预保存步骤:
当家庭路由器和云服务器通信正常时,联网设备间联动产生的数据直接同步至云服务器;
当家庭路由器和云服务器通信异常或断网时,联网设备间联动产生的数据保存至与其绑定的高性能设备的数据库中,并且高性能设备之间相互备份彼此的数据库数据;
当家庭路由器和云服务器通信恢复正常时,家庭路由器将所有的高性能设备的数据库数据同步至云服务器。
3.根据权利要求1所述的基于发布-订阅消息处理机制的家居设备联动方法,其特征在于,还包括故障转移步骤:
对所有的高性能设备建立优先级;
当某个高性能设备出现故障时,家庭路由器根据优先级,将故障的高性能设备绑定的所有低性能设备转移至正常运行且优先级最高的高性能设备上进行绑定。
4.根据权利要求1所述的基于发布-订阅消息处理机制的家居设备联动方法,其特征在于:在所述高性能设备上部署分布式的MQTT服务器,所述分布式的MQTT服务器为EMQ服务器或VerneMQ服务器。
5.根据权利要求1所述的基于发布-订阅消息处理机制的家居设备联动方法,其特征在于:所述用户终端和云服务器之间、所述家庭路由器和高性能设备之间和所述用户终端和高性能设备之间均采用MQTT通信协议;
所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑。
6.一种基于发布-订阅消息处理机制的家居设备联动***,其特征在于:应用于对智能家居的联网设备进行控制,包括用户终端、多个联网设备、家庭路由器和云服务器,所述用户终端和多个联网设备之间采用发布-订阅消息处理机制进行通信,所述用户终端和云服务器之间采用发布-订阅消息处理机制进行通信,所述家庭路由器和云服务器通过互联网进行通信;
多个联网设备划分为高性能设备和低性能设备两类,并进行分组:一个所述高性能设备和多个低性能设备绑定成一组,所有的高性能设备之间建立信道,所有的高性能设备均与家庭路由器采用发布-订阅消息处理机制进行通信,在同一个高性能设备下的所有低性能设备之间建立信道,从而联网设备间构成网状网通信;
所述用户终端用于发布联动消息;所述高性能设备用于根据接收的联动消息产生并下发相关的联动控制命令至相关的低性能设备,和若联动相关的联网设备包含高性能设备则根据联动控制命令执行对应的联动动作;所述低性能设备用于执行对应的联动动作;
当家庭路由器和云服务器通信异常或断网时,用户终端直接向家庭路由器发布联动消息,由家庭路由器下发联动消息至相关的所述高性能设备。
7.根据权利要求6所述的基于发布-订阅消息处理机制的家居设备联动***,其特征在于:
所述高性能设备设有数据预保存模块,所述数据预保存模块用于:
当家庭路由器和云服务器通信正常时,将联网设备间联动产生的数据直接同步至云服务器;
和当家庭路由器和云服务器通信异常或断网时,将联网设备间联动产生的数据保存至自身的数据库中,并且备份其他高性能设备的数据库数据;
家庭路由器用于当家庭路由器和云服务器通信恢复正常时,将所有的高性能设备的数据库数据同步至云服务器。
8.根据权利要求6所述的基于发布-订阅消息处理机制的家居设备联动***,其特征在于:
所述家庭路由器设有故障转移模块,所述故障转移模块用于:
对所有的高性能设备建立优先级;
和当某个高性能设备出现故障时,根据优先级,将故障的高性能设备绑定的所有低性能设备转移至正常运行且优先级最高的高性能设备上进行绑定。
9.根据权利要求6所述的基于发布-订阅消息处理机制的家居设备联动***,其特征在于:所述高性能设备部署有分布式的MQTT服务器,所述分布式的MQTT服务器为EMQ服务器或VerneMQ服务器。
10.根据权利要求6所述的基于发布-订阅消息处理机制的家居设备联动***,其特征在于:所述用户终端和云服务器之间、所述家庭路由器和高性能设备之间和所述用户终端和高性能设备之间均采用MQTT通信协议;
所述联网设备间的网状网通信采用BLE Mesh网状通信拓扑或ZigBee网状通信拓扑。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910177126.9A CN110034983B (zh) | 2019-03-08 | 2019-03-08 | 基于发布-订阅消息处理机制的家居设备联动方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910177126.9A CN110034983B (zh) | 2019-03-08 | 2019-03-08 | 基于发布-订阅消息处理机制的家居设备联动方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110034983A CN110034983A (zh) | 2019-07-19 |
CN110034983B true CN110034983B (zh) | 2020-12-29 |
Family
ID=67235203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910177126.9A Active CN110034983B (zh) | 2019-03-08 | 2019-03-08 | 基于发布-订阅消息处理机制的家居设备联动方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110034983B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111065079B (zh) * | 2019-12-12 | 2023-10-20 | 杭州涂鸦信息技术有限公司 | 一种本地设备绑定方法及*** |
CN113111118A (zh) * | 2020-01-10 | 2021-07-13 | 顺丰科技有限公司 | 数据处理方法、装置、服务器、项目组设备及存储介质 |
US20210266191A1 (en) * | 2020-02-24 | 2021-08-26 | Haier Us Appliance Solutions, Inc. | Consumer appliance inheritance methods and systems |
CN114189399A (zh) * | 2020-09-14 | 2022-03-15 | 深圳长城开发科技股份有限公司 | 基于LoRa的智能家居***及其本地互控方法 |
CN114339844B (zh) * | 2020-09-30 | 2023-11-03 | 云米互联科技(广东)有限公司 | 场景联动故障分析方法、设备及计算机可读存储介质 |
CN114584414B (zh) * | 2020-12-01 | 2024-05-03 | 深圳绿米联创科技有限公司 | 设备控制方法、装置、电子设备和计算机可读存储介质 |
CN112751937A (zh) * | 2020-12-30 | 2021-05-04 | 广东好太太智能家居有限公司 | 分布式边缘智能蓝牙Mesh网关***及实现方法 |
CN113055591B (zh) * | 2021-03-08 | 2023-04-07 | 深圳创维-Rgb电子有限公司 | 多机位无线控制方法及其***、装置和可读存储介质 |
CN113760581A (zh) * | 2021-09-09 | 2021-12-07 | 四川虹美智能科技有限公司 | 基于mqtt对智能终端的属性信息进行同步的方法和*** |
CN114157725B (zh) * | 2021-11-11 | 2023-09-12 | 珠海格力电器股份有限公司 | 设备联动的方法、装置、服务器、电子设备以及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202218250U (zh) * | 2011-07-07 | 2012-05-09 | 天津七所精密机电技术有限公司 | 一体化家用智能信息中心装置 |
CN103139251A (zh) * | 2011-11-29 | 2013-06-05 | 神州数码信息***有限公司 | 一种城市级数据共享交换平台技术的方法 |
CN103581307A (zh) * | 2013-10-17 | 2014-02-12 | 北京邮电大学 | 一种基于集群的发布/订阅***及其可靠性保障方法 |
CN104808506A (zh) * | 2015-05-14 | 2015-07-29 | 郭萌 | 一种智能家居数据服务器 |
CN105159150A (zh) * | 2015-07-23 | 2015-12-16 | 北京章鱼智数科技有限公司 | 一种智能设备联动控制方法 |
CN106227045A (zh) * | 2016-07-25 | 2016-12-14 | 青岛海信电器股份有限公司 | 一种智能家居联动控制方法、装置和*** |
CN108111358A (zh) * | 2018-01-12 | 2018-06-01 | 重庆惠家通信息技术有限公司 | Poe智能家居网关组网配置方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10298996B2 (en) * | 2016-08-18 | 2019-05-21 | At&T Intellectual Property I, L.P. | Satellite TV user community smart device monitoring and management |
-
2019
- 2019-03-08 CN CN201910177126.9A patent/CN110034983B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202218250U (zh) * | 2011-07-07 | 2012-05-09 | 天津七所精密机电技术有限公司 | 一体化家用智能信息中心装置 |
CN103139251A (zh) * | 2011-11-29 | 2013-06-05 | 神州数码信息***有限公司 | 一种城市级数据共享交换平台技术的方法 |
CN103581307A (zh) * | 2013-10-17 | 2014-02-12 | 北京邮电大学 | 一种基于集群的发布/订阅***及其可靠性保障方法 |
CN104808506A (zh) * | 2015-05-14 | 2015-07-29 | 郭萌 | 一种智能家居数据服务器 |
CN105159150A (zh) * | 2015-07-23 | 2015-12-16 | 北京章鱼智数科技有限公司 | 一种智能设备联动控制方法 |
CN106227045A (zh) * | 2016-07-25 | 2016-12-14 | 青岛海信电器股份有限公司 | 一种智能家居联动控制方法、装置和*** |
CN108111358A (zh) * | 2018-01-12 | 2018-06-01 | 重庆惠家通信息技术有限公司 | Poe智能家居网关组网配置方法 |
Non-Patent Citations (1)
Title |
---|
《实时发布/订阅数据分发服务的模型分析》;李腾等;《无线电工程》;20160118(第2期);第6-9页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110034983A (zh) | 2019-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110034983B (zh) | 基于发布-订阅消息处理机制的家居设备联动方法及*** | |
CN111131401B (zh) | 一种服务请求的响应方法及*** | |
JP5366177B2 (ja) | スロットインターフェースアクセス装置、その方法及びそのプログラム並びに主装置の冗長構成及び代替方法 | |
CN104811459A (zh) | 用于消息服务的处理方法、装置及***、消息服务*** | |
CN103716281B (zh) | 控制方法、电子设备和服务器 | |
CN105450779B (zh) | 一家电设备连接多服务器的方法 | |
US10037253B2 (en) | Fault handling methods in a home service system, and associated household appliances and servers | |
CN103747091A (zh) | 一种嵌入式设备的分布式数据同步***及方法 | |
US11909840B2 (en) | Resource subscription method, device, and storage medium | |
US10495336B2 (en) | Energy operations across domains | |
US20120036390A1 (en) | Redundancy configuration of main unit | |
CN103546572A (zh) | 一种云存储装置以及多云存储联网***和方法 | |
CN104202255A (zh) | 一种高效多链路数据传输实现方法 | |
CN113114778A (zh) | 一种数据传输方法、装置、电子设备以及存储介质 | |
CN101163230A (zh) | 通过网络摄像机进行现场直播及客户端节点调配方法 | |
CN110018875A (zh) | 一种基于idv的桌面同步实现方法 | |
CN110063050B (zh) | 一种业务调度方法及*** | |
US10320663B2 (en) | Communication device, communication system, and computer program product for performing interactive communication via relay servers | |
JP2019040579A (ja) | メッセージプッシュシステム、クライアント装置およびそのメッセージプッシュ方法 | |
CN109274763A (zh) | 一种信息同步方法及双机热备设备 | |
JP2010527475A (ja) | 情報家電のデータ蓄積システム及びデータ処理方法 | |
CN114884975A (zh) | 业务消息的处理方法和装置、存储介质及电子装置 | |
CN105591776B (zh) | Sdn网络设备的主备链路切换方法和装置 | |
CN111064618B (zh) | 一种服务器高可用的实现方法、装置、设备和存储介质 | |
CN104753747A (zh) | 一种连接网关与设备的方法、装置及网关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |