3. 储能系统建模:BESS模型、SOC约束、充放电效率与寿命衰减模型
好,咱们进入第三讲。这一讲,我打算把储能系统建模这件事彻底讲透。
你想想看,做电网调峰调度,你手里得有“兵”吧?储能系统就是你的兵。但你对这个兵了解多少?它什么时候有劲,什么时候会累,什么时候会“折寿”?这些不清楚,调度方案就是纸上谈兵。
我个人习惯,做任何优化之前,先把模型搭扎实。模型不准,后面算得再花哨也没用。今天咱们就聚焦三个核心:BESS模型、SOC约束、以及充放电效率与寿命衰减。
3.1 电池储能系统(BESS)基础模型
先说BESS模型。说白了,就是一个能量进出的大水池。
我习惯用一个简单的能量平衡方程来描述它:
E(t+1) = E(t) + η_charge * P_charge(t) * Δt - (1/η_discharge) * P_discharge(t) * Δt
这里:
- E(t):t时刻电池内的剩余能量(kWh)
- P_charge(t):t时刻的充电功率(kW),正值
- P_discharge(t):t时刻的放电功率(kW),正值
- η_charge:充电效率(0~1)
- η_discharge:放电效率(0~1)
- Δt:时间步长(小时)
这个公式看着简单,但坑不少。我在项目中遇到过,有人把充放电效率搞反了,结果调度出来的方案,电池越充越少,越放越多,闹了笑话。
3.2 荷电状态(SOC)约束
SOC,就是电池还剩多少电。用百分比表示,0%是空,100%是满。
调度时,SOC不能乱跑。为什么?
- 过充:电池鼓包,甚至起火。我见过一次实验室过充测试,那场面,印象深刻。
- 过放:电池“饿死”,容量永久损失,再也充不回来了。
所以,SOC约束是硬约束:
SOC_min ≤ SOC(t) ≤ SOC_max
其中:
- SOC_min:一般设为10%~20%,保护电池
- SOC_max:一般设为80%~90%,留有余地
嗯,这里要注意。有些优化算法为了追求经济性,会拼命把SOC往边界上推。我曾经吃过这个亏,算法跑出来结果很漂亮,但实际运行一个月,电池健康度掉了3%。后来我加了SOC惩罚项,让算法尽量把SOC维持在40%~60%的“舒适区”。
3.3 充放电效率模型
效率不是常数。你想想看,大电流充电时,发热多,损耗大,效率就低。小电流慢充,效率就高。
我习惯用一个分段线性函数来拟合:
η_charge(P) = η_charge_0 - k_charge * (P / P_max)
或者更精确一点,用查表法。我在一个项目中,实测了不同功率下的效率数据,然后做成了二维插值表。效果比固定效率好得多。
| 充电功率(%P_max) | 充电效率(%) | 放电功率(%P_max) | 放电效率(%) |
|---|---|---|---|
| 20% | 95% | 20% | 96% |
| 50% | 92% | 50% | 93% |
| 80% | 88% | 80% | 89% |
| 100% | 85% | 100% | 86% |
你看,效率差10个点,对调度结果影响很大。尤其是做全天优化时,这个细节不能省。
3.4 寿命衰减模型
这是最让调度算法头疼的部分。电池每充放一次,寿命就少一点。怎么量化?
业内常用的是循环寿命曲线。比如某款电池,在100% DOD(放电深度)下,能循环3000次;在50% DOD下,能循环8000次。
我常用的模型是:
Loss_per_cycle = a * (DOD)^b
其中a和b是电池厂商提供的拟合参数。如果没有,可以用经验值:a=0.0002, b=1.5。
举个例子:
- 如果每次只充放20%的电(DOD=0.2),单次寿命损耗 = 0.0002 * (0.2)^1.5 ≈ 0.0000179
- 如果每次充放80%的电(DOD=0.8),单次寿命损耗 = 0.0002 * (0.8)^1.5 ≈ 0.000143
差了8倍!所以,调度时尽量让电池浅充浅放,别可着一个电池往死里用。
min Σ (寿命损耗成本)。
3.5 知识体系总览
说了这么多,咱们用一张图把这一章的核心逻辑串起来:
这张图把BESS模型拆成了三个核心模块。你看,SOC约束是“安全底线”,效率模型是“经济账本”,寿命衰减是“长期成本”。三者缺一不可。
好了,这一讲就到这里。模型搭好了,下一章咱们就可以开始写调度算法了。记住,模型是算法的地基,地基不稳,楼盖得再高也得塌。