CN112099968A - 设备的控制方法及装置、系统、存储介质、电子装置 - Google Patents
设备的控制方法及装置、系统、存储介质、电子装置 Download PDFInfo
- Publication number
- CN112099968A CN112099968A CN202010873770.2A CN202010873770A CN112099968A CN 112099968 A CN112099968 A CN 112099968A CN 202010873770 A CN202010873770 A CN 202010873770A CN 112099968 A CN112099968 A CN 112099968A
- Authority
- CN
- China
- Prior art keywords
- control
- instruction
- target device
- control end
- control instruction
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000001514 detection method Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 15
- 230000003993 interaction Effects 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 21
- 238000012545 processing Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000006854 communication Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3889—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种设备的控制方法及装置、系统、存储介质、电子装置,其中,该方法包括:接收第一控制端通过控制组件发送的第一控制指令;根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。通过本发明,解决了相关技术中多个控制端同时控制一个设备导致执行紊乱的技术问题,提高了设备的交互效率。
Description
技术领域
本发明涉及自动控制领域,具体而言,涉及一种设备的控制方法及装置、系统、存储介质、电子装置。
背景技术
相关技术中,大数据、云计算及人工智能等技术的发展,产生越来越多的创新应用和场景。以消防系统为例,传统的消防系统正逐步实现与新技术的融合,催生智慧消防概念的出现,智慧消防系统充分融合自动化技术、大数据分析技术和云计算技术,实现消防系统智能感知、智能联动以及智能研判等功能。在实施智慧消防系统时,涉及到针对消防设备和实施进行远程监控和数据采集的过程,同时结合云平台进行数据存储和分析,并将分析结果及时反馈到用户终端,为消防人员提供决策依据。在以上过程中,往往会遇到消防设备和云平台服务器之间、以及云平台服务器与用户终端之间操作同步的问题,当设备状态发生变化时,需要及时反映在用户终端,同时,当用户通过终端界面对设备进行远程控制时,需要确保指令的正确执行和有效反馈,特别是当多用户进行同一个或者类似的操作时,如何保证操作指令的有效执行和执行结果的精确反馈,对于保障设备的运行可靠性和提升消防系统用户体验显得尤为重要。
相关技术中,在进行设备控制时,当客户端浏览器发起多次控制指令,消防设备针对这些指令进行执行情况的逐一回复,消防功能服务云平台难以判断回复消息所对应的控制指令,从而无法定位到界面的具体按钮和提示信息。当多个合法用户前后间隔时间不长的情形下,针对界面上的同一个按钮进行点击,先后发起同一控制目的的控制指令,此时会引起控制指令的执行错乱。当消防设备执行指令回复缓慢或者根本没有接受到控制指令时,造成没有针对该指令进行成功回复的情况时,用户很难知道控制指令是否被有效执行,用户体验差。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本发明实施例提供了一种设备的控制方法及装置、系统、存储介质、电子装置,以解决相关技术中多个控制端同时控制一个设备导致执行紊乱的技术问题。
根据本发明的一个实施例,提供了一种设备的控制方法,包括:接收第一控制端通过控制组件发送的第一控制指令;根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。
可选的,在接收第一控制端通过控制组件发送的第一控制指令之后,所述方法还包括:将所述第一控制端的控制组件设置为不可操作状态。
可选的,在接收第一控制端通过控制组件发送的第一控制指令之后,所述方法还包括:生成所述第一控制指令的标识信息,其中,所述标识信息包括内容标识和时间戳;在所述第一控制指令中添加所述标识信息,得到第二控制指令,以及将所述标识信息添加至检测栈,其中,所述检测栈用于检测所述目标设备基于所述第二控制指令反馈的指令执行结果;在本地存储器中缓存所述第二控制指令,并向所述目标设备下发所述第二控制指令。
可选的,在本地存储器中缓存所述第二控制指令之后,所述方法还包括:基于所述时间戳判断所述第二控制指令的存储时长是否超过预设时间;若所述第二控制指令的存储时长超过预设时间,在所述本地存储器中删除所述第二控制指令,向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。
可选的,在向所述目标设备下发所述第二控制指令之后,所述方法还包括:通过所述检测栈接收所述目标设备反馈的指令执行结果,其中,所述指令执行结果携带所述标识信息;根据所述标识信息查找与所述指令执行结果匹配的所述第一控制端;向所述第一控制端推送所述指令执行结果。
可选的,在通过所述检测栈接收所述目标设备反馈的指令执行结果之后,所述方法还包括:向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。
根据本发明的另一个实施例,提供了一种设备的控制装置,包括:第一接收模块,用于接收第一控制端通过控制组件发送的第一控制指令;第一生成模块,用于根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;第一发送模块,用于向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。
可选的,所述装置还包括:设置模块,用于在所述第一接收模块接收第一控制端通过控制组件发送的第一控制指令之后,将所述第一控制端的控制组件设置为不可操作状态。
可选的,所述装置还包括:第二生成模块,用于在所述第一接收模块接收第一控制端通过控制组件发送的第一控制指令之后,生成所述第一控制指令的标识信息,其中,所述标识信息包括内容标识和时间戳;第一处理模块,用于在所述第一控制指令中添加所述标识信息,得到第二控制指令,以及将所述标识信息添加至检测栈,其中,所述检测栈用于检测所述目标设备基于所述第二控制指令反馈的指令执行结果;第二处理模块,用于在本地存储器中缓存所述第二控制指令,并向所述目标设备下发所述第二控制指令。
可选的,所述装置还包括:判断模块,用于在所述第二处理模块在本地存储器中缓存所述第二控制指令之后,基于所述时间戳判断所述第二控制指令的存储时长是否超过预设时间;第三处理模块,用于若所述第二控制指令的存储时长超过预设时间,在所述本地存储器中删除所述第二控制指令,向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。
可选的,所述装置还包括:第二接收模块,用于在所述第二处理模块向所述目标设备下发所述第二控制指令之后,通过所述检测栈接收所述目标设备反馈的指令执行结果,其中,所述指令执行结果携带所述标识信息;查找模块,用于根据所述标识信息查找与所述指令执行结果匹配的所述第一控制端;第二发送模块,用于向所述第一控制端推送所述指令执行结果。
可选的,所述装置还包括:第三发送模块,用于在所述第二接收模块通过所述检测栈接收所述目标设备反馈的指令执行结果之后,向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。
根据本发明的另一个实施例,提供了一种设备的控制系统,包括:第一控制端,第二控制端,云平台,消息中间件服务器,目标设备,其中,所述云平台,与所述第一控制端和第二控制端连接,通过所述消息中间件服务器与所述目标设备连接,包括如上述实施例所描述的装置;所述消息中间件服务器,用于通过消息队列向所述目标设备传输所述第一控制指令;所述目标设备,用于在预设时间内执行所述第一控制指令,生成指令执行结果,并将所述指令执行结果通过所述消息中间件服务器反馈至所述云平台。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项装置实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,接收第一控制端通过控制组件发送的第一控制指令,然后根据第一控制指令生成目标设备的第一状态信息,向第二控制端发送第一状态信息,以将第二控制端的控制组件设置为不可操作状态,在接收到任一合法设备的控制指令后,将其他合法的控制端设置为不可操作状态,可以防止不同控制端同时发起同一控制指令,进而避免多个控制端同时控制目标设备而导致的执行紊乱和消息不同步,解决了相关技术中多个控制端同时控制一个设备导致执行紊乱的技术问题,提高了设备的交互效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种设备的控制服务器的结构框图;
图2是根据本发明实施例的一种设备的控制方法流程图;
图3是本发明实施例的系统原理图;
图4是本发明实施例通过前端界面按钮实现状态同步的流程图;
图5是本发明实施例缓存会话状态的流程图;
图6是本发明实施例执行定时任务的流程图;
图7是本发明实施例的消防设备执行定时任务的流程图;
图8是本发明实施例接收指令执行回复消息的流程图;
图9是本发明实施例的一种设备的控制装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在服务器、计算机或者类似的电子设备中执行。以运行在服务器上为例,图1是本发明实施例的一种设备的控制服务器的结构框图。如图1所示,服务器10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述服务器还可以包括、输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述服务器的结构造成限定。例如,服务器10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储服务器程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种设备的控制控制方法对应的服务器程序,处理器102通过运行存储在存储器104内的服务器程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至服务器10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种设备的控制方法,图2是根据本发明实施例的一种设备的控制方法流程图,如图2所示,该流程包括如下步骤:
步骤S202,接收第一控制端通过控制组件发送的第一控制指令;
本实施例中,第一控制端可以是电脑端,移动端等,通过浏览器或者是应用程序(APP)上的控制组件触发第一控制指令,第一控制指令可以用于请求获取目标设备的状态信息,控制目标设备执行指定操作,传输数据等。
步骤S204,根据第一控制指令生成目标设备的第一状态信息,其中,第一状态信息用于指示目标设备正在被控制;
可选的,目标设备可以是连入入网的物联网设备或者互联网设备,如消防设备、空调设备、光伏设备等,在本实施例中以目标设备为消防设备为例进行举例说明。第二控制端和第一控制端都是控制目标设备的合法设备,可以包括多个控制组件,分别触发不同的控制指令。
步骤S206,向第二控制端发送第一状态信息,以将第二控制端的控制组件设置为不可操作状态,其中,第二控制端具备目标设备的控制权限。
第二控制端接收到第一状态信息,更新自身的控制组件的操作状态,该控制组件与第一控制端上触发第一控制指令的控制组件对应。
通过上述步骤,接收第一控制端通过控制组件发送的第一控制指令,然后根据第一控制指令生成目标设备的第一状态信息,向第二控制端发送第一状态信息,以将第二控制端的控制组件设置为不可操作状态,在接收到任一合法设备的控制指令后,将其他合法的控制端设置为不可操作状态,可以防止不同控制端同时发起同一控制指令,进而避免多个控制端同时控制目标设备而导致的执行紊乱和消息不同步,解决了相关技术中多个控制端同时控制一个设备导致执行紊乱的技术问题,提高了设备的交互效率。
图3是本发明实施例的系统原理图,系统的网络构架中,包括用户终端,通过操作平台的功能按钮(一种控制组件)下发控制指令,消防功能服务云平台,包括数据缓存服务、数据存储服务等功能模块,消息中间件服务器,用于传输数据,消防设备,以及无线网络(移动网络基站、无线网关等),针对消防设备的远程无线网络,可采用2G、3G、GPRS、NB-IOT、5G等无线通信协议进行设计。无线局域网络则可采用蓝牙、ZigBee、WIFI等技术进行设计。消防设备通过消息中间件服务器与远程智能消防平台服务进行通信,消息中间件服务器可采用MQTT、KAFKA消息队列等技术进行设计。
基于该网络构架,执行指令下发和指令回复等传输流程,指令下发的流程包括:用户通过浏览器上的功能界面提供的操作按钮出发远程控制指令,消防功能服务器云平台通过接口接收该控制指令,并通过指令合法性校验后将其通过消息中间件服务器网关下发该控制指令。消防设备通过NB-IOT无线网关订阅相应主题的消息,并接收远程控制指令,按照事先约定好的数据格式执行该控制指令。执行回复的流程包括:当消防设备确定自身执行指令结束后,同样通过NB-IOT网关将消息发布到消息中间件服务器,此时消防功能服务云平台收到此消息,并按照事先约定好的数据格式判断指令执行情况,并将执行情况通过websocket(一种在单个TCP连接上进行全双工通信的协议)服务告知客户端,及时更新执行状态。
在本实施例的一个实施方式中,在接收第一控制端通过控制组件发送的第一控制指令之后,还包括:将第一控制端的控制组件设置为不可操作状态。
通过设置第一控制端的操作状态,在控制指令反馈之前,防止第一控制端连续下发相同的控制指令,提高系统的交互效率。
图4是本发明实施例通过前端界面按钮实现状态同步的流程图,当某个用户通过点击前端界面的功能按钮,下发对应的控制指令时,消防功能服务平台通过功能接口服务模块响应请求,此时还未将控制指令下发到消防设备。为了使得其它用户知晓有人在控制该设备,防止不同客户端同时发起同一操作指令,消防功能服务平台通过在指令缓存模块存储该指令的正在下发状态,并通过websocket将该状态返回到有该指令权限的用户所在线的前端界面,前端界面更新按钮的操作状态,达到按钮状态变为不可控的目的,防止重复和不必要的操作。操作流程包括:
S41,用户点击控制按钮;
542,当前用户的控制按钮变为本可点点击状态;
S43,判断服务器是否响应;
544,如果是,更新所有合法用户的控制按钮状态;
S45,如果否,提示错误,并更新当前用户的控制按钮状态;
最后结束流程。
当前用户是指发起控制指令请求的用户,当前用户的控制按钮指当前在线用户所在客户端浏览器的控制按钮。合法用户是指拥有对应控制权限的所有用户,所有合法用户的控制按钮是指具有该控制权限的所有在线用户的客户端浏览器的控制按钮。
在本实施例的一些实例中,消防功能服务云平台的会话数据和指令相关的标识信息可通过redis数据库进行设计,针对前端界面按钮的状态更新,使用redis进行指令执行过程中的中间状态存储,并将指令状态的变化通过websocket及时告知所有拥有控制权限的在线用户。
当某个用户通过点击前端界面的功能按钮,下发对应的控制指令时,消防功能服务平台通过功能接口服务模块响应请求,此时还未将控制指令下发到消防设备。为了使得其它用户知晓有人在控制该设备,防止不同客户端同时发起统一操作指令,消防功能服务平台通过在指令缓存模块存储该指令的正在下发状态,并通过websocket将该状态返回到有该指令权限的用户所在线的前端界面,前端界面更新按钮的操作状态,达到按钮状态变为不可控的目的,防止重复和不必要的操作。
在本实施例中,在接收第一控制端通过控制组件发送的第一控制指令之后,还包括:生成第一控制指令的标识信息,其中,标识信息包括内容标识和时间戳;在第一控制指令中添加标识信息,得到第二控制指令,以及将标识信息添加至检测栈,其中,检测栈用于检测目标设备基于第二控制指令反馈的指令执行结果;在本地存储器中缓存第二控制指令,并向目标设备下发第二控制指令。
图5是本发明实施例缓存会话状态的流程图,消防功能服务平台通过接口服务模块获取指令下发请求时,为了保证消防设备执行指令后回复消息的正确匹配,平台通过数据缓存服务模块将该指令涉及的操作内容唯一标识即id以及当前时间和其它有关的会话信息进行缓存服务。缓存的唯一标识通过随机生成的UUID(Universally UniqueIdentifier,通用唯一识别码)进行生成,同时将该标识添加到指令执行定时模块的检测栈中。此时的时间记为t1,操作流程包括:
S51,接收指令下发请求;
S52,生成UUID缓存标识;
S53,存储指令会话数据;
S54,添加标识到定时任务栈;
S55,下发带有标识和时间的控制指令;
最后结束流程。
在本实施例的一个实施方式中,在本地存储器中缓存第二控制指令之后,还包括:基于时间戳判断第二控制指令的存储时长是否超过预设时间;若第二控制指令的存储时长超过预设时间,在本地存储器中删除第二控制指令,向第二控制端发送第二状态信息,以将第二控制端的控制组件设置为可操作状态。
通过定时器判断会话业务的状态,可以防止因为目标设备故障、通信故障等原因导致控制指令长时间无反馈的问题。
图6是本发明实施例执行定时任务的流程图,消防功能服务平台通过定时器服务检测指令标识栈中的指令是否超过预设的超时时间t0,如果已经超过,则对其进行删除操作,同时通过websocket服务模块通知指令发起用户,并将当前按钮的状态一并推送给拥有该控制权限的所有用户。操作流程包括:
S61,开启定时器;
S62,判断指令是否超时;
S63,如果是,删除该指令对应有的会话数据;如果否,直接结束流程;
S64,从任务栈移除该指令标识;
S65,通过websocket推送指令执行状态;
最后结束流程。
图7是本发明实施例的消防设备执行定时任务的流程图,消防设备接收到控制指令消息时,首先获取该消息所包含的指令标识、时间等信息,同时获取系统当前时间t2(当前时间),计算t2-t1差值。将指令相关信息记录到指令缓存模块,同时将指令标识加入到设备的指令执行定时模块中,同理进行超时检测,依据是当前系统时间t3-t2的差值是否小于t0,如果否,则恢复设备缓存的状态,如果是,则回复指令执行成功的消息。操作流程包括:
S71,接收控制指令消息;
S72,判断指令是否超时;
S731,如果否,执行指令;
S732,如果是,放弃执行指令;
S74,在执行指令后,继续判断指令是否超时;
S75,如果是,恢复指令执行前的状态;
S76,如果否,发布指令执行成功的消息;
S77,移除定时栈中的指令标识;
最后结束流程。
此处为了更加精准地判断指令执行的结果,消防设备在判断指令是否超时时,除了考虑到服务平台到设备的传输时间延迟,还需考虑回复消息到服务平台的传输时间延迟。由于后者无法提前预知,综合考虑将获取的服务平台到设备的传输时间延迟作为回传的时间延迟。即判断的依据是:
t3-t2是否小于t0-2*(t2-t1),其中,t3为接收控制指令的设备的系统当前时间;t2为设备接收到控制指令时的时间;t1为服务器下发指令时携带的时间变量;t0为远程控制操作约定的超时时间;t2-t1为控制指令下行时间。
在本实施例的一个实施方式中,在向目标设备下发第二控制指令之后,方法还包括:通过检测栈接收目标设备反馈的指令执行结果,其中,指令执行结果携带标识信息;根据标识信息查找与指令执行结果匹配的第一控制端;向第一控制端推送指令执行结果。可选的,在通过检测栈接收目标设备反馈的指令执行结果之后,还包括:向第二控制端发送第二状态信息,以将第二控制端的控制组件设置为可操作状态。
图8是本发明实施例接收指令执行回复消息的流程图,服务平台接收到消防设备回复的指令执行结果消息时,通过事先约定好的数据格式判断指令是否执行成功,同时删除指令会话数据以及定时器栈中的指令标识。并通过websocket服务将指令执行结果推送到指定的拥有该指令权限的所有用户。操作流程包括:
S81,接收控制指令执行回复消息;
S82,移除该控制指令的会话数据和定时器标识;
S83,websocket推送指令执行结果到指定用户;
S84,websocket推送指令状态到拥有权限的其它用户;
最后结束流程。
上述所有的用户均指通过websocket的方式连接到平台的在线用户。
采用本实施例的方案,通过引入指令执行过渡状态以及使用websocket进行即时推送的方式,防止多用户同时控制设备时,出现错乱、不同步的问题出现,保证系统功能的可靠性和稳定性,减少冗余的控制指令和网络流量,提升了用户体验。应用服务器缓存技术把每一个指令的相关数据进行缓存,同时采用UUID对指令进行唯一标识,并在通信过程中进行携带,确保远程控制指令的有效执行和执行结果有效反馈,及时将消防设备的状态反馈到用户,避免控制和执行不同步的问题。
基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
实施例2
在本实施例中还提供了一种设备的控制装置、系统,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
实施例提供了一种设备的控制装置,图9是本发明实施例的一种设备的控制装置的结构框图,该装置包括:第一接收模块90,第一生成模块92,第一发送模块94,其中,
第一接收模块90,用于接收第一控制端通过控制组件发送的第一控制指令;
第一生成模块92,用于根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;
第一发送模块94,用于向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。
所述装置还包括:设置模块,用于在所述第一接收模块接收第一控制端通过控制组件发送的第一控制指令之后,将所述第一控制端的控制组件设置为不可操作状态。
可选的,所述装置还包括:第二生成模块,用于在所述第一接收模块接收第一控制端通过控制组件发送的第一控制指令之后,生成所述第一控制指令的标识信息,其中,所述标识信息包括内容标识和时间戳;第一处理模块,用于在所述第一控制指令中添加所述标识信息,得到第二控制指令,以及将所述标识信息添加至检测栈,其中,所述检测栈用于检测所述目标设备基于所述第二控制指令反馈的指令执行结果;第二处理模块,用于在本地存储器中缓存所述第二控制指令,并向所述目标设备下发所述第二控制指令。
可选的,所述装置还包括:判断模块,用于在所述第二处理模块在本地存储器中缓存所述第二控制指令之后,基于所述时间戳判断所述第二控制指令的存储时长是否超过预设时间;第三处理模块,用于若所述第二控制指令的存储时长超过预设时间,在所述本地存储器中删除所述第二控制指令,向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。
可选的,所述装置还包括:第二接收模块,用于在所述第二处理模块向所述目标设备下发所述第二控制指令之后,通过所述检测栈接收所述目标设备反馈的指令执行结果,其中,所述指令执行结果携带所述标识信息;查找模块,用于根据所述标识信息查找与所述指令执行结果匹配的所述第一控制端;第二发送模块,用于向所述第一控制端推送所述指令执行结果。
可选的,所述装置还包括:第三发送模块,用于在所述第二接收模块通过所述检测栈接收所述目标设备反馈的指令执行结果之后,向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。。
本实施例还提供了一种设备的控制系统,包括:第一控制端,第二控制端,云平台,消息中间件服务器,目标设备,其中,所述云平台,与所述第一控制端和第二控制端连接,通过所述消息中间件服务器与所述目标设备连接,包括如上述实施例所描述的装置;所述消息中间件服务器,用于通过消息队列向所述目标设备传输所述第一控制指令;所述目标设备,用于在预设时间内执行所述第一控制指令,生成指令执行结果,并将所述指令执行结果通过所述消息中间件服务器反馈至所述云平台。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例的一个方面中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,接收第一控制端通过控制组件发送的第一控制指令;
S2,根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;
S3,向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例的一个方面中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,接收第一控制端通过控制组件发送的第一控制指令;
S2,根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;
S3,向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种设备的控制方法,其特征在于,包括:
接收第一控制端通过控制组件发送的第一控制指令;
根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;
向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。
2.根据权利要求1所述的方法,其特征在于,在接收第一控制端通过控制组件发送的第一控制指令之后,所述方法还包括:
将所述第一控制端的控制组件设置为不可操作状态。
3.根据权利要求1所述的方法,其特征在于,在接收第一控制端通过控制组件发送的第一控制指令之后,所述方法还包括:
生成所述第一控制指令的标识信息,其中,所述标识信息包括内容标识和时间戳;
在所述第一控制指令中添加所述标识信息,得到第二控制指令,以及将所述标识信息添加至检测栈,其中,所述检测栈用于检测所述目标设备基于所述第二控制指令反馈的指令执行结果;
在本地存储器中缓存所述第二控制指令,并向所述目标设备下发所述第二控制指令。
4.根据权利要求3所述的方法,其特征在于,在本地存储器中缓存所述第二控制指令之后,所述方法还包括:
基于所述时间戳判断所述第二控制指令的存储时长是否超过预设时间;
若所述第二控制指令的存储时长超过预设时间,在所述本地存储器中删除所述第二控制指令,向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。
5.根据权利要求3所述的方法,其特征在于,在向所述目标设备下发所述第二控制指令之后,所述方法还包括:
通过所述检测栈接收所述目标设备反馈的指令执行结果,其中,所述指令执行结果携带所述标识信息;
根据所述标识信息查找与所述指令执行结果匹配的所述第一控制端;
向所述第一控制端推送所述指令执行结果。
6.根据权利要求5所述的方法,其特征在于,在通过所述检测栈接收所述目标设备反馈的指令执行结果之后,所述方法还包括:
向所述第二控制端发送第二状态信息,以将所述第二控制端的控制组件设置为可操作状态。
7.一种设备的控制装置,其特征在于,包括:
第一接收模块,用于接收第一控制端通过控制组件发送的第一控制指令;
第一生成模块,用于根据所述第一控制指令生成目标设备的第一状态信息,其中,所述第一状态信息用于指示所述目标设备正在被控制;
第一发送模块,用于向第二控制端发送所述第一状态信息,以将所述第二控制端的控制组件设置为不可操作状态,其中,所述第二控制端具备所述目标设备的控制权限。
8.一种设备的控制系统,其特征在于,包括:第一控制端,第二控制端,云平台,消息中间件服务器,目标设备,其中,
所述云平台,与所述第一控制端和第二控制端连接,通过所述消息中间件服务器与所述目标设备连接,包括如权利要求7所述的装置;
所述消息中间件服务器,用于通过消息队列向所述目标设备传输所述第一控制指令;
所述目标设备,用于在预设时间内执行所述第一控制指令,生成指令执行结果,并将所述指令执行结果通过所述消息中间件服务器反馈至所述云平台。
9.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至6任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至6任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010873770.2A CN112099968B (zh) | 2020-08-26 | 2020-08-26 | 电子设备的控制方法及装置、系统、存储介质、电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010873770.2A CN112099968B (zh) | 2020-08-26 | 2020-08-26 | 电子设备的控制方法及装置、系统、存储介质、电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112099968A true CN112099968A (zh) | 2020-12-18 |
CN112099968B CN112099968B (zh) | 2024-09-24 |
Family
ID=73757842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010873770.2A Active CN112099968B (zh) | 2020-08-26 | 2020-08-26 | 电子设备的控制方法及装置、系统、存储介质、电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112099968B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113114753A (zh) * | 2021-04-07 | 2021-07-13 | 北京金山云网络技术有限公司 | 设备的控制方法、装置及系统、存储介质、电子装置 |
CN113660094A (zh) * | 2021-08-03 | 2021-11-16 | 珠海格力电器股份有限公司 | 一种设备控制方法、装置、电子设备及存储介质 |
CN113650569A (zh) * | 2021-07-29 | 2021-11-16 | 广州文远知行科技有限公司 | 交通工具设备控制方法、装置、交通工具及存储介质 |
CN114205178A (zh) * | 2021-12-10 | 2022-03-18 | 珠海格力电器股份有限公司 | 一种设备联动的方法及装置、存储介质、电子设备 |
CN114327331A (zh) * | 2021-12-22 | 2022-04-12 | 深圳Tcl新技术有限公司 | 信息显示方法、装置、电子设备和计算机可读存储介质 |
CN115208859A (zh) * | 2022-06-23 | 2022-10-18 | 阿波罗智联(北京)科技有限公司 | 一种信息交互方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202615200U (zh) * | 2012-04-10 | 2012-12-19 | 上海旗胜电器有限公司 | 中央控制系统 |
CN103558836A (zh) * | 2013-11-19 | 2014-02-05 | 海信集团有限公司 | 设备状态同步控制方法和家电设备 |
KR20140090368A (ko) * | 2013-01-08 | 2014-07-17 | 한국원자력연구원 | 제어대상 기기 보호 장치 및 방법 |
CN106603716A (zh) * | 2016-12-30 | 2017-04-26 | Tcl集团股份有限公司 | 一种智能设备状态的同步方法、智能设备及其控制终端 |
CN109885457A (zh) * | 2017-12-06 | 2019-06-14 | 深圳中电长城信息安全系统有限公司 | 指示灯控制方法、电子设备及计算机可读存储介质 |
CN110798471A (zh) * | 2019-10-31 | 2020-02-14 | 宁波奥克斯电气股份有限公司 | 空调管理方法及相关装置 |
CN110830579A (zh) * | 2019-11-12 | 2020-02-21 | 上海庆科信息技术有限公司 | 一种设备状态显示方法、系统、装置及计算机存储介质 |
CN111176869A (zh) * | 2019-08-01 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 超时检测方法、装置、设备及存储介质 |
-
2020
- 2020-08-26 CN CN202010873770.2A patent/CN112099968B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202615200U (zh) * | 2012-04-10 | 2012-12-19 | 上海旗胜电器有限公司 | 中央控制系统 |
KR20140090368A (ko) * | 2013-01-08 | 2014-07-17 | 한국원자력연구원 | 제어대상 기기 보호 장치 및 방법 |
CN103558836A (zh) * | 2013-11-19 | 2014-02-05 | 海信集团有限公司 | 设备状态同步控制方法和家电设备 |
CN106603716A (zh) * | 2016-12-30 | 2017-04-26 | Tcl集团股份有限公司 | 一种智能设备状态的同步方法、智能设备及其控制终端 |
CN109885457A (zh) * | 2017-12-06 | 2019-06-14 | 深圳中电长城信息安全系统有限公司 | 指示灯控制方法、电子设备及计算机可读存储介质 |
CN111176869A (zh) * | 2019-08-01 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 超时检测方法、装置、设备及存储介质 |
CN110798471A (zh) * | 2019-10-31 | 2020-02-14 | 宁波奥克斯电气股份有限公司 | 空调管理方法及相关装置 |
CN110830579A (zh) * | 2019-11-12 | 2020-02-21 | 上海庆科信息技术有限公司 | 一种设备状态显示方法、系统、装置及计算机存储介质 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113114753A (zh) * | 2021-04-07 | 2021-07-13 | 北京金山云网络技术有限公司 | 设备的控制方法、装置及系统、存储介质、电子装置 |
CN113650569A (zh) * | 2021-07-29 | 2021-11-16 | 广州文远知行科技有限公司 | 交通工具设备控制方法、装置、交通工具及存储介质 |
CN113650569B (zh) * | 2021-07-29 | 2022-10-11 | 广州文远知行科技有限公司 | 交通工具设备控制方法、装置、交通工具及存储介质 |
CN113660094A (zh) * | 2021-08-03 | 2021-11-16 | 珠海格力电器股份有限公司 | 一种设备控制方法、装置、电子设备及存储介质 |
CN113660094B (zh) * | 2021-08-03 | 2023-02-24 | 珠海格力电器股份有限公司 | 一种设备控制方法、装置、电子设备及存储介质 |
CN114205178A (zh) * | 2021-12-10 | 2022-03-18 | 珠海格力电器股份有限公司 | 一种设备联动的方法及装置、存储介质、电子设备 |
CN114327331A (zh) * | 2021-12-22 | 2022-04-12 | 深圳Tcl新技术有限公司 | 信息显示方法、装置、电子设备和计算机可读存储介质 |
CN114327331B (zh) * | 2021-12-22 | 2023-09-19 | 深圳Tcl新技术有限公司 | 信息显示方法、装置、电子设备和计算机可读存储介质 |
CN115208859A (zh) * | 2022-06-23 | 2022-10-18 | 阿波罗智联(北京)科技有限公司 | 一种信息交互方法、装置、设备及存储介质 |
CN115208859B (zh) * | 2022-06-23 | 2023-12-15 | 阿波罗智联(北京)科技有限公司 | 一种信息交互方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112099968B (zh) | 2024-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112099968B (zh) | 电子设备的控制方法及装置、系统、存储介质、电子装置 | |
US11184216B2 (en) | State control method and apparatus | |
WO2021121370A1 (zh) | 用于消息队列的消息丢失检测方法和装置 | |
CN111031034A (zh) | 多协议融合边缘计算网关 | |
CN112073471B (zh) | 设备的控制方法和装置、存储介质及电子装置 | |
CN106993043B (zh) | 基于代理的数据通信系统和方法 | |
CN110427220B (zh) | 设备命令的配置方法、装置、电子设备及存储介质 | |
CN111934956B (zh) | 设备的配置方法、装置、存储介质及电子装置 | |
CN112566078A (zh) | 设备连接方法及装置、存储介质及电子装置 | |
CN111491351B (zh) | 一种基于认证信息感知WiFi终端上线的方法及系统 | |
CN107508916B (zh) | 用于智能机器人的服务器链接管理方法 | |
CN112039718A (zh) | 升级状态检测方法、服务端、设备及存储介质 | |
CN111427710B (zh) | 应用程序中组件的通信方法、装置、设备及存储介质 | |
CN116955232A (zh) | 一种基于控制系统的硬件识别方法和装置 | |
CN107885169A (zh) | 一种现场数据的收集方法、装置和系统 | |
CN116319729A (zh) | 机器人控制方法、装置、服务器、系统及存储介质 | |
CN111865754B (zh) | 一种基于mqtt的远程监控方法及系统 | |
CN111726417B (zh) | 延时控制方法、装置、服务器及存储介质 | |
CN100428683C (zh) | 用于网管集中故障系统中的故障告警方法 | |
CN111200578A (zh) | 一种通信方法、客户端设备及服务端设备 | |
CN112188411B (zh) | 基于无线Mesh网络的多联机系统和数据传输方法 | |
CN114116906A (zh) | 数据同步方法、装置、电子装置和存储介质 | |
CN112231408A (zh) | 数据集成方法及装置、电子设备、存储介质 | |
CN105323088A (zh) | 跳板处理方法及装置 | |
CN210075185U (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 |