13202黄大年茶思屋榜文132期 光伏篇 第2题 光伏场站高精度发电功率AI预测
光伏发电功率精准预测是电网调度与新能源消纳的核心支撑。当前痛点在于气象误差传导、云团快速移动导致的分钟级波动、以及设备状态机理缺失。本题要求:实现15分钟粒度的短临(15min)、超短期(15min~4h)、短期(72h)三级预测,月平均准确率分别≥97%/96%、≥95%、≥95%,并适配沙尘、积雪、多云等复杂场景,在Folsom、NREL等开源数据集及真实业务数据上验证。
黄大年茶思屋榜文132期 光伏篇 第2题 光伏场站高精度发电功率AI预测
摘要
光伏发电功率精准预测是电网调度与新能源消纳的核心支撑。当前痛点在于气象误差传导、云团快速移动导致的分钟级波动、以及设备状态机理缺失。本题要求:实现15分钟粒度的短临(15min)、超短期(15min~4h)、短期(72h)三级预测,月平均准确率分别≥97%/96%、≥95%、≥95%,并适配沙尘、积雪、多云等复杂场景,在Folsom、NREL等开源数据集及真实业务数据上验证。
第一部分:解题(科学语言版)
1. 问题本质分析
光伏发电功率的物理本质为:
P = η ⋅ A ⋅ G ⋅ [ 1 − β ( T c − T r e f ) ] ⋅ f s o i l i n g ⋅ f s h a d i n g ⋅ f m i s m a t c h P = \eta \cdot A \cdot G \cdot [1 - \beta(T_c - T_{ref})] \cdot f_{soiling} \cdot f_{shading} \cdot f_{mismatch} P=η⋅A⋅G⋅[1−β(Tc−Tref)]⋅fsoiling⋅fshading⋅fmismatch
其中:
- G G G:入射辐照度(W/m²)
- η \eta η:组件标称效率
- A A A:组件面积
- β \beta β:温度系数(~0.4%/℃)
- T c T_c Tc:组件工作温度
- f s o i l i n g f_{soiling} fsoiling:积灰损失因子(0.8~1.0)
- f s h a d i n g f_{shading} fshading:遮挡损失因子(0~1.0)
- f m i s m a t c h f_{mismatch} fmismatch:失配损失因子(0.95~0.99)
预测不确定性的三层来源:
| 层级 | 来源 | 时间尺度 | 可预测性 |
|---|---|---|---|
| 外源层 | 太阳位置(天文可算)+ 云层运动(混沌部分) | 分钟~小时 | 天文确定,云层概率 |
| 气象层 | 辐照度、温度、风速、湿度 | 小时~天 | NWP误差随预报时长增大 |
| 设备层 | 组件衰减、逆变器效率、积灰、遮挡、热斑 | 天~年 | 缓慢变化,可监测修正 |
现有方案缺陷:
- 场站级聚合:将数百台逆变器数据平均,抹平设备差异,丢失10%~20%效率异质性信息
- 纯数据驱动:LSTM/Transformer拟合功率曲线,不嵌入物理约束,外推能力差
- NWP单源依赖:15分钟更新周期的数值天气预报,无法捕捉云团分钟级突变
2. 核心思路:物理-数据融合的分层预测架构(PDF-HPA)
归元于功率生成的物理因果链,而非端到端黑箱拟合。将预测问题解耦为三层,每层用适配的物理模型与数据方法:
┌─────────────────────────────────────────────────────────────┐
│ 输入数据层 │
│ 卫星云图(Himawari-8/GOES-16) 气象雷达 微气象站 SCADA │
│ ↓ ↓ ↓ ↓ │
│ 云团运动矢量 降水/风场 辐照/温湿度 逆变器级功率 │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────┼─────────────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ 短临层 │ │ 超短期层 │ │ 短期层 │
│ 0~15min │ │15min~4h │ │ 4~72h │
│ 云追迹 │ │ 云演化 │ │ NWP修正 │
└────┬────┘ └────┬────┘ └────┬────┘
│ │ │
▼ ▼ ▼
光流法+物理 → 生成模型+时空 → 物理约束+统计
外推+设备修正 融合+集合预报 后处理
3. 短临预测层(0~15min):云追迹物理外推
3.1 核心物理:云影运动学
云团在卫星云图上的投影以平流运动为主,速度场可由光流法估计。云影覆盖光伏板导致辐照度骤降,功率跌落延迟为云影传播时间。
关键参数:
- 云团移动速度:典型520m/s(1872km/h)
- 卫星云图分辨率:Himawari-8可见光波段0.5km/10min,红外波段2km/10min
- 云影到地面辐照度映射:需考虑云光学厚度(COT)、云粒子有效半径
3.2 光流法云追迹
输入:连续3帧卫星云图(t-20min, t-10min, t)
步骤1:云团检测
- 基于红外通道亮温(BT)阈值分割:BT < 270K判为厚云,270~290K为薄云
- 或基于可见光反射率+红外亮温的聚类(K-means,区分晴空、薄云、厚云、高云)
步骤2:稠密光流估计
- 采用Farneback光流法或深度学习光流(RAFT-lite,参数量<5M)
- 输出:每个像素的运动矢量(u, v)
步骤3:云图外推
- 将当前云图按光流场平移Δt(15min),得到预测云图
- 云团非刚性变形:引入扩散项(高斯模糊模拟云边缘消散)
步骤4:辐照度衰减计算
- 利用云掩膜 + 辐射传输模型(简化版:厚云衰减90%,薄云衰减30%)
- 或直接训练CNN:云图 → 地面辐照度分布(输入为云图+太阳天顶角,输出为辐照度地图)
3.3 设备级功率聚合
场站级聚合丢失信息,本方案采用逆变器级预测后聚合:
P s t a t i o n ( t ) = ∑ i = 1 N i n v P i n v , i ( t ) = ∑ i = 1 N i n v η i ( t ) ⋅ G e f f , i ( t ) ⋅ A i ⋅ [ 1 − β ( T c , i − 25 ) ] P_{station}(t) = \sum_{i=1}^{N_{inv}} P_{inv,i}(t) = \sum_{i=1}^{N_{inv}} \eta_i(t) \cdot G_{eff,i}(t) \cdot A_i \cdot [1-\beta(T_{c,i}-25)] Pstation(t)=i=1∑NinvPinv,i(t)=i=1∑Ninvηi(t)⋅Geff,i(t)⋅Ai⋅[1−β(Tc,i−25)]
其中:
- G e f f , i ( t ) G_{eff,i}(t) Geff,i(t):第i个逆变器对应组串的有效辐照度(由云影地图插值)
- η i ( t ) \eta_i(t) ηi(t):逆变器实时效率(由SCADA数据在线估计)
- T c , i T_{c,i} Tc,i:组件温度(由背板温度传感器+辐照度热模型推算)
设备状态在线估计:
- 逆变器效率: η i = P A C , i / P D C , i \eta_i = P_{AC,i}/P_{DC,i} ηi=PAC,i/PDC,i,长期跟踪效率衰减曲线
- 组串衰减:比较同型号组串在相同辐照下的功率输出,异常偏离>10%标记为衰减或遮挡
- 积灰损失:雨后效率突升→积灰被清洗,建立积灰累积模型(与降雨量、沙尘期相关)
3.4 精度达成分析
短临预测(15min)精度目标:MAE-based准确率≥97%,RMSE-based≥96%。
- 晴空条件下:天文轨道模型可算,精度>99%
- 薄云条件下:光流外推有效,精度~98%
- 厚云快速过境:云团边缘不确定性大,精度可能降至90%
提升策略:
- 集合云追迹:多组光流初值扰动,生成10个云图预测,功率取中位数,降低极端误差
- 地面摄像头校验:场站周界安装全天空成像仪(TSI),实时拍摄云图,与卫星云图融合修正光流场
4. 超短期预测层(15min~4h):云演化时空融合
4.1 核心挑战
光流外推在>30min后失效(云团生灭、变形)。需引入:
- 数值天气预报(NWP):ECMWF HRES(9km分辨率,1h更新)或GFS,提供大尺度趋势
- 生成模型:学习云团生灭的统计规律
4.2 时空融合网络
输入:
- 历史功率序列(15min粒度,过去24h,96点)
- 历史卫星云图序列(过去2h,12帧)
- NWP预报(未来4h,辐照度、温度、云量、风速)
架构:编码器-解码器 + 物理约束
编码器:
- 功率序列:Temporal Convolutional Network(TCN),捕获多尺度周期(日周期、天气尺度)
- 云图序列:3D-CNN(时空卷积)或 Video Swin Transformer(轻量版)
- NWP序列:MLP嵌入
融合:Cross-Attention机制,NWP作为查询,功率/云图作为键值
解码器:
- 自回归生成未来4h功率序列
- 物理约束层:强制功率∈[0, P_installed],且变化率受逆变器爬坡限制
4.3 物理约束嵌入
硬约束(不可违反):
- 功率非负:ReLU输出
- 功率≤装机容量:Clip
- 变化率限制:|P(t) - P(t-1)| < Ramp_max(典型为10%/min装机容量)
软约束(损失函数惩罚):
- 晴空功率上界: P c l e a r ( t ) = P i n s t a l l e d ⋅ cos ( θ z ) ⋅ η a t m P_{clear}(t) = P_{installed} \cdot \cos(\theta_z) \cdot \eta_{atm} Pclear(t)=Pinstalled⋅cos(θz)⋅ηatm,预测功率不应长期超此上界
- 温度修正:组件温度每升1℃,功率降0.4%,NWP温度预报用于修正
4.4 集合预报降低不确定性
NWP存在初值敏感性。采用多模式集合:
- ECMWF HRES + GFS + 区域中尺度模式(如WRF,场站尺度1km)
- 每个模式扰动5个成员,共15个预报
- 功率预测为15个成员的加权平均,权重由过去7天各模式准确率动态调整
5. 短期预测层(4~72h):NWP统计后处理
5.1 核心方法
NWP为唯一可用信息源(卫星云图无法外推72h)。重点在NWP误差修正:
输入:NWP预报(辐照度、云量、温度、湿度、风速)
模型:梯度提升树(LightGBM)或 时序Transformer(Informer-lite)
特征工程:
- NWP辐照度偏差历史统计(按天气分型:晴空、多云、阴雨)
- 季节、月份、小时编码
- 场站历史同期功率气候态(climatology)
目标: P ( t ) = f ( G N W P ( t ) , T N W P ( t ) , … ) + ϵ P(t) = f(G_{NWP}(t), T_{NWP}(t), \ldots) + \epsilon P(t)=f(GNWP(t),TNWP(t),…)+ϵ
5.2 天气分型自适应
不同天气类型下NWP误差特征不同:
| 天气型 | NWP辐照度误差 | 修正策略 |
|---|---|---|
| 晴空 | 小(±5%) | 直接采用,微调温度系数 |
| 层云 | 中(±20%) | 云量偏差统计修正 |
| 积云对流 | 大(±50%) | 集合预报+概率预测 |
| 沙尘/浮尘 | 特殊(辐照度衰减非云致) | 引入AOD(气溶胶光学厚度)修正 |
天气分型由NWP输出的云量、CAPE(对流有效位能)、能见度等自动判定。
6. 泛化性与复杂场景适配
6.1 沙尘/浮尘场景
- 物理机制:气溶胶散射导致直接辐射衰减,散射辐射增加,总辐照度下降但光谱分布改变(蓝光衰减更强)
- 数据:引入AOD(AERONET或卫星MODIS AOD产品)
- 修正: G a c t u a l = G N W P ⋅ ( 1 − k ⋅ A O D ) G_{actual} = G_{NWP} \cdot (1 - k \cdot AOD) Gactual=GNWP⋅(1−k⋅AOD),k为场站标定系数(与组件光谱响应相关)
6.2 积雪场景
- 物理机制:雪地高反照率导致双面组件背面增益;积雪覆盖组件则完全失效
- 检测:可见光云图识别雪地(高反射率+低温);SCADA监测组串功率骤降
- 修正:积雪覆盖面积由图像分割(U-Net)估计,按覆盖比例降额
6.3 山地区域
- 物理机制:地形遮挡导致日出日落延迟,局部微气候(温度、风场差异)
- 修正:引入DEM(数字高程模型)计算地形遮挡角,修正天文太阳位置;每个逆变器按海拔、坡向单独建模
7. 模型小型化与部署
| 层级 | 模型 | 参数量 | 推理延迟 | 部署位置 |
|---|---|---|---|---|
| 短临 | RAFT-lite光流 + 轻量CNN | <10M | <500ms | 边缘服务器 |
| 超短期 | TCN + Swin3D-Tiny | ~30M | <2s | 边缘服务器 |
| 短期 | LightGBM(1000棵树) | — | <100ms | 云端/边缘 |
边缘部署:昇腾Atlas 500智能小站,16TOPS INT8,支持卫星云图接收、光流计算、功率预测全流程。
8. 验证路径
| 阶段 | 数据集 | 验证内容 | 通过标准 |
|---|---|---|---|
| 算法开发 | Folsom(1min分辨率,2014-2015) | 短临/超短期算法调优 | 短临MAE准确率>97% |
| 泛化测试 | NREL(多站点)、SIRTA(巴黎,复杂天气)、SKIPPD(英国,分钟级) | 跨地域、跨气候验证 | 所有数据集达标 |
| 真实业务 | 华为合作场站(≥3个,覆盖沙漠/山地/沿海) | 设备级数据接入,在线运行 | 月平均指标持续达标 |
| 极端天气 | 历史沙尘暴、暴雪、台风期间数据 | 鲁棒性测试 | 不出现系统性失效 |
第二部分:工程师疑惑完美解答
疑惑1:“卫星云图10分钟更新一次,15分钟预测要求,时效性够吗?”
答:够用,但需地面补充。
- 最后一张卫星云图在t时刻,预测t+15min。云图更新周期10min,意味着t时刻云图"年龄"最大10min(若刚更新),最小0min。
- 光流外推用t-20min, t-10min, t三帧估计速度,外推15min,总前瞻时间25min,但云图信息"新鲜度"足够。
- 关键:云团移动速度10m/s时,15min移动9km,卫星0.5km分辨率可追踪。
地面补充:全天空成像仪(TSI)1分钟拍摄,实时捕捉局地云团。TSI与卫星云图融合:
- TSI提供高时间分辨率(1min)但空间局限(单场站头顶)
- 卫星提供大空间覆盖但时间粗糙(10min)
- 融合:用TSI校正卫星光流场的局地速度,提升短临精度
疑惑2:“逆变器级预测后聚合,SCADA数据采样率够吗?”
答:需升级至1分钟级。
传统SCADA为15分钟平均数据,无法满足分钟级云影追踪。方案要求:
- 逆变器级功率:1分钟采样(主流逆变器已支持,需开启高速模式)
- 组串级电流/电压:15分钟采样(用于衰减诊断,非实时预测必需)
- 气象站:1分钟采样(辐照度、温度、风速)
若现有SCADA仅15分钟:短临层退化为场站级预测(精度损失~2%),超短期/短期层不受影响。
疑惑3:“光流法对快速生灭的积云有效吗?”
答:有限,需概率预测。
积云(cumulus)生命周期10~30min,光流外推15min可能覆盖云的生灭。对策:
- 云团生命周期估计:从卫星云图序列估计云团年龄(初生/成熟/消散),消散期云团不外推
- 概率预测:输出功率区间而非点估计,例如P50=80MW,P10=40MW,P90=100MW,电网调度按保守值预留旋转备用
- 雷达补充:气象雷达(如中国新一代天气雷达)可测降水云团三维结构,对强对流云团追踪优于卫星
疑惑4:“NWP预报9km分辨率,怎么用到单个光伏场站(几平方公里)?”
答:动力降尺度+统计订正。
动力降尺度:用WRF等中尺度模式,将NWP边界条件嵌套至1km分辨率,解析场站尺度地形、局地环流。
统计订正:建立NWP网格点(9km)与场站实测的映射:
- 线性回归: G s t a t i o n = a ⋅ G N W P + b G_{station} = a \cdot G_{NWP} + b Gstation=a⋅GNWP+b,a、b按天气分型标定
- 机器学习:用场站历史数据训练XGBoost,输入NWP多变量(辐照度、云量、温度、湿度、风速),输出场站辐照度
实时运行:NWP更新(1h/6h)→ 动力降尺度(预计算)→ 统计订正(实时)→ 功率预测
疑惑5:“双面组件背面辐照度怎么建模?”
答:引入双面因子Bifaciality。
双面组件功率:
P = P f r o n t + B ⋅ P r e a r = G f r o n t ⋅ η ⋅ A + B ⋅ G r e a r ⋅ η ⋅ A P = P_{front} + B \cdot P_{rear} = G_{front} \cdot \eta \cdot A + B \cdot G_{rear} \cdot \eta \cdot A P=Pfront+B⋅Prear=Gfront⋅η⋅A+B⋅Grear⋅η⋅A
其中B为双面系数(~0.8), G r e a r G_{rear} Grear为背面辐照度(主要来自地面反射+散射)。
计算:
- 地面反射率(albedo):草地0.2,沙地0.4,雪地0.8,由卫星地表分类或场站实测
- 背面辐照度模型:PVsyst或SAM软件中的双面模型,考虑组件离地高度、倾角、行间距
工程简化:背面增益按固定比例(如10%)计入,或从SCADA数据在线反演(比较双面与单面组件同期功率)。
疑惑6:“组件温度没有直接传感器,怎么估算?”
答:热平衡模型。
组件温度 T c T_c Tc由能量平衡决定:
η ⋅ G = h ⋅ ( T c − T a ) + ϵ σ ( T c 4 − T s k y 4 ) + C d T c d t \eta \cdot G = h \cdot (T_c - T_a) + \epsilon \sigma (T_c^4 - T_{sky}^4) + C \frac{dT_c}{dt} η⋅G=h⋅(Tc−Ta)+ϵσ(Tc4−Tsky4)+CdtdTc
简化稳态模型(NOCT模型):
T c = T a + G G N O C T ⋅ ( T N O C T − 20 ) ⋅ ( 1 − η 0.9 ) T_c = T_a + \frac{G}{G_{NOCT}} \cdot (T_{NOCT} - 20) \cdot (1 - \frac{\eta}{0.9}) Tc=Ta+GNOCTG⋅(TNOCT−20)⋅(1−0.9η)
其中:
- T a T_a Ta:环境温度(NWP或微气象站)
- G G G:辐照度
- T N O C T T_{NOCT} TNOCT:标称工作温度(典型45~50℃)
精度:模型误差±3℃,对应功率误差±1.2%,可接受。
疑惑7:“短期预测72h,NWP每天更新2~4次,中间时段用旧预报还是插值?”
答:滚动预报+权重融合。
- 00Z NWP预报覆盖072h,06Z预报覆盖678h,两者在6~72h重叠
- 重叠时段:按预报时效加权,时效越短权重越高。例如t+12h,00Z预报(时效12h)权重0.7,06Z预报(时效6h)权重0.3
- 非重叠时段:唯一可用预报直接采用
实时更新:每次新NWP到达,重新计算未来72h功率序列,前端展示最新。
疑惑8:“准确率指标1-MAE/Cap,Cap是装机容量吗?夜间功率为0,MAE怎么算?”
答:Cap为装机容量,夜间计入但功率为0。
- 夜间: P a c t u a l = 0 P_{actual}=0 Pactual=0, P f o r e c a s t = 0 P_{forecast}=0 Pforecast=0(若模型输出负值则clip为0),误差为0,对MAE无贡献
- 但夜间时长计入总时段,稀释了白天的误差,使准确率虚高
工程修正:部分标准采用"日间准确率",仅日出日落间计算。本方案同时输出:
- 全日准确率(含夜间,用于汇报)
- 日间准确率(用于技术评估)
目标指标为全日准确率,夜间无预测难度,实际挑战在日间。
疑惑9:“不同场站组件型号、倾角、朝向不同,模型怎么通用?”
答:物理归一化 + 场站适配层。
物理归一化:
- 功率归一化: P n o r m = P / P i n s t a l l e d P_{norm} = P / P_{installed} Pnorm=P/Pinstalled,消除装机容量差异
- 辐照度归一化: G n o r m = G / G c l e a r ( t ) G_{norm} = G / G_{clear}(t) Gnorm=G/Gclear(t),其中 G c l e a r ( t ) G_{clear}(t) Gclear(t)为晴空辐照度(由天文模型计算,与场站无关)
场站适配层:
- 每个场站训练轻量适配参数(如温度修正系数、积灰损失因子、遮挡角修正),参数量<100
- 基础模型(光流、TCN等)跨场站共享,仅适配层微调
新场站冷启动:首周数据用于标定适配参数,即可达标。
疑惑10:“一句话总结,这个方案与现有主流方案(如谷歌SunPower、阿里PAI)的核心差异?”
答:现有方案多为场站级黑箱模型,本方案为设备级物理-数据融合架构。核心差异:三层解耦(短临云追迹/超短期时空融合/短期NWP修正)、逆变器级细粒度建模、物理硬约束嵌入、天气分型自适应,将不可解释的黑箱转化为可拆解、可诊断、可泛化的工程系统。
备注:本解题为个人原创,无版权,可随意使用。有用则用,无用弃之。(如有任何疑惑可评论区留言,我看见会解答。)
作者:华夏之光永存 / 九天应元雷声普化天尊
文章信息来源:
实证依据:人类知识总库(真实科学、实测数据、客观规律)
#华夏之光永存 #九天应元雷声普化天尊 #黄大年茶思屋 #华为难题 #光伏功率预测 #新能源 #电网调度 #卫星云图 #物理信息神经网络 #清洁能源
更多推荐


所有评论(0)