储能容量优化配置:先分清 kW、kWh、调度与规划,再建立可验收模型
容量配置不是把储能功率和电量扔进粒子群算法。先区分 kW/kWh、设备寿命、投资与运行成本、SOC、可靠性和典型场景,再用基线与外层枚举验证最优结果。
先回答最容易混淆的两个问题
功率容量 kW决定某一时刻最多能充放多少,能量容量 kWh决定能持续多久。100 kW / 200 kWh 通常可理解为额定功率下约 2 小时,但实际可用范围还受 SOC 上下限、效率和寿命策略影响。只优化一个“容量”变量,往往会把功率不足和能量不足混为一谈。
第二个问题是:你在做运行调度,还是容量规划?调度是在容量已知时决定每个时段的充放电;规划则把 kW、kWh 或设备数量也作为决策变量,通常需要在每个候选容量下重新求解一整段运行问题。
一张表先固定变量、单位和边界
| 变量 | 典型单位 | 必须核对 |
|---|---|---|
| 额定充/放电功率 | kW | 是否对称;PCS 限制;并网点限制 |
| 额定能量 | kWh | 可用 SOC 窗口;初末 SOC;退化余量 |
| 充放电效率 | 0–1 | 分别定义还是往返效率;SOC 更新中的乘除方向 |
| 投资成本 | 元/kW、元/kWh | 一次性成本如何年化;折现率与寿命 |
| 运行收益/成本 | 元/kWh、元/kW | 电能量、电需量、弃电、失负荷是否重复计算 |
| 时间步长 | h | 15 分钟应为 0.25 h,不能直接当 1 小时 |
最小模型应该包含什么
一个可复核的基础模型至少需要:逐时功率平衡、SOC 递推、SOC 上下限、充放电功率上限、初末 SOC 规则和电网交互边界。目标函数可从“年化投资 + 购售电净成本 + 弃电/失负荷惩罚”开始。
min annualized_capex(P_kw, E_kwh)
+ sum_t(grid_buy[t] * buy_price[t]
- grid_sell[t] * sell_price[t]
+ unserved[t] * penalty) * dt
subject to
generation[t] + grid_buy[t] + discharge[t]
= load[t] + grid_sell[t] + charge[t] + curtailment[t]
soc[t+1] = soc[t]
+ charge[t] * eta_charge * dt
- discharge[t] / eta_discharge * dt
如果允许同一时段同时充放电会产生不合理套利,需要二进制互斥、互补约束,或至少检查价格和效率条件是否足以自然排除该现象。不要仅因为求解器显示 success 就接受结果。
先做透明基线,再选复杂算法
- 容量网格:在合理的 kW、kWh 边界上做粗网格或外层枚举;每个候选容量都求一次运行调度。
- 可行性:逐场景检查功率平衡、SOC、充放电上限和失负荷。
- 经济性:比较无储能、规则控制和优化调度,不允许只报告最优值。
- 细化:在较优区域缩小步长,确认结论不会因网格稍微变化而跳变。
- 再换算法:只有基线可复现后,才有证据判断差分进化、粒子群或混合整数求解是否带来价值。
SciPy 官方文档提供 Bounds、LinearConstraint、NonlinearConstraint 和多个全局优化器;工具能表达约束并不意味着你的能源模型正确,守恒和业务验收仍需独立实现。
场景不能只挑“平均的一天”
容量规划对极端负荷、低风低光、峰谷价差和连续阴雨非常敏感。至少应保留峰荷、低可再生、高爬坡和长时间能量不足等场景,并给每个代表场景明确概率。削减前后要比较逐时均值、分位数、总能量和爬坡分布;平均曲线接近不能证明尾部风险被保留。
七项验收:用来否定一个“最优容量”
- 功率平衡最大残差在设定容差内,单位换算一致。
- SOC 全程满足上下限,初末条件有业务解释。
- 充放电功率不超过 kW 容量,没有不合理同时充放。
- 候选容量边界扩大后,最优解不是仍死贴上/下边界。
- 无储能、规则策略和优化结果在同一数据与成本口径下比较。
- 更换典型场景、价格、效率和寿命参数后,结论的变化可解释。
- 随机算法至少多随机种子重复,报告可行率和目标值分布,而不是只留最好一次。
什么情况下本页还不够
本页给出的是建模和验收框架,不是某篇论文的现成复现,也不包含特定园区真实数据。若你的问题涉及配电网电压、潮流、N-1、备用市场、循环退化、整数设备台数或多年扩建,应加入相应约束和数据来源,不能用高额惩罚项把所有物理约束糊进一个目标函数。
官方与权威入口
成本、政策、市场规则和设备参数会变化。模型结论只能用于你明确的数据、时间和约束范围,不能替代工程设计、并网审查或投资决策。
同一问题集群的免费排障页
按你当前看到的报错选一页,不需要从头阅读全部内容。