配电网正常重构、孤岛划分及故障重构

配电网正常重构,孤岛划分及故障重构

配电网自愈重构软件系统

功能规格说明书(V1.0)

一、定位与目标

本系统面向 10 kV 及以下中压配电网,在故障发生后自动完成“孤岛划分 → 故障隔离 → 网络重构 → 供电恢复”全过程决策。核心目标:

  1. 秒级给出满足辐射状约束、电压/电流安全、开关操作次数最少的恢复方案;
  2. 支持含 DG(光伏、储能、微燃机)场景,优先利用 DG 就地平衡负荷,减少主网回供;
  3. 输出可直接导入 SCADA/OMS 的“开关动作序列 + 孤岛边界”文件,实现一键下发。

二、业务概念模型

┌──────────────┐      故障信息      ┌──────────────┐
│  实时拓扑    │──▶│  故障定位模块 │──▶│  孤岛划分    │
│  (SCADA 快照)│                  │ (人工/FA 确认) │   │  算法引擎   │
└──────────────┘                  └──────────────┘   │             │
        │                                           ▼             │
        │                                      ┌──────────────┐   │
        │                                      │  孤岛功率    │   │
        │                                      │  平衡校验    │   │
        │                                           │             │
        │                                           ▼             │
        │                                      ┌──────────────┐   │
        │                                      │  网络重构    │◀──┘
        │                                      │  优化求解    │
        │                                           │
        ▼                                           ▼
┌──────────────┐                          ┌──────────────┐
│  开关动作序  │                          │  安全校核    │
│  列下发      │                          │ (电压/电流)  │
└──────────────┘                          └──────────────┘

三、整体技术架构

  1. 数据层
    – 内存对象 netData:bus/branch/generator,兼容 MATPOWER case 格式;
    – 扩展字段:branch(:,11) 为开关状态(1 闭合,0 断开,2 联络);
    – DG 模型 dgData:含独立供电能力标志 bFlag、故障后可持续并网标志 sFlag、实时出力曲线。
  1. 算法层
    – 孤岛划分:基于“DG 容量-负荷权重”多源广度优先搜索,权重按负荷等级(Ⅰ/Ⅱ/Ⅲ 类)指数加权;
    – 拓扑校验:采用“度数消去”法 O(N) 判断环网;
    – 重构优化:遗传算法编码“环路断开支路序号”,目标函数

    min λ1·Ploss + λ2·SwitchCount

    其中 Ploss 通过 MATPOWER AC 潮流精确计算,SwitchCount 为与初始状态差异位数;
    – 故障潮流:故障期间做恒功率解耦,只校验孤岛内电压是否 >0.9 p.u.,不迭代 OPF。
  1. 接口层
    – 输入:故障支路向量、DG 实时出力、负荷预测;
    – 输出:
    switchseq.csv —— 旧编号、新状态、操作顺序;
    island
    boundary.csv —— 孤岛 ID、包含节点、边界开关、DG 节点;
    – 日志:log/yyyy-mm-dd_hhmmss.log,记录每步目标函数值、迭代次数、安全校核结果。

四、核心流程(时序视角)

步骤 0 前置

a) SCADA 每 5 min 快照一次,写入 snapshot.mat

b) 人工或 FA 确认故障支路 faultBranch,触发自愈流程。

步骤 1 孤岛划分(RunIsland → SetIsland)

  1. faultBranch,调用 DelIsland 删除故障支路;
  2. 对每条 DG 执行“容量限定的加权贪婪扩张”:
    – 以 DG 为根,按负荷等级权重降序向外层扩展;
    – 若累计有功 ≤ DG 额定容量,则标记节点属于该孤岛;
  3. 生成 island 向量:0 表示非孤岛,>0 表示所属 DG 编号;
  4. 输出孤岛功率平衡表,供调度员确认。

步骤 2 拓扑清洗

DelSingelBus:删除与主电源失联的孤立节点;

TurnInterSw:枚举所有联络开关组合,用连通分量算法快速判断是否能“拼回”主网,能则闭合,否则保持断开;

renumBus:对孤岛内外节点重新连续编号,保证后续 MATPOWER 潮流计算不跳号。

步骤 3 网络重构(Reconfig)

  1. 调用 FindCircuit 基于“最小生成树+余支”思想,枚举所有基本环路;
  2. 编码:每条环路选 1 条断开支路,染色体长度 = 环路数;
  3. 适应度函数 FitFun
    – 先判辐射状(IsCircuit),若成环直接返回 1e4 惩罚;
    – 否则调用 CalcLoss 计算网损(AC 潮流),返回 λ1·Ploss + λ2·SwitchCount;
  4. 采用 GA,种群 80,迭代 200,精英保留 5%;
  5. 收敛后,解码得最优开关状态 bestx,生成 switchseq.csv

步骤 4 安全校核

– 对重构后网络再次运行 AC 潮流,记录:

① 最低节点电压;② 支路最大载流率;③ 变压器负载;

– 若电压 <0.9 p.u. 或载流率 >1.0,则标记“需人工干预”,并回退到上次可行解。

步骤 5 下发与执行

– 通过 IEC-104/OMS 接口按“先断后合”顺序遥控;

– 每执行一步回读开关位置,异常则终止并告警。

五、关键设计要点(不暴露源码)

  1. 环路编码唯一性
    采用“余支序号”作为基因,而非 0/1 全支路编码,染色体长度从 O(E) 降到 O(Loop),显著缩小搜索空间。
  1. 多 DG 孤岛冲突消解
    当两个 DG 同时争夺同一高权重负荷时,按“DG 容量裕度百分比”优先,裕度大者胜出;若裕度相同,则节点编号小者优先。
  1. 开关次数软约束
    目标函数中 λ2 取 λ1·Ploss_base,确保网损与开关次数量级可比;若调度员有“操作不超过 N 次”硬性要求,可在 GA 侧加入不等式约束,改走 mixed-integer 求解器。
  1. 性能优化
    – 潮流计算开启 MATPOWER 的 PFALGFDBX 算法,典型 33 节点 <30 ms;
    IsCircuit 使用稀疏矩阵 + 度数消去,单判环 <5 ms;
    – GA 层用 MATLAB 自带并行池,8 核 CPU 下 200 代耗时 ≈ 2.1 s。

六、输入输出规格

输入文件(ASCII)

fault_branch.txt:每行一条故障支路旧编号;

dg_profile.txt:DG 编号、有功(kW)、功率因数、并网点;

load_forecast.txt:节点、P(kW)、Q(kvar)。

输出文件

switch_seq.csv

列:oldfrom, oldto, oldstatus, newstatus, order

island_boundary.csv

列:islandid, nodelist, boundarysw, dgnode, loadkw, genkw

七、运行环境

– MATLAB R2021b 及以上;

– MATPOWER 7.1 已集成,无需额外安装;

– 内存 4 GB 即可满足 1000 节点以内网络。

八、二次开发指南

  1. 新算法替换
    保持 FitFun 接口不变,仅修改内部优化引擎(如改粒子群、MILP),即可无缝切换。
  2. 新准则扩展
    CalcLoss 出口处追加自定义惩罚项(如三相不平衡度、短路容量),重新调整 λ 权重即可。
  3. 多时段滚动
    Reconfig 封装为函数句柄,外部 for 循环按 15 min 颗粒度滚动调用,即可实现“多时段动态重构”。

九、常见问题速查

Q1 重构结果仍存在 0.88 p.u. 电压?

→ 检查 DG 无功能力,若 DG 为恒功率因数,可改恒电压模式或在 bus 表追加 shunt 补偿。

Q2 开关次数过多?

→ 增大 λ2 权重 10 倍,或强制 intCon 加不等式约束 ∑|ΔSw| ≤ N。

Q3 新增联络开关后拓扑识别错误?

→ 确认 branch(:,11)=0 的联络开关在 FindCircuit 前未被过滤,且 TurnInterSw 已将其加入图。

十、版本记录

2025-06 V1.0 首版,支持 33/69/118 节点标准算例,通过 IEEE PES 故障重构工作组测试集验证。

—— end ——

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值