artigo - desenvolvimento de algoritmo de faltas assimétricas em linguagem c · desenvolvimento de...

24
DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm assembling in C Language Autor: Bruno Soares de Araújo Simões¹ Co-Autor: Bruno Pagiola de Oliveira² RESUMO O desenvolvimento deste trabalho busca validar a utilização de recursos computacionais para simulação de cálculos matemáticos complexos em âmbito estudantil, cada vez mais necessários na maioria das profissões em áreas que vão das diversas engenharias a ciências humanas e biológicas, tanto pela precisão obtida quanto pela economia em tempo, dinheiro e profissionais especializados. O caso aqui estudado se trata da determinação da corrente de curto-circuito resultante da ocorrência de uma falta de característica assimétrica em um modelo de sistema elétrico de potência radial, servindo como base para o cálculo de redes com configurações mais complexas, como topologia em anel, que utilizam matrizes de impedância em sua composição. Ele é elaborado a partir da análise teórica e analítica da problemática e, baseado em sua resolução, é implementado o algoritmo em linguagem de programação C que o modela para desenvolvimento do programa computacional capaz de executá-lo. Palavras-Chave: Corrente de Curto-Circuito; Falta Assimétrica; Modelagem Computacional; Linguagem de Programação C. ABSTRACT The development of this work seeks to validate the use of computational resources to simulate complex mathematical calculations in the academic field, increasingly needed in most professions in areas ranging from various engineering to human and biological sciences, both for the accuracy obtained and the economics in time, money and skilled professionals. The case studied here is the determination of the short circuit current resulting from the occurrence of a fault of asymmetric characteristic in a single-line power system model containing only one transmission line, serving as the basis for the calculation of networks with more complex configurations that use impedance matrices in their composition. It is elaborated from the theoretical and analytical analysis of the problem and, based on its resolution, is implemented the algorithm in C programming language that models it for the development of the computational program capable of accomplishing it. Key words: Short-Circuit Current; Asymmetrical Fault; Computational Modeling; Programming Language C. ______________________________ Artigo Científico entregue como avaliação final do Curso de Engenharia Elétrica, da Universidade Salvador – UNIFACS. ¹ Discente do Curso de Engenharia Elétrica da Universidade Salvador – UNIFACS, e-mail: [email protected] ² Especialista em Redes Inteligentes pela Universidade de Pernambuco – UPE, Docente da Universidade Salvador- UNIFACS , e-mail: [email protected]

Upload: others

Post on 08-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C

Assymetrical faults algorithm assembling in C Language

Autor: Bruno Soares de Araújo Simões¹ Co-Autor: Bruno Pagiola de Oliveira²

RESUMO O desenvolvimento deste trabalho busca validar a utilização de recursos computacionais para simulação de cálculos matemáticos complexos em âmbito estudantil, cada vez mais necessários na maioria das profissões em áreas que vão das diversas engenharias a ciências humanas e biológicas, tanto pela precisão obtida quanto pela economia em tempo, dinheiro e profissionais especializados. O caso aqui estudado se trata da determinação da corrente de curto-circuito resultante da ocorrência de uma falta de característica assimétrica em um modelo de sistema elétrico de potência radial, servindo como base para o cálculo de redes com configurações mais complexas, como topologia em anel, que utilizam matrizes de impedância em sua composição. Ele é elaborado a partir da análise teórica e analítica da problemática e, baseado em sua resolução, é implementado o algoritmo em linguagem de programação C que o modela para desenvolvimento do programa computacional capaz de executá-lo. Palavras-Chave: Corrente de Curto-Circuito; Falta Assimétrica; Modelagem Computacional; Linguagem de Programação C.

ABSTRACT The development of this work seeks to validate the use of computational resources to simulate complex

mathematical calculations in the academic field, increasingly needed in most professions in areas ranging from

various engineering to human and biological sciences, both for the accuracy obtained and the economics in

time, money and skilled professionals. The case studied here is the determination of the short circuit current

resulting from the occurrence of a fault of asymmetric characteristic in a single-line power system model

containing only one transmission line, serving as the basis for the calculation of networks with more complex

configurations that use impedance matrices in their composition. It is elaborated from the theoretical and

analytical analysis of the problem and, based on its resolution, is implemented the algorithm in C programming

language that models it for the development of the computational program capable of accomplishing it.

Key words: Short-Circuit Current; Asymmetrical Fault; Computational Modeling; Programming Language C.

______________________________ Artigo Científico entregue como avaliação final do Curso de Engenharia Elétrica, da Universidade Salvador – UNIFACS. ¹ Discente do Curso de Engenharia Elétrica da Universidade Salvador – UNIFACS, e-mail: [email protected] ² Especialista em Redes Inteligentes pela Universidade de Pernambuco – UPE, Docente da Universidade Salvador- UNIFACS , e-mail: [email protected]

Page 2: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

2

INTRODUÇÃO

O sistema elétrico de potência pode ser compreendido como um grande conjunto

complexo, dinâmico e interdependente de componentes que atuam para geração, transmissão e

distribuição de energia elétrica transmitida de acordo com as necessidades de consumo de forma

a manter um balanço entre geração e demanda (EXPÓSITO; CONEJO; CAÑIZARES, 2011,

p.3).

A operação de tamanho sistema requer então grandes investimentos e possui custo

elevado de manutenção, por isso e também para garantir a qualidade e continuidade da

transmissão da energia é necessário um atencioso estudo e planejamento na área de proteção

dessa estrutura com o objetivo de assegurar o controle das perturbações que alteram e colocam

em risco a operação dos diversos equipamentos e instalações a ela ligados (SATO; FREITAS,

2015, p. 20).

Destes destacam-se os curtos-circuitos, dos quais aproximadamente 95% das

ocorrências são os considerados desequilibrados (WESTINGHOUSE ELECTRIC

COMPANY, 1964 apud SATO; FREITAS, 2015, p. 82), que ocorrem devido à ruptura do

isolamento entre as fases ou entre fase e terra encadeando uma variação brusca nas grandezas

em operação, gerando por exemplo, valores de pico de corrente que podem alcançar entre 10 a

100 vezes seu valor nominal, provocando danos aos equipamentos e instalações próximas.

Segundo Expósito, Conejo e Cañizares (2011, p. 255), um sistema trifásico equilibrado

possui grandezas em simetria, o que significa que seu estudo pode ser feito em apenas uma fase

e os resultados estendem-se para as outras a partir das devidas relações matemáticas

estabelecidas, desenvolvimento que não pode ser feito diretamente na análise do

comportamento da corrente em situação de curto-circuito desequilibrado, por não apresentarem

tal conformidade.

Por isso é necessário tratar as fases individualmente, utilizando o Método das

Componentes Simétricas desenvolvido por Charles LeGeyt Fortescue (1876-1936) que

decompõe o sistema trifásico desequilibrado em três sistemas equilibrados: componente de

sequência positiva, negativa e zero, permitindo uma análise individual e a utilização das

relações advindas dessa decomposição para obtenção dos resultados para o conjunto em

desequilíbrio (EXPÓSITO; CONEJO; CAÑIZARES, 2011, p.225).

Page 3: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

3

Ainda assim, dependendo da configuração da rede examinada, os cálculos podem

assumir tal complexidade que se faz necessária a utilização de softwares de simulação e

modelagens matemáticas, ferramentas importantes por permitirem ao engenheiro eletricista, por

exemplo, simular as diversas situações para fluxo de potência, faltas ou transientes em

diferentes configurações de redes, necessários para o estudo de opções de expansão para as

áreas de transmissão e geração de energia (GLOVER; SARMA; OVERBYE, 2012, p. 23).

Essas ferramentas são amplamente utilizadas para estudos de planejamento pelas

organizações competentes, mas no âmbito acadêmico existe uma certa dificuldade no acesso às

mesmas por serem direcionadas à profissionais da área, apresentando geralmente, alto custo

para aquisição e treinamento.

Dentro desse contexto, foi desenvolvido então um algoritmo em linguagem de

programação C que visa efetuar os cálculos da corrente de falta resultante de curto-circuito

assimétrico em modelos de sistemas de potência radial para as situações de falta fase-terra, fase-

fase e fase-fase-terra, a partir do fornecimento dos dados dos equipamentos que configuram a

rede do sistema na qual o curto foi estabelecido. Para validar os resultados obtidos é utilizada a

demonstração analítica do problema modelo escolhido.

A seleção do ambiente de programação em C se dá pelo fato de ser uma linguagem,

segundo Sharma e Thapliyal (2010, p. 77), de definições simples e ampla portabilidade, ou seja,

poucas palavras chaves servem como base para toda a implementação que se pode fazer e têm

capacidade de ser executada em diversos sistemas diferentes. É modular, desenvolvida em

rotinas chamadas funções que não são dependentes da implementação original e, portanto,

podem ser reutilizadas em diversos programas.

Além de todas essas características é uma das linguagens que possui mais tempo no

mercado o que a faz ter uma comunidade dedicada ao seu aprimoramento e manutenção,

proporcionando acesso a uma maior e mais diversificada quantidade de conteúdo para

referência e estudo (SHARMA; THAPLIYAL, 2010, p. 77).

Page 4: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

4

DESENVOLVIMENTO

1 Metodologia

O objetivo do projeto proposto é um programa executável que possa realizar os cálculos

para obtenção da corrente de falta em dado ponto de um modelo do sistema elétrico de potência

radial, a partir de uma configuração que deve ser inserida como parâmetro de entrada. Para

chegar a tal conclusão é necessária uma fundamentação matemática e teórica para a

compreensão dos resultados da ocorrência de uma falta em um sistema de potência elétrico.

As etapas utilizadas para o cálculo analítico do exemplo servirão como base para o

desenvolvimento do algoritmo computacional que irá representá-lo (ANEXO II): primeiro a

inserção dos parâmetros do sistema será feita através de um bloco de texto com os valores que

representam os elementos do sistema em questão, em seguida todos os valores devem ser

representados em um mesmo sistema de medidas para facilitar os cálculos, a partir desse ponto

começa verdadeiramente as etapas de cálculo específicas para análise de faltas e, por fim, os

resultados são apresentados em um novo bloco de texto criando um registro dos dados, além de

mostrar novamente as informações inicialmente fornecidas para verificação.

Com o rascunho do algoritmo elaborado, é preciso se familiarizar com a linguagem de

programação utilizada, no caso C, pois para a implementação de cada etapa de cálculo, obtenção

e apresentação de dados, é necessária a criação de rotinas que utilizam estruturas e

manipulações específicas encontradas na sintaxe da linguagem e que devem ser respeitadas de

acordo com o que a sua biblioteca oferece e é capaz de aceitar.

A conclusão do trabalho pretende então, mostrar os resultados obtidos e as implicações

que a implementação e utilização de um algoritmo para soluções matemáticas podem

proporcionar no meio acadêmico bem como as particularidades encontradas durante o processo

de desenvolvimento do projeto.

2 Sistema Elétrico de Potência

Page 5: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

5

Um sistema elétrico de potência é a estrutura responsável por converter fontes de energia

de diferentes origens, conectar e transportá-las em forma de energia elétrica através de linhas

de transmissão para as diversas unidades consumidoras do país. É formado pela interconexão

de vários equipamentos com valores distintos de potência, tensão e impedância (SATO;

FREITAS, 2015, p.28).

De acordo com Kindermann (2010, p. 2), como o sistema opera geralmente em estado

equilibrado, isso permite que ele seja modelado por uma representação simbólica conhecida

como diagrama unifilar. Um exemplar pode ser visto na figura 1, cuja representação e dados

foram retirados do exemplo 9.1 da quinta edição do livro Power Systems Analysis & Design

(GLOVER; SARMA; OVERBYE, 2012, p. 475) e será utilizado como o problema modelo a

ser tratado.

Figura 1. Diagrama unifilar utilizado como modelo.

Fonte: Adaptado de GLOVER; SARMA; OVERBYE (2012)

Page 6: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

6

2.1 Elementos do Sistema Elétrico de Potência

• Gerador e Carga: Representados pelos círculos na figura 1 (identificados como

G e M respectivamente). Um dos componentes essenciais para o sistema elétrico

de potência é o gerador conhecido como síncrono ou alternador, por conseguir

gerar alta potência em alta tensão. A energia produzida pelos geradores é

conectada e distribuída para abastecer a potência total demandada pelas cargas

que podem ser comerciais, residenciais e industriais, que representam a maior

parcela do sistema de cargas por causa da larga utilização de motores (SADAAT,

2010, p. 41).

• Transformador: Representado pelos símbolos sob a identificação T1 e T2 na

figura 1, transfere potência com alta eficiência de um nível de tensão para outro

com pequenas perdas. (SADAAT, 2010, p. 41).

• Linhas de Transmissão: Podem ser entendidas como as ligações entre todos os

elementos, responsável por transportar a energia com segurança (EXPÓSITO;

CONEJO; CAÑIZARES, 2011, p.44). Quando são explicitamente representadas

(identificação Linha na figura 1) significa que possui valores que devem ser

considerados nos cálculos.

• Impedâncias: O termo diz respeito à capacidade de resistência ao fluxo da

corrente no sistema – valor representado por um número real (R) e um

imaginário (X) na expressão: R+jX. Cada um dos elementos anteriores pode ser

expresso como uma impedância para efeito de cálculos, o que será feito durante

todo o prosseguimento do trabalho e cujos valores são evidenciados na figura 1

pelas identificações: X, X”, X1, X2, Xn e X0 (ALEXANDER; SADIKU, 2013,

p. 346).

• Ligações de Conexão: As ligações de geradores, cargas e transformadores

mostram como esses elementos estão conectados à rede e cada tipo de ligação é

tratada de forma singular nos cálculos. São representadas pelos símbolos Y

(conexão estrela) e ∆ (conexão triângulo ou delta) na figura 1 (ALEXANDER;

SADIKU, 2013, p. 449-520).

• Sistema de Proteção: Para garantir a segurança e manutenção da operação desses

equipamentos e da rede elétrica como um todo, são requeridos dispositivos de

Page 7: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

7

proteção como chaves de manobra, fusíveis, disjuntores entre outros. São

necessários para desenergizar a rede seja em condições normais de operação ou

em casos de faltas (SADAAT, 2010, p. 50).

2.2 Sistema Radial

Um sistema radial (figura 2), que é a topologia utilizada para o desenvolvimento do

algoritmo, é um arranjo que possui uma única fonte alimentando múltiplas cargas,

implementado geralmente em sistemas de distribuição. Nesse sistema, a energia elétrica flui

sem ramificações e o cálculo da corrente de curto-circuito se resume a obter as impedâncias

acumuladas desde a geração até o ponto de defeito (SATO; FREITAS, 2015, p. 89).

Figura 2. Exemplo de sistema radial e elementos que o compõe.

Fonte: SATO; FREITAS (2015)

2.3 Valores Por Unidade (P.U.)

Segundo Sadaat (2010, p. 127), o sistema de valor por unidade permite que qualquer

grandeza física seja expressa como um decimal ou múltiplo de um valor base escolhido. Desse

modo, a configuração de rede de um sistema de potência com geradores, transformadores,

Page 8: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

8

linhas e cargas (em diferentes níveis de tensão) pode ser reduzida à um simples sistema de

impedâncias, referenciadas à um valor de tensão comum a todas.

A equação 1 representa a função geral para transformação dos valores reais para valores

por unidade, tendo em vista que todas as relações das grandezas envolvidas nos cálculos são

mantidas e a equação 2 é a mudança de base para impedância do equipamento (Zpu) caso a base

do mesmo e a escolhida para os cálculos sejam diferentes, onde Z’pu é a impedância com o valor

representado na base escolhida (SADAAT, 2010, p. 127-129).

Valor por unidade= Valor real

Valor de base (1)

Z'pu=Zpu∙ �Valor de Tensão do Equipamento

Valor de Tensão Base do Sistema�2

∙Valor de Potência Base do Sistema

Valor de Potência do Equipamento (2)

3 Teorema de Fortescue

Fortescue estabeleceu que um sistema de n fasores desequilibrados pode ser decomposto

em n sistemas de fasores equilibrados denominados componentes simétricas dos fasores

originais (KINDERMANN, 2010, p.38).

Para o caso de sistemas de potência trifásicos, o teorema é utilizado para três fasores

representando uma fase cada, onde a componente simétrica positiva possui mesmo módulo e

defasagem de 120° respeitando a sequência de fase original, a negativa possui mesmo módulo,

defasagem de 120°, mas sequência de fase inversa ao original e a componente zero tem mesmo

módulo e não possui defasagem (GLOVER; SARMA; OVERBYE 2012, p. 428-429), desse

modo para fasores de tensão nas fases a, b e c por exemplo, temos a Transformada de Fortescue

e consequentemente sua Transformada Inversa:

T= �Va

Vb

Vc

� = �1 1 11 α2 α

1 α α2� ∙ �V0

V1V2

� (3)

T-1= �V0

V1V2

� =13 ∙ �1 1 1

1 α α2

1 α2 α

� ∙ �Va

Vb

Vc

� (4)

A partir dessas duas transformadas e das características particularidades de cada

componente, o sistema elétrico é redesenhado (figura 3 item I) e pode ser tratado em cada fase

com as equações próprias derivadas da nova configuração.

Page 9: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

9

Vale salientar que, para a sequência zero que tem como referência o terra, as ligações

dos componentes podem alterar o fluxo de corrente isolando partes do sistema, para cargas e

geradores isso ocorre quando são ligados à rede em triângulo ou estrela sem aterramento, já

para transformadores as situações são mais particulares (GLOVER; SARMA; OVERBYE

2012, p. 433-457) e podem ser observadas na figura 3 item II.

4 Faltas Assimétricas

Os curtos-circuitos bifásicos, bifásicos à terra e monofásico à terra são considerados

faltas assimétricas justamente por incidir sobre apenas uma ou duas fases por vez. Ao tratá-las,

particularmente com o objetivo acadêmico introdutório ao assunto para simplificá-lo (não se

deve fazê-lo para fins profissionais já que em condições reais o sistema deve ser tratado como

se apresenta), assume-se que (GLOVER; SARMA; OVERBYE, 2012, p. 471-474):

• O sistema opera em condição balanceada e estável antes da falta ocorrer.

• As correntes de pré-falta de cargas, resistências e admitâncias shunt de linhas,

transformadores e armaduras de máquinas síncronas são desconsideradas, junto

com motores de indução e todas as impedâncias de cargas não rotativas.

Para efeito da realização dos cálculos desenvolvidos para este projeto e pelo fato de uma

análise teórica não ser o objetivo aqui pretendido, as sessões a seguir apresentarão somente as

características principais de cada falta e as equações finais encontradas através da aplicação do

Teorema de Fortescue sobre equações que regem os sistemas quando são divididos em suas

componentes simétricas cujas deduções podem ser observadas em materiais bibliográficos

voltados para o tema de Sistemas Elétricos de Potência, constando inclusive no referencial deste

trabalho.

Page 10: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

10

Figura 3. (I) Diagrama unifilar de um sistema trifásico, as três redes de sequência do sistema e o equivalente

Thévenin de cada rede para uma falta no ponto P. (II) Representação para as ligações do transformador no

circuito equivalente de sequência zero.

(I) (II)

Fonte: STEVENSON (1986)

4.1 Curto Fase - Terra

Nessa situação, existe corrente circulando somente na fase onde o curto ocorre, portanto

se a falta é na fase A: a corrente na fase B e C e a tensão na fase A são nulas (GLOVER;

SARMA; OVERBYE, 2012, p. 479-480). Desse modo:

I0=I1=I2= Vf

Z1+Z2+Z0+(3∙Zf) (5)

If=3∙I0= 3∙Vf

Z1+Z2+Z0+(3∙Zf) (6)

Page 11: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

11

4.2 Curto Fase – Fase

Possuindo conexão de curto entre duas fases significa que circula corrente somente entre

elas ainda que com sentidos opostos e suas tensões são iguais (GLOVER; SARMA;

OVERBYE, 2012, p. 483-484). Assim:

I1=-I2=Vf

Z1+Z2+Zf (7)

Ib=-Ic=-j∙ √3∙I1=-j∙ √3∙Vf

Z1+Z2+Zf (8)

4.3 Curto Fase – Fase – Terra

Dado que o curto acontece entre duas fases e o terra, as tensões entre essas fases e o

terra são iguais, e a corrente na fase restante é nula (GLOVER; SARMA; OVERBYE, 2012, p.

485-487). Segue então que:

Ia1= Vf

z1+ ��Z0+3∙Zf ∙Z2

Z0+Z2� (9)

Ia2= - Vf-�Ia1∙Z1 Z2

(10)

Ia0= -Vf-�Ia1∙Z1 Z0+(3∙Zf)

(11)

Lembrando que, pela transformada de Fortescue (equação 3):

IB= Ia0+�α2∙Ia1 +�α∙Ia2 (12)

IC= Ia0+�α∙Ia1 +�α2∙Ia2 (13)

Page 12: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

12

5 Linguagem de programação C

Os programas em C consistem em módulos de algoritmos chamados funções, ou seja,

uma série pré-determinada de ações executadas em uma ordem específica visando a resolução

de um problema ou completar um objetivo. Podem ser desenvolvidas pelos próprios

programadores, mas também são encontradas na C Standard Library, uma biblioteca padrão

que contêm diversas funções já implementadas e que auxiliam na elaboração de rotinas mais

complexas (DEITEL, 2011, p. 14).

De acordo com Kochan (2014, p. 44-122), o controle e a implementação dessas funções

ou rotinas são realizados pela utilização de vários tipos de dados, compreendidos como um

conjunto de valores que uma variável pode armazenar e de estruturas de controle de sequência

(processar as instruções em C na ordem em que foram escritas), seleção (realização de testes

condicionais para determinar o curso da próxima ação) e iteração (executar mesmo conjunto de

instruções repetidamente até que uma condição seja satisfeita).

Então, a partir da aplicação apropriada do conjunto de estruturas de controle, diversos

tipos de dados (ANEXO I) e respeitando as restrições da sintaxe da linguagem C – exemplo:

existe distinção entre letras maiúsculas e minúsculas, de modo que a declaração de uma variável

de nome “A” e outra de nome “a” é viável (KOCHAN, 2014, p. 33) –, foi possível criar as

rotinas de instruções visando a representação do desenvolvimento do cálculo analítico de faltas

assimétricas em forma de algoritmo para atingir o objetivo proposto do programa aqui

desenvolvido.

6 Desenvolvimento do experimento

6.1 Organização do algoritmo

O desenvolvimento do algoritmo foi baseado nos passos analíticos gerais para a

conclusão dos problemas que envolvem cálculos de corrente de falta para um dado ponto do

sistema elétrico.

Page 13: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

13

Em um primeiro momento, para o programa compreender o diagrama do sistema

elétrico que está sendo utilizado como princípio para a questão, o usuário deve informar os

dados em blocos de texto criados individualmente para os elementos: gerador, carga,

transformador e linha, além de características mais gerais do sistema e da falta como base do

sistema, número total de elementos, tensão e impedância de falta, dentre outros.

Estes blocos de texto se encontram no mesmo diretório do programa e, para facilitar a

entrada dos dados, estão nomeados com suas respectivas denominações e possuem instruções

para a ordem na qual devem ser informados bem como as grandezas utilizadas e entradas

particulares como o tipo de ligação de cargas, transformadores e geradores. A entrada de dados

é feita ainda antes de iniciar o executável.

Completando o informe dos dados corretamente (figura 4), pode-se então iniciar o

programa onde a primeira rotina consiste em inicializar as variáveis que irão guardar os dados

dos elementos do sistema elétrico. Para isso são utilizadas estruturas de dados conhecidas como

structs em conjunto com arrays, onde o primeiro guarda os dados de cada elemento e o segundo

guarda todas as estruturas similares do primeiro, por exemplo, se o sistema possui dois

transformadores, irá existir duas structs contendo os dados de cada uma e um array contendo

as duas structs.

Essa organização é necessária para facilitar a utilização de funções, (entende-se aqui e,

ao longo do artigo, o termo “função” como sendo um conjunto de rotinas necessárias para a

obtenção de um resultado específico), cujos parâmetros (dados de entrada) devem ser

informados a cada uso, portanto quanto mais compactados os dados estiverem, mais fácil se

torna a sua manipulação.

Com todos os dados armazenados em variáveis no programa, passa-se então aos cálculos

propriamente ditos. Primeiramente todos os valores e grandezas devem ser colocados no

sistema por unidade (p.u.), para isso utiliza-se funções baseadas nas equações 1 e 2 e uma struct

particular que calcula de antemão, a partir da base escolhida pelo usuário, todas as bases do

sistema (struct base).

Assim, e com a informação dada pelo usuário sobre a base a qual pertence cada

elemento, a função recebe os valores (corrente, tensão, impedância e potência) da struct base

do elemento selecionado e utiliza, particularmente, a equação 2 para ter o valor da sua

impedância representado de acordo com base do sistema. A conclusão da mudança de base de

todos os elementos encerra a segunda etapa geral do programa.

Page 14: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

14

Antes de explicar o conjunto de instruções que compreendem o terceiro passo do

algoritmo é necessário entender que, durante o armazenamento dos dados das variáveis em suas

respectivas estruturas, dentro da rotina do processo de cada elemento foi também sendo

preenchida com valores uma struct denominada impedância cuja função é essencial para o

prosseguimento do programa.

Figura 4. (I) Bloco de notas exemplo para transformador. (II) Entrada de dados para o transformador.

(I) (II)

Fonte: Elaborado pelo próprio autor.

Ela é composta pelos campos “valor”, responsável por armazenar o valor da impedância

correspondente à sequência zero, positiva ou negativa do elemento; “status”, indicando o tipo

de ligação que o elemento possui com a rede elétrica (de vital importância principalmente para

a construção do diagrama de sequência zero); “barra_antes” e “barra_depois”, que guardam

justamente a ligação entre os elementos e representam as âncoras sobre as quais o programa se

baseia para compreender todas as conexões do diagrama do sistema elétrico que se pretende

representar.

Sobre esses campos é feita toda a programação para a montagem da rede elétrica pelo

algoritmo, esse passo então é composto por três rotinas principais cada uma com o objetivo de

calcular as impedâncias para sequência positiva, negativa e zero do sistema.

A rotina utilizada para completar o terceiro passo é composta por funções cujas

intenções são extrair a impedância de Thévenin equivalente para cada sequência a partir do

ponto de falta assim, logo no início, o campo “valor” da struct impedância é preenchido com

Page 15: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

15

os valores das impedâncias de cada elemento já na base do sistema, lembrando que cada

sequência tem seu próprio valor (calculados na segunda etapa do programa).

Para a sequência positiva e negativa, o tipo de ligação dos elementos não interfere na

composição da rede, logo a variável “status” também é alterada para diferenciar somente

geradores e cargas que indicam, respectivamente início e fim de um ramo do sistema, enquanto

que para a sequência negativa todas as ligações devem ser respeitadas já que podem indicar a

necessidade ou não da utilização de um conjunto de impedâncias para o cálculo final.

Compreendendo então que as únicas diferenças entre as três rotinas serão os valores da

variável “valor” e “status”, o próximo passo tomado é dividir o diagrama entre elementos antes

da falta e elementos depois da falta, e essa busca é feita utilizando os campos de “barra_antes”

e “barra_depois” da struct impedância.

O objetivo dessa busca, principalmente para sequência positiva e negativa, é alcançar

o último elemento do ramo (carga ou gerador), seja antes ou depois da falta, guardando o

caminho tomado para somar todas as impedâncias pela qual passou respeitando também as

conexões em paralelo que devem receber o tratamento apropriado.

Uma ressalva a ser feita é que, para a sequência zero, a busca pode ou não terminar em

gerador e carga, já que as ligações dos transformadores também podem isolar uma parte do

circuito, sendo assim, o tratamento dado é verificar o campo “status” do elemento durante o

algoritmo da busca e caso ele indique que a ligação significa isolamento de circuito, a busca

nesse ramo será encerrada e o valor retornado será zero, ignorando a contribuição dos valores

de impedância conectados a esse ramo.

Ao fim do processo para antes e depois restará uma impedância de cada lado da falta o

que resultará no cálculo dessas impedâncias em paralelo para finalmente obter o valor final da

impedância de Thévenin equivalente para cada sequência encerrando a terceira etapa do

programa.

A próxima fase é justamente a aplicação das equações 5 a 13, utilizando as impedâncias

equivalentes encontradas para cada sequência e as informações de falta fornecidas pelo usuário

e guardadas na struct falta. Ela contém o valor de tensão, impedância (se houver) e o tipo de

falta que o sistema sofre, informações necessárias para a escolha das equações corretas a serem

utilizadas para a obtenção da corrente de falta apropriada.

Por fim, com a corrente da falta desejada devidamente calculada, a última rotina tem a

responsabilidade de fornecer os resultados encontrados em forma de bloco de texto para o

usuário, através do documento “resultados.txt”. Tendo em vista que um dos objetivos principais

Page 16: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

16

do algoritmo é ser utilizado em âmbito acadêmico, esse documento contém também os valores

iniciais fornecidos de todos os elementos bem como os encontrados durante todo o processo de

cálculo, por exemplo, os valores de suas impedâncias na base do sistema.

Apresenta também as variáveis intermediárias, ou seja, os valores que precisam ser

encontrados e contribuem para o cálculo do resultado final como as impedâncias de Thévenin

equivalentes e as correntes de sequência positiva, negativa e zero e também, para melhor

averiguação dos resultados, o valor final é dado em valor por unidade e em valor real, utilizando

a base do sistema sob a qual a falta está localizada.

6.2 Desenvolvimento do Problema Modelo

A figura 1 é o exemplo do sistema elétrico que será utilizado para verificar a

funcionalidade do algoritmo aqui desenvolvido. J.D. Glover, M. S. Sarma e T. J. Overbye

utilizam essa representação de diagrama unifilar como exemplo para a resolução de exercícios

para falta fase-terra, fase-fase e fase-fase-terra, onde a falta ocorre no barramento 2 (figura 1).

Empregando o desenvolvimento analítico feito e os resultados evidenciados,

comprovados por tais autores, esse exemplo se torna ideal para ser utilizado como modelo para

verificar se o programa implementado corresponde ao objetivo desejado.

Todas as resoluções analíticas a seguir foram retiradas das páginas 481, 485 e 488 da

quinta edição do livro Power Systems Analysis & Design de J.D. Glover, M. S. Sarma e T. J.

Overbye, editora Cengage Learning, para soluções do problema envolvendo falta fase-terra,

fase-fase e fase-fase-terra, respectivamente.

Figura 5. Rede de sequência positiva, negativa e zero com suas respectivas impedâncias equivalentes para o caso

de falta no barramento 2.

Page 17: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

17

Fonte: Adaptado de GLOVER; SARMA; OVERBYE (2012)

6.2.1 Resolução do Problema para Falta Fase – Terra

Utilizando as impedâncias encontradas a partir das componentes de sequência zero,

positiva e negativa (figura 5), sabendo que não existe impedância de falta, com as equações 5

e 6 tem-se:

I0=I1=I2= 1.05∠0°

j(0.25+0.13893+0.14562) (14)

I0=I1=I2= 1.05

j(0.53455)= -j1.96427 pu (15)

IF= 3∙I0=3∙�-j1.96427 =-j5.8928 pu (16)

A base de corrente no barramento 2 é 4.1837 kA. A partir da equação 1:

IF real= Ibase∙Ipu=4.1837∙103∙�-j5.8928 =24.65∠90° kA (17)

6.2.2 Resolução do Problema para Falta Fase – Fase

Page 18: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

18

Continuando com os mesmos valores do sistema para as impedâncias equivalentes de

cada componente, sabendo que a falta se dá entre as fases b e c, pede-se para calcular a corrente

de falta nessas fases. Utilizando as equações 7 e 8:

I1=-I2= 1.05∠0°

j�0.13893+0.14562 = 3.690∠-90° pu (18)

IFb=�-j√3�∙�3.690∠-90° =-6.391= 6.391∠180° pu (19)

Novamente, para o cálculo da corrente real, utilizando a mesma base e a equação X para

a corrente de falta IFc, temos:

IFb real = 4.1837∙103∙�6.391∠180° = 26.74∠180° kA (20)

IFc real = -IFb real = 26.74∠0° kA (21)

6.2.3 Resolução do Problema para Falta Fase – Fase – Terra

Para esta solução, as correntes de todas as sequências são necessárias, ressaltando que

J.D. Glover, M. S. Sarma e T. J. Overbye utilizam equações para I0 e I2 tecnicamente diferentes

das discutidas durante o desenvolvimento teórico e que serão mantidas para efeito comparativo

demonstrando que não existe diferença no resultado. Utiliza-se ainda as mesmas impedâncias

encontradas na figura 5, as equações relativas à falta estabelecida (equações 9 a 13) e ainda

segundo o problema Zf (Impedância de Falta) = 0, assim:

I1= 1.05∠0°

j �0.13893+ � 0.14562∙0.25

0.14562+0.25�� = -j4.5464 pu (22)

I2=�-I1 ∙ � Z0+3∙Zf

Z0+Z2+�3∙Zf � =�j4.5464 ∙ � 0.25

0.25+0.14562� =j2.8730 pu (23)

I0=�-I1 ∙ � Z2

Z0+Z2+�3∙Zf � =�j4.5464 ∙ � 0.14562

0.25+0.14562� =j1.6734 pu (24)

Utilizando as equações 12 e 13 para encontrar as correntes de falta, têm-se:

IFb= j1.6734+�α2∙-j4.5464 +�α∙j2.8730 =6.8983 ∠158.66° pu (25)

IFc= j1.6734+�α∙-j4.5464 +�α2∙j2.8730 =6.8983 ∠21.34° pu (26)

Em valores reais:

Page 19: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

19

IFc real = 4.1837∙103∙�6.8983∠158.66° = 28.86∠158.66° kA (27)

IFb real = 4.1837∙103∙�6.8983∠21.34° = 28.86∠21.34° kA (28)

7 Resultados

Aplicando-se os valores de entrada do sistema a ser modelado ao cálculo do

algoritmo para cada tipo de curto assimétrico (fase-terra; fase-fase e fase-fase-terra), o

programa retornou o relatório com os resultados contendo as impedâncias equivalentes para

cada componente simétrica, corrente por componente simétrica e corrente de curto (em notação

por unidade e na sua grandeza original). Como pode ser visto nas Figuras 6(a), 6(b) e 6(c)

Cada módulo foi avaliado diversas vezes a partir da utilização de variáveis diferentes,

o que se mostrou de extrema importância pois para alguns casos uma rotina funcionava e para

outros não, como o tratamento de elementos em paralelo quando um deles tem valor zero

(resultado alcançado somente em sequência zero quando um ramo deve ser desconectado por

causa da ligação de um elemento).

Figura 6. Bloco de texto resultante da utilização do algoritmo aqui desenvolvido para resolução do problema para as condições de falta: (a) Fase-Terra (b) Fase-Fase (c) Fase – Fase – Terra.

(a)

Page 20: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

20

(b)

(c)

Fonte: Elaborado pelo próprio autor.

Essas diversas tentativas serviram para fazer ajustes que permitissem tratar de questões

cada vez mais generalizadas garantindo que o programa consiga solucionar o maior número

possível de casos que se enquadrem dentro do universo ao qual se propôs. Ainda assim, o

algoritmo possui muitas possibilidades de melhorias, por exemplo, rotinas para tratamento de

redes mais complexas, faltas em mais de um ponto e entrada de dados de diferentes dimensões.

Page 21: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

21

CONSIDERAÇÕES FINAIS

A ideia de cada bloco implementado e testado isoladamente contribuiu também para o

propósito acadêmico do algoritmo já que ele pode ser desmembrado e utilizado somente nas

áreas de interesse, como o módulo de cálculo e mudança de base para valor por unidade em

matérias relacionadas a Sistemas Elétricos de Potência, além de poder ser aproveitado como

fundamento para o desenvolvimento de algoritmos mais complexos.

Além disso, o conhecimento teórico exigido para a realização do trabalho é

consolidado pelas consultas e estudos em diversas fontes para tratar de detalhes que variam de

problema em problema, e conceitos que são abordados de diferentes maneiras por cada autor,

todos visando a melhor compreensão do aluno gerando uma perspectiva ampla sobre o assunto

tratado.

Obviamente, o sistema modelado para o cálculo no algoritmo desenvolvido é limitado,

com poucos elementos e apenas duas barras, uma de geração e outra de carga. Porém validou

matematicamente o algoritmo em relação aos cálculos desenvolvidos manualmente. Uma

contribuição válida e até mesmo uma sugestão de um estudo futuro é aplicar a modelagem no

referido algoritmo de um sistema mais próximo do que temos na prática, de 50 a 100 barras, o

que exigiria bastante dos recursos computacionais para sua execução.

Assim, pode-se perceber a utilidade da aplicação de algoritmos computacionais para

resolução de problemas e a necessidade de investimento dessa solução no meio acadêmico,

gerando mais conhecimento e capacitação para os estudantes, principalmente em uma realidade

profissional onde as ferramentas computacionais estão sendo utilizadas em larga escala.

Page 22: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

22

REFERÊNCIAS BIBLIOGRÁFICAS

ALEXANDER, Charles K.; SADIKU, Matthew N. O.. Fundamentos de Circuitos Elétricos. 5ª ed. Porto Alegre: AMGH, 2013. DEITEL, Paul J.; DEITEL, Harvey M.. C: como programar. 6ª ed. São Paulo: Pearson Prentice Hall, 2011. EXPÓSITO, Antonio Gómez-; CONEJO, Antonio J.; CAÑIZARES, Claudio. Sistemas de Energia Elétrica: Análise e Operação. 1ª ed. Rio de Janeiro: LTC, 2011. GLOVER, J. Duncan; SARMA, Mulukutla S.; OVERBYE, Thomas J. Power Systems Analysis & Design. 5ª ed. EUA: Cengage Learning, 2012. KINDERMANN, Geraldo. Curto-Circuito. 5ª ed. Porto Alegre: UFSC – EEL – LABPLAN, 2010. KOCHAN, Stephen G.. C Programming. 4ª ed. EUA: Addison-Wesley, 2014. SADAAT, Hadi. Power System Analisys. 3ª ed. EUA: PSA Publishing, 2010. SATO, Fujio; FREITAS, Walmir. Análise de curto-circuito e princípios de proteção em sistemas de energia elétrica. 1ª ed. Rio de Janeiro: Elsevier, 2015. SHARMA, M. K.; THAPLIYAL, M. P.. Concept of Computer and ‘C’ Programming. 1ª ed. India: Laxmi Publications, 2010. STEVENSON, William D.. Elementos de análise de sistemas de potência. 2ª ed. São Paulo: McGraw-Hill, 1986.

Page 23: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

23

ANEXO I - EXEMPLOS DE TIPOS DE DADOS, OPERADORES, ESTRUTURAS DE

CONTROLE E FUNÇÕES DA BIBLIOTECA PADRÃO DA LINGUAGEM C.

Dados

Tipo Representação

Int Armazena valores numéricos inteiros (reais)

Float / Double Armazena valores numéricos decimais (reais)

Char Armazena caracteres (existe distinção entre letras

maiúsculas e minúsculas)

Struct Armazena múltiplos tipos de dados

Ponteiro Armazena endereço de outra variável na memória

Complexo Armazena números complexos

Array Estrutura que armazena uma coleção de

determinado tipo de elementos

Operadores

Tipo Representação

Aritmético Subtração

Aritmético Incremento

Relacional Maior que ou igual

Relacional Diferente de

Lógico Operação lógica de condição (informa se é

verdadeira ou falsa a sentença)

Estruturas de Controle

Tipo Representação

Condicional Decide ordem de próxima instrução a ser realizada

Iteração Repete conjunto de instruções até condição ser

satisfeita

Biblioteca Padrão C

Tipo Declaração de Utilização

Funções de Entrada/Saída #include <stdio.h>

Operações matemáticas complexas #include <math.h>

Fonte: Elaborado pelo próprio autor.

Page 24: Artigo - Desenvolvimento de Algoritmo de Faltas Assimétricas em Linguagem C · DESENVOLVIMENTO DE ALGORITMOS DE FALTAS ASSIMÉTRICAS EM LINGUAGEM C Assymetrical faults algorithm

24

ANEXO II – FUXOGRAMA DO ALGORITMO DESENVOLVIDO.

Fonte: Elaborado pelo próprio autor.