综合监控系统的数据处理方法、装置和系统转让专利

申请号 : CN201910986304.2

文献号 : CN112671697B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 薄煜杨耕田

申请人 : 比亚迪股份有限公司

摘要 :

本申请公开了综合监控系统的数据处理方法、装置和系统,该方法包括:接收网关发送的消息队列遥测传输MQTT消息,该MQTT消息的消息体包括从综合监控系统接收的监控数据;解析MQTT消息以得到上报类型标识;在上报类型标识用于指示监控数据是设备状态数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消息的消息体转换成待处理格式数据;再解析待处理格式数据以得到设备类型字段;基于设备类型字段解析待处理格式数据以得到用于展示的格式数据;将用于展示的格式数据发送至数据展示前端。本申请实施例可以有效地节省数据展示页面的生成时间,提高了监控管理的效率。

权利要求 :

1.一种综合监控系统的数据处理方法,其特征在于,该数据处理方法包括:接收网关发送的消息队列遥测传输MQTT消息,所述MQTT消息包含消息主题名称、消息体、分组标识和上报类型标识,所述消息体包括从综合监控系统接收的监控数据,所述上报类型标识包括设备状态数据和事件告警数据;

解析所述MQTT消息以得到上报类型标识;

在所述上报类型标识用于指示所述监控数据是设备状态数据时,解析所述MQTT消息以得到分组标识,并基于所述分组标识将所述MQTT消息的消息体转换成待处理格式数据,再解析所述待处理格式数据以得到设备类型字段,其中,所述设备状态数据是被监控设备上报的实时状态数据,所述分组标识用于指示上报的监控数据属于综合监控系统的具体业务子系统;

基于所述设备类型字段解析所述待处理格式数据以得到用于展示的格式数据;

将所述用于展示的格式数据发送至数据展示前端。

2.根据权利要求1所述的数据处理方法,其特征在于,所述数据处理方法还包括:在所述上报类型标识用于指示所述监控数据是事件告警数据时,解析所述MQTT消息以得到所述分组标识;

基于所述分组标识将所述MQTT消息的消息体直接转换成所述用于展示的格式数据。

3.根据权利要求1所述的数据处理方法,其特征在于,所述数据处理方法还包括:基于预先定义的与所述设备类型字段对应的连接主题名称建立websocket连接;

则所述将所述用于展示的格式数据发送至数据展示前端,包括:调用预先建立的所述websocket连接,将所述用于展示的格式数据发送至所述数据展示前端中与所述主题名称对应的websocket客户端,以使得所述数据展示前端的展示页面直接调用所述用于展示的格式数据。

4.一种综合监控系统的数据处理方法,其特征在于,该数据处理方法包括:网关从综合监控系统接收监控数据,将所述监控数据转换成与之对应的消息队列遥测传输MQTT消息,并推送所述MQTT消息至web服务器,所述MQTT消息的消息体包括所述监控数据;

web服务器执行如权利要求1‑3任意一项所述的数据处理方法。

5.根据权利要求4所述的数据处理方法,其特征在于,所述将所述监控数据转换成与之对应的消息队列遥测传输MQTT消息,包括:按照数据处理规则对所述监控数据进行筛选;

将筛选后的监控数据按照所述MQTT消息的消息主题名称进行分类处理;

将分类后的监控数据作为所述消息体,与消息主题名称、预先定义的分组标识、预先定义的上报类型标识一起封装成MQTT消息。

6.一种综合监控系统的数据处理装置,其特征在于,该数据处理装置包括:接收模块,其用于接收网关发送的消息队列遥测传输MQTT消息,所述MQTT消息是将所述网关从综合监控系统接收的监控数据按照MQTT协议进行转换得到的,所述MQTT消息包含消息主题名称、消息体、分组标识和上报类型标识,所述消息体包括所述监控数据;

解析模块,其用于解析所述MQTT消息以得到所述上报类型标识;在所述上报类型标识用于指示所述监控数据是设备状态数据时,解析所述MQTT消息以得到所述分组标识;并基于所述分组标识将所述MQTT消息的消息体转换成待处理格式数据,以及解析所述待处理格式数据以得到设备类型字段;基于所述设备类型字段解析所述待处理格式数据以得到用于展示的格式数据,其中,所述设备状态数据是被监控设备上报的实时状态数据,所述分组标识用于指示上报的监控数据属于综合监控系统的具体业务子系统;

发送模块,其用于将所述用于展示的格式数据发送给数据展示前端。

7.根据权利要求6所述的数据处理装置,其特征在于,所述解析模块,其还用于在所述上报类型标识用于指示所述监控数据是事件告警数据时,解析所述MQTT消息以得到所述分组标识;并基于所述分组标识将所述MQTT消息的消息体直接转换成所述用于展示的格式数据。

8.根据权利要求6所述的数据处理装置,其特征在于,该数据处理装置还包括:建立模块,用于基于预先定义的与所述设备类型字段对应的连接主题名称建立websocket连接;

则所述发送模块还用于:

调用预先建立的所述websocket连接来将所述用于展示的格式数据,发送至所述数据展示前端中与所述主题名称对应的websocket客户端,以使得所述数据展示前端的展示页面直接调用所述用于展示的格式数据。

9.一种综合监控系统的数据处理系统,其特征在于,该数据处理系统包括网关、消息队列遥测传输MQTT代理服务器和web服务器,其中,所述网关,用于从综合监控系统接收监控数据;将所述监控数据转换成与之对应的消息队列遥测传输MQTT消息;推送所述MQTT消息至MQTT代理服务器所述MQTT消息的消息体包括所述监控数据;

MQTT代理服务器,其用于从第一MQTT客户端接收MQTT消息,并发送所述MQTT消息至web服务器;

web服务器,用于执行如权利要求1‑3中任一项所述的数据处理方法。

10.根据权利要求9所述的数据处理系统,其特征在于,所述系统还包括:数据展示终端,其用于展示所述数据展示前端发送的展示页面数据,所述数据展示终端是移动终端,或者固定展示终端,且所述固定展示终端与所述综合监控系统属于不同的局域网。

说明书 :

综合监控系统的数据处理方法、装置和系统

技术领域

[0001] 本申请一般涉及数据处理技术领域,尤其涉及综合监控系统的数据处理方法、装置和系统。

背景技术

[0002] 综合监控系统(Integrated Supervisory Control System,简称ISCS)数据获取方式可以按照过程控制的对象链接和嵌入的统一架构(Object Linking and Embedding
(OLE)for Process Control Unified Architecture,英文缩写为OPC UA)获取各个被监控
设备的设备状态数据或事件告警数据。OPC UA协议作为数据互联的格式标准和规范,可以
作为综合监控系统的总线协议,在局域网内将各级综合监控系统连接在一起,实现各种数
据的可靠性传输。
[0003] 目前,综合监控系统对监控数据,例如,设备状态数据或事件告警数据等,处理效率低,监控效果差。

发明内容

[0004] 鉴于现有技术中的上述缺陷或不足,期望提供一种轨道交通综合监控系统的数据处理方法、装置和系统,来提升查看监控数据的效率。
[0005] 第一方面,本申请实施例提供了一种综合监控系统的数据处理方法,该方法包括:
[0006] 接收网关发送的消息队列遥测传输MQTT消息,该MQTT消息的消息体包括从综合监控系统接收的监控数据;
[0007] 解析MQTT消息以得到上报类型标识;在上报类型标识用于指示监控数据是设备状态数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消息的消息体转换成待
处理格式数据;再解析待处理格式数据以得到设备类型字段;基于设备类型字段解析待处
理格式数据以得到用于展示的格式数据;
[0008] 将用于展示的格式数据发送至数据展示前端。
[0009] 第二方面,本申请实施例提供了一种综合监控系统的数据处理方法,该数据处理方法包括:
[0010] 网关从综合监控系统接收监控数据,将监控数据转换成与之对应的消息队列遥测传输MQTT消息,并推送MQTT消息至web服务器,MQTT消息的消息体包括监控数据;
[0011] web服务器执行如第一方面描述的数据处理方法。
[0012] 第三方面,本申请实施例提供了一种综合监控系统的数据处理装置,该数据处理装置包括:
[0013] 接收模块,其用于接收网关发送的消息队列遥测传输MQTT消息,该MQTT消息是将网关从综合监控系统接收的监控数据按照MQTT协议进行转换得到的,该MQTT消息的消息体
包括监控数据;
[0014] 解析模块,其用于解析MQTT消息以得到上报类型标识;在上报类型标识用于指示监控数据设备状态数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消息的
消息体转换成待处理格式数据,以及解析待处理格式数据以得到设备类型字段;基于设备
类型字段解析待处理格式数据以得到用于展示的格式数据;
[0015] 发送模块,其用于将用于展示的格式数据发送至数据展示前端。
[0016] 第四方面,本申请实施例提供了一种综合监控系统的数据处理系统,该数据处理系统包括网关、消息队列遥测传输MQTT代理服务器和web服务器,其中,
[0017] 网关,用于从综合监控系统接收监控数据;将监控数据转换成与之对应的消息队列遥测传输MQTT消息;推送MQTT消息至MQTT代理服务器,MQTT消息的消息体包括该监控数
据;
[0018] MQTT代理服务器,其用于从第一MQTT客户端接收MQTT消息,并发送MQTT消息至web服务器;
[0019] web服务器,用于执行如第一方面描述的数据处理方法。
[0020] 本申请实施例提供的综合监控系统的数据处理方法、装置和系统,通过解析MQTT消息得到上报类型标识;在上报类型标识用于指示上报设备状态数据时,解析MQTT消息以
得到分组标识;并基于分组标识将MQTT消息的消息体转换成待处理格式数据;再解析待处
理格式数据以得到设备类型字段;基于设备类型字段解析待处理格式数据以得到用于展示
的格式数据,即将MQTT消息的消息体内的监控数据转换成用于展示的格式数据,其有效地
节省数据展示前端处理数据和页面生成的时间,提高了监控管理的效率。

附图说明

[0021] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0022] 图1示出了本申请实施例提供的综合监控系统的应用场景;
[0023] 图2示出了本申请实施例提供的数据处理方法的流程示意图;
[0024] 图3示出了本申请实施例提供的MQTT消息的结构示意图;
[0025] 图4示出了本申请实施例提供的步骤209的流程示意图;
[0026] 图5示出了本申请又一实施例提供的数据处理方法的流程示意图;
[0027] 图6示出了本申请实施例提供的数据处理装置600的结构示意图;
[0028] 图7示出了本申请实施例提供的数据处理系统的结构示意图;
[0029] 图8示出了本申请实施例提供网关701的结构示意图;
[0030] 图9示出了本申请实施例提供web服务器703的结构示意图
[0031] 图10示出了适于用来实现本申请实施例的服务器的计算机系统的结构示意图。

具体实施方式

[0032] 下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关公开,而非对该公开的限定。另外还需要说明的是,为了
便于描述,附图中仅示出了与公开相关的部分。
[0033] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0034] 技术术语解释
[0035] ISCS:Integrated Supervisory Control System;综合监控系统
[0036] FAS:Fire Alarm System;火灾报警系统
[0037] BAS:Building Automation System;环境与设备监控系统
[0038] PSCADA:Power Supervisory Control And Data Acquisition;电力监控系统
[0039] ACS:Access Control System;门禁系统
[0040] FEP:Front End Processor;前端处理器
[0041] HMI:Human Machine Interface;人机界面
[0042] PIS:Passenger Information System;乘客服务系统
[0043] AFC:Automatic Fare Collection System;自动售检票系统
[0044] MQTT:Message Queuing Telemetry Transport;消息队列遥测传输
[0045] TCP:Transmission Control Protocol;传输控制协议
[0046] websocket:在单个TCP连接上进行全双工通信的协议
[0047] 城市轨道交通综合监控系统,可以分为多个层级,例如中央级综合监控系统、车站级综合监控系统等。城市轨道交通综合监控系统可以包括多个业务子系统,例如,电力监控
系统、火灾自动报警系统等等。作为一个实施例,如图1所示,图1示出了本申请实施例提供
的综合监控系统的应用场景。其中,综合监控系统10包括:
[0048] 前端处理服务模块101(即FEP服务模块),其周期地向各个业务子系统内的被监控的设备发送数据请求,设备响应数据请求来提供监控数据。在前端处理服务模块101获取到
监控数据后,周期性地将监控数据更新到前端处理服务模块的相关节点,该节点可以是存
储监控数据的实时数据库组件。其中,被监控设备可以包括但不限于火灾报警系统、环境与
设备监控系统、电力监控系统、乘客服务系统、自动售检票系统、门禁系统等系统内的设备。
[0049] 实时数据库102,其通过创建订阅的方式监视前端处理服务模块101的相关节点的数据变化。并在数据发生变化时,采集发生变化的数据,然后,将变化的数据写入到实时数
据库的内存,并计算内存中相关节点数据的变化所产生的状态数据,该状态数据包括设备
状态数据,事件告警数据等。实时数据库可以包括节点管理功能模块,可以称为节点管理
器,其可以用于将变化的数据写入到实时数据库。实时数据库102可以实现为OPC UA服务
器。
[0050] 人机界面(HMI)模块103,其通过创建订阅的方式监视实时数据库102中相关节点的变化,在数据发生变化时,或者在固定时间周期内,将发生变化的数据写入到HMI模块的
内存,然后,通过相应服务组件读取HMI内存中的数据,将该数据通过数据展示界面来展示。
基于OPC UA协议监视实时数据库的数据变化,其实质是基于发布订阅的通信模式来采集变
化的数据。例如,在人机界面HMI模块中设置OPC UA客户端,通过OPC UA客户端订阅OPC UA
服务器的节点数据,可以采集得到ISCS系统的监控数据。但是,HMI模块通常设置在固定工
作站内,导致需要相关人员到固定工作站内查看HMI模块显示的数据,这种在同一个局域网
内的固定位置进行数据展示的方式,导致监控管理工作的效率较低,且增加了监控管理的
人力成本。
[0051] 因此,本申请在城市轨道交通综合监控系统现状基础上,提出了一种适用于城市轨道交通综合监控系统的数据处理方法,通过该方法可以有效地提高监控管理的效率。
[0052] 请参考图2,图2示出了本申请实施例提供的数据处理方法的流程示意图。该方法应用于轨道交通的综合监控系统,其可以是在web服务器侧实施。该方法可以包括:
[0053] 步骤201,接收网关发送的消息队列遥测传输MQTT消息。
[0054] 该MQTT消息包含消息主题名称、消息体、分组标识和上报类型标识,其中,消息体包括从综合监控系统接收的监控数据。
[0055] 在本步骤中,网关将从综合监控系统接收到的监控数据,经过消息队列遥测传输协议将监控数据封装到消息队列遥测传输消息(即MQTT消息)中,从而完成将监控数据转换
成MQTT消息。服务器再从网关中订阅接收MQTT消息。
[0056] 其中,图3示出了本申请实施例提供的MQTT消息的结构示意图。如图3所示,301表示MQTT消息中的消息主题名称(即Topic)部分。例如,消息主题名称可以表示为TOPIC_CN_
GD_DCT_ISCS_P1。消息主题名称是用于在消息发送方与消息接收方之间建立连接的标识。
[0057] 其中“TOPIC”字段为固定字符串,用于表示为Topic定义;“CN”字段为国家码,此处代表中国;“GD”字段为地区缩写,此处表示广东;“DCT”字段表示消息传递方向,此处表示
“DATA CENTER Terminated”,即此条消息是发往数据中心的消息;“ISCS”字段表示数据源,
此处表示这条消息来自于综合监控系统(ISCS);“P1”字段表示消息的处理优先级,即
Priority 1,此处优先级根据需求共分为三个级别,分别为P1/P2/P3。
[0058] 302表示MQTT消息的消息主体(即message_body或payload),其用于封装综合监控系统的子系统内的设备上报的监控数据,例如设备状态数据或者事件告警数据。这些监控
数据具体为二进制字节流形式。设备状态数据是被监控设备上报的实时状态数据。例如,
PIS系统的视频服务器,其上报的设备状态数据可以包括视频服务器的设备名称、设备编
码、设备对应的互联网协议地址(Internet Protocol,即IP地址)、位置信息、最新上报时
间、连接状态等数据。事件告警数据是被监控设备产生故障或告警事件时产生的。例如,PIS
系统的视频服务器,其上报的事件告警数据可以包括视频服务器的设备名称、告警类型、告
警级别,隶属的子系统名称、告警发生时间,告警标识、网络标识、错误代码等数据。
[0059] 303和304可以预先定义MQTT消息的自定义字节部分来实现。
[0060] 其中,303表示分组标识(即Group_id),其用于指示上报的监控数据属于综合监控系统的具体业务子系统。例如,GID_PIS用于表示乘客服务系统。
[0061] 其中,304表示上报类型标识(即Tag),其用于指示上报的监控数据的类型,可以通过Tag来区分同一主题名称Topic下的不同的监控数据。例如,ISCS_REAL_TIME_TAG用于指
示上报的是设备状态数据,ISCS_ALARM_EVENT_TAG用于指示上报的是事件告警数据。
[0062] 步骤202,解析MQTT消息以得到上报类型标识;
[0063] 步骤203,在上报类型标识用于指示监控数据是实时状态数据时,解析MQTT消息以得到分组标识;
[0064] 步骤204,基于分组标识将MQTT消息的消息体转换成待处理格式数据;其中,格式数据可以是json格式数据,json(JavaScript Object Notation,即JavaScript对象表示
法)是一种轻量级的数据交换格式,其使用Javascript语法来描述数据对象。待处理格式数
据是将MQTT消息的消息体部分的二进制字节流直接转换成一种统一格式数据流。该统一格
式数据流可以由数据展示前端直接读取应用。
[0065] 步骤205,解析待处理格式数据以得到设备类型字段;其中,格式数据中包含业务子系统的具体设备的设备类型字段,该设备类型字段例如可以是assetType字段;
[0066] 步骤206,基于设备类型字段解析待处理格式数据以得到用于展示的格式数据。用于展示的格式数据是从待处理格式数据中根据设备类型直接解析得到的。例如,待处理格
式数据采用json格式实现,则json格式数据可以直接转换成JavaScript里的对象或数组,
方便数据展示前端直接读取使用,而无需再做其他的数据处理,直接将数据展示展示在设
备对应的展示页面中,从而有效地节省了数据处理时间,节省了页面展示的时间,从而提升
了监控管理的效率。
[0067] 步骤207,在上报类型标识用于指示监控数据是事件告警数据时,解析MQTT消息以得到分组标识。
[0068] 步骤208,基于分组标识将MQTT消息的消息体直接转换成用于展示的格式数据。
[0069] 在本步骤中,如果是上报的事件告警数据,则可以直接将是告警数据转换成用于展示的格式数据,例如,格式数据采用json格式实现,则json格式数据可以直接转换成
JavaScript里的对象或数组,从而方便数据展示前端直接读取使用。将该数据展示在告警
展示页面中。
[0070] 步骤209,将用于展示的格式数据发送至数据展示前端。
[0071] 不同类型的被监控设备上报监控数据的格式可能是不同的,这导致直接利用MQTT消息进行页面展示效率较低。本申请实施例通过web服务器对MQTT消息的标识信息进行逐
层解析,识别出被监控设备的设备类型,并按照设备类型将上报的监控数据转换成数据展
示前端可以直接调用的数据格式,其节省了数据展示前端处理监控数据的时间,有效地提
升数据处理效率,并提升了监控管理的效率。
[0072] 进一步地,本申请为了提升监控数据的传输效率,步骤209还可以优选地由websocket连接方式来实现。请参考图4,图4示出了本申请实施例提供的步骤209的流程示
意图。
[0073] 如图4所示,该方法还可以在步骤209之前,包括:
[0074] 步骤2091,基于预先定义的与所述设备类型字段对应的连接主题名称建立websocket连接;
[0075] 在本步骤中,连接主题名称是用于在websocket消息发送方与websocket消息接收方之间的建立连接的标识。以PIS系统的设备状态数据为例,
[0076] 其Topic字段可以定义为:“ws/topic/pis/device/occ/status+lineid”,该Topic是一个字符串,指定是PIS系统的occ服务器(Operating Control Center,即运行控制中
心)的设备状态数据,还可以根据需要指定扩展标识。例如,PIS系统的摄像头组的topic可
以定义为:“ws/topic_device_id/pis/device/occ/status+lineid”,从而将具体的摄像头
上传的数据提供至与该摄像头对应的展示页面中。
[0077] 在建立websocket连接的过程中,通过握手协议传输预先建立的连接主题名称。websocket连接可以在创建websocket服务端是定义Topic和待读取的该Topic下的被监控
设备的数据,并在数据展示前端中设置的websocket客户端启动之后,指定其消费的该
Topic,从而实现在websocket服务端和websocket客户端之间的连接。
[0078] 步骤209包括:
[0079] 调用步骤2091预先建立的websocket连接,将用于展示的格式数据发送至数据展示前端中与主题名称对应的websocket客户端,以使得数据展示前端的展示页面直接调用
所述用于展示的格式数据。
[0080] 建立websocket服务端与websocket客户端之间的连接之后,websocket客户端消费与之对应的监控数据,将消费获取的监控数据写入数据展示前端的对应的设备的展示页
面中。在数据展示前端中通过websocket客户端消费相同Topic的数据来实现数据的自动刷
新,即自动更新展示页面,从而有效地提升了监控管理的效率。
[0081] 为了更好地兼容轨道交通的综合监控系统的数据处理,请参考图5,图5示出了本申请又一实施例提供的数据处理方法的流程示意图。该方法由与综合监控系统连接的网关
和web服务器交互执行。如图5所示,该方法包括:
[0082] 步骤501,网关从综合监控系统接收监控数据。
[0083] 网关可以通过订阅/发布关系从ISCS系统的实时数据库中实时获取各个业务子系统的监控数据。该订阅/发布关系,例如可以通过OPC UA协议的订阅/发布模式来实现。针对
不同的业务子系统,还可以设置不同的网关,每个网关单独采集该业务子系统的监控数据。
[0084] 步骤502,网关将监控数据转换成与之对应的消息队列遥测传输MQTT消息;
[0085] 网关接收到各个业务子系统的监控数据后,将该监控数据经过MQTT协议转换后,将MQTT消息推送给web服务器,使得web服务器可以采用统一的数据格式接收多个网关推送
的监控数据,有效地增强了web服务器的兼容性。web服务器也可以称为网页服务器,主要功
能是提供网上信息浏览服务。
[0086] 步骤503,网关推送MQTT消息至web服务器。
[0087] 步骤504,web服务器接收网关发送的MQTT消息。
[0088] 步骤505,web服务器解析MQTT消息以得到上报类型标识;
[0089] 步骤506,web服务器判断上报类型标识,
[0090] 步骤506a,web服务器在上报类型标识用于指示监控数据是设备状态数据时,解析MQTT消息以得到分组标识。
[0091] 步骤507,web服务器基于分组标识将MQTT消息的消息体转换成待处理格式数据。
[0092] 步骤508,web服务器解析待处理格式数据以得到设备类型字段。
[0093] 步骤509,web服务器基于设备类型字段解析待处理格式数据以得到用于展示的格式数据;
[0094] 步骤510,web服务器将用于展示的格式数据发送至数据展示前端。
[0095] 步骤506b,web服务器在上报类型标识用于指示监控数据是事件告警数据时,解析MQTT消息以得到分组标识;
[0096] 步骤511,web服务器基于分组标识将MQTT消息的消息体直接转换成用于展示的格式数据。
[0097] web服务器基于预先定义的与所述设备类型字段对应的连接主题名称建立websocket连接;
[0098] web服务器在完成建立websocket连接之后,调用预先建立的websocket连接将用于展示的格式数据发送至数据展示前端中与主题名称对应的websocket客户端,以使得数
据展示前端的展示页面直接调用用于展示的格式数据。需要说明的是,web服务器仅在第一
次将用于展示的格式数据发送至对应的websocket客户端时,基于预先定义的与设备类型
字段对应的连接主题名称建立websocket连接,在完成建立websocket连接之后,断开
websocket连接之前,可直接调用该建立的websocket连接,将用于展示的格式数据发送至
数据展示前端中与主题名称对应的websocket客户端,以实时更新用于展示的格式数据。
[0099] 在上述实施例中,web服务器接收网关推送的MQTT消息之后,对MQTT消息进行解析,并将MQTT消息的消息体转换成统一的格式数据,将统一的格式数据通过websocket连
接,提供给需要消费的websocket客户端,其有效地提升了数据处理效率,缩短了展示页面
所需的时间。
[0100] 进一步地,网关在将监控数据转换成与之对应的MQTT消息时,还可以包括以下步骤:
[0101] 按照数据处理规则对监控数据进行筛选;
[0102] 其中数据处理规则,例如可以是无用数据淘汰规则、相似数据合并规则及关健数据直接上报规则等等。
[0103] 将筛选后的监控数据按照消息主题名称进行分类处理;
[0104] 将分类后的监控数据作为消息体,与消息主题名称、预先定义的分组标识、预先定义的上报类型标识一起封装成MQTT消息。
[0105] 本申请实施例,在从ISCS系统读取监控数据时,经由网关和web服务器对监控数据进行处理后,直接提供给数据展示前端,有效地缩短了展示页面生成时间,提高了监控管理
的效率。
[0106] 数据展示前端将格式数据填写到展示页面中,展示页面可以通过不同的数据展示终端进行呈现,例如通过移动终端进行呈现,或者通过与综合监控系统属于不同的局域网
的数据展示终端进行呈现,从而克服了现有技术中监控数据只能在固定的HMI模块中进行
展示,导致查看管理效率较低的问题。
[0107] 应当注意,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期
望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些
步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0108] 本申请实施例还提供了一种应用于轨道交通的综合监控系统的数据处理装置。请参考图6,图6示出了本申请实施例提供的数据处理装置600的结构示意图。该装置600可以
在web服务器上实施,其应用于轨道交通的综合监控系统。
[0109] 如图6所示,该装置600包括:
[0110] 接收模块601,其用于接收网关发送的消息队列遥测传输MQTT消息。该MQTT消息是将网关从综合监控系统接收的监控数据按照MQTT协议进行转换得到的。MQTT消息至少包含
主题名称、消息体、分组标识和上报类型标识,该消息体包括监控数据。
[0111] 解析模块602,其用于解析MQTT消息以得到上报类型标识;在上报类型标识用于指示监控数据是设备状态数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消
息的消息体转换成待处理格式数据,以及解析待处理格式数据以得到设备类型字段;基于
设备类型字段解析待处理格式数据以得到用于展示的格式数据;
[0112] 发送模块603,其用于将用于展示的格式数据发送至数据展示前端。
[0113] 进一步地,解析模块602,其还用于在上报类型标识用于指示监控数据是事件告警数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消息的消息体直接转换成
用于展示的格式数据。
[0114] 进一步地,其中发送模块603还可以用于基于预先定义的与设备类型字段对应的连接主题名称建立websocket连接;在完成建立所述websokcet连接之后,通过调用
websocket连接来将用于展示的格式数据发送至数据展示前端中与主题名称对应的
websocket客户端,以使得数据展示前端的展示页面直接调用用于展示的格式数据。
[0115] 本申请实施例通过对MQTT消息的标识信息进行逐层解析,识别出被监控设备的设备类型,并按照设备类型将该上报监控数据转换成数据展示前端可以直接调用的数据格
式,节省了数据展示前端处理监控数据的时间,从而有效地提升数据处理效率,并提升了监
控管理的效率。
[0116] 在上文详细描述中提及的若干模块或者单元,这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块
或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为
由多个模块或者单元来具体化。
[0117] 作为一个实施例,请参考图7,图7示出了本申请实施例提供的数据处理系统的结构示意图。如图7所示,该系统应用于轨道交通的综合监控系统,其可以包括网关701、MQTT
代理服务器702和web服务器703:
[0118] 网关701可以包括:OPC UA客户端7011,协议转换模块7012,第一MQTT客户端7013。
[0119] 其中,OPC UA客户端7011,其用于从综合监控系统接收监控数据。
[0120] 其中,监控数据是ISCS系统的实时数据库102发布的;实时数据库可以实现为OPC UA服务端,网关201内可以设置OPC UA客户端。OPC UA服务端,用于发布设备状态数据和事
件告警数据,OPC UA客户端,用于订阅设备状态数据和事件告警数据。OPC统一架构是一种
开放标准。它为远程客户端到服务器连接提供了一种安全的方法,可以穿过防火墙、在互联
网、WAN(Wide Area Network,即广域网)或LAN(Local Area Network,即局域网)上安全地
连接。例如,PIS系统包括:播出控制工作站、直播编码器、视频流服务器、摄像机组等被监控
设备。
[0121] 协议转换模块7012,其用于将监控数据转换成与之对应的消息队列遥测传输MQTT消息。本申请中通过协议转换模块将接收的监控数据转换成如图3所示的MQTT消息。该MQTT
消息至少包含消息主题名称、消息体、分组标识和上报类型标识,该消息体包括监控数据。
[0122] 第一MQTT客户端7013,其用于推送MQTT消息至MQTT代理服务器。
[0123] 本申请实施例中可以在第一MQTT客户端与MQTT代理服务器之间建立长连接,采用长连接可以省去每次发送时临时建立/断开连接的时间,在发送数据量较大、发送频率较高
的场景中,可以有效节省处理时间。
[0124] MQTT代理服务器702,其用于从网关的第一MQTT客户端接收MQTT消息,并发送MQTT消息给web服务器的第二MQTT客户端。
[0125] web服务器703可以包括:第二MQTT客户端7031,解析模块7032,提供模块7033;
[0126] 其中,第二MQTT客户7031,其用于接收网关发送的MQTT消息。
[0127] 本申请实施例中可以在第二MQTT客户端与MQTT代理服务器之间建立长连接,采用长连接可以省去每次发送时临时建立/断开连接的时间,在发送数据量较大、发送频率较高
的场景中,可以有效节省处理时间。
[0128] 解析模块7032,其用于解析MQTT消息以得到上报类型标识;在上报类型标识用于指示监控数据是设备状态数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT
消息转换成待处理格式数据,以及解析待处理格式数据以得到设备类型字段;基于设备类
型字段解析待处理格式数据以得到用于展示的格式数据;
[0129] 解析模块7032,其还用于在上报类型标识用于指示监控数据是事件告警数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消息的消息体直接转换成用于展示
的格式数据。
[0130] 提供模块7033,用于将用于展示的格式数据发送至数据展示前端。
[0131] 提供给数据展示前端的数据可以通过websocket对象来实现。例如,预先定义与设备类型字段对应的连接主题名称(即websocket对象的Topic),并通过连接主题名称采用握
手协议建立websocket服务端与websocket客户端之间的连接。Websocket服务端设置在提
供模块内,websocket客户端设置在数据展示前端内。
[0132] 在websocket对象的消息体部分存放json格式数据。json格式数据可以包括但不限于设备名称、IP地址、最新上报信息、连接状态等。
[0133] 进一步地,该系统还可以包括数据展示前端,其用于向数据展示终端提供展示页面数据。
[0134] 该展示页面数据可以制作成适用于不同数据展示终端的页面。数据展示终端,例如可以是移动终端,或位于与ISCS系统不同地理位置的其他数据展示终端,例如固定展示
终端。本申请实施例中,数据展示终端可以不受地理位置的限制,在数据展示终端上可以通
过数据展示页面实现对基础数据的异地访问。例如,数据展示终端是移动终端,可以与ISCS
系统不属于同一个局域网,或者web终端,其与ISCS系统不属于同一个局域网。
[0135] 本申请实施例通过网关将综合监控系统上报的监控数据转换成统一的MQTT消息,可以实现多个不同网关上传数据与web服务器之间的兼容。进一步地,经由web服务器对
MQTT消息的标识信息进行逐层解析,识别出被监控设备的设备类型,并按照设备类型将该
上报监控数据转换成数据展示前端可以直接调用的数据格式,节省了数据展示前端处理监
控数据的时间,从而有效地提升数据处理效率,并提升了监控管理的效率。
[0136] 本申请实施例还提供了一种网关。请参考图8,图8示出了本申请实施例提供网关701的结构示意图。如图8所示,该网关701包括:OPC UA客户端7011,协议转换模块7012,第
一MQTT客户端7013。
[0137] 其中,OPC UA客户端7011可以包括:
[0138] 配置子模块801,其用于对配置文件进行修改,在该配置文件中添加网关要转发的设备类型、实时库的地址、IO类型、数据订阅规则等;其中,OPC UA客户端的订阅规则,可以
设置其上报方式为数据产生变化时上报,按照固定间隔时间上报等方式。
[0139] 第一启动子模块802,其用于对配置文件进行解析,加载对应的配置项,根据不同的设备类型进行相关的订阅;
[0140] 监听子模块803,其用于根据数据订阅关系,监听OPC UA服务端推送的监控数据,并在监听到有监控数据到达时,经由发送子模块804传送给协议转换模块7012;
[0141] 第一发送子模块804,其用于将监控数据发送给协议转换模块7012;
[0142] 其中,协议转换模块7012可以包括:
[0143] 接收解析子模块805,其用于对接收的监控数据进行初步解析;
[0144] 筛选子模块806,其用于根据数据处理规则对数据进行筛选,例如对某些不符合要求的数据进行丢弃操作等;
[0145] 分类子模块807,其用于将经过筛选的数据根据消息主题名称Topic的定义规则进行分类处理;
[0146] 封装子模块808,用于将监控数据按照MQTT消息格式进行再封装,得到MQTT消息。还可以利用加密算法,对监控数据进行加密处理。
[0147] 第二发送子模块809,其用于将封装得到的MQTT消息发送给第一MQTT客户端7013。
[0148] 其中,第一MQTT客户端7013还可以包括:
[0149] 第二启动子模块810,其用于启动并建立与MQTT代理服务器之间的连接;
[0150] 第三发送子模块811,其用于向MQTT代理服务器发送MQTT消息。
[0151] 本申请实施例提供的网关从综合监控系统订阅接收监控数据后,对监控数据会进行初步筛选处理,并将其转换成统一的消息,推动给web服务器处理,其有效地满足对不同
数据处理前端的处理需求,而无需反复修改处理逻辑,有效地提高数据处理效率和系统的
兼容性。
[0152] 本申请实施例还提供了一种web服务器。请参考图9,图9示出了本申请实施例提供web服务器703的结构示意图。如图9所示,
[0153] 该web服务器703可以包括:第二MQTT客户端7031,解析模块7032,提供模块7033;
[0154] 第二MQTT客户端7031还可以包括:
[0155] 接收子模块901,其用于接收来MQTT代理服务器的指定Topic的MQTT消息;
[0156] 主题解析子模块902,其用于解析MQTT消息的消息主题名称;
[0157] 解析模块7032还可以包括:
[0158] 上报标识解析子模块903,其用于解析MQTT消息中包含的上报的监控数据的类型;
[0159] 设备状态解析子模块904,其用于在上报类型标识用于指示监控数据是设备状态数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消息转换成待处理格式数
据,以及解析待处理格式数据以得到设备类型字段;基于设备类型字段解析待处理格式数
据以得到用于展示的格式数据;
[0160] 告警解析子模块905,其用于在上报类型标识用于指示监控数据是事件告警数据时,解析MQTT消息以得到分组标识;并基于分组标识将MQTT消息的消息体直接转换成用于
展示的格式数据。
[0161] 其中,解析模块7032还可以包括:
[0162] 数据库子模块906,其用于存储上报的事件告警消息,以供前端查询或处理使用。
[0163] 其中,web服务器703还可以包括:
[0164] 建立子模块907,其用于基于预先定义的与设备类型字段对应的连接主题名称建立websocket连接;
[0165] 发送模块7033还可以包括:
[0166] 调用子模块908,其用于调用预先建立的websocket连接将用于展示的格式数据发送至数据展示前端中与主题名称对应的websocket客户端,以使得数据展示前端的展示页
面直接调用用于展示的格式数据。
[0167] 下面参考图10,图10示出了适于用来实现本申请实施例的服务器的计算机系统1000的结构示意图。
[0168] 如图10所示,计算机系统1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的
程序而执行各种适当的动作和处理。在RAM 1003中,还存储有系统1000操作所需的各种程
序和数据。CPU1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口
1005也连接至总线1004。
[0169] 以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分
1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经
由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介
质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便
于从其上读出的计算机程序根据需要被安装入存储部分1008。
[0170] 特别地,根据本公开的实施例,上文参考流程图图4描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在机器可读介质
上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实
施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质
1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的系统中限定
的上述功能。
[0171] 需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不
限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计
算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便
携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储
器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、
或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程
序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本
公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,
其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限
于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可
读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于
由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的
程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述
的任意合适的组合。
[0172] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代
表一个模块、程序段、或代码的一部分,前述模块、程序段、或代码的一部分包含一个或多个
用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所
标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际
上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要
注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用
执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指
令的组合来实现。
[0173] 描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:
一种处理器包括接收模块、解析模块以及发送模块。其中,这些单元或模块的名称在某种情
况下并不构成对该单元或模块本身的限定,例如,接收模块还可以被描述为“用于接收网关
发送的消息队列遥测传输MQTT消息的模块”。
[0174] 作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电
子设备中的。上述计算机可读存储介质存储有一个或者多个程序,当上述前述程序被一个
或者一个以上的处理器用来执行描述于本申请的数据处理方法。
[0175] 以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术
方案,同时也应涵盖在不脱离前述公开构思的情况下,由上述技术特征或其等同特征进行
任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功
能的技术特征进行互相替换而形成的技术方案。