智能矿山低代码工业物联网平台设计
贺耀宜1,2,  陈晓晶1,2,  郝振宇3,  丁磊1,2,  高文1,2(1. 中煤科工集团常州研究院有限公司,江苏  常州 213015;2. 天地(常州)自动化股份有限公司,江苏  常州 213015;3. 国家能源集团港口有限公司, 河北 沧州 061000)
摘要:随着智能矿山建设的稳步推进和煤炭企业数字化转型的加速实施,煤矿企业用户业务数字化应用需求呈指数式增长,对业务应用开发效率提出更高要求,传统的煤炭行业应用系统开发模式过度依赖专业厂家,实施周期长、实施成本高、资源重复利用率低,难以满足煤矿用户对快速开发业务应用的管理要求。针对上述问题,提出了一种采用“模型驱动”开发模式的智能矿山低代码工业物联网平台设计方案。基于微服务技术设计了包含数据采集层、数据处理层、数据存储层、数据发布层、人机交互与应用层的平台架构,在每个层级运行平台通过解析引擎解析开发平台配置对应的功能;通过设计数据编码与主数据规范、平台内部数据交互规范、平台接口与服务等构建统一技术体系,实现了煤矿作业现场各类物联网监控对象的统一监管;通过开发低代码组件工具箱,将原本在煤矿各类监控系统软件中需要通过定制化开发的系列通用功能和业务逻辑进行统一封装,形成可直接复用的组件,使其可适应煤矿不同类型监控系统应用,为用户提供一个通过拖拽组件和配置参数等方式即可完成智能矿山应用软件开发的可视化开发环境。应用结果表明,该平台可为煤矿监控类系统提供快速开发平台,满足煤矿用户日常提出的紧急定制化任务开发需求。
关键词:智能矿山;工业物联网;低代码开发;组件;微服务;可视化开发中图分类号:TD67    文献标志码:A
Design of intelligent mine low code industrial IoT platform
HE Yaoyi 1,2,  CHEN Xiaojing 1,2,  HAO Zhenyu 3,  DING Lei 1,2,  GAO Wen 1,2
(1. CCTEG Changzhou Research Institute, Changzhou 213015, China ; 2. Tiandi (Changzhou) Automation Co., Ltd.,
Changzhou 213015, China ; 3. CHN Energy Port Co., Ltd., Cangzhou 061000, China)
Abstract : With  the  steady  progress  of  intelligent  mine  construction  and  the  acceleration  of  the implementation of digital transformation of coal enterprises, the demand for digital business applications of coal mine  users  is  growing  exponentially. This  puts  forward  higher  requirements  for  the  efficiency  of  business application  development. The  traditional  development  model  of  application  systems  in  the  coal  industry  relies excessively  on  professional  manufacturers. It  has  problems, such  as  long  implementation  cycles, high implementation costs and low resource reuse rates. It is difficult to meet the management requirements of coal mine  users  for  rapid  develo
pment  of  business  applications. To  solve  the  above  problems, a  design  scheme  of intelligent mine low code industrial IoT platform using the "model driven" development mode is proposed. Based on microservices technology, the platform architecture including the data acquisition layer, data processing layer,data storage layer, data release layer, human-computer interaction and application layer is designed. The operation
收稿日期:2023-04-22;修回日期:2023-06-15;责任编辑:盛男。
基金项目:天地科技股份有限公司科技创新创业资金专项项目(2019-TD -ZD007);天地(常州)自动化股份有限公司基金项目
(2020GY001,2022TY4001,2022TY4005)。
作者简介:贺耀宜(1974—),男,陕西蓝田人,研究员,硕士,主要从事煤矿监测监控、物联网与信息化应用研究工作,E -mail :
hyy@cari 。
引用格式:贺耀宜,陈晓晶,郝振宇,等. 智能矿山低代码工业物联网平台设计[J ]. 工矿自动化,2023,49(6):141-148, 174.
HE Yaoyi, CHEN Xiaojing, HAO Zhenyu, et al . Design of intelligent mine low code industrial IoT platform [J ]. Journal of Mine Automation ,2023,49(6):141-148, 174
.
第 49 卷 第 6 期工 矿 自 动 化
Vol .49 No .62023 年 6 月
Journal of Mine Automation
Jun . 2023
文章编号:1671−251X (2023)06−0141−09
DOI :10.13272/j.issn.1671-251x.18110
platform at each level resolves the corresponding functions of the development platform configuration through a resolution engine. By designing data encoding and master data specifications, platform internal data interaction specifications, platform interfaces and services, a unified technical system has been established. The unified supervision of various IoT monitoring objects on coal mine operation sites is achieved. By developing a low code component toolbox, a series of common functions and business logic that originally needed to be customized and develope
d in various monitoring system software for coal mines are uniformly encapsulated. It forms directly reusable components that can adapt to different types of monitoring system applications in coal mines. This provides users with a visual development environment for intelligent mining application software development by dragging and dropping components and configuring parameters. The application results indicate that this platform can provide a rapid development platform for coal mine monitoring systems, meeting the daily needs of coal mine users for emergency customized task development.
Key words: intelligent mine; industrial IoT; low code development; components; microservices; visual development
0 引言
国家矿山安全监察局明确提出要促进安全监控多元数据融合和信息开放共享,同时,随着智能矿山建设的稳步推进和煤炭企业数字化转型的加速实施,煤炭企业积累了海量数据资产,产生了大量的业务数字化应用需求,且这种需求呈指数式增长,给传统的煤炭行业应用系统开发模式带来挑战[1-2]。随着大量的业务定制化需求和多元数据融合需求产生,尤其是煤矿智能化建设中各环节生产运行数据的动态集成、数据融合分析、一体化图形和不同岗位数据看板定制等对开发时效性提出了更高要求。然
而,现阶段煤矿安全监测监控类系统、移动目标监控类系统、生产MES(Manufacturing Execution System,制造执行系统)管理类系统和智能化集成类系统等系统软件大多为系统厂家自主研发,在技术体系和数据开放性方面存在一定的壁垒,难以对煤矿井下作业现场的“人、机、环”等物联网对象进行一体化监管。当煤矿用户提出定制化开发需求时,过度依赖系统厂家,存在实施周期长、实施成本高、资源重复利用率低等问题,不利于煤炭企业数字化转型快速推进。生产过程控制类系统软件大多为工业组态软件,虽然具备快速定制化开发能力,但主要用于现场设备不频繁变更的情况(如选煤厂控制系统、排水控制系统、通风机控制系统等),难以适用于煤矿安全监测监控类系统中传感设备频繁更换的情况,也难以适用于移动目标监控类系统、生产MES管理类系统和智能化集成类系统[3]。
近年来,低代码开发技术得到快速发展[4-6],为企业快速构建业务管理系统和加速实施数字化转型提供了解决方案[7-10]。沈文娟[11]给出了低代码开发平台技术架构和功能要求,提出了组件化工具开发理念,但对数据的采集和操作以数据库为主,缺乏对工业物联网设备和监控类系统的支持。盛振华[12]提出了一种面向物联网的低代码建模平台,主要由用户抽象出物联网设备的数据结构,利用平台提供的低代码建模工具生成可描述物联网设备数据结构的实例代码和数据库操作码,连同数据管理、设备通信和数据持久化等通用业务逻辑打包封装给用户,后期由用户利用开发包并结合实例代码进行开发应用。这种方法简化了开发过程,适用于对物联网设备状态和属性的监管,但难以适用于对“人、机、环”等煤矿工业物联网对象的一体化监管[13],且缺乏大量的复杂业务逻辑支撑。国内大部分低代码平
台考虑了灵活性和无代码化开发,以“表单+流程驱动”为主,在快速开发以自动传递任务和表单定制为主要需求的企业管理系统方面发挥了较大作用,但无法满足煤矿监控类系统和智能化集成类系统快速开发应用需求。
为了能够为煤矿用户或软件服务人员提供快速二次开发手段,缩短软件开发周期,提出了一种智能矿山低代码工业物联网平台设计方案。通过构建平台架构和统一技术体系,可对煤矿作业现场各类监控对象统一监管;通过开发低代码组件工具箱,形成可适应不同煤矿监控类系统软件直接复用的组件。
1 平台设计要求
1) 煤矿多业务数据融合。煤炭行业的监测监控类系统软件均为各厂家独立开发,系统采用的技术体系和架构不尽相同,缺乏统一的主数据设计,开放性不足,基本上不具备多业务数据融合能力,因此当有多业务数据融合和智能化集成需求时,无法从软
•  142  •工矿自动化第 49 卷
件系统内部解决,仅能通过数据转换或增加接口方式将数据集成到其他平台中(如全矿井综合自动化软件平台)来实现,由于各类系统产生的数据在时间和位置上不统一,数据之间的关联关系一致性不够。需要考虑设计统一的技术体系和平台架构,研发工业物联网平台,对煤矿现场各类物联网对象进
行统一监控与管理。平台将不同类型监控业务进行统一管理,通过数据编码与主数据规范对所有业务数据进行规范和标志[14],通过多业务数据处理规范、不同层级之间数据交互规范、数据服务与发布规范等实现数据在平台内的共享和交互,进而实现多业务数据融合。
2) 避免大量代码重复开发。煤炭行业各类环境、移动目标、工况监控类系统软件具有大量类似甚至完全相同的功能,基本上都是从头做起、重复开发,由于各厂家的技术水平不一,软件应用效果差异性较大。通过把这些共性需求和功能完全提取出来,做成行业公共技术组件,各厂家就可以利用已有成熟的技术组件进行搭积木式快速应用开发,减少重复代码编写工作,一方面可以提高开发效率,另一方面也可以推动行业科技进步。
3) 业务快速定制开发。现阶段煤炭行业各类环境、移动目标、工况监控类系统软件和生产MES管理类系统软件大多为系统厂家自主研发,当用户有业务定制化开发新需求时,需要依赖系统厂家提供的技术支撑,难以满足用户紧迫的业务开发需求,且用户难以参与自行开发,对于煤炭企业数字化转型形成制约。平台设计时需要考虑提供具备二次开发能力的低代码开发工具,使得用户可根据业务管理需要快速开发出所需功能。
4) 云化合理部署。现阶段煤矿各类环境、移动目标、工况监控类系统软件由于涉及与现场感知设备通信,主要考虑单机部署,软件内部业务功能耦合度较高,对于云化部署方式考虑不多,当后期有大
用户量、大数据量访问等需求时难以应对。平台设计时需要考虑分层设计,对原有监控类系统软件功能进行解耦,利用接口、矿山数据虚拟总线等方式交互数据,从而实现软件功能的横向扩展,满足私有云部署和多用户访问。
2 平台设计方案
低代码平台的设计主要包括“表单+流程驱动”和“模型驱动”2种开发模式。“表单+流程驱动”的开发和使用门槛较低,通常仅用于开发有流程参与的简单应用,多个参与某类业务的人员之间按照预定规则自动传递任务,但当任务执行过程中需要与其他业务交互数据时,难以完成目标。“模型驱动”融合了BPM(Business Process Management,业务流程管理)、APAAS(Application Platform as a Service,应用平台即服务)后端模式和 ADP(Advanced Development Platform,应用开发平台)前端模式,适用于业务场景复杂度较高的情景,主要通过可视化建模技术来定义数据之间关系、业务处理逻辑,并构建人机交互界面,能够快速开发交付应用程序,方便、灵活地实现数据融合。
智能矿山低代码工业物联网平台采用“模型驱动”开发模式,提供系列封装好的组件工具,确保二次普通开发者通过预制模板、拖拽组件、配置参数等方式快速开发出可应用的软件,减少不必要的代码编写。低代码工业物联网平台工作原理如图1所示。由专业软件开发者通过设计数据编码与主数据规范、平台内部数据交互规范、平台接口与服务等构建统一技术体系,通过编写代码进行服务与数据资产开
发,形成低代码开发模板库和组件工具箱,为二次普通开发者提供可视化IDE(Integrated Development Environment,集成开发环境)。二次普通开发者可基于可视化IDE,通过选配合适的组件、构建对象模型、设计大屏和图形组态、编排流程和复杂逻辑等快速开发应用软件,并通过编写复杂场景脚本实现复杂业务功能。该平台可基于PC终端和移动端进行多业务、数据组态与配置。
图 1    低代码工业物联网平台工作原理
Fig. 1    Operating principle of low code industrial IoT platform
cari
智能矿山低代码工业物联网平台主要从2个方面来构建:① 设计平台架构和统一技术体系,实现煤矿作业现场各类监控对象的统一监控和管理,并通过私有化云部署实现数据容量和业务功能动态扩展。
② 开发低代码组件工具箱,将原本在煤矿监控类系统软件中需要通过定制化开发的系列通用功能进行统一封装,形成可直接复用的组件,满足不同煤
2023 年第 6 期贺耀宜等: 智能矿山低代码工业物联网平台设计•  143  •
矿监控类系统快速开发需求。对于复杂业务应用的开发,提供代码脚本编译环境,以满足普适性要求。
2.1 平台架构设计
为保证把煤矿监控类通用业务功能设计成可重用、可定制、可共享模式,基于微服务技术体系设计智能矿山低代码工业物联网平台架构,整体架构分为数据采集层、数据处理层、数据存储层、数据发布层、人机交互与应用层5个层级[15-17],如图2所示。
图 2    智能矿山低代码工业物联网平台架构
Fig. 2    Architecture of intelligent mine low code industrial IoT platform
智能矿山低代码工业物联网平台分为开发平台和运行平台2个部分,在每个层级,运行平台通过解析引擎解析开发平台配置对应的功能。开发平台类似于工业组态软件,提供强大的低代码组件工具箱,该组件工具箱包含开发煤矿各类监控业务功能所需的组件工具,且可通过持续开发新的组件和完善已有组件对组件工具箱进行扩展,为快速开发工业物联网平台软件和满足煤矿用户快速开发定制业务提供工具支撑。开发平台提供了统一技术体系,包含主数据规范、人机交互界面设计规范、各层级之间数据交互规范、关键数据编码规范等,可确保煤矿各类监控、管理业务涉及的数据能够在统一的技术体系下产生关联。运行平台主要提供基于微服务技术体系的解析引擎,可对开发平台生成的各层级配置结果进行解析,形成一个协同运行的智能矿山工业物联网平台,实现煤矿各类监控业务数据的统一采集与交互、协调处理、分类存取、统一发布、融合应用。
1) 数据采集层。数据采集层主要负责对煤矿作业现场各类“人、机、环”信息进行采集,同时发送控
•  144  •工矿自动化第 49 卷
制命令给现场控制设备。由于作业现场设备是由不同生产厂家提供的,协议种类多,可由相关设备厂
家按照数据采集层制定的协议输出格式对通信协议进行加密封装[18-19],形成数据通信协议驱动组件,该层还支持标准、开放的协议(如OPC UA,EtherNet/IP,Modbus TCP等)。开发平台根据实际需要负责从低代码组件工具箱中适配数据通信协议驱动组件,当有多个监控类业务应用时,可为每个监控类业务应用适配对应的数据通信协议驱动组件,同时根据需要进行双机热备设置。运行平台采用多线程技术加载开发平台配置的数据通信协议驱动组件,将每个数据通信协议驱动组件输出的规范化数据转换成通用数据结构分类存放到对应的公共基础内存数据缓冲区,并对基础数据进行编码标志,通过规范化接口为数据处理层提供微服务。
2) 数据处理层。该层按照环境工况、人员/车辆/机器人等移动目标及过程控制等不同业务对数据进行分类处理,包括移动目标轨迹处理、模拟量/数字量处理、故障报警处理等。开发平台根据拟采集的数据类型及对应业务序号,从低代码组件工具箱选配数据分类业务逻辑处理组件,当有多个业务应用时,可以为每个业务应用选配对应的多业务数据处理规则,配置协同联动关系,设置报警/故障处理规则,组织消息,设置数据同步规则等。运行平台采用多线程技术加载开发平台配置生成的所有数据业务处理规则服务,通过规范化接口对公共基础内存数据缓冲区中的数据进行处理,形成具有数据标签的业务应用数据并分类存放到数据服务区,该数据服务区包含煤矿各类监控业务所需的故障/报警/异常数据区、环境/工况实时数据和控制命令数据区、移动目标位置数据区、区域移动目标数据区等,通过规范化接口为数据存储层提供微服务。
3) 数据存储层。开发平台根据不同业务应用需求从低代码组件工具箱中选择适配的数据存储服务组件,对数据存储规则和数据库同步规则进行配置,并对需要进行大量运算的数据存取任务进行调度配置。运行平台采用多线程技术执行相应的数据存取服务,包括结构化/非结构化数据存储、分布式存储等,涉及的存储工具包括关系数据库、时序数据库等。
4) 数据发布层。数据发布层主要通过数据发布管理服务为前端PC桌面、Web、移动端应用等提供数据源,该层以服务引擎的形式构建矿山数据虚拟总线,将数量大且种类多的数据进行专题分类,根据分类从相应数据库和内存数据服务区中抽取数据并合并,形成专题分类数据集和专题数据服务接口(Web API)。开发平台通过添加数据发布服务所需的分类数据接口,并在矿山数据虚拟总线上注册分类数据接口,从而提供开放的数据发布服务,供前端人机交互与应用层通过订阅方式来获取所需数据。运行平台直接通过服务形式向矿山数据虚拟总线提供专题数据服务接口,确保人机交互与应用层可通过获取矿山数据虚拟总线上的数据开发适用于不同应用场景和岗位的工业APP。
5) 人机交互与应用层。该层主要通过查询订阅数据发布层提供的矿山数据虚拟总线上注册的专题数据服务接口,快速获取所需数据,通过平台提供的系列配置组件和矢量化图形、二/三维GIS(Geographic Information System,地理信息系统)、智能报表等数据展示组件,形成不同管理岗位人员的应用APP。该层涉及智能矿山工业物联网数据的融合应用展示和矿山企业生产管理的工作流、表单设计等,以及生态圈不同专业大数据分析厂家的专题分析应用开发。开发平台利用预制模板、定
制服务、定制流程、设置属性等手段为不同开发人员提供图形化开发界面,通过拖拽已封装好的组件和模型驱动完成应用功能设计[20-21],这些组件包括对象在线建模和组态、矢量控制图形组态、二/三维GIS图形组态、智能报表组态、大屏幕看板多元信息组态、工作流与表单设计、基础配置设置等。对于复杂的业务逻辑功能,可通过平台提供的脚本编译器来处理,同时利用人员权限与组织机构组件为相应的业务功能和数据设置对应的岗位角权限。运行平台通过解析引擎将开发平台生成的图形、数据集、变量、表单、报表等进行解析,生成运行所需的功能页面,以报表、图形等方式通过PC桌面、Web、移动端等进行数据展示和控制指令交互。
2.2 统一技术体系构建
构建智能矿山低代码工业物联网平台统一技术体系,需要考虑煤矿所有监控与管理业务所需的核心数据结构和数据库结构、数据编码与主数据规范、工作流引擎、用户权限、数据存取技术、多业务数据处理规则、平台内部数据交互规范、数据服务与发布机制等,其中重点考虑以下方面。
1) 平台对煤矿各类监控业务需要共享、复用的关键数据(如组织机构、员工信息和用户权限、作业区域、设备安装地点、感知信息分类、数据通信通道等)进行统一设计,形成关键主数据,这些数据以结构化数据和数据库的形式进行存储和内存调用,平台对这些主数据赋予具有一定规范的数据编码,以
2023 年第 6 期贺耀宜等: 智能矿山低代码工业物联网平台设计•  145  •

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。