APP下载

基于SaaS的尾矿库安全在线监测系统设计及应用

2020-12-05余万一

有色金属(矿山部分) 2020年6期
关键词:尾矿库报文解析

余万一,张 达,冀 虎

(1.矿冶科技集团有限公司,北京 102628;2.金属矿山智能开采技术北京市重点实验室,北京 102628;.国家金属矿绿色开采国际联合研究中心,北京 102628)

我国目前尾矿库数量多[1],保证尾矿库的安全稳定刻不容缓,但现有的尾矿库安全监测系统都是采用传统软件模式开发的,尾矿库企业本地部署,独享系统,这种方式对于尾矿库企业来说成本高,还需要企业配置相应的IT技术人员。导致很多尾矿库企业,尤其是中小规模的尾矿库缺失尾矿库安全在线监测系统,而中小规模的企业安全隐患恰恰是最高的。所以传统软件模式已经无法满足现状,而新型的SaaS模式在目前现有软硬件条件下,能很好地解决以上问题,适合应用于尾矿库安全在线监测系统[2]。

1 软件即服务SaaS

1.1 SaaS简介

SaaS是Software as a Service的简称,意思为软件即服务,是互联网模式下应用软件的创新型模式[3-4]。软件开发企业将产品部署在公有云上,软件用户根据实际情况,向软件开发企业租用所需的产品,按租用的产品和租用期限向软件开发企业支付费用。软件的运维和部署都由软件开发企业实施,软件用户不需要对产品的部署所需设备和运营维护进行任何投入。SaaS下的软件产品便于配置和部署,有效解决软件开发企业的经营成本[5-6]。

SaaS下的软件产品一般采用应用/服务架构。软件产品既可以为企业提供统一的服务又可以根据用户的需求提供个性化的服务。用户所有数据统一存储在软件开发企业提供的云数据库中,不同的用户数据通过用户唯一标识来区分。由此,软件需求者不需再购买部署应用软件的服务器,省去了购买硬件的成本,同时也不需要投入额外的人力成本进行运营维护[7-8]。

1.2 传统软件模式和SaaS模式

在以往的传统项目中,一般是面向特定的客户实现一套特定的系统,并部署到对应的企业内部中。不同的企业或者组织各自部署一套自己的软件系统。而SaaS模式,是将一套软件部署到云服务器,面向不同的企业或组织提供相同的服务。企业或组织需要使用服务时,软件供应商通过给企业或组织建立账号并分配相应ID,当企业或组织使用软件时通过ID来验证和按需使用软件服务。图1给出了传统软件模式和SaaS模式的比较。

图1 传统软件模式和SaaS模式比较Fig.1 Comparison between traditional software and SaaS

通过对SaaS模式和传统软件模式的对比,SaaS模式更加适合尾矿库安全监测系统,理由有两点:

1)SaaS模式不需要采购硬件服务器,只需要购买云端服务,减少了硬件设备成本的投入。

2)SaaS模式不需要配备IT技术人员,减少了人力成本的投入。

2 SaaS模式下尾矿库安全在线监测系统构建

2.1 尾矿库安全在线监测系统功能分析

尾矿库安全在线监测系统主要是用来掌握与尾矿库安全密切相关的技术指标的最新动态,有利于及时掌握尾矿库的运行状况和安全现状,可以提高尾矿库的安全性,保障库区下游企业及人民群众的生命财产安全,避免因尾矿库事故而造成的环境污染,保护生态环境。

尾矿库安全在线监测系统接收现场采集终端采集到的各项监测数据,用户可以通过在线监测系统实时查看各项技术指标的动态,同时在技术指标达到报警阈值时会触发短信、邮件报警,能够及时通知相关人员对存在的安全隐患进行处理。

2.2 尾矿库安全在线监测系统架构设计

尾矿库安全在线监测系统由视图、控制、模型、存储四层组成,每层之间互相调用和依赖。由于本系统是基于SaaS模式构建的,所以采用了应用/服务器架构,便于系统的扩展和维护。

2.2.1 视图层

用户使用的界面,可以是PC端,也可以是移动端,用来实现系统的可视化,为用户提供良好的视觉效果。

2.2.2 控制层

由拦截器模块、控制器模块组成,拦截器模块通过视图层发送的数据请求,校验发送数据的用户是否为系统授权用户,是授权用户则将请求转发给控制器,否则不处理请求。控制器接收到请求数据后,根据映射关系,将请求转发给相应的模型进行处理。

2.2.3 模型层

由业务模型、数据模型构成,业务模型和数据模型用来处理模块接收控制器转发的用户请求,访问存储层,进行相关的逻辑计算,最后由视图层输出结果。

2.2.4 存储层

由数据存储和文件存储构成,实现尾矿库安全在线监测系统数据的存储、报表文件的发布。数据库和文件存储均部署在软件供应商的网络服务器上。图2给出了本系统的分层设计图。

图2 尾矿库安全在线监测系统分层设计图Fig.2 Layered design of safety online monitoring system for tailings pond

2.3 尾矿库安全在线监测系统功能设计

通过当前尾矿库安全在线监测系统的分析和研究,将尾矿库安全在线监测系统根据SaaS模式软件的创新新型应用进行设计。尾矿库安全在线监测系统主要是对终端采集数据的存储及管理,并能通过对数据的分析计算掌握各项技术指标的实时动态、达到及时预警的目的。该系统主要分为数据采集、数据分析处理、系统管理三个模块。

2.3.1 数据采集

数据采集是数据分析和预警的基础,该模块由采集终端管理和采集数据解析两部分组成。采集终端管理是对接入系统的采集终端设备进行登记,未登记设备发送的报文不予接收,登记的内容包括采集终端设备类型、采集终端遥测站地址、采集终端设备通道及参数等信息。采集数据解析是对采集终端设备发送的报文进行解析处理,报文格式遵循水文监测数据通信规约[9],表1列出了报文结构。

表1 采集终端发送的报文结构

报文数据准确性验证:采集终端设备根据约定的CRC算法计算出CRC码放置于报文尾部,解析程序再重新计算所接收程序的CRC码,比较得到的CRC码和接收到的CRC码是否一致,如果不一致则认为报文数据出错。本设计使用基于MODBUS协议的CRC算法,计算方法如下:

步骤1,预置一个16位的CRC寄存器0xFFFF。

步骤2,将报文第一个8位二进制数据与16位的CRC寄存器的低8位相异或,把结果放于CRC寄存器。

步骤3,CRC寄存器的内容右移一位,用0填补高位,并检查右移后的移除位。

步骤4,移除位为0,再次右移一位;移除位为1,CRC寄存器与多项式0xA001相异或。

步骤5,重复步骤3和步骤4,直到整个8位数据进行了处理。

步骤6,重复步骤2到步骤5,进行报文下一个8位二进制数据的处理。

步骤7,将报文所有数据按上述步骤计算完成后,将得到的16位CRC寄存器的高、低字节进行交换。

步骤8,最后得到的CRC寄存器内容即为CRC码。

表2列出了所使用的参数模型。

表2 CRC校验模型参数

报文数据解析:生成的校验码与传输报文的校验码一致,则开始进行报文解析。解析算法如下:

步骤1,根据帧起始符SOH和报文起始符STX,截取报头。

步骤2,从报头位置2-12截取出10位遥测站地址,根据遥测站地址查询是否已经登记,未登记解析结束,登记则继续解析。

步骤3,根据报文起始符STX和报文结束符ETX/ETB,截取报文正文,报文正文为空则解析结束,不为空则继续解析。

步骤4,根据登记的初始值及公式计算采集数据,解析完成。

报文解析算法流程图如图3所示。

图3 报文解析算法流程Fig.3 Flow chart of message analysis algorithm

2.3.2 数据分析处理

该模块由GIS一张图、数据分析、报表管理、预警管理四部分组成,GIS一张图是通过地理信息系统及图表展示接入的尾矿库,实时展示尾矿库的运行状态;数据分析是对采集数据进行历史曲线绘制、通过采集数据和预警阈值的对比进行安全性评估;报表管理会根据专家对数据的研究提供专业的评估报告;预警管理提供对各项技术指标预警阈值的设置、报警处理人设置等。

2.3.3 系统管理

该模块用来运行和管理系统,由组织管理、用户管理、角色管理三部分组成。组织管理是管理接入系统的企业,为企业开通和授权ID;用户管理是管理系统使用人员,包括平台管理员和企业用户;角色管理是为接入用户提供权限分配等操作,平台管理员可以通过角色管理分配企业管理员和相应购买的使用权限,企业管理员同时可以在其权限范围内继续分配相应权限给不同的企业人员。图4给出了尾矿库安全在线监测系统的架构图。

图4 尾矿库安全在线监测系统的架构图Fig.4 Architecture of safety online monitoring system for tailings pond

3 尾矿库安全在线监测系统应用

本设计方案已经应用于江西铜矿4号尾矿库,接入的采集设备种类包括:表面位移、内部位移、浸润线、干滩高程、渗流量、降雨量、库水位,接入监测点65个。现以内部位移为例说明一下在4号尾矿库的应用流程。

3.1 采集设备管理

在4号尾矿库设置3个内部位移监测点,编号分别为HD2-1,HD2-4,HD2-5,对应的遥测站编码分别为0000004047,0000004041,0000004049。将3个设备均登记到尾矿库安全在线监测系统中,并设置通道及初始化参数,图5给出了采集设备终端管理界面。

图5 采集设备登记Fig.5 Acquisition device registration

3.2 采集数据解析

以HD2-1为例计算内部位移值,接收的报文数据如下:

SOH0300000040470451320097STX001919111-4160221ST 0000004047 X TT 1911141600 JD1 -2.0553 JD2 -0.8125 JD3 1.2806 JD4 2.1503 JD5 2.3611 JD6 1.1625 JD7 0.8558 JD8 0.2681 VT 4.09 SIG 13 ETX3D10

步骤1:根据CRC算法计算出报文校验码为3D10,和报文后4位一致,说明报文完整。

步骤2:解析出报文头,获取到的报文头为0300000040470451320097,根据报文头得出遥测站地址为0000004047,这个地址我们已经登记到系统当中,继续进行处理。

步骤3:解析报文体,获取到报文正文为0019191114160221ST 0000004047 X TT 1911141600 JD1 -2.0553 JD2 -0.8125 JD3 1.2806 JD4 2.1503 JD5 2.3611 JD6 1.1625 JD7 0.8558 JD8 0.2681 VT 4.09 SIG 13,共登记了8个通道,根据通道标识获取测量值,再根据内部位移计算公式计算得出位移量,内部位移计算公式:

o=sin((π/180)×(θ-φ))×l

(1)

式中:θ—测量的角度值,(°);φ—设置的初始角度值,(°);l—设置的斜杆长度,m;o—位移量,mm。表3列出了各个通道经过公式计算获取的位移量。

表3 测点位移量

3.3 采集数据展示

监测点数据经过解析计算实时展示在GIS一张图上,图6给出了显示界面。

图6 GIS一张图展示Fig.6 A map of GIS

至此,通过内部位移的实际应用,可以得出结论,本文设计的尾矿库安全在线监测系统通过云端采集并在云服务器中进行解析计算,通过云服务的方式给尾矿库企业提供服务是可行的。同时在4号尾矿库的系统运行情况来看,系统稳定性、扩展性、维护性得到了较大提高,更加容易在其他尾矿库进行推广。

4 结论

将SaaS软件创新模式应用到尾矿库安全在线监测系统中,矿山企业无需再购买硬件和软件,同时不需要配备IT从业人员,只需要在软件供应商处购买所需服务,极大地降低了矿山企业在这方面的投入。而对于软件供应商也不必一直做重复工作,可以将更多的资源投入到技术创新上,更加有利于自身的发展。还有一点SaaS模式支持多租户,一套应用可以服务于多个矿山企业,这样使得这种在线监测模式得到广泛应用。

综上所述,SaaS模式不仅能够给矿山生产安全和环境保护提供强有力的支撑,而且软件供应商也能够从中获益,可谓一举两得。

猜你喜欢

尾矿库报文解析
基于J1939 协议多包报文的时序研究及应用
某铁矿山尾矿库回采工艺设计实例
长期运行尾矿库的排渗系统渗透特性的差异化反演分析
三角函数解析式中ω的几种求法
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
筑牢尾矿库安全防线
睡梦解析仪
电竞初解析
对称巧用解析妙解