Upload
phlmenezes
View
225
Download
1
Embed Size (px)
DESCRIPTION
Trabalho sobre representação de controles e limites relacionados ao fluxo de potência em Sistemas Elétricos de Potência.
Citation preview
Universidade Federal de São João del-Rei
Sistemas Elétricos de Potência II
Prof. Dr. Luiz Carlos do Nascimento
SISTEMAS ELÉTRICOS DE POTÊNCIA II
Fluxo de Potência – Representação de Controles e
Limites
DEPEL
São João del-Rei, Fevereiro de 2014
2
Universidade Federal de São João del-Rei - UFSJ
Trabalho de Sistemas Elétricos de Potência II
FLUXO DE POTÊNCIA – CONTROLE DE LIMITES E
ESTABILIDADE
DEPEL
José Felipe Condé Furtado de Lima
Pedro Henrique Lopes de Menezes
Alunos do curso de Engenharia Elétrica Integral
UFSJ, São João del Rei – MG
Luiz Carlos do Nascimento
Professor da disciplina de Sistemas Elétricos II.
Doutorado em Engenharia Elétrica – UNIFEI
Professor Adjunto na Universidade Federal de São João del-Rei – UFSJ
UFSJ, São João del-Rei – MG
São João del-Rei, Fevereiro de 2014
3
1. INTRODUÇÃO
O cálculo do Fluxo de Potência em um SEP representa uma etapa fundamental
para os projetos relacionados a essa área. Por meio dessa ferramenta pode-se conhecer o
desempenho de sistemas sob o ponto de vista de operação e planejamento. O
funcionamento de uma rede de energia elétrica é considerado adequado quando os
limites de potência e tensão permanecem dentro de uma faixa pré-estabelecida. Um
algoritmo de fluxo completo deve ser capaz de contemplar todos esses aspectos
práticos.
De acordo com [1], as barras de um sistema elétrico de potência podem ser
definias em três tipos:
- PQ: são dados e , e calculados e ;
- PV: são dados e , e calculados e ;
- (Referência): são dados e , e calculados e ;
As barras dos tipos PQ e PV são utilizadas para representar, respectivamente,
barras de carga e barras de geração. Já a barra , ou barra de referência, tem a função
de fornecer uma referência angular ao sistema e também são utilizadas para fechar o
balanço de potência do sistema, levando em conta as perdas de transmissão não
conhecidas antes da solução final do problema.
Nesse trabalho pretende-se atribuir a um algoritmo de Fluxo de Potência
completo a capacidade de serem considerados os limites de potência reativa de uma
barra definida inicialmente como PV. A rotina foi desenvolvida com base no método de
Newton Raphson e a princípio despreza qualquer tipo de limite e controle associado às
unidades geradoras, linhas de transmissão e transformadores. De um modo particular
será atribuído ao modelo a capacidade de analisar os extremos de potência reativa de
uma barra PV. Dessa forma, caso ocorra extrapolação dos limites de potência reativa,
uma barra que a princípio é PV deve ser convertida em PQ e consequentemente sua
tensão estará em um valor diferente do que foi estipulado inicialmente. Por outro lado,
caso a tensão de uma barra que foi convertida de PV para PQ voltar ao valor que foi lhe
atribuída no início do processo iterativo, essa barra poderá então ser novamente
convertida em PV, desde que a potência reativa esteja dentro dos limites pré-
estabelecidos para essa barra.
4
2. SISTEMA IEEE 30-BUS
O estudo do algoritmo desenvolvido para o fluxo de potência considerando o
limite de potência reativa na barra PV será fundamentado no mesmo sistema adotado
para o trabalho anterior. Essa rede de energia trata-se do IEEE 30-bus e possui
originalmente 41 linhas distribuídas ao longo de 30 barras. Os dados relativos a esse
SEP foram obtidos em [2] e [3]. A disposição dos elementos ao longo do sistema
também pode ser averiguada por meio da Figura 1.
Figura 1: Sistema IEEE 30-Bus
5
Já a Tabela 1 e a Tabela 2 retratam os dados relativos às unidades de geradoras e
às cargas, respectivamente.
Tabela 1: Dados relativos às unidades geradoras
Tabela 2: Dados relativos às cargas
3. METODOLOGIA
3.1. Fluxo de Potência Completo – Método de Newton-Raphson
A determinação do fluxo de potência em um SEP com base no método de
Newton-Raphson é uma técnica bastante difundida pela literatura. As equações que
6
caracterizam o problema são obtidas a partir da Lei de Kirchhoff das correntes aplicadas
a todo o conjunto de barras em análise. De modo geral tem-se que:
∑
∑
Em que,
- k = 1 até o número de barras da rede (NB);
Inicialmente define-se o tipo e os dados relativos a cada uma das barras. O
problema então pode ser subdivido em duas partes:
i. Subsistema 1:
Nesse caso são dados os valores de e para as barras PQ’s e e nas
barras PV’s. Pretende-se calcular e em todas as barras PQ’s e nas barras PV’s.
Em outras palavras trata-se de um sistema de 2.NPQ + NPV equações algébricas não
lineares com o mesmo número de incógnitas, em que NPQ é o número de barras PQ e
NPV é o número de barras PV’s, ou seja:
∑
para barras PQ e PV
∑
para barras PQ
ii. Subsistema 2:
Com a resolução do Subsistema 1 tornam-se conhecidos e para toda as
barras. Deseja-se assim calcular e na barra de referencia e nas barras PV’s.
Trata-se, portanto, de um sistema de NPV + 2 equações algébricas não lineares com o
7
mesmo número de incógnitas, no qual todas as incógnitas aparecem de forma explícita,
o que torna trivial o processo de resolução. O mesmo não ocorre para o Subsistema 1,
em que as incógnitas são implícitas, fato que exige um processo iterativo de resolução.
As incógnitas do Subsistema 1 podem ser agrupadas em um vetor dado por:
[ ]
Sendo as dimensões de e representadas por:
Além disso, as expressões obtidas para o Subsistema 1, também podem ser
reescritas da seguinte forma:
para barras PQ e PV
para barras PQ
Podemos denotar um termo com sendo o vetor formado por e
tem-se então que:
[
]
Em que as dimensões de e representadas por:
Dessa forma, com base nas relações desenvolvidas anteriormente verifica-se
assim que:
8
A partir das premissas desenvolvidas anteriormente, o método de Newton-
Raphson consiste nas seguintes etapas:
i. Fazer n = 0 e escolher uma solução inicial ;
ii. Calcular o valor da função no ponto ;
iii. Comparar o valor calculo de com a tolerância especificada : se
| | , então será a solução procurada dentro da faixa de
tolerância , se | | , o algoritmo deverá prosseguir.
iv. Linearizar a função em torno do ponto ( ) por intermédio da série
de Taylor:
Sendo
, ou seja, esse passo se resume basicamente ao cálculo da
derivada .
v. Resolver o problema linearizado, isto é, encontrar tal que:
Isso significa que a estimativa de passa a ser:
Sendo,
vi. Fazer n = n+1 e retornar ao passo “ii”;
O processo de linearização descrito em “iv” está evidenciado pela Figura 2.
9
Figura 2: Método de Newton-Raphson
Portanto, a resolução do sistema , segue todos os passos
descritos das etapas “i” até “iv”. No entanto, deve-se ressaltar que para o caso de n-
dimensões a derivada de será dada por uma matriz de derivadas. Nesse caso essa
matriz é denominada como matriz jacobiana e tem o seguinte formato:
[
]
Com isso, o vetor de correção para um sistema de n-dimensões é calculado
impondo-se que:
3.2. Consideração dos Limites de Potência Reativa em uma barra PV
Em barras de geração e em barras que possuem compensadores síncronos, a
tensão pode ser controlada por ajustes da corrente de campo das máquinas síncronas,
essas que por sua vez podem operar sub ou sobrexcitadas, injetando ou absorvendo
reativo da rede.
10
Na formulação básica de problemas resolvidos a partir de programas de fluxo de
potência, já está representado o controle da tensão nas barras PV. A magnitude da
tensão nesse tipo de barras é mantida em seu valor especificado e a injeção de potência
reativa não é calculada no subsistema 1.
Para controlar os limites de potência reativa injetada em barras PV, deve-se
analisar não apenas o subsistema 1, mas também o subsistema 2 a cada iteração do
programa de fluxo de potência, a partir disso, pode-se definir a necessidade de mudança
de características das barras que violaram algum limite pré-estabelecido.
A Figura 3 mostra de forma geral a representação dos limites de potência reativa
injetada em uma barra PV.
Figura 3: Representação do Limite de Injeção de Reativo nas Barras PV
3.3. Mudança de uma barra PV para PQ
Considere uma barra PV, onde
e
. Considere
que em cada iteração verifica-se uma diminuição da potência reativa necessária
para conservar a tensão em seu valor especificado até que o limite seja
alcançado.
11
A partir desse ponto a tensão tenderá a aumentar em consequência da
insuficiência de suporte de potência reativa. Isso é válido no caso em que o limite
é atingido, onde a tensão tenderá a diminuir.
Portanto, como citado anteriormente, as injeções de potência reativa nas barras
PV devem ser recalculadas no final de cada iteração do programa, fazendo o uso dos
valores atualizados das variáveis de rede, para analisar se tais valores pertencem aos
limites estabelecidos. Quando se encontrar fora de um desses limites, a barra do
tipo PV onde isso foi verificado passará a ser do tipo PQ. No momento em que isso
acontece, a especificação de potência nessas barras assume o valor do limite violado
ao mesmo tempo em que as magnitudes das tensões nessas barras
passam a ser calculadas em cada iteração. Essa mudança provoca também alterações na
matriz jacobiana.
3.4. Mudança de uma convertida em PQ para PV
Após a transformação de uma barra PV em PQ, é necessário testar, para cada
iteração subsequente, a possibilidade de tal barra voltar a seu tipo original PV.
Como exemplo, considere o caso em que a injeção de reativo permaneça fixada
no limite mínimo, ou seja,
. Nesse caso, o valor referente à magnitude da
tensão recalculada em cada iteração, poderá ser maior, menor ou a mesmo que o
valor especificado
.
Se
, nada é alterado, pois, para que se diminua a magnitude da
tensão é necessária uma diminuição de reativo na barra, o que irrealizável, pois
. No entanto, se
, para um aumento na magnitude da tensão, basta que
a injeção de reativo seja aumentada, o que é possível, pois
. Concluindo
que se
, a barra poderá voltar a seu tipo de origem. Analogamente, pode-se
chegar a conclusão que isso possível quando
e
.
12
4. RESULTADOS
A partir das premissas o e conceitos abordados ao longo da seção 3 foi
desenvolvido um algoritmo no . Esse programa levou em consideração o
cálculo do Fluxo de Potência com a representação dos limites de reativo nas barras
PV’s. A rotina desenvolvida está demonstrada no anexo desse trabalho.
Em prol de se demonstrar a conversão de uma barra PV em PQ e fazer com que
a mesma se torne PV novamente ao longo do processo iterativo, definiu-se os estados
iniciais das barras PV ‘s conforme demonstrado pela Tabela 3. Já as demais barras do
sistema foram inicializadas com tensão de 1 pu e ângulo nulo. Em relação ao sistema
original também houve um aumento do limite mínimo de potência reativa na Barra 2,
que passou de -0,20 pu para -0,30 pu.
Tabela 3: Valores iniciais definidos para as barras PV's
ESTADO INCICIAL DAS BARRAS PV's
Nº Barra Estado Inicial
V [pu] Theta [°] Q min [pu] Q max [pu]
2 0,9900 0 -0,3000 1,0000
5 1,0000 0 -0,1500 0,8000
8 1,0000 0 -0,1500 0,6000
11 1,0000 0 -0,1000 0,5000
13 1,0000 0 -0,1500 0,6000
O sistema convergiu em 3 interações para uma tolerância de 0,1%. Os resultados
obtidos para 1ª, 2ª e 3ª iteração estão evidenciados na Tabela 4, Tabela 5 e Tabela 6,
respectivamente.
Tabela 4: Valores obtidos após a 1º Iteração
RESULTADOS APÓS A 1º ITERAÇÃO
Nº Barra Resultados
V [pu] Theta [°] Q cal [pu] Tipo
2 0,9900 -0,75 -0,3201 PQ
5 1,0000 -5,63 0,3137 PV
8 1,0000 -3,67 0,3339 PV
11 1,0000 -0,24 0,1273 PV
13 1,0000 -1,08 0,1662 PV
13
Tabela 5: Valores obtidos após a 2º Iteração
RESULTADOS APÓS A 2º ITERAÇÃO
Nº Barra Resultados
V [pu] Theta [°] Q cal [pu] Tipo
2 0,9898 -0,86 -0,2953 PV
5 1,0000 -5,86 0,3279 PV
8 1,0000 -3,90 0,3890 PV
11 1,0000 -0,36 0,1500 PV
13 1,0000 -1,33 0,1966 PV
Tabela 6: Valores obtidos após a 3º Iteração
RESULTADOS APÓS A 3º ITERAÇÃO
Nº Barra Resultados
V [pu] Theta [°] Q cal [pu] Tipo
2 0,9900 -0,85 -0,2951 PV
5 1,0000 -5,87 0,3277 PV
8 1,0000 -3,91 0,3886 PV
11 1,0000 -0,37 0,1502 PV
13 1,0000 -1,33 0,1968 PV
Já na Tabela 7 está demonstrado os valores obtidos para o Subsistema 1 após a
convergência do método. Nessa tabela foi representado as tensões e ângulos para todas
as barras do sistema.
14
Tabela 7: Resultados obtidos para o Subsistema 1 após a convergência
RESULTADOS APÓS A CONVERGÊNCIA
Nº Barra V [pu] Theta [°] Tipo
1 1,0000 0,0000 SW
2 0,9900 -0,8581 PV
3 0,9873 -2,5661 PQ
4 0,9848 -3,0540 PQ
5 1,0000 -5,8667 PV
6 0,9866 -3,7114 PQ
7 0,9832 -5,1222 PQ
8 1,0000 -3,9068 PV
9 0,9708 -4,0534 PQ
10 0,9488 -6,2950 PQ
11 1,0000 -0,3680 PV
12 0,9741 -4,6271 PQ
13 1,0000 -1,3312 PV
14 0,9576 -5,7834 PQ
15 0,9516 -5,9882 PQ
16 0,9552 -5,6401 PQ
17 0,9448 -6,3453 PQ
18 0,9438 -6,8497 PQ
19 0,9237 -7,3846 PQ
20 0,9291 -7,1832 PQ
21 0,9354 -6,8426 PQ
22 0,9361 -6,8284 PQ
23 0,9360 -6,7320 PQ
24 0,9245 -7,3270 PQ
25 0,9312 -7,9137 PQ
26 0,9119 -8,4163 PQ
27 0,9452 -7,9468 PQ
28 0,9829 -4,1013 PQ
29 0,9235 -9,3935 PQ
30 0,9110 -10,4379 PQ
Nº DE ITERAÇÕES
3
Por meio dos valores obtidos na Tabela 7 fica claro que a Barra 2 apesar de ter se
tornado PQ ao longo do processo iterativo, seu estado final se manteve como PV.
15
5. CONCLUSÕES
A consideração dos limites de potência reativa nas barras PV’s faz com que o
cálculo do fluxo de potência seja adaptado para situações mais realísticas. Em
programas dedicados como, por exemplo, o ANAREDE é comum que todas as técnicas
de limites e controle sejam representadas ao longo do processo iterativo. Nesse trabalho
foi feito a implementação de uma dessas técnicas. Ao se estabelecer as condições
iniciais adequadas para o sistema foi possível comprovar que a Barra 2 que inicialmente
era PV foi convertida em PQ logo na 1ª iteração. No processo seguinte, a potência
reativa voltou para os limites estabelecidos para essa barra e a tensão foi novamente
reduzida. Isso fez com que a Barra 2 voltasse novamente a ser PQ.
Portanto, com base nos resultados e na escolha dos valores iniciais foi possível
comprovar a transição do tipo de barra do sistema. Nesse casso em especial foi feita a
analise a partir da Barra 2. Os valores apresentados após a convergência se mostraram
coerentes com os valores reais que são comumente observados na prática.
6. REFERÊNCIAS
[1] MONTICELLI, Alcir José – Fluxo de Carga em Redes de Energia Elétrica, Editora
Edgard Blucher LTDA – 1983;
[2] M. N. Suharto, M. Y. Hassan, M. S. Majid, M. P. Abdullah, F. Hussin – Optimal
Power Flow Solution Using Evolutionary Computation Techniques – IEEE TECON
2011;
[3] 0. Alsac, B. Stott – Optimal Load Flow With Steady-State Security, 1974
[4] Notas de Aula do Prof. Luiz Carlos do Nascimento (disponível em
https://dl.dropboxusercontent.com/u/37961911/index.htm )
16
ANEXO
Algoritmo de Fluxo de Potência com consideração de limite de potência reativa nas
barras PV’s:
%% *****************TERCEIRO TRABALHO DE SEPII************************ %*****FLUXO DE POTÊNCIA COM REPRESENTAÇÃO DE CONTROLES E LIMITES******
%% Alunos: % José Felipe Condé Furtado de Lima - 0909554-3 % Pedro Henrique Lopes de Menezes - 100950013
%% Professor: Luiz Carlos do Nascimento
%% Inicialização do programa clear all; close all; clc;
%% Entrada de dados iniciais do Sistema %Tolerancia admitida Tolerancia = 0.001; %Potência base em MVA S_base = 100;
%% Dados referentes as barras e suas respectivas configurações %[ PG_min | PG_max | QG_min | QG_max | P_Load | Q_Load |Tipo |
V_inicial | Theta_inicial [rad/s]] %OBS: % Tipos de barras para um sistema: % Tipo 1: Barra de referência (SW) % Tipo 2: Barra de geração (PV) % Tipo 3: Barra de carga (PQ)
System = [50 200 -20 250 00.0 00.0 1 1.00 0; 20 080 -30 100 21.7 12.7 2 0.99 0; 00 000 000 000 02.4 01.2 3 1.00 0; 00 000 000 000 07.6 01.6 3 1.00 0; 15 050 -15 080 94.2 19.0 2 1.00 0; 00 000 000 000 00.0 00.0 3 1.00 0; 00 000 000 000 22.8 10.9 3 1.00 0; 10 035 -15 060 30.0 30.0 2 1.00 0; 00 000 000 000 00.0 00.0 3 1.00 0; 00 000 000 000 05.8 02.0 3 1.00 0; 10 030 -10 050 00.0 00.0 2 1.00 0; 00 000 000 000 11.2 07.5 3 1.00 0; 12 040 -15 060 00.0 00.0 2 1.00 0; 00 000 000 000 06.2 01.6 3 1.00 0; 00 000 000 000 08.2 02.5 3 1.00 0; 00 000 000 000 03.5 01.8 3 1.00 0; 00 000 000 000 09.0 05.8 3 1.00 0; 00 000 000 000 03.2 00.9 3 1.00 0; 00 000 000 000 09.5 03.4 3 1.00 0; 00 000 000 000 02.2 00.7 3 1.00 0; 00 000 000 000 17.5 11.2 3 1.00 0; 00 000 000 000 00.0 00.0 3 1.00 0;
17
00 000 000 000 03.2 01.6 3 1.00 0; 00 000 000 000 08.7 06.7 3 1.00 0; 00 000 000 000 00.0 00.0 3 1.00 0; 00 000 000 000 03.5 02.3 3 1.00 0; 00 000 000 000 00.0 00.0 3 1.00 0; 00 000 000 000 00.0 00.0 3 1.00 0; 00 000 000 000 02.4 00.9 3 1.00 0; 00 000 000 000 10.6 01.9 3 1.00 0];
%Vetor de P_inj e Q_inj P_inj = (1/S_base)*(System(:,2)-System(:,5)); Q_inj = (1/S_base)*(System(:,3)-System(:,6));
%Criação de um vetor para agrupar QG_min e QG_max QG = (1/S_base)*[System(:,3) System(:,4)];
%% Entrada dos elementos da Y_bus (pu) N = length(System); Y_bus = zeros(N,N);
%OBS: Entrar apenas com elementos em que a linha é menor que a coluna. Y_bus(1,2) = -1/(0.0192 + 0.0575i); Y_bus(1,3) = -1/(0.0452 + 0.1852i);
Y_bus(2,4) = -1/(0.0570 + 0.1737i); Y_bus(2,5) = -1/(0.0472 + 0.1983i); Y_bus(2,6) = -1/(0.0581 + 0.1763i);
Y_bus(3,4) = -1/(0.0132 + 0.0379i);
Y_bus(4,6) = -1/(0.0119 + 0.0414i); Y_bus(4,12) = -1/(0.2560i);
Y_bus(5,7) = -1/(0.0460 + 0.1160i);
Y_bus(6,7) = -1/(0.0267 + 0.0820i); Y_bus(6,8) = -1/(0.0120 + 0.0420i); Y_bus(6,9) = -1/(0.2080i); Y_bus(6,10) = -1/(0.5560i); Y_bus(6,28) = -1/(0.0169 + 0.0599i);
Y_bus(8,28) = -1/(0.0636 + 0.2000i);
Y_bus(9,10) = -1/(0.1100i); Y_bus(9,11) = -1/(0.2080i);
Y_bus(10,17) = -1/(0.0324 + 0.0845i); Y_bus(10,20) = -1/(0.0936 + 0.2090i); Y_bus(10,21) = -1/(0.0348 + 0.0749i); Y_bus(10,22) = -1/(0.0727 + 0.1499i);
Y_bus(12,13) = -1/(0.1400i); Y_bus(12,14) = -1/(0.1231 + 0.2559i); Y_bus(12,15) = -1/(0.066 + 0.1304i); Y_bus(12,16) = -1/(0.0945 + 0.1987i);
Y_bus(14,15) = -1/(0.2210 + 0.1997i);
18
Y_bus(15,18) = -1/(0.1070 + 0.2185i); Y_bus(15,23) = -1/(0.100 + 0.2020i);
Y_bus(16,17) = -1/(0.0824 + 0.1932i);
Y_bus(18,19) = -1/(0.639 + 0.1292i);
Y_bus(19,20) = -1/(0.0340 + 0.0680i);
Y_bus(21,22) = -1/(0.0116 + 0.0236i);
Y_bus(22,24) = -1/(0.1150 + 0.1790i);
Y_bus(23,24) = -1/(0.1320 + 0.2700i);
Y_bus(24,25) = -1/(0.1885 + 0.3292i);
Y_bus(25,26) = -1/(0.2544 + 0.3800i);
Y_bus(25,27) = -1/(0.1093 + 0.2087i);
Y_bus(27,28) = -1/(0.3960i); Y_bus(27,29) = -1/(0.2198 + 0.4153i); Y_bus(27,30) = -1/(0.3202 + 0.6027i);
Y_bus(29,30) = -1/(0.2399 + 0.4533i);
%Determinação dos Elemetnos da Diagonal Principal e Triangular
inferior for(j = 1:N) for(l = 1:N) if(l < j) Y_bus(j,l) = Y_bus(l,j); end if(l~=j) Y_bus(j,j) = Y_bus(j,j) - Y_bus(j,l); end end end
%Cálculo de G_bus e B_bus G_bus = real(Y_bus); B_bus = imag(Y_bus);
%% Resolução do Subsistema 1 %Inicialiazação dos valores iniciais e dos contadores CP = 0; CONV = 0; V = System(:,8); Theta = System(:,9); Q_PV = zeros(N,1); V_PV = zeros(N,1);
while(CP < 1) %Cálculo de x[Ang | Tensao] e g[Delta_P | Delta_Q] %Iniciaçização de P e Q P = 0;
19
Q = 0; for(j = 1:N) P_cal = 0; Q_cal = 0; if(System(j,7)~=1) P = P + 1; Ang(P,1) = Theta(j,1); for(k = 1:N) P_cal = P_cal + V(k,1)*((G_bus(j,k)*cos(Theta(j,1)-
Theta(k,1))+ B_bus(j,k)*sin(Theta(j,1)-Theta(k,1)))); end P_cal = V(j,1)*P_cal; Delta_P(P,1) = P_inj(j,1) - P_cal; end if(System(j,7)==3) Q = Q + 1; Tensao(Q,1) = V(j,1); for(l = 1:N) Q_cal = Q_cal + V(l,1)*((G_bus(j,l)*sin(Theta(j,1)-
Theta(l,1))- B_bus(j,l)*cos(Theta(j,1)-Theta(l,1)))); end Q_cal = V(j,1)*Q_cal; Delta_Q(Q,1) = Q_inj(j,1) - Q_cal; end end
x = [Ang; Tensao]; g = [Delta_P; Delta_Q];
%Avaliação do Erro Erro = max(abs(g)); if(Erro <= Tolerancia) CP = 1; end
if(CP < 1) %% Cálculo do Jacobiano H = zeros(P,P); L = zeros(Q,Q); R = zeros(Q,P); S = zeros(P,Q);
%Determinação dos parâmetros da submatriz H CT_01 = 0; for(j = 1:N) if (System(j,7)~=1) CT_01 = CT_01 + 1; CT_02 = 0; for(k = 1:N) if (System(k,7)~=1) CT_02 = CT_02 + 1; if (j~=k) H(CT_01,CT_02) =
V(j,1)*V(k,1)*(G_bus(j,k)*sin(Theta(j,1)-Theta(k,1)) -
B_bus(j,k)*cos(Theta(j,1)-Theta(k,1))); else V_aux = 0; for(l = 1:N) V_aux = V_aux +
V(l,1)*(G_bus(k,l)*sin(Theta(k,1)-Theta(l,1)) -
B_bus(k,l)*cos(Theta(k,1)-Theta(l,1)));
20
end H(CT_01,CT_02) = -V(j,1)^2*B_bus(j,j) -
V(j,1)* V_aux; end end end end end
%Determinação dos parâmetros da submatriz S CT_01 = 0; for(j = 1:N) if (System(j,7)~=1) CT_01 = CT_01 + 1; CT_02 = 0; for(k = 1:N) if (System(k,7)==3) CT_02 = CT_02 + 1; if (j~=k) S(CT_01,CT_02) =
V(j,1)*(G_bus(j,k)*cos(Theta(j,1)-Theta(k,1)) +
B_bus(j,k)*sin(Theta(j,1)-Theta(k,1))); else V_aux = 0; for(l = 1:N) V_aux = V_aux +
V(l,1)*(G_bus(k,l)*cos(Theta(k,1)-Theta(l,1)) +
B_bus(k,l)*sin(Theta(k,1)-Theta(l,1))); end S(CT_01,CT_02) = V(j,1)*G_bus(j,j) +
V_aux; end end end end end
%Determinação dos parâmetros da submatriz R CT_01 = 0; for(j = 1:N) if (System(j,7)==3) CT_01 = CT_01 + 1; CT_02 = 0; for(k = 1:N) if (System(k,7)~=1) CT_02 = CT_02 + 1; if (j~=k) R(CT_01,CT_02) = -
V(j,1)*V(k,1)*(G_bus(j,k)*cos(Theta(j,1)-Theta(k,1)) +
B_bus(j,k)*sin(Theta(j,1)-Theta(k,1))); else V_aux = 0; for(l = 1:N) V_aux = V_aux +
V(l,1)*(G_bus(k,l)*cos(Theta(k,1)-Theta(l,1)) +
B_bus(k,l)*sin(Theta(k,1)-Theta(l,1))); end R(CT_01,CT_02) = -V(j,1)^2*G_bus(j,j) +
V(j,1)* V_aux; end end
21
end end end
%Determinação dos parâmetros da submatriz L CT_01 = 0; for(j = 1:N) if (System(j,7)==3) CT_01 = CT_01 + 1; CT_02 = 0; for(k = 1:N) if (System(k,7)==3) CT_02 = CT_02 + 1; if (j~=k) L(CT_01,CT_02) =
V(j,1)*(G_bus(j,k)*sin(Theta(j,1)-Theta(k,1)) -
B_bus(j,k)*cos(Theta(j,1)-Theta(k,1))); else V_aux = 0; for(l = 1:N) V_aux = V_aux +
V(l,1)*(G_bus(k,l)*sin(Theta(k,1)-Theta(l,1)) -
B_bus(k,l)*cos(Theta(k,1)-Theta(l,1))); end L(CT_01,CT_02) = -V(j,1)*B_bus(j,j) +
V_aux; end end end end end
%Determinação do Jacobiano J = [H S; R L];
%% Calculo de Delta_x e de novos valores para x Delta_x = inv(J)*g; x = x + Delta_x;
%% Atualização dos novos valores de V e Theta CT_01 = 0; CT_02 = 0; for(j = 1:N) if(System(j,7)~= 1) CT_01 = CT_01 + 1; Theta(j,1) = x(CT_01,1); end if(System(j,7)== 3) CT_02 = CT_02 + 1; V(j,1) = x(P+CT_02,1); end end
%% Resolução parcial do Subsistema 2 (Apenas para Barras PV's) %Cálculo da Potência Reativa nas barras PV's e verificação de
limites for (j = 1:N) %Mudança de barra que se tornou PQ para uma barra PV if((System(j,7)== 3)&&(V_PV(j,1)~=0)) if(V_PV(j,1)==1)
22
if(V(j,1)<=System(j,8)) System(j,7)= 2; V(j,1) = System(j,8); V_PV(j,1) = 0;
end else if(V(j,1)>=System(j,8)) System(j,7)= 2; V(j,1) = System(j,8); V_PV(j,1) = 0; end end end %Identificação da barras PV's if(System(j,7)== 2) Q_aux = 0; for(k = 1:N) Q_aux = Q_aux +
V(k,1)*((G_bus(j,k)*sin(Theta(j,1)-Theta(k,1))-
B_bus(j,k)*cos(Theta(j,1)-Theta(k,1)))); end Q_PV(j,1) = V(j,1)*Q_aux;
%Verificação dos limites de potência reativa %Mudança de barra PV para PQ if(Q_PV(j,1)< QG(j,1)) System(j,7)= 3; V_PV(j,1) = 1; Q_inj(j,1) = QG(j,1);
elseif(Q_PV(j,1)> QG(j,2)) System(j,7)= 3; V_PV(j,1) = 2; Q_inj(j,2) = QG(j,2); end end end
%% Contador que determina o número de iterações CONV = CONV + 1
%% Apangando variaveis dinâmicas clear Delta_P Delta_Q Tensao; end
%% Avaliação da Convergência if(CONV > 100) disp(' '); disp('O processo divergiu!!!'); disp(' '); break end
end