做微网调度的人应该都有这个体会:白天光伏预测曲线稍微偏一点,下午联络线功率就跟着跑飞,储能SOC要么提前见底,要么到晚上还剩一大截没用完。加上共享储能这种场景,一组电池要同时服务多个主体、多个时段,协调难度直接翻倍。这两年我一直在折腾“基于MPC的日前日内微网共享储能优化调度”这类项目,把“日前优化”和“日内滚动MPC跟踪”两段拼成一个完整的协同框架。今天就把这套东西从头到尾捋一遍,包括建模思路、滚动时域怎么设、日前计划怎么变成日内参考轨迹、以及我踩过的各种坑。项目关键词是MPC(模型预测控制)、微网、共享储能、优化调度,内容偏实战,涉及数学建模和求解器细节,但我会尽量讲得直白,让刚入手的朋友也能照着搭起来。
先说结论:这种“日前定计划、日内做跟踪”的分层架构,核心价值不是把预测误差消除,而是用反馈把误差的影响控制在一个可接受的范围内。日前优化负责“算得清”,日内MPC负责“跟得住”,两者协同的核心是衔接变量的设计与惩罚系数的整定。下面从设计思路开始,逐层拆解。
1. 项目整体设计与选型思路
1.1 难点在哪:为什么传统单层调度不够用
微网的优化调度,本质上是一个“在满足功率平衡和运行约束的前提下,最小化运行成本”的优化问题。如果光伏、负荷、电价这些数据全部精确已知,直接建一个全局优化模型,一次性算出未来24小时每一刻的储能充放电功率,问题就结束了。但现实不允许:光伏功率受云层影响可以几分钟内下降一半,负荷预测误差在极端天气下能达到百分之二三十,现货电价也会波动。单层日前调度拿这些不准的数据当准数据用,算出来的计划到实际执行时大概率失配。
这就是为什么需要分层。日前优化在预测信息下提前一天算出一个“基准计划”,解决的是“未来大致怎么运行最经济”的问题;日内阶段再用更短周期、更高频率的MPC,根据实际量测和滚动更新的预测,在不严重偏离日前计划的前提下修正控制指令。说白了就是粗细结合:日前负责大方向,日内负责微调。用一句话概括:日前优化给你一个“锚”,日内MPC保证船不飘太远。
1.2 共享储能的建模思路
共享储能和传统“自建自用”储能最大的区别在于:储能资产的所有权和使用权分离,多类用户(或者微网内的多个子单元)共用一组电池。在建模层面,需要把储能的能量状态、充放电功率、寿命损耗这些内部变量显式表达出来,同时把“共享”的语义落到约束里。
我比较推荐的做法是:把共享储能看成微网内的一个“公共功率节点”。所有用户/子微网的功率差额(发用不匹配的部分)汇总到这一点,由储能统一充放平衡。目标函数里加上储能运行成本/租赁费用项。对于不同用户的用能需求,可以用比例分配或者按申报功率配额的方式建模。注意,这里的“共享”不是简单的容量切分,而是强调SOC(剩余电量)随时间动态变化,谁在某个时段用得多,谁的等效占用就多,因此SOC轨迹的优化在日前计划里特别重要——它决定了储能一天内“立场的分配”。
1.3 MPC协同方案的框架
MPC在这套系统里的角色不是替代日前优化,而是作为日内层的核心控制器。它做的事是:在当前时刻k,读取系统实际状态(尤其是储能SOC、实际光伏/负荷功率),获取未来一段时间(预测时域N)的预测数据(修正后的光伏/负荷/电价),然后在线求解一个有限时域开环优化问题,得到从k到k+N-1的控制序列,但只执行当前时刻的控制量。到k+1时刻,状态更新、预测滚动、重新求解,如此反复。
之所以选MPC而不是简单的规则控制或PID,是因为MPC能天然处理多变量耦合、约束和预测信息。储能充放电、联络线功率、用户购售电是强耦合的,用规则很难兼顾。而MPC把问题形式化成了“有限时域优化”,约束直接嵌在模型里,非常契合这个场景。这里我采用的标准做法是:日内MPC以日前计划的联络线功率和储能出力为参考输入,通过目标函数中的二次惩
