电力系统潮流计算matlab仿真,计算结果自动保存到excel文件中

简介: 电力系统潮流计算matlab仿真,计算结果自动保存到excel文件中

1.算法仿真效果
matlab2022a仿真结果如下:

f488d1be1088ae95b6b526a9560a46f9_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
d8e6aefb651269557c4bc43321993809_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

2.算法涉及理论知识概要

   在电力工程中,“潮流”还特指电网各处电压(包括幅值与相角)、有功功率、无功功率等的分布。潮流的分布是运行调度单位和维修部门所必须知道的事项。
   而潮流计算,是指给定电网中一些参数、已知值和未知值中假设的初始值,通过重复迭代,最终求出潮流分布的精确值,常用方法有牛顿-拉夫逊法和PQ分解法。
   在发电机母线上功率被注入网络;而在变(配)电站上接入负荷;其间,功率在网络中流动。对于这种流动的功率,电力生产部门称为潮流(POWER FLOW)。
   潮流:电力系统中 电压(各节点)、功率(有功、无功)(各支路)的稳态分布潮流计算---电力系统分析中的一种最基本的计算,根据给定的运行参数确定系统的运行状态,如计算网络中各节点的电压(幅值和相角)和各支路中的功率分布及损耗。
   电力系统潮流计算是电力系统最基本的计算,也是最重要的计算。所谓潮流计算,就是已知电网的接线方式与参数及运行条件,计算电力系统稳态运行各母线电压、各支路电流、功率及网损。对于正在运行的电力系统,通过潮流计算可以判断电网母线电压、支路电流和功率是否越限,如果有越限,就应采取措施,调整运行方式。对于正在规划的电力系统,通过潮流计算,可以为选择电网供电方案和电气设备提供依据。潮流计算还可以为继电保护和自动装置整定计算、电力系统故障计算和稳定计算等提供原始数据。
   表征电力系统运行状态的参量。包括电力系统中各节点和支路中的电压、电流和功率的流向及分布。在实用上,一般是指稳态运行方式下的静态潮流。合理的潮流分布是电力系统运行的基本要求,其要点为:①运行中的各种电工设备所承受的电压应保持在允许范围内,各种元件所通过的电流应不超过其额定电流,以保证设备和元件的安全;②应尽量使全网的损耗最小,达到经济运行的目的;③正常运行的电力系统应满足静态稳定和暂态稳定的要求。并有一定的稳定储备,不发生异常振荡现象。为此就要求电力系统运行调度人员随时密切监视并调整潮流分布。现代电力系统潮流分布的监视和调整是通过以在线计算机为中心的调度自动化系统来实现的。电力系统潮流的计算和分析是电力系统运行和规划工作的基础。运行中的电力系统,通过潮流计算可以预知,随着各种电源和负荷的变化以及网络结构的改变,网络所有母线的电压是否能保持在允许范围内,各种元件是否会出现过负荷而危及系统的安全,从而进一步研究和制订相应的安全措施。规划中的电力系统,通过潮流计算,可以检验所提出的网络规划方案能否满足各种运行方式的要求,以便制定出既满足未来供电负荷增长的需求,又保证安全稳定运行的网络规划方案。

    潮流计算的一般提法是:已知电力网络的结构和参数,已知各负荷点、电源点吸取或发出的有功功率和无功功率(PQ节点),给定电压控制点的电压幅值和有功功率(PV节点),对指定的一个平衡节点给定其电压幅值和相位角(Vθ点),求解全网各节点电压幅值和相位角,并进一步算出各支路的功率分布和网络损耗。求解潮流问题的基本方程式是节点功率平衡方程。若全网有n个节点,对其中任一节点,可写出其节点功率平衡方程式i=1,2,…,n式中Pi、Qi分别为节点注入有功功率和无功功率,妭i为节点电压相量,Yik为节点导纳矩阵元素。这一方程描述了节点电压同功率之间的非线性关系,是潮流计算的基本方程式。对潮流计算的数字计算机求解方法提出的基本要求是:①计算速度快;②占用存储量少;③收敛性好;④方法简单。
     数值解法  潮流计算在数学上是求解一组非线性方程,基本的方法是迭代法。首先发展的潮流问题数字解法是导纳矩阵迭代法。它占用计算机存储量少,适合于计算机发展初期阶段的实际条件,其缺点是收敛性较差。其后发展了阻抗矩阵迭代法,克服了导纳矩阵迭代法收敛性差的缺点,但对大电力系统的计算,占用计算机存储量大。

3.MATLAB核心程序

%求差.
b=xlsread('TEST2.xlsx','C2:F31');
precision=1;          %误差
t=0;                  %迭代次数
pq=24;               %pq节点数
%pq=4;
U=b(pq+2:N1,1);
%开始牛拉法
while precision>0.00001
    P1=zeros(pq,1);
    Q=zeros(pq,1);
    P2=zeros(N1-pq-1,1);
    U2=zeros(N1-pq-1,1);
    deltpqu=zeros(2*(N1-1),1);
    deltu2=zeros(N1-pq-1,1);
    for i=1:pq
        for j=1:N1
.....................................................
    end
    deltp1=b(2:pq+1,3)-P1(1:pq,1);
    deltq =b(2:pq+1,4)-Q(1:pq,1);
    deltp2=b(pq+2:N1,3)-P2(1:N1-pq-1,1);
    for i=1:N1-pq-1
        deltu2(i,1)=U(i,1)^2-U2(i,1);
    end
    deltu2;
    for i=1:pq
        deltpqu(2*i-1,1)=deltp1(i);
        deltpqu(2*i,1)=deltq(i);
    end
    for i=1:N1-pq-1
        deltpqu(2*pq+2*i-1,1)=deltp2(i);
        deltpqu(2*pq+2*i,1)=deltu2(i);
    end
    deltpqu;      %delta
    %求雅克比
    aii=zeros(N1);bii=zeros(N1);
    H1=zeros(N1);N11=zeros(N1);
    for i=1:N1
        for j=1:N1
            aii(i,1)=aii(i,1)+G(i,j)*b(j,1)-B(i,j)*b(j,2);
            bii(i,1)=bii(i,1)+G(i,j)*b(j,2)+B(i,j)*b(j,1);
        end
    end
    %H、N
...................................................
    Jacobi;
    %修正
    Correction=Jacobi^-1*deltpqu;
    for i=1:N1-1
        b(i+1,1)=b(i+1,1)+Correction(2*i);
        b(i+1,2)=b(i+1,2)+Correction(2*i-1);
    end
    precision=max(abs(deltpqu));
    %precision=max(abs(Correction));
    t=t+1;
    b;
end
%平衡节点功率
pp=0;
for j=1:N1
    pp=pp+conj(Y(1,j))*(b(j,1)-b(j,2)*1i);
end
b(1,3)=real(b(1,1)*pp);
b(1,4)=imag(b(1,1)*pp);
%各线路功率
S=zeros(N1);  y=zeros(N1);   y0=zeros(N1);
for i=1:N1
    for j=1:N1
        if i~=j
           y(i,j)=-Y(i,j);
        end
    end
end
y;
for m1=1:L1
     I=B1(m1,1);J=B1(m1,2);R=B1(m1,3);X=B1(m1,4);k=B1(m1,5);
     if I*J>0
         y0(I,J)=k*1i;  y0(J,I)=k*1i;
     end
     if I*J<0
        if I<0  
                 t=I;
                 I=J;
                 J=t;
        end
              J=abs(J);
              if k<0
                  k=-1/k;
              end 
         y0(I,J)=(R/(R^2+X^2)-X/(R^2+X^2)*1i)*(k-1)/k;
         y0(J,I)=(R/(R^2+X^2)-X/(R^2+X^2)*1i)*(1-k)/k^2;
     end
end
相关文章
|
7天前
|
文字识别 BI
【图片型PDF】批量识别扫描件PDF指定区域局部位置内容,将识别内容导出Excel表格或批量改名文件,基于阿里云OCR对图片型PDF识别改名案例实现
在医疗和政务等领域,图片型PDF文件(如病历、报告、公文扫描件)的处理需求广泛。通过OCR技术识别这些文件中的文字信息,提取关键内容并保存为表格,极大提高了信息管理和利用效率。本文介绍一款工具——咕嘎批量OCR系统,帮助用户快速处理图片型PDF文件,支持区域识别、内容提取、导出表格及批量改名等功能。下载工具后,按步骤选择处理模式、进行区域采样、批量处理文件,几分钟内即可高效完成数百个文件的处理。
49 8
|
2月前
|
人工智能 自然语言处理 Java
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
FastExcel 是一款基于 Java 的高性能 Excel 处理工具,专注于优化大规模数据处理,提供简洁易用的 API 和流式操作能力,支持从 EasyExcel 无缝迁移。
234 9
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
基于粒子滤波器的电池剩余使用寿命计算matlab仿真
本研究基于粒子滤波器预测电池剩余使用寿命(RUL),采用MATLAB2022a实现。通过非线性动力学模型模拟电池老化过程,利用粒子滤波器处理非线性和非高斯问题,准确估计电池SOH变化趋势,进而预测RUL。系统仿真结果显示了良好的预测性能。
|
2月前
|
Python
按条件将Excel文件拆分到不同的工作表
使用Python的pandas库,可以轻松将Excel文件按条件拆分到不同的工作表中。本文通过一个示例代码展示了如何生成一个包含总成绩表和三个班级表的Excel文件。代码首先创建了一个包含学生姓名、班级和各科成绩的数据框,然后按班级分组,将每个班级的数据分别写入不同的工作表。最后,生成的Excel文件将包含四个工作表,分别为总成绩表和三个班级的成绩表。
52 6
按条件将Excel文件拆分到不同的工作表
|
2月前
|
Python
批量将不同的工作簿合并到同一个Excel文件
本文介绍如何使用Python的`pandas`库批量合并不同工作簿至同一Excel文件。通过模拟生成三个班级的成绩数据,分别保存为Excel文件,再将这些文件合并成一个包含所有班级成绩的总成绩单。步骤包括安装必要库、生成数据、保存与合并工作簿。
71 6
|
2月前
|
Python
按条件将Excel文件拆分到不同的工作表
使用Python的pandas库,可以轻松将Excel文件按条件拆分为多个工作表。本文通过一个具体示例,展示了如何根据学生班级将成绩数据拆分到不同的工作表中,并生成一个包含总成绩表和各班级成绩表的Excel文件。代码简洁明了,适合初学者学习和应用。
64 6
|
3月前
|
前端开发
实现Excel文件和其他文件导出为压缩包,并导入
实现Excel文件和其他文件导出为压缩包,并导入
50 1
|
6月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
272 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
6月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
162 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
6月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
138 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码

热门文章

最新文章