MODELAMIENTO E IMPLEMENTACI ´ ON DE UN ESQUEMA DE CO-SIMULACI ´ ON BASADO EN PYTHON PARA PROTECCI ´ ON DE SISTEMAS
DE POTENCIA SIMULADOS EN POWER FACTORY
Proyecto de grado para obtener el titulo de Pregrado
en
Ingenier´ıa El´ ectrica
por
Jeison Alexander Timana Rangel 201617870
asesor:
Gustavo Andr´ es Ramos L´ opez
co-asesor:
David Felipe Celeita Rodriguez
jurado:
Paulo Manuel de Oliveira de Jesus
FACULTAD DE INGENIER´IA - DEPARTAMENTO DE INGENIER´IA
EL´ ECTRICA Y ELECTR ´ ONICA
Agradecimientos
A las personas que me acompa˜naron en las etapas importantes de mi vida, a mis amigos quienes me han apoyado, a las personas que trabajan a diario para mejorar la calidad de vida de las personas mas vulnerables y en especial a mis padres por sus esfuerzos para crecer personal y profesionalmente.
A mi asesor, el profesor Gustavo Ramos, quien a partir de sus conocimientos me permiti´o desarrollar habilidades ´utiles para el desarrollo de proyecto. A David Celeita, mi co-asesor, un gran ser humano que da la motivaci´on para mejorar la calidad de mis proyectos.
Abstract
This project focuses on designing and implementing a virtualized relay modeled in Python to be installed in a Virtual Relay in the Loop scheme, in terms of the project.
The work consists of designing a Web interface that allows configuring a virtualized relay in the DIgSILENT PowerFactory power system simulation software and performing simu- lations under electrical fault conditions; The relay performs protection algorithms based on the IEEE / ANSI standard C37.2 and implementations of manufacturers such as SEL and Siemens to execute trip orders given a protection coordination. The interface allows a user to configure the ANSI 50, 61, Directional Overcurrent, 79 and 87L functions; in ad- dition, select projects stored by the user in the PowerFactory software, define fault events and select the measurement points that will be processed by the relay. This document describes the stages and methodologies implemented to prepare the project. Finally, a test is performed with the IEEE 13 node case, modeled by the software developers.
Resumen
Este proyecto se enfoca en dise˜nar e implementar un rel´e virtualizado modela- do en Python para ser instalado en un esquema Virtual Relay in the Loop, en t´erminos del proyecto. El trabajo se compone en dise˜nar una interfaz Web que permita configurar un rel´e virtualizado en el software de simulaci´on de sistemas de potencia DIgSILENT PowerFactory y realizar simulaciones bajo condiciones de fallas el´ectricas; el rel´e realiza algoritmos de protecci´on basados en el est´andar C37.2 del IEEE/ANSI e implementa- ciones de fabricantes como SEL y Siemens para ejecutar ordenes de disparo dada una coordinaci´on de protecciones. La interfaz permite a un usuario realizar la configuraci´on de las funciones ANSI 50, 61, sobre corriente direccional, 79 y 87L; adem´as, seleccionar proyectos almacenados por el usuario en el software PowerFactory, definir eventos de falla y seleccionar los puntos de medici´on que ser´an procesador por el rel´e. El presente docu- mento describe las etapas y metodolog´ıas implementadas para la elaboraci´on del proyecto.
Finalmente se realiza un test con el caso IEEE 13 nodos, modelado por los desarrolladores del software.
´ Indice general
Agradecimientos I
Abstract II
Resumen III
1. Introducci´on 1
2. Objetivos 2
2.1. Objetivo General . . . 2
2.2. Objetivos Espec´ıficos . . . 2
2.3. Alcance y productos finales . . . 3
3. Justificaci´on 4 4. Marco Te´orico E Hist´orico 5 4.1. Marco Te´orico . . . 5
4.1.1. Componentes sim´etricas . . . 5
4.1.2. Filtro de Fourier . . . 5
4.1.3. ANSI 50 . . . 6
4.1.4. ANSI 51 . . . 6
4.1.5. Curvas de tiempo inverso . . . 6
4.1.6. Funci´on Direccional de Sobre Corriente de Secuencia Positiva . . . . 7
4.1.7. ANSI 79 . . . 7
4.1.8. Funci´on diferencial de linea 87L . . . 8
4.2. Marco Hist´orico . . . 8
5. Definici´on y Especificaci´on del Trabajo 9 5.1. Definici´on . . . 9
5.2. Especificaciones . . . 9
7. Trabajo realizado 11
7.1. Descripci´on del Resultado Final . . . 11
7.2. Trabajo Computacional . . . 11
7.2.1. Conexi´on con PowerFactory . . . 11
7.2.2. Pre procesamiento de datos . . . 12
7.2.3. Rele Virtual en Digsilent . . . 12
7.2.4. Interfaz Web . . . 13
8. Validaci´on del Trabajo 16 8.1. Metodolog´ıa de prueba . . . 16
8.2. Validaci´on de los Resultados de Trabajo . . . 16
8.2.1. Caso Ansi 50 y Ansi 79 . . . 16
8.2.2. Caso Ansi 51 y Sobre corriente direccional . . . 17
8.2.3. Caso Ansi 87L . . . 19
8.3. Evaluaci´on del Trabajo . . . 20
9. Discusi´on y Conclusiones 21 9.1. Discusi´on . . . 21
9.2. Conclusiones . . . 21
Bibliograf´ıa 22
Anexos 23
´ Indice de figuras
4.1. Logica de recierre, recuperado de [1] . . . 8
7.1. Logica de modulo de adquisici´on de datos en PowerFactory . . . 12
7.2. Modulo de remuestreo de se˜nales . . . 12
7.3. Modulo rel´e virtual en Digsilent . . . 13
7.4. MTV de la pagina web . . . 14
7.5. Pagina de inicio . . . 14
7.6. Panel principal Digsilent Study Case . . . 14
7.7. Panel de configuraci´on Digsilent Study Case . . . 14
7.8. Panel principal Virtual Relay Settings . . . 15
7.9. Ejemplo de configuraci´on funci´on 50 . . . 15
7.10. Panel principal Relay Trip . . . 15
7.11. Ejemplo de configuraci´on de evento de falla . . . 15
7.12. Panel de configuraci´on de eventos de fallas . . . 15
7.13. Ejemplo de algunos resultados de simulaci´on . . . 15
8.1. Caso 1: lecturas de corriente . . . 17
8.2. Caso 1: disparo del rel´e . . . 17
8.3. Caso 1: disparo de la funci´on 50 . . . 17
8.4. Caso 1: detecciones de la funci´on 50 . . . 17
8.5. Caso 2: lecturas del corriente (Forward) . . . 18
8.6. Caso 2: disparo del rel´e (Forward) . . . 18
8.7. Caso 2: disparo de la funci´on 51 (Forward) . . . 18
8.8. Caso 2: detecciones de la funci´on direccional (Forward) . . . 18
8.9. Caso 2: lecturas del corriente (Reverse) . . . 19
8.10. Caso 2: disparo del rel´e (Reverse) . . . 19
8.11. Caso 2: disparo de la funci´on 51 (Reverse) . . . 19
8.12. Caso 2: detecciones de la funci´on direccional (Reverse) . . . 19
8.13. Caso 3: lecturas de corriente . . . 20
8.14. Caso 3: disparo del rel´e . . . 20
´ Indice de cuadros
4.1. Algunas curvas de tiempo inverso . . . 7
6.1. Tiempo actividades . . . 10
7.1. Especificaciones del producto final . . . 11
7.2. Especificaciones de las tablas SQL . . . 13
Cap´ıtulo 1 Introducci´ on
Una funci´on de los rel´es en las protecciones de sistemas de potencia es operar como controladores de una topolog´ıa de red al conectar o desconectar un elemento dado a con- diciones anormales de operaci´on. Llamada en el sector como coordinaci´on de protecciones, se busca proteger un sistema ante condiciones de fallas el´ectricas de una topolog´ıa deter- minada o un ´area de la misma para que funcione en dentro de los limites operativos, es decir, limites de voltaje, corriente y frecuencia dentro de los est´andares definidos por los operadores de red con el fin de maximizar la confiabilidad y conservar la integridad de una red; el estudio de protecciones busca detectar condiciones anormales de operaci´on de un equipo y realizar acciones que eviten su da˜no.
La disposici´on de las herramientas de simulaci´on permiten recrear modelos din´amicos que ofrecen informaci´on para discernir entre el concepto y la ejecuci´on en la practica de un rel´e en entornos de fallas reales adaptando a un punto de comparaci´on al momento de tomar decisiones sobre un sistema. Las herramientas computaciones mejoran el rendi- miento y el tiempo de trabajo de operaciones hechas por un rel´e f´ısico y de poco acceso.
El software DIgSilent - Power Factory, por su parte, a trav´es de su interfaz ofrecen herra- mientas para simular sistemas de potencia que da acceso a datos de las din´amicas de un sistema de potencia especialmente en condiciones de falla.
La co-simulaci´on entre un rel´e virtualizado y el modelo de un sistema de potencia permiten monitorear e interactuar con las din´amicas de una red y con base en cambios anormales a ella se toman decisiones sobre la topolog´ıa de la red sin la necesidad de un sistema real con riesgo a da˜nos irreparables. Se dise˜nar e implementa un rel´e virtualizado en Python conectado al software de simulaci´on PowerFactory que permita tomar decisio- nes sobre una linea dado los algoritmos de protecci´on basados en el est´andar C37.2 del IEEE/ANSI [2]. Dicho esquema se implementa en una aplicaci´on web.
Cap´ıtulo 2 Objetivos
2.1. Objetivo General
Dise˜nar un esquema de cosimulaci´on entre PowerFactory y un rele virtualizado en Python para ser implementado en una interfaz web que permita la configuraci´on del sistema y de protecciones. El proyecto es un punto de partida implementar en la web procesos de automatizaci´on de sistemas de potencia.
2.2. Objetivos Espec´ıficos
Automatizar por medio de API las configuraciones de PowerFactory para obtener datos de simulaci´on, definir eventos de falla, tiempos de simulaci´on y desconectar elementos de un sistema sin operar sobre su interfaz.
Dise˜nar un modulo de procesamiento de datos que permita analizar las lecturas de simulaci´on y calcular valores RMS, diferencia angular y componentes sim´etricas.
Dise˜nar un rel´e virtualizado en Python que dadas lecturas de datos defina ordenes de disparo.
Implementar en el rel´e virtualizado las funciones ANSI 50p, 51p, sobre corriente direccional por secuencia positiva, 79, y 87L (diferencial de linea).
Implementar algoritmos de fabricantes: Direccional-SEL421 y Diferencial-Siemens SIPROTEC5
Dise˜nar una aplicaci´on web por medio de HTML, CSS, JavaScript y JSON que permita configurar un rele virtualizado e instalarlo en una linea de un proyecto de simulaci´on realizado en PowerFactory.
Implementar una base de datos SQL para el manejo de informaci´on y almacena- miento de datos de configuraci´on.
2.3. Alcance y productos finales
El proyecto se plantea como una aplicacion web que permita a un usuario realizar simulaciones en modelos PowerFactory e instalar un rel´e sobre una linea sobre el sistema que realice algoritmos de protecci´on. El usuario desde la aplicaci´on podr´a:
Visualizar los nombres de proyectos almacenados Seleccionar proyectos almacenados en Digsilent
Visualizar los nombres de las lineas, buses e interruptores de un proyecto seleccio- nado
Seleccionar una linea donde se generar´an fallas Seleccionar el elemento de protecci´on
Seleccionar puntos de medici´on Configurar un rel´e virtual
Configurar tiempos de simulaci´on Visualizar los datos de simulaci´on Visualizar el disparo del rel´e Visualizar los disparos por fase
El c´odigo del proyecto abre la posibilidad de ampliar sus funciones para a˜nadir otro tipo de aplicaciones que involucren la interacci´on con PowerFactory.
Cap´ıtulo 3 Justificaci´ on
El modo de simulaci´on de software de sistemas de potencia de alto nivel como Power- Factory requiere tiempo para realizar la misma acci´on pero con diferentes par´ametros, es as´ı como los APIs permiten controlar el software sin la necesitad de interactuar con el, adem´as permite configurar y realizar en mejor tiempo las simulaciones sobre una red. Eso permite una integraci´on de mecanismos de automatizaci´on basados en modelos compu- tacionales que operen en la red y decidan de forma aut´onoma bajo criterios predefinidos.
Sin embargo, las funciones de protecci´on instaladas en PowerFactory suelen incluirse en paquetes de licencia de mayor contenido y con precios elevados en comparaci´on a licen- cias b´asicas. Es as´ı como a integraci´on de un rel´e virtualizado a Digsilent permite ejecutar algoritmos de protecci´on sin la necesidad de adquirir licencias m´as costosas.
El dise˜no y/o implementaci´on de modelos computaciones deben estar acompa˜nados de una interfaz que permita interactuar con las herramientas de programaci´on y faciliten su uso. Una alternativa que se usa en muchos campos de estudio que permite la inter- acci´on entre un usuario y un modelo computacional es a trav´es de la web, por ejemplo, Google Maps, que ofrece servicio de visualizaci´on de mapas. La migraci´on de operaciones complejas a la web es una tendencia adyacente a optimizar procedimientos complejos o que requieran bastante tiempo, en el mismo ejemplo de Google, el calculo de las mejores rutas dados datos de origen y destino. Se dise˜na una interfaz web con la meta a largo plazo expandir el proyectos a una considerable variedad de aplicaciones, por ejemplo, a partir de una configuraci´on cargarla a un rel´e real.
Cap´ıtulo 4
Marco Te´ orico E Hist´ orico
4.1. Marco Te´ orico
4.1.1. Componentes sim´ etricas
Las componentes sim´etricas se usan en el an´alisis de fallas para detectar desbalan- ces en un sistema trif´asico. Es una transformaci´on que convierte cargas desbalanceada a tres sistemas balanceados de secuencia cero, positiva y negativa. Los voltajes de secuen- cia v012y corrientes de i012 secuencia calculan a partir de la transformada de Fortescue [3]:
A =
1 1 1
1 a2 a 1 a a2
V012 = A−1·
Va Vb Vc
I012 = A−1·
Ia
Ib
Ic
4.1.2. Filtro de Fourier
Los filtros de Fourier se emplean para obtener desde valores instant´aneos a valores fasoriales calculando las componentes ortogonales calculados en los datos equivalentes a un ciclo de la se˜nal. Las componentes se calculan con las siguientes formulas [4]:
Xc= 2 N/2
N
X
k=0
xk· cos(2π Nk) Xs= − 2
N/2
N
X
k=0
xk· sin(2π Nk) N: n´umero de muestras en un ciclo El dato del fasor para la muestra de un ciclo es X = Xc+jXs
4.1.3. ANSI 50
La funci´on 50 env´ıa en un comparador de corriente, si la corriente supera un umbral por un tiempo predefinido env´ıa una orden de disparo. La funci´on de sobre corriente instant´anea es el caso cuando el tiempo de espera es cero [5].
4.1.4. ANSI 51
La funci´on 51 es un comparador de corriente, si la corriente supera un umbral de tiempo por un tiempo que se calcula en funci´on de la corriente de entrada y env´ıa una orden de disparo cuando el tiempo transcurrido es mayor al calculado.
El calculo del disparo se basa en curvas de tiempo inverso definidas en est´andares del IEC o IEEE [6].
4.1.5. Curvas de tiempo inverso
El calculo de las curvas de tiempo inverso se define bajo la siguiente formula [6]:
t = td · ( K
Mα− 1+ L) (4.1)
t es el tiempo de operaci´on del rel´e
M es el coeficiente entre la corriente medida y la corriente de arranque td es el tiempo del dial
k y α son constantes que se definen bajo est´andares IEEE/IEC
Algunas curvas se definen bajo est´andares IEEE e IEC, algunas de sus curvas son:
Cuadro 4.1: Algunas curvas de tiempo inverso
Est´andar K α L
IEC Standard Inverse 0.14 0.02 0
IEC Very Inverse 13.5 1 0
IEEE Moderately Inverse 0.0515 0.02 0.114 IEEE Very Inverse 19.61 2 0.491
4.1.6. Funci´ on Direccional de Sobre Corriente de Secuencia Po- sitiva
Usado por SEL421, calcula la direccionalidad de una corriente, si la direcci´on de la se˜nal es igual a una predefinida env´ıa una orden de disparo. Esta funci´on se activa en condici´on de sobre corriente. El principio de operaci´on se basa en la siguiente formula [7]:
Operaci´on = |∆V1− (1 + K) · ∆I1· Z1l| (4.2) Restricci´on = |∆V1− (1 − K) · ∆I1· Z1l| (4.3)
Direcci´on = Operaci´on - Restricci´on
∆V1 es la diferencia de voltaje de falla y prefalla de secuencia positiva.
∆I1 es la diferencia de corriente de falla y prefalla de secuencia positiva.
K es el factor de compensaci´on.
Z1l es la impedancia de secuencia positiva de la linea.
Si la direcci´on es mayor a cero est´a en condici´on ’Forward’, ’Reverse’ de lo contrario.
4.1.7. ANSI 79
La funci´on de recierre intenta conectar el elemento aislado, luego de un evento de disparo dada una falla, si la falla persiste desconecta el elemento definitivamente hasta que se resetee de forma manual. Se puede repetir esta acci´on un par de veces. En la gr´afica 4.1 se muestra la l´ogica en condici´on de falla [1].
Figura 4.1: Logica de recierre, recuperado de [1]
4.1.8. Funci´ on diferencial de linea 87L
La funci´on de diferencia de linea revisa las corrientes de entrada y salida en una linea, en condiciones normales, la diferencia de esas se˜nales debe ser cero. Siemens implementa el m´etodo de pendiente que calcula el disparo a partir de corrientes de estabilizaci´on.
Si la corriente diferencial es mayor a la corriente de estabilizaci´on multiplicado por una pendiente p, se env´ıa una orden de disparo. Sus formulas son las siguientes [8]:
Corriente de diferencia = |Ibus1 − Ibus2| (4.4)
Corriente de restricci´on = |Ibus1|/2 + |Ibus2|/2 (4.5)
4.2. Marco Hist´ orico
En el grupo de investigaci´on Gridteractions de la Universidad de los Andes se han desarrollado esquemas de co-simulaci´on, dos casos de relevancia se encuentra el proyecto de grado de Juan David Perez [9] y Natalia Avenda˜no [10]. El primero, desarroll´o un rele virtualizado en LabView para un esquema de co-simulaci´on con DSSim-PC, su trabajo inspiro a un desarrollo con otro enfoque en Python , que reduce el costo de usar LabView y aumenta la escabilidad del proyecto para futuros proyectos, adem´as se usa PowerFactory en lugar de DSSim-PC que introduce a una linea de trabajos con este software de alto nivel en la industria. El trabajo de Natalia introduce a futuras aplicaciones utilizando PowerFactory, concretamente en el campo de la automatizaci´on para redes inteligentes.
Cap´ıtulo 5
Definici´ on y Especificaci´ on del Trabajo
5.1. Definici´ on
El trabajo consiste dise˜nar una aplicaci´on web que permita configurar un rel´e virtua- lizado e instalado en una linea de un caso de simulaci´on PowerFactory. Las funciones de protecci´on de PowerFactory no suelen incluirse en licencias base, por lo que en orden de reducir evitar costos adicionales en licencias m´as avanzadas se implementan algoritmos de protecciones que est´an disponibles en la literatura.
5.2. Especificaciones
Las consideraciones para operar la interfaz son las siguientes:
En la licencia de PowerFactory debe incluir el modo de ’EMT Simulation’
El caso de simulaci´on de Digsilent debe tener configurado las condiciones de flujo de carga.
Tener instalado Python 3.8 y las librerias Django, numpy, Matplotlib, Pandas y SciPy
La licencia disponible al momento del desarrollo del proyecto no inclu´ıa el modo de co- simulaci´on que permite leer y examinar datos en cada instante de tiempo de simulaci´on.
Por lo tanto, se emplea simulaciones en el modo ’EMT simulation’ para calcular tiempos de disparo y realizar nuevas simulaciones configurando eventos de disparo resultando en tiempos m´as largos de procesamiento. En futuras aplicaciones es deseable tener el modulo
Cap´ıtulo 6 Metodolog´ıa
6.1. Plan de Trabajo
Se destin´o el siguiente tiempo para el desarrollo de las actividades:
Cuadro 6.1: Tiempo actividades
Actividad Tiempo empleado
Estado del arte 5 semanas
Comunicacion con PowerFactory 4 semanas Modulo de preprocesamiento de datos 3 semanas
Modulo de rel´e 4 semanas
Dise˜no interfaz web 6 semanas Validaci´on de rel´e 2 semanas
Las sesiones se realizaron cada semana con el asesor para resolver dudas y comunicar inconvenientes. El proyecto present´o retrasos por dificultades t´ecnicas con el Software.
6.2. B´ usqueda de Informaci´ on
Para la elaborci´on del proyecto se recurre a manuales de rel´es de fabricantes, espec´ıfi- camente el manual de Siemens C53000-G5078-C011-7 [8] y el del manual SEL 421 [11];
as´ı como el trabajo [9] como instructivo para generar algoritmos de rel´e modelados en programaci´on, recursos del laboratorio de Gridteractions y articulos.
Cap´ıtulo 7
Trabajo realizado
7.1. Descripci´ on del Resultado Final
De acuerdo a la formulaci´on de la soluci´on, se dise˜n´o una aplicaci´on web con las siguientes especificaciones:
Cuadro 7.1: Especificaciones del producto final
Funci´on Descripci´on
Funciones a simular 50, 51, Sobre corriente
direccional, 79 y 87L Ajustar configuraci´on de funciones de protecci´on Si
Activar/Desactivar funciones de protecci´on Si
Rel´es simult´aneos 1
Seleccionar puntos de medici´on Si
Cambiar configuraci´on durante simulaci´on No Configurar entorno de simulaci´on PowerFactory Si Programar eventos de fallas en PowerFactory Si
Seleccionar linea de falla Si
Seleccionar tipo de falla Si
Seleccionar porcentaje de falla en la linea Si Importar y cargar casos almacenados por el usuario Si
Scope simulaciones Si
Scope disparos de rel´e Si
Detecci´on de fase fallada Funci´on 50, 51 y 87L
7.2. Trabajo Computacional
7.2.1. Conexi´ on con PowerFactory
Figura 7.1: Logica de modulo de adquisici´on de datos en PowerFactory
Los inputs del modulo son las configuraciones que se realizan en el entorno de simula- ci´on de DigSilent, en los inputs se define:
Archivo de simulaci´on a cargar Duraci´on de simulaci´on
Eventos de fallas
Eventos de aperturas de Switch
Lecturas de elementos (corriente y voltaje)
El output del modulo son los valores de corriente y voltaje realizadas durante la simulaci´on.
7.2.2. Pre procesamiento de datos
El modulo de pre procesamiento de datos recibe se˜nales en el dominio del tiempo, realiza una limpieza y un remuestreo de la se˜nal, luego aplica un filtro de Fourier para ob- tener las componentes ortogonales y finalmente calcula la transformada de Fortescue para obtener las componentes sim´etricas. La salida del modulo son las se˜nales remuestradas, las componentes fasoriales y las componentes sim´etricas de las se˜nales. Su implementaci´on est´a basado en el modelo de pre procesamiento de [4], la l´ogica del modulo se realiza de la siguiente forma:
Figura 7.2: Modulo de remuestreo de se˜nales
7.2.3. Rele Virtual en Digsilent
Se dise˜na un modulo en Python donde abarquen diferentes funciones programadas en la misma plataforma. Su implementaci´on se basa en las guias de protecci´on de [13]. El modulo rel´e hace parte del m´odulo Rele Virtual en Digsilent que es la uni´on con el modulo de adquisici´on de datos y de remuestreo, su estructura se aprecia en la figura 7.3.
Inicialmente el rel´e consulta a la base de datos (ver secci´on 7.2.4) las configuraciones definidas por el usuario, luego ejecuta la simulaci´on y calcula los tiempos de disparo. Con
Figura 7.3: Modulo rel´e virtual en Digsilent
los tiempos calculados realiza una nueva solicitud a la interfaz con los eventos de apertura.
Las funciones programadas en el modulo de rel´e virtual son: Ansi 50, 51, sobrecorrien- te direccional, 79 y 87L. La l´ogica de cada funci´on se encuentra en los anexos de este documento.
7.2.4. Interfaz Web
Base de datos
Se crea una base de datos SQL en PostgreSQL [14] para almacenar la configuraci´on hecha por un usuario, cuenta con las siguientes tablas:
Cuadro 7.2: Especificaciones de las tablas SQL
Tabla Descripci´on
Digsilent Project Names Nombres de los proyectos almacenados por el usuario Digsilent Project Elements Dado un proyecto seleccionado, consulta los nombres de
las lineas, buses e interruptores.
Digsilent Configuration Configuraci´on de tiempo de simulaci´on, proyecto selec- cionado, ubicaciones de medici´on, bases del sistema.
Ansi 50 Configuration Configuraci´on de protecci´on de la funci´on 50, Definir estado de activaci´on y estado de activaci´on de recierre.
Ansi 51 Configuration Configuraci´on de protecci´on de la funci´on 51, Definir estado de activaci´on y estado de activaci´on de recierre.
Ansi Directional Positive Sequence
Configuraci´on de protecci´on de la funci´on direccional, Definir estado de activaci´on y estado de activaci´on de recierre.
Ansi 87L Configuration Configuraci´on de protecci´on de la funci´on 87L, Definir estado de activaci´on y estado de activaci´on de recierre.
Recloser Configuration Definir configuraci´on de recierre y estado de activaci´on Fault Events Se configuran eventos de falla
Estructura aplicaci´on Web
Figura 7.4: MTV de la pagina web
El Model es la base de datos donde se almacena la configuraci´on del usuario, el Tem- plate es la interfaz con la que interact´ua el usuario y el View es la logica entre la pagina web-base de datos y la logica entre la base de datos-rele virtual.
Interfaz web
La pagina web cuenta con pesta˜nas que redirigen al usuario a la funci´on requerida, las pesta˜nas son:
Home page: Pagina de inicio de presentaci´on.
Figura 7.5: Pagina de inicio
Digsilent Study Case: Configuraci´on de entorno de simulaci´on en Digsilent
Figura 7.6: Panel principal Digsilent Study Case
Figura 7.7: Panel de configuraci´on Digsilent Study Case
Virtual Relay Settings: Se definen las configuraciones de los rel´es a simular.
Relay Trip: Se ejecuta definen eventos de fallas y ejecuci´on de simulaci´on.
Figura 7.8: Panel principal Virtual Relay Set- tings
Figura 7.9: Ejemplo de configuraci´on fun- ci´on 50
Figura 7.10: Panel principal Relay Trip
Figura 7.11: Ejemplo de configuraci´on de evento de falla
Cap´ıtulo 8
Validaci´ on del Trabajo
8.1. Metodolog´ıa de prueba
Se utiliza el modelo IEEE 13 nodos modelado en PowerFactory, el modelo est´a almace- nado por defecto en la instalaci´on del Software. Se realizan las siguientes configuraciones en las funciones de protecci´on:
Configuraci´on de Ansi 50 y Ansi 79 con falla monof´asica a tierra, fase B al 50 % de la linea sin impedancia de falla.
Configuraci´on de Ansi 51 y Sobrecorriente direccional con falla bif´asica a tierra en las fases a-b al 50 % de la linea sin impedancia de falla.
Configuraci´on de Ansi 87L con falla trif´asica al 50 %.
Todas las simulaciones se realizan en un tiempo de 1.5s. Los eventos de falla suceden en el segundo 0.8 de simulaci´on y de despeje en 1.3s, todas ocurren sobre la linea del bus 632 al 633.
8.2. Validaci´ on de los Resultados de Trabajo
8.2.1. Caso Ansi 50 y Ansi 79
Las configuraciones de la funci´on 50 y recierre se encuentran en los anexos del docu- mento. Los resultados de la simulaci´on de las figuras 8.1, 8.2, 8.3 y 8.4 ense˜nan el disparo de la funci´on de recierre cuando sigue detectando la condici´on de falla hasta desconectar el interruptor definitivamente luego de 3 recierres.
Figura 8.1: Caso 1: lecturas de corriente Figura 8.2: Caso 1: disparo del rel´e
Figura 8.3: Caso 1: disparo de la funci´on 50
Figura 8.4: Caso 1: detecciones de la funci´on 50
8.2.2. Caso Ansi 51 y Sobre corriente direccional
Las configuaciones de las funci´on 51 y Sobrecorriente direccional se encuentran en los anexos del documento. Se eval´uan los casos del disparo direccional cuando se configura en condici´on de ’Forward’ y ’Reverse’.
Configuraci´on Forward
En las figuras 8.5, 8.6, 8.7 y 8.8, el rel´e env´ıa un disparo debido a que la corriente se encuentra en direcci´on de Forward.
Figura 8.5: Caso 2: lecturas del corriente (For- ward)
Figura 8.6: Caso 2: disparo del rel´e (For- ward)
Figura 8.7: Caso 2: disparo de la funci´on 51 (Forward)
Figura 8.8: Caso 2: detecciones de la funci´on direccional (Forward)
Configuraci´on Reverse
En las figuras 8.9, 8.10, 8.11 y 8.12, el rel´e no envia disparo ya que la corriente no se encuentra en direcci´on a la condici´on ’Reverse’
Figura 8.9: Caso 2: lecturas del corriente (Re- verse)
Figura 8.10: Caso 2: disparo del rel´e (Rever- se)
Figura 8.11: Caso 2: disparo de la funci´on 51 (Reverse)
Figura 8.12: Caso 2: detecciones de la fun- ci´on direccional (Reverse)
8.2.3. Caso Ansi 87L
Las configuraciones de la funci´on diferencial de linea 87L se encuentran en los anexos del documento. Los resultados de la simulaci´on de las figuras 8.13, 8.14, 8.15 y 8.16 ense˜nan el disparo de la funci´on 87L con las configuraciones realizadas.
Figura 8.13: Caso 3: lecturas de corriente Figura 8.14: Caso 3: disparo del rel´e
Figura 8.15: Caso 3: disparo de la funci´on 87L
Figura 8.16: Caso 3: detecciones de la fun- ci´on 87L
8.3. Evaluaci´ on del Trabajo
Los resultados de los casos de las secciones 8.2.1, 8.2.2 y 8.2.3 son diferentes configu- raciones en un rel´e al que se le combinan una o dos funciones de protecci´on y en cada una de ellas se obtiene una se˜nal de disparo dada su configuraci´on. Si existe una se˜nal de disparo, se env´ıa al entorno de simulaci´on que desconecta el elemento a proteger.
Cap´ıtulo 9
Discusi´ on y Conclusiones
9.1. Discusi´ on
El utilizar Python para realizar las especificaciones del proyecto es un herramienta que abre la posibilidad a aprovechar las funcionalidades de PowerFactory por el uso de su API y el uso de modelos computacionales que describan las din´amicas de sistemas de potencia como mecanizo de uso acad´emico y profesional. Python es un lenguaje de alto nivel que ha ganado impulso con el paso de los a˜nos, abriendo posibilidades de nuevos proyectos con programaci´on probabil´ıstica en el contexto de los sistemas de potencia.
9.2. Conclusiones
Se dise˜na una aplicaci´on web que permite a un usuario configurar un rel´e virtualizado que opere en el software de simulaci´on DigSilent PowerFactory. La aplicaci´on permite realizar simulaciones en el software que responden a las ordenes de disparo del rel´e. Los aportes de este trabajo se basan en tres pilares fundamentales: el primero, controlar Dig- silent desde el uso de su API, evitando la configuraci´on directamente con su interfaz; el segundo, virtualizar un rel´e en Python que describa las din´amicas de las funciones de protecci´on ANSI 50, 51, sobre corriente direccional, 79 y recierre, aumentando la escala- bilidad para implementar otras funciones de protecci´on basados en lecturas de corriente y voltaje; tercero, implementar en una aplicaci´on web un servicio de configuraci´on de un rel´e virtualizado que realice co-simulaci´on con digsilent, abriendo la posibilidad de imple- mentar m´as servicios que sean manejados desde bases de datos. El proyecto es un punto de partida para proyectos que vinculen la interacci´on con Digsilent y se puedan migrar a aplicaciones web.
Bibliograf´ıa
[1] J. M. Gers and E. J. Holmes, Protection of electricity distribution networks. Insti- tution of Electrical Engineers, 2011.
[2] IEEE, IEEE/ANSI Standard C37.2 Standard for Electrical Power System Device Function Numbers, Acronyms, and Contact Designations. IEEE standards, 2008.
[3] J. L. Blackburn and T. J. Domin, Protective relaying: principles and applications, cuarta ed. CRC Press Inc, 2014.
[4] M. Kezunovic, J. Ren, and S. Lotfifard, Design, modeling and evaluation of protective relays for power systems. Springer, 2016.
[5] J. Das, OVERCURRENT COORDINATION, 12 2020, pp. 325–357.
[6] H. Saberi and T. Amraee, “Coordination of directional over-current relays in acti- ve distribution networks using generalised benders decomposition,” IET Generation Transmission amp; Distribution, Nov 2017.
[7] M. Soo Lee and S. Ku You, “A directional relay algorithm using positive-sequence superimposed quantity for transmission line protection,” IFAC Proceedings Volumes, vol. 36, no. 20, pp. 405 – 408, 2003, 5th IFAC Symposium on Power Plants and Power Systems Control 2003, Seoul, South Korea, 15-19 September 2003. [Online].
Available: http://www.sciencedirect.com/science/article/pii/S1474667017345019 [8] Siemens, SIPROTEC 5 Protecci´on de distancia, diferencial de l´ınea y Gesti´on del
interruptor para disparo mono/tripolar 7SA87, 7SD87, 7SL87, 7VK87. Siemens AG, 2015.
[9] J. D. Perez, G. A. Ramos, and D. Celeita, “Design and implementation of a virtual relay feeder protection,” pp. 1–33, Mayo 2017.
[10] N. Avenda˜no, G. A. Ramos, and D. Celeita, “Dise˜no e implementaci´on de interfaz para control de elementos de sistemas distribuci´on en arquitectura hardware-software (gridteractions),” pp. 1–38, Mayp 2016.
[11] SEL, SEL-421-4, -5 Protection, Automation, and Control System and SEL-400 Series Relays. Schweitzer Engineering Laboratories, 2016.
[12] Digsilent, User Manual. Digsilent PowerFactory, 2020.
[13] Protection Control Reference Guide. General Electric, 2019.
[14] PostgreSQL, PostgreSQL documentation v12. The PostgreSQL Global Development Group, 2020. [Online]. Available: https://www.postgresql.org/docs/
[15] DJango, Django documentation. Django Software Foundation, 2020. [Online].
Available: https://docs.djangoproject.com/en/3.1/
Anexos
Pseudo c´ odigos de funciones de protecci´ on
Las funciones retornan 1 cuando el elemento debe estar fuera de operaci´on y 0 de lo contrario. Su estructura es la siguiente:
Ansi 50
Se formula el siguiente pseudo c´odigo que describe una funci´on de tiempo discreto que describe las din´amicas de la funci´on 50, su formulaci´on es la interpretaci´on de las maquinas de estados definidas en [9].
1 d e f i n i r : p a s o _ s i m u l a c i o n , i_corte , d e l a y
2 t i e m p o _ t r a n s c u r r i d o = 0
3 def f u n c i o n 5 0 ( i _ m e d i c i o n ) :
4
5 Si i _ m e d i c i o n > i _ c o r t e e n t o n c e s :
6 t i e m p o _ t r a n s c u r r i d o += p a s o _ s i m u l a c i o n
7 Si t i e m p o _ t r a s n c u r r i d o > d e l a y e n t o n c e s :
8 r e t o r n e 1
9 De lo c o n t r a r i o :
10 r e t o r n e 0
11 De lo c o n t r a r i o :
12 t i e m p o _ t r a n s c u r r i d o = 0
13 r e t o r n e 0
14 # fin del p r o c e d i m i e n t o
Ansi 51
Se formula el siguiente pseudo c´odigo que describe una funci´on de tiempo discreto que describe las din´amicas de la funci´on 51, su formulaci´on es la interpretaci´on de las maquinas de estados definidas en [9]. El calculo de la curva TC se obtiene de la ecuaci´on 4.1
1 d e f i n i r : p a s o _ s i m u l a c i o n , i _ p i c k _ u p , delay , td , t i p o _ d e _ c u r v a
2 t i e m p o _ t r a n s c u r r i d o = 0
3 def f u n c i o n 5 1 ( i _ m e d i c i o n ) :
4
5 Si i _ m e d i c i o n > i _ p i c k _ u p e n t o n c e s :
6 t i e m p o _ t r a n s c u r r i d o += p a s o _ s i m u l a c i o n
7 t _ c u r v e = T C u r v e ( i _ m e d i c i o n / i _ p i c k _ u p , td , t i p o _ d e _ c u r v a )
8 # C a l c u l a r con i _ m e d i c i o n , i _ p i c k _ u p , td y t i p o de c u r v a el
9 # t i e m p o de la c u r v a inversa , en la v a r i t a b l e t _ c u r v e
10 Si t i e m p o _ t r a n s c u r r i d o > t _ c u r v e + d e l a y e n t o n c e s :
11 r e t o r n e 1
12 De lo c o n t r a r i o :
13 r e t o r n e 0
14 De lo c o n t r a r i o :
15 t i e m p o _ t r a n c u r r i d o = 0
16 r e t o r n e 0
17 # fin del p r o c e d i m i e n t o
Funci´ on de sobre corriente direccional por secuencia positiva
Se formula el siguiente pseudo c´odigo que describe una funci´on de tiempo discreto que describe las din´amicas de la funci´on de sobrecorriente direccional por secuencia positiva.
Los c´alculos de los valores de Operaci´on y Restricci´on se definen en las ecuaciones 4.2 y 4.3.
1 d e f i n i r : f a c t o r _ d e _ c o m p e n s a c i o n , zl1 , d i r e c c i o n
2 # zl1 es la i m p e d a n c i a de s e c u e n c i a p o s i t i v a
3 # d i r e c c i o n : ’ Forward ’ or ’ Reverse ’
4
5 v 1 _ p r e = [1] # a r r e g l o p a r a a l m a c e n a r V pre - falla , i n i c i a l i z a r
6 i 1 _ p r e = [1] # a r r e g l o p a r a a l m a c e n a r I pre - falla , i n i c i a l i z a r
7 def f u n c i o n D i r e c c i o n a l ( i _ m e d i c i o n ) :
8
9 f u n 5 1 _ o b j e t o = f u n c i o n 5 1 ( i _ m e d i c i o n )
10 # c r e e un o b j e t o de la f u n c i o n 5 1
11 Si f u n 5 1 _ o b j e t o es i g u a l a 0:
12 A l m a c e n e V e I p r e f a l l a
13 De lo c o n t r a r i o :
14 C a l c u l e los v a l o r e s de O p e r a c i o n y R e s t r i c c i o n u s a n d o v a l o r e s p r e f a l l a
15 de 2 c i c l o s a n t e r i o r e s a la m e d i c i o n
16
17 Si o p e r a c i o n - r e s t r i c c i o n > 0
18 Si d i r e c c i o n es i g u a l a ’ Forward ’
19 R e t o r n e 1
20 De lo c o n t r a r i o
21 R e t o r n e 0
22 De lo c o n t r a r i o :
27 # fin del p r o c e d i m i e n t o
La funci´on direccional de sobrecorriente se activa con la funci´on 51.
Ansi 87L
Se formula el siguiente pseudo c´odigo que describe una funci´on de tiempo discreto que describe las din´amicas de la funci´on diferencial de linea. Los c´alculos de los valores de corriente de diferencia y corrientes de restricci´on se definen en las ecuaciones 4.4 y 4.5.
1 D e f i n i r : p e n d i e n t e , i _ d i f f _ p u , delay , p a s o _ s i m u l a c i o n
2 t i e m p o _ t r a n s c u r r i d o = 0
3
4 def f u n c i o n D i f e r e n c i a l ( I_bus1 , I _ b u s 2 ) :
5
6 c a l c u l e R e s 1 y D i f 1 c o m o c o r r i e n t e s de r e s t r i c c i o n y d i f e r e n c i a con I _ b u s 1 e I _ b u s 2
7 I n t e r n a = 0
8 Si D i f 1 > p e n d i e n t e * R e s 1 e n t o n c e s :
9 I n t e r n a = 1
10 A r r a n q u e = 0
11 Si D i f 1 > i _ d i f f _ p u e n t o n c e s
12 A r r a n q u e = 1
13 Si I n t e r n a == 1 y A r r a n q u e == 1 e n t o n c e s :
14 t i e m p o _ t r a n s c u r r i d o += p a s o _ s i m u l a c i o n
15 Si t i e m p o _ t r a n s c u r r i d o > d e l a y :
16 R e t o r n e 1
17 De lo c o n t r a r i o :
18 R e t o r n e 0
19 De lo c o n t r a r i o :
20 t i e m p o _ t r a n s c u r r i d o = 0
21 # fin del p r o c e d i m i e n t o
Ansi 79
La l´ogica para la funci´on de recierre se define con el siguiente pseudo c´odigo:
1 D e f i n i r : r e c l a i m _ t i m e , d e a d _ t i m e , i n t e n t o s
2
3 m i _ f u n c i o n = # c u a l q u i e r f u n c i o n (50 , 51 , D i r e c c i o n a l o D i f e r e n c i a l )
4 t _ d i s p a r o = -1
5 p a s o s = 1
6 def r e c l o s e r () :
7
8 Si m i _ f u n c i o n . d i s p a r o == 1 e n t o n c e s :
9 g u a r d e el t i e m p o de e j e c u c i o n en t _ d i s p a r o
10 D e s c o n e c t a r () # f u n c i o n de d e s c o n e x i o n del e l e m e n t o
11
12 Si t _ d i s p a r o != 1 e n t o n c e s :
13 m i e n t r a s p a s o s <= i n t e n t o s
14 C o n e c t a r ()
15 Si m i _ f u n c i o n . t i e m p o _ t r a n s c u r r i d o > p a s o s * d e a d _ t i m e + s u m a ( r e c l a i m _ t i m e [1: p a s o s ]) + t _ d i s p a r o y m i _ f u n c i o n . d i s p a r o == 1 e n t o n c e s :
16 D e s c o n e c t a r () # f u n c i o n de c o n e x i o n del e l e m e n t o
17 De lo c o n t r a r i o :
18 R o m p e r c i c l o
19 p a s o s ++
20 # fin del p r o c e d i m i e n t o
Configuraciones de funciones de protecci´ on
Las configuraciones referidos a la secci´on 8.2 de cada caso son:
Caso 1
Caso 1: Configuraci´on funci´on 50 Caso 1: Configuraci´on funci´on de recierre
Caso 2
Caso 2: Configuraci´on funci´on 51 Caso 2: Configuraci´on funci´on de direccional
Caso 3
Caso 3: Configuraci´on funci´on diferencial