基于OPC UA 的煤矿安全生产监控系统信息模型
2022-03-28荣雪黄友锐储怡然徐善永
荣雪,黄友锐,储怡然,徐善永
(安徽理工大学 电气与信息工程学院,安徽 淮南 232001)
0 引言
煤矿安全生产监控系统中子系统种类较多,各个子系统的设备型号繁杂[1-2]。随着井下开采区域不断扩大,新老设备共存的情况一直存在,缺乏统一的通信协议与数据标准,形成“信息孤岛”,设备信息异构导致数据语义完备性低及信息交互数据碎片化。因此需解决煤矿安全生产监控系统数据信息共享问题。
针对目前煤矿普遍存在的“信息孤岛”问题,文献[3-4]提出一种基于资源模型和受限应用协议的智慧矿山信息交互方法。文献[5]提出一种通过智能网关将异构协议转换为统一协议的方法,在井下实现信息交互。文献[6]提出利用CORBA 组件对煤矿系统进行集成。文献[7-8]提出一种基于物联网的安全监控集成平台。我国煤矿信息化建设中,各个子系统基本实现了网络集成,但所获得的海量数据无法有效共享,集成分析无法进行。
OPC UA(OLE for Process Control Unified Architecture,用于过程控制的OLE 统一架构)通过建立节点信息模型描述生产设备复杂的数据结构,通过统一的数据接口,为生产提供可互操作、高性能且包含丰富语义信息的通信模式[9]。OPC UA 是对OPC工业标准的技术补充,可实现对所有使用OPC UA协议的设备进行相互访问和控制[10]。煤矿OPC UA研发目前处于起步阶段,综采、通风、排水等部分控制系统已通过OPC UA 协议开发通信接口进行数据接入,解决了现场异构设备通信协议不同带来的数据集成和传输问题[11-13]。由于OPC UA 具有平台独立性、可扩展性、可互操作性、高可靠性、可连接互联网等特点[14],本文在分析煤矿安全生产监控系统实际设备与信息模型映射关系的基础上,提出了一种基于OPC UA 的煤矿安全生产监控系统信息模型,该模型采用统一的格式和语言进行描述,实现煤矿新老设备、不同厂家设备之间的无障碍信息共享,从而使煤矿生产中各个子系统的数据实现语义互通,统一展示给用户。
1 OPC UA 简介
1.1 OPC UA 架构
OPC UA 采用SOA(Service-Oriented Architecture,面向服务架构),将数据访问、事件报警等功能集成在地址空间中,使用HTTP 信道SOAP(Simple Object Access Protocol,简单对象访问协议)编码格式的网络服务。OPC UA 保留了OPC 的客户端/服务器架构,拥有暴露信息的服务器和使用信息的客户端,以此来实现应用程序之间的信息交互。
相比于OPC,OPC UA 最大的创新是增加了信息建模功能。例如,在OPC 中甲烷传感器仅提供甲烷浓度,而在OPC UA 中不仅能采集到甲烷浓度,还可获得甲烷传感器的类型、编号等具体信息。OPC UA 信息建模过程中,将需要采集信息的设备或系统作为对象,提取对象的属性构建信息模型。信息模型由节点和节点之间的引用组成,节点可分为对象、变量和方法等8 种类型,引用体现了节点之间的层次关系,节点和引用共同构成信息模型中的节点网络。信息模型在OPC UA 服务器的地址空间中供客户端访问,如图1 所示。
图1 OPC UA 服务器架构Fig.1 OPC UA server architecture
1.2 OPC UA 建模流程
OPC UA 建模流程:①获取需求;② 建立信息模型;③实例化信息模型;④ 转换为XML(Extensible Markup Language,可扩展标记语言)格式。
根据应用场景并结合领域规范,获取设备的类型、属性和设备之间的关系,这是信息模型建立的前提,也是信息模型能够与应用现场相结合的关键。信息模型最终采用XML 文件描述,具有良好的通用性,支持跨平台使用。
1.3 OPC UA 信息传输
OPC UA 服务器与客户端之间经通信栈完成网络层的信息传输。通信栈由编码层、安全层和传输层组成,数据编码采用二进制或XML 格式,通过TCP(Transmission Control Protocol,传输控制协议)进行网络连接。客户端与服务器之间上下文通信过程如图2 所示。首先,建立Socket 套接字,客户端向服务器发送连接请求,服务器返回响应消息,建立TCP层的初始连接。然后,打开安全通道,将套接字与安全通道绑定,进行信息加密。最后,客户端发送会话请求,服务器返回响应后建立并激活会话,开始上下文通信。
图2 客户端与服务器之间上下文通信过程Fig.2 Context communication process between client and server
2 煤矿安全生产监控系统信息模型
煤矿安全生产监控系统按功能可分为煤矿安全监控系统、煤矿井下人员位置监控系统、矿井火灾监控系统、煤矿带式输送机监控系统、煤矿供电系统、瓦斯抽采监控系统等。由于煤矿安全生产监控系统规模大、设备复杂,在对其进行信息建模时,应满足可扩展性、完整性要求。根据煤矿安全生产监控系统相关信息和OPC UA 信息模型通用建模规则,得出煤矿安全生产监控系统实际设备与信息模型的映射关系,如图3 所示。
图3 实际设备与信息模型的映射关系Fig.3 Mapping relationship between actual equipment andinformation model
信息模型基础结构如图4 所示。将按功能划分的各个子系统和组成子系统的设备定义为组件,将各个子系统称为功能组件集(简称功能集),设备称为设备组件集(简称设备集),各个组件所包含的所有数据信息的集合称为属性集。各个组件都可通过属性集进行描述,属性集和组件之间允许嵌套和继承。功能集中各功能组件通过静态属性集及动态属性集进行描述(根据信息数据的性质,将属性集分为静态属性集和动态属性集,静态属性表示设备固有的属性,例如设备的编号、名称,采集数据的类型等,动态属性表示系统开启时变化的数据,例如水泵排水量、通风机运行状态、各类传感器采集的实时数据等)。在信息模型基础结构确定的基础上,对煤矿安全生产监控系统进行数字化和模型化描述,形成信息模型。
图4 信息模型基础结构Fig.4 Information model infrastructure
基于OPC UA 的煤矿安全生产监控系统信息模型整体架构如图5 所示。由于不同子系统的功能及所包含的设备不同,建立模型的信息也不同。当煤矿安全生产监控系统中需要扩展新的功能时,在功能集进行扩展,构建新的模块化组件。当子系统中需要增添新的设备时,可在设备集中增加新的组件,保证信息模型的可扩展性。
图5 基于OPC UA 的煤矿安全生产监控系统信息模型整体架构Fig.5 Overall structure of information model of coal mine safety production monitoring system based on OPC UA
以瓦斯抽采监控系统信息模型为例,其由属性集和设备集组成,主要描述井下瓦斯体积分数和实际设备运行状态。静态属性包括系统编号、系统组成、系统功能等;动态属性包括抽采管道状态、抽放站环境状态、设备状态、供气管道状态和储气罐状态。抽采管道状态主要包括抽采管路中CH4体积分数、流量、压力、CO 体积分数等;抽放站环境状态主要包括瓦斯抽放泵站室内和井下临时抽放泵站下风侧CH4体积分数、O2体积分数等;设备状态主要包括电动机温度、抽采泵轴温度、抽采泵运行/停止、电流、电压等;供气管道状态主要包括管道正压、温度、CH4体积分数、流量供气阀开度等;储气罐状态主要包括密封水位、密封水温、罐内CH4体积分数等。设备集包含甲烷传感器、氧气传感器、风压传感器等用于数据采集的传感器,用于数据分析处理与数据传输的控制器及用于执行数据处理结果的光电报警器、甲烷断电仪、甲烷闭锁装置。依据设备集中设备类型,建立瓦斯抽采监控系统信息模型,如图6 所示,各个设备的属性可由父级设备的属性继承而来,也可扩展设备的自身属性。
瓦斯抽采监控系统信息模型仅为抽象的框架,在进行信息模型实例化过程中需要基于实际系统中的设备和功能,按照图6 中的类别对框架中各类信息进行填充,形成具有实际意义的信息模型对象。根据传感器的属性进行建模,各个传感器对象可以直接继承传感器类型的属性。以甲烷传感器和氧气传感器为例,对其信息模型进行实例化,如图7 所示。
图6 瓦斯抽采监控系统信息模型Fig.6 Information model of gas extraction monitoring system
图7 传感器信息模型实例化Fig.7 Instantiation of sensor information model
UaModeler 提供了地址空间的图形设计,可对信息模型进行图形化设计,用户可快捷地在图形用户界面中添加节点和节点间的引用,快速实现复杂模型,并且可用创建的信息模型自动生成对应的XML文件[15]。因此,采用UaModeler 建立传感器信息模型并实例化。建立图形化结构的信息模型后,利用UaModeler 自动生成对应信息模型的XML 描述文件,并将其导入OPC UA 服务器的地址空间。
3 测试验证
为了验证基于OPC UA 的煤矿安全生产监控系统信息模型的可行性,根据信息模型可通过地址空间向客户端展示的原理,使用第三方客户端UaExpert 连接服务器对信息模型进行测试。测试过程所生成的XML 描述文件向OPC UA 服务器地址空间映射,并运行OPC UA 服务器,利用OPC UA 客户端读取服务器地址空间,获取信息模型的全部内容。对信息模型测试时,可通过节点变化来判断信息模型是否开发成功。
在Python 环境使用asyncua 搭建OPC UA 服务器,服务器成功启动后,运行第三方客户端UaExpert,输入服务器地址连接到服务器。在UaExpert 客户端界面(图8)中,瓦斯抽采监控系统信息模型中的传感器信息均在左侧列表中,点击最右侧窗口可显示节点的基本属性信息,说明服务器加载地址空间成功。
图8 UaExpert 客户端界面Fig.8 UaExpert client interface
测试结果表明,所建立的信息模型可根据映射规则实现在OPC UA 地址空间的映射,并通过OPC UA 客户端访问服务器的地址空间,获取各个煤矿安全生产监控子系统中任意对象的属性,验证了使用信息模型实现信息互联互通的可行性。
4 结论
(1)以煤矿安全生产监控系统为研究对象,从实际设备与信息模型的映射关系出发,构建了基于OPC UA 的煤矿安全生产监控系统信息模型。通过UaModeler 实现对信息模型的编辑,在服务器地址空间内实现信息模型实例化,并使用UaExpert 验证了信息模型的可行性。
(2)构建的信息模型具有可扩展性、语义完备性高等特点,能够解决煤矿安全生产监控系统中各子系统难以信息共享的问题。