一个 80MW 光伏电站,连续两个月因为短期功率预测误差超标被调度考核,月均扣费 4 万元。运维把模型厂商叫来调了三次参数,误差没降多少,最后发现根因是气象源切换后没做一致性校验,预测用的辐照数据和实际相差 20%。模型背了数据源的锅。
功率预测考核直接影响电站收益,但排查时容易一上来就调模型。更有效的顺序是:先核对气象源、再查数据质量、再看上报口径,最后才动模型参数。
考核公式先看清楚
不同省份的考核规则差异很大,常见口径是短期预测准确率不低于 85%,或者均方根误差不超过 15%。扣费通常按超出部分折算电量,再乘以电价。拿到考核单先看两件事:考核窗口是 15 分钟还是 1 小时,误差统计用的是预测值还是修正值。
有的电站把预测系统做了二次修正再上报,但考核系统按原始上报值统计,两边口径不一致,系统里显示误差 8%,考核单却写 14%。
气象源是主要变量
功率预测的误差来源里,气象源不准确能占到一半以上。数值天气预报的分辨率、更新频次、是否同化本地观测数据,都会影响辐照和温度预测。切换气象源或更换预报服务商后,必须做至少 30 天的对比验证。
建议保留两路气象源,一路做主预报,一路做交叉校验。每天对比两路的辐照预测与实际辐照,偏差超过 15% 时自动标记,连续 3 天超差就要检查是不是服务商模型版本变了。
python
# 两路气象源一致性校验示例
def check_weather_consistency(primary_wm2, backup_wm2):
dev = abs(primary_wm2 - backup_wm2) / max(backup_wm2, 50)
return {"ok": dev < 0.15, "deviation_pct": round(dev * 100, 1)}
print(check_weather_consistency(720, 600)) # 偏差 20%,需要告警
数据质量决定模型上限
模型再准,喂进去的历史功率数据本身有缺口,预测也会跟着偏。常见问题包括:限电日的数据被当成正常发电、逆变器停运时的零值没剔除、辐照仪脏污导致校正系数漂移。
训练数据清洗至少要处理三类:限电时段标记剔除、夜间零值保留但剔除建模、异常突变点用前后 15 分钟中值替换。数据质量报告的通过率建议设成 95% 以上,低于这个值先修数据,再谈调模型。功率预测误差治理与电站数据治理是同一套方法,具体链路可以对照这份功率预测与并网考核的工程排查清单。
上报口径要逐字段核对
上报系统的时区、量纲、单位转换是最容易出错的地方。辐照单位是 W/m² 还是 kW/m²,温度是摄氏度还是开尔文,功率单位是 MW 还是 kW,任何一个错位都会让误差统计失真。
建议在预测系统出口加一个校验层:预测值不能超过电站装机容量乘以 1.1,变化率不能超过 30 分钟内 50%,上报时间戳必须是 5 分钟整数倍。三个硬规则能挡住大部分低级错误。
模型切换要有 A/B 验证
模型升级不是上线就完事。先用同一时段数据做离线回测,再做至少 7 天的在线 A/B,对比新老模型逐日误差。回测指标建议同时看均方根误差、平均误差幅度和单点误差峰值,只看平均值会掩盖午后阵雨场景的大偏差。
某 50MW 电站在切换模型后单点误差从 25% 降到 18%,但 7 天平均误差只降了 1.2 个百分点,靠的就是回测时把 4 个雷暴日单独统计,才看出新模型对强对流场景的改进。
建立月度误差溯源表
考核误差要落到具体原因,建议每月做一张误差溯源表,按误差超差的时段归类:气象源偏差、数据缺失、上报错位、模型本身、未知。占比居前的类别就是下个月要解决的问题。
| 误差来源 | 超差时段数 | 占比 | 动作 |
|---|---|---|---|
| 气象源偏差 | 32 | 46% | 换备源或调整权重 |
| 数据缺失 | 14 | 20% | 补数据质量门禁 |
| 上报错位 | 9 | 13% | 修时间戳校验 |
| 模型本身 | 11 | 16% | 下月 A/B 验证 |
| 未知 | 4 | 5% | 现场复盘 |
连续三个月占比居前的类别不变,说明排查顺序有问题,应该把资源前移到气象源和数据治理,而不是反复调模型。
你们电站功率预测被考核过吗?误差溯源表里占比居前的是哪一类?欢迎在评论区分享你们的排查经验。