资讯详情

资讯详情

量测稀疏条件下的低压配电网接地监测:基于WLS与蒙特卡洛的性能评估

做过低压配电网仿真的人都有这种体会低压台区是一个典型的信息黑洞。变压器出口通常还能装上监测终端可电缆一甩出干路往各分支一走基本就再也拿不到实时量测数据了。偏偏低压配电网又是直接面对用户的“最后一公里”单相接地故障频繁发生一旦出现异常运维人员往往只能靠用户报修和逐段排查去定位。我最近在解决这个问题时围绕一个很具体的场景做了一套完整的评估在一条径向低压测试馈线上利用WLS状态估计器给单相接地低压电网监测方案做性能分析并且在Matlab里用蒙特卡洛方法把测量误差的随机特性系统性地纳入了实验。这篇文章就把整套方案的模型、实现和结果拆开来聊聊适合正在做低压配电网状态估计、故障监测算法或者台区智能化改造的工程师参考。这里要提前说清楚一个事实低压配电网的状态估计跟输电网里面那些经典状态估计器根本不是一回事。输电网里量测冗余度很高量测精度也不错但低压台区往往只有两三个末端量测点误差还大。所以与其说这是一个标准的状态估计应用不如说是一场在“量测极度稀疏”条件下信息推断实验。我在做这套仿真之前也踩过不少坑下面从问题背景讲起。1. 低压配电网的“信息黑洞”为什么状态估计在这里迟迟推不开1.1 低压网络与输电网的本质差异低压配电网通常指400V/230V三相四线制或者单相220V系统拓扑主体是径向结构从配电变压器低压母线向外辐射经过主干线、分支线到达用户计量箱。跟输电网相比有三点差异是决定性的。第一量测冗余度极低。输电网的变电站里有完善的监控系统母线电压、线路功率、开关状态都有采集甚至还有冗余。低压台区里配电变压器低压侧有时会装智能配变终端但支路上几乎没有任何传感器就算装了智能电表也是在用户侧而且抄表周期长、数据同步性差很难直接拿来当实时量测。第二线路的R/X比值很高。低压电缆和架空线的电阻往往比电抗大得多线路电阻与电抗的比值常常在1到3之间甚至更高而输电网R/X比往往远小于1。这就意味着低压网络的电压损耗受有功影响很大不能用输电网惯用的解耦简化模型。很多状态估计器在输电网里好用搬到低压网络上就开始不收敛或者估计偏差很大。第三负荷随机波动和三相不平衡。低压台区大量接的是单相负荷三相电流不可能平衡再加上居民用电行为高度随机每个节点的等效负荷特性时刻在变。测量误差的“随机性质”也因此被进一步放大——不仅是传感器噪声还有数据不同步带来的等效误差。1.2 单相接地故障监测为什么要押注状态估计单相接地是低压配电网中出现频率最高的故障形式。在TN系统中单相接地通常会发展为短路故障故障点电流很大但实际中电弧性接地、高阻接地的情况非常常见保护装置不一定能可靠动作同时故障支路定位难现场逐级拉闸排查费时费力。因此一个能够基于有限量测“看到”全网电压分布的监测方案很有价值。状态估计恰好可以承担这个角色借助有限的电压、功率量测通过WLS估计器推断所有节点的电压幅值与相角如果某个馈线段附近出现电压异常跌落或零序相关的特征就能给出告警。但问题在于低压网络的量测太少估计结果会被测量误差严重左右。到底这套方案在工程上可不可行误差到什么程度会失效需要定量评估。这就是我这次用蒙特卡洛方法做性能分析的核心动机。2. WLS状态估计器的数学内核与求解要点2.1 为什么用加权最小二乘而不是普通最小二乘WLS状态估计器解决的问题用一句大白话概括就是已知一批带有误差的量测值反推一组最“可信”的系统状态。假设量测方程为 z h(x) e其中 x 是待求的状态变量h(x) 是量测函数e 是零均值随机误差并且不同表计的误差方差已知。状态估计的目标是找到一个 x使得量测残差的加权平方和最小J(x) [z - h(x)]^T · W · [z - h(x)]这里的 W 是权重矩阵它并不是拍脑袋定的而是量测误差协方差矩阵 R 的逆矩阵。误差方差越小的表计在目标函数里的权重越大估计结果也就越信任它。普通最小二乘把所有权重都设为1在输电网量测冗余高时可以凑合但在低压配电网这种量测稀缺、表计精度差异明显的场景里权重设置直接决定了估计质量。我在代码里把不同类型的量测分成几组每组按仪表精度等级给定标准差然后统一换算成权重。2.2 状态变量与量测方程的选取对于这个径向低压馈线我把状态变量取为每个节点的电压幅值 U 和相角 θ参考节点变压器低压母线的相角固定为 0。为了贴合“单相接地”主题仿真中重点关注其中一相例如 A 相的电压状态建模时将该相线路和负荷单独抽出来形成单相径向馈线模型。这样做一方面简化了三相耦合带来的计算复杂度另一方面也符合故障监测方案在分相维度上工作的事实。量测方程包括两类。第一类是节点电压幅值量测h_U(x) U_i。第二类是支路功率量测。以节点 i 到 j 的支路为例若支路导纳为 g jb线路两端电压相角差为 θij θi - θj则支路有功和无功的表达式为P_ij U_i^2·g - U_i·U_j·(g·cosθij b·sinθij) Q_ij -U_i^2·b U_i·U_j·(b·cosθij - g·sinθij)这些公式是从交流潮流的基本关系推导来的在低压径向网络中同样适用只是由于R/X比值大不能省略实部导纳的影响。2.3 高斯-牛顿迭代与雅可比矩阵由于 h(x) 是非线性的WLS状态估计需要通过高斯-牛顿迭代求解。每次迭代需要计算雅可比矩阵 H即 h(x) 对 x 的偏导数并求解如下线性方程组Δx (H^T·W·H)^(-1) · H^T·W·(z - h(x)) x_new x_old Δx迭代持续到 Δx 的最大绝对值小于设定的阈值我一般取1e-5或者目标函数变化足够小。雅可比矩阵的每一项可以手动推导也可以用符号工具生成。在Matlab里我建议先把量测函数写成独立的函数文件再用解析法或中心差分求H这样后续改动模型会很方便。注意在量测稀疏时 H^T·W·H 可能接近奇异因此我通常对对角项加一个极小值来处理避免数值问题导致迭代崩溃。3. 径向低压测试馈线的仿真平台搭建3.1 测试馈线拓扑与电气参数设置我采用的是一条10节点的径向低压馈线模型0号节点是配电变压器低压母线作为参考节点从母线引出的主干线依次连接1到6号节点在3号节点上接一条5节点的分支线3-7-8在5号节点上再接一条3节点的分支线5-9。负荷节点设置在1、2、4、6、7、8、9等位置。线缆参数按典型低压铜芯电缆取值单位长度阻抗约 r0.02 Ω/kmx0.01 Ω/km线路长度从50米到200米不等。整体算例的基准容量取10 kVA基准电压取230 V。下面给出一组我在仿真中使用的关键参数方便复现时对照参数类别取值说明基准电压230 V单相模型基准容量10 kVA标幺制基础主干线长度200 m/段从母线到6号节点分支线长度80 m / 120 m3-7-8与5-9分支单位电阻 r0.02 Ω/km铜芯电缆近似值单位电抗 x0.01 Ω/km铜芯电缆近似值负荷功率范围0.5~3 kVA单相负荷这样一条馈线虽然规模不大但结构上已经包括了主干、分支、末端负荷三种典型特征足够用来评估监测方案的性能趋势。如果要换更大的系统只需要把节点支路数组替换成目标台区的拓扑参数代码主体不用改动。3.2 测量方案设计与仪表误差假设监测方案需要先定义“能测什么”。按照低压台区改造的实际情况我假设的测量配置是变压器低压母线上安装电压互感器和电流互感器可以测量母线电压幅值在主干线2、4、6号节点安装少量电压传感器在主干线首端和末端分别配置功率量测。用户侧智能电表的数据我不直接当实时量测用只作为负荷伪量测。每个量测点的误差按仪表等级设置。电压传感器的量测误差按0.5%标准差考虑功率量测误差按1%~2%标准差考虑伪量测的误差则明显更大标准差设为负荷真值的20%。这些误差在蒙特卡洛循环中会被反复抽样叠加。需要强调的是测量方案的设计会直接影响后续性能结论。如果量测点分布太集中比如全部放在母线附近那么馈线中段和末端的可观测性就很弱估计误差会大幅度增加。我在实验中特意对比了不同密度量测配置的效果这部分放到第6章展开。3.3 单相接地故障场景如何嵌入为了评估监测方案的性能我把A相接地故障放在两种位置一种是靠近馈线末端第6号节点下游另一种是分支线末端第8号节点。通过调节过渡电阻的值模拟金属性接地和高阻接地两种情况。故障后对应的故障相电压会发生跌落而由于仿真中使用单相模型故障节点的电压幅值会显著偏离正常运行值。状态估计器需要在这类场景下把这些异常节点识别出来。不过要特别注意状态估计本身假设系统处于稳态。当故障是间歇性电弧时电压波形含有大量非工频分量状态估计结果会失真。因此我的仿真场景限制在稳态高阻接地或金属性接地这是监测方案能发挥作用的前提条件也是工程上需要结合故障指示器一起使用的原因。4. 蒙特卡洛分析把随机测量误差真正放进实验里4.1 为什么必须用蒙特卡洛而不是一次仿真定结论许多人评估状态估计性能时习惯性地在某组固定量测误差下跑一遍看看估计误差有多大就完事了。这种做法在输电网量测充足时问题不大但在低压电网里非常危险。因为量测误差是随机的单次仿真得到的估计误差可能偏大或偏小几乎不能代表真实性能。用一个形象的比喻你不能因为某一次投篮进了三分就判定这个球员的三分命中率是100%需要统计几十上百次出手。蒙特卡洛方法做的就是这件事——构造大量随机误差样本重复状态估计最终从统计分布中得出结论。在Matlab实现中流程很简单先生成一次无误差的“真值潮流”然后在真值潮流对应的量测上叠加随机噪声得到一组模拟量测对模拟量测执行WLS状态估计记录估计值与真值的偏差重复这个操作N次最后对N次结果做统计分析。4.2 误差模型构造与仿真参数误差模型按照高斯白噪声处理即每个量测的误差采样值服从均值为0、标准差为σ_i的正态分布。σ_i的大小与仪表等级相关我在前面已经设定。伪量测由于本质是负荷预测值其误差并不严格服从正态分布但在缺少更好模型的情况下用20%标准差的高斯分布近似是目前工程上普遍接受的做法。蒙特卡洛仿真参数方面我取了500次随机样本。这里的样本数量不是拍脑袋定的我先后用N100、300、500、1000做对比观察到N≥500时估计误差均值和标准差的统计结果已基本稳定。如果项目时间紧N200左右也能得出大致的性能区间但如果要写报告或者做结论建议至少取500次并画出统计均值随N变化的收敛曲线作为样本量足够的证据。4.3 统计指标与输出形式对每次仿真我会记录各节点电压幅值估计误差、相角估计误差、目标函数值、故障节点电压估计值。N次结束后统计每个节点的幅值误差均方根值RMSE、最大绝对误差、平均偏差以及故障节点电压低于检测阈值的次数占全部仿真的比例。这个“检出率”是监测方案性能的关键指标它反映的是在测量误差干扰下方案仍然能正确告警的概率。低于90%的检出率说明当前测量配置不足以支撑故障监测需要增加量测点或者提高仪表精度。计算检出率时检测阈值的选取要看正常运行状态下电压估计误差的分布范围一般取稳态电压统计数据下0.1分位数作为下限避免正常波动引发误报。5. Matlab代码实现分模块拆解核心逻辑5.1 数据准备与真值潮流生成在Matlab中首先用结构体数组定义支路参数每条支路的起点、终点、电阻R和电抗X。然后用结构体定义节点类型和负荷数据。这里要注意Matlab的索引从1开始所以我会把变压器母线定义为1号节点后续节点由数组位置自然映射。接下来需要生成“真值潮流”。这一步其实可以用常规的牛顿-拉夫逊潮流程序或者直接在代码中调用现有的潮流函数我为了减少对第三方工具箱的依赖写了一个简单的潮流函数输入支路参数和负荷功率输出各节点电压与相角。真值潮流本身不包含测量误差它是蒙特卡洛实验的基准。实测量测数据的生成方式是在真值上叠加噪声在Matlab里可用 normrnd(0, sigma, size(...)) 生成噪声向量。这里有个小细节噪声每次循环都要重新生成一次不能放在循环外面。如果共用一组噪声那么所有蒙特卡洛样本实际上是同一随机实验的重复统计结果毫无意义。5.2 WLS迭代求解器的编程要点WLS迭代的代码结构建议写成函数形式输入量测向量z、权重矩阵W、拓扑参数和初值x0输出估计结果x_est和迭代信息。核心循环如下x x0; for iter 1:max_iter h measurement_function(x, branch_data); % 计算量测函数 H jacobian_function(x, branch_data); % 计算雅可比矩阵 G H * W * H; % 信息矩阵 g H * W * (z - h); % 右端项 dx G \ g; x x dx; if max(abs(dx)) 1e-5 break; end end在实际测试中我发现低压网络由于R/X比值大、量测稀疏信息矩阵G的条件数经常很差。为了稳定求解我对G的主对角线元素做了一个小幅增强例如乘上1.0001相当于在病态方程中加一个微小的正则项。这样不会显著改变估计结果但能避免出现NaN。5.3 蒙特卡洛循环与结果统计蒙特卡洛主循环也建议写成脚本外层循环控制随机实验次数内层调用WLS求解器N 500; rmse_U zeros(N, num_nodes); for k 1:N noise normrnd(0, sigma_vector); z_k z_true noise; % 生成模拟量测 x_est wls_solver(z_k, W, branch_data, x0); rmse_U(k, :) abs(x_est(1:2:end)) - abs(x_true(1:2:end)); end U_rmse sqrt(mean(rmse_U.^2, 1));统计完成之后我用直方图和箱线图展示各节点电压估计误差的分布。这些图非常直观如果误差分布集中在零点附近且散布小说明状态估计器的偏差小如果分布尾部明显拉长说明个别的极端误差会影响最终监测结论这正是随机误差对系统性能影响的直接证据。6. 性能评估结果与故障监测能力分析6.1 正常运行场景的估计精度在不发生故障的情况下我以部分关键节点的量测值输入WLS然后评估对全部未量测节点的电压估计能力。仿真结果显示在足够量测点配置下各节点电压幅值的RMSE约为0.3%到0.8%相角误差约在0.1度到0.4度之间。其中靠近母线侧的节点估计误差明显小于馈线末端的节点原因是末端节点离量测点远可观测性弱。这符合预期——状态估计本质上是在信息有限的情况下做推断信息量越少的区域不确定性越大。从这个结果能得到一个明确的工程结论光靠变压器出口和主干上两三个传感器只能把网络整体电压轮廓估到一个可接受的范围若想在末端实现精确到个位数的电压显示当前的量测密度不够。不要高估状态估计器的能力这一点整个行业都需要正视。6.2 单相接地故障场景的检出能力当接入单相接地故障后故障节点附近的电压幅值会出现明显变化。我预先根据正常运行状态下的电压统计范围选取告警阈值然后在500次蒙特卡洛仿真中统计故障节点电压低于阈值的比例。结果发现对于金属性接地故障节点电压跌落幅度远远超出测量误差范围检出率接近100%。但对于高阻接地过渡电阻约几百欧姆故障电压跌落幅度可能与仪表误差水平相当此时检出率显著下降甚至会低于70%。这个结论直接揭示了监测方案的适用边界高阻接地单相故障在低压电网中并不少见特别是在干燥路面、水泥地面接触的情况下。如果单纯依靠电压幅值状态估计很难可靠识别这类故障。一种改进思路是增加零序电压或电流量测因为它们对高阻接地的反应更敏感另一种是引入暂态特征检测。这些方向我已经放进了后续工作计划。6.3 量测配置对性能的影响我在同一馈线上测试了三套量测配置最少配置只有母线电压和首端功率、中等配置增加主干上2个电压量测、较完善配置再增加末端功率伪量测。计算结果非常直观最少配置下馈线末端的电压幅值估计RMSE超过2%高阻接地检出率不足50%中等配置下末端RMSE降到约1%高阻接地检出率提高到约65%较完善配置下末端RMSE降到约0.6%高阻接地检出率提高到约85%以上。这说明一个朴素但重要的道理状态估计算法本身很重要但量测配置才是决定监测方案性能上限的“天花板”。如果现场条件允许在馈线末端或者重要分支节点加装一只简单的电压传感器性能提升往往比把算法的迭代精度提高一个数量级更有效。7. 实操中的避坑清单与继续深入的方向7.1 权重矩阵与先验信息别在细节上翻车权重矩阵设置是非常容易出问题的地方。我在初版代码里曾经把所有量测的标准差都设成一样的结果估计器被那些误差很大的伪量测牵着鼻子走末端电压估算完全失真。后来我按仪表精度重新拨正权重效果立刻好转。建议的做法是把所有量测的标准差写在一个表格里然后让代码从表格自动生成权重矩阵而不是手工写死。这样可读性好后续换仪表精度时也方便修改。7.2 可观测性与伪量测的使用边界低压配电网的量测不足是常态伪量测即负荷预测值几乎是必需品。但伪量测也有陷阱它本身就是根据历史数据猜出来的估计值如果直接把它当作真值量测放进WLS会引入系统性偏差。我在实验中把伪量测的权重设置得很小但仍要小心因为伪量测误差不一定服从高斯分布当真实负荷偏离预测较多时会严重破坏估计结果。一个可行的缓解方案是做两层估计先用伪量测做一次预估计识别出明显异常的测量点再剔除这些点后重新估计。这些内容在原方案的基础上做了一些扩展对实际监测系统的工程化很有帮助。7.3 迭代收敛与数值稳定性低压网络R/X比值大加上量测稀疏信息矩阵病态问题比较突出。建议在每次迭代后检查电压幅值和相角是否落在物理合理区间发现越界就适当降低迭代步长或者重新调整初值。另外如果采用中心差分求雅可比矩阵步长取1e-6左右相对稳妥步长太大会引入数值噪声太小则差分结果被浮点精度吞噬。7.4 后续扩展思路这套仿真框架的价值在于可以快速验证各种监测方案的性能上限。它本身不要求非常复杂的模型却能把“量测误差随机性”这个最关键的因素量化清楚。如果想继续深入我打算在三个方向上扩展第一把单相模型扩展为真正的三相四线模型考虑中性线阻抗和接地阻抗对故障电压分布的影响第二引入时间序列数据发展动态状态估计在故障发生瞬间捕捉暂态特征第三把状态估计结果与故障指示器信息融合实现故障段定位。每一个方向都需要在现有蒙特卡洛框架下重新做大量随机实验但有了这套基础代码后续工作推进会轻松很多。最后分享一点个人体会用蒙特卡洛把随机误差跑完一遍之后我最深的感受是在低压配电网里做状态估计最大的敌人不是算法复杂度而是“数据质量太差”这件事本身。很多时候费了很大劲优化迭代和矩阵求解最后端到端性能的瓶颈还是在两端——量测布置不够、仪表精度有限。所以我建议所有做低压监测方案的团队在动手写复杂算法之前先老老实实做一遍这个小规模的蒙特卡洛性能评估用最简单的方式把量测方案的设计空间摸清楚。数据基础没有打牢再精巧的状态估计器也只是在误差的泥潭里打转。
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →