基于结点电压法的配电网状态估计算法matlab仿真

目录

1.程序功能描述

2.测试软件版本以及运行结果展示

3.核心程序

4.本算法原理

4.1 结点电压法的基本原理

4.2 结点电压法在配电网状态估计中的应用

5.完整程序


1.程序功能描述

       基于结点电压法的配电网状态估计算法.对配电网实施有效控制和操作的前提是实时数据库中数据的可靠性和准确性。状态估计是一种利用测量数据的相关性和冗余度,应用计算机技术采用数学处理方法来对运行参数进行处理,以提高数据的可靠性和完整性,有效获得电力系统实时状态信息的方法。

2.测试软件版本以及运行结果展示

MATLAB2022a版本运行

3.核心程序

.......................................................................
    
    %计算雅可比矩阵
    %Jacobian = [Jacobian_1_1 Jacobian_1_2; 
    %            Jacobian_2_1 Jacobian_2_2; 
    %            Jacobian_3_1 Jacobian_3_2; 
    %            Jacobian_4_1 Jacobian_4_2; 
    %            Jacobian_5_1 Jacobian_5_2];
    
    [Jacobian_1_1,Jacobian_1_2] = func_Jacobian_1(Len_IVM,Num_Bus);
    
    [Jacobian_2_1,Jacobian_2_2] = func_Jacobian_2(V_est,Ang_est,G,B,Index_real_power_injection,FROM_BUS,Len_IRPI,Num_Bus);
    
    [Jacobian_3_1,Jacobian_3_2] = func_Jacobian_3(V_est,Ang_est,G,B,Index_reactive_power_injection,FROM_BUS,Len_IRP,Num_Bus);
    
    [Jacobian_4_1,Jacobian_4_2] = func_Jacobian_4(V_est,Ang_est,G,B,Index_real_powerflow,FROM_BUS,TO_BUS,Len_IRPS,Num_Bus);

    [Jacobian_5_1,Jacobian_5_2] = func_Jacobian_5(V_est,Ang_est,G,B,Shunt_Admittance,Index_reactive_powerflow,FROM_BUS,TO_BUS,Len_IRPF,Num_Bus); 

    
    % Measurement Jacobian, Jacobian..
    Jacobian = [Jacobian_1_1 Jacobian_1_2; 
                Jacobian_2_1 Jacobian_2_2; 
                Jacobian_3_1 Jacobian_3_2; 
                Jacobian_4_1 Jacobian_4_2; 
                Jacobian_5_1 Jacobian_5_2];
    Gm              = Jacobian'*inv(Error)*Jacobian;
    %计算误差
    r               = Values - h;
    %进行状态估计
    dE              = inv(Gm)*(Jacobian'*inv(Error)*r);
    Vector_est      = Vector_est + Step*dE;
    Ang_est(2:end)  = Vector_est(1:Num_Bus-1);
    V_est           = Vector_est(Num_Bus:end);
    Times           = Times + 1;
    Error_aim       = mean(abs(dE));
    errors(Times-1) = Error_aim;
    h_est{Times-1}  = h;
    pause(0.001);
end

disp('状态估计结果');
disp('网络节点 --- 电压幅度    --- 电压相位角度');
for m = 1:Num_Bus
    fprintf('%4d        ',m); 
    fprintf('%8.8f     ',V_est(m)); 
    fprintf('%8.8f  ',Ang_est(m)); 
    fprintf('\n');
end

figure;
subplot(211);
plot(1:Num_Bus,V_est,'-bs',...
    'LineWidth',1,...
    'MarkerSize',6,...
    'MarkerEdgeColor','k',...
    'MarkerFaceColor',[0.9,0.0,0.0]);
grid on;
xlabel('节点号');
ylabel('电压估计值');
subplot(212);
plot(1:Num_Bus,Ang_est,'-bs',...
    'LineWidth',1,...
    'MarkerSize',6,...
    'MarkerEdgeColor','k',...
    'MarkerFaceColor',[0.9,0.0,0.0]);
grid on;
xlabel('节点号');
ylabel('电压角度估计值');


figure;
plot(errors,'-bs',...
    'LineWidth',1,...
    'MarkerSize',6,...
    'MarkerEdgeColor','k',...
    'MarkerFaceColor',[0.9,0.0,0.0]);
grid on;
xlabel('迭代次数');
ylabel('状态估计误差');


figure;
subplot(211);
plot(abs(Values),'b-*');
hold on
plot(abs(h_est{2}),'r-s');
grid on;
legend('真实值','估计值');
xlabel('测量值编号');
ylabel('电压幅度');
title('初始条件下实际值和估计值的误差对比');
subplot(212);
plot(abs(Values),'b-*');
hold on
plot(abs(h_est{end}),'r-s');
grid on;
legend('真实值','估计值');
xlabel('测量值编号');
ylabel('电压幅度');
title('完成估计之后实际值和估计值的误差对比');
27_004m

4.本算法原理

        配电网是电力系统的重要组成部分,其运行状态直接影响到电力系统的稳定性和供电质量。因此,对配电网的状态进行准确估计是保障电力系统安全运行的关键。基于结点电压法的配电网状态估计算法是一种常用的方法,它利用结点电压信息来推算配电网的运行状态。结点电压法是一种基于电路分析的状态估计算法,它利用配电网的拓扑结构和结点电压信息,通过解算线性方程组来估计配电网的状态。在配电网中,每个结点都有一个对应的电压值,这些电压值受到注入该结点的功率、结点之间的阻抗以及相邻结点电压的影响。

4.1 结点电压法的基本原理

         结点电压法的基本原理是将配电网中的每个结点作为一个未知量,通过结点电压方程来描述网络中各结点电压之间的关系。结点电压方程是基于基尔霍夫电流定律(KCL)和基尔霍夫电压定律(KVL)建立的。

        在配电网中,每个结点都连接有多条支路,每条支路上都有电流流过。根据KCL,流入结点的电流等于流出结点的电流之和。而每条支路上的电流又可以通过该支路上的电压和阻抗来计算。因此,可以通过结点电压方程来表示结点电压和支路电流之间的关系。

       配电网状态估计的求解方法一般采用迭代法,如高斯-牛顿法(Gauss-Newton method)或莱文贝格-马夸尔特法(Levenberg-Marquardt method)。这些方法的基本思想是从一个初始估计值出发,通过迭代计算来逐步逼近最优解。

      在每次迭代中,首先根据当前的状态估计值计算量测函数的值,然后计算目标函数及其梯度。接着,根据目标函数的梯度和一定的搜索方向来确定状态变量的更新量。最后,更新状态变量并判断是否满足收敛条件。如果满足收敛条件,则输出状态估计结果;否则,继续迭代计算。

4.2 结点电压法在配电网状态估计中的应用

       结点电压法在配电网状态估计中具有广泛的应用。它可以处理各种类型的量测数据,包括结点电压量测、支路功率量测、支路电流量测等。同时,它还可以考虑配电网中的各种约束条件,如结点电压约束、支路功率约束等。

       在实际应用中,结点电压法通常与其他方法相结合来提高状态估计的精度和可靠性。例如,可以与最小二乘法相结合来处理量测数据的误差;可以与卡尔曼滤波器相结合来实现动态状态估计;可以与人工智能算法相结合来处理量测数据的异常值和缺失值等。

5.完整程序

VVV

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/393601.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在职阿里6年,一个28岁女软件测试工程师的心声

简单的先说一下,坐标杭州,16届本科毕业,算上年前在阿里巴巴的面试,一共有面试了有6家公司(因为不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比较少) 其中成功的有4家&am…

Swift 5.9 新 @Observable 对象在 SwiftUI 使用中的陷阱与解决

概览 在 Swift 5.9 中,苹果为我们带来了全新的可观察框架 Observation,它是观察者开发模式在 Swift 中的一个全新实现。 除了自身本领过硬以外,Observation 框架和 SwiftUI 搭配起来也能相得益彰,事倍功半。不过 Observable 对象…

10M上下文,仅靠提示就掌握一门语言,Google Gemini 1.5被OpenAI抢头条是真冤

这两天,几乎整个AI圈的目光都被OpenAI发布Sora模型的新闻吸引了去。其实还有件事也值得关注,那就是Google继上周官宣Gemini 1.0 Ultra 后,火速推出下一代人工智能模型Gemini 1.5。 公司首席执行官 Sundar Pichai携首席科学家Jeff Dean等众高…

在网络死磕5-10年的人,最后都怎么样了?

你们好,我是老杨。 此时此刻,如果你仍然在一家公司坚强的干着活,你已经打败了80%的职场朋友了。 现如今,从一毕业就做同一个行业超过5年的人,已经少之又少,更别说同一家公司干超过五年了。 这对别的行业…

redis 值中文显示乱码

问题: 解决办法: exit退出 进入时添加 --raw参数

【C++初阶】新手值得一做vector的oj题

👦个人主页:Weraphael ✍🏻作者简介:目前学习C和算法 ✈️专栏:C航路 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞&#x1…

解决updatexml和extractvalue查询显示不全

报错注入是一种常见的SQL 注入方式,通过注入代码,触发数据库的错误响应,并从错误信息中获取有用的信息。 updatexml和extractvalue updatexml和extractvalue 是常用的两个报错注入函数 http://localhost/sqli/Less-5/?id1%27and%20updat…

解锁Spring Boot中的设计模式—04.桥接模式:探索【桥接模式】的奥秘与应用实践!

桥接模式 桥接模式也称为桥梁模式、接口模式或者柄体(Handle and Body)模式,是将抽象部分与他的具体实现部分分离,使它们都可以独立地变化,通过组合的方式建立两个类之间的联系,而不是继承。 桥接模式是一种…

代码随想录刷题笔记 DAY 29 | 非递减子序列 No.491 | 全排列 No.46 | 全排列 II No. 47

文章目录 Day 2901. 非递减子序列(No. 491)1.1 题目1.2 笔记1.3 代码 02. 全排列(No. 46)2.1 题目2.2 笔记2.3 代码 03. 全排列 II(No. 47)3.1 题目3.2 笔记3.3 代码 Day 29 01. 非递减子序列(…

数据结构——单链表专题

目录 1. 链表的概念及结构2. 实现单链表初始化尾插头插尾删头删查找在指定位置之前插入数据在指定位置之后插入数据删除指定位之前的节点删除指定位置之后pos节点销毁链表 3. 完整代码test.cSList.h 4. 链表的分类 1. 链表的概念及结构 在顺序表中存在一定的问题: …

15.一种坍缩式的简单——组合模式详解

当曾经的孩子们慢慢步入社会才知道,那年味渐淡的春节就像是疾驰在人生路上的暂停键。 它允许你在隆隆的鞭炮声中静下心来,瞻前顾后,怅然若失。 也允许你在寂静的街道上屏气凝神,倾听自己胸腔里的那团人声鼎沸。 孩子们会明白的&am…

库的操作【数据库】

目录 一、创建数据库 二、删除数据库 ​编辑 三、数据库编码问题 四、库的改查 查 1)查有哪些数据库: 2)使用某个数据库: 3)当前在哪个数据库: 4)有谁在使用 改alter 五、备份和恢复 …

Shiro-02-shiro 是什么?

序言 大家好,我是老马。 前面我们学习了 5 分钟入门 shiro 安全框架实战笔记,让大家对 shiro 有了一个最基本的认识。 shiro 还有其他优秀的特性,今天我们就一起来学习一下,为后续深入学习奠定基础。 Apache Shiro 是什么&…

2.18通过字符设备驱动分步注册过程实现LED驱动的编写,编写应用程序测试

应用程序&#xff1a; #include<stdlib.h> #include<stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include<unistd.h> #include<string.h> #include<sys/ioctl.h> #include"myled.h&quo…

LabVIEW智能家居控制系统

LabVIEW智能家居控制系统 介绍了一个基于LabVIEW的智能家居控制系统的开发过程。该系统利用LabVIEW软件与硬件设备相结合&#xff0c;通过无线网络技术实现家居环境的实时监控与控制&#xff0c;提升居住舒适度和能源使用效率。 项目背景&#xff1a;随着科技的发展和生活水平…

vue-router 实现路由懒加载

在现代的Web开发中&#xff0c;前端技术的发展日新月异。在构建大规模单页应用&#xff08;Single Page Application&#xff09;时&#xff0c;路由管理是一个非常重要的环节。随着用户对网页速度和性能的要求越来越高&#xff0c;有效的路由管理能够显著提升用户体验。本篇博…

【RT-DETR有效改进】利用EMAttention加深网络深度提高模型特征提取能力(特征选择模块)

一、本文介绍 本文给大家带来的改进机制是EMAttention注意力机制,它的核心思想是,重塑部分通道到批次维度,并将通道维度分组为多个子特征,以保留每个通道的信息并减少计算开销。EMA模块通过编码全局信息来重新校准每个并行分支中的通道权重,并通过跨维度交互来捕获像素级…

IT行业高含金量证书全解析:开启职业生涯新篇章

在快速发展的IT行业&#xff0c;持续学习和专业认证是提升个人竞争力的重要途径。全球范围内存在着众多的IT认证&#xff0c;它们不仅能够验证你的技术能力&#xff0c;还能在求职和职业晋升中起到关键作用。 本篇博客将深入探讨IT行业中部分高含金量的证书&#xff0c;包括中…

【IO流】IOException IO流异常

IOException IO流异常 1. 概述2. try...catch异常处理2.1 基础做法2.2 JDK7方案2.3 JDK9方案 3. 注意事项 异常 概括 1. 概述 IOException&#xff08;Input/Output Exception&#xff0c;输入/输出异常&#xff09;是 Java 编程中常见的异常类型之一。它是 java.io 包中定义的…

速看!2024年泰国国际电力能源展10月16-18日

2024年泰国&#xff08;亚洲&#xff09;国际电力能源展暨电工技术设备展 展会时间&#xff1a;2024年10月16-18日 展会地点&#xff1a;泰国.曼谷BITEC会展中心 主办单位&#xff1a;新加坡Fireworks展览集团 组织单位&#xff1a;武汉柏翰展览有限公司(Fireworks China) …