《微电网并离网控制与仿真系统工程理论基线(Baseline v1.0)》
封存级 TOC(连续树状结构)
0. 文档定位、封存声明与使用边界
├─ 0.1 文档性质与工程级别定义
│ ├─ Baseline / Design Basis / Control Constitution 的工程含义
│ ├─ 原则层 / 机制层 / 参数层 / 实现层的分层定义
│ └─ 本文档在 EMS / 仿真系统 / EPC 审图中的地位
├─ 0.2 封存原则
│ ├─ 允许演进:参数、实现方式、UI 表达
│ ├─ 禁止推翻:控制哲学、保护优先级、失败定义
│ └─ 版本升级触发条件(控制逻辑或保护逻辑变化)
└─ 0.3 适用系统边界
├─ 适用:AC Microgrid(Grid + Diesel + BESS + PV + Wind)
├─ 必须具备 PCC 且 PCC 可控
└─ 不覆盖:纯并网、HVDC-only、无 PCC 拓扑
1. 微电网的物理本质与控制问题重述
├─ 1.1 微电网与大电网的本质差异
│ ├─ Infinite Bus 假设在岛网侧的失效
│ ├─ 低惯量系统的敏感性来源
│ └─ 控制对象由“电压源”转为“功率平衡”
├─ 1.2 三大不可逃避工程约束
│ ├─ 功率平衡不可违反
│ ├─ 惯量缺失或不足
│ └─ 控制延迟(采样 / 滤波 / 执行)
└─ 1.3 稳定的工程定义
├─ 稳定 ≠ 静止
├─ 稳定 = 可控的动态过程
└─ 稳定 = Correct Failure(允许失败但必须正确)
2. 功率平衡:唯一的一阶控制真理
├─ 2.1 瞬时功率平衡方程(工程级)
│ ├─ 多电源并列功率求和
│ ├─ P_grid / P_dg / P_bess / P_load 符号体系
│ └─ 损耗项在仿真中的工程处理原则
├─ 2.2 功率不平衡的系统后果
│ ├─ 功率不平衡 → 频率漂移(df/dt)
│ ├─ 功率不平衡 → 电压下陷
│ └─ UVLS 触发的物理合理性
└─ 2.3 “不自动变稳”是正确设计
├─ 反对硬编码稳定
├─ 反对 UI 稳定而内核不守恒
└─ 稳定必须付出功率代价
3. 频率:状态量,而非控制目标
├─ 3.1 频率动态的物理来源
│ ├─ 等效摆动方程
│ ├─ df/dt 与等效惯量 H_eq
│ └─ 测量与滤波对频率显示的影响
├─ 3.2 RoCoF 的工程意义
│ ├─ 频差与变化率的本质区别
│ ├─ RoCoF 作为失稳先兆
│ └─ RoCoF 保护的合理性
└─ 3.3 稳频的真实手段
├─ 频率控制是功率控制的投影
├─ 强拉频率的系统风险
└─ 频率不可被命令,只能被响应
4. 惯量、虚拟惯量与频率支撑
├─ 4.1 真实机械惯量(柴油机)
│ └─ 慢响应但可持续
├─ 4.2 虚拟惯量(VSG / Grid-forming)
│ ├─ Droop 项
│ ├─ 阻尼项
│ └─ 慢积分恢复
└─ 4.3 虚拟惯量的工程边界
├─ SOC 约束
├─ 功率限幅
└─ 短期救场,长期回归调度
5. BESS:最强控制器,也是最危险的错觉
├─ 5.1 BESS 的双重身份
│ ├─ 快速功率平衡器
│ └─ 有限能量缓冲器
├─ 5.2 功率模型与符号约定
│ ├─ P_BESS > 0 放电
│ └─ P_BESS < 0 充电
├─ 5.3 SOC 动态与长期稳定性
│ ├─ SOC 演化公式
│ └─ 饱和与边界处理
└─ 5.4 常见工程错误
├─ 将电池当作无限电源
└─ 忽略 SOC 饱和导致假稳态
6. 柴油机系统:被低估的系统核心
├─ 6.1 柴油机真实工程约束
│ ├─ 启动延迟
│ ├─ 最小稳定负载
│ ├─ 爬坡率限制
│ └─ 热备用油耗
├─ 6.2 Droop 控制与参数范围
│ └─ 工程默认区间
└─ 6.3 柴油机与 BESS 的职责边界
├─ 瞬态由 BESS 承担
└─ 稳态由柴油机兜底
7. 可再生能源工程建模
├─ 7.1 光伏(PV)模型
│ ├─ 日内曲线
│ ├─ 云影扰动
│ └─ 可预测性假设
├─ 7.2 风电(Wind)模型
│ ├─ 随机过程
│ ├─ 高频扰动
│ └─ Gust 事件
└─ 7.3 可再生能源不承担的责任
├─ 不主稳频
└─ 不做并机裁决
8. 负载建模:真实系统的起点
├─ 8.1 负载非恒定的工程事实
├─ 8.2 随机波动建模(OU 过程)
│ ├─ τ(时间尺度)
│ ├─ σ(波动强度)
│ └─ 极值 Clamp
└─ 8.3 设备级负载事件
├─ Motor Start
├─ Crusher Cycle
└─ 阶跃与脉冲建模
9. PCC 并离网控制状态机
├─ 9.1 PCC 的电气与控制意义
├─ 9.2 状态机定义
│ ├─ Grid-connected
│ ├─ Islanded
│ ├─ Sync-check
│ ├─ Reclosing
│ └─ Tripped
└─ 9.3 “点了没合上”作为正确失败
└─ 条件不满足必须失败
10. 同步检查(Sync-check)
├─ 10.1 频率同步条件 |Δf| ≤ Δf_max
├─ 10.2 电压与相位条件 |ΔV| ≤ ΔV_max
└─ 10.3 合闸失败的解释框架
├─ Failure Mode 分类
└─ 日志与 UI 原则
11. Sync Assist:EMS 的行为边界
├─ 11.1 EMS 不强合闸原则
├─ 11.2 Sync Assist 控制逻辑
│ ├─ 调功率
│ ├─ 拉频率
│ └─ 达标后允许合闸
└─ 11.3 常见错误模式
├─ 过强控制导致振荡
└─ 忽略 SOC / DG 约束
12. 保护系统:高于 EMS 的最终裁决者
├─ 12.1 保护优先级
│ └─ Protection > Control > Dispatch > UI
├─ 12.2 保护机制集合
│ ├─ UF / OF
│ ├─ UV / OV
│ ├─ RoCoF
│ └─ UVLS
└─ 12.3 保护与 EMS 的协同边界
└─ EMS 不得对抗保护
13. Allow all-off 与热备用的工程取舍
├─ 13.1 Allow all-off = YES
│ ├─ 低油耗
│ └─ 高恢复风险
├─ 13.2 Allow all-off = NO
│ ├─ 热备用
│ └─ 更强恢复能力
└─ 13.3 工程默认选择逻辑
└─ 可控性优先于极致省油
14. 仿真系统工程设计原则(封存)
├─ 14.1 仿真不是为了“好看”
├─ 14.2 Correct Failure 的仿真定义
└─ 14.3 仿真与真实系统差异边界
├─ 允许差异
└─ 危险差异
15. Baseline v1.0 封存声明
├─ 15.1 不可变条款
├─ 15.2 演进规则
└─ 15.3 工程责任与使用声明
附录
├─ 附录 A|符号、变量与工程参数表
├─ 附录 B|常见错误建模方式清单(反例)
└─ 附录 C|工程默认参数建议区间(投标口径)
第 0 章|文档定位、封存声明与使用边界
(Baseline v1.0 · Mandatory Chapter · Must Not Be Skipped)
0.1 文档性质与工程级别定义
0.1.1 文档类型定义
本文档定义为:
- 工程理论基线(Engineering Baseline)
- 控制设计依据(Design Basis)
- 系统控制宪法(Control Constitution)
其性质明确 不是:
- 使用手册(User Manual)
- 教学材料(Tutorial)
- 学术论文(Academic Paper)
- 单一项目的临时设计说明
本文件的目标对象为:
- 微电网仿真系统设计者
- EMS 控制策略设计者
- EPC / 业主 / 审图工程师
- 产品级 EMS / 控制系统架构师
0.1.2 “Baseline”的工程含义
在本文档中,“Baseline”具有严格工程含义:
Baseline = 一组被明确封存的系统假设 + 控制原则 + 物理约束
任何实现、代码、参数调整
均不得违背该组原则
其核心特征包括:
- 可被引用(Referenced)
- 可被审计(Auditable)
- 可被继承(Inheritable)
- 不可被随意推翻(Non-negotiable)
任何后续系统版本(v2.0 / v3.0):
- 只能在 Baseline 基础上 演进(Evolution)
- 不允许在未声明的情况下 否定(Negation)
0.1.3 本文档在系统体系中的地位
在完整系统工程中,本文档所处位置如下:
┌─────────────────────────────┐
│ Regulatory / Grid Codes │
│ (IEEE, UL, IEC, etc.) │
└───────────────▲─────────────┘
│
┌───────────────┴─────────────┐
│ This Document │
│ (Microgrid Control Baseline)│
└───────────────▲─────────────┘
│
┌───────────────┴─────────────┐
│ EMS Control Logic │
│ (Algorithms / State Machine)│
└───────────────▲─────────────┘
│
┌───────────────┴─────────────┐
│ Simulation / Code / UI │
└─────────────────────────────┘
即:
- 代码必须服从本文档
- UI 不得“美化”违反本文档的行为
- 仿真失败若符合本文档逻辑,应被视为正确结果
0.2 封存原则(Baseline Lock Rules)
0.2.1 允许演进 vs 禁止推翻
本文档定义两类修改行为:
Allowed:
- 参数范围细化
- 控制算法实现优化
- 数值稳定性改进
- UI / 可视化增强(不改变内核逻辑)
Forbidden:
- 改写功率守恒逻辑
- 绕过并离网状态机
- 强制合闸忽略同步条件
- 通过硬编码“消除不稳定”
0.2.2 Baseline 版本升级触发条件
只有在以下情况出现时,才允许升级 Baseline 版本号:
- 系统控制哲学发生变化
(例如:从 Grid-following 转为 Grid-forming)
- 保护与控制的优先级关系发生变化
- 系统适用边界发生变化
(例如:从 AC-only 扩展至混合 AC/DC)
单纯的实现改进,不构成版本升级理由。
0.2.3 原则层 vs 实现层的严格区分
Principle Layer (Locked):
- 功率平衡是唯一一阶真理
- 频率是状态量,不是控制命令
- 合闸是结果,不是指令
- 保护系统高于 EMS
Implementation Layer (Flexible):
- 数值积分方法
- 控制参数具体取值
- UI 表现形式
- 日志与可视化方式
0.3 适用系统边界与明确不覆盖范围
0.3.1 本 Baseline 适用范围
本文档适用于以下系统类型:
- AC 微电网(50 / 60 Hz)
- 单 PCC 并离网系统
- 资源组合:
- Diesel Generator
- Battery Energy Storage System (BESS)
- Photovoltaic (PV)
- Wind
- Utility Grid
- 存在 EMS 级调度与控制
- 存在独立保护系统
0.3.2 明确不覆盖的系统类型
为避免误用,以下系统 明确不在本文档讨论范围内:
- 纯并网系统(无 Island mode)
- HVDC-only 微网
- 无明确 PCC 的分布式并列系统
- 单一电源 UPS 架构
- 仅用于演示或教学的理想化模型
0.3.3 仿真系统与真实系统的边界声明
本文档适用于:
- 工程级仿真
- 控制逻辑验证
- 策略与边界分析
但必须明确:
Simulation ≠ Reality
但:
违反物理直觉的仿真结果 ≠ 合格仿真
仿真允许简化,但 不允许违背守恒与控制因果关系。
0.4 强制阅读与引用声明
0.4.1 强制阅读条款
任何人若试图:
- 修改控制逻辑
- 扩展仿真功能
- 对系统行为作出解释
在未通读第 0 章的情况下,
其结论与实现均视为无效。
0.4.2 引用与责任声明
- 本 Baseline 可作为:
- 内部工程依据
- EPC 技术说明附件
- EMS 产品控制哲学文档
- 任何偏离本 Baseline 的实现:
- 必须显式声明
- 并承担由此产生的工程责任
第 1 章|微电网的物理本质与控制问题重述
(Baseline v1.0 · Core Theory Chapter)
1.1 微电网与大电网的本质差异
1.1.1 “无限母线”假设在微电网中的失效
在传统大电网分析中,常采用“无限母线(Infinite Bus)”假设:
- 频率恒定
- 电压幅值恒定
- 相角变化可忽略
该假设的工程前提是:
系统等效惯量 → 无穷大
系统短路容量 → 极大
单个扰动 → 对系统状态影响可忽略
微电网不满足上述任何一条。
在微电网中:
- 惯量低或不存在
- 短路容量有限
- 单个资源/负载的变化即可主导系统状态
因此,任何将大电网分析方法直接移植到微电网的做法都是工程错误。
1.1.2 低惯量系统的直接后果
低惯量意味着:
功率不平衡 → 频率立即响应
其工程表现为:
- 频率对负载/风功率扰动高度敏感
- RoCoF(df/dt)显著放大
- 传统“慢调度”策略失效
这也是为何在仿真中:
- 系统“看起来不稳”
- 频率持续摆动
并不代表系统设计错误,而是物理真实。
1.2 微电网的三大不可逃避约束
微电网控制问题可被压缩为三条不可绕开的工程约束。
1.2.1 约束一:功率平衡(Power Balance)
在任意时间尺度(ms–s–min):
$$∑Psources(t)=∑Ploads(t)+Ploss(t)\sum P_{\text{sources}}(t) = \sum P_{\text{loads}}(t) + P_{\text{loss}}(t)$$
工程解释:
- 不存在“先稳定、后补功率”
- 功率守恒不是策略,是物理定律
在仿真代码中,该约束体现为:
- 所有资源功率参与同一求和
- 频率由不平衡积分得到
- UI 不得掩盖不平衡
1.2.2 约束二:惯量缺失(Low / Zero Inertia)
资源惯量对比(工程视角):
Diesel Generator : 有限机械惯量
BESS (Inverter) : 电子惯量(可控)
PV / Wind : 零惯量
直接结论:
- 可再生资源不能“天然稳频”
- 所有稳频行为必须由控制系统显式提供
1.2.3 约束三:控制延迟(Control Latency)
任何控制闭环都存在:
- 测量延迟
- 滤波延迟
- 计算延迟
- 执行器延迟
工程后果:
- 不存在“瞬时完美控制”
- 过度激进的控制增益必然引发振荡
这解释了为何在仿真中必须:
- 限制 ramp rate
- 限制控制增益
- 接受短时偏差
1.3 “稳定”在微电网中的工程定义
1.3.1 稳定 ≠ 静止
在微电网中,“稳定”不等价于:
- 频率恒定在 60.000 Hz
- 功率曲线为直线
工程级稳定定义为:
系统在扰动后:
- 不发散
- 不触发不可逆保护
- 能回到可接受运行区间
1.3.2 稳定 = 可控的动态过程
可接受的稳定状态包括:
- 小幅持续振荡
- 频率围绕额定值缓慢摆动
- BESS / DG 周期性介入
这些行为在仿真中应被视为:
- 正常
- 真实
- 可审计
1.3.3 稳定 = 可接受失败(Correct Failure)
关键工程原则:
并非所有失败都是错误
在以下情况下,失败是正确的:
- 频差过大 → 拒绝合闸
- 同步未达标 → PCC 不闭合
- SOC 过低 → BESS 限功率
- RoCoF 超限 → 保护动作
这在控制哲学上意味着:
“系统拒绝执行不安全命令”
本身就是系统成功的表现
1.4 微电网控制问题的重新表述
1.4.1 错误的问题表述(应避免)
- 如何让频率永远是 60 Hz?
- 如何让系统看起来一直很稳?
- 如何让 UI 上没有红色告警?
上述问题会直接导向错误设计。
1.4.2 正确的问题表述(Baseline 采用)
- 在资源与负载不确定的情况下,
如何维持功率守恒?
- 在惯量不足的系统中,
如何限制 df/dt?
- 在保护优先的前提下,
如何最大化系统可用性?
1.4.3 控制目标的层级化表达
Level 1(物理):
- 不违背功率守恒
- 不违背保护边界
Level 2(控制):
- 限制频率与电压偏移
- 管理能量(SOC / Fuel)
Level 3(调度):
- 优化油耗
- 提高可再生消纳
Level 4(UI):
- 真实呈现系统状态
- 不掩盖风险
任何高层目标不得破坏低层约束。
1.5 本章结论(封存要点)
- 微电网不是缩小版大电网
- 功率平衡是唯一一阶真理
- 频率是状态量,不是命令
- 稳定是动态、不是静态
- 失败可以是正确结果
这些结论将作为后续所有章节的逻辑前提。
第 2 章|功率平衡:唯一的一阶控制真理
(Baseline v1.0 · First-Order Control Law)
2.1 功率平衡的工程级定义
2.1.1 功率平衡不是控制目标,而是物理约束
在微电网系统中,功率平衡不是“希望达到的状态”,而是:
一个在任何时间、任何工况下
都必须被满足的物理约束
其工程含义是:
系统不会“选择”是否满足功率平衡
系统只会用频率、电压、保护动作
来强制体现功率不平衡的后果
因此,任何控制策略的首要问题不是:
“我想让系统做什么”
而是:
“当前功率是否守恒?”
2.1.2 瞬时功率平衡方程(多源并列)
在本 Baseline 适用的微电网拓扑中,瞬时功率平衡表达为:
$$PDG(t)+PBESS(t)+PPV(t)+PWIND(t)+PGRID(t)=PLOAD(t)P_{DG}(t) + P_{BESS}(t) + P_{PV}(t) + P_{WIND}(t) + P_{GRID}(t) = P_{LOAD}(t)$$
其中:
P > 0 :向微电网供电
P < 0 :从微电网吸收功率
在仿真代码中,该约定体现在:
- BESS 充电为负功率
- Grid 反送为负功率
- Load 始终为正消耗
符号一致性是控制系统的生命线。
2.1.3 损耗项的工程处理原则
在高层控制与仿真中:
P_loss ≠ 0
但:
P_loss << 主功率项
工程处理原则为:
- 控制与稳定性分析:可忽略
- 能量与经济性分析:可引入等效项
Baseline v1.0 明确规定:
损耗不得被用作“吸收不平衡”的隐藏项
任何通过“虚构损耗”来消除频率漂移的仿真,均为错误建模。
2.2 功率不平衡如何转化为系统状态
2.2.1 功率不平衡 → 频率变化
在离网或弱网状态下,系统频率动态可近似表示为:
$$dfdt=Pimbalance2Heq⋅Sbase\frac{df}{dt} = \frac{P_{imbalance}}{2 H_{eq} \cdot S_{base}}$$
其中:
$$P_imbalance = ΣP_sources − ΣP_loads H_eq = 系统等效惯量 $$
工程解释:
- 不需要“命令频率变化”
- 频率变化是功率不平衡的自然结果
这也是为什么在仿真中:
- 负载波动 → 频率立即响应
- 风功率抖动 → 频率高频抖动
这不是数值噪声,而是物理真实。
2.2.2 功率不平衡 → 电压行为(等效)
在本 Baseline 中,电压采用工程等效处理:
- 不进行全电磁暂态仿真
- 电压偏差通过保护逻辑体现
即:
功率不足 → 电压下陷 → UV / UVLS
功率过剩 → 电压上升 → OV
重要原则:
电压不是被“稳住”的
而是通过负载切除或功率回收被纠正
2.2.3 功率不平衡 → 保护动作
当不平衡超出控制能力:
控制系统退出
保护系统接管
在代码与逻辑中表现为:
- UF / OF
- RoCoF
- UVLS
- PCC Trip
Baseline 原则:
保护动作不是“系统失败”
而是系统的最后一道成功防线
2.3 功率平衡在不同运行模式下的表现
2.3.1 并网模式(Grid-connected)
在并网状态下:
Grid ≈ 无限母线(近似)
功率平衡重写为:
$$PGRID(t)=PLOAD(t)−(PDG(t)+PBESS(t)+PPV(t)+PWIND(t))$$
工程含义:
- Grid 吸收所有剩余不平衡
- 微电网内部资源对频率影响被钳制
这解释了仿真中:
并网时频率快速回到 60 Hz
而不是控制系统“更聪明”。
2.3.2 离网模式(Islanded)
在离网状态下:
P_GRID = 0
功率平衡完全由内部资源承担:
$$PDG+PBESS+PPV+PWIND=PLOADP_{DG} + P_{BESS} + P_{PV} + P_{WIND} = P_{LOAD}$$
工程后果:
- 任意一个资源变化都会反映到频率
- BESS 与 DG 成为系统稳定核心
2.3.3 PCC 切换瞬间的功率重分配
在并离网切换瞬间:
P_GRID → 0 或 P_GRID ← 非零
如果没有提前调度:
功率不平衡 → 频率阶跃
这正是 Sync Assist 必须存在的原因:
不是为了“合闸”
而是为了在切换前重排功率
2.4 功率平衡视角下的各类资源角色
2.4.1 BESS:最快的功率调节器
优势:
- ms–s 级响应
- 可正可负
限制:
- 能量有限(SOC)
工程定位:
BESS = 瞬态功率平衡器
2.4.2 柴油机:稳态功率支柱
优势:
- 可长期供能
- 提供真实惯量
限制:
- 启动慢
- Ramp rate 受限
工程定位:
Diesel = 稳态功率与惯量锚点
2.4.3 可再生能源:扰动源 + 辅助供能
特征:
- 不可控
- 不可预测
工程定位:
PV / Wind = 功率注入源
不是控制资源
2.4.4 电网:条件性平衡器
并网:
- 吸收一切不平衡
离网:
- 完全不存在
工程结论:
不能假设 Grid 永远存在
2.5 常见错误功率平衡建模方式(必须避免)
2.5.1 用“频率钳制”掩盖不平衡
错误做法:
- 直接把 f 强制设为 60 Hz
后果:
- 功率不守恒
- 控制逻辑失真
2.5.2 用“虚拟损耗”吸收多余功率
错误做法:
- 引入未声明的损耗项
后果:
- 仿真看似稳定
- 工程结论完全错误
2.5.3 忽略负载波动
错误做法:
- Load 设为常数
后果:
- 频率行为失真
- BESS / DG 角色被低估
2.6 本章封存要点(必须继承)
- 功率平衡是唯一一阶控制真理
- 频率、电压、保护都是功率不平衡的“后果”
- 并网与离网的本质区别在于谁承担不平衡
- 任何掩盖不平衡的仿真都是错误仿真
第 3 章|频率:状态量,而非控制目标
(Baseline v1.0 · Frequency as a State Variable)
3.1 频率的物理来源与工程表述
3.1.1 频率的物理含义(而非控制含义)
在交流系统中,频率并不是一个被“设定”的量,而是系统功率平衡的结果。
工程等效表述为:
频率 = 系统角速度的群体行为
在微电网中,这一表述尤为重要,因为:
- 不存在天然的频率锚点
- 任意功率扰动都会立即反映到频率
因此,频率只能被观测、被响应,不能被直接命令。
3.1.2 等效摆动方程(工程级)
在离网或弱网条件下,系统频率动态可由等效摆动方程近似:
$$2Heq⋅dfdt=PimbalanceSbase2 H_{eq} \cdot \frac{df}{dt} = \frac{P_{imbalance}}{S_{base}}$$
其中:
H_eq : 等效惯量常数(s)
P_imbalance : 瞬时功率不平衡
S_base : 系统基准容量
工程解读:
- df/dt 不是噪声
- df/dt 是功率不平衡的“速度响应”
3.1.3 仿真中的频率积分逻辑(反向理解代码)
在仿真内核中,频率通常通过如下步骤演化:
Step 1: 计算 ΣP_sources − ΣP_loads
Step 2: 得到 P_imbalance
Step 3: 用等效惯量积分 df
Step 4: 得到 f(t+Δt)
关键 Baseline 约束:
任何“直接写 f = 60 Hz”的行为
都等价于破坏摆动方程
3.2 df/dt(RoCoF)的工程意义
3.2.1 为什么 RoCoF 比频差更危险
工程经验表明:
小频差 + 大 RoCoF > 大频差 + 小 RoCoF
原因在于:
- 保护装置对 RoCoF 极为敏感
- 逆变器同步与锁相对 df/dt 敏感
因此,微电网控制关注的核心不是:
“频率偏了多少”
而是:
“频率偏得有多快”
3.2.2 RoCoF 在低惯量系统中的放大效应
由于 (H_{eq}) 很小:
$$dfdt∝1Heq\frac{df}{dt} \propto \frac{1}{H_{eq}}$$
工程后果:
- 同样的负载阶跃
- 在微电网中引发更大的 df/dt
这也是为何在仿真中必须看到:
- 负载事件 → 明显频率尖峰
这是正确结果,不是数值不稳定。
3.2.3 RoCoF 与保护逻辑的关系
在 Baseline 中明确:
RoCoF 超限 → 优先触发保护
而不是:
“控制器再努力一下”
工程原则:
保护优先级高于任何稳频策略
3.3 稳频的真实手段:改功率
3.3.1 反直觉但真实的结论
在微电网中:
不存在“频率控制”
只有“功率控制”
频率的变化路径始终是:
功率变化 → df/dt → 频率变化
因此:
任何试图绕过功率直接修正频率的控制
都会在物理层面失败
3.3.2 正确的稳频路径(Baseline 认可)
检测频率偏移
→ 计算所需功率修正
→ 分配到可控资源(BESS / DG)
→ 等待频率自然回落
这一路径在仿真中体现为:
- BESS 快速正负功率
- DG 慢速爬坡
3.3.3 错误稳频路径(必须避免)
错误示例:
- 直接把 f 拉回 60 Hz
- 在 UI 层“修正显示”
- 忽略功率是否守恒
这些做法的共同问题是:
系统看起来稳
但功率账本是假的
3.4 并网条件下的“频率钳制”现象
3.4.1 并网 ≠ 频率控制更强
在并网模式下:
Grid ≈ 无限母线(工程近似)
这导致:
频率被外部系统“钳制”
但必须理解:
不是 EMS 更聪明
而是不平衡被外部系统吸收
3.4.2 仿真中的并网频率行为解释
在仿真中常见现象:
- 离网时频率摆动
- 合闸后频率迅速回到 60 Hz
正确解释为:
并网后 P_grid 承担全部不平衡
→ P_imbalance → 0
→ df/dt → 0
不是控制器突然“成功”。
3.5 频率与同步检查(Sync-check)的关系
3.5.1 同步检查使用频率,而非控制频率
Sync-check 的工程逻辑是:
判断当前系统状态是否安全
而不是:
强制系统进入安全状态
频率在 Sync-check 中的角色:
- 作为状态判据
- 而非控制输入
3.5.2 Δf 阈值的工程含义
∣Δf∣≤Δfmax|\Delta f| \le \Delta f_{max}
该条件意味着:
系统当前功率结构
已足够接近并网稳态
若不满足:
拒绝合闸 = 正确行为
3.5.3 合闸后频率“立即回 60 Hz”的误解澄清
工程澄清:
合闸 ≠ 频率被拉回
而是:
合闸 → 不平衡被 Grid 吸收
→ 频率自然回到额定值
如果在仿真中看到:
合闸后频率并未立刻完全重合
这并不一定是 Bug,可能是:
- 滤波窗口
- 数值积分平滑
- 并网功率仍在重分配
3.6 频率控制的工程边界条件
3.6.1 资源能力边界
稳频能力受限于:
- BESS 功率上限
- BESS SOC
- DG ramp rate
- DG 最小负载
任何超出这些边界的稳频需求:
都不应被“强行满足”
3.6.2 时间尺度边界
ms–s : BESS 主导
s–min : DG 接管
min+ : 调度与负载管理
混淆时间尺度是控制振荡的主要来源。
3.7 本章封存要点(必须继承)
- 频率是状态量,不是控制命令
- df/dt 是功率不平衡的速度体现
- 稳频的唯一手段是调功率
- 并网“稳频”是外部吸收不平衡的结果
- Sync-check 只判断状态,不强制修正状态
第 4 章|惯量、虚拟惯量与频率支撑策略
(Baseline v1.0 · Inertia and Frequency Support)
4.1 惯量的工程定义与真实作用
4.1.1 惯量不是“稳频能力”,而是“缓冲能力”
在工程语境中,惯量的作用可以概括为:
惯量 = 在功率不平衡出现时
延缓系统状态变化的能力
它不消除不平衡,只拖慢后果。
因此,任何将“惯量”等同于“稳频”的理解都是错误的。
4.1.2 真实机械惯量的来源
在本 Baseline 覆盖的系统中,真实惯量主要来自:
- 同步发电机转子(柴油机)
其工程特性包括:
- 自然存在(无需控制器)
- 与转速平方相关
- 对高频扰动具有天然低通滤波效果
这也是为何即便在高度逆变器化的系统中,仍建议保留至少一台同步机热备用。
4.1.3 低惯量系统的不可避免后果
当系统等效惯量很低时:
dfdt↑\frac{df}{dt} \uparrow工程表现为:
- 频率对负载阶跃高度敏感
- 风功率抖动直接映射到频率
- 保护动作概率显著提高
这解释了为何在仿真中:
“看起来很吵”的频率曲线
并不代表系统不可控
4.2 虚拟惯量(Virtual Inertia / VSG)的控制思想
4.2.1 虚拟惯量的本质
虚拟惯量并不是“制造惯量”,而是:
通过控制算法
让功率响应
在数学形式上
近似同步机行为
其核心思想是:
让逆变器对 df/dt 作出功率响应
4.2.2 典型虚拟惯量控制结构(工程级)
在工程实现中,虚拟惯量常被写成:
$$Pcmd=Kd⋅(f0−f)+Kdi⋅d(f0−f)dtP_{cmd} = K_d \cdot (f_0 - f) + K_{di} \cdot \frac{d(f_0 - f)}{dt}$$
其中:
K_d : 下垂(droop)增益
K_di : 虚拟惯量(阻尼)增益
工程解释:
- 第一项:处理稳态频差
- 第二项:抑制 df/dt(惯量感)
4.2.3 仿真中的等效实现方式
在当前仿真系统中,虚拟惯量的等效实现体现在:
- BESS 对频差的快速正负功率响应
- 对功率变化速率的限制(ramp / smoothing)
Baseline 认可以下等效做法:
不要求显式建模 dω/dt
但必须在功率层面体现其效果
4.3 下垂控制(Droop Control)的工程角色
4.3.1 下垂不是缺陷,而是并机条件
下垂控制的核心关系式为:
$$P=Pref+1Rp(f0−f)P = P_{ref} + \frac{1}{R_p} (f_0 - f)$$
工程含义:
- 频率允许偏移
- 换取多电源并机稳定
重要 Baseline 观点:
“零频差”并不是并机系统的目标
4.3.2 下垂参数的工程区间
经验工程区间(示例):
Diesel Generator : 3% – 5%
BESS (virtual) : 可更陡,但受限于 SOC
过陡的下垂会导致:
- 资源争抢
- 功率振荡
4.3.3 下垂与同步检查的关系
下垂用于运行阶段
Sync-check 用于并网前判定
二者不可混用。
4.4 虚拟惯量的工程边界与风险
4.4.1 能量约束:SOC 是最终裁判
虚拟惯量永远受限于能量来源:
- BESS SOC
- 充放电功率上限
工程结论:
虚拟惯量只能短期支撑
不能长期兜底
4.4.2 控制延迟与测量噪声
虚拟惯量高度依赖:
- 频率测量
- df/dt 估计
工程风险包括:
- 噪声放大
- 相位滞后
- 负阻尼
因此 Baseline 明确:
宁可虚拟惯量不足
不可虚拟惯量过强
4.4.3 与柴油机惯量的协同
正确的角色分工为:
DG : 提供真实惯量与稳态功率
BESS: 提供快速阻尼与瞬态功率
错误的设计是:
用 BESS 完全替代 DG 的惯量角色
4.5 不同时间尺度下的频率支撑策略
4.5.1 时间尺度划分(Baseline 锁定)
ms – s : 虚拟惯量 / BESS
s – min : 柴油机 ramp + 下垂
min – hr : 调度 / 负载管理
混淆时间尺度将导致:
- 控制打架
- 振荡
- 误判稳定性
4.5.2 仿真中时间尺度的体现
在仿真系统中应观察到:
- BESS 曲线快速起伏
- DG 曲线平滑、延迟
若看到:
DG 像 BESS 一样抖动
则为错误建模。
4.6 常见错误与反例(必须避免)
4.6.1 过度虚拟惯量
症状:
- 频率震荡放大
- 功率指令抖动
原因:
K_di 过大
4.6.2 把虚拟惯量当作稳态工具
错误:
- 用 BESS 长期维持频率
结果:
SOC 枯竭 → 系统失稳
4.6.3 忽略真实惯量的价值
错误:
- Allow all-off + 无热备用
后果:
恢复能力极差
4.7 本章封存要点(必须继承)
- 惯量的作用是延缓后果,而非消除不平衡
- 虚拟惯量是控制效果,不是真实惯量
- 下垂是并机稳定的必要代价
- BESS 负责快,DG 负责稳
- 时间尺度不可混用
第 5 章|BESS:最强控制器,也是最危险的错觉
(Baseline v1.0 · BESS as Fast Controller with Hard Energy Limits)
5.1 BESS 的工程定位与双重身份
5.1.1 BESS 不是“电源替代品”
在微电网中,BESS 常被误解为“万能稳态电源”。
Baseline 明确否定该理解:
BESS ≠ 可持续发电源
BESS = 快速功率调节器 + 有限能量缓冲
工程含义:
- BESS 解决“速度问题”
- 发电机解决“能量问题”
5.1.2 BESS 的双重身份定义
身份 A:瞬态功率平衡器
- ms–s 级响应
- 抑制 df/dt
- 吸收高频扰动
身份 B:有限能量仓
- 受 SOC 约束
- 受功率限幅约束
任何设计若只考虑身份 A 而忽略身份 B,必然在工程上失败。
5.2 BESS 功率模型与符号约定(封存)
5.2.1 功率符号与方向(必须统一)
本 Baseline 对 BESS 功率符号作出不可更改的定义:
P_BESS > 0 : 放电(向微电网供电)
P_BESS < 0 : 充电(从微电网吸收功率)
在仿真代码中,该约定体现在:
- 充电显示在 0 轴以下
- 放电显示在 0 轴以上
任何反向约定都会破坏功率账本一致性。
5.2.2 功率限幅(Instantaneous Constraint)
$$∣PBESS(t)∣≤PBESSmax|P_{BESS}(t)| \le P_{BESS}^{max}$$
工程意义:
- 稳频能力受瞬时功率限制
- 不能“无限大功率救场”
5.2.3 爬坡限制(Ramp Rate)
$$∣dPBESSdt∣≤RBESS\left|\frac{dP_{BESS}}{dt}\right| \le R_{BESS}$$
工程解释:
- 抑制控制振荡
- 模拟逆变器与控制延迟
在仿真中应观察到:
BESS 功率变化连续、但快速
5.3 SOC 动态:长期稳定性的裁判
5.3.1 SOC 演化方程(工程级)
$$SOC(t+Δt)=SOC(t)−PBESS(t)⋅ΔtEratedSOC(t+\Delta t) = SOC(t) - \frac{P_{BESS}(t) \cdot \Delta t}{E_{rated}}$$
符号解释:
放电(P>0) → SOC 下降
充电(P<0) → SOC 上升
5.3.2 SOC 约束的工程后果
$$SOCmin≤SOC(t)≤SOCmaxSOC_{min} \le SOC(t) \le SOC_{max}$$
当 SOC 触及边界时:
- BESS 必须限功率或退出控制
- 稳频能力立即下降
这是正确行为,不是控制失败。
5.3.3 SOC 与“假稳定”的关系
常见仿真陷阱:
频率长期稳定
但 SOC 单向漂移
工程判定:
这是不可持续系统
不是稳态
Baseline 要求:
任何稳态必须在 SOC 可接受区间内
5.4 BESS 在频率支撑中的角色分工
5.4.1 BESS 的正确职责
- 抑制 df/dt
- 缓冲负载与可再生波动
- 为柴油机争取时间
5.4.2 BESS 不应承担的职责
- 长期承担基础负载
- 替代柴油机稳态功率
- 独立完成并机稳定
这些职责一旦强加给 BESS,系统只会:
- 看起来稳定
- 实际不可持续
5.5 BESS 与 Sync Assist 的协同逻辑
5.5.1 Sync Assist 中 BESS 的作用
在并网前阶段:
目标:
- 缩小 Δf
- 降低 df/dt
BESS 的工程行为是:
- 根据频差注入或吸收功率
- 快速拉近系统状态
5.5.2 合闸并非 BESS 的“成功指标”
BESS 做了它该做的
但合闸仍可能失败
原因包括:
- SOC 不足
- DG 尚未就绪
- 频率仍不满足阈值
失败并不否定 BESS 的正确行为。
5.6 BESS 与柴油机的控制边界
5.6.1 正确的责任划分(封存)
BESS : 快速、短期、瞬态
Diesel: 慢速、长期、稳态
5.6.2 错误的责任倒置
错误:
- BESS 长期兜底
- Diesel 仅作备用
工程后果:
- SOC 枯竭
- 并网/恢复失败
5.7 常见错误模式与工程反例
5.7.1 用 BESS“抹平”所有波动
症状:
- 频率几乎不动
- BESS 功率高频来回
结果:
SOC 快速耗尽
5.7.2 忽略 SOC 的稳频设计
症状:
- 短期表现优秀
- 长期系统崩溃
5.7.3 在 UI 层掩盖 BESS 约束
错误:
- UI 显示稳定
- 内核已越界
Baseline 明确禁止。
5.8 本章封存要点(必须继承)
- BESS 是最快的控制器,但不是能源替代品
- 功率与能量双约束必须同时满足
- SOC 是长期稳定性的最终裁判
- BESS 负责瞬态,DG 负责稳态
- BESS 的“失败”往往是系统正确失败的一部分
第 6 章|柴油机系统:被低估的系统核心
(Baseline v1.0 · Diesel Generator as the Steady-State Anchor)
6.1 柴油机在微电网中的工程角色重申
6.1.1 柴油机不是“旧时代遗留”,而是稳态锚点
在高比例逆变器化的微电网中,柴油机常被误解为:
- 成本高
- 响应慢
- 应尽量减少运行
Baseline 明确指出:
柴油机的核心价值
不在于“快”
而在于“可持续、可预测、可兜底”
其工程角色是:
- 提供真实机械惯量
- 提供长期稳态功率
- 在极端工况下成为系统最后支撑
6.1.2 柴油机与逆变器资源的根本差异
Diesel Generator:
- 能量来源独立
- 功率持续时间理论上无限
- 惯量真实存在
BESS / Inverter:
- 能量有限
- 功率持续时间受 SOC 限制
- 惯量来自控制算法
任何试图让逆变器“完全取代”柴油机的设计,都必须在工程上给出同等的长期能量与惯量来源,否则不成立。
6.2 柴油机的真实物理与运行约束
6.2.1 启动延迟(Start Delay)
柴油机从停机到可并机状态,存在不可忽略的时间延迟:
- 机械启动
- 转速建立
- 电压/频率稳定
工程后果:
柴油机无法承担 ms–s 级的瞬态响应
在仿真中,该约束体现为:
- 启动命令 ≠ 立即供电
- 启动期间只能依赖 BESS
6.2.2 爬坡率限制(Ramp Rate)
柴油机功率变化速率满足:
$$∣dPDGdt∣≤RDG\left|\frac{dP_{DG}}{dt}\right| \le R_{DG}$$
工程含义:
- 防止机械与热冲击
- 限制调节速度
仿真中应观察到:
DG 功率曲线平滑、滞后
若出现:
DG 功率像 BESS 一样快速跳变
则为错误建模。
6.2.3 最小负载限制(Minimum Load / Wet Stacking)
柴油机存在工程下限:
P_DG ≥ P_min
原因包括:
- 燃烧不充分(Wet Stacking)
- 设备寿命问题
工程结论:
柴油机不能长期在“接近 0”功率运行
这也是 Allow all-off 策略必须慎用的原因之一。
6.2.4 热备用与怠速油耗(Idle Fuel Consumption)
当柴油机处于热备用状态时:
- 不承担主负载
- 仍有燃油消耗
工程取舍为:
油耗 ↑
换取:
- 快速接管能力
- 更低的系统恢复风险
Baseline 观点:
热备用是稳定性投资,不是浪费
6.3 柴油机 Droop 控制的工程意义
6.3.1 Droop 控制的基本形式
$$PDG=Pref+1Rp(f0−f)P_{DG} = P_{ref} + \frac{1}{R_p}(f_0 - f)$$
其中:
R_p : 频率下垂系数
6.3.2 Droop 的真实目的
Droop 的目的不是稳频,而是:
- 允许频率偏移
- 换取多机并列稳定
工程解释:
若频率被强制固定
多台机组将“抢功率”
6.3.3 Droop 参数的工程区间
典型工程区间:
R_p ≈ 3% – 5%
过小的 R_p(过陡 droop)会导致:
- 功率振荡
- 机组相互对抗
6.4 柴油机在不同运行阶段的职责
6.4.1 并网运行阶段
- 柴油机可停机或低负载
- Grid 吸收大部分不平衡
但 Baseline 强调:
并网 ≠ 永远并网
6.4.2 离网运行阶段
- 柴油机成为稳态功率支柱
- BESS 仅承担瞬态
6.4.3 并离网切换阶段
- 柴油机必须提前就绪
- BESS 在切换瞬间兜底
若在切换前:
柴油机未启动或未达最小负载
则系统将:
高度依赖 BESS
风险显著提高
6.5 柴油机与 BESS 的协同策略(封存)
6.5.1 正确协同模式
Step 1: BESS 抑制 df/dt
Step 2: 柴油机按 ramp 接管功率
Step 3: BESS 回撤至中性区
6.5.2 错误协同模式
错误 A:
- BESS 长期兜底
- DG 始终低负载
错误 B:
- DG 试图快速追踪扰动
两者都会导致:
系统不稳定或不可持续
6.6 Allow all-off 策略与柴油机角色
6.6.1 Allow all-off = YES
- 所有柴油机允许停机
- 系统完全依赖 BESS + RES
工程含义:
- 最低油耗
- 最低惯量
- 最低恢复能力
6.6.2 Allow all-off = NO
- 至少一台柴油机保持在线或热备用
工程含义:
- 油耗上升
- 稳定性与恢复能力显著提高
Baseline 工程默认:
Allow all-off = NO
6.7 常见柴油机建模错误(必须避免)
6.7.1 忽略最小负载
后果:
- 仿真中柴油机“完美”
- 实际设备寿命与可靠性严重受损
6.7.2 把柴油机当作快速调节器
后果:
- 机械应力
- 控制振荡
6.7.3 低估热备用价值
后果:
- 切换失败
- 恢复时间不可接受
6.8 本章封存要点(必须继承)
- 柴油机是稳态功率与真实惯量锚点
- 启动延迟、ramp、最小负载不可忽略
- Droop 是并机稳定的必要代价
- BESS 快、DG 稳,职责不可倒置
- 热备用是工程取舍,而非浪费
第 7 章|可再生能源的工程级建模方法
(Baseline v1.0 · Renewable Sources as Stochastic Power Injections)
7.1 可再生能源在微电网中的工程定位
7.1.1 可再生能源不是控制资源
在本 Baseline 中,PV 与 Wind 的工程定位被明确锁定为:
可再生能源 = 功率注入源(Power Injection)
而不是:
- 稳频资源
- 并机稳定裁决者
- 同步锚点
工程结论:
任何要求 PV / Wind “主动稳频”的系统
都必须额外引入可持续能量与惯量来源
否则不成立
7.1.2 可再生能源的两大工程特性
特性 A:不可控
- 功率由环境决定
- EMS 只能限发,不能造发
特性 B:不确定
- 存在统计波动
- 存在突发事件(云影、阵风)
这两点决定了其只能被动参与功率平衡。
7.2 光伏(PV)的工程建模原则
7.2.1 PV 的时间尺度特性
PV 的功率变化主要由以下因素主导:
- 太阳高度角(日内变化,min–hr)
- 云影遮挡(s–min)
工程结论:
PV 是“慢变化为主、偶发中速扰动”的资源
7.2.2 工程级 PV 功率模型
在仿真中,PV 功率通常表达为:
$$PPV(t)=Prated⋅fday(t)⋅(1−δcloud(t))P_{PV}(t) = P_{rated} \cdot f_{day}(t) \cdot (1 - \delta_{cloud}(t))$$
其中:
f_day(t) : 日内归一化曲线(0–1)
δ_cloud(t) : 云影衰减项(0–1)
Baseline 要求:
PV 模型必须包含时间相关性
禁止使用完全随机白噪声
7.2.3 PV 与频率的关系(澄清)
PV 本身:
- 不感知系统频率
- 不提供惯量
因此:
PV 功率变化 → 功率不平衡 → 频率变化
而不是反过来。
7.3 风电(Wind)的工程建模原则
7.3.1 风电是微电网中最危险的资源
Baseline 明确指出:
Wind 是微电网中
对频率扰动贡献最大的资源
原因包括:
- 高频抖动
- 强随机性
- 难以预测
7.3.2 风速与功率的非线性关系
工程真实关系为:
$$Pwind∝v3P_{wind} \propto v^3$$
工程后果:
- 小风速变化 → 大功率变化
- 高频功率抖动不可避免
7.3.3 工程级风电随机模型
Baseline 认可的工程建模方式包括:
- 平稳随机过程(低频背景)
- 叠加阵风事件(gust)
示例(概念):
$$v(t)=vmean+σW(t)+vgust(t)v(t) = v_{mean} + \sigma W(t) + v_{gust}(t)$$
$$Pwind(t)=f(v(t))P_{wind}(t) = f(v(t))$$
7.3.4 阵风(Gust)事件的工程意义
- 阵风不是异常
- 阵风是设计必须考虑的正常工况
工程后果:
- BESS 必须抑制 df/dt
- DG 不应试图快速追踪
7.4 可再生能源的“限发”而非“调度”
7.4.1 可再生能源的唯一主动控制手段
唯一可接受的主动控制:
- Curtailment(限发)
其工程目标是:
- 防止过频
- 防止功率过剩
而不是:
- 参与稳频
- 追踪负载
7.4.2 限发策略的触发条件
典型触发包括:
- 频率高于上限
- SOC 接近上限
- 系统即将并网
Baseline 强调:
限发是保护与稳定策略
不是经济优化手段
7.5 可再生能源与 BESS / DG 的协同关系
7.5.1 正确的功率分工
PV / Wind : 注入功率(不可控)
BESS : 吸收/补偿瞬态
Diesel : 承担稳态与惯量
7.5.2 错误的协同期望
错误:
- 让风电“稳频”
- 让 PV “兜底”
工程后果:
控制复杂度上升
系统稳定性下降
7.6 并离网切换中的可再生能源处理
7.6.1 离网瞬间的风险来源
- 风功率随机
- PV 无惯量
因此 Baseline 要求:
并离网切换前
必须确保:
- BESS 可用
- DG 就绪
7.6.2 并网前的可再生能源策略
- 适度限发
- 降低系统功率斜率
目的是:
缩小 Δf
而非追求最大出力
7.7 常见可再生能源建模错误(必须避免)
7.7.1 把可再生能源当作平滑资源
错误:
- 过度滤波
后果:
低估系统风险
7.7.2 把风电当作“可预测负载”
错误:
- 用慢变化模型代替随机过程
后果:
df/dt 被严重低估
7.7.3 在 UI 中“美化”可再生波动
错误:
- 为了好看隐藏抖动
Baseline 明确禁止。
7.8 本章封存要点(必须继承)
- 可再生能源是功率注入源,而非控制资源
- PV 以日内变化为主,风电以随机抖动为主
- 风是微电网中最危险的扰动源
- 可再生能源的主动控制仅限于“限发”
- 稳定性必须由 BESS 与 DG 提供
第 8 章|负载建模:真实系统的起点,而非背景板
(Baseline v1.0 · Load as the Primary Disturbance)
8.1 负载在控制理论中的根本地位
8.1.1 负载不是“被满足的对象”,而是“系统扰动源”
工程上常见误区:
负载 = 已知、稳定、被动
Baseline 的立场:
负载 = 主动扰动源(Primary Disturbance)
原因:
- 负载变化直接引入功率不平衡
- 功率不平衡直接导致频率变化
- 频率变化触发所有控制器动作
结论:
如果负载模型是假的,所有稳频结论都是假的。
8.1.2 负载决定系统设计的下限
- 最坏负载变化幅度
- 最快负载变化速率
这两者直接决定:
- BESS 功率容量
- BESS 能量容量
- DG 最小在线策略
8.2 真实负载的工程特性分解
8.2.1 负载的三种时间尺度
(1) 慢变化(minutes–hours)
- 生产节拍变化
- 日内班次切换
(2) 中速变化(seconds–minutes)
- 工艺过程调整
- 设备群协同启停
(3) 快速扰动(sub-second–seconds)
- 电机启动
- 冲击性负载
工程要求:
负载模型必须至少覆盖 (2) + (3)
8.2.2 为什么“恒定负载”在工程上不可接受
恒定负载 →
系统无真实扰动 →
控制器永远表现良好 →
错误的安全感
因此 Baseline 明确禁止:
- 纯常数负载
- 仅靠 step 事件的负载
8.3 工程级负载随机建模(已实现内核)
8.3.1 一阶随机过程(OU / AR(1))模型
Baseline 采用的一阶随机负载模型:
$$dPL(t)=−1τ(PL(t)−μ)dt+σdW(t)dP_L(t) = -\frac{1}{\tau}(P_L(t) - \mu)dt + \sigma dW(t)$$
离散实现(概念):
$$P_L[k+1] = P_L[k] + (μ - P_L[k]) * Δt / τ + σ * sqrt(Δt) * N(0,1) $$
其中:
μ : 名义负载
τ : 相关时间常数
σ : 波动强度
8.3.2 工程意义解释
τ 小 → 快速、抖动型负载
τ 大 → 缓慢、平滑型负载
σ 大 → 工艺不稳定、冲击多
σ 小 → 工艺成熟、负载平稳
这三个参数比“负载功率值”更重要。
8.3.3 Clamp(边界约束)的必要性
工程上必须限制负载波动:
$$PL∈[Pmin,Pmax]P_L ∈ [P_{min}, P_{max}]$$
原因:
- 避免统计模型产生物理不可能值
- 防止仿真被极端值主导
Baseline 默认:
±25% 名义负载
8.4 负载突发事件建模(工程不可缺)
8.4.1 阶跃负载(Step Load)
- 设备上线/下线
- 生产线切换
特征:
- ΔP 明确
- 持续时间长
8.4.2 脉冲负载(Pulse Load)
- 电机启动
- 压缩机、破碎机冲击
特征:
- ΔP 大
- 持续时间短
- 对 df/dt 极其敏感
8.4.3 工程后果
BESS 必须承担 pulse
DG 不应追 pulse
若设计反过来:
系统必振
8.5 负载与频率的因果链(不可颠倒)
8.5.1 正确因果顺序
负载变化 →
功率不平衡 →
频率变化 →
控制器响应
8.5.2 常见错误因果假设
错误:
频率变化 →
负载变化
负载不会“因为频率”而主动变化。
8.6 负载建模对 BESS 设计的直接影响
8.6.1 BESS 功率容量由什么决定?
由负载变化速率决定
而不是由平均负载决定
8.6.2 BESS 能量容量由什么决定?
由负载不平衡持续时间决定
工程直觉:
快而短 → 功率型 BESS
慢而久 → 能量型 BESS
8.7 负载建模对 DG 策略的影响
8.7.1 高波动负载场景
- DG 必须热备用
- Allow all-off 不推荐
8.7.2 低波动负载场景
- DG 可间歇运行
- BESS 承担更多调节
8.8 UI / 仿真呈现的工程要求(封存)
- 负载必须“看起来在动”
- 但不应遮蔽关键资源
- 波动幅度需可解释
禁止:
- 为美观隐藏负载扰动
8.9 本章封存要点(必须继承)
- 负载是微电网的首要扰动源
- 恒定负载在工程上不可接受
- 随机过程比 step 更接近真实世界
- τ 与 σ 是负载建模核心参数
- 所有稳频设计都必须经受真实负载扰动
第 9 章|PCC 并离网控制状态机
(Baseline v1.0 · PCC State Machine as the Only Legal Switching Authority)
9.1 PCC 的电气与控制意义
9.1.1 PCC 不是“一个断路器”,而是系统边界
在微电网工程中,**PCC(Point of Common Coupling)**的真实含义是:
PCC = 微电网与外部电力系统的唯一合法电气边界
其工程地位决定了以下事实:
- 所有并网/离网行为必须在 PCC 发生
- 所有并网/离网判断必须围绕 PCC 条件
- 任何绕过 PCC 的控制路径在工程上均非法
9.1.2 PCC 的三重身份
1) 电气边界
- 电压、频率、相角的比较点
2) 控制边界
- 并离网状态机的唯一执行对象
3) 责任边界
- EMS、保护、设备厂商的责任分界点
Baseline 明确规定:
PCC 是状态机的对象
而不是策略的“可选项”
9.1.3 没有 PCC,就不存在“并离网控制”
以下系统 不适用本章所有逻辑:
- 无明确 PCC 的内部母线系统
- 永久并网、不允许解列的系统
- HVDC-only 拓扑(无 AC 同步问题)
9.2 状态机定义
9.2.1 状态机存在的唯一理由
并离网不是一个“动作”,而是一个过程。
过程 = 多条件约束下的有限状态转移
因此,状态机不是实现选择,而是物理必然。
9.2.2 状态集合(封存)
PCC 并离网控制状态机 必须且只能包含以下状态:
[Grid-connected]
[Islanded]
[Sync-check]
[Reclosing]
[Tripped]
任何缺失、合并、简化,都会导致工程语义不完整。
9.2.3 各状态的工程定义
(1) Grid-connected(并网态)
定义:
- PCC 闭合
- 微电网电压、频率由大电网主导
工程特征:
- Infinite Bus 假设成立
- 本地频率控制退居次要
(2) Islanded(离网态)
定义:
- PCC 断开
- 微电网成为独立 AC 系统
工程特征:
- 所有频率、电压责任转移至本地资源
- 惯量与功率平衡成为核心问题
(3) Sync-check(同步检查态)
定义:
- PCC 断开
- 系统主动尝试满足并网条件
工程特征:
- 不允许合闸
- 只允许调整功率与频率
重要:
Sync-check 是“准备态”,不是“动作态”
(4) Reclosing(重合闸进行中)
定义:
- 合闸命令已发出
- 等待断路器物理结果
工程特征:
- 不可重复发命令
- 不可撤销
(5) Tripped(跳闸锁定态)
定义:
- 保护动作导致 PCC 打开
工程特征:
- EMS 权限被暂时剥夺
- 必须人工或逻辑复位
9.3 状态转移逻辑(工程级)
9.3.1 合法状态转移路径
Grid-connected → Islanded
Islanded → Sync-check
Sync-check → Reclosing
Reclosing → Grid-connected
任何状态 → Tripped
9.3.2 非法状态转移(禁止)
Islanded → Grid-connected(跳过 Sync-check)
Sync-check → Grid-connected(跳过 Reclosing)
Tripped → Reclosing(无复位)
这些路径在工程上等价于:
无条件合闸
9.3.3 “状态 ≠ UI 按钮”
Baseline 强制原则:
UI 只能发出“请求”
状态机决定“是否执行”
任何 UI 直接驱动 PCC 的系统,均为设计缺陷。
9.4 “点了没合上”是正确失败
9.4.1 工程视角下的“失败”
在并离网控制中:
失败 ≠ 错误
正确的失败定义为:
条件不满足 → 不执行 → 给出明确原因
9.4.2 错误的“用户体验”理念
错误认知:
- 点了就该合上
工程现实:
如果点了就合上
说明前置条件形同虚设
9.4.3 合闸失败的工程合法性
合闸失败在以下情况下是必须发生的:
- |Δf| 超限
- |ΔV| 超限
- 相角不在窗口内
- DG/BESS 不满足可用条件
- 保护未复位
9.4.4 正确失败的系统价值
- 防止设备损坏
- 防止系统解体
- 防止“看似成功,实则灾难”
Baseline 立场:
宁可失败十次
不可错合一次
9.5 状态机与控制策略的边界
9.5.1 状态机不负责“把条件变好”
状态机的职责:
- 判断
- 切换
控制策略的职责:
- 调整功率
- 拉频率
- 管理 SOC
9.5.2 Sync Assist 只能存在于状态机外
Sync Assist ≠ 状态
Sync Assist = 控制策略集合
其作用对象是:
Islanded → Sync-check 阶段
而不是:
直接驱动 PCC
9.6 本章封存要点(必须继承)
- PCC 是并离网控制的唯一合法对象
- 并离网必须通过有限状态机完成
- Sync-check 是不可跳过的准备态
- “点了没合上”是正确、健康、工程级的失败
- UI 永远不能绕过状态机
第 10 章|同步检查(Sync-check)的工程标准
(Baseline v1.0 · Sync-check as a Necessary and Sufficient Gate)
10.1 同步检查的工程本质
10.1.1 Sync-check 不是“辅助功能”,而是合闸前的法律门槛
在并离网控制体系中:
Sync-check = 合闸的必要且不可绕过前置条件
任何绕过同步检查的系统,在工程与责任层面均视为:
非法合闸
10.1.2 同步检查解决的不是“好不好”,而是“能不能”
Sync-check 不回答:
- 现在并网是否经济
- 是否是最优时刻
Sync-check 只回答一个问题:
现在合闸是否会破坏系统
10.2 频率同步条件
10.2.1 频率差的工程定义
Δf=fmicrogrid−fgridΔf = f_{microgrid} - f_{grid}
工程约定:
- 正负号必须保留
- 不允许使用绝对频率替代差值
10.2.2 合闸允许频差窗口
∣Δf∣≤Δfmax|Δf| ≤ Δf_{max}
工程典型取值(参考区间):
Δf_max ≈ 0.05 – 0.2 Hz
Baseline 原则:
窗口大小是工程取舍
不是数学正确性问题
10.2.3 为什么“接近 60 Hz”不等于“可合闸”
反例说明:
Microgrid: 59.95 Hz
Grid: 60.05 Hz
虽然两者都“接近 60 Hz”,但:
∣Δf∣=0.10Hz|Δf| = 0.10 Hz
结论:
频率是否接近额定值
与是否同步
没有必然关系
10.3 电压同步条件
10.3.1 电压差的工程定义
$$ΔV=Vmicrogrid−VgridΔV = V_{microgrid} - V_{grid}$$
允许范围:
$$∣ΔV∣≤ΔVmax|ΔV| ≤ ΔV_{max}$$
典型工程区间:
±5% – ±10%(取决于标准与设备)
10.3.2 电压同步的重要性被普遍低估
频率不同步 → 功率冲击
电压不同步 → 电流冲击
后者对设备损害更直接。
10.3.3 电压“看起来差不多”是不可接受的判断依据
UI 观感 ≠ 电气安全
所有判断必须基于:
测量值 + 明确阈值
10.4 相角条件(扩展)
10.4.1 为什么相角必须被单独对待
即使满足:
|Δf| 合格
|ΔV| 合格
如果相角:
Δθ 过大
仍可能在合闸瞬间产生:
瞬时大电流
10.4.2 相角窗口的工程表达
∣Δθ∣≤θmax|Δθ| ≤ θ_{max}
典型工程区间:
10° – 20°
10.4.3 相角不是“可有可无”的高级选项
Baseline 立场:
- 有测量 → 必须判断
- 无测量 → 必须保守扩大 Δf / ΔV 窗口
10.5 同步检查的时间一致性要求
10.5.1 “瞬间满足”不等于“可合闸”
工程要求:
同步条件必须连续满足一段时间
表示为:
$$∣Δf(t)∣≤Δfmax∣ΔV(t)∣≤ΔVmax∣Δθ(t)∣≤θmaxfort∈[Tsync−ΔT,Tsync]|Δf(t)| ≤ Δf_{max} |ΔV(t)| ≤ ΔV_{max} |Δθ(t)| ≤ θ_{max} for t ∈ [T_sync - ΔT, T_sync]$$
10.5.2 工程意义
- 滤除瞬时抖动
- 避免“撞线合闸”
10.6 合闸失败解释体系
10.6.1 合闸失败不是一个状态,而是一类结果
合闸失败 ≠ 系统错误
而是:
条件未达成
10.6.2 Failure Mode 分类(必须)
- Frequency mismatch
- Voltage mismatch
- Phase angle mismatch
- Resource not ready
- Protection active
10.6.3 UI 与日志的解释原则
Baseline 强制要求:
- 不允许只显示“Failed”
- 必须指出失败类型
- 必须指向可操作改进方向
例如:
"Sync-check failed: Δf = 0.18 Hz > 0.1 Hz"
10.7 同步检查与 EMS 控制权边界
10.7.1 EMS 不能“帮你合闸”
EMS 可以:
- 调功率
- 拉频率
EMS 不可以:
- 忽略同步条件
- 强制闭合 PCC
10.7.2 Sync-check 是裁判,不是球员
- 不参与控制
- 不预测未来
- 只判断当前是否合法
10.8 本章封存要点(必须继承)
- Sync-check 是合闸的唯一合法门槛
- 频率、电压、相角必须同时满足
- “接近额定值”不等于“同步”
- 同步条件必须连续满足
- 合闸失败是正确、必要、可解释的结果
第 11 章|Sync Assist:EMS 的正确行为边界
(Baseline v1.0 · Sync Assist as a Constrained Power-Shaping Aid, Not an Authority)
11.1 EMS 不强合闸原则
11.1.1 “强合闸”在工程上没有合法定义
首先明确一个被频繁误用的概念:
“强合闸”不是一个工程动作
而是一个事故前兆
在任何合规系统中:
- 合闸只可能发生在 Sync-check 通过之后
- 不存在“跳过条件的合闸”
因此,EMS 在任何情况下都不具备“强合闸”权限。
11.1.2 EMS 的权限边界(封存)
EMS 可以:
- 改变功率分配
- 调整资源出力
- 影响频率、电压的演化路径
EMS 不可以:
- 改写同步判据
- 忽略保护状态
- 直接驱动 PCC 合闸
这不是设计选择,而是责任隔离。
11.1.3 为什么“自动帮你合上”是危险需求
看似合理的用户期望:
“系统能不能自己把频率调好,然后自动合上?”
工程风险在于:
- 用户开始信任“必然成功”
- 条件被误认为“已充分验证”
Baseline 结论:
合闸必须始终是“被允许”,而不是“被代办”
11.2 Sync Assist 控制逻辑
11.2.1 Sync Assist 的正确定义
Sync Assist = 一组受限的功率调节策略
其目标不是合闸,而是:
缩小 |Δf|、|ΔV|、|Δθ|
使系统“有可能”通过 Sync-check
11.2.2 Sync Assist 的作用阶段
Islanded → Sync-check
在以下阶段 必须禁用:
- Grid-connected
- Reclosing
- Tripped
11.2.3 Sync Assist 的三种合法手段
(1) 调功率平衡
- 增加或减少 DG 出力
- 释放或吸收 BESS 功率
本质:
通过功率平衡影响频率
(2) 拉频率(间接)
- 不直接改 f
- 只通过 ΔP 影响 df/dt
Baseline 明确禁止:
- 直接写频率状态量
- 任何形式的“频率钳位”
(3) 限制可再生扰动
- 临时限发 PV / Wind
- 降低随机扰动幅度
目的:
减少同步窗口内的波动
11.3 Sync Assist 的约束条件(必须同时满足)
11.3.1 能量约束(SOC)
- SOC 上下限必须优先于同步目标
禁止行为:
为拉频率而透支 SOC
11.3.2 机械约束(DG)
- 启动延迟不可跳过
- Ramp rate 不可违反
- 最小负载不可破坏
任何违反以上约束的 Sync Assist:
在工程上非法
11.3.3 稳定性约束(防振荡)
- 不允许高增益快速拉频
- 不允许频率来回跨窗口
否则将导致:
Sync-check 永远“差一点”
11.4 Sync Assist 的终止条件
11.4.1 成功终止
条件:
- 同步窗口连续满足
动作:
- Sync Assist 退出
- 等待人工或逻辑合闸请求
11.4.2 失败终止(正确失败)
条件:
- 达到时间上限
- 资源约束被触发
动作:
- Sync Assist 停止
- 明确给出失败原因
11.4.3 永不允许的行为
- Sync Assist 无限运行
- Sync Assist 隐式替代合闸
11.5 常见错误模式(必须封杀)
11.5.1 过强控制引发振荡
- 频率在阈值附近来回穿越
- 合闸窗口永远不稳定
原因:
控制器在“追门槛”
11.5.2 忽略 SOC / DG 约束
结果:
- 同步成功一次
- 系统随后崩溃
11.5.3 UI 误导为“自动并网”
错误 UI:
- “系统正在为你并网…”
正确表达应为:
“系统正在尝试满足并网条件”
11.6 Sync Assist 与 Sync-check 的权责分离
Sync Assist:改变状态
Sync-check :判断合法性
二者关系必须是:
单向影响
不可反向控制
11.7 本章封存要点(必须继承)
- EMS 永不拥有强合闸权限
- Sync Assist 只能“改善条件”,不能“替代判断”
- 所有同步都必须通过 Sync-check
- 能量、机械、稳定性约束优先于同步目标
- 正确失败优于隐性成功
第 12 章|保护系统:高于 EMS 的最终裁决者
(Baseline v1.0 · Protection as the Supreme Authority)
12.1 保护优先级原则
12.1.1 不可协商的权力排序
在任何合规的微电网系统中,权力排序必须封存为:
Protection > Control (EMS) > Dispatch > UI
解释如下:
Protection : 物理安全与设备生存
Control : 动态稳定与状态演化
Dispatch : 经济性与调度目标
UI : 人机交互与可视化
Baseline 明确:
任何下层系统都不得否决上层裁决
12.1.2 为什么 EMS 永远不能“压过保护”
常见错误观点:
“EMS 比保护更聪明”
工程现实:
- 保护是快速、确定、保守的
- EMS 是慢速、估计、策略性的
因此:
保护负责“不能发生”
EMS 负责“尽量不发生”
12.1.3 保护是“物理裁决”,不是“控制策略”
保护动作 = 物理事实的直接响应
而非:
优化、预测、学习的结果
12.2 保护机制集合
12.2.1 欠频 / 过频保护(UF / OF)
工程目的
- 防止系统失速
- 防止机械/电气超限
工程特征
- 动作快
- 不关心经济性
12.2.2 欠压 / 过压保护(UV / OV)
工程目的
- 防止设备绝缘破坏
- 防止电流异常放大
工程特征
- 电压是电流的前兆
- UV 往往比 OF 更致命
12.2.3 RoCoF 保护(df/dt)
工程目的
- 捕捉“失稳的趋势”,而非结果
工程意义
RoCoF 是“来不及稳住之前的最后预警”
12.2.4 UVLS(低压减载)
工程定位
UVLS ≠ 失败
UVLS = 延命
工程逻辑
- 保留部分系统
- 放弃部分负载
12.3 保护动作与 EMS 的协同边界
12.3.1 EMS 不得对抗保护
明确禁止以下行为:
- 保护跳闸后自动重合
- 保护触发后“强拉”频率
- 通过调度掩盖保护条件
12.3.2 保护动作后的 EMS 合法行为
EMS 可以:
- 记录事件
- 切换状态机至 Tripped
- 准备恢复条件
EMS 不可以:
- 否认保护动作
- 自动解除保护锁定
12.3.3 “保护误动”的工程处理原则
即便怀疑误动:
- 先承认
- 再分析
- 后修正
任何“先绕过再说”的行为:
在工程与法律上不可接受
12.4 保护与 Sync-check / Sync Assist 的关系
12.4.1 保护优先于同步
若保护未复位
Sync-check 必须失败
12.4.2 Sync Assist 不得掩盖保护风险
错误:
- 为通过 Sync-check 而压低报警
正确行为:
- 同步失败
- 明确提示保护条件未满足
12.5 保护系统的“保守性”是设计目标
12.5.1 为什么保护要“过于敏感”
- 偶发误动 < 一次未动作
12.5.2 “看起来太严格”的保护是正确的
保护不是为了舒适运行
而是为了最坏情况
12.6 UI 与日志中的保护表达原则
12.6.1 UI 不得弱化保护权威
禁止表达:
- “系统自动处理了一个小问题”
正确表达:
- “保护动作:欠频,系统已跳闸”
12.6.2 日志必须支持事故回溯
日志必须包含:
- 触发保护类型
- 测量值
- 时间戳
- 系统状态
12.7 本章封存要点(必须继承)
- Protection 是系统最高裁决者
- EMS 永不对抗保护
- 保护优先级高于所有控制与调度
- UVLS 是保命,不是失败
- 保守不是缺陷,而是设计目标
第 13 章|Allow all-off、热备用与工程取舍
(Baseline v1.0 · Operability First, Fuel Second)
13.1 Allow all-off = YES
13.1.1 工程定义
Allow all-off = YES
表示系统在满足以下条件时:
- 允许所有柴油机完全停机
- 系统仅由 BESS + 可再生能源支撑
这是一个显式允许的工程模式,而不是默认行为。
13.1.2 表面收益
- 最低燃油消耗
- 最低噪声与排放
- 系统“看起来”最先进
13.1.3 隐含代价(必须明确)
- 真实惯量为 0
- 所有频率稳定完全依赖控制算法
- 系统恢复能力显著下降
工程后果包括:
- df/dt 显著放大
- 对负载脉冲极度敏感
- 对风电 Gust 极度敏感
13.1.4 Allow all-off = YES 的适用前提(缺一不可)
- BESS 功率裕度充足
- BESS 能量裕度充足
- 负载波动可控
- 可再生扰动受限
若任何一项不满足:
Allow all-off = YES 在工程上不成立
13.2 Allow all-off = NO
13.2.1 工程定义
Allow all-off = NO
表示系统 至少保持一台柴油机在线或热备用,即使其不承担主要负载。
13.2.2 工程收益(Baseline 强调)
- 系统拥有真实机械惯量
- 频率变化被物理平滑
- 系统恢复能力显著提高
13.2.3 热备用的工程含义
热备用 ≠ 空转浪费
热备用 = 随时可接管的稳定锚点
热备用状态特征:
- 存在怠速油耗
- 不承担主要功率
- 可在极短时间内 ramp up
13.2.4 工程后果对比
Allow all-off = YES → 最低油耗 + 最低可控性
Allow all-off = NO → 略高油耗 + 显著更高可控性
Baseline 立场:
可控性优先于极致省油
13.3 工程默认值选择逻辑
13.3.1 Baseline v1.0 的默认立场(封存)
默认配置:
Allow all-off = NO
原因并非保守,而是:
这是跨项目、跨负载、跨气候
最不容易出事故的默认值
13.3.2 Allow all-off = YES 的使用规范
Allow all-off = YES
只能作为:
- 明确配置
- 明确风险告知
- 明确责任边界后的选择
不得作为:
- 系统默认
- UI 诱导选项
13.3.3 现场运行中的动态切换原则
- 高扰动期 → Allow all-off = NO
- 低扰动期 → 允许临时 YES
但必须满足:
- 有明确切换条件
- 有明确日志记录
13.4 常见工程误区(必须明确禁止)
13.4.1 把“全停柴油”当作系统成功标志
错误指标:
“今天柴油机一秒都没跑”
正确指标应为:
“今天系统在最坏扰动下仍可控”
13.4.2 把热备用视为“低效”
短期视角:
- 油耗 ↑
长期工程视角:
- 事故概率 ↓
- 恢复时间 ↓
- 法律风险 ↓
13.4.3 UI 暗示“全关更高级”
任何将 Allow all-off 描述为
“高级 / 智能 / AI 模式”
的设计
均违反 Baseline。
13.5 本章封存要点(必须继承)
- Allow all-off 是风险选项,不是默认选项
- 热备用是稳定性投资
- 真实惯量在极端工况下不可替代
- 可控性优先于极致省油
- 默认值必须选择“最不容易出事故”的方案
第 14 章|仿真系统工程设计原则(封存)
(Baseline v1.0 · Simulation as an Engineering Instrument, Not a Demonstration Tool)
14.1 仿真不是为了“好看”
14.1.1 仿真的首要目标
仿真的首要目标不是:
- 平滑曲线
- 稳定画面
- 用户舒适感
仿真的首要目标是:
暴露问题
包括但不限于:
- 频率超限
- df/dt 过大
- SOC 失控
- 合闸失败
- 保护动作
14.1.2 “不好看”的仿真往往更真实
工程事实:
真实系统 = 抖动 + 延迟 + 失败
因此:
看起来“糊”“乱”“抖”的仿真
往往比“丝滑”的仿真更接近真实
14.1.3 明确禁止的“美化行为”
- 为了好看降低扰动
- 为了演示隐藏失败
- 为了通过合闸硬改状态
以上行为一旦出现:
仿真结论全部作废
14.2 Correct Failure 的仿真定义
14.2.1 正确失败的工程定义
Correct Failure =
在条件不满足时
系统明确、不含糊地拒绝执行
14.2.2 Correct Failure 的三要素
1) 必须失败
2) 失败原因可追溯
3) 失败路径可复现
14.2.3 正确失败的典型场景
- 频率未同步 → 合闸失败
- SOC 不足 → Sync Assist 终止
- DG 未就绪 → 并网被拒
- 保护未复位 → 状态锁定
14.2.4 “强行成功”是仿真中的重罪
任何通过以下方式实现的“成功”:
- 强改状态变量
- 跳过状态机
- UI 直接驱动 PCC
在 Baseline 中被定义为:
伪成功(False Success)
14.3 仿真与真实系统差异边界
14.3.1 允许差异(可接受)
- 参数精度(简化)
- 电磁暂态(忽略)
- 设备内部控制细节
这些差异不会破坏:
因果关系
14.3.2 危险差异(禁止)
- 功率不守恒
- 无惯量系统“天然稳定”
- 合闸无条件成功
- 保护可被绕过
这些差异会:
直接误导工程决策
14.3.3 仿真必须保持的因果链
负载变化
→ 功率不平衡
→ 频率变化
→ 控制响应
→ 保护/状态机裁决
任何打断或倒置该因果链的实现:
均违反 Baseline
14.4 仿真系统的结构性要求
14.4.1 状态与显示必须分离
状态变量 ≠ UI 显示变量
UI 不得:
- 平滑真实状态
- 延迟真实状态
14.4.2 所有“判断”必须来自内核
- 合闸是否允许
- 保护是否动作
- Sync-check 是否通过
必须由:
仿真内核决定
14.4.3 UI 只能请求,不能裁决
UI → 请求
内核 → 判断
这是不可违反的结构性原则。
14.5 日志与可审计性要求
14.5.1 每一次失败都必须留下证据
- 时间戳
- 状态
- 关键测量值
- 判据结果
14.5.2 仿真必须可重复
- 相同输入
- 相同参数
→ 相同结果
任何不可重复的仿真结果:
不得用于工程结论
14.6 UI 与仿真的关系(封存)
14.6.1 UI 是“观察窗”,不是“控制器”
UI = 仪表盘
不是方向盘
14.6.2 UI 不得掩盖失败
- 不得自动消失报警
- 不得弱化保护信息
14.7 本章封存要点(必须继承)
- 仿真的目的在于暴露问题
- Correct Failure 是第一原则
- 所有稳定都必须付出代价
- UI 永远不能绕过内核
- 因果关系高于视觉体验
第 15 章|Baseline v1.0 封存声明
(Baseline v1.0 · Sealed Engineering Constitution)
15.1 不可变条款(Immutable Clauses)
以下条款自 Baseline v1.0 封存之时起,在任何系统形态、任何项目规模、任何 UI 或实现演进中,均不得被推翻、弱化或绕过。
1) 功率平衡是唯一的一阶真理
2) 频率是状态量,而非控制目标
3) 稳定必须付出功率与能量代价
4) Protection > Control > Dispatch > UI
5) PCC 是并离网的唯一合法对象
6) Sync-check 不可跳过
7) 合闸失败是正确行为
8) EMS 永不拥有强合闸权限
9) 可再生能源不承担稳频责任
10) BESS 不是无限能源
上述条款构成:
微电网并离网控制系统的“工程宪法”
任何与上述条款直接或间接冲突的设计、实现、演示或对外表述:
均被视为违反 Baseline
15.2 允许演进的内容类型(Evolution Rules)
Baseline v1.0 明确允许以下内容在不改变工程哲学的前提下演进:
15.2.1 参数层(Parameters)
- Δf_max、ΔV_max、θ_max
- Droop 系数
- SOC 上下限
- Ramp rate
前提条件:
- 不破坏因果关系
- 不掩盖失稳路径
15.2.2 实现层(Implementation)
- 代码结构优化
- 算法数值稳定性改进
- 性能与实时性增强
前提条件:
- 状态机逻辑不变
- 保护优先级不变
15.2.3 UI 与可视化层(UI / Visualization)
- 图表样式
- 交互方式
- 信息呈现顺序
前提条件:
- 不隐藏失败
- 不“看起来更稳”
15.3 禁止演进的内容类型(Forbidden Changes)
以下内容一旦发生变化,必须提升 Baseline 主版本号,且需重新封存:
- 控制哲学改变
- 权力排序改变
- 合闸合法性判据改变
- 保护与 EMS 边界改变
- PCC 地位改变
任何未经 Baseline 升级而进行的上述改动:
在工程与责任层面均视为无效
15.4 版本升级触发条件
15.4.1 必须升级 Baseline 的情形
- 新增控制权主体(例如第三方控制器)
- 改变并离网逻辑路径
- 允许 EMS 绕过 Sync-check
- 改变 Protection 的裁决地位
15.4.2 不需要升级 Baseline 的情形
- 调整默认参数
- 扩展 UI 功能
- 引入新的仿真场景
前提仍然是:
不改变不可变条款
15.5 工程责任与使用声明
15.5.1 工程责任边界
Baseline v1.0 仅定义:
- 工程逻辑
- 控制边界
- 责任分层
不替代:
- 设备厂家说明
- 当地电网规范
- 法律与合规审查
15.5.2 使用风险声明
任何脱离真实设备约束、
现场条件或保护配置的应用,
均可能导致系统行为偏离仿真结论。
因此:
仿真结论 ≠ 现场免责
15.6 封存声明(Final Seal)
《微电网并离网控制与仿真系统工程理论基线(Baseline v1.0)》
在此正式封存。
封存含义如下:
- 作为工程判断的最高参考
- 作为实现与演进的边界
- 作为责任划分的基础依据
自封存之日起:
任何后续设计、实现、演示、对外沟通
均应以本 Baseline 为前提
15.7 结语(非技术性,但不可省略)
一个系统是否“先进”
不取决于它是否永远成功,
而取决于它是否在该失败的时候失败。
Baseline v1.0
选择的是:
可解释的失败
而不是不可追责的成功。
附录 A|符号、变量与工程参数表
(Appendix A · Symbols, Variables & Engineering Semantics)
本附录用于 统一语义、防止误读、禁止“各说各话”。
A.1 功率相关符号(Power)
P_total 系统瞬时总功率平衡量
P_grid 并网点功率
> 0 : 从大电网取电
< 0 : 向大电网送电
P_BESS 电池功率
> 0 : 放电(向系统供电)
< 0 : 充电(吸收系统功率)
P_DG 柴油机有功输出
始终 ≥ 0
P_PV 光伏有功输出(不可控注入)
P_Wind 风电有功输出(随机注入)
P_Load 系统总负载
始终 ≥ 0
功率平衡封存表达式
$$Pgrid+PDG+PBESS+PPV+PWind−PLoad−Ploss=0P_{grid} + P_{DG} + P_{BESS} + P_{PV} + P_{Wind} - P_{Load} - P_{loss} = 0$$
⚠️ 任何仿真或实现中不满足该方程者,直接违反 Baseline。
A.2 频率与动态相关符号(Frequency & Dynamics)
f 系统频率(Hz)
f_grid 大电网频率
f_mg 微电网频率
Δf 频率差
= f_mg - f_grid
df/dt 频率变化率(RoCoF)
H_eq 等效惯量常数
A.3 电压与同步相关符号(Voltage & Sync)
V_mg 微电网电压(RMS)
V_grid 电网侧电压(RMS)
ΔV 电压差
θ 相角
Δθ 相角差
A.4 能量与状态变量(Energy & States)
SOC 电池荷电状态(0–1 或 %)
SOC_min / max SOC 上下限
State_PCC PCC 状态机状态
{Grid-connected, Islanded, Sync-check, Reclosing, Tripped}
A.5 控制与策略标志位
Allow_all_off 是否允许所有柴油机停机
Sync_Assist 同步辅助控制策略(非状态)
附录 B|常见错误建模方式清单(反例)
(Appendix B · Anti-patterns & Invalid Models)
本附录用于 审图、代码 Review、投标澄清。
B.1 功率守恒类错误
❌ 功率不平衡但频率不变
❌ 电池无限兜底
❌ 可再生功率“自动匹配负载”
工程判断:
违反能量守恒 → 全部结论作废
B.2 频率相关错误
❌ 直接写频率变量(f = 60)
❌ 合闸后频率瞬间“拉平”
❌ df/dt 被 UI 平滑隐藏
正确原则:
频率只能通过功率变化间接改变
B.3 BESS 相关错误
❌ 忽略 SOC 演化
❌ SOC 达极限但功率仍可输出
❌ BESS 长期承担稳态功率
工程后果:
伪稳态 / 不可持续系统
B.4 柴油机相关错误
❌ 忽略启动延迟
❌ 忽略最小负载
❌ 把 DG 当成快调节器
工程后果:
机械模型失真
B.5 并离网与 PCC 错误
❌ 无状态机直接合闸
❌ UI 按钮直驱 PCC
❌ 合闸失败不解释原因
工程判定:
非法并网逻辑
B.6 保护系统错误
❌ EMS 自动重合保护跳闸
❌ 保护被 UI 或策略屏蔽
❌ “保护误动,先绕过再说”
工程与法律后果:
责任不可辩护
B.7 仿真展示类错误(极其常见)
❌ 为“好看”降低扰动
❌ 永远成功的合闸演示
❌ 失败不留日志
Baseline 定义:
False Success(伪成功)
附录 C|工程默认参数建议区间(投标口径)
(Appendix C · Default Engineering Ranges for Bidding)
⚠️ 本附录 不是强制值表,
C.1 同步检查参数(Sync-check)
Δf_max 0.05 – 0.20 Hz
ΔV_max ±5% – ±10%
Δθ_max 10° – 20°
连续满足时间 2 – 10 s
C.2 BESS 参数
SOC_min 20% – 30%
SOC_max 85% – 95%
P_BESS_max ≥ 最大单次负载阶跃
能量容量 ≥ 预期最大不平衡持续时间
C.3 柴油机参数
最小负载 30% – 40% 额定功率
Ramp rate 5% – 10% P_rated / s
热备用油耗 5% – 15% 额定燃耗
C.4 频率控制(Droop / 虚拟惯量)
Droop 3% – 5%
虚拟惯量时间 0.5 – 5 s(短期)
C.5 负载建模参数
负载波动 σ 2% – 5% 额定负载
时间常数 τ 10 – 60 s
Clamp ±20% – ±30%
C.6 Allow all-off 默认建议
默认:Allow all-off = NO
仅在以下情况下允许 YES:
- BESS 功率与能量双裕度
- 可再生扰动受限
- 风险已告知并确认
C.7 投标与技术澄清使用原则(封存)
- 投标口径采用区间,不采用极值
- 所有参数必须可回溯至 Baseline 章节
- 不得为了“更好看”选取激进参数
📌 附录封存说明
附录 A / B / C
与正文具有同等工程效力
任何引用 Baseline v1.0 的项目:
必须同时接受正文与附录
附录 D|优化说明
1) 你输入参数后,怎么确认“配置正确”
1.1 第一层:守恒与边界(不看图也能判)
你先跑 2–5 分钟,逐项确认:
A) 功率守恒是否成立
供给侧(DG + BESS + PV + Wind + Grid)
是否能覆盖负载 + 损耗(若你有)
观察:频率不应该“无缘无故漂移到天边”
B) SOC 是否合理演化
放电时 SOC 下降
充电时 SOC 上升
且触到上下限会限幅(不会穿越)
C) PCC 状态机是否严格
不满足 Sync-check → 合闸必须失败
失败要能解释(Δf 超限等)
满足 A/B/C,才算“配置语义正确”。否则先别谈优化。
1.2 第二层:动态是否“像物理系统”
你看三件事(最关键):
1) 负载有波动 → 频率有响应(不一定大,但必须有)
2) BESS 扛瞬态,DG 扛稳态(时间尺度分工要对)
3) 可再生越抖 → 系统越难同步(合闸更难,不是更容易)
如果你看到“负载波动很大但频率一条直线”,那就是错误(要么内核被钳位,要么 UI/滤波掩盖了因果)。
2) 怎么发现“问题配置不正确”(快速定位法)
给你一个 症状 → 可能原因 → 该查哪里 的工程排查表(不依赖颜色)。
2.1 症状:频率长期漂移、越跑越偏
可能原因:
- 功率平衡长期有偏差(供给 < 负载)
- DG 最小负载/爬坡限制导致补不上
- BESS 功率限幅太小或 SOC 触顶/触底
该查:
- 负载均值 vs 总可供功率
- BESS Pmax / SOC 限
- DG Pmax / ramp / min load
2.2 症状:合闸永远失败(Δf 总是超限)
可能原因:
- Island 侧没有“可调频资源”(DG不在/太慢,BESS被限)
- Sync Assist 增益过小(拉不回来)
- 可再生/负载波动太大,窗口时间不够
该查:
- 是否 Allow all-off=YES + DG 全停 + BESS 受限
- Sync Assist 是否启用,且是否受 SOC/ramp 卡死
- Δf_max 太严格 或 连续满足时间过长(工程上过保守)
2.3 症状:合闸偶尔成功,但立刻又失稳/跳闸
可能原因:
- “撞线合闸”:窗口太窄或持续时间太短
- 合闸后控制切换不平滑(并网/离网控制权切换)
- 合闸后仍存在功率大偏差(瞬时潮流冲击)
该查:
- Sync-check 连续满足时间
- 合闸后控制模式切换(Grid-following/Island control)
- 合闸瞬间 ΔP 是否过大
2.4 症状:柴油用量飙升(你之前那个现象)
典型原因:
- PV/Wind=0 + Grid=OFF 时,系统只有 DG+BESS
- Allow all-off=NO → DG 必须在线(热备用/最小负载)
- BESS 为保持频率承担瞬态,但稳态能量必须由 DG 兜底
结果:DG 会承担“平均功率”,燃耗自然上去
一句话:这不是 bug,而是“能量守恒的正确惩罚”。
3) 如何判定“优化方向是对的”还是“看起来对”
你要用 三类指标,只看结果、不听解释。
3.1 正确性指标(Correctness Metrics)
这些不满足,任何优化都算失败:
- 功率不平衡不会被 UI 掩盖
- SOC 不穿越边界,且限幅后行为合理
- Sync-check 不通过就绝不合闸
- 保护动作不可被 EMS“压掉”
3.2 可控性指标(Operability Metrics)
这些决定“工程上好不好用”:
- 频率偏差峰值(|Δf| peak)
- RoCoF 峰值(|df/dt| peak)
- 合闸成功率(在合理窗口内)
- 恢复时间(偏差回到阈值内所需时间)
判断规则(工程直觉版):
同样的扰动下:
峰值更低 + 恢复更快 + 不触发保护
= 优化方向正确
3.3 代价指标(Cost-of-Stability Metrics)
用于验证“稳定必须付出代价”:
- 柴油燃耗(或运行时长)
- BESS 循环次数 / 平均功率(等价磨损)
- 可再生弃电(curtailment)
判断规则:
如果你让频率更稳,但代价没有任何上升
那十有八九是“作弊”(比如钳频、平滑、绕过状态机)
4) v6.3 下的“工程级操作流程”(你输入参数后就这么跑)
Step 1:基准场景(必须先过)
Grid=ON
PV/Wind 中等
负载中等波动
Allow all-off=NO
你要看到:
- 并网态频率稳定(接近电网)
- 切离网后频率可控但有动态
- Sync-check 不满足就不让合闸
Step 2:压力场景(验证正确失败)
Grid=OFF(或 Island)
PV/Wind 抖动加大
负载脉冲/阶跃增加
你要看到:
- 合闸更难(正确)
- 保护更容易动作(正确)
- 系统不会“自动变稳”(正确)
Step 3:优化迭代(只动一类参数)
每次只改一组:
A) Sync-check 窗口(Δf_max、持续时间)
B) Sync Assist 增益与限幅
C) DG ramp / 最小负载 / 热备用策略
D) BESS Pmax / SOC 窗口
否则你无法归因。
5) 你问的关键:合闸后频率是不是应该“立刻回到 60Hz”?
在 Baseline v1.0 里,答案是:不应该“立刻”。
正确行为应是:
- 并网成功后,频率逐步被电网“牵引”到 60Hz
- 但不应出现瞬间硬跳(那通常代表你在代码里强写了频率)
如果你看到“瞬间回到 60Hz”,大概率是:
- 频率状态被重置
- 或显示被钳位/替换成电网频率
工程上这会掩盖合闸瞬间的冲击与不平衡,属于你封存原则里明确反对的“假稳定”。
6) 给你一个“最小可用的判定清单”(你每次改完就对照)
[必过] 1) 负载扰动存在 → 频率响应存在
[必过] 2) SOC 演化方向正确,且不穿越
[必过] 3) Sync-check 不过 → 合闸必失败
[必过] 4) 优化越稳 → 必然付出代价(油耗/弃电/电池磨损至少其一上升)
[必过] 5) UI 不改变内核真实状态(不钳频、不重置、不隐藏)