CN110716438B - 一种联动场景执行的方法及装置 - Google Patents
一种联动场景执行的方法及装置 Download PDFInfo
- Publication number
- CN110716438B CN110716438B CN201910964433.1A CN201910964433A CN110716438B CN 110716438 B CN110716438 B CN 110716438B CN 201910964433 A CN201910964433 A CN 201910964433A CN 110716438 B CN110716438 B CN 110716438B
- Authority
- CN
- China
- Prior art keywords
- control instruction
- preset time
- execution
- linkage
- scene
- 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
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000005540 biological transmission Effects 0.000 claims abstract description 23
- 238000012163 sequencing technique Methods 0.000 claims abstract description 7
- 238000012545 processing Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 6
- 230000009471 action Effects 0.000 abstract description 26
- 230000007246 mechanism Effects 0.000 description 17
- 230000004044 response Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 230000001788 irregular Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000007306 turnover Effects 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]
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种联动场景执行的方法及装置,方法包括:接收联动场景执行请求,根据联动场景执行请求生成N条控制指令,根据所述区域信息将N条控制指令排序,将排序后的N条控制指令依次发送。本发明通过单区域内场景联动执行中控制指令短暂时间间隔发送降低了网关发送丢包率,提高了场景联动执行的稳定性。网关将场景区域性划分,使得设备分区域、间隔式的执行动作,提高了场景联动执行的规律性。
Description
技术领域
本发明涉及智能家居领域,尤其涉及一种联动场景执行的方法及装置。
背景技术
智能家居领域各种家居设备层出不穷,尤其是在ZigBee无线通信方面,伴随多种类多功能性的产品逐渐接入网关系统,场景联动功能是整个系统中极为重要的功能之一,几乎市面上所有智能家居品牌都具有场景联动功能,但在场景联动执行中,较高的丢包率、设备执行无规律以及设备执行后不稳定的状态翻转一直是行业难题。
丢包率高的原因在于:设置场景联动时至少是2路甚至多达几十路设备执行用户预期的动作,现行的发送机制是控制指令无间隔连续发出,基于Z-Stack协议栈的发送机制,趋于同一时间点内不仅包含了应用层APS和应用层底层双层重发,还存在设备收到控制指令后立刻回复的Ack应答包。现存的协议发送机制会造成“点时间”内Zigbee收发数据包爆发式集中的现象,形成“点时间”内链路上过度复杂的网络环境,虽然这种过度复杂的网络环境存留时间非常短暂,但是在现存场景联动中多条控制指令无间隔连续发出时会存在较大隐患,尤其在Zigbee环境复杂情况下丢包率和“撞包现象”更会急剧上升。实验数据由智慧家居已接入设备参与,使用分析工具Ubiqua Protocol Analyzer,结果如图1所示。由图趋势可分析,图中4个高点均为场景中动作开始执行后,发送的4路Zigbee数据,追随高点之后会有次高点出现,即为发送后网关收到的应答和设备回复通信数据包,控制指令的发送会使网关处于“点时间”内高负担数据处理中。
设备无规律的执行动作使得用户体验较差,原因在于:场景联动中控制指令在中继间存在不稳定的因素,一方面控制指令不一定按照预期到达设备端,另一方面用户在配置设备执行动作的顺序时基本不会考虑执行的先后,会造成场景被触发时,联动的设备无规律的执行。比如回家场景中打开家中所有灯的场景,触发时会出现家中灯无规律的打开,用户在使用过程中出现突兀感,体验不完美。
设备不稳定的状态翻转原因在于:设备动作执行后,设备会发出“Report”状态Zigbee数据包,包含设备当前的状态属性,用于控制终端更新当前设备状态呈现给用户,是Z-Stack协议栈中不可缺少的一环。一方面由于设备的发送功率普遍要低于网关(网关功率在18-20db,安防类设备只有3-4db),会造成设备回复的状态包丢包率更大。另一方面在日常环境使用中充满了WiFI、Zigbee等无线网络信号,用户家链路中隔墙或有阻挡也会造成数据包丢失。网关在1.6s内接收不到当前控制指令对应的设备回复的状态包,APS应用层就会自动重发当前指令,在连续执行场景触发情况下,会出现上一条控制指令的重发在当前场景触发中到达设备端,而设备端已经执行了当前指令,就会出现设备状态翻转,最后造成设备执行出现错误。
发明内容
本发明实施例提供一种联动场景执行的方法及装置,用以解决如何避免较高丢包率、设备执行无规律以及设备执行后产生状态翻转不稳定的问题。
第一方面,本发明实施例提供一种联动场景执行的方法,包括:
接收联动场景执行请求;
根据所述联动场景执行请求生成N条控制指令,所述控制指令包括设备的区域信息;
根据所述区域信息将所述N条控制指令排序;
将排序后的所述N条控制指令依次发送。
上述方案,根据控制指令所包含的设备的区域信息将控制指令排序,并将控制指令按照顺序依次发送,降低了丢包率,同时设备执行动作呈现规律性,提升了用户体验。
可选的,所述将排序后的所述N条控制指令依次发送,包括:
判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同;
若是,则将所述当前控制指令与所述上一条控制指令间隔第一预设时间发送;否则将所述当前控制指令与所述上一条控制指令间隔第二预设时间发送。
需要说明的是,第一预设时间针对的是包含相同区域信息的控制指令,意味着单区域也即同一区域的控制指令在网关发送时间隔同一时间间隔。比如打开客厅所有的灯需要向客厅所有灯发送多条控制指令,其中一条控制指令可打开一盏灯,而现在在发送这多条控制指令时每条控制指令之间设有相同时间间隔。第二预设时间针对的是包含不同区域信息的控制指令,意味着不同区域的控制指令在网关发送时间隔同一时间间隔。比如打开客厅、走廊以及厨房所有的灯,在打开客厅的所有灯的多条控制指令发送完后,间隔第一预设时间或第二预设时间发送打开走廊所有灯的多条控制指令,再间隔相同的预设时间发送打开厨房所有灯的多条控制指令。
进一步的,由于第一预设时间为单区域场景的控制指令的时间间隔旨在避免控制指令连续发出从而产生在同一时间点集中式爆发的现象在本方案中采用毫秒级延时,第二预设时间用于不同区域时间控制指令发送的时间间隔,旨在使得联动场景执行时分区域规律的执行,在本方案中采用秒级间隔,从而使得用户能够感知不同区域间的时间间隔,进一步提升了用户不同,因此由于作用的不同,第一预设时间与第二预设时间不是一个量级的,第一预设时间的时间长度是不能为用户所感知的。
上述方案,单区域场景联动执行的控制指令在网关发送时采用毫秒级延时降低了丢包率。不同区域场景联动执行的控制指令采用秒级间隔使得联动场景执行时分区域规律的执行,提升了用户体验。
可选的,在所述判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,还包括:
判断是否接收到所述设备的状态包;其中,所述状态包由所述设备执行完所述上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发所述上一条控制指令,在间隔所述第一预设时间或所述第二预设时间之后将所述当前控制指令发送。
需要说明的是,针对设备执行后产生状态翻转不稳定的问题,本方法通过减少APS应用层的重发实现。网关的APS应用层重发存在于未接收到设备执行动作后发出的“Report”状态包时才发出的,与首次发送时间间隔1.6s,在实际日常空间中,由于网络复杂度或通路中链路过多的原因,“Report”回复状态包可能丢失或仍在链路中还未到达网关,极有可能造联动场景动作执行过程中,上一次的控制指令重发包在当前次操作中到达设备端并执行,造成设备状态翻转,执行结果错误。
上述方案,通过减少APS层重发次数使重发机制具有更高的独立性,针对设备回复状态包功率低的问题,尽量避免依靠设备回复决定重发动作,避免了设备状态翻转,保证了设备动作正确执行。
可选的,所述第一预设时间根据ZigBee数据传输时间以及所述设备执行所述控制指令的执行时间确定的。
需要说明的是,根据Zigbee理论数据计算,数据传输速率计算公式:
具体的,aMaxPHYPacketSize为最大序列层传输大小,公式中还包括序列和开始框架分隔符(Preamble and Start of Frame Delimiter,SHR),框架长度符(Frame Length,PHR),实体数据长度(Entity Data Length,EDL),其中aMaxPHYPacketSize和SHR为定值,PHR和EDL根据Zigbee实际传输过程中定下的协议内容可以确定为a,由此可得出一条控制指令传输时间为参数a,根据Zigbee协议机制,网关发出控制后,设备执行动作后直接发送Ack应答,因此第一预设时间要包含发送与应答传输的时间加上设备执行动作时间,即第一预设时间>参数a×2+设备执行控制指令时间。
第二方面,本发明实施例提供一种联动场景执行的装置,包括:
获取模块,用于接收联动场景执行请求;
处理模块,用于根据所述联动场景执行请求生成N条控制指令,所述控制指令包括设备的区域信息;根据所述区域信息将所述N条控制指令排序;将排序后的所述N条控制指令依次发送。
可选的,所述处理模块具体用于:
在所述判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,判断是否接收到所述设备的状态包;其中,所述状态包由所述设备执行完所述上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发所述上一条控制指令,在间隔所述第一预设时间或所述第二预设时间之后将所述当前控制指令发送。
可选的,所述处理模块还用于:
在所述判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,判断是否接收到所述设备的状态包;其中,所述状态包由所述设备执行完所述上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发所述上一条控制指令,在间隔所述第一预设时间或所述第二预设时间之后将所述当前控制指令发送。
可选的,所述第一预设时间根据ZigBee数据传输时间以及所述设备执行所述控制指令的执行时间确定的。
第三方面,本发明实施例提供一种计算机被控设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述第一方面所述的方法。
第四方面,本发明实施例提供一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述第一方面所述的方法。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的丢包率趋势对比图;
图2为本发明实施例提供的一种系统架构的示意图;
图3为本发明实施例提供的一种联动场景执行方法的流程示意图;
图4为本发明实施例提供的网关丢包率的示意图;
图5为本发明实施例提供的一种联动场景执行方法的流程示意图;
图6为本发明实施例提供的一种联动场景执行装置的结构示意图。
具体实施方式
为了更好的理解上述技术方案,下面将结合说明书附图及具体的实施方式对上述技术方案进行详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
图2示例性的示出了本发明实施例所适用的一种系统架构,该系统架构可以包括控制终端100、网关200、云端300和设备400。
其中,控制终端100用于设备状态显示,例如手机、平板、电视、中控屏、魔镜等终端。
网关200用于建立ZigBee网络以使设备400接入。
云端300用于将网关上报的设备的状态信息处理后发送至控制终端100。
设备400用于在接收到网关200发送的控制指令后立刻回复Ack应答,并在执行完控制指令后向网关200发送状态包。
需要说明的是,上述图2所示的结构仅是一种示例,本发明实施例对此不做限定。
为了更好的解释上述实施例,图3示例性的示出了一种联动场景执行的方法的流程,该流程可以由联动场景执行的装置执行。
如图3所示,该流程具体包括:
步骤301,接收联动场景执行请求。
需要说明的是,联动场景执行请求可以由控制终端直接发送至网关,也可由控制终端通过云端发送至网关。
步骤302,根据联动场景执行请求生成N条控制指令。
具体的,控制指令包括设备的区域信息。比如睡觉场景包括关闭窗帘、关闭所有灯等,而关闭所有灯的多条控制指令根据灯所在区域的不同,控制指令所包含的区域信息也不同。
进一步的,环境复杂度的不同,室内阻挡程度的不同,网关丢包率都有不同程度的变化,具体如图4所示。
步骤303,根据区域信息将N条控制指令排序。
步骤304,将排序后的N条控制指令依次发送。
具体的,判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同;
若是,则将当前控制指令与上一条控制指令间隔第一预设时间发送;否则将当前控制指令与上一条控制指令间隔第二预设时间发送。
需要说明的是,第一预设时间针对的是包含相同区域信息的控制指令,意味着单区域也即同一区域的控制指令在网关发送时间隔同一时间间隔。比如打开客厅所有的灯需要向客厅所有灯发送多条控制指令,其中一条控制指令可打开一盏灯,而现在在发送这多条控制指令时每条控制指令之间设有相同时间间隔。第二预设时间针对的是包含不同区域信息的控制指令,意味着不同区域的控制指令在网关发送时间隔同一时间间隔。比如打开客厅、走廊以及厨房所有的灯,在打开客厅的所有灯的多条控制指令发送完后,间隔第一预设时间或第二预设时间发送打开走廊所有灯的多条控制指令,再间隔相同的预设时间发送打开厨房所有灯的多条控制指令。
具体的,比如用户已设定回家“打开所有灯”场景,网关端根据用户从控制终端部署的灯的所属区域,将场景区域预置分为门廊区域灯、客厅区域灯、厨房区域灯、卧室区域灯和阳台区域灯,场景触发后依据网关预置场景区域顺序依次执行不同区域,所预置的区域顺序依照日常生活体验设定,从用户进门处开始逐步打开门廊灯、客厅灯、厨房灯等,在视觉上也给用户家中亮度从近到远渐进式执行的美感,为了降低丢包率,不同区域执行间隔秒级比如1s,用户先进入门廊,到客厅,最后才可能进入阳台,区域执行间隔不影响区域顺序执行的体验。
进一步的,由于第一预设时间为单区域场景的控制指令的时间间隔旨在避免控制指令连续发出从而产生在同一时间点集中式爆发的现象在本方案中采用毫秒级延时,第二预设时间用于不同区域时间控制指令发送的时间间隔,旨在使得联动场景执行时分区域规律的执行,在本方案中采用秒级间隔,从而使得用户能够感知不同区域间的时间间隔,进一步提升了用户不同,因此由于作用的不同,第一预设时间与第二预设时间不是一个量级的,第一预设时间的时间长度是不能为用户所感知的。
上述方案,单区域场景联动执行的控制指令在网关发送时采用毫秒级延时降低了丢包率。不同区域场景联动执行的控制指令采用秒级间隔使得联动场景执行时分区域规律的执行,提升了用户体验。
进一步的,第一预设时间采用毫秒量级,在延时毫秒级时间的研究上,要规避以下3个风险点:
1、避免第一预设时间过长,延时会降低网络复杂度,但延时时间到达一个量级,优化效果会趋于平稳态,更大的延时时间在效果增强不明显的情况下会延慢动作的执行,从而损失了用户体验。
2、避免第一预设时间过短,延时的作用就是为了设备收到控制指令后立刻回复Ack应答在“点时间”内较稳定的网络状态下执行完毕,过短的延时达不到实际使用中的效果。
3、场景联动执行过程中必然会存在多路设备连续收发,避免延时后网关发送的控制指令与上一条控制指令发送后设备“Report”状态回复包发送“撞包现象”。
进一步的,第一预设时间根据ZigBee数据传输时间以及设备执行控制指令的执行时间确定的。
具体的,根据Zigbee理论数据计算,数据传输速率计算公式:
具体的,aMaxPHYPacketSize为最大序列层传输大小,公式中还包括序列和开始框架分隔符(Preamble and Start of Frame Delimiter,SHR),框架长度符(Frame Length,PHR),实体数据长度(Entity Data Length,EDL),其中aMaxPHYPacketSize和SHR为定值,PHR和EDL根据Zigbee实际传输过程中定下的协议内容可以确定为a,由此可得出一条控制指令传输时间为参数a,根据Zigbee协议机制,网关发出控制后,设备执行动作后直接发送Ack应答,因此第一预设时间要包含发送与应答传输的时间加上设备执行动作时间,即第一预设时间>参数a×2+设备执行控制指令时间。
进一步的,本方案根据上述理论设置实验参数1,参数2,参数3,参数4进行分组测试。
从实验数据分析,现有方案丢包率基本要高于延时后的丢包率,在延时参数1时,丢包率不降反升,其原因就是过短的延时时间会与上一次设备收到网关发送的控制指令后回复的的Ack应答发生“撞包现象”。当延时处于参数2-参数3之间,丢包率达到最低状态,两次控制指令的时间间隔基本包含了Ack应答和底层重发的数据传输时间,但从分析工具Ubiqua Protocol Analyzer数据分析,网关收发数据会存在“第二峰值”。当延时达到参数4左右时,丢包率会有小幅度上升,虽然此时也避开了Ack应答,但第二次发送数据时间点与上一次设备状态回复时间点基本重合,也从一定程度上使网关处于高负担状态,从而丢包率上升。因此确定延时时间在参数2至参数3之间较为高态平稳,同时第一预设时间在参数2和参数3之间,设备响应仍非常稳定迅速,人眼基本无法辨别,不影响用户体验。
进一步的,在判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,还包括:
判断是否接收到所述设备的状态包;其中,状态包由设备执行完上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发上一条控制指令,在间隔所述第一预设时间或所述第二预设时间之后将当前控制指令发送。
需要说明的是,针对设备执行后产生状态翻转不稳定的问题,本方法通过减少APS应用层的重发实现。无论使用哪种无线网络来传输数据,都会存在丢包率的问题,为从源头减少状态翻转现象发生,对重发机制研究发现,Z-Stack协议栈中包含应用层底层重发与APS应用层双层重发机制,这两种重发机制均不受网关上层应用层控制,在网关后台处理中也无重发记录,均由Z-Stack协议栈自动执行动作。
具体的,底层重发与首次控制指令发送间隔在几十毫秒级,时间上非常迅速,而且底层重发为相同指令包,是确保低丢包率必不可少的重要一环。在场景连续执行中,依据底层重发时间几十毫秒的量级,不会对下一条控制指令发送造成影响。基于此,不对底层重发机制做任何改变。网关的APS应用层重发存在于未接收到设备执行动作后发出的“Report”状态包,与首次发送时间间隔1.6s,在实际日常空间中,由于网络复杂度或链路过多的原因,“Report”回复状态包可能丢失或仍在链路中还未到达网关,极有可能造成联动场景动作执行过程中,上一次的控制指令重发在当前操作中到达设备端并执行,造成设备状态翻转,执行结果错误。比如上一条控制指令为设备开,设备执行完开的动作后回复网关状态包,但回复的状态包丢失,则网关重发开的动作,而当前指令为设备关,这样就会造成设备状态翻转。现有方案网关在未收到设备回复的状态包时APS应用层不断重发,本方案减少APS层重发次数,在重发一次后不再重发上一条控制指令。通过减少APS层重发次数,使重发机制具有更高的独立性,针对设备回复状态包功率低的问题,尽量避免依靠设备回复决定重发动作,避免了设备状态翻转,保证了设备动作正确执行。
上述方案,针对现有方案控制指令在发出时连续不间断,呈现无规律和“点时间”内发出,加上网关收到的设备Ack应答,收发包数量在“点时间”内爆发式增长,会造成较高丢包率,通过根据控制指令所包含的设备的区域信息将控制指令排序,并将控制指令按照顺序依次发送,降低了丢包率,降低网关数据包收发负担和“撞包率”,同时设备执行动作呈现规律性,提升了用户体验。
为了更好的解释上述方案,本发明实施例提供一种联动场景执行的方法的流程示意图。
如图5所示,该流程具体包括:
步骤501,接收联动场景执行请求。
需要说明的是,联动场景执行请求可以由控制终端直接发送至网关,也可由控制终端通过云端发送至网关。
步骤502,发送控制指令a。
需要说明的是,联动场景执行请求包含多条控制指令,每一条控制指令对应设备执行一个动作。具体的,控制指令包括设备的区域信息。比如睡觉场景包括关闭窗帘、关闭所有灯等,而关闭所有灯的多条控制指令根据灯所在区域的不同,控制指令所包含的区域信息也不同。
步骤503,底层重发控制指令a。
需要说明的是,Z-Stack协议栈中包含应用层底层重发与APS应用层双层重发机制,这两种重发机制均不受网关上层应用层控制,在网关后台处理中也无重发记录,均由Z-Stack协议栈自动执行动作。
具体的,底层重发与首次控制指令发送间隔在几十毫秒级,时间上非常迅速,而且底层重发为相同指令包,是确保低丢包率必不可少的重要一环。在场景连续执行中,依据底层重发时间几十毫秒的量级,不会对下一条控制指令发送造成影响。基于此,不对底层重发机制做任何改变。
步骤504,接收设备ACK应答。
需要说明的是,设备在接收到网关发送的控制指令后也就是执行控制指令之前会立刻回复网关ACK应答,用于表示设备已入网或在线。
步骤505,判断是否接收到设备回复的状态包,若是,执行步骤506,否则执行步骤507。
步骤506,判断联动场景是否执行结束,若是,执行步骤509,否则执行步骤508。
步骤507,网关启动APS重发控制指令a。
进一步的,现有方案网关在未收到设备回复的状态包时APS应用层不断重发,本方案减少APS层重发次数,在重发一次后不再重发上一条控制指令。通过减少APS层重发次数,使重发机制具有更高的独立性,针对设备回复状态包功率低的问题,尽量避免依靠设备回复决定重发动作,避免了设备状态翻转,保证了设备动作正确执行。
步骤508,发送控制指令(a+1)并返回步骤504。
需要说明的是,控制指令(a+1)与控制指令a之间采用毫秒级延时,降低网关数据包收发负担和“撞包率”。
步骤509,结束联动场景执行。
上述方案,避免了现有方案由于控制指令在发出时连续不间断、收发包数量在“点时间”内爆发式增长会造成较高丢包率的问题,通过将控制指令按照顺序依次发送,减少APS层重发次数,使重发机制具有更高的独立性,降低了丢包率,降低网关数据包收发负担和“撞包率”,提升了用户体验。
基于相同的技术构思,图6示例性的示出了本发明实施例提供联动场景执行的装置的结构,该装置可以执行联动场景执行的方法的流程。
如图6所示,该装置可以包括:
获取模块601,用于接收联动场景执行请求;
处理模块602,用于根据所述联动场景执行请求生成N条控制指令,所述控制指令包括设备的区域信息;根据所述区域信息将所述N条控制指令排序;将排序后的所述N条控制指令依次发送。
可选的,所述处理模块602具体用于:
在所述判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,判断是否接收到所述设备的状态包;其中,所述状态包由所述设备执行完所述上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发所述上一条控制指令,在间隔所述第一预设时间或所述第二预设时间之后将所述当前控制指令发送。
可选的,所述处理模块602还用于:
在所述判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,判断是否接收到所述设备的状态包;其中,所述状态包由所述设备执行完所述上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发所述上一条控制指令,在间隔所述第一预设时间之后将所述当前控制指令发送。
可选的,所述第一预设时间根据ZigBee数据传输时间以及所述设备执行所述控制指令的执行时间确定的。
基于相同的技术构思,本发明实施例还提供了一种计算被控设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述设备自检的方法。
基于相同的技术构思,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述设备自检的方法。
最后应说明的是:本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明的方法、被控设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理被控设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理被控设备的处理器执行的指令产生用于实现在流程图一个流程或多个和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理被控设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种联动场景执行的方法,其特征在于,包括:
接收联动场景执行请求;
根据所述联动场景执行请求生成N条控制指令,所述控制指令包括设备的区域信息;
根据所述区域信息将所述N条控制指令排序;
将排序后的所述N条控制指令依次发送;
其中,所述将排序后的所述N条控制指令依次发送,包括:
判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同;
若是,则将所述当前控制指令与所述上一条控制指令间隔第一预设时间发送;否则将所述当前控制指令与所述上一条控制指令间隔第二预设时间发送。
2.根据权利要求1所述的方法,其特征在于,在所述判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,还包括:
判断是否接收到所述设备的状态包;其中,所述状态包由所述设备执行完所述上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发所述上一条控制指令,在间隔所述第一预设时间或所述第二预设时间之后将所述当前控制指令发送。
3.根据权利要求1所述的方法,其特征在于,所述第一预设时间根据ZigBee数据传输时间以及所述设备执行所述控制指令的执行时间确定的。
4.一种联动场景执行的装置,其特征在于,包括:
获取模块,用于接收联动场景执行请求;
处理模块,用于根据所述联动场景执行请求生成N条控制指令,所述控制指令包括设备的区域信息;根据所述区域信息将所述N条控制指令排序;以及判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同;若是,则将所述当前控制指令与所述上一条控制指令间隔第一预设时间发送;否则将所述当前控制指令与所述上一条控制指令间隔第二预设时间发送。
5.根据权利要求4所述的装置,其特征在于,所述处理模块还用于:
在所述判断当前控制指令对应的区域信息与上一条控制指令对应的区域信息是否相同之前,判断是否接收到所述设备的状态包;其中,所述状态包由所述设备执行完所述上一条控制指令后发出的;
若否,启动Z-STACK协议栈APS应用层重发所述上一条控制指令,在间隔所述第一预设时间或所述第二预设时间之后将所述当前控制指令发送。
6.根据权利要求4所述的装置,其特征在于,所述第一预设时间根据ZigBee数据传输时间以及所述设备执行所述控制指令的执行时间确定的。
7.一种计算设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1至3任一项所述的方法。
8.一种计算机可读非易失性存储介质,其特征在于,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如权利要求1至3任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910964433.1A CN110716438B (zh) | 2019-10-11 | 2019-10-11 | 一种联动场景执行的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910964433.1A CN110716438B (zh) | 2019-10-11 | 2019-10-11 | 一种联动场景执行的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110716438A CN110716438A (zh) | 2020-01-21 |
CN110716438B true CN110716438B (zh) | 2022-06-07 |
Family
ID=69211460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910964433.1A Active CN110716438B (zh) | 2019-10-11 | 2019-10-11 | 一种联动场景执行的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110716438B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112769895B (zh) * | 2020-12-18 | 2023-10-13 | 杭州涂鸦信息技术有限公司 | 一种群组或场景的控制方法及相关装置 |
CN115016302A (zh) * | 2022-05-23 | 2022-09-06 | 深圳绿米联创科技有限公司 | 设备控制方法、装置、设备及存储介质 |
CN115333663A (zh) * | 2022-07-22 | 2022-11-11 | 杭州控客信息技术有限公司 | 基于无响应发包实现设备状态差异化同步执行的系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100681625B1 (ko) * | 2002-05-17 | 2007-02-09 | 레노보(베이징)리미티드 | 장치간 동적 네트워킹을 구성하여 리소스 공유를 구현하는 방법 |
CN105093947A (zh) * | 2015-07-13 | 2015-11-25 | 小米科技有限责任公司 | 智能设备控制方法和装置 |
CN105159079B (zh) * | 2015-08-31 | 2021-12-07 | 青岛海尔智能家电科技有限公司 | 一种解决家电并发控制冲突的方法和装置 |
CN106980267A (zh) * | 2016-01-19 | 2017-07-25 | 美的集团股份有限公司 | 家用电器的物联网系统及家用电器的控制方法 |
CN105549413A (zh) * | 2016-02-01 | 2016-05-04 | 广西禾邦科技有限责任公司 | 基于物联网的物联控制设备区域管理控制方法 |
CN105933762B (zh) * | 2016-05-18 | 2019-09-17 | 青岛海信智慧家居系统股份有限公司 | 一种智能家居的联动控制方法和装置 |
CN107707436A (zh) * | 2017-09-18 | 2018-02-16 | 广东美的制冷设备有限公司 | 终端控制方法、装置及计算机可读存储介质 |
CN109104503A (zh) * | 2018-10-10 | 2018-12-28 | 曹景荣 | 一种智能家居远程控制系统及控制方法 |
-
2019
- 2019-10-11 CN CN201910964433.1A patent/CN110716438B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110716438A (zh) | 2020-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110716438B (zh) | 一种联动场景执行的方法及装置 | |
US10716164B2 (en) | Methods, systems, and media for managing network connections | |
CN111031565B (zh) | 一种识别ZigBee设备离在线状态的方法及装置 | |
CN113545009B (zh) | 场景操作方法、装置、电子设备及计算机可读介质 | |
CN109753034A (zh) | 一种控制方法、装置、电子设备及存储介质 | |
KR101502073B1 (ko) | 무선 네트워크, 특히 무선 조명 장치들의 네트워크의 장치들을 선택하기 위한 방법 및 시스템 | |
CN106773772A (zh) | 一种ZigBee智能家居网关场景联动控制方法 | |
CN108828966B (zh) | 一种智慧家居系统中设备信息显示的方法及装置 | |
CN109660387B (zh) | 设备配置数据的管理方法、装置、服务器及存储介质 | |
CN106385661B (zh) | 配对请求、配对响应方法及配对请求、配对响应终端 | |
CN109725540A (zh) | 一种设备控制方法、装置、电子设备及存储介质 | |
CN110933170A (zh) | 一种ZigBee网关的多设备联动控制方法、设备及存储介质 | |
CN112929861A (zh) | 一种网关与智能设备共享蓝牙的方法、网关、存储介质 | |
CN111596562A (zh) | 设备控制方法、云端设备及计算机存储介质 | |
CN107870571A (zh) | 控制智能设备的方法、装置以及智能设备 | |
CN109981424B (zh) | 联动方案处理的方法、装置、电子设备以及存储介质 | |
US20150230321A1 (en) | Apparatus and method for interpreting received control commands | |
CN112128951A (zh) | 一种控制设备、方法及装置 | |
CN113848866B (zh) | 一种智能家居系统联动回路的检测方法及装置 | |
CN111147578B (zh) | 一种防止窗帘动画跳变的方法及装置 | |
CN114167740A (zh) | 设备控制方法、装置、遥控设备和存储介质 | |
CN105871513A (zh) | 数据发送、接收方法及装置 | |
CN109803433A (zh) | 无线通信控制方法、装置、电子设备及存储介质 | |
CN114554667B (zh) | 一种照明灯具分组控制方法 | |
US11349625B2 (en) | Low duty cycle proximity based acknowledgement |
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 | ||
CB02 | Change of applicant information |
Address after: 266100 Songling Road, Laoshan District, Qingdao, Shandong Province, No. 399 Applicant after: Qingdao Hisense Smart Life Technology Co.,Ltd. Address before: 266100 Songling Road, Laoshan District, Qingdao, Shandong Province, No. 399 Applicant before: QINGDAO HISENSE SMART HOME SYSTEMS Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |