一种面向区域发电公司的报警消息中心系统的制作方法

文档序号:16391866发布日期:2018-12-25 19:23阅读:313来源:国知局
一种面向区域发电公司的报警消息中心系统的制作方法

本发明涉及一种报警消息中心系统,特别涉及一种面向区域发电公司的报警消息中心系统。

背景技术

近年来,随着信息化和工业化的深度融合,区域发电公司对下属电厂的管理水平有了显著提高。由于发电机组的系统复杂性,在日常生产运行过程中,时常会发生各种类型的故障或报警,如果不能将报警信息及时通知给生产责任人进行纠正,或将酿成重大的安全事故。

目前区域发电公司生产实时监管系统中有一些局部应用的报警及短信通知功能,存在问题是:(1)生产管理人员不能基于可视化图形界面方式自定义报警业务规则;(2)区域公司侧生产实时监管系统的报警规则较少、报警计算量小,未考虑接入下属所有电厂数据后大数据规模下的部署及应用;(3)目前的报警消息大多采用短信通知,未考虑其他形式的消息通知机制,如微信、app消息推送和电话自动拨号等;(4)目前的报警分析功能展示比较单一,没有按照目标用户进行场景细分,如在公司网站、值班室大屏幕和用户桌面客户端呈现不同的功能场景。

为了让区域发电公司生产管理人员和电厂相关责任人灵活制定报警业务规则,第一时间获得报警消息通知及时掌握发电机组运行状况,最大限度提高事故的反应速度,降低事故发生的可能性,建立区域发电公司报警消息中心系统迫在眉睫。



技术实现要素:

本发明弥补了现有技术和功能的不足,提供了一种面向区域发电公司的报警消息中心系统,具有配置灵活、功能全面、高性能的特点。

为了达到上述目的,本发明是通过如下技术方案实现的:

一种面向区域发电公司的报警消息中心系统,分为数据源层、数据服务中间件层、报警规则配置层、报警任务计算引擎层、消息总线和消息分发中心层、报警展示分析层;

所述的数据源层报警数据由时序数据和管理数据构成。时序数据来自区域公司生产实时监管系统和下属电厂厂级信息监控系统,主要是基于物联网架构的实时数据库测点当前值和历史值;管理数据来自公司erp系统和运行、燃料、技术监督等业务系统。

所述的数据服务中间件层提供报警规则计算访问数据源层业务数据的接口。数据源层由时序数据和管理数据构成,数据分别存储于实时数据库和关系数据库中,数据服务中间件基于适配器插件方式,完成了对不同类型实时数据库的封装,构建了规范的通讯接口和数据访问接口,屏蔽了不同实时数据库的差异,对外提供统一的数据服务。

所述的报警规则配置层基于通用性、开放性和可扩充性原则,所有报警业务逻辑能由用户自定义规则配置实现。规则的基本元素是组件,用户可以通过拖拽组件的方式轻松的创建出复杂的、可追溯的、可视化的报警逻辑;配置出来的规则的逻辑会以业务流程图的方式展现出来,用户可通过业务流程图来了解规则具体的内容,而不是传统的黑盒模式。

所述的报警规则配置层具体为:

报警规则引擎提供基础的规则模型定义、规则任务管理、规则事件机制、规则持久化、规则流程跟踪服务、流程版本一致性保证;规则模型定义了规则的各个基本元素,包括开始节点、结束节点、顺序执行、并发执行、分支执行、循环执行、状态转移;规则任务管理用于对规则流程实例的启动、停止、挂起、召回、异常管理;在此基础上,建立可视化报警规则组件容器,基于windows画布机制实现组件的拖拉拽;

所有的逻辑处理单元都是以组件的形式接入至报警规则配置工具;组件类至少实现三个接口:

(1)inargument<t>:组件模块输入,t为自定义泛型参数类型。

(2)outargument<t>:组件模块输出,即模块执行完之后需要返回的结果,t为自定义泛型参数类型。

(3)execute(contextcontext):组件业务逻辑执行,context为组件执行的工作流上下文参数;

创建好的规则基于工作流引擎流程跟踪服务能够进行单步调试,同时输出详细的调试信息;规则流程跟踪服务基于数据上下文总线方式设计,数据总线记录组件变量相关的业务数据。在调试完成后,每条规则既能够独立发布成web服务形式,供外部以restful形式进行调用;也能够以规则文件形式提供给规则计算引擎进行调度。

所述的报警任务计算引擎层根据用户配置的报警业务规则,获取数据源进行计算产生报警,并基于数据高效传输协议将报警信息推向消息总线层,采用分布式任务计算引擎进行处理。

计算引擎层构建了一套高性能的基于任务的网格计算框架,计算引擎包括资源节点、主节点、计算节点;所述的资源节点包含计算引擎使用的静态资源和动态资源;所述的主节点是整个计算引擎层的核心,基于ha高可靠性设计,承载用户请求、创建调度计算任务;所述的计算节点是任务执行机构,由分布在不同机器上的计算进程组成,执行主节点派发的报警计算任务、监测计算任务的执行、上报计算节点心跳状态。

计算节点的数据结构为:

{节点标识符,节点描述,节点ip地址,节点业务编码,节点启动路径,节点进程cpu使用率,节点进程占用内存大小,正在执行的周期任务队列长度,分发到节点的总任务数,本轮调度分配的任务数,正在执行的异步请求数,异步请求任务队列长度,同步请求任务队列长度,节点启动时间,节点当前状态,最后一次心跳时间,节点存活状态标识计数器,节点异常原因}

所述的计算任务是计算引擎中运行的基本计算单元,计算任务的数据结构可描述为:

{任务标识符,任务组标识符,任务所在节点标识符,任务索引,任务执行进度,任务执行开始时间,任务执行结束时间,任务运行时间,返回的计算结果,计算过程错误日志}

考虑到区域公司接入下属所有电厂数据后大数据规模下的部署及应用,可以基于分布式任务计算引擎,分派不同的报警业务规则到不同机器上的计算节点去执行,也可以针对同一报警业务规则按照电厂资源分配指定到不同的计算节点去执行。

所述消息总线和消息分发中心层可动态扩充消息终端插件,如短信猫、电信和移动网关、微信、app、邮件、电话等。消息分发中心支持用户自定义消息订阅,用户可以根据报警业务类型、业务规则、组织机构或特定指标测点订阅自己感兴趣的报警。对于某些重要报警信息,如机组非停时,除了正常发送短信或微信消息外,可配置自动拨打电话方式以在第一时间及时通知生产管理人员和相关责任人,直到接通后不再拨打,接通后播放报警语音消息。

所述的报警展示分析层可在公司网站、值班室大屏幕和用户桌面客户端呈现不同的报警查询和分析场景,提供给生产管理人员进行事后分析,同时为设备预警提供决策依据。

在公司网站,报警信息可以按电厂、机组和起止时间段进行历史报警查询和统计。图形分析模块提供多维图表,支持钻取、切片、切块等多维数据挖掘操作,用户可以根据需要选择相应的维度图表进行数据挖掘。用户还可以针对单个组织机构进行以时间为序列的分析。支持时间窗的放大、移动。选择分析的类型,并且添加可能与其相关的子报警,然后所选择的报警就会出现在时序分析图上。通过查看时序图,从而分析目标报警发生的相关原因。同时,对于某些重要的报警可以为其定制日报、月报、年报,进行报表浏览和导出。

在用户桌面客户端,报警程序作为常驻内存客户端软件,随机器自动启动,全天候7*24小时运行,以托盘方式在右下角显示或以气泡球方式悬浮在桌面,用户双击托盘图标或气泡球可打开客户端。对于实时重要报警信息可以通过声光进行自动提示,同时消息在右下角闪烁。点击消息后跳到报警信息展示界面。

在值班室大屏幕上,可以看到清晰的报警日历,根据每天报警的频繁度在日历上会有不同的颜色显示。点击某条报警消息,可以查看与其相关的详细报警内容、测点历史数据趋势图、设备生产过程流程图、可视化报警业务流程。

本发明的有益效果是:

本发明搭建了一种面向区域发电公司的报警消息中心系统,实现了报警规则的可视化组件化配置、报警任务分布式计算引擎、多终端消息分发中心、多用户场景报警功能分析展示。通过报警消息中心系统,区域发电公司生产管理人员和电厂相关责任人可以灵活制定报警业务规则,第一时间获得报警消息通知及时掌握发电机组运行状况,最大限度提高事故的反应速度,降低事故发生的可能性。

附图说明

图1是一种面向区域公司的报警消息中心系统的体系架构图。

图2是一种面向区域公司的报警消息中心系统的机组状态报警业务规则图。

图3是一种面向区域公司的报警消息中心系统的周期任务调度计算流程图。

具体实施方式

下面结合附图和实施例对本发明作详细说明。此处所说明的附图是本申请的一部分,用来对本发明进行进一步解释,但并不构成对本发明的限定。

一种面向区域发电公司的报警消息中心系统,分为数据源层、数据服务中间件层、报警规则配置层、报警任务计算引擎层、消息总线和消息分发中心层、报警展示分析层;

所述的数据源层报警数据由时序数据和管理数据构成。时序数据来自区域公司生产实时监管系统和下属电厂厂级信息监控系统,主要是基于物联网架构的实时数据库测点当前值和历史值;管理数据来自公司erp系统和运行、燃料、技术监督等业务系统。

所述的数据服务中间件层提供报警规则计算访问数据源层业务数据的接口。数据源层由时序数据和管理数据构成,数据分别存储于实时数据库和关系数据库中。区域公司生产实时监管系统和下属电厂厂级信息监控系统使用的实时数据库有pi、edna、openplant、rython等,关系数据库有sqlserver、oracle、mysql等。各个数据库厂商具有各自定义的应用程序接口,接口形式的多样化需要针对不同的实时数据库、关系数据库开发相应的通讯接口,存在开发成本高、通讯接口不通用等问题。基于上述弊端,数据服务中间件基于适配器插件方式,完成了对不同类型实时数据库的封装,构建了规范的通讯接口和数据访问接口,屏蔽了不同实时数据库的差异,对外提供统一的数据服务。

所述的报警规则配置层基于通用性、开放性和可扩充性原则,所有报警业务逻辑能由用户自定义规则配置实现。规则的基本元素是组件,用户可以通过拖拽组件的方式轻松的创建出复杂的、可追溯的、可视化的报警逻辑;配置出来的规则的逻辑会以业务流程图的方式展现出来,用户可通过业务流程图来了解规则具体的内容,而不是传统的黑盒模式。

所述的报警规则配置层具体为:

报警规则引擎提供基础的规则模型定义、规则任务管理、规则事件机制、规则持久化、规则流程跟踪服务、流程版本一致性保证;规则模型定义了规则的各个基本元素,包括开始节点、结束节点、顺序执行、并发执行、分支执行、循环执行、状态转移;规则任务管理用于对规则流程实例的启动、停止、挂起、召回、异常管理;在此基础上,建立可视化报警规则组件容器,基于windows画布机制实现组件的拖拉拽;

所有的逻辑处理单元都是以组件的形式接入至报警规则配置工具;组件类至少实现三个接口:

(1)inargument<t>:组件模块输入,t为自定义泛型参数类型。

(2)outargument<t>:组件模块输出,即模块执行完之后需要返回的结果,t为自定义泛型参数类型。

(3)execute(contextcontext):组件业务逻辑执行,context为组件执行的工作流上下文参数;

创建好的规则基于工作流引擎流程跟踪服务能够进行单步调试,同时输出详细的调试信息;规则流程跟踪服务基于数据上下文总线方式设计,数据总线记录组件变量相关的业务数据。在调试完成后,每条规则既能够独立发布成web服务形式,供外部以restful形式进行调用;也能够以规则文件形式提供给规则计算引擎进行调度。

所述的报警任务计算引擎层根据用户配置的报警业务规则,获取数据源进行计算产生报警,并基于数据高效传输协议将报警信息推向消息总线层,采用分布式任务计算引擎进行处理。

计算引擎层构建了一套高性能的基于任务的网格计算框架,计算引擎包括资源节点、主节点、计算节点;所述的资源节点包含计算引擎使用的静态资源和动态资源;所述的主节点是整个计算引擎层的核心,基于ha高可靠性设计,承载用户请求、创建调度计算任务;所述的计算节点是任务执行机构,由分布在不同机器上的计算进程组成,执行主节点派发的报警计算任务、监测计算任务的执行、上报计算节点心跳状态。

计算节点的数据结构为:

{节点标识符,节点描述,节点ip地址,节点业务编码,节点启动路径,节点进程cpu使用率,节点进程占用内存大小,正在执行的周期任务队列长度,分发到节点的总任务数,本轮调度分配的任务数,正在执行的异步请求数,异步请求任务队列长度,同步请求任务队列长度,节点启动时间,节点当前状态,最后一次心跳时间,节点存活状态标识计数器,节点异常原因}

所述的计算任务是计算引擎中运行的基本计算单元,计算任务的数据结构可描述为:

{任务标识符,任务组标识符,任务所在节点标识符,任务索引,任务执行进度,任务执行开始时间,任务执行结束时间,任务运行时间,返回的计算结果,计算过程错误日志}

考虑到区域公司接入下属所有电厂数据后大数据规模下的部署及应用,可以基于分布式任务计算引擎,分派不同的报警业务规则到不同机器上的计算节点去执行,也可以针对同一报警业务规则按照电厂资源分配指定到不同的计算节点去执行。

所述消息总线和消息分发中心层可动态扩充消息终端插件,如短信猫、电信和移动网关、微信、app、邮件、电话等。消息分发中心支持用户自定义消息订阅,用户可以根据报警业务类型、业务规则、组织机构或特定指标测点订阅自己感兴趣的报警。对于某些重要报警信息,如机组非停时,除了正常发送短信或微信消息外,可配置自动拨打电话方式以在第一时间及时通知生产管理人员和相关责任人,直到接通后不再拨打,接通后播放报警语音消息。

消息分发中心层提供消息容器,支持以热插拔的方式挂载各种消息终端插件发送报警消息,包括:

(1)短信消息终端插件。支持通过短信猫硬件设备和移动、电信网关接口发送短信消息。可以定义统一的设备/网关连接、短信发送和状态查询接口如下:

连接设备/网关(服务ip地址,端口号,用户名,密码,消息应用编码);

发送短信(发信人,收信人,标题文字,消息内容);

调用发送短信接口返回值信息如下:

{“短信发送成功”,“参数错误”,“api标识非法”,“消息内容太长”,“没有初始化或初始化失败”,“短信网关未连接”,“消息已发送、等待状态报告”,“余额不足”}

获取消息回执信息(消息标识);

刷新消息发送状态(消息标识,消息发送时间);

(2)微信消息终端插件。支持微信公众号、企业号消息推送。微信消息参数定义如下:

{“成员id列表(消息接收者)”,“部门id列表”,“标签id列表”,“消息类型”,“企业应用的id”,“消息内容”,“消息是否保密”}

(3)app消息终端插件。

消息分发中心可作为一个统一的消息推送中心,其他app应用的后台系统可以通过mqtt协议向app消息终端插件后台推送消息,由app消息终端插件后台系统负责通过可靠的推送通道将消息推送到移动终端上。app消息终端插件后台和第三方app应用之间的交互报文按照mqtt协议标准进行。该插件支持android、ios操作系统主流移动设备消息推送。

(4)邮件消息终端插件。可以定义统一的邮件网关连接和邮件发送接口如下:

连接邮件网关(邮件服务器ip地址,端口号,用户邮箱,用户名,密码);

发送邮件(发件人,收件人,邮件标题,邮件正文);

(5)电话消息终端插件。基于tts文本语音转换软件或sdk开发包将报警文字消息转换为语音文件,再通过多通道电话语音盒拨打用户电话。

消息分发中心服务器通过usb线与语音盒连接。电话外线连接语音盒的外线,电话线连接语音盒的内线。用计算机控制自动拨叫电话,将语音信息通过电话传达给相关人员的固话、移动电话。支持中国电信、中国网通、中国联通、中国铁通等电话线路。多通道电话语音盒每个通道采用一个单独电话呼叫队列,一个电话呼叫1分钟后自动挂断,并将该电话号码从呼叫队列中移除,转入呼叫下一电话。各通道采用电话少数优先的接入原则。

所述的报警展示分析层可在公司网站、值班室大屏幕和用户桌面客户端呈现不同的报警查询和分析场景,提供给生产管理人员进行事后分析,同时为设备预警提供决策依据。

在公司网站,报警信息可以按电厂、机组和起止时间段进行历史报警查询和统计。图形分析模块提供多维图表,支持钻取、切片、切块等多维数据挖掘操作,用户可以根据需要选择相应的维度图表进行数据挖掘。用户还可以针对单个组织机构进行以时间为序列的分析。支持时间窗的放大、移动。选择分析的类型,并且添加可能与其相关的子报警,然后所选择的报警就会出现在时序分析图上。通过查看时序图,从而分析目标报警发生的相关原因。同时,对于某些重要的报警可以为其定制日报、月报、年报,进行报表浏览和导出。

在用户桌面客户端,报警程序作为常驻内存客户端软件,随机器自动启动,全天候7*24小时运行,以托盘方式在右下角显示或以气泡球方式悬浮在桌面,用户双击托盘图标或气泡球可打开客户端。对于实时重要报警信息可以通过声光进行自动提示,同时消息在右下角闪烁。点击消息后跳到报警信息展示界面。

在值班室大屏幕上,可以看到清晰的报警日历,根据每天报警的频繁度在日历上会有不同的颜色显示。点击某条报警消息,可以查看与其相关的详细报警内容、测点历史数据趋势图、设备生产过程流程图、可视化报警业务流程。

实施例

本实施例包含以下步骤:

所述一种面向区域公司的报警消息中心系统的体系架构如图1所示。所述一种面向区域公司的报警消息中心系统的机组状态报警业务规则如图2所示。所述一种面向区域公司的报警消息中心系统的周期任务调度计算流程如图3所示。

1、分析业务数据源,创建数据服务中间件数据源驱动:

以图2机组状态报警业务为例。经分析,机组状态报警业务数据源来自基于物联网架构的实时数据库测点当前值、历史值和公司erp系统管理数据。在数据服务中间件配置管理界面中,创建实时数据库数据源和关系数据库数据源驱动,为规则报警计算提供数据。

2、基于业务流程使用规则设计器搭建报警规则:

发电机组状态分为运行、备用、检修、非停。当发电机组的状态有变化时,需要以短信、微信方式推送给生产管理人员。同时当机组发生非停时,还需要自动拨打生产值班室和相关责任人电话,接通后基于文字语音转换技术播报报警消息。

在规则设计器中使用数据库访问组件连接数据服务中间件,同时拖拽各种业务组件完成上述报警规则的搭建。

3、将规则发布至报警任务计算引擎进行计算:

报警规则搭建完毕后,发布至报警任务计算引擎服务器。计算引擎启动周期计算任务,获取实时数据库和关系数据库数据,执行业务逻辑,进行分布式调度计算,输出报警结果至消息总线。

4、消息处理与分发:

消息分发中心软件基于发布者-订阅者模式,监听消息总线中接收到的消息,按照用户自定义的个性化配置,将消息推送至用户终端。5、报警展示与分析:

产生的实时报警结果和历史报警信息可在公司网站、值班室大屏幕和用户桌面客户端进行不同场景的展示和分析,给生产管理人员提供事后分析手段,同时为设备预警提供决策依据。

以上所述的具体实施方式,仅是对本发明的技术方案和有益效果的详细说明。应当指出,对于本技术领域的技术人员来说,在不脱离本发明原理的前提下,还可以进行改进并在其他实施例中实施,但这些改进应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1