Está en la página 1de 93

UNIVERSIDAD DE CHILE

FACULTAD DE CIENCIAS FSICAS Y MATEMTICAS


DEPARTAMENTO DE INGENIERA ELCTRICA









DISEO DE BASE DE DATOS PARA CREACIN Y
MANEJO DE ARCHIVOS ESTNDAR DE SISTEMAS
ELCTRICOS. DESARROLLO DE CASOS PRCTICOS.


Memoria para optar al Ttulo de Ingeniero Civil Electricista




FELIPE ANTONIO CARVAJ AL ZULETA




PROFESOR GUA:
LUIS SANTIAGO VARGAS DAZ

MIEMBROS DE LA COMISIN:
OSCAR EDUARDO MOYA ARAVENA
J UAN PABLO TOLEDO TORRES



SANTIAGO DE CHILE
2008
RESUMEN
En la actualidad, existe la tendencia de las herramientas computacionales
de avanzar y de desarrollarse, hacindose cada vez ms completas, ms
amigables, y ms rpidas. Estas tecnologas son usadas por distintas
compaas para crear variados programas para el estudio de sistemas
elctricos, que quieren llevar a cabo estos estudios bajo su propio punto de
vista o necesidades particulares. Muchas veces nos encontramos con casos en
los que varios de estos programas se pueden comunicar entre s, pudiendo
obtener, mediante ambos, los mismos resultados, en las variables elctricas y
obtener grficos o diagramas en conjunto que otorguen mayor confiabilidad a
un estudio de sistemas. Muchas veces, tambin nos encontramos con
programas que son muy tiles, pero que no tienen correspondencia, o no son
compatibles entre s, con softwares estndares, o que simplemente no se tiene
acceso a la licencia que deja utilizar aquella habilidad. En el caso particular de
este estudio, aparece una combinacin de estos casos, en los que por una
parte se tiene dos softwares capaces de comunicarse entre si, y adems un
tercer software, ms completo que los anteriores que no posee esta
comunicacin. El trabajo realizado consiste en crear una herramienta que sea
capaz de unir a estos 3 programas, y que sea capaz de crear una Base de
Datos que contenga la informacin necesaria para realizar estudios de flujo de
potencia, anlisis de secuencia y flujos dinmicos en cualquiera de estos.
2

Se utilizaran los programas Power Factory Digsilent, Power World y


PSS/E, y la base de datos ser administrada en Microsoft Excel.

3

AGRADECIMIENTOS

Son muchos a quienes a lo largo del tiempo han dejado una huella en
m. Experiencias de las que puedo recordar nombre y descubrir que a lo largo
del camino todo es motivo de alegra y gratitud. De creer en la vida y en todos
los que me ayudaron a terminar esta etapa de mi vida.
Agradezco a mis padres que me ensearon con su infinito amor a ser
mas humano, sencillo y sensible, a conseguir lo que en algn momento pareci
casi imposible: a cambiar, crecer y madurar. Me ensearon valores y
perseverancia para no rendirme en el camino, aunque a veces tomara tiempo
terminar.
A mis hermanos con los que compart los momentos de mi niez y
juventud, a ser el hermano chico y mayor despus, mis momentos de juegos y
de apoyo.
A mis familiares, abuelita, tos, tas, primos que a lo largo de los aos me
han hecho sentir parte de una familia grande y cariosa, sin obligacin.
A mis amigos que con el correr de los aos han seguido estando ah a mi
lado, con los que me reencontrado, a los que he visto crecer y formar familias, y
me han demostrado que no es necesario olvidar para seguir adelante.
A mi novia que con su constante apoyo, amor, cario y paciencia, en el
mbito personal, con su ejemplo y dedicacin en el trabajo, me dieron el
impulso necesario para concretar los ltimos pasos de esta titulacin.
Finalmente quisiera agradecer a mi profesor gua, ya que no solo me
apoyo en el transcurso de esta etapa , sino tambin lleno de dudas las cuales
lograron hacer que este trabajo finalizara de manera correcta y satisfactoria.
Adems quisiera agradecerle por el echo de que sin querer me hizo formar
parte de un equipo en el que no solo encontrare jefes y compaeros de trabajo,
sino tambin amigos y personas admirables que no solo perduran en mi
memoria como los que me ayudaron es este pequeo paso final en mi titilacin ,
sino tan bien por la admiracin que lograron producir en mi no solo por sus
capacidades laborares sino tambin sus valores logrando as darme cuenta que
no err el camino, que esto es lo que me hace feliz ser.



4

Contenido
RESUMEN ...................................................................................................................... 2
AGRADACIMIENTOS ..................................................................................................... 4
TABLA DE ILUSTRACIONES ........................................................................................ 7
CAPTULO 1. .................................................................................................................. 8
INTRODUCCIN............................................................................................................. 8
1.1 Generalidades ................................................................................................... 8
1.2 Objetivos ........................................................................................................... 9
1.2.1 Objetivos Generales.......................................................................................... 9
1.2.2 Objetivos Especficos ........................................................................................ 9
1.3 Estructura del Trabajo ....................................................................................... 9
CAPTULO 2. ................................................................................................................ 11
ASPECTOS GENERALES ........................................................................................... 11
2.1 Resumen ......................................................................................................... 11
2.2 Introduccin .................................................................................................... 11
2.3 Herramientas Usadas Para el Anlisis de Sistemas de Potencia ................... 12
2.4 Mtodos Para Realizar el Clculo de Flujo de Potencia ............................ 16
2.4.1 Mtodo de Gauss Seidel..............................................................................20
2.4.2 Mtodo de Newton Raphson........................................................................21
2.4.3 Mtodo Desacoplado Rpido..........................................................................22
2.5 Ejemplos de Programas en el Mercado. ......................................................... 24
2.5.1 Power - World Simulator (3):...........................................................................24
2.5.2 SimPowerSystem (4):.......................................................................................25
2.5.3 PSS/E (5):...........................................................................................................25
2.5.4 RTDS Simulator (6):..........................................................................................26
2.5.5 ETAP (7):............................................................................................................27
2.5.6 Power Factory (Digsilent) (8):..........................................................................27
2.5.7 EDSA:..................................................................................................................28
2.5.8 ABB Advise GridView (10):..............................................................................29
CAPTULO 3. ................................................................................................................ 30
DATOS PARA DISTINTOS TIPOS DE ANLISIS DE SISTEMAS ELCTRICOS. .... 30
5

3.1 Resumen ......................................................................................................... 30


3.2 Introduccin .................................................................................................... 30
3.3 Datos para el Flujo de Potencia ...................................................................... 31
3.4 Datos de Secuencia ........................................................................................ 33
3.5 Datos para Anlisis Dinmicos ....................................................................... 34
3.6 Uso de Power Factory Digsilent y Power System Simulator for
Engineering (PSS/E) .................................................................................................. 35
3.7 Archivos Creados para la Base de Datos ....................................................... 35
CAPTULO 4. ................................................................................................................ 47
BASE DE DATOS PARA CREAR ARCHIVOS GENERALES DE SISTEMAS
ELCTRICOS. .............................................................................................................. 47
4.1 Resumen ......................................................................................................... 47
4.2 Introduccin .................................................................................................... 47
4.3 Planteamiento del Problema ........................................................................... 47
4.4 Datos de Entrada de Base de Datos ............................................................... 48
4.5 Creacin del Diseo ........................................................................................ 50
CAPTULO 5. ................................................................................................................ 52
CASOS PRCTICOS DE ANLISIS ............................................................................ 52
5.1 Resumen ......................................................................................................... 52
5.2 Introduccin .................................................................................................... 52
5.3 Casos de Estudio ............................................................................................ 53
CAPTULO 6. ................................................................................................................ 62
CONCLUSIONES ......................................................................................................... 62
Bibliografa ................................................................................................................... 64
ANEXOS ....................................................................................................................... 66
1. Cdigo Script ......................................................................................................... 66
2. Datos de Reguladores de Voltaje .......................................................................... 86
3. Datos de Reguladores de Turbina ......................................................................... 89
4. Datos de Estabilizadores de Potencia. .................................................................. 92


6

TABLA DE ILUSTRACIONES
Figura 1, Evolucin de las herramientas computacionales utilizadas en estudios de
sistemas elctricos (3) ................................................................................................... 13
Figura 2, Modelo General de una Barra (3). ................................................................. 16
Figura 3, Tabla de Script Visto en Notepad .................................................................. 51
Figura 4,Tabla de Script Visto en Excel ....................................................................... 51
Figura 5, Casos a Estudiar ........................................................................................... 54
Figura 6, Datos del Sistema Extrados Manualmente, Caso Base +Lnea Crucero -
Encuentro ...................................................................................................................... 55
Figura 7, Datos del Sistema Extrados con el Script, Caso Base +Lnea Crucero -
Encuentro ...................................................................................................................... 56
Figura 8, Creacin de formato raw 26 .......................................................................... 57
Figura 9, Vista de PowerWorld ..................................................................................... 58
Figura 10, Datos Ingresados al Power World ............................................................... 59
Figura 11, Comparacin de Barras entre Power world y Digsilent ............................... 60
Figura 12, Comparacin de Generacin enre Power World y digsilent ........................ 60
Figura 13, Comparacin de Lneas entre Power World y Digsilent .............................. 61


7

CAPTULO 1.
INTRODUCCIN
1.1 Generalidades
En Chile, el uso de la computacin en los estudios de operacin y
contingencia son empleados por la gran mayora de las empresas elctricas,
principalmente en los departamentos encargados de estudios, departamentos
tcnicos y comerciales. Tambin son utilizados por los organismos de
coordinacin de la operacin de sistemas, Centro de Despacho Econmico de
Carga (CDEC), y por los organismos gubernamentales encargados de la
regulacin legal de la operacin del sistema elctrico, CNE, SEC.
Dichas herramientas computacionales son utilizadas tambin para realizar
distintas investigaciones, como por ejemplo, estudios especficos de operacin,
o tambin pueden ser utilizados por los departamentos de ingeniera elctrica
de las universidades, en donde se realiza uso docente e investigativo.
En este trabajo se mencionar brevemente la evolucin de programas
computacionales para el uso en clculos o estudios de sistemas elctricos de
potencia, junto con los distintos mtodos de modelacin utilizados. Luego se
mostrar una metodologa para crear una base de datos, con toda la
informacin necesaria para hacer un anlisis de sistema, con la finalidad de
crear archivos utilizables simultneamente por los programas computacionales
Digsilent, PSS/E y Power World.
8

1.2 Objetivos
1.2.1 Objetivos Generales
El objetivo general de este trabajo es la creacin de una base de datos
que sea capaz de reunir toda la informacin necesaria de un sistema elctrico
de potencia para lograr realizar estudios varios.

1.2.2 Objetivos Especficos
Los objetivos especficos corresponden a la creacin de una base de
datos que contenga la informacin necesaria para realizar clculos de flujo de
potencia, que contenga los datos de secuencia de la red y que contenga la
informacin necesaria para realizar anlisis dinmicos de un sistema elctrico
de potencia. Se utilizar Microsoft Excel para la el manejo de la base de datos,
y ste deber generar archivos compatibles con los softwares Digsilent, PSS/E
y Power World, programas computacionales facilitados por las empresas
Edelnor Electroandina, las cuales entregan toda la informacin e
infraestructura para realizar este trabajo.

1.3 Estructura del Trabajo
Esta memoria consta de seis captulos, el primero de ellos consta de una
introduccin a la utilizacin de software computacional para el estudio de
sistemas elctricos en Chile. En este captulo se muestran, tambin, los
objetivos generales y especficos del trabajo.
9

En el captulo dos, se exponen brevemente los distintos mtodos de


modelacin de los sistemas elctricos y sus mtodos de solucin. Luego se
muestra la necesidad de hacer estudios y anlisis de un sistema elctrico, ya
sea el efecto de fallas, mantenimientos, cambios estructurales, etc. Y de lo
importante que es tener datos confiables, actualizados y legibles de cualquier
sistema elctrico de potencia.
En el captulo tres se hace una descripcin detallada de los datos que
son recopilados, ya sea para el estudio de flujos de potencia, como para hacer
un anlisis dinmico del sistema o un estudio de fallas. Luego se exponen los
softwares utilizados y la forma en como stos son manejados.
En el captulo 4 se muestran la base de datos creada, con todas sus
caractersticas. Se describe el diseo elegido, la forma en como se revela la
informacin y la forma en como es seleccionada para ser utilizada por cada uno
de los programas computacionales utilizados.
En el captulo 5 se explican distintos casos prcticos reales en donde se
utiliz el mtodo descrito en este trabajo. Exponiendo los resultados obtenidos,
y comparando los resultados entre s.
En el captulo 6 se muestran las conclusiones de este trabajo. Al final de
este documento se hace referencia a los antecedentes bibliogrficos, y a los
anexos, donde se muestra un detalle de los antecedentes utilizados.
10

CAPTULO 2.
ASPECTOS GENERALES
2.1 Resumen
En este captulo se comentar de la evolucin que ha tenido el desarrollo
de softwares computacionales, la metodologa utilizada para el estudio y
algunos ejemplos de programas computacionales que existen en el mercado.

2.2 Introduccin
En los aos cincuenta y sesenta, era comn encontrar en los laboratorios
de las universidades modelos estticos de los sistemas elctricos, utilizando
modelos simplificados de los generadores y reduciendo los elementos del
sistema utilizando componentes RLC (1). En los aos 70 estos mtodos fueron
reemplazados con el uso de computadores, los cuales eliminaron este tedioso
trabajo, pero introdujeron nuevos problemas tpicos de stos, por ejemplo,
problemas de accesibilidad, requerimientos mnimos de sistema, problemas de
aprendizaje de los sistemas operativos, costos propios de los computadores, y
grandes gastos de tiempo en el clculo mientras ms complejas eran las redes
elctricas (2).
En el presente, el rpido progreso de la tecnologa de los computadores
(hardware y software) a hecho que el problema del anlisis de sistemas sea
realizado por un simple PC. Las tcnicas ya se han desarrollado para
aprovechar al mximo las tecnologas, las cuales permiten al usuario gastar
11

ms tiempo en el anlisis de los aspectos propios del sistema elctrico en s, en


vez de usar tiempo en aprender programacin, o en aprender un nuevo sistema
operativo (2).
En Chile, el uso de simulaciones para realizar clculo de flujo de potencia
es usado intensamente para determinar la factibilidad y los niveles de seguridad
necesarios de operacin tcnica econmica proyectada.
Este desarrollo es llevado a cabo por programas computacionales, los
cuales deben realizar modelos de los sistemas elctricos existentes, y deben
ser capaces de realizar el clculo de flujo de potencia sin importar la extensin
o el tamao de la red; adems los resultados obtenidos deben ser claros y
fciles de interpretar, ya que stos sern son los que se utilizarn para la toma
de decisiones (3).

2.3 Herramientas Usadas Para el Anlisis de Sistemas de Potencia
A continuacin se muestra un esquema que resume la evolucin de las
herramientas utilizadas en el estudio de los sistemas elctricos de potencia.





12

Para hacer anlisis de sistemas de potencia se necesita que los


softwares involucrados cumplan con ciertos requerimientos y mtodos bsicos.
Estos requerimientos bsicos son el anlisis de flujo de carga, anlisis de
corto circuito, anlisis de motores, regulacin de voltaje, estudio de sistemas
tipo DC, y anlisis de dispositivos varios que se encuentren en el sistema (4).
Detrs de cada estudio matemtico es importante obtener resultados rpidos y
confiables. Los mtodos que se utilizan generalmente son Gauss-Seidel,
Newton-Raphson, y el Fast-Decoupled o desacoplado rpido (5). Combinando
los algoritmos de Gauss-Seidel y Newton-Raphson se puede llegar a tener un
gran grado de convergencia. Muchos estudios demuestran que Newton-
Figura1,Evolucindelasherramientascomputacionalesutilizadasenestudiosdesistemaselctricos (3)
13

Raphson es ms adecuado para sistemas de distribucin, mientras que el de


desacoplado rpido es ms apropiado para los sistemas de transmisin (6).
Para hacer un anlisis del sistema se definen condiciones iniciales y se
utilizan distintas tcnicas para simular el diseo y comportamiento del modelo.
Alguno de los mtodos de anlisis son (7):
Anlisis en rgimen permanente: Se asume voltajes y corrientes
sinusoidales y componentes lineales. Es usado para realizar flujos
de potencia, perfiles de voltaje, prdidas (activas y reactivas),
compensaciones de reactivos, y posiciones de los tap de los
transformadores.
Anlisis de perturbaciones: Es usado para anlisis en sistemas
elctricos en condiciones anormales, tales como cortocircuitos, y
anlisis de armnicos.
Anlisis Dinmico: Es usado para verificar que el sistema elctrico
no se inestabilice, o que no colapse durante disturbios mayores en
la red, y tambin es usado para determinar los lmites
operacionales del sistema elctrico de potencia.
Anlisis Transiente: Simula sistemas reales, incluyendo modelos
no lineales, con impedancias des balanceadas y parmetros
dependientes de la frecuencia.

14

Cuando se quiso aadir a los clculos las restricciones econmicas


relativas al costo de produccin de una unidad adicional de electricidad, se
realizaron estudios, a partir de los aos sesenta, para agregar estas
restricciones, y se llego a la formulacin de un flujo de potencia ptimo (OPF),
la cual ha sido generalizada para representar cualquier tipo de restriccin, como
la de minimizar prdidas hmicas del sistema, la minimizacin del costo de
compensacin de reactivos para el control de variaciones de tensin (8).
Los programas computacionales, adems de tener las herramientas de
anlisis anteriormente descritas, tienen que contar con una interfaz grfica
(graphical user interface o GUI) para interactuar con el usuario. Alguna de las
caractersticas para hacer amigables dichos programas incluyen la posibilidad
de arrastrar (drag and drop) elementos, diseo de instalaciones, poder editar en
pantalla las instalaciones, el uso de distintas vistas y las caractersticas de
reportes de los eventos, que utilice distintos colores para cada tipo de
informacin, etc. Adems el resultado debe ser independiente de la mquina
donde se realice el estudio.
Otra caracterstica importante es que incluya la capacidad de
importar/exportar los datos, la capacidad de hacer/deshacer y la de tener una
buena librera de ayuda (9).


15

2.4 Mtodos Para Realizar el Clculo de Flujo de Potencia


Flujo de potencia es calcular con precisin las tensiones de estado
estacionario en todas las barras de toda una red, y a partir de ese clculo, los
flujos de potencia real y reactiva en cada una de las lneas y transformadores,
bajo la suposicin de generacin y carga conocidas. Su funcin bsica radica
en importantes detalles: modelar controles tales como derivaciones mviles de
transformadores y potencia de salida reactiva del generador (10).
Para el estudio de flujos de potencia, una barra cualquiera de un sistema
elctrico, que se encuentra dentro de una red elctrica, y que est conectada a
tierra mediante una admitancia, puede ser modelada de la siguiente manera:

Figura2,ModeloGeneraldeunaBarra(1).

Si se aplica la ley de corrientes de Kirchoff a la barra, se puede calcular
la corriente inyectada a la barra y los voltajes en otras barras del sistema
conectadas mediante lneas modeladas como admitancias a la barra en estudio:
16

= I


]
n
]=0
-
]
I
]

n
]=1
] = u (cc. 1)
En donde
Ij
representa la matriz admitancia entre la barra en estudio i y
la barra j, y I
]
= |I|zo
]
, es el voltaje en la barra j del sistema.
La ecuacin anterior puede ser escrita en trminos de los elementos de
la matriz de admitancia nodal, la cual resume la informacin de la topologa de
la red del sistema bajo estudio. La forma que toma la matriz de admitancia
nodal del sistema est dada por:
Elementos de la diagonal (ec. 2) y

= |y

|z0

=
k
n
k

Elementos fuera de la diagonal (ec.3) y
]
= |y
]
|z0
]
= -
]

Con la definicin de la matriz de admitancia nodal y considerando que
y
]
= |y
]
|z0
]
y I
]
= |I|z] son nmeros complejos, la ec. 1 puede ser escrita
como:
I

= y
]
I
]
n
]=1
= |y
]
| |I
]
|z0
]
+o
]
n
]=1
(cc. 4)
El conjugado de la potencia compleja de la barra en estudio, que resume
el balance total de la potencia compleja inyectada y retirada en la barra, se
expresa como:
P

-]

= I

-
I

(cc. S)
17

Con la ecuacin 4 y 5, se obtienen las relaciones de potencia activa y


reactiva totales de la barra en estudio, en funcin de la matriz de admitancia y
los voltajes de los voltajes del sistema, estas son:
Potencia Activa: (ec.6)
P

= |I

||I
]
||y
]
| cos(0
]
-o

+o
]
)
n
]=1

Potencia Reactiva: (ec.7)

= -|I

||I
]
||y
]
| sen(0
]
-o

+o
]
)
n
]=1

Es por esto que para cada barra del sistema, su estado para efectos del
estudio de flujos de potencia queda completamente determinado al conocer el
valor del mdulo del voltaje y su ngulo, los valores de la potencia activa y
reactiva (1).
De estas variables, se elijen dos de ellas para calcular las otras dos, y as
determinar el estado completo de la barra. Es por esto que dependiendo de las
caractersticas de la barra, se consideran las variables dependientes o
independientes. De acuerdo a esto, las barras se pueden clasificar de la
siguiente manera:
Barra PV
o Se refiere a aquellas barras que cuentan con uno o ms
generadores conectados directamente a ellas. Al tener esta
configuracin, se considera como conocidos las variables de la
18

potencia activa y el voltaje (P y V), y como incgnitas el valor del


ngulo del voltaje y la potencia reactiva neta de la barra.

Barra PQ
o Se refiere a aquellas barras que cuentan con una o ms cargas
conectadas directamente a ellas, las cuales tienen consumos de
potencia activa y reactiva conocidas (P y Q). Es por esto que para
este tipo de barras las incgnitas pasan a ser el mdulo y el
ngulo del voltaje en la barra. Si en algn momento se
sobrepasan los lmites mximos o mnimos de las potencias, estos
valores se fijan, y la clasificacin de la barra cambia para las
siguientes iteraciones del flujo de potencia.

Barra libre (Barra Slack)
o De todas las barras PV del sistema, una de ellas se elige como
barra libre o barra slack, a la cual se le asigna como conocido (y
de manera arbitraria) el valor del voltaje en mdulo y ngulo, la
que constituye la referencia para los dems voltajes en las dems
barras del sistema. Esta barra inyecta (o absorbe) la potencia
activa y reactiva necesaria para igualar la generacin total del
sistema con la demanda total de los consumos y las prdidas de
las lneas, las que no son conocidas a priori.
19


Con esta clasificacin, y dado que la relacin entre las potencias y el
voltaje en una barra no es lineal (ec. 5, 6 y 7), para resolver el problema de flujo
de carga es necesario emplear mtodos numricos iterativos para encontrar la
solucin del problema mediante un proceso de convergencia.
Como se mencion en el punto anterior, estos mtodos son:

2.4.1 Mtodo de Gauss Seidel.
Este mtodo calcula el voltaje en mdulo y ngulo de una barra, en
funcin de los voltajes en todas las barras obtenidos en una iteracin anterior
del modelo.
De las ecuaciones 1 y 5, se obtiene una expresin para el voltaje de la
barra genrica i, que es calculado en forma iterativa.
I

k+1
=
_
P

-]

k
_
-
+ y
]
I
]
k n
]
y

] = i (cc. 8)
Se considera que el mtodo converge si el mdulo de la diferencia del
voltaje entre dos iteraciones sucesivas para todas las barras, excepto para la
barra libre, es menor a una tolerancia definida, por ejemplo =0,01.
Para mejorar la convergencia del mtodo se puede calcular el voltaje en
las barras i en la iteracin k+1, utilizando los voltajes en la barra j, calculados
dentro de la misma iteracin k+1 (mtodo con variables actualizadas). Tambin
20

se puede emplear un factor o (o e [1,3; 1,7]) para acelerar la convergencia al


disminuir el nmero de iteraciones para la tolerancia definida (mtodo con factor
de aceleracin)
I
uccIcudo
k+1
= I

k
+o|I

k+1
-I

k
] (cc. 9)
En general el mtodo de Gauss Seidel no exhibe buenas caractersticas
de convergencias en sistemas elctricos de tamao real. Generalmente
necesita una cantidad mayor de iteraciones que las utilizadas por otros mtodos
para el clculo de flujos de potencia.

2.4.2 Mtodo de Newton Raphson.
Este mtodo constituye el mtodo numrico iterativo base para las
aplicaciones computacionales que calculan flujos de potencia.
Este mtodo consiste en expandir en serie de Taylor las ecuaciones 6 y 7
en torno a un punto inicial despreciando los trminos de segundo orden de la
serie. De esta forma se deduce un sistema de ecuaciones lineales que
relacionan las potencias con el mdulo y ngulo del voltaje, que puede ser
escrita como:
_
P

_ =
l
l
l
l
oP
oo
oP
o|I|
o
oo
o
o|I|1
1
1
1
_
o
|I|
_ (cc. 1u)
Considerando el error entre dos sucesiones sucesivas ngulo y mdulo
de voltaje como:
21

o = o

k+1
-o

k
|I| = |I

k+1
| -|I

k
|
(cc. 11)
Este mtodo concluye cuando el mdulo del error de potencia activa y
reactiva para la siguiente iteracin es menor a una tolerancia definida para
todas las barras del sistema incluidas en el mtodo, por ejemplo |P

k
| =
u.uu1 y |

k
| = u.uu1.
La matriz de derivadas parciales de la ecuacin 10 es conocida como
matriz jacobiana del sistema. Si un sistema tiene n barras, de las cuales g son
PV, entonces la matriz es cuadrada de dimensiones 2n-2-g.
El nmero de iteraciones para obtener la solucin es independiente al
tamao del sistema. Adems el error del mdulo de potencia converge en forma
cuadrtica a cero; mientras que el mtodo de Gauss Seidel lo hace en forma
lineal. El contra que tiene este mtodo es que generalmente se hacen ms
clculos numricos por iteracin.

2.4.3 Mtodo Desacoplado Rpido.
Cuando el sistema elctrico tiene un gran nmero de barras, el mtodo
de Newton Raphson usa demasiados recursos de cmputo y memoria del
computador en donde se estn haciendo los clculos, ya que se esta
calculando, almacenando y factorizando en cada iteracin la matriz jacobiana
del sistema. El mtodo Desacoplado Rpido (2), es una variante que introduce
aproximaciones deducidas de la topologa de la red y las condiciones de
22

operacin normales del sistema. Este mtodo genera una matriz jacobiana,
pero no necesita actualizar sus valores en cada aproximacin, lo que reduce la
cantidad de clculos necesarios.
Las simplificaciones son aplicables si el sistema elctrico cumple con:
En las lneas de transmisin, el siguiente coeficiente
X
R
, tiene que
ser un valor elevado, siendo X la reactancia serie, y R la
resistencia de la lnea.
En una condicin de operacin normal del sistema la diferencia
entre el ngulo de voltajes en barras adyacentes es pequea.
En una condicin de operacin normal del sistema el mdulo del
voltaje en todas las barras del sistema es aproximadamente 1 en
p.u.
Con estas consideraciones se pueden deducir las siguientes relaciones:
cos(0
]
-o

+o
]
) = u =
oP
o|I|
= u y
o
oo
= u (cc. 12)
De estas relaciones se puede demostrar que el sistema de ecuaciones
definido por la ecuacin 10 se desacopla dando lugar a dos ecuaciones
matriciales independientes que describen la otra versin del mtodo
desacoplado rpido. La primera relaciona la variacin de potencia activa con la
variacin en los ngulos de los voltajes, mientras que la segunda relaciona la
variacin de la potencia reactiva con la variacin en los mdulos de ls voltajes:
23

|P
k
] = -|B
i
] |o
k+1
]
|
k
] = -|B
ii
] ||I
k+1
|]
(cc. 1S)
En donde los elementos de las matrices B
i
y B
ii
quedan definidos por:
B
]
i
=
1
X
]
(X
]
cs lo rcoctoncio cntrc borro i y ])
B

i
= -B
]
i
]=
(cc. 14)
B

ii
= 2 b

-B
]
ii
]=
(con b

susccptoncio cn porolclo o lo borro i)


B
]
ii
= b
]
(cc. 1S)
Si los supuestos descritos para la validez del mtodo no se cumplen para
un sistema elctrico de potencia, esta versin presenta problemas de
convergencia, los cuales pueden ser mejorados si se introducen mejoras al
mtodo.

2.5 Ejemplos de Programas en el Mercado.

2.5.1 Power - World Simulator (3):
Power - World es una herramienta robusta para encontrar soluciones en
el clculo de flujo de potencia, es capaz de resolver eficientemente sistemas
elctricos con ms de 60.000 barras. Bsicamente, este programa esta
diseado para simular la operacin de sistemas de alta tensin. El software es
24

extremadamente amigable y de gran interactividad, incluye diagramas


unilineales con flujos de carga animados, contornos con distintos colores.

2.5.2 SimPowerSystem (4):
Modela y simula sistemas elctricos de potencia con el ambiente
Simulink/Matlab. Tiene una gran capacidad para modelar la generacin, la
transmisin, y la distribucin de sistemas elctricos de potencia, especialmente
cuando el diseo se asocia a sistemas de control. Contiene ms de 130 bloques
de componentes y dispositivos comnmente utilizados en redes elctricas,
basadas en conocidas ecuaciones electro-magnticas y electro-mecnicas.
Estn distribuidos en seis libreras, donde se incluyen fuentes, elementos,
mquinas, electrnica, control, medidores, y componentes de tres fases. El
programa puede ser usado para propsito general y se pueden agregar
mdulos creados por el usuario.

2.5.3 PSS/E (5):
PSS/E (Power System Simulator for Engineering) es un programa
integral para simular, analizar y optimizar el rendimiento del sistema de energa.
Utiliza los ms avanzados mtodos probados para realizar estudios de flujo de
potencia, anlisis de fallas en desequilibrio, y simulaciones dinmicas. El
mdulo integrado PSS/E OPF proporciona una solucin de flujo ptimo de
energa el cual optimiza automticamente un sistema dependiendo de las metas
25

especificadas por el usuario, cumpliendo al mismo tiempo las limitaciones de


flujo de potencia. PSS/E proporciona la mxima flexibilidad para el anlisis de
sistemas de potencia para proyectistas y diseadores modelando una amplia
variedad de componentes que permite a los usuarios aplicar sus propios
criterios de anlisis. Adems consta de una moderna interfaz grfico con mens
y ventanas desplegables. Su modelado eficiente permite manejar redes de
cualquier tipo y reducirlas a tamao prctico. PSS/E tambin cuenta con
programas complementarios como MUST (Managing and Utilizing System
Transmission), TPLAN, PSS/ADEPT (Power System Simulator/Advances
Engineering Productivity Tool), PSS/Engines, ODMS (Operational Database
Management System), PSS/O (Power System Simulator for Operations),
LMPsim (Location Marginal Pricing Simulator, PSS/Viper (Power System
Simulator for Visual Power EngineeRing).

2.5.4 RTDS Simulator (6):
RTDS Technologies Inc. puede hacer anlisis de sistemas elctricos de
potencia para tecnologas de estudio de simulaciones en tiempo real, para
sistemas con HVAC (high voltaje alternating current) y HVDC (high voltaje direct
current). El simulador RTDS tiene una interfaz grfica, RSCAD, el cual puede
ser usado para configurar simulaciones, controlar y modificar los parmetros de
un sistema de potencia durante una simulacin, adquiriendo datos, y analizando
26

resultados. Bsicamente el simulador RTDS tiene dos elementos principales, la


interfaz grfica (RSCAD) y una librera de mdulos y compiladores.

2.5.5 ETAP (7):
Etap of Operational Technology, Inc. es para disear, simular, y analizar
generacin, transmisin, distribucin y sistemas de potencia industriales. El
programa ETAP tiene varios mdulos, como el del estudio de sistemas
elctricos de potencia, simulaciones en tiempo real, monitoreo avanzado,
optimizacin de sistemas de control, cambio automtico de carga, anlisis de
costo por uso de energa, y coordinacin de dispositivos. ETAP tiene una familia
de programas que integran una herramienta de anlisis usada para disear,
mantener, y operar sistemas elctricos de potencia, y lo hacen en un ambiente
totalmente grfico. Adems cuenta con herramientas complementarias, como
ETAP PSMS (Power System Management System) para el manejo de centrales
elctricas, ETAP STAR para protecciones y aparatos de coordinacin, y ETAP
PanelSystem.

2.5.6 Power Factory (Digsilent) (8):
El software Digsilent PowerFactory es una herramienta para realizar
anlisis de sistemas elctricos de potencia, el cual combina el modelamiento de
sistemas confiables y flexibles con distintos tipos de algoritmos para encontrar
soluciones dependiendo de lo que se necesite, adems hace uso de una base
27

de datos orientada al objeto (Object-Oriented). El usuario puede desarrollar


modelos detallados de un sistema de potencia, utilizando una nica base de
datos, con un amplio rango de datos, datos de un sistema balanceado, de un
sistema des balanceado, datos de frecuencia, de tiempo, y sistemas con
caractersticas estocsticas. El programa soporta estudios para sistemas con un
mximo de 100, 250 e infinitas barras, dependiendo del tipo de licencia que se
adquiera. PowerFactory tambin realiza anlisis de confiabilidad, proyeccin de
demanda, anlisis de contingencias, modelamiento de elementos de electrnica
de potencia, y tiene una interface para SCADA/GIS. Adems es compatible con
otro tipo de programas como PSS/E & PSS/U

2.5.7 EDSA:
EDSA es una compaa que no solo hace herramientas para el anlisis
de sistemas de potencia, tambin realiza softwares de seguridad nacional,
energa nuclear, propulsin elctrica, y programas de control avanzado en
sistemas elctricos de potencia (9). El programa EDSAs Technical 2000 es una
herramienta elctrica estndar para el diseo en la industria, la cual ayuda a los
profesionales a modelar, simular, gestionar, y manejar los diseos elctricos de
distribucin y transmisin. El programa Technical 2000 utiliza distintos tipos de
algoritmos, utilizando programacin orientada a objetos, para que los ingenieros
sean capaces de estudiar sistemas balanceados, des balanceados, con tres
fases, monofsicos, flujo de cargas, y estudiar casi todas las configuraciones
28

que existen en una red elctrica. El programa contiene distintos mdulos que
hacen posible estudiar y disear cualquier tipo de sistema elctrico (T & D,
parques elicos, redes AC/DC), analizando sistemas de potencia desde
distintas perspectivas (sistemas balanceados, PQ, confiabilidad de sistemas,
anlisis dinmico, etc.), importando/exportando datos, y siendo compatible cien
porciento con Auto CAD. Otras caractersticas estn disponibles, dependiendo
del tipo de licencia que se adquiera.

2.5.8 ABB Advise GridView (10):
ABB Advise GridView es una herramienta que simula el mercado
energtico, contiene herramientas de anlisis y diseo, usadas para la toma de
decisiones en asuntos del mercado industrial elctrico. GridView, utiliza
metodologas avanzadas para el estudio de generacin, transmisin, cargas,
combustible, y mercado econmico, integrando todo en un programa que
entrega indicadores econmicos de los distintos lugares, medidas de utilizacin
en el sistema de transmisin, medidas de estabilidad en el sistema de potencia,
e ndices de comportamiento del mercado. Produce despachos econmicos que
respetan las leyes de flujo de potencia y requerimientos en los sistemas de
transmisin.
29

CAPTULO 3.
DATOS PARA DISTINTOS TIPOS DE ANLISIS DE SISTEMAS
ELCTRICOS.
3.1 Resumen
En este captulo se detallan los tipos de archivos necesarios para los
diferentes anlisis que se realizan en los sistemas elctricos de potencia.

3.2 Introduccin
Se necesita desarrollar una base de datos que sea capaz de crear
archivos utilizables por programas destinados al anlisis de sistemas elctricos
de potencia (SEP).
En primera instancia se necesitan los parmetros elctricos del SEP para
poder hacer un flujo de potencia y poder estudiar la estabilidad esttica del
sistema.
Los parmetros de secuencia son necesarios para el anlisis de fallas
que pueden ocurrir en el sistema, como por ejemplo las fallas monofsicas,
bifsicas o trifsicas, ocasionadas por ejemplo, por un cortocircuito en alguna
lnea del sistema.
El ltimo conjunto de datos son los datos necesarios para realizar un
estudio de comportamiento dinmico del sistema.

30

3.3 Datos para el Flujo de Potencia


Se refiere, en general, a los parmetros elctricos mnimos de los
dispositivos de un sistema elctrico (cargas, lneas, generadores, etc.). Estos
parmetros son necesarios para realizar estudios en sistemas en condiciones
normales de operacin, y que no presentan variaciones en el tiempo
(estacionarios). Adems constituyen los datos necesarios para los softwares
utilizados.
Los parmetros necesarios, por elemento, son:
Terminales y Barras: De donde se obtiene el voltaje nominal de la barra.
Cargas: Se necesita la barra donde est conectada la barra,
especificando si la carga est o no fuera de servicio. Adems se
necesitan los siguientes datos:
o Potencia Activa en [MW].
o Potencia Reactiva en [MVar].
o Potencia en [MVA].
o Corriente en [kA].
o Factor de Potencia.
Generadores: Se necesita saber en que barra est conectado el
generador, y especificar si el generador est o no en servicio. Adems se
necesitan los siguientes parmetros:
o Potencia Activa [MW].
o Potencia Reactiva [MVar].
31

o Limite superior e inferior de la Potencia Real y Reactiva.


o Potencia total en [MVA].
Lneas: Se necesitan las barras donde est conectada, el largo de sta y
especificar si la lnea se encuentra o no en servicio. Adems se
necesitan los siguientes datos:
o R, X y B (resistencia, reactancia y susceptancia) de la lnea en
[p.u].
o Capacidad de la lnea en [MVA].
Transformadores de dos y tres enrollados: Se necesita saber entre que
barras est conectado el transformador, y saber si est en servicio o no.
Los dems datos que se necesitan son:
o Relacin de resistencia y reactancia entre enrollados (R1-2 y X1-
2) en [p.u]
o La potencia nominal del transformador expresada en [MVA].
o Relacin entre voltaje nominal y voltaje base de los enrollados.
Shunts / Reactores: Para los Shunts / Reactores se necesita saber la
barra donde estn conectados y los siguientes datos:
o Lmite superior e inferior de voltaje en [p.u].
o Total de admitancia del elemento shunt entregada [MVar] con
respecto a la unidad de voltaje.
o Numero de pasos necesarios para llegar al total de admitancia.
o Incremento de admitancia por cada nmero de pasos.
32

Etc.

3.4 Datos de Secuencia
Los datos de secuencia (positiva, negativa y cero) son necesaria para
realizar un anlisis de fallas en sistemas balanceado/des balanceados.
Los datos mnimos necesarios para crear esta base de datos son:
Datos de Secuencia de los generadores:
o Para cada uno de los casos se necesita la barra donde esta
conectado el generador, su resistencia y reactancia (cero, positiva
y negativa, para cada caso) en [p.u].
Datos de secuencia de cargas tipo Shunt:
o Este dato se utiliza para cargas de tipo shunt, se necesita la barra
donde esta conectada la carga, y los valores de secuencia de
resistencias y reactancias de cada elemento, expresadas en [p.u].
Datos de secuencias de las lneas de transmisin:
o Se necesitan las barras donde esta conectada la lnea, con los
datos de resistencia, reactancia y susceptancia de secuencias de
cada una.
Puesta a tierra de cada elemento del sistema:
o Se necesitan las barras donde estn conectados los elementos,
por ejemplo en el caso de los transformadores se especifica el tipo
de conexin que cada uno tiene, por ejemplo el lado de alta esta
33

en conexin delta y el lado de baja en configuracin estrella con


neutro conectado a tierra.
Datos de secuencia de los elementos Shunt:
o Se necesita la barra donde esta conectado el elemento, y el
incremento de la admitancia de secuencia cero para cada paso en
[p.u].
Etc.

3.5 Datos para Anlisis Dinmicos
Estos datos son necesarios para poder modelar cada una de las
mquinas generadoras, cargas, protecciones, y as poder realizar un estudio
dinmico del sistema.
Los datos necesarios para este anlisis son:
Modelo General de cada generador.
Modelo de los Reguladores de Voltaje de cada generador.
Modelo de los Reguladores de Turbina de cada generador.
Estabilizadores de Potencia de cada generador.
Modelo de Cargas.
Modelo de protecciones.
Etc.

Cada uno de estos puntos ser mostrado en detalle en anexos.
34

3.6 Uso de Power Factory Digsilent y Power System Simulator


for Engineering (PSS/E)
La recopilacin de informacin para realizar la base de datos se obtuvo
desde la pgina oficial del CDEC SING. Estos datos estn ingresados en los
archivos utilizados por el software Power Factory Digsilent en formato
exportado .dz, los cuales fueron extrados a Microsoft Excel para luego generar
archivos .raw (sin formato) utilizables por los softwares PSS/E y Power World.
El traspaso desde Digsilent a estos programas debe ser en ambas direcciones
(lectura / escritura).
Para realizar el traspaso desde los archivos Digsilent (.dz) a Excel (.xls),
se utiliz un script escrito en lenguaje DPL (Digsilent Programming Lenguage).
Este proceso llevo los datos a formato .txt. Luego se abren estos archivos con
Excel y se generan los archivos raw utilizando macros (Visual Basic).
Estos archivos raw pueden ser ledos por Digsilent, PSS/E y Power
World, lo que facilita el anlisis de cualquier variacin que se quiera estudiar
mediante estos softwares.

3.7 Archivos Creados para la Base de Datos
Para hacer el traspaso desde Digsilent a un archivo formato .txt se crea
un script hecho en lenguaje DPL, lenguaje muy parecido a C++. La informacin
para utilizar este lenguaje de programacin se encuentra en el manual del
Digsilent.
35

El Script genera tres archivos, el primero utilizado para el clculo del flujo
de potencia, el segundo contiene los datos de secuencia, y el tercero tiene los
datos para clculos dinmicos del sistema.
El algoritmo del script, es el siguiente:
Set: Con este comando se definen las variables que contendrn un listado de
parmetros, por ejemplo, todas las barras del sistema.
object : Se definen las variables que contiene cada uno de los elementos
listados en el comando Set, por ejemplo, la barra Encuentro 220 con
todos los datos que contiene (nombre, voltaje, etc).
string: Se usa para definir las variables alfabticas que se encuentran en los
objetos, como por ejemplo, el nombre de la barra.
double: Se utiliza para definir variables numricas que se encuentran en los
objetos, como por ejemplo el voltaje de una barra.
int: Se utiliza para definir variables de tipo entero, se utilizan generalmente para
hacer comparaciones (1 verdadero, 0 falso).
fopen: Se utiliza para crear un archivo de texto. En este caso se generan tres
archivos estos son raw.txt, seq.txt y dyr.txt. El primero contiene los datos
para el clculo de flujo de potencia, el segundo contiene los datos de
secuencia del sistema, y el tercero contiene los datos para el clculo
dinmico.

36

Luego de definir los tipos de variables a utilizar, se comienza a extraer datos


desde Digsilent:

while (exista una red){
Se eligen cada una de las barras y terminales de todas las redes
existentes en el sistema y se escribe en este formato:
o Name Station: Nombre de la barra.
o Grid: Nombre de la red en la que se encuentra.
o Nom.L-L Volt.kV: Voltaje nominal de la barra en [kV].
o Ul. Magnitude kV: Voltaje real de la barra en [kV].
o u. Magnitude p.u: Voltaje real de la barra en [pu].
o U. Angle deg: ngulo del voltaje en la barra, en [deg].

while (exista una red){
Se eligen cada una de las cargas de todas las redes existentes en el
sistema y se escribe en este formato:
o Name: Nombre de la carga.
o Grid: Nombre de la red en la que se encuentra.
o Type TypLod,TypLodind: Tipo de carga.
o Terminal Busbar: Barra donde est conectada la carga.
o Out of Service: Muestra si la carga se encuentra en servicio.
o Act.Pow. MW: Potencia Activa de la carga en [MW].
37

o React.Pow. Mvar: Potencia reactiva de la carga en [MVar]


o App.Pow. MVA: Potencia aparente de la carga en [MVA].
o I kA: Corriente de la carga en [kA].
o Pow.Fact.: Factor de potencia de la carga.

while (exista una red){
Se eligen cada una de los generadores de todas las redes existentes
en el sistema y se escribe en este formato:
o Nombre: Nombre del generador.
o Grid: Nombre de la red en la que se encuentra el generador.
o Terminal Busbar: Barra donde est conectada el generador.
o Active Power MW: Potencia Activa del generador en [MW].
o Reactive Power Mvar: Potencia reactiva del generador en [MVar].
o Qmax Mvar: Limite superior de Potencia Reactiva en [MVar].
o Qmin Mvar: Limite inferior de Potencia Reactiva en [MVar].
o Nominal Apparent Power: Potencia nominal del generador en
[MVA].
o xd" sat p.u: Reactancia de saturacin.
o Out of Service: Muestra si el generador se encuentra en servicio.
o Pmax MW: Mximo valor de Potencia Activa del generador.
o Pmin MW: Valor mnimo de Potencia activa del generador.

38

while (exista una red){


Se eligen cada una de las lneas de todas las redes existentes en el
sistema y se escribe en este formato:
o Nombre: Nombre de la lnea.
o Grid: Nombre de la red en la que se encuentra la lnea.
o Terminal i: Barra i donde esta conectada la lnea.
o Terminal j: Barra j donde esta conectada la lnea.
o R [pu]: Parmetro R (resistencia) de la lnea, en ohm/km.
o X [pu]: Parmetro X (reactancia) de la lnea, en ohm/km.
o B [pu]: Parmetro B (susceptancia) de la lnea, e h /km n o m .
o RateA; RateB; RateC: se refiere a la expresin Sv
nom
I
nom
, en
[MVA].
o Out of Service: Muestra si la lnea se encuentra en servicio.
o Len [KM]: representa el largo de la lnea, en [km].

while (exista una red){
Se eligen cada una de los transformadores de dos y tres enrollados
de todas las redes existentes en el sistema y se escribe en este formato:
o Nombre: Nombre del transformador.
o Grid: Nombre de la red en la que se encuentra el transformador.
o Terminal i: Barra i donde esta conectado el transformador.
o Terminal j: Barra j donde esta conectado el transformador.
39

o R1-2 [pu]: Parmetro R (resistencia), de secuencia positiva en


[pu].
o X1-2 [pu]: Parmetro X (reactancia), de secuencia positiva en [pu].
o Rated Power [MVA]; Rated Power [MVA]; Rated Power [MVA]:
Potencia nominal del transformador, en [MVA].
o WINDV1 [pu]: Relacin entre el voltaje de alta del transformador y
el voltaje nominal, en [pu].
o Out of Service: Muestra si el transformador se encuentra en
servicio.

while (exista una red){
Se eligen cada una de los elementos Shunt de todas las redes
existentes en el sistema y se escribe en este formato:
o Name Nombre del elemento shunt.
o Grid: Nombre de la red en la que se encuentra el elemento shunt.
o Terminal BusBar: Barra donde est conectada el elemento shunt.
o Upper Voltage Limit [pu]: Lmite superior de voltaje en [pu].
o Lower Voltage Limit [pu]: Lmite inferior de voltaje en [pu].
o Binit: Admitancia total.
o Ni: Numero de pasos.
o Bi: Valor de la admitancia por numero de pasos.

40

Con esto se termina la recopilacin de datos para el clculo de flujo de


potencia, ahora se comienza a escribir el archivo que contiene los datos de
secuencia.

while (exista una red) {
Se eligen los datos de impedancia de secuencia positiva de los
generadores de todas las redes existentes en el sistema y se escribe en
este formato:
o Terminal Bus Bar: Barra donde est conectado el generador.
o Name: Nombre del Generador.
o ZRPOS [pu]: Resistencia de secuencia positiva del generador.
o ZXPOS [pu]: Reactancia de secuencia positiva del generador.

while (exista una red) {
Se eligen los datos de impedancia de secuencia negativa de los
generadores de todas las redes existentes en el sistema y se escribe en
este formato:
o Terminal Bus Bar: Barra donde est conectado el generador.
o Name: Nombre del Generador.
o ZRNEG [pu]: Resistencia de secuencia negativa del generador.
o ZXNEG [pu]: Reactancia de secuencia negativa del generador.

41

while (exista una red) {


Se eligen los datos de impedancia de secuencia cero de los
generadores de todas las redes existentes en el sistema y se escribe en
este formato:
o Terminal Bus Bar: Barra donde est conectado el generador.
o Name: Nombre del Generador.
o RZERO [pu]: Resistencia de secuencia cero del generador.
o XZERO [pu]: Reactancia de secuencia cero del generador.

while (exista una red) {
Se eligen los datos de impedancia de secuencia negativa de las cargas
de tipo shunt de todas las redes existentes en el sistema y se escribe en
este formato:
o Terminal Bus Bar: Barra donde est conectada la carga.
o Name: Nombre de la carga.
o GNEG [pu]: Componente activa de secuencia negativa de la
carga.
o BNEG [pu]: Componente reactiva de secuencia negativa de la
carga.

while (exista una red) {
42

Se eligen los datos de impedancia de secuencia cero de las cargas de


tipo shunt de todas las redes existentes en el sistema y se escribe en
este formato:
o Terminal Bus Bar: Barra donde est conectada la carga.
o Name: Nombre de la carga.
o GZERO [pu]: Componente activa de secuencia cero de la carga.
o BZERO [pu]: Componente reactiva de secuencia cero de la carga.

while (exista una red) {
Se eligen los datos de secuencia cero de las lneas de todas las redes
existentes en el sistema y se escribe en este formato:
o Name: Nombre de la lnea.
o Terminal i Bus bar: Barra i donde esta conectada la lnea.
o Terminal j Bus Bar: Barra j donde esta conectada la lnea.
o RLINZ: Resistencia de secuencia cero de la lnea en [pu].
o XLINZ: Reactancia de secuencia cero de la lnea en [pu].
o BCHZ: Susceptancia de secuencia cero de la lnea en [pu].

while (exista una red) {
Se eligen los datos de mtodo de puesta a tierra de los
transformadores de dos y tres enrollados de todas las redes existentes
en el sistema y se escribe en este formato:
43

o Name: Nombre del generador.


o Terminal i Bus bar: Barra i donde est conectado el transformador
(lado de alta tensin).
o Terminal j Bus Bar: Barra j donde est conectado el transformador
(lado de baja tensin).
o Grounding Code I: Mtodo de conexin de lado i del transformador
(D, Y o YN).
o Grounding Code J : Mtodo de conexin de lado j del
transformador (D, Y o YN).

Con esto finaliza la recopilacin de datos de secuencia del sistema, y comienza
la recopilacin de datos para el anlisis dinmico.
while (exista una red) {
Se eligen los datos del modelo general de cada generador de todas las
redes existentes en el sistema y se escribe en este formato:
o Nombre: Nombre del Generador.
o Terminal Bus Bar: Barra en donde est conectado el generador.
o H [s]: Constante de tiempo de inercia.
o Damp [pu]: Dumping mecnico.
o rstr [pu]: Resistencia de estator.
o xl [pu]: Reactancia de fuga.
o xrl [pu]: Reactancia de estator.
44

o Rotor Type: Tipo de rotor (polos salientes, tipo jaula de ardilla)


o xd [pu]: Reactancia sncrona longitudinal.
o xq [pu]: Reactancia sncrona transversal.
o Td0 [s], Tq0 [s]: Constantes de tiempo transitorios.
o xd [pu]: Reactancia transiente longitudinal.
o xq [pu]: Reactancia transiente transversal.
o Td0 [s], Tq0 [s]: Constantes de tiempo subtransitorios.
o xd [pu]: Reactancia subtransiente longitudinal.
o xq [pu]: Reactancia subtransiente transversal.
o Main Flux Saturation: Saturacin de flujo principal.
o 1.0 [pu], 1.2 [pu]: Parmetros de saturacin

while (exista una red) {
Se eligen los datos de los reguladores de tensin de cada generador
de todas las redes existentes en el sistema. Existen distinta informacin
para distintos tipos de generadores, estos datos se detallan en los
anexos.

while (exista una red) {
Se eligen los datos de los reguladores de turbina de cada generador de
todas las redes existentes en el sistema. Existen distinta informacin
45

para distintos tipos de generadores, estos datos se detallan en los


anexos.

while (exista una red) {
Se eligen los datos de los estabilizadores de potencia de cada
generador de todas las redes existentes en el sistema. Existen distinta
informacin para distintos tipos de generadores, estos datos se detallan
en los anexos.

46

CAPTULO 4.
BASE DE DATOS PARA CREAR ARCHIVOS GENERALES DE
SISTEMAS ELCTRICOS.
4.1 Resumen
En este captulo se mostrar el origen y el manejo de los datos
recopilados para el anlisis y clculo de los sistemas elctricos.

4.2 Introduccin
En el captulo anterior se describe en detalle el algoritmo del script
realizado en Digsilent. En esta oportunidad se hablar del origen de dichos
datos, la forma en que son manejados, y el producto final, que se refiere a los
archivos generados para ser utilizados por los softwares disponibles (Digsilent,
PSS/E y Power World).

4.3 Planteamiento del Problema
Como es de conocimiento general, cada elemento de un sistema
elctrico contiene parmetros fsicos, tcnicos y elctricos que son necesarios
para realizar anlisis de estabilidad. Esta extensa informacin es manejada de
forma particular por cada uno de los softwares del mercado, es decir, cada
programa tiene sus propias libreras, herramientas, entornos grficos y forma en
47

como ingresar datos, siendo la de algunos ms grfica y didctica, y en otros


siendo ms criptica y detallada para manejar.
Es por esto que surge la necesidad de crear una base de datos que trate
a cada elemento del sistema de forma general y sencilla. Para esto se elige una
herramienta ampliamente conocida en el mercado, Microsoft Excel, de uso
frecuente como planilla de clculo.
Para esto se crea una herramienta capaz de exportar datos directamente
desde Digsilent (donde se tienen los datos actualizados del sistema), y crear
archivos de texto, en formato legible directamente por Excel, los cuales sern
exportados en formato .raw, formato compatible con todos los softwares
utilizados.

4.4 Datos de Entrada de Base de Datos
Los datos requeridos por los programas Power World, PSS/E y Digsilent,
son distintos (en cantidad) ya que cada uno de estos programas maneja la
informacin de manera distinta, siendo unos ms completos que otros.
El anlisis ms bsico lo entrega Power World, que solamente est
capacitado para realizar estudios de flujos de potencia, an as este programa
tiene una interfaz bastante sencilla y didctica, lo que lo hace un programa muy
usado para ilustrar grficamente el comportamiento del sistema.
El programa PSS/E, adems de realizar anlisis de flujos de potencia, es
capaz de hacer estudios dinmicos de fallas. Es por esto que requiere una
48

mayor cantidad de datos de los que necesita Power World, precisando un


archivo raw mayor. El problema es que es un programa poco amigable, y su
utilizacin se limita a usuarios avanzados.
PSS/E tambin es capaz de realizar anlisis dinmicos de sistema, pero
su implementacin es ms complicada que en Digsilent, an as estos anlisis
se desarrollan, y los resultados del PSS/E sern comparados con los resultados
entregados por Digsilent.
Digsilent es el programa ms completo de los tres software presentados,
es bastante grfico y didctico para su utilizacin, hacindolo, a primera vista,
fcil de ocupar. An as trabajar con Digsilent es complicado, ya que, por
ejemplo, la cantidad de datos requeridos para hacer un simple flujo de potencia
es abrumadora, con lo que se escapa de la definicin de programa fcil de
ocupar. Digsilent realiza, entre otras cosas, flujos de potencia, anlisis de fallas
y estudios dinmicos de SEP. Aunque PSS/E tambin realiza anlisis
dinmicos, es en Digsilent donde se puede ajustar (con la posibilidad de
hacerlo grficamente) con mayor precisin las mquinas generadoras del
sistema, consiguiendo hacer modelos personalizados (en especial de los
sistemas de control).
Este programa es el que se est utilizando hoy en el mercado chileno y
es en donde se encuentran gran parte de los datos necesarios. Los CDECs
ponen a disposicin los archivos del SING y SIC en Digsilent, en donde se
encuentran los antecedentes necesarios, pero al tratar de visualizar los datos,
49

estos se encuentran en lenguaje crptico (formato .dz), y es por esto que es


necesario crear una forma (script) para llevar la informacin desde Digsilent a
PSS/E y Power world, u otro software.

4.5 Creacin del Diseo
El traspaso de informacin desde Digsilent a Excel puede ser directa,
simplemente copiando y pegando, el problema con este mtodo es que existe
mucha informacin innecesaria, o redundante. Adems, para el caso de anlisis
dinmico, los datos tendran que hacerse uno por uno, por cada generador. Es
por esto que se hace uso del script, para hacer el traspaso de informacin en
poco tiempo y slo con la informacin necesaria.
Cada inicio de toma de datos comienza con el siguiente formato:
0 tab una pequea descripcin de la informacin que viene
nombre de la informacin que se mostrar separada por tabs
nombre de la variable que contiene la informacin en Digsilent

En la Figura 3 se muestra une extracto del archivo generado, donde se
ve claramente el uso de tabs para cambiar de tipo de informacin, y en el
encabezado de tres lneas especificado anteriormente.
50

Figura3,TabladeScriptVistoenNotepad
Este archivo generado se abre con Excel, lo que se ve en la siguiente
figura:

Figura4,TabladeScriptVistoenExcel

Este formato se repite para cada tipo de dato, y para cada archivo, esto
se hace para facilitar la creacin de una macro de Excel.
Cuando Excel genera los archivos raw, estos estn en formato raw tipo
26, que es el formato que lee Power World, PSS/E y Digsilent.

51

CAPTULO 5.
CASOS PRCTICOS DE ANLISIS
5.1 Resumen
En este captulo se analizarn estudios reales en el sistema. Entre estos
estudios, se pueden considerar la inclusin de generadores, lneas y cargas al
sistema, y comparacin de los resultados obtenidos con los softwares.

5.2 Introduccin
Utilizando Digsilent se estudiaran 2 casos reales, el primero consiste en
incluir nuevas centrales generadoras, utilizando una demanda esperada a futuro
para realizar estudios.
Con estas centrales en funcionamiento se estudiarn los efectos
sistmicos, la necesidad de incluir nuevas lneas, con lo cual estos anlisis se
extendern a los efectos en el sistema de transmisin. Esto llevar al segundo
caso a estudiar, la inclusin de nuevas lneas de transmisin.
Los anlisis en general consisten en hacer flujos de potencias y anlisis
estticos de fallas, analizando variables principales. Se analizan los efectos en
el sistema, antes y despus de la central, se realizan comparaciones con cada
uno de los softwares computacionales, mediante la base de datos creada.

52

5.3 Casos de Estudio


Para realizar los distintos casos de estudio, hay que tener en cuenta que
los cambios que se realizarn son la inclusin de:
2 unidades generadoras en Mejillones (SING) (300 MW).
Otra nueva posible central generadora en mejillones con capacidad
aproximada de 600 MW que tendr posible conexin con las barras del
SING Chacaya, Gas Atacama, Laberinto y Encuentro/Crucero.
Nuevas lneas entre Chacaya Gas Atacama y Norgener Tocopilla, y
cuando se necesite, una lnea nueva entre Crucero Encuentro.
Cuando sea necesario, y para equilibrar el sistema cuando la generacin
exceda la demanda, se incluirn cargas posibles en barras Laberinto,
Escondida y Encuentro.
Al entrar las unidades generadoras de mejillones, se analizar la
necesidad del resto de las unidades del rea.
Cuando ingrese al sistema la nueva central generadora en mejillones (de
aprox. 600 MW), se analizar el efecto de sacar de servicio la central
Salta.





53

Con estos datos se crea el siguiente cuadro:


MEJ1MEJ2 Central600MW LChacayaGasAtacama
0 0 0
0 0 1
0 1 0
0 1 1 seagregancargas
1 0 0
1 0 1 seagregancargas
1 1 0 seagregancargas
1 1 1 seagregancargas
Figura5,CasosaEstudiar
Los 8 casos mostrados en el cuadro anterior son los que se estudiarn
con los 3 programas. Adems se agregan 4 casos ms:
El caso base (sistema sin cambios).
Una lnea adicional Norgener Tocopilla
Una lnea adicional Crucero Encuentro
Un caso que incluye la central de 600 MW + unidades en
Mejillones +la lnea Norgener Tocopilla +la lnea Crucero
Encuentro.

Con todos estos casos ya definidos, se calculan los flujos de potencia en
Digsilent, extrayendo manualmente solamente los datos de voltaje en las
barras, el nivel de carga de las lneas y la potencia suministrada por los
generadores para posterior comparacin.
En la Figura 6 se muestran los datos de nivel de voltaje que existe en las
barras para el caso base (izquierda) y el de la lnea adicional Crucero
Encuentro (uno de los 12 casos mencionados anteriormente). Cuando se
54

realiza el caso base, existen barras que se encuentran por debajo de 0.95 en
p.u, las cuales se marcan en amarillo pues no se toman en cuenta para el
anlisis (Esto porque el problema de este bajo voltaje no es el tpico en
estudio). Luego se muestran en rojo aquellas barras que tienen directa relacin
con los cambios hechos y que modificaron y luego se marca en color verde
aquellas barras no estn relacionadas de manera directa elctricamente con el
sector de anlisis realizado.

Caso Base Lnea Crucero Encuentro
Nombre En la carpeta u, Magnitud Nombre En la carpeta
u,
Magnitud
p.u. p.u.
Terminal(1)
rw AG Salta-
Andes 0.9496783
Pozo Almonte Cerro Colorado
12
Lnea crucero
Encuentro 0.8695532
Andes 345 SING 0.9496636 Laberinto Oeste 13.2
Linea crucero
Encuentro 0.886408
Andes Reactor Shunt 345 SING 0.9496636 Lagunas Norte 23
Linea crucero
Encuentro 0.9005405
Calama Santa Margarita 23 SING 0.9486859 Parinacota 13.8
Linea crucero
Encuentro 0.9183257
Tocopilla 5 E SING 0.9443493 SS/AA CTM1 4.16
Linea crucero
Encuentro 0.9389611
Pozo Almonte Cerro Colorado
12 SING 0.9422563 Andes 345
Linea crucero
Encuentro 0.943405
SS/AA CTM1 4.16 SING 0.9374819 Andes Reactor Shunt 345
Linea crucero
Encuentro 0.943405
Lagunas Norte 23 SING 0.9222045 Terminal(1) rw AG Salta-Andes 0.9434178
Parinacota 13.8 SING 0.9188048 Tocopilla 5 E
Linea crucero
Encuentro 0.944683
Laberinto Oeste 13.2 SING 0.9155864

Calama Santa Margarita 23
Linea crucero
Encuentro 0.9549839
Mantos Blancos 6.3 SING 0.9521913 Pozo Almonte 13.8 AT2
Linea crucero
Encuentro 0.8966071
Pozo Almonte 13.8 AT2 SING 0.9531089 Pozo Almonte 13.8 AT5
Linea crucero
Encuentro 0.9126411
Radomiro Tomic 220 SING 0.9549096 Radomiro Tomic 23
Linea crucero
Encuentro 0.9217408
Chacaya CTM1 13.8 SING 0.9553594 Pozo Almonte 24
Linea crucero
Encuentro 0.922722
Capricornio 23 SING 0.9557767 Pozo Almonte Pampino 24
Linea crucero
Encuentro 0.9227982
Tocopilla 13.8 SING 0.9566233 Arica 13.2
Linea crucero
Encuentro 0.8780781
Esmeralda 13.8 SING 0.9613217
Pozo Almonte Cerro Colorado
110
Linea crucero
Encuentro 0.9066734
Chuquicamata GIS 13.8 SING 0.9627828 Arica Chapiquia 3
Linea crucero
Encuentro 0.911808
CD Iquique MSIQ 6.6 SING 0.963075 CD Iquique MSIQ 6.6
Linea crucero
Encuentro 0.9128188
El Abra 220 SING 0.9638432 CD Arica 13.8
Linea crucero
Encuentro 0.9168857
Figura6,DatosdelSistemaExtradosManualmente,CasoBase+LneaCruceroEncuentro

55

El mismo anlisis fue hecho para cada uno de los casos, es decir, se
analiz el voltaje por barras, y adicionalmente se analiz el nivel de carga en las
lneas y se verific la potencia entregada por cada generador.
Luego se procede a realizar las mismas comparaciones, pero ahora
adquiriendo los datos con la ayuda del script hecho para extraer datos del
Digsilent. Los datos fueron llevados a un archivo .txt, que maneja mediante
base de datos en Excel, cuyos resultados se muestran en la Figura 7, donde se
observa que los datos extrados por el script difieren en el 6 decimal, lo que no
afecta prcticamente en nada en trminos de clculo de flujos.
Caso Base Linea Crucero Encuentro
Nombre En la Carpeta
u,
Magnitud Nombre En la carpeta
u,
Magnitud
p.u p.u.
Terminal(1)
rw AG Salta-
Andes 0.949678
Pozo Almonte Cerro Colorado
12
Linea crucero
Encuentro 0.869553
Andes 345 SING 0.949664 Laberinto Oeste 13.2
Linea crucero
Encuentro 0.886408
Andes Reactor Shunt 345 SING 0.949664 Lagunas Norte 23
Linea crucero
Encuentro 0.90054
Calama Santa Margarita 23 SING 0.948686 Parinacota 13.8
Linea crucero
Encuentro 0.918326
Tocopilla 5 E SING 0.944349 SS/AA CTM1 4.16
Linea crucero
Encuentro 0.938961
Pozo Almonte Cerro Colorado
12 SING 0.942256 Andes 345
Linea crucero
Encuentro 0.943405
SS/AA CTM1 4.16 SING 0.937482 Andes Reactor Shunt 345
Linea crucero
Encuentro 0.943405
Lagunas Norte 23 SING 0.922205 Terminal(1) rw AG Salta-Andes 0.943418
Parinacota 13.8 SING 0.918805 Tocopilla 5 E
Linea crucero
Encuentro 0.944683
Laberinto Oeste 13.2 SING 0.915586 Calama Santa Margarita 23
Linea crucero
Encuentro 0.954984
Mantos Blancos 6.3 SING 0.952191 Pozo Almonte 13.8 AT2
Linea crucero
Encuentro 0.896607
Pozo Almonte 13.8 AT2 SING 0.953109 Pozo Almonte 13.8 AT5
Linea crucero
Encuentro 0.912641
Radomiro Tomic 220 SING 0.95491 Radomiro Tomic 23
Linea crucero
Encuentro 0.921741
Chacaya CTM1 13.8 SING 0.955359 Pozo Almonte 24
Linea crucero
Encuentro 0.922722
Capricornio 23 SING 0.955777 Pozo Almonte Pampino 24
Linea crucero
Encuentro 0.922798
Tocopilla 13.8 SING 0.956623 Arica 13.2
Linea crucero
Encuentro 0.878078
Esmeralda 13.8 SING 0.961322
Pozo Almonte Cerro Colorado
110
Linea crucero
Encuentro 0.906673
Chuquicamata GIS 13.8 SING 0.962783 Arica Chapiquia 3
Linea crucero
Encuentro 0.911808
CD Iquique MSIQ 6.6 SING 0.963075 CD Iquique MSIQ 6.6
Linea crucero
Encuentro 0.912819
El Abra 220 SING 0.963843 CD Arica 13.8
Linea crucero
Encuentro 0.916886
Figura7,DatosdelSistemaExtradosconelScript,CasoBase+LneaCruceroEncuentro
56

Se repite este proceso para los 12 casos, para barras, generadores y


lneas.

Ahora se procede a crear el archivo .raw que ser ledo por los
programas PowerWorld y PSS/E. Este archivo es creado para la versin raw 26,
e incluye todos los datos necesarios para hacer estudios de flujos de potencia.

Un extracto de esta etapa se muestra en la siguiente figura:
0 Barras 0 100
Name Station Grid
Nom.L-L
Volt.kV
Ul. Magnitude
kV
Magnitude
p.u
Angle
deg SING
loc_name fold_id e:uknom m:Ul m:u
m:phi
u
nu
m 2007
B1
Alto Norte
13.8 #1 SING 13.8 13.8464 1.00336
-
11.08
26 1 1 1
1 '1 ' 13.8 1 0 0 1 1
1.00336 -11.0826 1
B2
Alto Norte
13.8 #1 SING 13.8 13.8464 1.00336
-
11.08
26 1 2 1
2 '2 ' 13.8 1 0 0 1 1
1.00336 -11.0826 1
B1
Alto Norte
13.8 #2 SING 13.8 13.7587 0.997005
-
10.47
34 1 3 1
3 '3 ' 13.8 1 0 0 1 1
0.997005 -10.4734 1
B2
Alto Norte
13.8 #2 SING 13.8 13.7587 0.997005
-
10.47
34 1 4 1
4 '4 ' 13.8 1 0 0 1 1
0.997005 -10.4734 1
Antofagasta
13.8 A
Antofagast
a 13.8 SING 13.8 13.7251 0.994572
-
9.539
45 1 5 1
5 '5 ' 13.8 1 0 0 1 1
0.994572 -9.53945 1
Antofagasta
13.8 B
Antofagast
a 13.8 SING 13.8 13.7251 0.994572
-
9.539
45 1 6 1
6 '6 ' 13.8 1 0 0 1 1
0.994572 -9.53945 1
B1 Calama 23 SING 23 22.4503 0.976101
-
25.04
54 1 7 1
7 '7 ' 23 1 0 0 1 1
0.976101 -25.0454 1
B2 Calama 23 SING 23 22.4503 0.976101
-
25.04
54 1 8 1
8 '8 ' 23 1 0 0 1 1
0.976101 -25.0454 1
Chacaya 1
Chacaya
220 SING 220 220.66 1.003
27.10
68 1 9 1
9 '9 ' 220 1 0 0 1 1
1.003 27.1068 1
Figura8,Creacindeformatoraw26

En las ltimas dos columnas se muestra el texto que finalmente ir en el
archivo raw. Luego el archivo se abre con PowerWorld, como se ve en la Figura
9, y en donde se muestra que se han ledo cada uno de los datos
satisfactoriamente.
57


Figura9,VistadePowerWorld
En la Figura10 se muestran algunos datos ya ingresados en el programa.
Hay que agregar que adems de los datos que se ingresan desde la base de
datos del Digsilent, hay que agregar la informacin de los switchs e
interruptores, que se modelan como lneas de distancia e impedancia cero, esto
se hace porque pueden existir elementos en servicio, pero que el switch que los
conecta al sistema, esta desconectado.


58

Ahora es cuando se ejecuta el clculo de flujo de potencia, y se exportan


los resultados a Excel para hacer una tabla comparativa.
Figura10,DatosIngresadosalPowerWorld

En la figura 11 se muestra el resultado que entrega Digsilent despus de
hacer un clculo de flujo de potencia, y el que entrega Power World para uno de
los casos estudiados. En la ltima columna se muestra la diferencia que existe
entre ambos resultados, en donde se aprecia que esta diferencia nunca es
mayor al 3%, mostrando as la efectividad del programa. En la figura 12 y 13, se
muestran las comparaciones de generacin y flujos por las lneas.



59

Linea Crucero Encuentro Linea Crucero Encuentro


Nombre En la carpeta u, Magnitud Nombre En la carpeta u, Magnitu %
p.u. p.u.
Pozo Almonte Cerro Colorado Linea crucero Encu0.869553 Pozo Almonte Cerro Colorado 1Linea crucero En 0.869553 0
Laberinto Oeste 13.2 Linea crucero Encu0.886408 Laberinto Oeste 13.2 Linea crucero En 0.886408 0
Lagunas Norte 23 Linea crucero Encu0.900541 Lagunas Norte 23 Linea crucero En 0.891535 0.01
Parinacota 13.8 Linea crucero Encu0.918326 Parinacota 13.8 Linea crucero En 0.899959 0.02
SS/AA CTM1 4.16 Linea crucero Encu0.938961 SS/AA CTM1 4.16 Linea crucero En 0.95774 -0.02
Andes 345 Linea crucero Encu0.943405 Andes 345 Linea crucero En 0.933971 0.01
Andes Reactor Shunt 345 Linea crucero Encu0.943405 Andes Reactor Shunt 345 Linea crucero En 0.952839 -0.01
Terminal(1) rw AG Salta-Andes 0.943418 Terminal(1) rw AG Salta-And 0.952852 -0.01
Tocopilla 5 E Linea crucero Encu0.944683 Tocopilla 5 E Linea crucero En 0.944683 0
Calama Santa Margarita 23 Linea crucero Encu0.954984 Calama Santa Margarita 23 Linea crucero En 0.983633 -0.03
Pozo Almonte 13.8 AT2 Linea crucero Encu0.896607 Pozo Almonte 13.8 AT2 Linea crucero En 0.923505 -0.03
Pozo Almonte 13.8 AT5 Linea crucero Encu0.912641 Pozo Almonte 13.8 AT5 Linea crucero En 0.885262 0.03
Radomiro Tomic 23 Linea crucero Encu0.921741 Radomiro Tomic 23 Linea crucero En 0.921741 0
Pozo Almonte 24 Linea crucero Encu0.922722 Pozo Almonte 24 Linea crucero En 0.904268 0.02
Pozo Almonte Pampino 24 Linea crucero Encu0.922798 Pozo Almonte Pampino 24 Linea crucero En 0.895114 0.03
Arica 13.2 Linea crucero Encu0.878078 Arica 13.2 Linea crucero En 0.886859 -0.01
Pozo Almonte Cerro Colorado Linea crucero Encu0.906673 Pozo Almonte Cerro Colorado 1Linea crucero En 0.897607 0.01
Arica Chapiquia 3 Linea crucero Encu0.911808 Arica Chapiquia 3 Linea crucero En 0.920926 -0.01
CD Iquique MSIQ 6.6 Linea crucero Encu0.912819 CD Iquique MSIQ 6.6 Linea crucero En 0.903691 0.01
CD Arica 13.8 Linea crucero Encu0.916886 CD Arica 13.8 Linea crucero En 0.898548 0.02
La Cascada 66 Linea crucero Encu0.919984 La Cascada 66 Linea crucero En 0.910784 0.01
CD Arica 66 Linea crucero Encu0.928724 CD Arica 66 Linea crucero En 0.91015 0.02
ED Tap-off Quiani ED CD Arica-Arica 0.928769 ED Tap-off Quiani ED CD Arica-Aric 0.938057 -0.01
Arica 66 Linea crucero Encu0.928799 Arica 66 Linea crucero En 0.919511 0.01
Terminal(1) rw ED Chapiquia- 0.929439 Terminal(1) rw ED Chapiqui 0.938733 -0.01
Arica Cerro Chuo 13.8 Linea crucero Encu0.929503 Arica Cerro Chuo 13.8 Linea crucero En 0.948093 -0.02
Iquique Cavancha 4.16 Linea crucero Encu0.930458 Iquique Cavancha 4.16 Linea crucero En 0.958371 -0.03
B1 Escondida Laguna 0.930679 B1 Escondida Lagun 0.912065 0.02
B2 Escondida Laguna 0.930679 B2 Escondida Lagun 0.902759 0.03
B2.0 Escondida Laguna 0.930679 B2.0 Escondida Lagun 0.949292 -0.02
Arica El Aguila Quiborax Linea crucero Encu0.938645 Arica El Aguila Quiborax Linea crucero En 0.910486 0.03
Laberinto Minsal 110 Linea crucero Encu0.939412 Laberinto Minsal 110 Linea crucero En 0.911229 0.03
Laberinto Minsal 23 Linea crucero Encu0.939588 Laberinto Minsal 23 Linea crucero En 0.920796 0.02
Terminal rw ED Chapiquia- 0.942091 Terminal rw ED Chapiqui 0.942091 0
B1 Escondida B2 69 0.947401 B1 Escondida B2 69 0.947401 0
B2 Escondida B2 69 0.947401 B2 Escondida B2 69 0.947401 0
Escondida El Peon 6.6 Linea crucero Encu0.947717 Escondida El Peon 6.6 Linea crucero En 0.966671 -0.02
Pozo Almonte Tamarugal 66 Linea crucero Encu0.948033 Pozo Almonte Tamarugal 66 Linea crucero En 0.919592 0.03

Figura11,ComparacindeBarrasentrePowerworldyDigsilent
Linea Encuentro Crucero Linea Encuentro Crucero
Nombre Potencia Activa Nombre Potencia Activa
MW MW
rw EA U16 265.8 rw EA U16 265.8 0
rw AG Salta TG11 177 rw AG Salta TG11 177 0
xrw ED CTM1 150 xrw ED CTM1 150 0
rw NG NTO2 126.5 rw NG NTO2 126.5 0
rw NG NTO1 125.3451 rw NG NTO1 124.091649 0.01010101
rw GA TV2C 124.2 rw GA TV2C 124.2 0
xrw EA U14 115.8 xrw EA U14 115.8 0
rw GA TG2B 102.3 rw GA TG2B 102.3 0
rw GA TG2A 101.6 rw GA TG2A 101.6 0
rw AG Salta TV10 97 rw AG Salta TV10 97 0
rw ED CTM3-TG 97 rw ED CTM3-TG 97 0
xrw EA U15 84.6 xrw EA U15 84.6 0
rw ED CTM3-TV 63.7 rw ED CTM3-TV 63.7 0
Quebrada Blanca UGs 34 Quebrada Blanca UGs 34 0
Chuquicamata UGs 1-3 24 Chuquicamata UGs 1-3 24 0
CHAP1-2 8.4 CHAP1-2 8.4 0
CAVA 0.5 CAVA 0.5 0
Figura12,ComparacindeGeneracinenrePowerWorldydigsilent
60

Linea Encuentro Crucero Linea Encuentro Crucero


Nombre Nivel de Carga Nombre Nivel de Carga
% %
xrw GA Zaldvar-Escond 128.0879 xrw GA Zaldvar-Escondida B 125.526142 0.020408163
zrw ED Pozo Almonte-Pa 121.1255 zrw ED Pozo Almonte-Pampino 123.54801 0.019607843
zrw ED Pozo Almonte-La 113.5839 zrw ED Pozo Almonte-La Casca 111.312222 0.020408163
xrw GA Domeyko-Lagun 107.6583 xrw GA Domeyko-Laguna Seca 109.811466 0.019607843
rw GA Encuentro-Collah 105.5036 rw GA Encuentro-Collahuasi 106.558636 0.00990099

Figura13,ComparacindeLneasentrePowerWorldyDigsilent
En el caso de los generadores, la mquina reguladora es NT01, en la
que se ve que la diferencia es del 1%, error aceptable para el anlisis de
sistema.

Estas pruebas se hacen tambin con PSS/E, obteniendo resultados de
diferencias menores de 3%, al igual que Power World. Se debe mencionar que
el traspaso de informacin entre Power World y PSS/E es directo, ya que estos
programas s son completamente compatibles.

En cada una de las pruebas hechas, la diferencia entre los programas
Power World PSS/E y Digsilent nunca supera el 3%, dejando claro que el
programa no es exacto, pero que s trabaja con un bajo ndice de error, creando
clculos y estudios confiables.

61

CAPTULO 6.
CONCLUSIONES
El constante desarrollo y crecimiento del sector elctrico Chileno e
Internacional, inducido por el crecimiento constante de la poblacin, impulsa la
necesidad de contar con herramientas de anlisis para la toma de decisiones
tcnicas-econmicas por parte de los agentes participantes en un mercado
elctrico competitivo. Dichos agentes, tendrn que considerar la mayor cantidad
de escenarios posibles para poder tomar la mejor decisin, es por esto que las
herramientas de anlisis deben ser esencialmente, rpidas y eficaces.
Hoy en da, el uso del programa computacional Power Factory Digsilent
en el mercado Chileno, ha logrado que las distintas empresas, manejen ms
adecuadamente sus bases de datos, invirtiendo principalmente tiempo. En el
presente trabajo se muestra la manera de ayudar a hacer esto mucho ms
rpido, logrando utilizar Digsilent no slo ms eficazmente, si no que
complementando su uso compatibilizndolo con otros softwares utilizados
anteriormente por las empresas Edelnor y ElectroAndina (Power World o
PSS/E) para hacer anlisis rpidos y eficaces.
El uso de una base de datos en Excel, es la mejor tcnica para realizar
este trabajo, ya que la informacin necesaria de cada uno de los elementos
elctricos, que es esencial para hacer estudios en los sistemas elctricos de
potencia, se maneja eficazmente. Estos datos no cambian, independiente del
software utilizado, manteniendo intacta la esencia del sistema elctrico.
62

Para probar la efectividad de esta base de datos se comprueban los


resultados obtenidos realizando pruebas sin hacer uso de la base de datos,
para luego hacer los mismos estudios, pero ahora haciendo uso de la
herramienta descrita, los resultados obtenidos son bsicamente idnticos, y el
tiempo involucrado fue considerablemente menor en el caso de uso del script,
adems al hacer uso de Microsoft Excel, los resultados se hacen ms claros y
fciles de chequear.
Con esto se concluye que la implementacin de la herramienta
computacional descrita y explicada a lo largo de este trabajo, es un aporte para
el anlisis de sistemas elctricos de potencia, ya que no solo otorga un
instrumento tcnico - econmico, si no que tambin acorta los tiempos de
anlisis, y entrega respuestas claras y precisas.
An as, la constante aparicin de nuevas versiones de programa, hace
que este tipo de aplicacin necesite evolucionar al mismo ritmo, ya que siempre
existirn cambios necesarios para que la base de datos funcione
correctamente. Adems, hay que resaltar que en este trabajo se tomaron en
cuenta solamente 3 programas, y en el mercado hay una gran cantidad de
estos, por lo que el nmero de combinaciones es enorme, solamente hay que
tener en cuenta la forma en que los distintos softwares manipulan los datos.
Queda de manifiesto que para el desarrollo de aplicaciones futuras, el campo es
inmenso.
63

Bibliografa
1.Montalvn.,R.Fuentes.HERRAMIENTASDEVISUALIZACINDEESTUDIOSDEFLUJOSDE
POTENCIAPARAELAPOYOALATOMADEDECISIONESENSISTEMASELCTRICOS.Universidad
deChile.Santiago:s.n.,2005.TrabajodeTtulo.
2.FastDecoupledPowerFlow.B.Slott,O.Alsac.Juniode1974,IEEETrans.PowerApparatus
andSystem.
3.Corporation,PowerWorld.[Enlnea]
http://www.powerworld.com/features/featurefaq.asp.
4.TheMathWorks,Inc.[Enlnea]http://www.mathworks.com/products/simpower/.
5.SIEMENS.[Enlnea]http://pssadept.com/pti/PTIspanish/software/psse/indexspanish.cfm.
6.TechnologiesInc,RTDS.[Enlnea]http://www.rtds.com/.
7.Etap,EnterpriseSolutionforElectricalPowerSystem.[Enlnea]http://www.etap.com/.
8.GmbH,DIgSILENT.[Enlnea]http://www.digsilent.com/Software/PowerFactory_Features/.
9.D.T.Risy,andR.H.Staunton.EvaluationofDistributionAnalysisSoftwareforDER
Applications.s.l.:ORNL/TM2001/215,Sep.30,2002.
10.Inc.,ABB.[Enlnea]
http://www.abb.com/Industries/seitp408/05c32a23cb9548e7c1257013003bddb2.aspx.
11.Apowersystemanalysispackageforstudents,usingcomputergraphics.WachalRW,
TarnaweckyMZ,SwiftGW.IEEETransPAS1984;PAS103(2):4458.
12.COPERITEcomputeraidedtoolforpowerengineeringresearch,instruction,trainingand
education.ChowdhuryBH,ClarkDE.IEEETransPowerSyst1992;7(4):156570.
13.J.D.Glover,M.Sarma.PowerSystemAnalysisandDesign.2ndedition.s.l.:PWSPublishing
Company.pg.253.
14.N.N.Bengiamin,andF.H.Holcomb.PCBasedPowerSystemSoftware:Comparing
FunctionsandFeatures.s.l.:IEEETrans.ComputerApplicationsinPower,Jan.1992.pgs.35
40.Vol.no.1.
15.ModelingRequirementstoStudyInteractionsofDGandDistributionSystems.Kojovic,
Ljubomir.2002,IEEEPESSumerMeeting.
64

16.PowerSystemAnalysisSoftwareTools.LokendraBam,WardJewell.2005,IEEE.
17.Prez,J.E.FlujosdePotenciaOptimoconProgramacinSecuencial.UniversidaddeChile.
Santiago:s.n.,2001.TsisdeMagster.
18.International,Electrocon.CAPE,Elsoftwaredeingenieradeproteccin.[Enlnea]
http://www.electrocon.com/cape/pf_sp.htm.
19.Saadat,H.PowerSystemAnalysis.NewYork:McGrawHill,1999.


65

ANEXOS
1. Cdigo Script
El siguiente cdigo es el script que se hizo en este trabajo. Esta en formato DPL
(Digsilent Programming Lenguage).
!-----------------------------------------------------------------------
set Elm,Elm2,Elm3,SBar,Conn,ref,Grids,barras,terminales,prueba;
object pMaq,pStac,pBar,bar1,pGrd,pElm,pElm2,pElm3,pTyp,term,bus,bus1,bus2,bus3,
bus4, bus5,bus6,bus7,bus8,bus9;
string ICONTP,ICONT,TapSide,iZoneBus,IREG,IREGP,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,
s11, s12,s13,s14,s15,s16,s17,s18,s19,s20,s21,s22,s23,s24,s25,s26,s27,s28,s29,s30,
s31,s32,s33,s34,s35,s36,token;
double ZBASE,S_hm,S_hl,S_ml,ISC_hm,ISC_hl,ISC_ml,Req_hm,Req_hl,Req_ml,
Xeq_hm,Xeq_hl,Xeq_ml,Zeq_hm,Zeq_hl,Zeq_ml,RMPCT,rPS,rPT,rST,xPS,xPT,
xST,PG,QG,QT,QB,MBASE,PT,PB,VS,cntrl,ii,aa,bb,cc,dd,ee,ff,MVA,r,r2,r3,x,x2,x3,D1,
D2,D3,D4,D5,D6,D7,D8,D9,D10,D11,D12,D13,D14,D15,D16,D17,D18,D19,D20,
D21,D22,D23,D24,D25,D26,D27,H,unom,unom2,unom3,min_hm,min_hl,min_ml;
int CC,i,j,cont,Tmod,comp,comp2,tok_pos,tok_pos2,numero,k,sPa,c,c2,z,d,comp3,
comp4,comp5;
fopen('C:\Raw.txt','w',0);
Grids =AllRelevant('*.ElmNet');
pGrd =Grids.First();
fprintf(0,'0\tCase Identification Data');
fprintf(0,'IC\tSBASE');
fprintf(0,'0\t100');
!Flujo.Execute();
fprintf(0,'0\tBarras');
fprintf(0,'Name\tStation\tGrid\tNom.L-L Volt.kV\tUl. Magnitude kV\tu. Magnitude p.u\t U.
Angle deg');
fprintf(0,'loc_name\tfold_id\t \te:uknom\tm:Ul\tm:u\tm:phiu');
while (pGrd) {Elm =pGrd.GetContents('*.StaBar',1);
pElm =Elm.First();
while (pElm) { i=pElm.IsRelevant();
if (i=1) {bus1 =pElm.GetParent();
D1 =pElm:m:phiu; !ngulo Efectivo []
D2 =pElm:m:u; !Voltaje Efectivo [p.u.]
D3 =pElm:m:Ul; !Voltaje Efectivo en [kV]
D4 =pElm:uknom; !Voltaje Nominal [kV]
s4 =pElm:loc_name; !Nombre Elemento
s1 =bus1:loc_name; !Nombre Parent
s2 =pGrd:loc_name; !Nombre Grid
fprintf(0,'%s\t%s\t%s\t%.8f\t%g\t%g\t%g',s4,s1,s2,D4,D3,D2,D1);}
pElm =Elm.Next(); }
pGrd =Grids.Next();}
fprintf(0,'0\tTerminales');
fprintf(0,'Name\tParent\tGrid\tNom.L-L Volt.kV\tUl. Magnitude kV\tu. Magnitude p.u\t U.
Angle deg\tOut of Service');
66

fprintf(0,'loc_name\tFold_id\t \te:uknom\tm:Ul\tm:u\tm:phiu\toutserv');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmTerm',1);
Elm.SortToVar(0,'outserv');
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {bus1 =pElm.GetParent();
if (i=0) i=1;
else i=0;
s4 =pElm:loc_name; !Nombre Elemento
s2 =bus1:loc_name; !Nombre Parent
s1 =pGrd:loc_name; !Nombre Grid
i =pElm:outserv; !Estado ON/OFF
if (.not.i) {D1 =pElm:m:phiu; !ngulo []
D2 =pElm:m:u; !Voltaje PSS [p.u.]
D3 =pElm:m:Ul; !Voltaje Efectivo en [kV]
D4 =pElm:uknom; !Voltaje Nominal [kV]
fprintf(0,'%s\t%s\t%s\t%.8f\t%g\t%g\t%g\t%i',s4,s2,s1,D4,D3,D2,D1,i);}
else fprintf(0,'%s\t%s\t%s\t%.8f\t0\t0\t0\t%i',s4,s2,s1,D4,i);}
pElm =Elm.Next(); }
pGrd =Grids.Next();}
fprintf(0,'0\tCargas');
fprintf(0,'Name\tGrid\tType TypLod,TypLodind\tConexion\tTerminal Busbar\tOut of
Service\tAct.Pow. MW\tReact.Pow. Mvar\tApp.Pow. MVA\tI kA\tPow.Fact.');
fprintf(0,'loc_name\t\ttyp_id\tParent\tbus1_bar\toutserv\tplini\tqlini\tslini\tilini\tcoslini');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmLod*',1);
Elm.SortToVar(0,'loc_name');
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {pTyp=pElm:typ_id;
i=pElm:outserv; !Estado ON/OFF
bus1 =pElm.GetNode(0,0);
bus2 =bus1.GetParent();
s4 =pElm:loc_name; !Nombre Elemento
s1 =pGrd:loc_name; !Nombre Grid
s2 =pTyp:loc_name; !Nombre Tipo
s3 =bus1:loc_name; !Nombre Barra
D1=pElm:plini; !P [MW]
D2=pElm:qlini; !Q [MVar]
D3=pElm:slini; !S [MVA]
D4=pElm:ilini; !I [kA]
D5=pElm:coslini; !fp
s5 =sprintf('%s\t%s\t%s\t%s\t%s',s4,s1,s2,bus2:loc_name,s3);
if (i=1){fprintf(0,'%s\t0\t%f\t%f\t%f\t%f\t%f',s5,D1,D2,D3,D4,D5); }
else{fprintf(0,'%s\t1\t%f\t%f\t%f\t%f\t%f',s5,D1,D2,D3,D4,D5); }}
pElm =Elm.Next();}
pGrd =Grids.Next();}
67

fprintf(0,'0\tGeneradores');
fprintf(0,'Nombre\tGrid\tConexion\tTerminal Busbar\tPG [MW]\tQG [Mvar]\tQT
[Mvar]\tQB [Mvar]\tMBASE [MVA]\tXDSS [p.u]\tService\tPT [MW]\tPB [MW]\tVS
[p.u.]\tIREG Parent\tIREG\tSlack\tRMPCT[%%]');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmSym',1);
Elm.SortToVar(0,'outserv');
pElm =Elm.First();
while (pElm) {
j=pElm.IsRelevant();
if (j=1) {i =pElm:outserv;
if (i=1) i=0;
else i=1;
bus1 =pElm.GetNode(0,0);
bus2 =bus1.GetParent(); !Folder Barra i
pTyp=pElm:typ_id;
pStac=pElm:c_pstac; !External Station Controller
s4 =pElm:loc_name; !Nombre Elemento
s1 =pGrd:loc_name; !Nombre Grid
s3 =bus1:loc_name; !Nombre Barra i
s7 =bus2:loc_name; !Nombre Folder Barra
PT=pElm:P_max*pElm:ngnum; !MW max
PB=pElm:P_min; !MW min
MBASE =pTyp:sgn; !MVA Base Generador
if (i=1) {PG=pElm:m:P:bus1; !MW despachados
QG=pElm:m:Q:bus1; !MVar despachados =MVar max =MVar min
if (pStac=NULL) {VS=1; !Voltaje deseado [p.u.]
IREGP=bus2:loc_name; !Nombre Parent Barra a Regular.
IREG=bus1:loc_name; !Nombre Barra a Regular.
RMPCT=100; !Aporte de Reactivos [%] }
else {pBar=pStac:rembar; !IREG
bar1=pBar.GetParent(); !IREG Parent
VS=pStac:usetp; !Voltaje a Regular [p.u.]
IREG=pBar:loc_name; !Nombre Parent Barra a Regular.
IREGP=bar1:loc_name; !Nombre Barra a Regular.
pStac.GetSize('psym',Tmod);
cont =0;
while (cont<=Tmod) {
pStac.GetVal(pMaq,'psym',cont);
s30=pMaq:loc_name;
if (s30=s4) pStac.GetVal(RMPCT,'cvqq',cont); !Aporte de Reactivos [%]
cont=cont+1; }}
s5=sprintf('%s\t%s\t%s\t%s\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f',s4,s1,s7,s3,PG,QG,QG,QG,M
BASE);
s6=sprintf('%.4f\t%i\t%.3f\t%.3f\t%.3f\t%s\t%s',pTyp:xdss,i,PT,PB,VS,IREGP,IREG);
fprintf(0,'%s\t%s\t%i\t%i',s5,s6,pElm:ip_ctrl,RMPCT);}
else {if (pStac=NULL) {VS=1; !Voltaje deseado [p.u.]
IREGP=bus2:loc_name; !Nombre Parent Barra a Regular.
68

IREG=bus1:loc_name; !Nombre Barra a Regular.


RMPCT=100; !Aporte de Reactivos [%]}
else {pBar=pStac:rembar; !IREG
bar1=pBar.GetParent(); !IREG parent
VS=pStac:usetp; !Voltaje a Regular [p.u.]
IREG=pBar:loc_name; !Nombre Parent Barra a Regular.
IREGP=bar1:loc_name; !Nombre Barra a Regular.
pStac.GetSize('psym',Tmod);
cont =0;
while (cont<=Tmod) {
pStac.GetVal(pMaq,'psym',cont);
s30=pMaq:loc_name;
if (s30=s4) pStac.GetVal(RMPCT,'cvqq',cont); !Aporte de Reactivos [%]
cont=cont+1; }}
s1=sprintf('%s\t%s\t%s\t%s\t0\t0\t0\t0\t%.3f',s4,s1,s7,s3,MBASE);
s2=sprintf('%.4f\t%i\t%.3f\t%.3f\t%.3f\t%s\t%s',pTyp:xdss,i,PT,PB,VS,IREGP,IREG);
fprintf(0,'%s\t%s\t%i\t%i',s1,s2,pElm:ip_ctrl,RMPCT); }}
pElm =Elm.Next(); }
pGrd =Grids.Next();!-----------------------------------------------------------------LINEAS
pGrd =Grids.First();
fprintf(0,'0\tLineas');
fprintf(0,'Nombre\tGrid L1\tConexion i\tTerminal i\tGrid L2\tConexion j\tTerminal j\tR
[pu]\tX [pu\tB [pu]\tRateA\tRateB\tRateC\tOut of Service\tLen [KM]');
fprintf(0,'loc_name\t\tParent1\tbus1_bar\t\tParent2\tbus2_bar\tR1/dline/MVA\tX1/dline/M
VA\tbline*10^-6*MVA\tMVA\tMVA\tMVA\toutserv\tdline');
while (pGrd) {Elm =pGrd.GetContents('*.ElmLneroute',1);
pElm =Elm.First();
while (pElm) {pTyp =pElm.GetParent();
prueba.Add(pTyp);
pElm =Elm.Next(); }
pGrd =Grids.Next();}
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmLneroute',1);
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {bus4 =pElm.GetParent();
i =pElm:outserv;
pTyp =pElm:typ_id;
bus =pElm:bus1;
bus1 =pElm.GetNode(0,0);
bus2 =pElm.GetNode(1,0);
unom =bus.Unom();
MVA=sqrt(3)*unom*pElm:Inom; !MVA Rating para la linea.
D1 =sqr(1000*unom)/100000000; !Impedancia Base.
D2 =pTyp:rline*pElm:dline/D1; !R linea en base comn [p.u.].
D3 =pTyp:xline*pElm:dline/D1; !X linea en base comn [p.u.].
s4 =pElm:loc_name; !Nombre del Elemento.
s1 =pGrd:loc_name; !Nombre de la Grid.
69

s2 =bus1:loc_name; !Nombre de la Barra i.


s3 =bus2:loc_name; !Nombre de la Barra j.
D4 =pow(10,-6)*pTyp:bline*D1*pElm:dline; !B en PSS.
bus3 =bus1.GetParent();
bus4 =bus2.GetParent();
bus5 =bus3.GetParent();
bus6 =bus4.GetParent();
s7 =bus3:loc_name; !Nombre Parent Barra i.
s8 =bus4:loc_name; !Nombre Parent Barra j.
if (i=0) {s5=sprintf('%f\t%f\t%f\t%.3f\t%.3f\t%.3f',D2,D3,D4,MVA,MVA,MVA);
s6=sprintf('1\t%.2f',pElm:dline);
s9 =sprintf('%s\t%s\t%s\t%s\t%s\t%s\t%s',s4,bus5:loc_name,s7,s2,bus6:loc_name,s8,
s3);
fprintf(0,'%s\t%s\t%s',s9,s5,s6); }
else{s5=sprintf('%.4f\t%.4f\t%.4f\t%.3f\t%.3f\t%.3f',D2,D3,D4,MVA,MVA,MVA);
s6=sprintf('0\t%.2f',pElm:dline);
fprintf(0,'%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s',s4,s1,s7,s8,s2,s3,s5,s6);}}
pElm =Elm.Next();}
pGrd =Grids.Next();}
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmLne',1);
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {bus4 =pElm.GetParent();
i =pElm:outserv;
c =prueba.IsIn(pElm);
if(.not.c) {bus =pElm:bus1;
bus1 =pElm.GetNode(0,0);
bus2 =pElm.GetNode(1,0);
unom =bus.Unom(); !Voltaje nominal en Barra.
MVA=sqrt(3)*unom*pElm:Inom; !MVA rating para la linea.
D1 =sqr(1000*unom)/100000000; !Impedancia Base [p.u.].
D2 =pElm:R1/D1; !R linea en base comn.
D3 =pElm:X1/D1; !X linea en base comn.
s4 =pElm:loc_name; !Nombre Elemento
s1 =pGrd:loc_name; !Nombre Grid
s2 =bus1:loc_name; !Nombre Barra i
s3 =bus2:loc_name; !Nombre Barra j
bus3 =bus1.GetParent();
bus4 =bus2.GetParent();
bus5 =bus3.GetParent();
bus6 =bus4.GetParent();
s7 =bus3:loc_name; !Nombre Parent Barra i
s8 =bus4:loc_name; !Nombre Parent Barra j
if (pTyp) {D4 =pTyp:bline*pow(10,-6)*D1*pElm:dline; !B en PSS
if (i=0) {s5=sprintf('%.4f\t%.4f\t%.4f\t%.3f\t%.3f\t%.3f',D2,D3,D4,MVA,MVA,MVA);
s6=sprintf('1\t%.2f',pElm:dline);
s9=sprintf('%s\t%s\t%s\t%s\t%s\t%s\t%s',s4,bus5:loc_name,s7,s2,bus6:loc_name,s8,s3);
70

fprintf(0,'%s\t%s\t%s',s9,s5,s6);}
else{s5=sprintf('%.4f\t%.4f\t%.4f\t%.3f\t%.3f\t%.3f',D2,D3,D4,MVA,MVA,MVA);
s6=sprintf('0\t%.2f',pElm:dline);
s9 =sprintf('%s\t%s\t%s\t%s\t%s\t%s\t%s',s4,bus5:loc_name,s7,s2,bus6:loc_name,s8, s3);
fprintf(0,'%s\t%s\t%s',s9,s5,s6); }}
else{s5=sprintf('%.4f\t%.4f\t0\t%.3f\t%.3f\t%.3f',D2,D3,MVA,MVA,MVA);
s6=sprintf('1\t%.2f',pElm:dline);
s9 =sprintf('%s\t%s\t%s\t%s\t%s\t%s\t%s',s4,bus5:loc_name,s7,s2,bus6:loc_name,s8, s3);
fprintf(0,'%s\t%s\t%s',s9,s5,s6); }}}
pElm =Elm.Next();}
pGrd =Grids.Next();}
pGrd =Grids.First();
fprintf(0,'0\tTrafos 2');
fprintf(0,'Nombre\tGrid T1\tConexion i\tTerminal i\tGrid T2\tConexion j\tTerminal j\tR1-2
[pu]\tX1-2 [pu]\tRated Power [MVA]\tRated Power [MVA]\tRated Power [MVA]\tWINDV1
[pu]\tAngle\tOut of Service\tTap Side');
fprintf(0,'loc_name\t\tParent 1\tbus1_bar\t\tParent
2\tbus2_bar\tuktrr/strn\tuktr/strn\tSnom\tSnom\tSnom\tutrn_h/unom\tphitr\toutserv');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmTr2',1);
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {i=pElm:outserv; !Estado del Trafo (ON/OFF)
if (i=1) i=0;
else i=1;
pTyp=pElm:typ_id;
x=pTyp:uktr/pTyp:strn; !X1-2
r=pTyp:uktrr/pTyp:strn; !R1-2
bus1 =pElm.GetNode(0,0); !Barra i
bus2 =pElm.GetNode(1,0); !Barra j
unom =bus1.Unom(); !Voltaje barra lado alta base propia
unom2 =bus2.Unom(); !Voltaje barra lado alta base propia
if (pElm:t:tap_side=0) {s30=sprintf('HV');
if (pTyp:nt2ag<6) D1=pTyp:utrn_h/unom+(pTyp:dutap/100);
else D1=pTyp:utrn_h/unom-(pTyp:dutap/100);}
else{s30=sprintf('LV');
if (pTyp:nt2ag<6) D1=pTyp:utrn_l/unom2+(pTyp:dutap/100);
else D1=pTyp:utrn_l/unom2-(pTyp:dutap/100); }
D2 =pTyp:nt2ag*30; !ngulos segun conexin
s4 =pElm:loc_name; !Nombre Trafo
s1 =pGrd:loc_name; !Nombre Grid
s2 =bus1:loc_name; !Nombre Barra i
s3 =bus2:loc_name; !Nombre Barra j
bus3 =bus1.GetParent();
bus4 =bus2.GetParent();
bus5 =bus3.GetParent();
bus6 =bus4.GetParent();
71

s5=sprintf('%.4f\t%.4f\t%.3f\t%.3f\t%.3f\t%g\t%f',r,x,pElm:Snom,pElm:Snom,pElm:Snom
,D1,D2);
s6=sprintf('%i',i);
s7=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus5:loc_name,bus3:loc_name,s2,bus6:loc_na
me,bus4:loc_name);
fprintf(0,'%s\t%s\t%s\t%s\t%s',s7,s3,s5,s6,s30); }
pElm =Elm.Next();}
pGrd =Grids.Next();}
fprintf(0,'0\tTrafos 3');
fprintf(0,'Nombre\tGrid T1\tConexion i\tTerminal i\tGrid T2\tConexion j\tTerminal j\tR1-2
[pu]\tX1-2 [pu]\tRated Power [MVA]\tRated Power [MVA]\tRated Power [MVA]\tWINDV1
[pu]\tAngle\tOut of Service');
fprintf(0,'loc_name\t\tParent 1\tbus1_bar\t\tParent
2\tbus2_bar\tuktrr/strn\tuktr/strn\tSnom\tSnom\tSnom\tutrn_h/unom\tphitr\toutserv');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmTr3',1);
Elm.SortToVar(0,'loc_name');
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {i =pElm:outserv;
if (i=1) i=0;
else i=1;
pTyp =pElm:typ_id;
min_hm=min(pTyp:strn3_h,pTyp:strn3_m); !Mnimo entre Alta y Media
min_hl=min(pTyp:strn3_h,pTyp:strn3_l); !Mnimo entre Alta y Baja
min_ml=min(pTyp:strn3_l,pTyp:strn3_m); !Mnimo entre Baja y Media
x=pTyp:uktr3_h/min_hm; !X1-2
x2=pTyp:uktr3_m/min_ml; !X2-3
x3=pTyp:uktr3_l/min_hl; !X3-1
r=pTyp:uktrr3_h/min_hm; !R1-2
r2=pTyp:uktrr3_m/min_ml; !R2-3
r3=pTyp:uktrr3_l/min_hl; !R3-1
bus1 =pElm.GetNode(0,0); !Barra Alta
bus2 =pElm.GetNode(1,0); !Barra Media
bus3 =pElm.GetNode(2,0); !Barra Baja
unom =bus1.Unom(); !Voltaje Alta
unom2 =bus2.Unom(); !Voltaje Media
unom3 =bus3.Unom(); !Voltaje Baja
if (pElm:t3ldc=0) {if (pTyp:nt3ag_h<6) D1=pTyp:utrn3_h/unom +(pElm:n3tap_h/100);
else D1=pTyp:utrn3_h/unom -(pElm:n3tap_h/100);
if (pTyp:nt3ag_m<6) D2=pTyp:utrn3_m/unom2+(pElm:n3tap_m/100);
else D2=pTyp:utrn3_m/unom2-(pElm:n3tap_m/100);
if (pTyp:nt3ag_l<6) D3=pTyp:utrn3_h/unom +(pElm:n3tap_h/100);
else D3=pTyp:utrn3_h/unom-(pElm:n3tap_h/100); }
else{if (pElm:t3ldc=1) {if (pTyp:nt3ag_h<6) D1=pTyp:utrn3_m/unom2
+(pElm:n3tap_m/100); !WINDV1/RATIO (PSS)
else D1=pTyp:utrn3_m/unom2 -(pElm:n3tap_m/100);
if (pTyp:nt3ag_m<6) D2=pTyp:utrn3_h/unom+(pElm:n3tap_h/100);
72

else D2=pTyp:utrn3_h/unom-(pElm:n3tap_h/100);
if (pTyp:nt3ag_l<6) D3=pTyp:utrn3_m/unom2 +(pElm:n3tap_m/100);
else D3=pTyp:utrn3_m/unom2 -(pElm:n3tap_m/100); }
else {if (pElm:t3ldc=2) {if (pTyp:nt3ag_h<6) D1=pTyp:utrn3_h/unom
+(pElm:n3tap_h/100);
else D1=pTyp:utrn3_h/unom -(pElm:n3tap_h/100);
if (pTyp:nt3ag_m<6) D2=pTyp:utrn3_l/unom3+(pElm:n3tap_l/100);
else D2=pTyp:utrn3_l/unom3-(pElm:n3tap_l/100);
if (pTyp:nt3ag_l<6) D3=pTyp:utrn3_l/unom3 +(pElm:n3tap_l/100);
else D3=pTyp:utrn3_l/unom3 -(pElm:n3tap_l/100); !WINDV3/RATIO (PSS) }}}
D4 =pTyp:nt3ag_h*30; !ngulo Alta
D5 =pTyp:nt3ag_m*30; !ngulo Media
D6 =pTyp:nt3ag_l*30; !ngulo Baja
s4 =pElm:loc_name; !Nombre Trafo
s1 =pGrd:loc_name; !Nombre Grid
s2 =bus1:loc_name; !Nombre Barra i
s3 =bus2:loc_name; !Nombre Barra j
s7 =bus3:loc_name; !Nombre Barra k
bus4 =bus1.GetParent();
bus5 =bus2.GetParent();
bus6 =bus3.GetParent();
bus7 =bus4.GetParent();
bus8 =bus5.GetParent();
bus9 =bus6.GetParent();
s5=sprintf('%f\t%f\t%.3f\t%.3f\t%.3f\t%g\t%f',r,x,pTyp:strn3_h,pTyp:strn3_h,pTyp:strn3_
h,D1,D4);
s6=sprintf('%i',i);
s8=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus7:loc_name,bus4:loc_name,s2,bus8:loc_na
me,bus5:loc_name);
fprintf(0,'%s\t%s\t%s\t%s',s8,s3,s5,s6);! Trafo i-j
s5=sprintf('%f\t%f\t%.3f\t%.3f\t%.3f\t%g\t%f',r2,x2,pTyp:strn3_m,pTyp:strn3_m,pTyp:str
n3_m,D2,D5);
s6=sprintf('%i',i);
s8=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus8:loc_name,bus5:loc_name,s3,bus9:loc_na
me,bus6:loc_name);
fprintf(0,'%s\t%s\t%s\t%s',s8,s7,s5,s6);! Trafo j-k
s5=sprintf('%f\t%f\t%.3f\t%.3f\t%.3f\t%g\t%f',r3,x3,pTyp:strn3_l,pTyp:strn3_l,pTyp:strn3
_l,D3,D6);
s6=sprintf('%i',i);
s8=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus7:loc_name,bus4:loc_name,s2,bus9:loc_na
me,bus6:loc_name);
fprintf(0,'%s\t%s\t%s\t%s',s8,s7,s5,s6);! Trafo i-k }
pElm =Elm.Next(); }
pGrd =Grids.Next();}
pGrd =Grids.First();
fprintf(0,'0\tTrafos 2 & 3');
fprintf(0,'Nombre\tGrid T1\tConexion i\tTerminal i\tGrid T2\tConexion j\tTerminal
j\tRMA\tRMI\tVMA\tVMI\tSTEP\tTABLE\tCNTRL\tCR\tCX');
73

while (pGrd) {Elm =pGrd.GetContents('*.ElmTr2',1);


pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1){i =pElm:outserv;
if (i=0) {i=1;
pTyp =pElm:typ_id;
if (pElm:t:tap_side=0) {aa=pTyp:utrn_h/unom+(pTyp:dutap/100);
bb=pTyp:utrn_h/unom-(pTyp:dutap/100);
cc =pElm:n:u:bushv;
dd =pElm:n:u:bushm;}
else{aa=pTyp:utrn_l/unom2+(pTyp:dutap/100);
bb=pTyp:utrn_l/unom2-(pTyp:dutap/100);
cc =pElm:n:u:bushv;
dd =pElm:n:u:bushm; }
ee=pTyp:dutap/100; !STEP Tap PSS
cntrl=0; !CNTRL
ff=0; !TABLE
bus1 =pElm.GetNode(0,0);
bus2 =pElm.GetNode(1,0);
s1 =pGrd:loc_name; !Nombre Grid
s2 =bus1:loc_name; !Nombre Barra i
s3 =bus2:loc_name; !Nombre Barra j
s4 =pElm:loc_name; !Nombre Trafo
bus3 =bus1.GetParent();
bus4 =bus2.GetParent();
bus5 =bus3.GetParent();
bus6 =bus4.GetParent();
s6=sprintf('%.4f\t%.4f\t%.4f\t%.4f\t%.5f\t%.4f',aa,bb,cc,dd,ee,ff);
s9=sprintf('%s\t%d\t%d\t%d',s6,cntrl,ff,ff);
s7=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus5:loc_name,bus3:loc_name,s2,bus6:loc_na
me,bus4:loc_name);
fprintf(0,'%s\t%s\t%s',s7,s3,s9); }
else i=0; }
pElm =Elm.Next();}
pGrd =Grids.Next();}
pGrd =Grids.First();
while (pGrd) {cntrl=0;
ff=0;
Elm =pGrd.GetContents('*.ElmTr3',1);
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {i =pElm:outserv;
if (i=0) {i=1;
pTyp =pElm:typ_id;
bus1 =pElm.GetNode(0,0);
bus2 =pElm.GetNode(1,0);
bus3 =pElm.GetNode(2,0);
bus4 =bus1.GetParent();
74

bus5 =bus2.GetParent();
bus6 =bus3.GetParent();
bus7 =bus4.GetParent();
bus8 =bus5.GetParent();
bus9 =bus6.GetParent();
unom =bus1.Unom(); !Voltaje Alta
unom2 =bus2.Unom(); !Voltaje Media
unom3 =bus3.Unom(); !Voltaje Baja
s1 =pGrd:loc_name; !Nombre Grid
s2 =bus1:loc_name; !Nombre Terminal i
s3 =bus2:loc_name; !Nombre Terminal j
s7 =bus3:loc_name; !Nombre Terminal k
s4 =pElm:loc_name; !Nombre Trafo
if (pTyp:nt3ag_h<6) {aa=pTyp:utrn3_h/unom +(pElm:n3tap_h/100);
bb=pTyp:utrn3_h/unom -(pElm:n3tap_h/100);}
else if (pTyp:nt3ag_m<6) {aa=pTyp:utrn3_m/unom2+(pElm:n3tap_m/100);
bb=pTyp:utrn3_m/unom2-(pElm:n3tap_m/100); !WINDV2/RATIO (PSS) }
cc=pElm:n:u:bushv; !VMA PSS
dd=pElm:n:u:bushv; !VMI PSS
ee=pTyp:du3tp_h/100; !STEP Tap PSS
s5=sprintf('%.4f',r);
s6=sprintf('%.4f\t%.4f\t%.4f\t%.4f\t%.5f\t%.4f',aa,bb,cc,dd,ee,ff);
s9=sprintf('%s\t%d\t%d\t%d',s6,cntrl,ff,ff);
s8=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus7:loc_name,bus4:loc_name,s2,bus8:loc_na
me,bus5:loc_name);
fprintf(0,'%s\t%s\t%s',s8,s3,s9);
if (pTyp:nt3ag_h<6) {aa=pTyp:utrn3_h/unom +(pElm:n3tap_h/100);
bb=pTyp:utrn3_h/unom -(pElm:n3tap_h/100); }
else if (pTyp:nt3ag_l<6) {aa=pTyp:utrn3_l/unom3+(pElm:n3tap_l/100);
bb=pTyp:utrn3_l/unom3-(pElm:n3tap_l/100); !WINDV2/RATIO (PSS) }
cc=pElm:n:u:busmv; !VMA PSS
dd=pElm:n:u:busmv; !VMI PSS
ee=pTyp:du3tp_m/100; !STEP Tap PSS
s5=sprintf('%.4f',r2);
s6=sprintf('%.4f\t%.4f\t%.4f\t%.4f\t%.5f\t%.4f',aa,bb,cc,dd,ee,ff);
s9=sprintf('%s\t%d\t%d\t%d',s6,cntrl,ff,ff);
s8=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus8:loc_name,bus5:loc_name,s3,bus9:loc_na
me,bus6:loc_name);
fprintf(0,'%s\t%s\t%s',s8,s7,s9);
if (pTyp:nt3ag_m<6) {aa=pTyp:utrn3_m/unom2 +(pElm:n3tap_m/100);
bb=pTyp:utrn3_m/unom2 -(pElm:n3tap_m/100); }
else if (pTyp:nt3ag_l<6) {aa=pTyp:utrn3_l/unom3+(pElm:n3tap_l/100);
bb=pTyp:utrn3_l/unom3-(pElm:n3tap_l/100); !WINDV2/RATIO (PSS) }
cc=pElm:n:u:buslv; !VMA PSS
dd=pElm:n:u:buslv; !VMI PSS
ee=pTyp:du3tp_l/100; !STEP Tap PSS
s5=sprintf('%.4f',r3);
s6=sprintf('%.4f\t%.4f\t%.4f\t%.4f\t%.5f\t%.4f',aa,bb,cc,dd,ee,ff);
75

s9=sprintf('%s\t%d\t%d\t%d',s6,cntrl,ff,ff);
s8=sprintf('%s\t%s\t%s\t%s\t%s\t%s',s4,bus7:loc_name,bus4:loc_name,s2,bus9:loc_na
me,bus6:loc_name);
fprintf(0,'%s\t%s\t%s',s8,s7,s9);}
else i=0; }
pElm =Elm.Next(); }
pGrd =Grids.Next();}
fprintf(0,'0\tShunts');
fprintf(0,'Name\tGrid\tConexion\tTerminal BusBar\tUpper Voltage Limit [pu]\tLower
Voltage Limit [pu]\tBinit\tNi\tBi');
fprintf(0,'loc_name\t\tParent\tbus1_bar\tusetp_mx\tusetp_mn\tncapa(qcapn-
qrean)\tncapx\Qmax/ncapx');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmShnt',1);
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {bus1 =pElm.GetNode(0,0);
bus2 =bus1.GetParent();
D1=pElm:n:u:bus1; !VSWHI PSS
D2=pElm:n:u:bus1; !VSWLO PSS
D3=pElm:ncapa*(pElm:qrean-pElm:qcapn); !BINIT en PSS/Power World
D4=pElm:ncapx; !N1 en PSS
D5=pElm:Qmax/pElm:ncapx; !B1 en PSS
s4=pElm:loc_name; !Nombre Elemento
s1=pGrd:loc_name; !Nombre Grid
s2=bus1:loc_name; !Nombre Barra i
s3=bus2:loc_name; !Nombre Barra j
s5=sprintf('%g\t%g\t%g\t%i',D1,D2,D3,D4);
if (pElm:qcapn >0) {s6=sprintf('%g',D5);
fprintf(0,'%s\t%s\t%s\t%s\t%s\t%s',s4,s1,s3,s2,s5,s6); }
else {s7=sprintf('-%g',D5);
fprintf(0,'%s\t%s\t%s\t%s\t%s\t%s',s4,s1,s3,s2,s5,s7); }}
pElm =Elm.Next();}
pGrd =Grids.Next(); }
pGrd =Grids.First();
fprintf(0,'0\tSwitchs Abiertos');
fprintf(0,'Nombre\tGrid\tParent\tElemento conectado1\tGrid2\tParent2\tElemento
Conectado2\tTipo de elemento\tEstado');
fprintf(0,'loc_name\t\tFold_id1\tbus1\t\tFold_id2\tbus2\tGetClass\ton_off');
while (pGrd) {Elm =pGrd.GetContents('*.ElmCoup',1);
Elm.SortToVar(0,'on_off','loc_name');
pElm =Elm.First();
while (pElm) {c=pElm.IsRelevant();
if (c=1) {bus1 =pElm.GetNode(0,0);
bus2 =pElm.GetNode(1,0);
bus3 =bus1.GetParent();
bus4 =bus3.GetParent();
bus5 =bus2.GetParent();
76

bus6 =bus5.GetParent();
s1 =pElm:loc_name;
s2 =bus1:loc_name;
s3 =bus2:loc_name;
s4 =bus3:loc_name;
s5 =bus4:loc_name;
s6 =bus5:loc_name;
s7 =bus6:loc_name;
s8 =pGrd:loc_name;
i =pElm:on_off;
fprintf(0,'%s\t%s\t%s\t%s\t%s\t%s\t%s\t0\t%i',s1,s5,s4,s2,s7,s6,s3,i);}
pElm =Elm.Next(); }
pGrd =Grids.Next(); }
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.StaSwitch',1);
Elm.SortToVar(0,'on_off','loc_name');
pElm =Elm.First();
while (pElm) {c=pElm.IsRelevant();
if (c=1) {Elm2 =pElm.GetConnectedElms(1,1,1);
d =Elm2.Count();
bus1 =pElm.GetParent();
bus2 =bus1.GetParent();
bus5 =Elm2.First();
cont =0;
while(bus5) {s1 =pElm:loc_name;
s2 =bus2:loc_name;
s4 =bus5.GetClass();
s8 =pGrd:loc_name;
s9 =bus5:loc_name;
bus9 =bus5.GetParent();
bus8 =bus9.GetParent();
s10 ='';
i =pElm:on_off;
j =pElm:iUse;
if (d=2) {if (cont =0) {if (j =6) {bus4 =bus2.GetParent();
s3 =bus4:loc_name;
s5 =sprintf('%s\t%s\t%s\t%s',s1,s8,bus9:loc_name,s9);
cont =1; }
else{bus4 =bus2.GetParent();
s3 =bus4:loc_name;
s5 =sprintf('%s\t%s\t%s\t%s',s1,s8,bus9:loc_name,s9);
cont =1;}}
else {if (j =6) {s1 =bus9:loc_name;
s6 =sprintf('%s\t%s\t%s\t%i',s1,s9,s4,i);
cont =0; }
else{bus3 = bus1:obj_id;
bus4 =bus3.GetParent();
bus9 =bus4.GetParent();
77

s1 =bus3:loc_name;
s2 =bus4:loc_name;
s3 =bus9:loc_name;
if (bus3) s6=sprintf('%s\t%s\t%s\t%i',s2,s1,s4,i);
else s6 =sprintf('%s\t%s\t%s\t%s\t%i',s8,s10,s10,i);
cont =0;}
fprintf(0,'%s\t%s\t%s',s5,bus8:loc_name,s6);}}
else fprintf(0,'%s\t%s\t%s\t%s\t0\t0\t0\t0\t0',s1,s8,bus9:loc_name,s9);
bus5 =Elm2.Next();}}
pElm =Elm.Next();}
pGrd =Grids.Next();}
fclose(0);
fopen('C:\seq.txt','w',1);
pGrd =Grids.First();
fprintf(1,'0\tPositive Sequence Generator Impedance Data');
fprintf(1,'Terminal Bus Bar\tName\tZRPOS [pu]\tZXPOS [pu]');
fprintf(1,'bus1_bar\tloc_name\trstr\txdss');
Elm=pGrd.GetContents('*.ElmSym',1);
pElm=Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {s4 =pElm:loc_name; !Nombre Elemento
pTyp =pElm:typ_id;
bus1 =pElm.GetNode(0,0);
if (pTyp) {s1 =bus1:loc_name; !Nombre Barra i
fprintf(1,'%s\t%s\t%.5f\t%.5f',s1,s4,pTyp:rstr,pTyp:xdss); }
else {fprintf(1,'%s',s4);
s1 =bus1:loc_name; !Nombre Barra i
fprintf(1,'%s\t%s\t###\t###',s1,s4); }}
pElm =Elm.Next();}
fprintf(1,'0\tNegative Sequence Generator Impedance Data');
fprintf(1,'Terminal Bus Bar\tName\tZRNEG [pu]\tZXNEG [pu]');
fprintf(1,'bus1_bar\tloc_name\tr2sy\tx2sy');
pGrd =Grids.First();
Elm =pGrd.GetContents('*.ElmSym',1);
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {pTyp =pElm:typ_id;
bus1 =pElm.GetNode(0,0);
s4 =pElm:loc_name; !Nombre Elemento
s1 =bus1:loc_name; !Nombre Barra i
if (pTyp) fprintf(1,'%s\t%s\t%.5f\t%.5f',s1,s4,pTyp:r2sy,pTyp:x2sy);
else fprintf(1,'%s\t\t###\t###%s',s1,s4); }
pElm =Elm.Next();}
fprintf(1,'0\tZero Sequence Generator Impedance Data');
fprintf(1,'Terminal Bus Bar\tName\tRZERO [pu]\tXZERO[pu]');
fprintf(1,'bus1_bar\tloc_name\tr0sy\tx0sy');
pGrd =Grids.First();
Elm = pGrd.GetContents('*.ElmSym',1);
78

pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {pTyp =pElm:typ_id;
bus1 =pElm.GetNode(0,0);
s4 =pElm:loc_name;
s1 =bus1:loc_name;
if (pTyp) fprintf(1,'%s\t%s\t%.5f\t%.5f',s1,s4,pTyp:r0sy,pTyp:x0sy);
else fprintf(1,'%s\t%s\t###\t###',s1,s4); }
pElm =Elm.Next();}
fprintf(1,'0\tNegative Sequence Shunt Load Data');
fprintf(1,'0\tZero Sequence Shunt Load Data');
fprintf(1,'0\tZero Sequence Branch Data');
fprintf(1,'Name\tTerminal i Bus bar\tTerminal j Bus Bar\tRLINZ\tXLINZ\tBCHZ');
fprintf(1,'loc_name\tbus1_bar\tbus2_bar\t(R0/dline)/(unom^2/MVA)\t(X0/dline)/(unom^2/
MVA)\t(bline0)/(unom^2/MVA)');
pGrd =Grids.First();
Elm =pGrd.GetContents('*.ElmLne');
pElm =Elm.First();
while (pElm) {j=pElm.IsRelevant();
if (j=1) {pTyp =pElm:typ_id;
bus =pElm:bus1;
unom =bus.Unom();
bus1 =pElm.GetNode(0,0);
bus2 =pElm.GetNode(1,0);
s4 =pElm:loc_name;
s1 =bus1:loc_name;
s2 =bus2:loc_name;
if (pTyp) {D1 =sqr(unom*1000)/100000000;
D2 =pElm:R0/D1;
D3 =pElm:X0/D1;
D4 =pTyp:bline0/D1;
fprintf(1,'%s\t%s\t%s\t%.5f\t%.5f\t%.5f',s1,s2,s4,D2,D3,D4); }
else {fprintf(1,'%s\t%s\t%s\t%.5f\t%.5f\t0',s1,s2,s4,D2,D3);}}
pElm =Elm.Next();}
fprintf(1,'0\tZero Sequence Mutual Impedance Data');
fprintf(1,'0\tTransformer 2 Grounding Code Data');
fprintf(1,'Name\tTerminal i Bus bar\tTerminal j Bus Bar\tGrounding Code I\tGrounding
Code J ');
fprintf(1,'loc_name\tbus1_bar\tbus2_bar\ttr2cn:h\ttr2cn_l');
pGrd =Grids.First();
Elm =pGrd.GetContents('*.ElmTr2');
pElm =Elm.First();
while (pElm) {c=pElm.IsRelevant();
if (c=1) {pTyp =pElm:typ_id;
r=pTyp:ur0tr/pTyp:strn; !R seq cero
x=pTyp:uk0tr/pTyp:strn; !x seq cero
s1 =pTyp:tr2cn_h; !tipo de conexion en alta
s2 =pTyp:tr2cn_l; !tipo de conexion en baja
79

bus1 =pElm.GetNode(0,0); !conexion i


bus2 =pElm.GetNode(1,0); !conexion j
s4 =pElm:loc_name; !Nombre Trafo
s5 =bus1:loc_name; !nombre barra i
s6 =bus2:loc_name; !Nombre Barra j
i=strcmp(s1,'Y',2);
j=strcmp(s2,'Y',2);
if(i=0 .or. i=1) {if (j=0 .or. j=1) fprintf(1,'%s\t%s\t%s\t1\t1',s4,s5,s6);
else fprintf(1,'%s\t%s\t%s\t1\t0',s4,s5,s6); }
else{if (j=0 .or. j=1) fprintf(1,'%s\t%s\t%s\t0\t1',s4,s5,s6);
else fprintf(1,'%s\t%s\t%s\t0\t0',s4,s5,s6); }}
pElm =Elm.Next(); }
fprintf(1,'0\tTransformer 3 Grounding Code Data');
fprintf(1,'Name\tTerminal i Bus bar\tTerminal j Bus Bar\tGrounding Code I\tGrounding
Code J ');
fprintf(1,'loc_name\tbus1_bar\tbus2_bar\ttr2cn:h\ttr2cn_l');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmTr3',1);
pElm =Elm.First();
while (pElm) {pTyp =pElm:typ_id;
s1 =pTyp:tr3cn_h;
s5 =pTyp:tr3cn_m;
s6 =pTyp:tr3cn_l;
i=strcmp(s1,'Y',2);
j=strcmp(s5,'Y',2);
k=strcmp(s6,'y',2);
bus1 =pElm.GetNode(0,0); !barra alta tension
bus2 =pElm.GetNode(1,0); !barra media
bus3 =pElm.GetNode(2,0); !barra baja
s4 =pElm:loc_name;
s2 =bus1:loc_name;
s3 =bus2:loc_name;
s7 =bus3:loc_name;
if(i=0 .or. i=1) {if (j=0 .or. j=1) fprintf(1,'%s\t%s\t%s\t1\t1',s2,s3,s4);
else fprintf(1,'%s\t%s\t%s\t1\t0',s2,s3,s4); }
else{if (j=0 .or. j=1) fprintf(1,'%s\t%s\t%s\t0\t1',s2,s3,s4);
else fprintf(1,'%s\t%s\t%s\t0\t0',s2,s3,s4); }
if(j=0 .or. j=1) {if (k=0 .or. k=1) fprintf(1,'%s\t%s\t%s\t1\t1',s3,s7,s4);
else fprintf(1,'%s\t%s\t%s\t1\t0',s3,s7,s4); }
else{if (k=0 .or. k=1) fprintf(1,'%s\t%s\t%s\t0\t1',s3,s7,s4);
else fprintf(1,'%s\t%s\t%s\t0\t0',s3,s7,s4); }
if(i=0 .or. i=1) {if (k=0 .or. k=1) fprintf(1,'%s\t%s\t%s\t1\t1',s2,s7,s4);
else fprintf(1,'%s\t%s\t%s\t1\t0',s2,s7,s4); }
else{if (k=0 .or. k=1) fprintf(1,'%s\t%s\t%s\t0\t1',s2,s7,s4);
else fprintf(1,'%s\t%s\t%s\t0\t0',s2,s7,s4); }
pElm =Elm.Next();}
pGrd =Grids.Next();}
fprintf(1,'0\tZero Sequence Switched Shunt Data');
80

fclose(1);
fopen('C:\DYR.txt','w',2);
fprintf(2,'0\tModelo Generadores');
fprintf(2,'Nombre\tTerminal Bus Bar\tH [s]\tDamp [pu]\trstr [pu]\txl [pu]\txrl [pu]\tRotor
Type\txd [pu]\txq [pu]\tTd0 [s]\tTq0 [s]\txd [pu]\txq [pu]\tTd0 [s]\tTq0 [s]\txd
[pu]\txq [pu]\tMain Flux Saturation\t1.0 [pu]\t1.2 [pu]');
fprintf(2,'loc_name\tbus1_bar\th\tdpu\trstr\txl\txrl\titurbo\txd\txq\ttds0\ttqs0\txds\txqs\ttds
s0\ttqss0\txdss\txqss\tisat\tsg10\tsg12');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmSym',1);
Elm.SortToVar(1,'c_pmod');
pElm =Elm.First();
while (pElm) {c=pElm.IsRelevant();
if (c=1) { pTyp =pElm:typ_id;
bus1 =pElm.GetNode(0,0);
s4 =pElm:loc_name;
s3 =bus1:loc_name;
D1 =pTyp:h; !constante de tiempo de inercia
D2 =pTyp:dpu; !liberacion de carga mecanica
D3 =pTyp:rstr; !resistencia estator
D4 =pTyp:xl; !reactancia de fuga estator
D5 =pTyp:xrl; !reactancia de fuga rotor
D6 =pTyp:xd; !reactancia sincronica en eje directo
D7 =pTyp:xq; !reactancia sincronica en eje quadratura
D8 =pTyp:tds0; !constante de tiempo transiente eje directo
D9 =pTyp:tqs0; !constante de tiempo transiente eje cuadratura
D10 =pTyp:xds; !reactancia transiente eje directo
D11 =pTyp:xqs; !reactancia transiente eje cuadratura
D12 =pTyp:tdss0; !constante de tiempo subtransiente eje directo
D13 =pTyp:tqss0; !constante de tiempo subtransiente eje cuadratura
D14 =pTyp:xdss; !reactancia subtransiente eje directo
D15 =pTyp:xqss; !reactancia subtransiente eje cuadratura
D16 =pTyp:sg10; !parametro de stauracion 1.0
D17 =pTyp:sg12; !parametro de stauracion 1.2
i =pTyp:iturbo; !tipo de rotor (polos salientes o
j =pTyp:isat; !saturacion flujo principal
s5=sprintf('%s\t%s\t%g\t%g\t%g\t%g\t%g\t%i\t%g',s4,s3,D1,D2,D3,D4,D5,i,D6);
s6=sprintf('%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g',D7,D8,D9,D10,D11,D12,D13,D14,D
15);
fprintf(2,'%s\t%s\t%i\t%g\t%g',s5,s6,j,D16,D17); }
pElm =Elm.Next();}
pGrd =Grids.Next(); }
pGrd =Grids.First();
fprintf(2,'0\tModelo VCO Generadores');
pGrd =Grids.First();
while (pGrd) {Elm =pGrd.GetContents('*.ElmSym',1);
Elm.SortToVar(1,'c_pmod');
pElm =Elm.First();
81

while (pElm) {pElm2 =pElm:c_pmod; !Modelo de Planta


if (pElm2) {pElm2.GetSize('pblk',Tmod);
cont =0;
while (cont<Tmod) {pElm2.GetVal(pElm3,'pblk',cont);
s1 =pElm3:loc_name;
comp =strcmp(s1,'vco',3);
comp2 =strcmp(s1,'AVR',3);
token =',';
if (comp =0 .or. comp2 =0) {pElm2.GetVal(term,'pelm',cont);
if (term) {pTyp =term:typ_id;
s2 =term:loc_name;
if (pTyp) {term.GetSize('params',sPa);
r =0;
sPa+=1;
while (r<sPa) {c =0;
s3 =pTyp:sParams;
s30 =pTyp:sUpLimPar;
s31 =pTyp:sLowLimPar;
s32 ='';
s33 ='';
while (c<=sPa) {term.GetVal(D1,'params',c);
s4 =strtok(s3,token,tok_pos,c+1);
i =strcmp(s4,'');
if (i=1) {s33 =sprintf('%s\t%g',s33,D1);
if (c=0) s32 =sprintf('%s',s4);
else s32 =sprintf('%s\t%s',s32,s4); }
else break;
c+=1; }
c2 =c;
c=0;
z =strcmp(s30,'');
d =strcmp(s31,'');
if (d) {while (c<sPa) {term.GetVal(D1,'params',c2);
s5 =strtok(s31,token,tok_pos,c+1);
i =strcmp(s5,'');
if (i=1) {s33 =sprintf('%s\t%g',s33,D1);
s32 =sprintf('%s\t%s',s32,s5); }
else break;
c2+=1;
c+=1; }}
c=0;
if (z) {while (c<sPa) {term.GetVal(D1,'params',c2);
s6 =strtok(s30,token,tok_pos,c+1);
i =strcmp(s6,'');
if (i=1) {s33 =sprintf('%s\t%g',s33,D1);
s32 =sprintf('%s\t%s',s32,s6); }
else break;
c2+=1;
82

c+=1; }}
fprintf(2,'%s\t%s',term:loc_name,s32);
fprintf(2,'%s\%s',pElm:loc_name,s33);
break;
r+=1; }}
else{fprintf(2,'VCO_%s\ttvm\tvspp\ttspi\tur_mx\tur_mn\tterr\tvss\ttst\tefdmx\tefdmn\tkur\t
kui\tkir\tkii\tib_sl',pElm:loc_name);
s7 =sprintf('%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g',pElm:loc_name,term:tvm,
term:vspp,term:tspi,term:ur_mx,term:ur_mn,term:terr,term:vss,term:tst);
fprintf(2,'%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g',s7,term:efdmx,term:efdmn,term:kur,term:k
ui,term:kir,term:kii,term:ib_sl); }}
else {fprintf(2,'%s',pElm:loc_name);
fprintf(2,'Sin VCO'); }}
cont +=1; } }
else{fprintf(2,'Sin Modelo');
fprintf(2,'%s',pElm:loc_name); }
pElm =Elm.Next();}
pGrd =Grids.Next(); }
pGrd =Grids.First();
fprintf(2,'0\tModelo Regulador de Turbina');
while (pGrd) {Elm =pGrd.GetContents('*.ElmSym',1);
Elm.SortToVar(1,'c_pmod');
pElm =Elm.First();
while (pElm) {pElm2 =pElm:c_pmod;
if (pElm2) {pElm2.GetSize('pblk',Tmod);
cont =0;
while (cont<Tmod) {
pElm2.GetVal(pElm3,'pblk',cont);
s1 =pElm3:loc_name;
comp =strcmp(s1,'pcu',3);
comp2 =strcmp(s1,'pmu',3);
comp3 =strcmp(s1,'pco',3);
comp4 =strcmp(s1,'GT',2);
comp5 =strcmp(s1,'ST',2);
token =',';
if (comp=0 .or. comp2=0 .or. comp3=0 .or. comp4=0 .or. comp5=0) {
pElm2.GetVal(term,'pelm',cont);
if (term) {pTyp =term:typ_id;
s2 =term:loc_name;
if (pTyp) {term.GetSize('params',sPa);
r =0;
while (r<sPa) {c =0;
s3 =pTyp:sParams;
s30 =pTyp:sUpLimPar;
s31 =pTyp:sLowLimPar;
s32 ='';
s33 ='';
while (c<=sPa) {term.GetVal(D1,'params',c);
83

s4 =strtok(s3,token,tok_pos,c);
i =strcmp(s4,'');
if (i) {j =strcmp(s32,'');
s33 =sprintf('%s\t%g',s33,D1);
if (.not.j) s32 =sprintf('%s',s4);
else s32 =sprintf('%s\t%s',s32,s4);}
c+=1; }
c=0;
z =strcmp(s30,'');
d =strcmp(s31,'');
if (d) {while (c<sPa) {s5 =strtok(s31,token,tok_pos,c);
i =strcmp(s5,'');
if (i) {s33 =sprintf('%s\t%g',s33,D1);
s32 =sprintf('%s\t%s',s32,s5); }
c+=1; }}
c=0;
if (z) {while (c<sPa) {s6 =strtok(s30,token,tok_pos,c);
i =strcmp(s6,'');
if (i) {s33 =sprintf('%s\t%g',s33,D1);
s32 =sprintf('%s\t%s',s32,s6); }
c+=1; }}
fprintf(2,'%s\t%s',term:loc_name,s32);
fprintf(2,'%s\%s',pElm:loc_name,s33);
break;
r+=1; }}
else{if (comp3 =0) {d =term.VarExists('w_');
if (d) {fprintf(2,'PCO_%s\tw_ [pu]\tx_ [s]\ty_ [s]\tz_
[pu]\tetd\ttrate\ttdel\tpc_mx [pu]\tpc_mn [pu]\tecr\tk3 [pu]\ta_ [pu]\tb_ [s]\tc_ [pu]\ttauf
[s]\tkf [pu]\tk5 [pu]\tk4 [pu]\tt3 [pu]\tt4 [pu]\ttaut [s]\tt5[pu]\taf1 [pu]\tbf1 [pu]\tthetr [s]\tk6
[pu]',pElm:loc_name);
s7 =printf('%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g',pElm:loc_name,term:w_,term:x_,
term:y_,term:z_,term:etd,term:trate,term:tdel,term:pc_mx);
s8 =sprintf('%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g',s7,term:pc_mn,term:ecr,term:k3,
term:a_,term:b_,term:c_,term:tauf,term:kf);
s9 =sprintf('%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g',s8,term:k5,term:k4,term:t3,term:t4,
term:taut,term:t5,term:af1,term:bf1);
fprintf(2,'%s\t%g\t%g',s9,term:thetr,term:k6); }
else{d =term.VarExists('tp');
if (d) {fprintf(2,'PCO_%s\tdband [pu]\tbp [%%]\tbt [%%]\ttp [s]\ttd [s]\ttr
[s]\tty [s]\tty0 [s]\ttyc [s]\tyt_mx [pu]\tyt_mn [pu]',pElm:loc_name);
s7 =sprintf('%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g',pElm:loc_name,term:dband,
term:bp,term:bt,term:tp,term:td,term:tr,term:ty,term:tyo);
fprintf(2,'%s\t%g\t%g\t%g',s7,term:tyc,term:yt_mx,term:yt_mn); }
else{fprintf(2,'PCO_%s\tdband [pu]\tbp [%%]\tbt [%%]\ttf [s]\ttr [s]\tty [s]\tty0 [s]\ttyc
[s]\tyt_mx [pu]\tyt_mn [pu]',pElm:loc_name);
s7 =sprintf('%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g',pElm:loc_name,term:dband,term:bp,
term:bt,term:tf,term:tr,term:ty,term:tyo);
fprintf(2,'%s\t%g\t%g\t%g',s7,term:tyc,term:yt_mx,term:yt_mn); }}}
84

if (comp2 =0) {d =term.VarExists('tcd');


if (d) {fprintf(2,'PMU_%s\ttcd [s]\taf2 [pu]\tbf2 [pu]\tcf2 [pu]',pElm:loc_name);
fprintf(2,'%s\t%g\t%g\t%g\t%g',pElm:loc_name,term:tcd,term:af2,term:bf2,term:cf2); }
else{d =term.VarExists('tw');
if (d) {fprintf(2,'PMU_%s\ttw [s]',pElm:loc_name);
fprintf(2,'%s\t%g',pElm:loc_name,term:tw); }
else{fprintf(2,'PMU_%s\tthd [s]\ttmd [s]\ttnd [s]\talfhd [pu]\talfnd [pu]\ttisp
[s]',pElm:loc_name);
fprintf(2,'%s\t%g\t%g\t%g\t%g\t%g\t%g',pElm:loc_name,term:thd,term:tmd,term:tnd,ter
m:alfhd,term:alfnd,term:tisp); }}}}}
else {fprintf(2,'%s',pElm:loc_name);
fprintf(2,'Sin Regulador de Turbina'); }}
cont +=1; }}
else{fprintf(2,'Sin Modelo');
fprintf(2,'%s',pElm:loc_name); }
pElm =Elm.Next(); }
pGrd =Grids.Next();}
pGrd =Grids.First();
fprintf(2,'0\tModelo Estabilizadores de Potencia');
while (pGrd) {Elm =pGrd.GetContents('*.ElmSym',1);
Elm.SortToVar(1,'c_pmod');
pElm =Elm.First();
while (pElm) {pElm2 =pElm:c_pmod;
if (pElm2) {pElm2.GetSize('pblk',Tmod);
cont =0;
while (cont<Tmod) {pElm2.GetVal(pElm3,'pblk',cont);
s1 =pElm3:loc_name;
comp =strcmp(s1,'pss',3);
comp2 =strcmp(s1,'PSS',3);
token =',';
if (comp =0 .or. comp2 =0) {pElm2.GetVal(term,'pelm',cont);
if (term) {pTyp =term:typ_id;
s2 =term:loc_name;
if (pTyp) {term.GetSize('params',sPa);
r =0;
while (r<sPa) {c =0;
s3 =pTyp:sParams;
s30 =pTyp:sUpLimPar;
s31 =pTyp:sLowLimPar;
s32 ='';
s33 ='';
while (c<=sPa) {term.GetVal(D1,'params',c);
s4 =strtok(s3,token,tok_pos,c);
i =strcmp(s4,'');
if (i) {j =strcmp(s32,'');
s33 =sprintf('%s\t%g',s33,D1);
if (.not.j) s32 =sprintf('%s',s4);
else s32 =sprintf('%s\t%s',s32,s4); }
85

c+=1; }
c=0;
z =strcmp(s30,'');
d =strcmp(s31,'');
if (d) {while (c<sPa) {s5 =strtok(s31,token,tok_pos,c);
i =strcmp(s5,'');
if (i) {s33 =sprintf('%s\t%g',s33,D1);
s32 =sprintf('%s\t%s',s32,s5); }
c+=1; }}
c=0;
if (z) {while (c<sPa) {s6 =strtok(s30,token,tok_pos,c);
i =strcmp(s6,'');
if (i) {s33 =sprintf('%s\t%g',s33,D1);
s32 =sprintf('%s\t%s',s32,s6); }
c+=1; }}
fprintf(2,'%s\t%s',term:loc_name,s32);
fprintf(2,'%s\%s',pElm:loc_name,s33);
break;
r+=1; }}
else{i =term.VarExists('tvm');
if (i) {fprintf(2,'VCO_%s\ttvm\tvspp\ttspi\tur_mx\tur_mn\tterr\tvss\ttst\tefdmx\tefdmn\tkur\t
kui\tkir\tkii',pElm:loc_name);
s7 =sprintf('%s\t%g\t%g\t%g\t%g\t%g\t%g\t%g\t%g',pElm:loc_name,term:tvm,
term:vspp,term:tspi,term:ur_mx,term:ur_mn,term:terr,term:vss,term:tst);
fprintf(2,'%s\t%g\t%g\t%g\t%g\t%g\t%g',s7,term:efdmx,term:efdmn,term:kur,term:kui,ter
m:kir,term:kii); }
else fprintf(2,'Sin Tipo de PSS'); }}
else {fprintf(2,'%s',pElm:loc_name);
fprintf(2,'Sin Estabilizador de Potencia'); }}
cont +=1; } }
else{fprintf(2,'Sin Modelo');
fprintf(2,'%s',pElm:loc_name); }
pElm =Elm.Next();}
pGrd =Grids.Next(); }
fclose(2);
Se termina el script y se empieza el anlisis en excel

2. Datos de Reguladores de Voltaje

Existen distintos grupos de datos para los reguladores de voltaje, dependiendo del
tipo de generador, estos datos son:
Primer grupo de Datos:
o Tr [s]: Tiempo de retardo (Measurement Delay).
o Ae [p.u.]: Factor proporcional de saturacin (Saturation Proportional
Factor).
o Be [p.u.]: Factor exponencial de saturacin (Saturation Exponential
Factor).
86

o Ke [p.u.]: Ganancia de excitacin (Excitor Gain).


o Te [s]: Constante de tiempo de excitacin (Excitor Time Constant).
o Kf [p.u.]: Ganancia de trayectoria de estabilizacin (Stabilisation Path
Gain)
o Tf1 [s]: Constante de tiempo del primer paso de la trayectoria de
estabilizacin (Stabilisation Path First Time Const).
o Tf2 [s]: Constante de tiempo del segundo paso de la trayectoria de
estabilizacin (Stabilisation Path Second Time Const).
o KA [p.u.]: Ganancia del regulador de voltaje (Voltage Controller Gain).
o TA [s]: Constante de tiempo del regulador de voltaje (Voltage Controller
Time Constant).
o Min [p.u.]: Voltaje mnimo de excitacin (Excitation Minimum Voltage).
o Max [p.u.]: Voltaje mximo de excitacin (Excitation Maximum Voltage).
Segundo grupo de datos:
o Tr: Tiempo de retardo (Measurement Delay).
o Ke: Ganancia de excitacin (Excitor Gain).
o Te: Constante de tiempo de excitacin (Excitor Time Constant).
o Ka: Ganancia del regulador de voltaje (Voltage Controller Gain).
o Ta: Constante de tiempo del regulador de voltaje (Voltage Controller
Time Constant).
o Tb
o PSS/E_ScIngFctr
o Vrmin: Voltaje mnimo de excitacin (Excitation Minimum Voltage).
o Vrmax: Voltaje mximo de excitacin (Excitation Maximum Voltage).
Tercer grupo de datos:
o Tr: Tiempo de retardo (Measurement Delay).
o Tc1, Tc2
o Tb1, Tb2
o Kr
o Ts
o Upmn, Upnmx
Cuarto grupo de datos:
o Kd
o Ke: Ganancia de excitacin (Excitor Gain).
o Kc
o Tr: Tiempo de retardo (Measurement Delay).
o Ae: Factor proporcional de saturacin (Saturation Proportional Factor).
o Be: Factor exponencial de saturacin (Saturation Exponential Factor).
o Te: Constante de tiempo de excitacin (Excitor Time Constant).
o Kb
o Ka: Ganancia del regulador de voltaje (Voltage Controller Gain).
o Ta: Constante de tiempo del regulador de voltaje (Voltage Controller
Time Constant).
o Vlr_const
o Tc
o Tb
o Kf: Ganancia de trayectoria de estabilizacin (Stabilisation Path Gain)
87

o Tf
o Kh
o Kl
o Vemin
o Vamin, Vamax
o Vrmin: Voltaje mnimo de excitacin (Excitation Minimum Voltage).
o Vrmax: Voltaje mximo de excitacin (Excitation Maximum Voltage).
Quinto grupo de datos:
o prv6
o trv6
o grv1
o Trv1, Trv2
o prv1
o uex_min, uex_max
o Ke: Ganancia de excitacin (Excitor Gain).
o Te: Constante de tiempo de excitacin (Excitor Time Constant).
o Ae: Factor proporcional de saturacin (Saturation Proportional Factor).
o Be: Factor exponencial de saturacin (Saturation Exponential Factor).
Sexto grupo de datos:
o Tb
o Ta: Constante de tiempo del regulador de voltaje (Voltage Controller
Time Constant).
o K
o Te: Constante de tiempo de excitacin (Excitor Time Constant).
o Switch
o Emin, Emax
Sptimo grupo de datos:
o Tr: Tiempo de retardo (Measurement Delay).
o Ka: Ganancia del regulador de voltaje (Voltage Controller Gain).
o Kq
o Te: Constante de tiempo de excitacin (Excitor Time Constant).
o Ta: Constante de tiempo del regulador de voltaje (Voltage Controller
Time Constant).
o Upmn, Upmx
Octavo grupo de datos:
o Vmks, Vmkd, Vmkt
o Kpe
o Kie
o rl_ki
o ql_ki
o qki
o qkp
o qmin_cnst
o iemax_cnst
o Switch
o Vcn
o Vqlmin, Vqlmax
88

o Vrlmin, Vrlmax
o Vmmin, Vmmax
o Vcp

3. Datos de Reguladores de Turbina

Existen distintos grupos de datos para los reguladores de turbina, dependiendo


del tipo de generador, estos datos son:
Primer grupo de Datos:
o Ktc1, Ktc2
o TmpCSet
o KSatTC
o CnstTC
o Kigv0, Kigv1, Kigv2
o Kcch_f
o Tcch_f
o K_valve1, K_valve2
o Tcch_t
o Ttm
o Tpem
o Speed SP
o Kdroop
o Kpwr_ctrl
o Kspeed_ctrl
o Klsc
o Const_lsc
o dz1, dz2
o Ktp1, Ktp2
o TmpPSet
o CnstTP
o Tsrl
o Td1
o IGVmin, IGVmax
o Ymin_IGV, Ymax_IGV
o Valve_min, Valve_max
o Ymin_valve, Ymax_valve
o dz1_sat_mn, dz1_sat_mx
o SpdRtMin, SpdRtMax
Segundo grupo de datos.
o Khp
o Kip
o Klp
o Tco
o Trh
o Thp
o Est
o T1: Compressor Derivative Time Constant
89

o T2: Compressor Delay Time Constant


o MWb
o MVAb
o Kgov
o Db
o Lap
o Pmin, Pmax
o RCHmin, RCHmax
Tercer grupo de datos:
o Prx
o Pcr
o Drp
o Dbd
o Tvirt1, Tvirt2
o Tisp
o Thp
o Tmd
o Tnd
o alfHp, alfMp
o db
o Tyo
o Tyc
o Ty
o Reserve
o Kp
o Ti: Power Gradient Limiter Time Constant
o Min, Max
o Tr: Rated Exhaust Temperature
o Ytmin, ytmax
o y_min, y_max
Cuarto grupo de datos:
o Tt [s]: Turbine Time Delay
o v0 [p.u]: Turbine Factor
o bf [p.u]: Turbine Controller Droop
o Ti [s]: Power Gradient Limiter Time Constant
o Tv [s]: Measurement Delay
o T1 [s]: Compressor Derivative Time Constant
o T2 [s]: Compressor Delay Time Constant
o K [p.u]: Compressor Factor
o y_min [p.u]: Gradient Limiter Minimum Value
o GT_min [p.u]: Minimum Torque
o y_max [p.u]: Gradient Limiter Maximum Value
o GT_max [p.u]: Maximum Torque
o Dbd [p.u]: SpCntrl Dead Band
o Pres [p.u]: max. Primary Reserve
Quinto grupo de datos:
o W [p.u]: Speed Controller Gain
90

o X [s]: Speed Controller Der.Time Const.


o Z [p.u]: Speed Controller Is/Dr (0/1)
o Y [s]: Speed Controller Time Constant
o K3 [p.u]: Turbine Factor
o Ttr [s]: Transport Delay
o a [p.u]: Fuel System Prop. Characteristic
o b [s]: Fuel System Time Constant
o c [p.u]: Fuel System I/L Factor (0/1)
o Tf [s]: Fuel System Delay
o Kf [p.u]: Fuel System Feed Back Factor
o Ecr [s]: Fuel System Delay
o Tcd [s]: Turbine Time Delay
o af2 [p.u]: Turbine Characteristic, Constant
o bf2 [p.u]: Turbine Characteristic, Torque
o cf2 [p.u]: Turbine Characteristic, Speed
o K6 [p.u]: Compressor Factor
o Trate [MW]: Turbine Rated Power
o Kac [p.u]: Acc. Gain
o Tn [s]: Acc. Controller Diff. Constant
o Etd [s]: Temperature Controller Delay
o Tr [grd.C]: Rated Exhaust Temperature
o af1 [grd.C]: Temperature Factor 1 (Torque)
o bf1 [grd.C]: Temperature Factor 2 (Speed)
o Ta [grd.C]: Ambient Temperature
o K4 [p.u]: Radiation Shield Prop. Factor
o K5 [p.u]: Radiation Shield Integr. Factor
o T3 [s]: Radiation Shield Time Constant
o T4 [s]: Thermocouple Time Constant
o Tt [s]: Temperature Controller Time Constant
o T5 [p.u]: Temperature Controller Gain
o Min [p.u]: VCE Lower Limit
o Max [p.u]: VCE Upper Limit
o PRes [p.u]: Primary Reserve
o Dbd [p.u]: Speed Dead Band
Sexto grupo de datos:
o K: Gain =100/Drp [-]
o T: SpCntrl Time Constant [s]
o Dbd: SpCntrl Dead Band [p.u]
o y_min, y_max
Sptimo grupo de datos:
o Tl
o Tw
o Rb
Octavo grupo de datos:
o Prx
o Pcr
o Drp
91

o Dbd
o Tvirt1, Tvirt2
o Tisp
o Thp
o Tmd
o Tnd
o alfHp, alfMp
o db
o Tyo
o Tyc
o Ty
o Reserve
o Kp
o Ti
o Min, Max
o Tr
o Ytmin, ytmax
o y_min, y_max

4. Datos de Estabilizadores de Potencia.

Existen distintos grupos de datos para los reguladores de turbina, dependiendo


del tipo de generador, estos datos son:
Primer grupo de datos:
o T1, T2, T3, T4, T5
o Kpv
o Tv
o Kpss
o Delta
o Vrmin, Vrmax
Segundo grupo de datos:
o Tl1, Tl2, Tl3, Tl4
o TW1, TW2, TW3, TW4
o Ks1, Ks2, Ks3
o T7, T8, T9
o Ustmin, Ustmax
Tercer grupo de datos:
o Kpelec
o Kfrec
o SF_frec, SF_pelec
o Tpss
o PSSmin, PSSmax
Cuarto grupo de datos:
o T1, T2, T3, T4, T5, T6
o K1, K2, K3
Vrmin, Vrmax
92

93

También podría gustarte