陈 杰
(1.中煤科工集团沈阳研究院有限公司,辽宁 抚顺 113122;2.煤矿安全技术国家重点实验室,辽宁 抚顺 113122)
在我国加快经济体制转轨的时代背景下,煤矿企业从传统的粗放型管理模式向集约型管理模式转变,必须以信息技术所带来的企业管理提升和创新为支撑力量,信息技术是煤矿行业可持续发展的重要技术保障之一。随着5G、云计算、大数据、人工智能等信息技术不断发展,进一步加速煤矿企业的信息化发展,在煤矿产业中的应用不断深入,煤矿信息化发展取得阶段性进展,受到各部门及各级领导的广泛关注,煤矿信息化、智能化是我国煤矿产业发展的必然趋势。
近几年,国家及各地方政府陆续制定了智慧矿山的建设规范,煤矿企业、厂商、科研院所也已经开始了煤矿智能化建设方面的试点,很多的煤矿企业都相继在智能化建设方面取得一些进展。总体来讲,从产业的角度看,煤矿企业在逐步推动矿井综合自动化与信息化管理以及推进数字化矿山建设进程。目前煤炭行业智能化水平与其他行业相比,仍相对较低,离真正的智慧矿山尚有距离。
为进一步落实国家《智慧矿山信息系统通用技术规范》、《煤炭工业智能化矿井设计标准》及中煤科工集团《智慧企业建设指导意见》和《智慧企业建设总体规划》,结合煤矿企业自身特点,建设一套智能化生产控制平台,智能化生产控制平台以互联网、物联网、工业互联网建设为基础,以大数据、人工智能为技术手段,具备“自分析、自管理、自趋优、自恢复、自学习、自提升”特征的智慧平台,为创建一流的智慧企业提供有力的支撑和保障[1-6]。
系统总体架构如图1。
图1 系统总体架构Fig.1 Overall system architecture
由于煤矿企业的各类安全生产相关子系统由不同厂家承建,智能化程度各不相同,因此管控一体化平台系统设计要考虑各子系统的接入方式、传输标准、协议规范等,并针对不同的子系统形成统一的接口标准,并考虑协议的转换、数据处理、指令下发方案。作为整个平台的边缘层,实现子系统的数据接入、协议解析与智能控制。
当然海量的各子系统工业数据的存储、分析、计算及智能控制,需要强大的基础设施作为支撑。即工业互联网中常说的IaaS 层,其中包括服务器资源、存储资源、网络资源等。同时采用超融合、虚拟化等技术对外提供基础设施服务,并可按需分配[7-8]。
同时为了保证智慧煤矿管控一体化平台系统各功能模块能够高效、稳定的对外提供服务,需建立统一的高并发、高可用的架构体系,包括采用容器化、分布式(存储、部署、计算等)、微服务、大数据等技术架构来搭建工业互联网PaaS 层。为系统运行提供开发环境、运行环境、大数据分析、数据中台、微服务等平台环境支持。
最终将设计、开发与煤矿企业用户直接交互的应用层功能模块,其中包括安全生产监控、灾害预警、统计分析、GIS 一张图、领导驾驶舱、智能控制、移动APP 等应用模块。
智慧煤矿管控一体化平台基于PaaS 层将开发出智能采掘、智能运输、智能通风、智能监控、智能诊断等智慧应用模块,实现生产的智能化调度、控制与管理。同时平台系统保持高度的开放性,可满足第三方专业应用模块的集成接入。同时,可根据后续业务应用的需要进行应用模块的扩展。
系统的边缘层侧重于设备的接入、协议转换及边缘数据处理。IaaS 层侧重于云基础设施,包括服务器、存储、网络、虚拟化等,本文不做过多阐述;PaaS层为平台层,主要包括微服务架构、微服务组件库、数据建模与分析、大数据系统、资源管理等,为应用层的设计与开发提供基础的架构和服务支撑;应用层则侧重于各业务逻辑系统的设计与开发,满足用户的各类监控、生产、分析等业务流程需求。
边缘层数据融合如图2。
图2 边缘层数据融合Fig.2 Edge layer data fusion
智慧煤矿管控一体化平台系统所需接入的子系统类型众多,包括采煤系统,掘进系统,机电系统,运输系统,通风系统,排水系统等,涉及到安全生产的方方面面。其中监测监控、人员定位、语音广播等安全监测类系统多采用FTP、WebAPI 等接口方式进行数据的采集、传输、处理。而大多数的自动化控制子系统软件平台均采用组态方式进行构建,支持OPC、Modbus 等数据通讯协议。该边缘层的设计主要包括数据的接入、数据的处理及智能控制3 部分。其主要核心是通过DCOM、TCP/IP 等技术对多源设备、异构系统、生产要素等信息进行实时高效采集。从系统的成熟度、稳定性等考虑,选用第三方SCADA 系统作为控制类子系统的开发、监视及控制平台,能够提供友好的用户交互界面设计及快捷的子系统数据接入,其中的数据采集器IOServer 支持上千种协议及设备,能快速实现数据的接入服务,对生产设备数据、或其他信息系统数据等多种来源的业务数据信息进行自动采集、处理、存储,保证数据的及时、准确和共享。
2.1.1 安全监测子系统系统数据接入
对于安全监测类子系统,包括煤矿安全监控系统、人员定位系统、语音广播系统等,此类系统一般在子系统层次上进行闭锁控制、系统间融合联动等,并有相应的行业标准。因此只需采集各系统的基础信息、实时数据、异常数据进行数据的接入。供管控一体化平台进行大数据分析、集中监测、实时预警。
在数据接入上采用通用的FTP 方式进行文件的传输,协议规范满足国家煤矿安全监察局文件煤安监办[2019]42 号文件关于感知数据接入细则的要求。在此,需要独立的数据引擎软件,对协议文件数据进行实时的读取、解析、处理,并最终存入关系型数据库、分布式文件系统等,进行海量数据存储。为实时监测显示、统计查询分析以及大数据分析提供数据来源。
2.1.2 自动化控制子系统数据接入
对于自动化子系统,包括抽放子系统、主扇监控子系统、电力监控子系统、排水子系统、立井提升子系统、压风子系统等。共同的特点是均采用组态的方式进行开发建设,能够以标准化协议规范对外提供数据,并对OPC、Modbus 等通用的协议标准提供支持。同时针对现场的实际需求,采用OPC UA 架构,来实现管控一体化平台与现场控制系统的连接,来实现数据交换;在数据接入上选用第三方成熟的SCADA 产品,并利用其提供的IOServer 数据采集器,以其高开放性和稳定性来实现各控制类子系统的数据采集、控制命令下发,最终实现给子系统的完美对接;获得实时数据可以通过SCADA 系统进行直接图形化展示,亦可存入数据库进行永久保存。本数据采集服务软件能有效解决矿山现场设备协议的差异性、子系统通讯接口的多样性,提供统一的数据采集工具,只需要进行简单的配置,便可接入1 个新的设备或子系统实时数据。同时数据采集服务软件可通过简单配置即可实现将数据转存到各种数据库中,如工业实时历史数据库、关系库等,无需用户考虑复杂的数据库存储逻辑,只需要在数据存储页面配置数据库信息即可完成。
2.1.3 边缘层数据的处理
通过FTP、UDP 等方式接入的原始数据一般会存在大量的数据冗余,数据格式不满足管控一体化平台应用的规范化要求,因此,需对数据进行数据预处理、数据缓存、数据持久化以及数据分析等处理。基于高性能计算、实时操作系统、边缘分析算法等技术支撑,对数据进行加工处理,从而提升操作响应灵敏度、消除网络堵塞,并与PaaS 平台数据分析形成协同。满足在实时业务、应用智能、安全与隐私保护等方面的基本需求。
2.1.4 智能控制数据的下发
由于OPC 采用Server/Client 架构,数据可以双向通讯,OPC Server 作为数据源即子系统数据对外接口,OPC Client 客户端即图2 中的IOServer 数据采集器,可通过连接各子系统的OPC Server 接口来获取数据,同时IOServer 客户端也可将指令数据写入OPC Server 服务器。因此,用户可以方便的通过图形界面,发送开、关等控制指令或者由程序根据智能控制策略进行自动控制指令的下发,并最终下发到PLC 等控制器设备实现设备的远程控制。
平台层的建设主要包括数据服务相关的数据存储、数据查询、数据建模等服务,涉及非关系型数据库、关系型数据库、数据仓库技术等。还包括用户服务、租户管理、授权管理、用户管理、资源管理、基础设施管理等基础资源管理服务。同时还包括计算服务、客户端展示服务、采集服务等。
2.2.1 通用PaaS 平台环境
管控一体化平台PaaS 层是整个系统的核心,起着承上启下的作用,任一环境、服务出现问题都有可能导致整个系统无法正常运行,所以从设计角度要满足运行环境、服务的高并发、高可用。
首先从开发环境、运行环境方面考虑,采用主流的Spring 系列JAVA 框架作为整个系统的主要后台开发环境,使用JDK、Tomcat、Nginx、Redis 等平台和中间件来搭建系统的运行环境。其中JDK、Tomcat用来作为应用服务器提供系统各类服务的运行环境,Nginx 是著名的反向代理工具,可以用来作为负载均衡服务器,实现多台应用服务器的分布式部署,并具备缓存功能,可实现静态页面的缓存,有利于提升整个系统的访问性能。这里需要注意的一点就是在应用服务的程序设计上要考虑状态无关性,访问者的状态数据要进行统一的存储和管理。同时使用Docker 技术来实现应用服务的容器化部署,实现了应用服务程序的依赖隔离,快速部署与启动。
2.2.2 大数据分析平台
大数据分析平台作为整个系统数据计算的核心,是整个系统的大脑。首先要对边缘层采集上来的数据进行ETL 处理,将各业务子系统的数据经过抽取、清洗转换之后加载到数据仓库中,目的是将子系统中的分散、零乱、标准不统一的数据整合到一起,为下一步的大数据分析做准备。此处,可选择Hive 等数据仓库工具来实现各子系统数据的结构化处理[9-11]。
其次要应用大数据的开发建设工具Hadoop 来实现,该工具的核心是分布式计算与分布式数据存储。能够很好的解决管控一体化平台数据量大、安全性要求高的问题。通过它的分布式文件系统能够很好地实现数据文件的冗余备份、海量存储及并发数据的读取。此外,管控一体化平台系统需进行大量的预测预警及智能控制响应,如瓦斯灾害预警、火灾预警等,需对采集上来的各子系统清洗后的数据通过一定的算法模型进行大数据分析,当达到预警条件时,发出预警信息,并根据智能控制配置规则进行相应的智能控制,通过系统边缘层进行控制指令的下发。并根据预警结果不断优化算法模型,来提高系统预判的准确性。决策驱动整个系统稳定、有序运行[12-14]。
2.2.3 数据中台
管控一体化平台数据中台,首先需建立统一的数据标准规范,并对服务器资源集中虚拟化部署,形成一个统一的矿山数据中心,进行统一数据存储管理。 数据中台后台数据库由自定义业务关系数据库、工业实时历史数据库、非关系型数据库3 部分构成。
1)自定义业务关系数据库。该数据库,主要是针对管控一体化平台各子系统具体业务逻辑,以及子系统之间的业务关系而设计,根据各子系统相关对象属性信息抽象出关系型数据库中对应的数据表,同时也是为了便于业务数据的管理,提高数据检索速度,并增强数据安全性。数据库将采用通用关系型数据库的设计方案,如Mysql、SqlServer 等。
2)工业实时历史数据库。主要针对自动化控制类系统,工业实时历史数据库能够实时存储生产过程数据。实时历史数据主要包括煤矿井上、井下所有自动化监控监测系统的数据,包括但不限于综采系统、主运系统、供排水系统、通风系统等生产及生产辅助自动化系统中的工作指示(如电流、电压等)及报警信号等。 将数据采集软件中实时采集的数据进行存储,数据结构主要包含参数名称、时间戳、质量戳。由于设备监测点的数量比较多,采集参数多数是秒级的采集与存储,并发数据量较大,随着存储量的增大,为保障数据的访问速度及吞吐量,需进行高效的数据压缩。工业实时历史数据库能够实现对大量过程数据的采集、存储、管理、检索和统计分析,并提供开放的数据访问和开发接口支持。实时数据库系统既作为监控软件的核心部分,也可以被独立应用以作为企业信息集成的基本平台,用户可选用其他客户端工具连接或自行开发以满足其特殊需求。提供构建于实时数据库系统之上的应用工具软件集,为用户提供功能强大的可视化工具集,包括管理工具、SQL 查询工具、开发工具包(SDK 和OLE DB Provider、OLE Automation)、报表工具、统计分析工具等,提供各类标准的接口,实现与其他应用程序的数据交换。
3)非关系型数据库。对于煤矿不同业务单元的数据内容,如:地形地貌数据、地质勘探数据、储量评价数据、地质模型数据、工业实时数据和历史数据、生产技术数据、安全信息数据、生产计划数据、生产经营数据、设备物资数据、人力资源数据、企业运营数据等。基于数据表现形式,在本平台上数据分类按照基础数据、业务数据、业务分析数据、视频数据、文档数据等5 类。其中的文档类数据为非关系型的数据类型,以及需要数据缓存来满足实时性、高并发访问性能要求的各类数据,将采用MongoDB、Redis 等非关系型数据库来实现数据的存储,数据的高效访问等操作。同时它的数据缓存功能可以很好的起到数据缓冲的作用,避免数据造成堵塞、堆积。也可用来提取缓存热点数据,提供终端用户的访问体验。
2.2.4 统一开发平台
管控一体化平台的基础资源数据是矿山企业内部相对比较稳定,变化缓慢的静态数据,比如人员、组织机构、设备、物资等数据。根据煤矿企业业务特点进行分析,本系统主要是针对人的管理、机电设备管理、安全管理和生产管理等业务领域的基础数据进行规划设计与维护管理。系统可自动同步相关业务数据,无需人工干预,即可实现各业务应用系统中基础数据的同步更新。同时开发建设基础数据维护管理模块,用户可在本平台系统中录入、修改基础数据信息,形成管控一体化平台主数据系统,统一管理、统一维护又服务于各子系统。
作为一个管控一体化平,由于子系统众多,系统的登录验证服务应做到统一规划、建设,每个子系统的访问认证应该统一处理,这就有必要开发建设统一的单点登录服务,为整个管控一体化平台提供登录验证服务,保障整个平台的安全性,一次登录,可访问平台下的不同业务子系统。同时在应用服务器分布式部署上也可以集中存储用户状态,实现负载均衡的状态无关性,避免了不同应用服务器之间的状态同步。
为此,重点将主数据系统和单点登录系统作为统一的开发平台而设计,为业务应用功能模块的开发提供统一的数据及认证服务。业务应用层开发人员可不用考虑该平台的具体实现细节,只需了解访问接口的使用规范即可。实现了业务解耦与协同开发作业。
2.2.5 微服务系统平台
业务微服务架构如图3。
图3 业务微服务架构Fig.3 Business microservice architecture
通过主流的微服务技术和工具Springboot、Springcloud 等来构建本系统的微服务架构[15-16]。来承载本系统的大部分业务逻辑对外提供服务需求,各业务逻辑系统微服务之间基于松耦合设计,同时微服务之间采用轻量级的基于HTTP 的RESTful API通信机制互相沟通,互相配合。每个微服务都围绕着具体系统业务逻辑进行构建,并进行独立的、分布式部署,实现生产环境服务的高可用。
微服务本身由有众多中间件构成,其中包括API 网关、注册中心、接入服务/认证、配置中心、监控中心、日志中心等,这些中间件将协同作业,互相配合,方能提供各业务逻辑对外提供服务的窗口。涉及技术众多、结构配置复杂。本文将不做深入探讨,起到一个抛砖引玉的作用。
稳固的基石决定了强大的、开放的上层建筑,有了边缘层、PaaS 平台层稳固的、可扩展的、高可用的、智慧的架构体系设计,使应用层建设,构建矿山智能应用变得简单、高效。
首先管控一体化平台的应用层设计原则应考虑数据的融合展示、集中管控。其次展示方式上应具备数据、图形、二三维等多种表现形式。如GIS 一张图、领导驾驶舱、数据大屏,能够根据不用用户、不同使用场景进行定制设计,满足煤矿企业安全生产一体化监管要求。
关于智能控制,从各自动化控制子系统的节能减排、提质增效、助力安全生产等角度考虑,从智能监测、智能采掘、智能运输、智能通风、智能监控、智能诊断、智能报警、信息融合与联动控制等具体功能出发,实现全矿区智能控制,提升设备性能、降低设备寿命损耗、经济环保、保障安全等多个目标,逐步减少各个生产现场的作业人员,达到减人增效的根本要求。
本系统应用层平台建设将采用C/S 结合B/S 的软件架构,前台使用VUE、H5、JS、CSS、Echarts 等技术及框架。后台采用JAVA、NodeJS、Spring 开发建设,还包括其他智能报表组件、工艺流程图、3D 组件、视频组件、GIS 组件、UI 组件等,共同构建满足安全生产控制要求的可视化应用。
其次,由于智能手机的普遍应用,移动APP 也成为了各类应用所必备的一种形式。管控一体化平台也应具备移动APP 监测功能。首先由于智能手机操作系统主要集中为Android 和苹果的IOS 系统,2个平台2 种开发环境和运行环境,如果针对2 个平台进行开发,无疑将会浪费人力、时间成本,重复的工作相当于做两遍,通过技术调研、可行性分析,当下混合式移动开发模式已成为了主流,一次开发可以实现不同平台的编译、运行,实现了跨平台运行。通过框架选型,IONIC4 以其快速开发可伸缩应用程序的优势,以及对Angular、组件化编程的强大支持,成为了本次APP 应用开发的首选。
通过对智慧煤矿管控一体化平台系统的研究,捋顺了管控一体化平台的整体构建思路、系统的层级关系及重点建设内容。通过整体的架构设计、边缘层设计、IaaS 层设计、PaaS 层设计、应用层设计,实现了数据的集成、纵向贯通、大数据汇聚与分析。并通过微服务架构实现了服务的高可用、可扩展,为整个管控一体化平台的运行提供服务支撑。结合煤矿的实际应用,设计了基于数据、图形、GIS、三维、组态等多种表现形式的终端应用,为用户提供基于安全监管、智能控制于一体的智能化平台,为煤矿企业的安全生产保驾护航。并在煤矿现场得到了实际应用,在保障安全生产、减人增效方面效果显著。