大坝安全监测,在水电行业里的地位是"一级要件"——按照DL/T 5178-2016《混凝土坝安全监测技术规范》的规定,大坝变形、渗流、渗压、应力应变这些监测数据的采集必须连续,存储周期至少覆盖大坝全寿命周期。一座大型混凝土重力坝的设计基准期是100年。
100年。这个时间尺度对IT系统来说有点超现实——大多数数据库技术十年就被淘汰了。但数据管理的需求是硬性的,尤其对200米级的高坝来说,蓄水初期的3-5年是最关键的安全监测期,数据的连续性和完整性直接关系到大坝安全评估结论的可靠性。
换个角度想:如果某座坝运行15年后出现了异常变形趋势,但早期的监测数据因为系统升级、格式迁移丢失了——谁来负责?这不是假设性的问题。国内有多座大坝的安全监测自动化系统经历了多次供应商更替,历史数据格式不统一甚至部分丢失的情况真实存在。
大坝安全监测的数据特点
先搞清楚大坝安全监测在测什么。
变形监测:坝顶水平位移、垂直位移、接缝开合度。传统用垂线坐标仪、引张线仪、静力水准仪,现在越来越多用GNSS位移监测站。精度要求很高——垂线坐标仪的分辨率0.01mm,GNSS位移监测精度1-3mm。数据频率不高,一般1次/1-4小时,但在蓄水期或异常期间加密到1次/10分钟。
渗流渗压:坝基扬压力、坝体渗压、绕坝渗流、量水堰流量。渗压计的数据对温度敏感,需要温度补偿。数据频率1次/1-12小时。
应力应变:混凝土应变计、钢筋计、压应力计、无应力计。数据频率1次/1-4小时。
环境量:上下游水位、气温、库水温度(沿深度分布的多点温度)。水位1次/1-10分钟,温度1次/1-4小时。
监测类别 | 典型仪器 | 测点精度/分辨率 | 采集频率 | 存储周期 |
变形 | 垂线坐标仪、引张线、GNSS | 0.01-1mm | 10min-4h | 全坝寿命期 |
渗流渗压 | 渗压计、测压管、量水堰 | 0.1kPa / 0.1mm水位 | 1-12h | 全坝寿命期 |
应力应变 | 应变计、钢筋计、应力计 | 1-5με | 1-4h | 全坝寿命期 |
环境量 | 水位计、温度计 | 1cm / 0.1°C | 10min-4h | 全坝寿命期 |
振动 | 强震仪 | 0.001g | 事件触发(连续记录) | 永久 |
巡视检查 | 人工记录 | — | 1-7次/月 | 永久 |
这些数据量看着不大——一座大型水电站大坝的自动化监测测点可能500-2000个,按1小时频率算,一天也就4.8万条。一年不到1800万条。真正的大头不在这里。
机组数据才是"量"的主体
水轮发电机组的监测数据量远大于大坝安全监测。一台700MW的水轮发电机组,监测参数包括:蜗壳进口压力、尾水管进口压力、导叶开度、水头、机组转速、有功/无功功率、定子绕组温度(每台机12-24个温度测点)、推力轴承温度和油温(8-16个)、导轴承温度(4-8个)、冷却水进出口温度和流量、各轴承振动(主轴摆度X/Y向、轴承座振动X/Y/Z向)、发电机机端电压电流、励磁系统参数……加起来每台机组500-1500个测点。
采样频率差异大。温度类1次/1-10秒,振动类1-5kHz(在线监测)或25.6kHz(故障诊断级),电气量1次/1秒,水力参数1次/1-10秒。
一座装机6×700MW的水电站,机组测点总量3000-9000个。加上大坝和水工建筑物的监测点、闸门控制系统参数、库区水文气象数据——全站测点1万到3万。这个量级跟变电站不是一个量级,但数据的长期连续存储要求更严格。
为什么传统监测系统管不好这些数据
水电行业的大坝安全监测自动化系统发展了二十多年,但数据管理上的问题一直没解决好。
系统割裂。 大坝安全监测、机组振动监测、机组温度监测、水情测报、闸门控制——各系统独立运行,数据格式不统一,存储各自为政。一座大型水电站的监测系统可能有七八套子系统,来自不同供应商。
数据格式不统一。 国内大坝安全监测系统市场有不下十家供应商,每家的数据格式都有自己的标准。南京南瑞、北京木联能、长江科学院、武汉岩海……数据格式互不兼容。系统升级换代时历史数据迁移是大工程,搞不好就丢数据。
历史数据存储薄弱。 有些大坝安全监测自动化系统的历史数据存储周期只有1-2年,超出就覆盖。对于设计基准期100年的大坝来说,这显然不够。更麻烦的是,有些系统把数据存在工控机上,工控机硬盘损坏后数据直接没了——没有备份。
查询分析能力差。 传统监测系统的查询界面通常是按仪器逐个查看曲线,没有批量对比、趋势分析、统计聚合的能力。想看"右岸2-5号坝段垂线位移年度变化率对比"?得逐个导出数据到Excel手动处理。
时序数据库能解决什么
长周期数据存储。 这是水电行业对时序数据库最核心的需求。大坝安全监测数据的采集频率低(小时级),数据量不大,但必须存几十年。TDengine的列式压缩对这类低频变化平缓的数据压缩效果极好——20-50倍压缩比不难达到。一座大坝2000个测点,按1小时频率存50年,原始数据约4.4亿条,TDengine存储占用可能不到10GB。
统一时间轴跨系统关联。 大坝变形、渗压、环境温度、上下游水位——这些参数之间存在因果关系。水位变化引起坝体变形,有1-3天的滞后;温度变化引起接缝开合度变化。把不同系统的数据写入同一个TDengine实例,按时间范围联合查询,关联分析就顺畅了。虽然TDengine不支持传统JOIN,但应用层可以做时间对齐查询——"过去30天2号坝段垂线位移与上游水位变化曲线叠加"。
分布式架构支撑梯级电站。 一个流域的梯级电站可能多达十几座。雅砻江流域已建和在建电站装机超3000万千瓦,金沙江下游乌东德-白鹤滩-溪洛渡-向家坝四级电站。每座电站的数据如果各自独立管理,跨电站分析(比如梯级调度优化)就缺少数据基础。
TDengine的分布式集群架构可以支撑这种多电站数据汇聚场景。每座电站部署边缘节点做本地存储,数据汇总到流域集控中心的TDengine集群。电站标签区分电站编号、坝段编号、仪器编号,按标签过滤做跨电站查询。
数据订阅支撑安全预警。 大坝安全监测中的异常指标需要实时预警——渗压突增、位移突变、量水堰流量异常增大。TDengine的数据订阅功能可以在异常数据写入后立即推送通知,比人工巡检及时发现风险。对蓄水期或汛期的大坝安全监测尤其重要。
机组振动监测:与风电CMS类似的难题
水轮发电机组的振动监测系统(如国产TVM系列或B&K的 vibro系统)与风电CMS面临类似的困境——厂商封闭、数据格式不统一、跨系统分析困难。
振动监测的核心价值在于轴承状态评估和故障预警。主轴摆度X/Y向轨迹图能反映导轴承间隙和轴颈磨损,轴承座振动速度的RMS值能反映机组整体振动水平,频谱分析能识别不平衡、不对中、碰摩等故障类型。
这些振动数据需要在历史数据基础上做趋势分析——"过去一年3号机组水导轴承处主轴摆度峰峰值变化趋势"。频谱图的变化更微妙——某次谐波分量的能量比例从5%上升到12%可能预示着转子动平衡劣化或导叶异常。
TDengine的存储能力解决了振动数据长期保存的问题。振动特征值(RMS、峰值、峭度、各次谐波幅值)按1分钟频率存10年,一台机8个通道,数据量约4.2亿条——TDengine处理这种量级不在话下。原始波形数据建议存对象存储,TDengine只存特征值和文件索引。
机组温度数据的长期趋势价值
水轮发电机组各轴承的温度是设备健康状态的直接指标。推力轴承瓦温(每块瓦2-4个测点,大型机组可能有20-30块瓦)在正常运行状态下应该稳定在60-75°C。如果某块瓦的温度持续偏高或日变化幅度增大,可能预示着轴瓦磨损或冷却系统故障。
温度趋势分析需要长期数据。一台机一年的温度数据(按10秒采样,30个温度测点)约9460万条。存10年也就9.46亿条,TDengine轻松应对。关键查询:"3号机推力轴瓦1号瓦温近3年同期对比"——同参数不同年度的对比分析,帮助识别缓慢劣化趋势。
TDengine的降采样查询在这种场景下很实用。把10秒数据降采样到日均值,3年数据就只有1095条,绘制趋势曲线又快又清晰。需要细节时再查原始10秒数据。
防洪调度需要什么数据
防洪调度是大坝安全管理的重中之重。汛期大坝泄洪决策需要综合:入库流量预报、库水位变化趋势、闸门泄流能力、下游河道安全泄量。
入库流量预报依赖上游水文站的降雨和流量数据。一条河流的水文站网可能包括十几个甚至几十个站点,数据频率在汛期加密到10-15分钟。这些数据实时写入TDengine后,预报模型可以实时拉取最新数据做滚动预报。
闸门泄流曲线——不同开度下的泄流量——是固定参数,但闸门实际运行状态(开度、电机电流、振动)是时序数据。把这些数据存入TDengine,结合上下游水位数据,可以分析闸门实际泄流能力与设计值的偏差,为调度决策提供更精确的数据支撑。
梯级电站的调度优化
梯级电站之间有水力联系——上游电站泄水到下游电站入库有时间差(取决于河道距离和流速),通常几小时到一天。梯级调度的优化就是协调上下游电站的发电和泄水节奏,在满足防洪安全的前提下最大化发电效益。
这需要多电站的历史和实时数据同时分析。TDengine的分布式架构下,各电站数据汇聚到流域集控中心的集群,按电站标签区分。分析"上游电站过去7天出库流量与下游电站入库流量的时间序列对比"——跨电站的时间关联查询。
流域集控中心部署TDengine集群(3-5节点),覆盖全流域十几座电站的全部运行数据和水情数据。总数据量视电站数量和保存年限而定,10座电站×1万测点×10秒频率×5年,约1577亿条。TDengine集群通过多vnode并行写入和查询,能处理这种量级。
部署架构建议
建议采用"电站边缘+流域中心"两层架构。
电站端:部署TDengine单节点或双节点(高可用),配置16核32G以上服务器和SSD存储。负责本地大坝监测、机组监测、水情数据的实时采集和存储。电站值班室通过本地网络查看实时数据和历史趋势。断网不影响本地数据采集和告警。
流域中心:部署TDengine集群3-5节点,汇聚辖区所有电站的关键数据(大坝安全监测全量数据、机组SCADA 1分钟降采样数据、振动特征值数据、水情数据)。中心侧做跨电站分析和流域级调度优化。TDengine原生数据复制保证电站到中心的同步延迟在秒级。
存储规划:电站端全量数据存10年以上,流域中心存关键数据5年以上。电站端SSD配置根据测点数量和保存年限计算——1万测点×10秒频率×10年约315亿条,TDengine压缩后约50-100GB,一块1TB SSD绰绰有余。
结语
水电行业对数据管理的要求很矛盾——一方面要求存几十年甚至跟大坝同寿命,另一方面IT系统的更新周期远短于此。把数据押注在某个供应商的平台上是有风险的,平台可能倒闭、格式可能废弃、接口可能变。时序数据库作为开放的数据底座,数据格式标准、查询语言标准(SQL),即使换掉TDengine,数据也可以通过SQL导出迁移。对一个要存100年的数据系统来说,开放性和可迁移性比性能更重要。

























