煤炭市场竞争日趋激烈,煤炭产品的价格直接与其质量挂钩。煤炭产品质量与资源特性、地质构造等自然条件相关,但煤炭产品质量的稳定性、煤炭的品种结构与企业煤质管理水平相关[1-3]。煤炭生产链包括巷道掘进、工作面布置、原煤开采、洗选加工、质检审核、商品出售等环节。煤质管理贯穿整个煤炭生产链,管理过程中形成了庞大而繁杂的煤质数据[4]。目前,国家能源集团神东煤炭集团有限责任公司的煤质管理按照不同职能部门的具体业务来设计,缺少对企业内部各部门之间业务流程控制的功能,不能满足企业对煤质全过程的管控要求。具体存在以下问题:① 各生产环节的管理系统是依据业务需求独立建设的,信息比较零散,没有统一的数据字典,导致系统之间数据不统一,数据交换缺乏标准,数据得不到充分共享[5-6]。② 煤质预测大部分是基于人工经验,效率低。③ 煤质检查与考核采用人工方式,耗费人力。针对上述问题,本文在分析煤质管理业务的基础上,设计了煤质全过程管理系统,可实现对各生产环节煤质信息的统一管理,使得煤质数据得到极大共享,提高煤质管理水平。
(1) 生产矿井业务。生产矿井主要工作包括采煤工作面准备及原煤生产。采煤工作面准备过程中,在回风巷、运输巷、切眼进行采样,对煤样采制化过程中产生的数据进行分类汇总,形成图形、报表(如掘进生产日/月/旬报表、工作面采样分布图、巷道平面布置图、煤层结构素描图等)。在原煤生产过程中进行采样、制样、化验,对原始数据进行分析、整理、统计、分类,产生原煤质量、块煤率、矸石量、含矸率等数据表,进而生成回采生产日/月/旬报表、原煤报表、原煤化验单等。同时煤质管理人员每天下井对采煤工作面、生产过程进行检查,检查结果形成回采工作面素描图、检查记录单等,进而依据奖罚政策形成奖罚月/季/年报表。
(2) 选煤厂业务。选煤厂负责对生产矿井开采的原煤进行洗选加工,确保洗选中间产品和最终商品煤质量指标达到最佳状态,最大限度起到稳定和提高煤质的作用。洗选过程中产生的数据包括入选原煤筛分试验数据、快浮试验数据、矸石浮沉试验数据、商品煤煤质检测数据等,数据整理后得到煤质数据统计报表、月综合试验报告、筛分试验报告单等。
(3) 煤炭经销中心业务。煤炭经销中心负责原煤、商品煤和外购煤的煤质检测、煤质管理和销售工作。对原煤进行检测,得到煤质(灰分、水分、硫分、发热量)数据报表,对商品煤进行采样、制样、化验,形成商品煤煤质数据日/月/旬报表等。对于外购煤收集煤质数据,形成外购煤煤质数据报表。
(4) 煤质预测预报。煤质预测预报是实现煤炭资源合理配采的依据,在开采前准确预测煤层煤质分布情况,制定合理的开采计划,实行精细化采掘。在煤质管理中根据采煤工作面准备过程中采集的工作面要素和煤层煤样、原煤生产过程产生的数据对工作面进行预测,得到工作面煤层结构三维立体图、煤质预测预报报表、计划推进距离;综合各工作面煤质预测结果得到原煤煤质预测结果,在此基础上依据回归公式得到商品煤煤质核心指标预测结果,综合预测结果形成生产计划[7-8]。
应用jBPM(Java Business Process Management,业务流程管理)工作流技术[9-10],煤质全过程管理系统工作流控制如图1所示。流程定义是指设定煤质信息审核、传递流程(包括设定流转路径、流程节点的审批人员等);流程部署是将流程定义和流程相关资源信息存储到数据库中;工作列表管理为流程操作者提供查看任务功能;表单管理将煤质业务表单与工作流引擎挂接,使煤质业务表单能够按照工作流定义的流转路径进行传递;流程监控用于监管当前运行流程的状态及其历史轨迹,图形化显示流程实例的运行情况。
图1 煤质全过程管理系统工作流控制
Fig.1 Workflow control of coal quality whole process
management system
为了实现煤质管理业务按照流程定义的规则流转的同时,方便查看流程实例的状态和控制审批人员对煤质数据的访问,在煤质业务表单中添加状态控制字段V_state来表示数据、图表的审核状态:V_state为0,表示未审核;V_state为1,表示已审核;V_state为1*,表示不同级别人员审核(如11表示煤质技术员审核,12表示职能部门领导审核)。
煤质全过程管理系统功能如图2所示。
图2 煤质全过程管理系统功能
Fig.2 Function of coal quality whole process management system
(1) 煤质数据录入。将生产矿井、选煤厂、煤炭经销中心采集的煤质数据(如原煤煤样、生产煤样、地质资料、入选原煤筛分试验数据、煤质检测数据、日常煤质检查记录等)通过Web平台录入数据库中。若数据存储在Excel中,可通过Java POI技术导入数据。
(2) 数据分析与统计。使用数据库级联操作从煤质数据中按需提取数据,按照具体业务需求,形成相应的图表。
(3) 图形处理。从数据库中获取工作面信息、煤层煤样信息,运用WebGL三维引擎下的Three.js技术,得到工作面采样分布图、煤层结构素描图、工作面素描图、工作面煤层结构三维立体图。
(4) 煤质信息检索。用户可按照单位、时间等查询条件对原煤、商品煤、外购煤的煤质信息进行检索。
(5) 煤质预测与计划。利用采煤工作面准备过程中采集的煤样数据和原煤生产过程中的采样、化验数据,使用克里金算法和经验公式构建煤质指标估算模型,运用该模型得到工作面煤质和原煤煤质预测结果;根据商品煤参数和特殊煤种信息,预测商品煤煤质。参考煤质预测结果得到原煤计划和商品煤计划。
(6) 煤质考核。依据日常煤质检查记录,读取各单位罚款、扣分情况及其原因,在煤质计划中读取发热量计划并和实际发热量进行对比,生成煤质评分报表和现场问题汇总报表,依据报表对生产矿井、选煤厂、煤炭经销中心、煤质管理小组进行考核。
(7) 报表输出。利用Vue搭配Element UI框架实现报表输出。
为保证煤质数据流转的有效性、安全性,防止“非法用户”入侵系统或“合法用户”不慎操作造成系统数据损失[11-12],设计了基于树形功能模块的RBAC(Role-Based Access Control,基于角色的访问控制)权限控制模型。
煤质管理涉及部门众多,需要针对各部门不同人员分别配置权限,权限配置过程较繁琐。为简化对不同部门用户的权限配置,划分不同功能模块,主要包括基础信息模块、煤质预测与计划模块、煤质检查与考核模块、选煤厂管理模块、图表管理模块等。为更好地体现功能之间的从属关系,采用树形结构存储功能列表,该存储方式便于结合RBAC模型进行权限配置。
以基础信息模块为例,其树形结构如图3所示。基础信息模块为父结点,工作面信息为其子结点,同时工作面信息为掘进工作面信息的父结点,同一层的掘进工作面信息和回采工作面信息为兄弟结点。通过数据库在存储功能列表时添加表示功能之间父子关系的字段,系统获取功能列表时先找到父结点,然后查找父结点的所有子结点,逐层递归获取存储信息,最后生成树形功能模块。
图3 基础信息模块树形结构
Fig.3 Tree structure of basic information module
权限配置过程:首先针对部门建立用户,然后为用户进行角色指派,再根据用户的角色为其配置功能,最后通过激活角色获得系统权限。
权限配置采用过滤方式,部门的权限是对整个树形功能模块进行操作,部门下的不同角色、同一角色的不同用户按照实际业务需求过滤树形功能模块中无权操作的功能分枝,得到相应的权限。将权限进行细粒度划分,包括功能、按钮和规则。当用户登录系统时,系统按照权限配置情况将对用户授权的功能呈现给登录用户。
(1) 前后端分离开发模式。煤质全过程管理涉及的数据庞大且存在复用问题,为避免代码重构、提升系统性能,采用前后端分离开发模式。该模式实现高内聚低耦合,减少后端服务器的并发/负载压力,可使后台更好地追求高并发、高可用、高性能,使前端更好地追求页面表现、速度流畅、兼容性、用户体验。① 前端使用Vue技术,其采用Model-View-ViewModel(模型-视图-视图模型,MVVM)模式进行数据绑定。Vue的核心库只关注视图层,方便与第三方库或既有项目整合。传统的前端采用Model-View-Controller(模型-视图-控制器,MVC)模式,即用户操作会请求服务器路由,路由调用对应的控制器处理,将获取的数据返回前台进行渲染。MVVM模式则是将数据绑定到ViewModel层,自动将数据渲染到页面上,视图变化会通知ViewModel层更新数据[13]。② 后端使用Spring Boot框架,该框架不仅继承了Spring框架原有的优秀特性,还通过使用特定方式来进行自动配置,从而使开发人员不再需要定义样板化的配置,简化新Spring应用的初始搭建及开发过程[13-15]。
(2) Three.js技术。三维可视化使用Three.js技术,其对WebGL提供的接口进行二次封装,用于构建无插件、可移植、跨平台、支持多浏览器运行的三维可视化模型。在使用Three.js绘制三维立体图时,要先定义场景,用来存放所创建对象的容器,如灯光、物体。然后创建相机,确定显示场景的范围和角度。最后创建渲染器,将场景和相机添加到渲染器中,映射到二维平面。
(3) 安全访问控制。用户访问控制使用Spring Security安全策略。Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架,主要功能是认证、授权、攻击防护。Spring Boot针对Spring Security提供了自动化配置方案,可以零配置使用Spring Security[16]。
(4) 数据存储。数据存储使用MySQL数据库,具有以下优势:该数据库是开源软件,可降低使用成本;体积小,命令执行速度快;数据存储量大,可满足煤矿企业大型数据存储需要[17]。
煤质全过程管理系统利用工作流技术使煤质信息在企业内部充分共享;通过基于树形功能模块的RBAC权限控制模型使煤质数据安全、有效地在各部门之间流转。该系统实现了煤质相关数据的录入、分析、整理、统计,形成了相应的煤质报表/图形、煤质预测计划等,有利于各级管理部门对煤质信息的实时监控,保证了煤质信息流通的及时性、真实性和安全性。
[1] 毛善君,崔建军,王世斌,等.煤矿智能开采信息共享管理平台构建研究[J].煤炭学报,2020,45(6):1937-1948.
MAO Shanjun,CUI Jianjun,WANG Shibin,et al.Construction of information sharing platform of mine safe production for intelligent mining[J].Journal of China Coal Society,2020,45(6):1937-1948.
[2] 孙喜民.煤炭工业高质量发展方略研究与实践[J].煤炭工程,2019,51(1):152-156.
SUN Ximin.Research and practice on high quality development strategy of coal industry[J].Coal Engineering,2019,51(1):152-156.
[3] 翟桂武,潘涛.煤矿智能生产管理系统的研究与实践[J].煤炭学报,2014,39(8):1530-1538.
ZHAI Guiwu,PAN Tao.Research and application of coal mine intelligent production management system[J].Journal of China Coal Society,2014,39(8):1530-1538.
[4] 张小艳,蔡攀亮.大型煤炭企业运销信息化框架研究[J].工矿自动化,2014,40(4):93-95.
ZHANG Xiaoyan,CAI Panliang.Research of informatization framework of transportation and sale for large coal enterprise[J].Industry and Mine Automation,2014,40(4):93-95.
[5] 毛善君,杨乃时,高彦清,等.煤矿分布式协同“一张图”系统的设计和关键技术[J].煤炭学报,2018,43(1):280-286.
MAO Shanjun,YANG Naishi,GAO Yanqing,et al.Design and key technology research of coal mine distributed cooperative "one map" system[J].Journal of China Coal Society,2018,43(1):280-286.
[6] 谭章禄,李睿哲.煤炭企业管理信息化系统建设研究[J].煤炭技术,2016,35(12):319-320.
TAN Zhanglu,LI Ruizhe.Research on management information system of coal enterprise[J].Coal Technology,2016,35(12):319-320.
[7] 张小艳,杨鑫磊.基于自适应差分克里金的煤质指标估算[J].地质与勘探,2020,56(1):209-216.
ZHANG Xiaoyan,YANG Xinlei.Estimation of coal quality index based on adaptive differential Kriging inperpolation[J].Geology and Exploration,2020,56(1):209-216.
[8] 谭鹏,李鑫,张小培,等.基于工业分析的煤质发热量预测[J].煤炭学报,2015,40(11):2641-2646.
TAN Peng,LI Xin,ZHANG Xiaopei,et al.Prediction of coal heating value based on proximate analysis[J].Journal of China Coal Society,2015,40(11):2641-2646.
[9] 张玉娜.工作流技术在煤质管理中的应用研究[D].西安:西安科技大学,2012.
ZHANG Yuna.Research on application of workflow technology in coal quality management[D].Xi'an: Xi'an University of Science and Technology,2012.
[10] 熊天虹,余阳,娄定俊.工作流系统中的PRBAC访问控制模型研究[J].应用科学学报,2020,38(5):672-681.
XIONG Tianhong,YU Yang,LOU Dingjun.Research on PRBAC access control model in workflow system[J].Journal of Applied Sciences,2020,38(5):672-681.
[11] 张小艳,杨阳.访问控制模型在煤质管理信息系统中的应用[J].煤炭工程,2014,46(3):137-139.
ZHANG Xiaoyan,YANG Yang.Application of access control model in coal quality management information system[J].Coal Engineering,2014,46(3):137-139.
[12] 陈运启,许金.基于元数据与角色的煤矿综合信息管理系统权限控制模型设计与实现[J].工矿自动化,2014,40(11):22-25.
CHEN Yunqi,XU Jin.Design of an access control model based on meta-data and role for integrated information management system of coal mine and its implementation[J].Industry and Mine Automation,2014,40(11):22-25.
[13] 肖文娟,王加胜.基于Vue和Spring Boot的校园记录管理Web App的设计与实现[J].计算机应用与软件,2020,37(4):25-30.
XIAO Wenjuan,WANG Jiasheng.Design and implementation of campus records management Web App based on Vue and Spring Boot[J].Computer Applications and Software,2020,37(4):25-30.
[14] BUCEA-MANEA-TONIS R,BUCEA-MANEA-TONIS R.How to design a Web survey using Spring Boot with MySQL:a Romanian network case study[J].Annals of Spiru Haret University Economic Series,2017,17(2):63-72.
[15] 马梓昂,贾克斌.基于Web的高性能智能快递柜管理系统[J].计算机应用与软件,2020,37(4):1-5.
MA Ziang,JIA Kebin.High performance intelligent express cabinet management system based on Web[J].Computer Applications and Software,2020,37(4):1-5.
[16] 梁云娟.使用Spring Security开发安全的Java程序[J].河南师范大学学报(自然科学版),2012,40(4):148-150.
LIANG Yunjuan.Develop secure Java program with application of Spring Security[J].Journal of Henan Normal University(Natural Science Edition),2012,40(4):148-150.
[17] 徐梓荐,叶盛,张孝.分布式异构数据库数据同步工具[J].软件学报,2019,30(3):684-699.
XU Zijian,YE Sheng,ZHANG Xiao.Data synchronization tool for distributed heterogeneous databases[J].Journal of Software,2019,30(3):684-699.
JIANG Shuijun,HU Min.Coal quality whole process management system design[J].Industry and Mine Automation,2021,47(4):116-120.