资源简介
电力系统状态估计(电力网系统辨识)-最小二乘+不良数据辨识-matlab
最小二乘是对电力系统进行状态估计的最基本方法,而考虑到电力网数据可能存在不良数据,需要使用相关方法进行不良数据辨识;检测到不良数据点位置后,系统还会剔除不良数据再次进行辨识
两份导入数据中,iSE30Bus1为有误差数据,iSE30Bus2为无误差数据
输出结果会导入至oStateEstimation中

代码片段和文件信息
%% Power Grid State Estimation (Test 1)
clc; % Clear windows
format
%% 使用变量说明
% GATE 对不良数据检测与辨识的调用开关
% JM min (J) 残差平方和
% uij,k 用于循环的变量
% RE residual error(残差矢量)
% VA variance(方差)
% FN 标准化残差
% BDT Bad Data‘s Type (坏数据类型)
% BDP Bad Data‘s Position (坏数据位置)
% F 状态估计方程计算出的值
%% Read power flow data from document “iSE30Bus.txt“
fp=fopen(‘iSE30Bus1.txt‘‘r‘); % 1号为有量测误差数据,2号为无误差数据
fscanf(fp‘%s‘1); % read one sting
node=fscanf(fp‘%d‘1); % read number of nodes
nzl=fscanf(fp‘%d‘1); % read number of branches
kPQ=fscanf(fp‘%d‘1); % read number of known PQ
kBus=fscanf(fp‘%d‘1); % read number of known Bus
kV=fscanf(fp‘%d‘1); % read number of known Vamp
fscanf(fp‘%s‘1); % read a string
ReV=fscanf(fp‘%f‘1); % read number of Real Vamp
ImV=fscanf(fp‘%f‘1); % read number of Imag Vamp
fscanf(fp‘%s‘1); % read a string
zl=zeros(nzl4); % 确定节点导纳矩阵的规格,并保存i j R X的数据
for i=1:nzl
for j=1:4
zl(ij)=fscanf(fp‘%f‘1);
end % read branch parameters
end
fscanf(fp‘%s‘1); % read one string
N=zeros(kPQ3); % save:确定所有节点的功率值,保存i P Q
for i=1:kPQ
for j=1:3
N(ij)=fscanf(fp‘%f‘1); % read generator parameters
end
end
PQ=zeros(2*kPQ1); % 将节点功率转换为列向量的形式
for i=1:kPQ
PQ(2*i-1)=N(i2);
PQ(2*i)=N(i3);
end
fscanf(fp‘%s‘1); % read one string
Bus=zeros(kBus4); % save known Bus: i j Pij Qij
for i=1:kBus
for j=1:4
Bus(ij)=fscanf(fp‘%f‘1);
end
end
fscanf(fp‘%s‘1); % read one string
Vam=zeros(kV2); % save known Vamp: i Vamp
for i=1:kV
for j=1:2
Vam(ij)=fscanf(fp‘%f‘1);
end
end
fclose(fp);
%% 形成节点导纳矩阵 G+jB
G=zeros(nodenode);
B=zeros(nodenode);
for k=1:nzl
i=zl(k1);
j=zl(k2);
h=zl(k3)*zl(k3)+zl(k4)*zl(k4);
f=zl(k3)/h; % branch conductance
g=-zl(k4)/h; % branch susceptance
G(ii)=G(ii)+f;
G(jj)=G(jj)+f;
B(ii)=B(ii)+g;
B(jj)=B(jj)+g;
G(ij)=G(ij)-f;
G(ji)=G(ji)-f;
B(ij)=B(ij)-g;
B(ji)=B(ji)-g;
end
% G % show
% B % show
%% State Estimation
GATE=0;
zcs=0;
for u=1:2*kPQ+2*kBus+kV-2*node+2
if GATE==1
break;
JM=RE‘*RE; % 不良数据检测与辨识
JM
if JM<0.00003 % 不良数据检测
break;
else
VA=JM/(2*kPQ+2*kBus+kV-1); % VA:残差的方差
VA1=1/sqrt(VA);
FN=RE*VA1; % FN:经过标准化处理的残差向量
FN1=zeros(2*kPQ+2*kBus+kV2)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 15428 2019-02-02 18:39 SEF.m
文件 3121 2018-05-05 23:19 iSE30Bus1.txt
文件 3101 2018-05-01 17:54 iSE30Bus2.txt
----------- --------- ---------- ----- ----
21650 3
- 上一篇:投影寻踪-遗传算法MATLAB程序
- 下一篇:mdp马尔科夫过程的MATLAB代码
相关资源
- 最小二乘法曲线拟合(MATLAB)
- 偏最小二乘分析matlab工具包
- matlab实现电力系统潮流计算-PQ分解法
- 线性拟合仿真-最小二乘法、正交回归
- 最小二乘滤波算法正弦波
- 果蝇参数寻优FOA-LSSVM的完整程序
- matlab实现牛顿-拉夫逊法电力系统潮流
- TOA定位两步加权最小二乘MATLAB算法程
- Matpower6.0
- matlab电力系统分析工具包psat
- 基于PSCAD和MATLAB的电力系统电磁暂态仿
- matlab实现六维力传感器参数辨识
- 电力系统分析程序PSAT官方2.1.9版及说
- 电力系统3机9节点暂态仿真
- 基于多元线性回归的分析
- 各种最小二乘法总结算法+matlab源码
- 电力系统潮流计算MATLAB课程设计
- 电力系统暂态稳定计算
- 各种最小二乘法汇总算例及MATLAB程序
- 最新版,最小二乘支持向量机2010年
- 最小二乘支持向量机matlab程序+使用教
- 基于MATLAB的电力系统故障分析与仿真
- matlab的最优潮流计算程序
- 移动最小二乘法曲面拟合等步长采样
- matpower4.0正式版
- matpower3.2电力系统潮流计算MATLAB文件
- matlab_的电力系统潮流仿真计算
- 电力系统潮流计算matlab程序
- 课程设计—断线故障matlab源码及算例
- 最小二乘算法总结算法+程序
评论
共有 条评论