★ 科技引领 ★
当前,5G、机器学习、大数据等新一代信息通信技术在传统工业领域的智能化建设还处于初步发展阶段[1]。工业互联网作为工业与互联网融合的产物,是数字浪潮下新一轮工业技术革命的支撑,同样也是第4次工业革命的“压舱石”。伴随煤炭产业智能化和信息化两化融合发展,工业互联网成为煤炭产业高质量发展的重要因素。党中央、国务院高度重视工业互联网的发展,习近平总书记在党的二十大报告中提出要推进新型工业化[2]。《“十四五”信息化和工业化尝试融合发展规划》中明确要求加快工业互联网的建设,要求在2025年工业互联网平台普及率达到45%[3]。因此,发展煤炭工业互联网是持续推进传统工业可持续发展的必然选择[4]。笔者基于微服务框架,结合当前工业互联网平台的特点,提出了一种基于微服务框架的煤炭工业互联网平台,以解决当前煤炭产业智能化转型中出现的体系框架杂乱、“数据孤岛”严重等问题。
工业互联网是由人、机、物、系统的全面互通互联,构建起能够覆盖全产业链、要素以及价值链的新型制造体系[5]。工业互联网的框架体系并不是互联网在工业上的简单应用,而是将网络作为基础,安全作为保障,结合以云计算为架构的中枢平台,以数据为要素,贯穿工业中企业端、边、云等各层级的框架体系[6]。
煤炭产业发展工业互联网,关键是依靠井下的各类设备传感器和先进的数据采集技术对产业内不同环节不断进行实时感知和数据收集[7],借助机器学习、数据分析等技术达到对各个环节的优化和控制,最终实现提质增效,形成煤炭产业的新生态[8-9]。由此可见,工业互联网的核心是数据应用,数据在整个互联网平台中是通过 “采集、储存、分析、处理”这一过程的应用[10]。
工业互联网平台是面向工业数字化、网络化、智能化需求,构建基于海量数据采集、汇聚、分析的服务体系,支撑制造资源泛在连接、弹性供给、高效配置的工业云平台。工业互联网平台技术架构自下而上可分为边缘层、基础设施层、平台服务层、应用服务层4个部分。工业互联网平台架构如图1所示。
图1 工业互联网平台架构
(1)边缘层。该层采集来自一线的各类数据,并且拥有一定的云计算能力来满足部分实时数据分析需求,以便优化边缘端的业务响应速度,同时缓解上层的传输、计算等压力。
(2)基础设施层。该层提供与处理数据的相关计算资源、网络资源、硬件资源以及存储资源。该层将从边缘层采集的数据经过筛选、转制、梳理、清洗等一系列操作后,通过分布式存储方法将数据存储在私有化云平台中。
(3)平台服务层。该层是将服务器作为平台的一种框架模式,其中汇聚了软件开发、算法工具以及数据处理等多项服务,是工业互联网平台价值挖掘的重要核心。
(4)应用服务层。该层是与工业各环节结合后成型的软件与服务等,再以模块化组件形式满足各类工业互联网的应用场景。
新一代计算机与通信技术与煤炭产业进行融合,使煤炭产业初步具备发展工业互联网的基础[11]。在现有的煤炭工业互联网平台上,通过将数据简单地汇聚、储存以及筛选,将煤矿从以往的人工机械化作业、文本形式的数据填报收集逐步转变为数字化、自动化的采集应用,一定程度上推动了煤炭产业的技术革新[12]。然而,煤炭产业的工业互联网发展由于其复杂的井下生产环境以及庞大的生态体系,目前尚存在以下问题。
(1)“烟囱林立”,数据集成难。煤矿管理经营信息化程度相较于其他先进行业相对较低[13],现有的数据集成方案大多通过地面大数据中心进行数据汇总,是一种“数据上传”式的集成,因此,长期以来煤矿大数据中心会形成大量的多源异构数据,同时与不同标准制式下的工业以太网共存,并且无法兼容多种联接。此外,缺乏数据统一集成的一体化和协同管理平台[14]。煤矿现有数据集成方式如图2所示。
图2 煤矿现有数据集成方式
(2)“数据孤岛”现象严重。煤矿的生产、经营、安全监控等子系统相互孤立,数据共享不通畅[15],无法基于数据分析进行业务协同。
(3)多数煤矿的子系统属于定制化开发,可复用性不强,维护难度大。由于每个煤矿的基础以及智能化程度不同,因此进行的定制化子系统开发消耗了技术人员大量的时间与精力。当子系统需要转移到另一个应用或者用在其他煤矿时,由于其定制化特点,没有共通性。此外,现有的以定制开发为主的集成式信息化方式会造成子系统之间结构错综复杂且耦合性强,一旦其中一个节点发生异常或者软件版本更新升级,会产生连锁式故障,加大了升级与修复的工作难度[16]。
(4)煤矿软、硬件资源缺乏统一调度和管理。目前,每增加1个智能化应用,井下就需要增加1台服务器来进行硬件支撑,从而增加了井下供电、网络传输等负担;同时,每个应用开发后需要实地部署与测试,期间需要暂停井下作业,会对煤矿的生产进度造成一定程度的影响。
微服务架构是一种面向服务的软件架构,其通过将一个整体、复杂的应用拆分为一系列小型、松散耦合的服务,通过自动化部署独立运行在自己的进程中,其中每个服务独立于其他服务,并使用轻量级的通信机制进行通信。这种松耦合的通信方式使得服务可以在不干扰其他服务的情况下开发、更新、维护和扩展,不会对整个系统产生影响,因此更容易实现快速迭代和敏捷开发[17]。微服务应用架构如图3所示。
图3 微服务应用架构
在单体式架构中,所有服务在多个开发人员共享的唯一存储库上开发,当添加或更改新功能时,必须确保所有其他服务继续以其工作方式工作。当每次有服务更新并部署到生产环境中时,必须编译并重新启动所有服务,这个过程给用户及现场工程人员带来不便。当软件中的部分服务发生错误时,整个服务集都可能无法正常使用[18]。微服务架构是以服务为中心的架构,相比于单体式架构有以下特点[19]。
(1)松耦合性。服务之间由轻量级接口进行通信,拥有自己的数据库以及开发环境,这使得每一个服务都是独立、自治的,相互之间没有强依赖关系,便于独立部署、独立扩展、独立维护。
(2)微小性。微服务架构的颗粒度很小,每一个微服务只关注一项功能或者一项业务,这种微小性更加易于开发、测试与管理。
(3)复用性强。微服务架构使用容器封装技术,可以重复、轻易部署在私有云上。
(4)稳定性强。由于每个微服务相互独立的特点,即使某个微服务发生故障,也不会影响整个系统的稳定性。
综上分析,微服务架构在很大程度上优化了工业互联网平台的开发、部署以及维护等流程,因此,微服务架构更加符合当前煤炭产业两化融合的发展新趋势。
根据工业互联网平台设计框架,结合煤炭产业的自身特点与智能化需求,设计的煤炭工业互联网平台架构如图4所示。
图4 煤炭工业互联网平台架构
(1)边缘感知层。该层负责采集煤矿数据并将数据进行边缘计算处理。将综采工作面、掘进工作面等生产系统的数据,供电、通风、排水等环境系统的数据,人员定位、安全监控等安全系统的数据通过物联网技术和相应感知设备进行采集与预处理,边缘计算将采集上来的与煤矿生产、安全相关的数据进行处理与计算,并做出有实时控制需求的分析反馈。
(2)基础设施层。该层负责提供整个煤炭互联网平台以及各子系统所需要的资源,提供将边缘层采集到的一线生产数据存储,并为边缘端的控制计算提供算力,为上层平台的搭建提供各类基础资源等。
(3)平台服务层。该层将来自基础设施层的各类数据进行筛选、汇总、分类和储存,并利用该层的数据处理与计算能力,将采掘、运输、选煤、销售、安全等数据根据各环节的行业模式和运行流程建立多个煤炭产业微服务组件,为上层应用提供数据和技术支持。例如通过对采掘数据进行处理建立生产模型组件,通过处理井下人员穿戴设备信息数据建立人员定位模型组件,通过处理井下巷道、掘进等工作面中各类气体传感器的数据建立安全监控模型组件。该层通过将煤炭产、运、销不同环节的数据汇聚储存,打破煤炭产业中的信息孤岛和数据壁垒,形成总体的数据存储库以及产业数据模型,推动煤矿智能化转型。
(4)应用交互层。该层基于平台服务层的数据积累以及所形成的多种微服务组件,根据煤矿特殊的工业生产、运输和销售环境,构建相关应用与服务组件以满足煤炭产业的应用场景。例如根据人员定位数据库模型所形成的人员定位系统,根据井下环境以及设备数据库模型所形成的安全监控系统以及危险报警系统,根据生产数据模型和产量分析预测模型所形成的销售系统等模块化组件应用。
根据煤炭工业互联网平台架构,针对在不同层级中微服务的构建应用有以下几点关键技术设计。
(1)时序数据库设计。从生产端和设备端采集到的数据统一由上层系统存储并生成所有数据,这些数据分为微服务组件数据和边缘函数组件数据。微服务组件数据进一步分为传感器数据、控制操作数据和警报数据3组,这些数据均为时序性数据,可采用数据压缩更好、查询响应速度更快的时序数据库。边缘函数组件数据包含执行边缘计算功能所需的辅助数据。
(2)通信代理组件设计。通信代理组件是煤炭工业互联网平台的数据入口,此组件是IT(Information Technology)与OT(Operation Technology)系统结合时的承上启下的关键点之一,允许使用多个协议连接不同的系统设备,井下现存的各类通信系统、SCADA软件中均可以看到类似的组件。煤炭工业互联网平台在设计时,上行以消息队列协议为主,使得数据可以有序上传并且可以轻松地将数据接口分离与合并,确保了数据传递的可靠性、灵活性和扩展性。特别是满足数据的“一对多”分发以及“发布-订阅”式实时通信要求,常见的消息队列协议包括消息队列遥测传输协议(MQTT)、高级消息队列协议(AMQP)和简单(或流式)面向文本的消息协议(STOMP)等;下行时可支持Modbus、OPC等OT协议,与接入的设备之间建立一个双向的链接,不仅可以从边缘设备接收数据,也可以向边缘设备发送控制数据。
(3)微服务组件设计。微服务组件将软件中的公共模块以服务的形式统一起来,为软件开发及部署提供便捷性。包括数据的接收、数据的查询、报警信息的存储与传递以及常用的历史数据统计算法等煤矿互联网软件公共模块,以微服务的形式提供给应用层软件使用,使软件开发团队不需要再耗费时间在硬件资源的管理、数据库的安装等重复性工作。同时,平台也提供开放式的微服务组件管理工具,可以根据具体的要求而新增服务内容。
(4)应用通信接口组件设计。应用通信接口组件(APIs)可以视作是微服务组件的一种封装,应用软件开发人员可以通过API的形式调用下层的微服务组件,这种符合IT人员开发习惯的方式为软件开发提供了便利。
(5)容器化服务设计。由于软件应用功能及形式的多种多样,应用交互层提供的容器化服务技术使得开发人员不需要再为了一个算法的应用而经历一个完整软件开发步骤的过程,不再需要关心计算机资源分配等,仅需要编写高质量的算法代码,其他可以通过调用平台提供的微服务组件即可。同时,开发人员也无需关心软件的运维,软件的运行日志、断线断网后的系统重启等均可以灵活配置的方式交由平台管理。此外,软件的升级也将更加便利,维护更新时只需要导入最新版本的镜像文件即可完成更新,降低了对矿方人员或厂家现场服务人员(非软件开发人员)的技能要求。
2021年4月,山西天地王坡煤业有限公司(以下简称“天地王坡煤矿”)启动了煤炭工业互联网平台的建设,基于微服务架构的煤炭工业互联网平台经过持续的实验与更新迭代,已经在该煤矿智能化建设工程中进行了实际部署应用。
(1)在数据存储策略方面,目前大部分煤炭工业互联网平台都是将各类系统采集上来的数据存放在统一的数据库中,随着数据种类与数量越来越多,这种统一的数据库存储模式制约着现存煤炭工业互联网平台对数据的处理能力。天地王坡煤矿部署的基于微服务架构的煤炭工业互联网平台没有采用传统SCADA系统中的文件存储和结构化数据库(如Mysql),而是使用了“时序数据库+结构化数据库”的存储方案。经过在天地王坡煤矿的实际验证,该存储方案提高了数据处理的时效性,加快了数据存储以及读取速度。Mysql数据库与时序数据库写入速度与读取速度对比见表1。
表1 Mysql数据库与时序数据库写入速度与读取速度对比
数据库类型数据条数写入时间/ms读取时间/msMysql数据库10 000454.5451 461.431时序数据库10 000142.857156.172
(2)在平台部署方面,传统的部署方案需要技术人员实际到现场将平台的软件系统部署到1台或多台物理机上,再根据实际网络或硬件情况进行调试和配置,所需时间较长。基于微服务架构的煤炭工业互联网平台运用了容器化、虚拟化技术,将容器作为平台中的每1个微服务应用的独立载体,开发人员可以远程将开发好的多个微服务应用打包成1个Docker文件,每1个Docker镜像文件都有全套的文件系统结构,将Docker文件通过云端部署到矿方的虚拟机中,无需开发人员到煤矿现场进行部署,仅需1~2 h就可以远程部署1套完整的平台应用,减少了对硬件环境的依赖,极大降低了部署难度与时间成本。
(3)在平台后期维护方面,传统平台需要专业技术人员到现场维护与更新,并且在更新维护的同时,传统平台会有一段时间暂时无法提供相应的服务,这会给煤矿生产、安全等方面造成一定影响,而在天地王坡煤矿部署的基于微服务架构的煤炭工业互联网平台由于将各个子系统拆成了颗粒度较小的微服务应用,而每个载有微服务应用的容器都有独立的运行环境,因此在更新或维护时,可以不影响其他应用的运行而进行独立操作,确保了平台的稳定性。
(4)在数据采集方面,基于微服务架构的煤炭工业互联网平台由全矿井50多个设备的2万多个数据测点进行24 h不间断的数据支持,目前已累计采集60亿条数据,生成130个综合性指标,使矿方人员能够清晰、准确地掌握煤矿各环节的状态并可以及时做出调整与反馈。
(5)在系统应用方面,基于微服务架构的煤炭工业互联网平台根据天地王坡煤矿生产、运输、销售以及管理等各方面业务已集成了13个边缘生产控制类子系统、5个人/机全生命周期安全检测类子系统以及5个智能化综合应用。三大类共23个子系统涵盖了全矿各项业务,实现了天地王坡煤矿生产、安全、销售等全方位全生命周期的智能化建设。
针对煤炭工业互联网平台的建设要求及现状问题,利用微服务框架技术,设计了基于微服务的煤炭工业互联网平台。并在山西天地王坡煤矿进行了试验应用验证,经过实际应用验证,该平台能够加速算法应用软件的开发速度,降低部署、运维的难度,平台以服务的形式提供数据存储、通信代理、数据查询等常用公共功能。
微服务的模块化设计可以满足各种服务的可扩展性、实时性、及时性、可用性、可靠性、安全性和可重用性。边缘储存和边缘计算的加入能够对生产一线大数据量的实时计算以及控制反馈形成一定能力的支撑。该平台解决了传统的数据闭塞、信息孤岛等问题,满足了煤矿工业互联网的基本要求,为煤矿工业互联网平台的进一步发展奠定了基础,促进了煤炭工业向信息化、智能化的转型。
[1] 王国法,杜毅博.煤矿智能化标准体系框架与建设思路[J].煤炭科学与技术,2020,48(1):1-9.
[2] 工业互联网产业联盟.中国工业互联网发展成效评估报告[EB/OL].(2021-12-14) [2023-05-16]. http://www.aii-alliance.org/index.php/index/c315/n2692.html.
[3] 工业互联网产业联盟.工业互联网标准体系(版本3.0)[EB/OL].(2021-12-31) [2023-05-16]. http://www.aii-alliance.org/index.php/index/c315/n3038.html.
[4] 工业互联网产业联盟.工业互联网平台白皮书[EB/OL].(2019-06-05) [2023-05-16]. http://www.aii-alliance.org/index.php/index/c318/n63. html.
[5] 新华网. 大力发展工业互联网平台 加快数字中国建设创新实践[EB/OL]. (2019-05-05) [2023-05-16]. http://www.cac.gov.cn/2019-05/05/c_1124451304.htm?from=singlemessage.
[6] 张晓霞,李首滨,苏上海,等.基于工业互联网体系架构的矿井大数据平台设计与实现[J].煤炭科学技术,2022,50(6):277-285.
[7] 钞小静,廉园梅,罗鎏锴.新型数字基础设施对制造业高质量发展的影响[J].财贸研究,2021,32(10):1-13.
[8] 李首滨.煤炭工业互联网及其关键技术[J].煤炭科学技术,2020,48(7):98-108.
[9] 杨家荣.工业互联网的发展现状与展望[J].上海电气技术,2020(3):63-67.
[10] 李首滨,煤炭智能化无人开采的现状与展望[J].中国煤炭,2019,45(4):5-12.
[11] 张建中,郭军.智慧矿山工业互联网技术架构探讨[J].煤炭科学技术,2022,50(5):238-246.
[12] 谭章禄,马营营,袁慧.煤炭大数据平台建设的关键技术及管理协同框架[J].工矿自动化,2018,44(6):16-20.
[13] 李仕奇,韩庆敏,杜军钊,等.智能工厂信息安全防护方案[J].电子技术应用,2019,45(12):16-19.
[14] 姜德义,魏立科,王翀,等.智慧矿山边缘云协同计算技术架构与基础保障关键技术探讨[J].煤炭学报,2020,45(1):484-492.
[15] 王国法,赵国瑞,任怀伟.智慧煤矿与智能化开采关键核心技术分析[J].煤炭学报,2019,44(1):34-41.
[16] 冯志勇,徐砚伟,薛霄,等.微服务技术发展的现状与展望[J].计算机研究与发展,2020,57(5):1103-1122.
[17] HASSELBRING W, STEINACKER G. Microservice architectures for scalability, agility and reliablity in e-commerce[C]// IEEE In-Ternational Conference on Software Architecture Workshops, 2017:243-246.
[18] 戴云鹏,乔运华,周文坤,等 . 基于微服务架构的RS10云平台建设研究 [J]. 制造业自动化,2021(5):113-115.