设备状态追踪方法及装置
技术领域
本申请涉及通信技术领域,尤其涉及一种设备状态追踪方法及装置。
背景技术
目前在工业现场自动化系统的工业设备状态的采集过程中,由于很多采集设备不具有设备状态数据点,相关技术通常需要对每次轮询收到的数据包都做数据解析处理。当设备连接中断或者设备本身发生故障时,便会出现数据处理单元对无效的设备数据进行解析的情况,造成了大量计算资源浪费。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
为了解决上述技术问题,本申请提供了一种设备状态追踪方法及装置。
第一方面,本申请提供了一种设备状态追踪方法,应用于第一代理服务器,所述第一代理服务器与采集设备通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,所述方法包括以下步骤:
获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
在根据所述数据包确定所述被采集设备的设备状态正常的情况下,解析所述数据包;
利用解析得到的所述实时状态数据对所述至少一个数据点的历史状态数据执行更新操作;
在根据所述数据包确定所述被采集设备的设备状态异常的情况下,丢弃所述数据包,并将所述至少一个数据点的状态属性更新为异常状态。
可选地,所述设备状态包括连接状态,获取与所述采集设备进行通信的数据包,包括:
获取所述数据包中携带的所述至少一个数据点对应的当前数据区的地址;
其中,根据所述数据包确定所述被采集设备的设备状态,包括:
将所述至少一个数据点对应的当前数据区的地址与所述至少一个数据点对应的目标数据区的地址进行比较;
在所述当前数据区的地址与所述目标数据区的地址一致的情况下,确定所述被采集设备的连接状态正常;
在所述当前数据区的地址与所述目标数据区的地址不一致的情况下,确定所述被采集设备的连接状态异常。
本申请实施例还提供了一种设备状态追踪方法,应用于第二代理服务器,所述第二代理服务器与采集设备通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,所述方法包括以下步骤:
获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
根据所述实时状态数据确定所述被采集设备的至少一个数据点发生报警的情况下,将所述被采集设备的设备状态更新为报警状态。
本申请实施例还提供了一种设备状态追踪方法,应用于采集设备,所述采集设备与第一代理服务器通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,所述方法包括以下步骤:
获取所述被采集设备的至少一个数据点的实时状态数据;
接收所述第一代理服务器发送的数据获取请求;
响应于所述数据获取请求,向所述第一代理服务器发送携带有所述实时状态数据的数据包。
可选地,在获取所述被采集设备的至少一个数据点的实时状态数据之后,还包括:
确定所述被采集设备的操作系统类型;
根据所述操作系统类型,确定所述被采集设备的至少一个数据点对应的目标数据区的地址;
根据所述目标数据区的地址,将所述实时状态数据存储到所述目标数据区。
本申请还提供了一种设备状态追踪方法,应用于采集设备,所述采集设备与第二代理服务器通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,所述方法包括以下步骤:
获取所述被采集设备的至少一个数据点的实时状态数据;
接收所述第二代理服务器发送的数据获取请求;
响应于所述数据获取请求,向所述第二代理服务器发送携带有所述实时状态数据的数据包。
本申请还提供了一种设备状态追踪装置,所述装置包括:
第一数据包获取单元,用于获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
数据包解析单元,用于在根据所述数据包确定所述被采集设备的设备状态正常的情况下,解析所述数据包;
数据更新操作,用于利用解析得到的所述实时状态数据对所述至少一个数据点的历史状态数据执行更新操作;
数据状态更新操作,用于在根据所述数据包确定所述被采集设备的设备状态异常的情况下,丢弃所述数据包,并将所述至少一个数据点的状态属性更新为异常状态。
本申请还提供了一种设备状态追踪装置,所述装置包括:
第二数据包获取单元,用于获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
设备状态更新单元,用于根据所述实时状态数据确定所述被采集设备的至少一个数据点发生报警的情况下,将所述被采集设备的设备状态更新为报警状态。
本申请还提供了一种设备状态追踪装置,所述装置包括:
第一数据获取单元,用于获取所述被采集设备的至少一个数据点的实时状态数据;
第一数据请求接收单元,用于接收所述第一代理服务器发送的数据获取请求;
第一数据包发送单元,用于响应于所述数据获取请求,向所述第一代理服务器发送携带有所述实时状态数据的数据包。
本申请还提供了一种设备状态追踪装置,所述装置包括:
第二数据获取单元,用于获取所述被采集设备的至少一个数据点的实时状态数据;
第二数据请求接收单元,用于接收所述第二代理服务器发送的数据获取请求;
第二数据包发送单元,用于响应于所述数据获取请求,向所述第二代理服务器发送携带有所述实时状态数据的数据包。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本申请实施例提供的该方法,通过获取被采集设备的至少一个数据点的实时状态数据,在被采集设备的设备状态异常的情况下,可以直接丢弃数据包,以及在设备状态正常的情况下,才解析数据包,实现了对设备状态的实时追踪,减少了网络通信压力,避免了计算资源的浪费,提高数据处理效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种设备状态追踪方法的流程示意图;
图2为本申请实施例提供的另一种设备状态追踪方法的流程示意图;
图3为本申请实施例提供的另一种设备状态追踪方法的流程示意图;
图4为本申请实施例提供的又一种设备状态追踪方法的流程示意图;
图5为本申请实施例提供的一种设备状态追踪装置的结构示意图;
图6为本申请实施例提供的另一种设备状态追踪装置的结构示意图;
图7为本申请实施例提供的另一种设备状态追踪装置的结构示意图;
图8为本申请实施例提供的又一种设备状态追踪装置的结构示意图;
图9是本申请另一个实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种设备状态追踪方法的流程示意图,本申请提供了一种设备状态追踪方法,应用于第一代理服务器,所述第一代理服务器与采集设备通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,该方法具体包括以下步骤:
S101、获取与采集设备进行通信的数据包,其中,数据包中携带有所述采集设备获取到的被采集设备的至少一个数据点的实时状态数据。
可选地,在工业监控系统,对每一个被采集设备的某一状态值(例如断路器位置、单相电压等)称为一个数据点。
可选地,在工业监控系统,每一个被追踪状态的具体现场物理设备称为被采集设备。被采集设备由一个或多个数据点所组成,每一个被采集设备也可以包含其它被采集设备。被采集设备可以为追踪数据点的状态的父节点。
可选地,被采集设备也可以称为设备节点。
可选地,数据点的结构包括以下三种类型:
第一种、以数据点的数据类型为基准,分为数字量点与模拟量点;
第二种、以数据的流向为基准,分为输入点和输出点;
第三种、以数据点与设备传感器的对应关系为基准,分为设备点和虚拟点。
可选地,采集设备可以通过ICMP(Internet Control Message Protocol,Internet控制报文协议)和SNMP(简单网络管理协议)与至少一个被采集设备通信连接。
可选地,第一代理服务器可以为SCADA代理服务器,例如,SCADA代理服务器每500ms轮询一次采集设备,获得数据包。
S102、在根据数据包确定所述被采集设备的设备状态正常的情况下,解析数据包。
S103、利用解析得到的实时状态数据对至少一个数据点的历史状态数据执行更新操作。
S104、在根据数据包确定被采集设备的设备状态异常的情况下,丢弃数据包,并将至少一个数据点的状态属性更新为异常状态。
本申请实施例提供的该方法,通过获取被采集设备的至少一个数据点的实时状态数据,在被采集设备的设备状态异常的情况下,可以直接丢弃数据包,以及在设备状态正常的情况下,才解析数据包,实现了对设备状态的实时追踪,减少了网络通信压力,避免了计算资源的浪费,提高数据处理效率。
在本申请另一实施例中,所述设备状态包括连接状态,获取与所述采集设备进行通信的数据包,包括:
获取所述数据包中携带的所述至少一个数据点对应的当前数据区的地址;
其中,根据所述数据包确定所述被采集设备的设备状态,包括:
将所述至少一个数据点对应的当前数据区的地址与所述至少一个数据点对应的目标数据区的地址进行比较;
在所述当前数据区的地址与所述目标数据区的地址一致的情况下,确定所述被采集设备的连接状态正常;
在所述当前数据区的地址与所述目标数据区的地址不一致的情况下,确定所述被采集设备的连接状态异常。
可选地,数据区可以包括Modbus数据区。
图2为本申请实施例提供的另一种设备状态追踪方法的流程示意图,本申请提供了一种设备状态追踪方法,应用于第二代理服务器,所述第二代理服务器与采集设备通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,所述方法包括以下步骤:
S201、获取与采集设备进行通信的数据包,其中,数据包中携带有所述采集设备获取到的被采集设备的至少一个数据点的实时状态数据。
S202、根据实时状态数据确定所述被采集设备的至少一个数据点发生报警的情况下,将被采集设备的设备状态更新为报警状态。
可选地,第二代理服务器可以为Alarm代理服务器。
图3为本申请实施例提供的另一种设备状态追踪方法的流程示意图,本申请提供了一种设备状态追踪方法,应用于采集设备,所述采集设备与第一代理服务器通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,所述方法包括以下步骤:
S301、获取被采集设备的至少一个数据点的实时状态数据。
S302、接收第一代理服务器发送的数据获取请求。
S303、响应于数据获取请求,向第一代理服务器发送携带有实时状态数据的数据包。
可选地,在步骤S301、获取所述被采集设备的至少一个数据点的实时状态数据之后,还包括:
确定所述被采集设备的操作系统类型;
根据所述操作系统类型,确定所述被采集设备的至少一个数据点对应的目标数据区的地址;
根据所述目标数据区的地址,将所述实时状态数据存储到所述目标数据区。
可选地,根据所述操作系统类型,在数据库中查询被采集设备的至少一个数据点对应的目标数据区的地址。
图4为本申请实施例提供的又一种设备状态追踪方法的流程示意图,本申请提供了一种设备状态追踪方法,应用于采集设备,所述采集设备与第二代理服务器通信连接,所述采集设备与至少一个被采集设备通信连接,所述被采集设备包括至少一个数据点,所述方法包括以下步骤:
S401、获取被采集设备的至少一个数据点的实时状态数据。
S402、接收第二代理服务器发送的数据获取请求。
S403、响应于数据获取请求,向第二代理服务器发送携带有实时状态数据的数据包。
本申请实施例通过对设备采用ICMP(Internet Control Message Protocol,Internet,控制报文协议)和SNMP(简单网络管理协议)等协议获得被采集设备的实时状态数据,并把其添加到Modbus数据区中,这样在处理数据包时就可以丢弃在设备连接中断或故障时的无效数据包,实现了对设备状态的实时追踪,减少了网络通信压力,避免了计算资源的浪费,提高数据处理效率。。
图5为本申请实施例提供的一种设备状态追踪装置的结构示意图,本申请提供了一种设备状态追踪装置,所述装置包括:
第一数据包获取单元51,用于获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
数据包解析单元52,用于在根据所述数据包确定所述被采集设备的设备状态正常的情况下,解析所述数据包;
数据更新操作53,用于利用解析得到的所述实时状态数据对所述至少一个数据点的历史状态数据执行更新操作;
数据状态更新操作54,用于在根据所述数据包确定所述被采集设备的设备状态异常的情况下,丢弃所述数据包,并将所述至少一个数据点的状态属性更新为异常状态。
图6为本申请实施例提供的另一种设备状态追踪装置的结构示意图,本申请提供了一种设备状态追踪装置,所述装置包括:
第二数据包获取单元61,用于获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
设备状态更新单元62,用于根据所述实时状态数据确定所述被采集设备的至少一个数据点发生报警的情况下,将所述被采集设备的设备状态更新为报警状态。
图7为本申请实施例提供的另一种设备状态追踪装置的结构示意图,本申请提供了一种设备状态追踪装置,所述装置包括:
第一数据获取单元71,用于获取所述被采集设备的至少一个数据点的实时状态数据;
第一数据请求接收单元72,用于接收所述第一代理服务器发送的数据获取请求;
第一数据包发送单元73,用于响应于所述数据获取请求,向所述第一代理服务器发送携带有所述实时状态数据的数据包。
图8为本申请实施例提供的又一种设备状态追踪装置的结构示意图,本申请提供了一种设备状态追踪装置,所述装置包括:
第二数据获取单元81,用于获取所述被采集设备的至少一个数据点的实时状态数据;
第二数据请求接收单元82,用于接收所述第二代理服务器发送的数据获取请求;
第二数据包发送单元83,用于响应于所述数据获取请求,向所述第二代理服务器发送携带有所述实时状态数据的数据包。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如各方法实施例所述的步骤,例如包括:
获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
在根据所述数据包确定所述被采集设备的设备状态正常的情况下,解析所述数据包;
利用解析得到的所述实时状态数据对所述至少一个数据点的历史状态数据执行更新操作;
在根据所述数据包确定所述被采集设备的设备状态异常的情况下,丢弃所述数据包,并将所述至少一个数据点的状态属性更新为异常状态。
图9是本申请另一个实施例提供的电子设备的结构示意图。图9所示的电子设备900包括:至少一个处理器901、存储器902、至少一个网络接口904和其他用户接口903。电子设备900中的各个组件通过总线系统905耦合在一起。可理解,总线系统905用于实现这些组件之间的连接通信。总线系统905除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图9中将各种总线都标为总线系统905。
其中,用户接口903可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。
可以理解,本发明实施例中的存储器902可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器(ProgrammableROM,PROM)、可擦除可编程只读存储器(ErasablePROM,EPROM)、电可擦除可编程只读存储器(ElectricallyEPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(RandomAccessMemory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(StaticRAM,SRAM)、动态随机存取存储器(DynamicRAM,DRAM)、同步动态随机存取存储器(SynchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleDataRateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(SynchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambusRAM,DRRAM)。本文描述的存储器902旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器902存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统9021和应用程序9022。
其中,操作系统9021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序9022,包含各种应用程序,例如媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序9022中。
在本发明实施例中,通过调用存储器902存储的程序或指令,具体的,可以是应用程序9022中存储的程序或指令,处理器901用于执行各方法实施例所提供的方法步骤,例如包括:
获取与所述采集设备进行通信的数据包,其中,所述数据包中携带有所述采集设备获取到的所述被采集设备的至少一个数据点的实时状态数据;
在根据所述数据包确定所述被采集设备的设备状态正常的情况下,解析所述数据包;
利用解析得到的所述实时状态数据对所述至少一个数据点的历史状态数据执行更新操作;
在根据所述数据包确定所述被采集设备的设备状态异常的情况下,丢弃所述数据包,并将所述至少一个数据点的状态属性更新为异常状态。
上述本发明实施例揭示的方法可以应用于处理器901中,或者由处理器901实现。处理器901可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器901中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器901可以是通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecific IntegratedCircuit,ASIC)、现成可编程门阵列(FieldProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器902,处理器901读取存储器902中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。