安 觅,李 瑶
(1.水利部南京水利水文自动化研究所,江苏 南京 210012;2.江苏南水科技有限公司,江苏 南京 210012)
据《2020年全国水利发展统计公报》,我国已建成各类水库98566座,总库容9306亿m3[1],水库的安全运行管理不仅关系到水资源优化配置更紧系下游人民生命财产安全。经过几十年的实践,我国水库的管理模式逐步从粗放模式向精细化管理模式转变,基础监测设施从完成电量转换发展到完成光信号转换,点监测完成向线、面监测转换,管理策略和方式方法由依赖人工向智能化、信息化、现代化转变。通过建立大坝安全体系责任制,强化大坝安全管理模式更新、升级,我国水库安全运行状态已明显改善[2],但目前仍存在大量超期服役水库和大坝,它们普遍存在基础监测设施不完善、自动化程度待提高、更多地依赖于人工观测、缺少统一的信息化管理平台等,不能实时监测大坝安全运行状况,欠缺预警预报功能,因此,开发建设水库信息化系统具有十分重要的意义[3]。
本文依托于锦江水库,建设符合该水库安全运行需求的大坝安全监测系统。由于原大坝安全监测系统建设于2009年,大部分设备已经老化,属于超期运行状态,各系统运行不正常,监测不准确,经常出现数据无法采集和接收的现象。为实现水库实时水位、异常气象预警、综合统计、大坝监测与模型统计等信息的自动采集,因此,通过建设信息化系统,实现实时掌握水库大坝安全运行状态。
本文基于三维建模以及信息融合,充分利用WebGis技术,将信息化基础设施、通信网络、软件系统及数据采集融合构建锦江水库统一信息化平台,为水库的防洪、大坝安全监测以及推动水库管理智能化、现代化提供全新的综合管理模式[4]。
平台总体架构如图1所示,主要分为感知层、数据层、基础服务层、业务应用层、展示层及基础平台服务,实现水库大坝全量数据采集,促进各业务系统数据的融合,消除数据孤岛,实现数据共享及上层数据分析、三维可视化等高级应用[5]。
图1 平台总体架构
本文研究建设的大坝安全监测平台是在调查评价的基础上,结合各区非工程措施建设现状,建设完善自动监测站网、监测预警平台等内容。
系统软件采用模块化设计和开发,软件总体采用B/S模式,并结合C/S模式进行开发,基于WebGis技术实现动态图形的空间监视和资料查询,依托水质监测、相关资料查询及信息服务实现水库信息的自动化监测,由计算机网络、数据库、应用系统组成,主要包括信息汇集和信息服务。为了系统功能的结构清晰,重点突出,简洁明了,确保用户操作快捷方便,信息安全可靠,现将业务应用和数据管理进行分离,分为业务应用系统和数据管理系统两大子系统。另外,在系统架构方面将数据服务和业务功能进行分层架构,通过数据存储、数据服务、接口服务和业务处理的多层架构模式实现系统的业务应用和数据管理。如图2所示。
图2 应用架构
本文采用无人机倾斜摄影对水库大坝进行三维建模,基于物理模型、地理信息,运用影像匹配、彩色点云数据技术和三维网格优化算法,对水库基础建筑物比如大坝、溢洪道、闸门等进行三维实景建模,建设坝上、尾水、岑洞、黄角、阵湾、三甲、牛朗、竹洞等站点信息,为构建可视化平台提供数据底板。通过三维数据在网络环境下的传输和解析,提供基础三维场景和三维数据的互操作,实现数字孪生。使监测信息更直观便捷的展示出来、实现故障定位,减少故障查找与各系统切换对比的时间,使得水库大坝管理精益化[6]。
为降低上层业务应用间数据传输的复杂性,提高数据利用率,平台构建了统一数据底座,并提供标准化数据访问接口。标准化数据接口适用于读取底层传感器的实时监测数据、历史数据、报警数据、文件数据及视频访问接口。
以实时监测数据为例,实时数据使用redis缓存,交互时采用JSON格式定义,业务应用与平台约定存储键名。平台采用lpush方法从左侧写入实时数据,业务应用使用rpop方法,读取指定键的消息内容,同步获取实时监测数据。REDIS队列的键命名为:传感类型:数据类型:测点编号,字段说明见表1。
表1 实时数据格式
水库大坝安全监测平台依托三维精细化建模,将三维模型与水利业务数据结合,基于模型ID与信号ID的唯一性,将水库设备、信息、重点工程等多尺度对象的数字映射,实现二三维一体化沉浸式交互。传统信息化一张图的升级,全面展示综合运行状态。在三维模型中对工程安全、水雨情监测、大坝的渗流、渗漏项目的实时测值相关设备进行定位,并将其坐标、实时监测数据在三维模型中进行数据绑定映射,自动查找该测点所属对应的三维模型,并调用该模型的高亮动画效果。三维界面自动对焦到该设备模型,并在右侧显示详细告警信息,精确定位信息来源[7]。
3.4.1线程同步机制
每个水库大坝往往同时接入多个通讯终端数据,在突发异常情况下数据量突增,需要平台对实时数据处理具有高并发和同步能力[8]。平台的数据采集采用多线程处理。假设线程A取决于线程B的条件。线程A获得对共享区域的互斥访问,并确定条件是否满足。如果条件不满足,则调用wait方法以等待条件得到满足。当条件准备好时,线程A将被线程B发送的信号唤醒。避免对平台共享资源的同时读写造成异常。
3.4.2数据存储高可用
数据存储采用可扩展的分布式存储结构,利用多台存储服务器分担存储负荷,有较高的可靠性、可用性和存取效率,且易于扩展。平台数据存储采用mysql高可用集群方案,通过haproxy应用代理实现负责均衡、mycat实现读写分离、mysql主机实现双主双从设置并自动同步,保障数据安全及备份。
HAProxy负责将请求分发到mycat上,起到负载均衡的作用,同时HAProxy也能通过xinetd服务检测到mycat是否存活,HAProxy只会将请求转发到存活的mycat上。如图3所示,master-主1及master-主2互为主备,且双主机各有1台从机用来同步主机数据,在应用访问时,通过mycat设置读写分离,仅在主机上写操作,从机上进行读操作。
图3 mysql高可用集群
为测试数据上送并发性能,搭建测试环境:1台CAN仿真装置用于模拟100台传感装置,每台挑2个模拟量,总计200个,间隔500ms,连续变化20次,总计4000个测点。同时配置1个数据接收通道,观察变化数据接收情况。1套水库大坝三维可视化安全监测平台用于实现全域数据采集,同时配置数据转发通道将采集的数据转发给仿真。在雪崩数据发生时,使用sar-u命令对平台服务器CPU负荷进行采样[9],结果如图4所示。
图4 雪崩时平台服务器CPU负载
通过以上测试方法,观测到模拟量数据缓存超过4000点。连续测试超过50次,尚未出现瞬时雪崩丢数据情况。且雪崩时CPU负荷不超过50%。稳定可靠,完全满足水库大坝安全运维需求。
使用sysbench1.0.20对单台MySQL主机和MySQL高可靠负载均衡集群进行模拟数据测试对比。考虑网络影响,将sysbench运行服务器单独挂接在网络中,测试模式统一为complex,表数量为20,每张表数据50万条,执行时间为600s。经过集群性能调优后,改变并发连接数测试对比见表2。
表2 存储可靠性测试
对比表2测试结果发现单独访问数据库主机及集群代理,随着并发访问的增加,查询数及事务数并无明显变化,但平均响应时间逐渐增大,在大规模并发访问且同时修改数据情况下响应会卡顿。对比haproxy主机与master-1主机发现使用集群代理后,数据库读写响应延迟虽略有增加,但4台主备机数据实现数据同步,具有较高的安全可靠性,符合业务需求。
通过仿真传感层数据变化,在运维监测页面查看数据变化,检查页面数据准确,从仿真变化到页面数据刷新的时间小于500ms。仿真数据变化并长期运行,数据查询模块中仪器按监测项目分类,选择日期后,查询指定时间段内历史数据数据与仿真一致且显示正常。
本文建设的水库大坝三维可视化安全监测平台已在锦江水库成功部署应用,实现了已建水雨情数据的接入,提供了大坝安全监测、查询报表、站点配置、系统设置、接口管理等功能,符合锦江水库大坝安全运行监测的要求,大大提升了水库的信息化程度、智慧化水平,但是对比数字孪生大坝安全监测平台还存在差距,后续还待加强研究。