FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA ELÉCTRICA Diseño, implantación y evaluación económica de un sistema de corte y reconexión remota del servicio eléctrico de clientes residenciales, usando Tecnología PLC-BPL, para la Electricidad de Caracas Marta Blanco y Alexandra Sánchez Tutor académico: Hans García Tutor industrial: José Luis del Valle Caracas, Marzo del 2006.
127
Embed
FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA ELÉCTRICA
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
FACULTAD DE INGENIERÍA
ESCUELA DE INGENIERÍA ELÉCTRICA
Diseño, implantación y evaluación económica de un sistema de corte
y reconexión remota del servicio eléctrico de clientes residenciales,
usando Tecnología PLC-BPL, para la Electricidad de Caracas
Marta Blanco y Alexandra Sánchez Tutor académico: Hans García
Tutor industrial: José Luis del Valle
Caracas, Marzo del 2006.
ii
UNIVERSIDAD METROPOLITANA
Facultad de Ingeniería
Escuela de Ingeniería Eléctrica
Diseño, implantación y evaluación económica de un sistema de corte
y reconexión remota del servicio eléctrico de clientes residenciales,
usando Tecnología PLC-BPL, para la Electricidad de Caracas
Trabajo Especial de Grado presentado por:
BLANCO ARIAS, MARTA SÁNCHEZ LUNA, ALEXANDRA
Para la obtención del título de Ingeniero Electricista
Caracas, Marzo de 2006
iii
Derecho de autor Quienes suscriben, en condición de autores del trabajo titulado “Diseño, implantación y evaluación económica de un sistema de corte y reconexión remota del servicio eléctrico de clientes residenciales, usando Tecnología PLC-BPL, para la Electricidad de Caracas.” declaramos que: Cedemos a titulo gratuito, y en forma pura y simple, ilimitada e irrevocable a la Universidad Metropolitana, los derechos de autor de contenido patrimonial que nos corresponden sobre el presente trabajo. Conforme a lo anterior, esta cesión patrimonial sólo comprenderá el derecho para la Universidad de comunicar públicamente la obra, divulgarla, publicarla, o reproducirla en la oportunidad que ella así lo estime conveniente, así como, la de salvaguardar nuestros intereses y derechos que nos corresponden como autores de la obra antes señalada. La Universidad en todo momento deberá indicar que la autoría o creación del trabajo corresponde a nuestra persona, salvo los créditos que se deban hacer al tutor o a cualquier tercero que haya colaborado o fuere hecho posible la realización de la presente obra.
Autor: Marta Blanco A.. Autor: Alexandra Sánchez L. C.I. 16.813.191. C.I.17.125.409
En la ciudad de Caracas, a los 14 días del mes de Febrero del año
2006.
iv
Aprobación Considero que el Trabajo Final titulado
DISEÑO, IMPLANTACIÓN Y EVALUACIÓN ECONÓMICA DE UN SISTEMA DE CORTE Y RECONEXIÓN REMOTA DEL SERVICIO
ELÉCTRICO DE CLIENTES RESIDENCIALES, USANDO TECNOLOGÍA PLC-BPL, PARA LA ELECTRICIDAD DE CARACAS.
elaborado por las ciudadanas
MARTA BLANCO A. Y ALEXANDRA SÁNCHEZ L. para optar al título de
INGENIERO ELECTRICISTA reúnen los requisitos exigidos por la Escuela de Ingeniería Eléctrica de la Universidad Metropolitana y tienen meritos suficientes como para ser sometidos a la presentación y evaluación exhaustiva por parte del jurado examinador que se designe.
En la cuidad de Caracas, a los 14 días del mes de Febrero del año 2006.
_____________________ _____________________ José Luis del Valle Hans García Tutor Industrial Tutor académico
v
Acta de veredicto Nosotros, los abajo firmantes, constituidos como jurado examinador y reunidos en Caracas, el día ____ del mes de Marzo del 2006, con el propósito de evaluar el Trabajo Final titulado
DISEÑO, IMPLANTACIÓN Y EVALUACIÓN ECONÓMICA DE UN SISTEMA DE CORTE Y RECONEXIÓN REMOTA DEL SERVICIO
ELÉCTRICO DE CLIENTES RESIDENCIALES, USANDO TECNOLOGÍA PLC-BPL, PARA LA ELECTRICIDAD DE CARACAS.
A Dios por estar siempre iluminando mi camino de fé y voluntad.
A mis padres, Maria T. Luna de Sánchez y Lesbio Sánchez por
su incondicional apoyo, comprensión y cariño que me dieron a lo largo de
la carrera.
A mi hermano Leonardo Sánchez por enseñarme que no hay
limites, que lo que me proponga lo puedo lograr y que solo depende de
mi.
A mi tutor académico Profesor Hans García por su calidez,
sugerencias y confianza.
A mi tutor industrial Profesor Jose Luis del Valle por el material,
las correcciones y consejos brindados.
A David Rodríguez por su paciencia y por enseñarme a enfrentar
los obstáculos con alegría.
A mis compañeros de la Escuela de Ingeniería Eléctrica por su
continuo y afectuoso aliento.
Y a todas aquellas personas que de una u otra forma, colaboraron
o participaron en la realización de esta investigación
Gracias!
Alexandra
vii
Dedico las siguientes líneas a las personas que me apoyaron en cada
momento para lograr esta meta, es a ustedes a quienes les dedico este
trabajo de grado.
A Dios, por guiarme en cada uno de mis actos, por alejarme de lo malo y
iluminar mis pasos.
A mi madre, Flora, por no dejarme nunca caminar sola, por sus sabios
consejos y por vivir conmigo cada angustia y cada alegría durante la vida
universitaria.
A mi padre, Luis, por su apoyo incondicional.
A mi hermano, Robert, porque a su forma siempre estuvo pendiente de
mí.
Al profesor Hans García, porque mas que un profesor es un guía, por su
ayuda en todo momento, su comprensión, su cariño, su optimismo y
forma de ser tan auténtica.
Al profesor José Luis Del Valle, por su alegria, su emotividad y por sus
comentarios e ideas.
A Ru, Victoriano, Fer, el Negro, Margu, Baldó y Anne, compañeros de
la Escuela de Eléctrica, por su constante interés en el presente trabajo.
Y por último, pero no por eso el menos importante, Juan Anibal Guevara,
a quien le agradezco cada una de sus palabras de aliento, de fortaleza y
de confianza. A ti en especial te dedico este trabajo, porque sin tu ayuda y
tu presencia en mi vida nada de esto sería realidad.
A todos Ustedes… GRACIAS! Marta
viii
Tabla de contenido
Pág.
Lista de Tablas........................................................................................... x Lista de Figuras .........................................................................................xi Resumen ................................................................................................. xiii Introducción ............................................................................................... 1 Capítulo I ................................................................................................... 1
I.1 Planteamiento del problema.............................................................. 4 I.2 Objetivos ........................................................................................... 5
II.1 Generalidades .................................................................................. 8 II.2 El autómata programable o PLC modelo S7 200 de Siemens ...... 13
II.2.1 Descripción del S7-200............................................................ 14 II.2.2 Comunicación vía puerto serial............................................... 18 II.2.3 Descripción del módulo de comunicación Ethernet modelo CP 243-1........................................................................................... 19
II.3 Conexión inicial al CPU-226........................................................... 21 II.4 La interfaz para el operador: el servidor OPC ............................... 32
II.4.1 Servidores OPC...................................................................... 33 II.4.2 El servidor OPC de Kep Server .............................................. 36
II.5 La interfaz para el operador: SQL Server...................................... 47 II.5.1 Creación de la base de datos mediante la herramienta Microsoft SQL .................................................................................................. 48
II.6 La interfaz para el operador: Visual Basic ...................................... 57 II.6.1 Ventanas de interfaz operador-máquina................................. 58
II.8 Módem PLC ................................................................................... 70 II.8.1 Ventajas y Desventajas de la técnica de transmisión por Modem PLC................................................................................................... 72 II.8.2 Broadband PLC Módem serie ATL 60 ..................................... 73
II.9 Evaluación económica.................................................................... 77 II.9.1 Flujo de caja a 3 años.............................................................. 78 II.9.2 Diagrama de flujo de caja para el proyecto propuesto con proyección a 3 años.......................................................................... 80 II.9.3 Cálculo del Valor Presente Neto.............................................. 83
II.10 Limitaciones ................................................................................. 85 Capítulo III ............................................................................................... 86
ix
Resumen de Resultados.......................................................................... 87 Capítulo IV ............................................................................................... 88 Conclusiones y Recomendaciones .......................................................... 89 Referencias bibliográficas........................................................................ 91 APÉNDICE A ........................................................................................... 95 APÉNDICE B ........................................................................................... 97 APÉNDICE C......................................................................................... 101 APÉNDICE D......................................................................................... 113
x
Lista de Tablas
Tabla 1: características técnicas del CPU S7-226 ................................... 15 Tabla 2: características técnicas del módulo CP 243-1 ........................... 20 Tabla 3: modelos de Broadband PLC Módem de la serie ATL60 ............ 74 Tabla 4: equipos necesarios por edificio.................................................. 78 Tabla 5: inversión inicial para 100 edificios.............................................. 78 Tabla 6: ingresos anuales del proyecto ................................................... 79 Tabla 7: valores para calcular el VAN...................................................... 83
xi
Lista de Figuras
Figura 1: esquema del sistema de corte y reconexión automática de una carga........................................................................................................ 11 Figura 2: aspecto físico externo del CPU S7-226 .................................... 17 Figura 3: diagrama de conexión de entradas/salidas discretas del CPU 226........................................................................................................... 17 Figura 4: esquema de conexión del S7-200 al PC utilizando un enlace PPI................................................................................................................. 18 Figura 5: aspecto exterior del módulo de comunicación Ethernet CP 243-1................................................................................................................. 19 Figura 6: creación de un nuevo proyecto con Step 7 Micro WIN ............. 22 Figura 7: elegir comando Asistente Ethernet ........................................... 22 Figura 8: primera ventana del asistente Ethernet Industrial ..................... 23 Figura 9: parámetros de la red Ethernet .................................................. 24 Figura 10: determinación del número de enlaces .................................... 24 Figura 11: configuración de enlaces ........................................................ 25 Figura 12: configuraciones CRC e intervalo Keep Alive .......................... 26 Figura 13: asignación de tabla de bytes para uso del módulo ................. 26 Figura 14: última ventana del asistente Ethernet Industrial ..................... 27 Figura 15: cargar la configuración en el CPU .......................................... 28 Figura 16: escoger parametrización del módulo CP 243-1 ...................... 28 Figura 17: actualización del enlace Ethernet ........................................... 29 Figura 18: subrutina ETHx_CTRL............................................................ 30 Figura 19: programa en el PLC para control de las salidas discretas ...... 31 Figura 20: esquema general de funcionamiento de un servidor OPC...... 33 Figura 21: componentes para establecer la comunicación con Kep Server................................................................................................................. 36 Figura 22: ventana inicial al abrir Kep Server Ex V4.0............................. 37 Figura 23: ventana inicial para definición de un canal ............................. 38 Figura 24: escogencia del driver para comunicación Ethernet ................ 39 Figura 25: escogencia del adaptador de red............................................ 39 Figura 26: control de escritura del servidor en el canal............................ 40 Figura 27: resumen de la configuración del canal.................................... 41 Figura 28: asignación del nombre al dispositivo recién creado................ 41 Figura 29: escogencia del dispositivo con el que se trabajará................. 42 Figura 30: identificación de la dirección IP del dispositivo ....................... 42 Figura 31: establecimiento del valor TSAP para el enlace....................... 43 Figura 32: resumen de la configuración del dispositivo Device1 ............. 44 Figura 33: creación del grupo Group1 ..................................................... 44 Figura 34: ventana de creación del Tag M0.0.......................................... 45 Figura 35: variables o Tags creados en el Group1 .................................. 46 Figura 36: establecimiento del nombre del servidor................................. 49 Figura 37: pantalla principal del Enterprise Manager............................... 50 Figura 38: creación de la base de datos Registro.................................... 51 Figura 39: propiedades de la base de datos Registro.............................. 52
xii
Figura 40: tablas de Registro................................................................... 53 Figura 41: campos de la tabla “Cliente” ................................................... 54 Figura 42: información de la Tabla Cliente .............................................. 54 Figura 43: campos de la tabla “Usuario” .................................................. 55 Figura 44: campos e información de la Tabla Modificacion_Registro ...... 56 Figura 45: ventana inicial de la interfaz operador-máquina ..................... 59 Figura 46: ventana general de información de la aplicación .................... 59 Figura 47: ventana de requerimientos del sistema .................................. 60 Figura 48: ventana correspondiente al botón de ayuda en la aplicación . 60 Figura 49: ventana para manejo del estado de servicio de un cliente ..... 61 Figura 50: ejemplo de configuración de las propiedades de una caja de texto para utilización de DDE................................................................... 63 Figura 51: pantalla de modificación de estado......................................... 64 Figura 52: mensaje de error de conexión ................................................ 64 Figura 53: tramos de la red eléctrica........................................................ 67 Figura 54: modo de conexión de los módem PLC ................................... 70 Figura 55: diagrama de bloques de un sistema DSSM............................ 71 Figura 56: aspecto del modelo ATL60142E............................................. 75 Figura 57: leds de estado del módem PLC.............................................. 75 Figura 58: diagrama de flujo de caja del proyecto a 3 años..................... 82
xiii
Resumen
Diseño, implantación y evaluación económica de un sistema de corte y reconexión remota del servicio eléctrico de clientes residenciales, usando Tecnología PLC-BPL, para la Electricidad de Caracas Autores: Marta Blanco A. y Alexandra Sánchez L. Tutor académico: Hans García. Tutor industrial: Jose Luis Del Valle.
Caracas, 14 de Febrero del 2006 El presente proyecto de grado tiene como propósito presentar un diseño
que permita el control a distancia del corte y reconexión de cargas
residenciales, utilizando controladores lógicos programables y la
tecnología Broadband PowerLine (BPL). Además incluye un análisis
costo-beneficio con la finalidad de evaluar la viabilidad económica del
proyecto.
En primera instancia se investigaron los medios posibles para la
comunicación vía Ethernet entre el controlador lógico programable y el
computador, tomando como opción el uso de un servidor OPC.
Seguidamente, se eligió Visual Basic como lenguaje de programación
para crear la interfaz de usuario que se ejecutará desde el computador, ya
que este software permite la comunicación con el servidor OPC.
xiv
Se elaboró un programa sencillo en Step 7 MicroWin que se cargó en el
PLC, para poder comprobar el correcto funcionamiento de la interfaz de
usuario y la comunicación con el controlador.
Finalmente se realizó la puesta en marcha del proyecto, incorporando la
tecnología Broadband PowerLine al diseño propuesto, para transmitir la
información a través de la red comercial de baja tensión.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
1
Introducción
La automatización nace de la necesidad de integrar la gestión y la
producción para incrementar la productividad y mejorar las condiciones de
trabajo. En el caso específico de este trabajo, el sistema automatizado
pretende ser un primer paso en la sustitución de las distintas tareas de
producción realizadas por un operador humano (las cuadrillas de corte y
reconexión).
La finalidad del trabajo de grado que se presenta a continuación es
proponer una arquitectura basada en la tecnología BroadBand PowerLine,
capaz de manejar, por medio de controladores logicos programables, el
corte y reconexión del servicio eléctrico de cargas residenciales.
A continuación se describe la estructura de esta investigación, que consta
de 4 capítulos descritos en las siguientes líneas:
Capitulo I: se describe aquí el planteamiento del problema, el
objetivo general y los específicos, el alcance y las limitaciones del
proyecto.
Capítulo II: se desarrolla la metodología realizada con sus
respectivas bases teóricas.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
2
Capítulo III: presenta los resultados obtenidos a lo largo del
desarrollo del trabajo de grado, así como también el análisis
puntual de los mismos.
Capítulo IV: engloba las conclusiones del trabajo y las posibles
recomendaciones para su mejora.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
Capítulo I
Diseño, implantación y evaluación económica de un sistema de corte y
reconexión remota del servicio eléctrico de clientes residenciales, usando
Tecnología PLC-BPL, para la Electricidad de Caracas
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
4
I.1 Planteamiento del problema
La Electricidad de Caracas (E. de C.) como empresa necesita mantener
una imagen sólida ante sus clientes, imagen que se ve afectada al no
poder responder de manera casi inmediata a las quejas de reconexión del
servicio eléctrico. De aquí surge la necesidad por parte de la E. de C. de
desarrollar un sistema de corte y reconexión a distancia del servicio
eléctrico de cargas residenciales, de forma de obtener un menor tiempo
de respuesta ante esas acciones, evitando así las cuadrillas encargadas
de realizar esa operación de forma presencial en cada residencia o
establecimiento
En la actualidad, el sistema de cuadrillas se ha vuelto anacrónico y con su
automatización se lograría establecer un método más eficaz que minimice
irregularidades administrativas y disminuya al mínimo los tiempos de
respuesta ante los clientes.
A su vez, a nivel económico, este sistema representaría un ahorro en
costos para la E. de C., al poder sustituir la mano de obra por equipos y
disminuir correspondientemente su costo asociado.
El presente trabajo final tiene como intención suministrar un sistema que
permita controlar de forma remota el corte y reconexión del servicio
eléctrico de cargas residenciales.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
5
I.2 Objetivos
Objetivo General
Diseñar e implantar un sistema de corte y reconexión remota en baja
tensión usando Broadband Powerline y Controladores Lógicos
Programables (Autómatas Programables)
Objetivos específicos
1.- Documentar en relación al funcionamiento del controlador lógico
programable (PLC) a utilizar, así como también comprender y manejar su
software de programación.
2.- Desarrollar una interfaz que controle de forma remota controladores
lógicos programables, usando Broadband Powerline.
3.- Seleccionar el software intermediario entre la aplicación a desarrollar y
el PLC, que permita la adquisición y manipulación de datos a distancia.
4.- Simular en un laboratorio el modelo de corte y reconexión de forma de
mostrar la arquitectura propuesta.
5.- Establecer el impacto económico del modelo propuesto de forma de
estudiar su factibilidad.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
6
I.3 Alcance
El proyecto consistirá en una investigación aplicada. Se hará uso de las
bases teóricas adquiridas previamente como pilares para su desarrollo. El
proyecto se limita a tres fases, a saber: diseño, implantación y evaluación
económica.
La etapa de diseño abarca el desarrollo de un modelo de conexión desde
el centro de control de operaciones hasta el tablero de distribución
residencial, haciendo uso de controladores lógicos y de Broadband
PowerLine
La segunda etapa corresponde a la implantación física y posterior
simulación de la etapa de diseño. Esto se llevará a cabo en el laboratorio
de automatización de la Universidad Metropolitana.
La etapa de evaluación económica permitirá hacer un estudio de costos
para la Electricidad de Caracas, de forma de conocer la factibilidad del
proyecto.
Durante la realización de este proyecto se tiene la ventaja de no poseer
variables de medición que puedan ser limitantes en su desarrollo, ya que
la idea es diseñar e implantar un modelo, mas no realizar mediciones de
variables para estudiar su comportamiento.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
Capitulo II
Contenido
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
8
II.1 Generalidades
Un cliente residencial o comercial de la Electricidad de Caracas (E. de C.
en adelante) disfruta por lo general de un servicio de suministro eléctrico
continuo y de calidad. Sin embargo la compañía eléctrica puede llegar a
interrumpir este servicio por circunstancias tales como retraso en los
pagos, con su eventual reconexión después de ponerse el cliente al día
con la deuda atrasada.
En este trabajo se diseña un sistema de desconexión y reconexión
automática que evite la intervención directa y manual del personal de la E.
de C. para efectos del proceso de corte o restablecimiento de la energía
eléctrica.
El sistema como tal comprende los siguientes componentes:
1- Un PLC (Controlador Lógico Programable), también llamado
Autómata Programable, que recibe las órdenes de conectar o
desconectar una carga a través de un bus de comunicaciones y se
encarga, a través de sus salidas, de activar o desactivar los
interruptores o breakers correspondientes. El PLC utilizado es un
S7 200 de Siemens.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
9
2- Un programa sencillo en el PLC que gestiona las acciones de
conexión y desconexión. El programa se escribe con el paquete
Step 7 Micro Win de Siemens.
3- Un módulo de comunicaciones Ethernet Industrial bajo protocolo
TCP/IP para la comunicación entre el PLC y el centro de control en
la E. de C. El módulo utilizado es el CP 243-1 de Siemens.
4- Un módem PLC (en este caso PLC = Power Line Carrier,
tecnología BPL). Este dispositivo recibe (cable recto) o envía
(cable cruzado) la señal del (al) módulo de comunicaciones
Ethernet Industrial referido en el punto 3- y la modula (o demodula)
sobre la red eléctrica de baja tensión, sirviendo de esta forma de
interfaz de comunicación para permitir el uso de la red eléctrica
urbana como canal físico de transmisión.
5- Del lado del centro de control de la E. de C. se dispone de un
computador conectado a la red Ethernet. El computador está
equipado con tres paquetes sobre los cuales se llevaron a cabo
desarrollos de software. Estos paquetes son:
a. Software Kep Server. Se trata de un servidor OPC (OLE for
Process Control) encargado de leer o escribir, a través de un
driver adecuado, las variables del autómata S7 200 y
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
10
ponerlas a la disposición para ser manejadas por el
programa Visual Basic.
b. Visual Basic: ambiente de programación gráfico con el que
se desarrolla una interfaz gráfica, amigable, al estilo de un
sistema SCADA, que permita a un operador llevar a cabo las
funciones de conexión y desconexión a distancia de un
determinado cliente.
c. Paquete SQL Server, destinado a gestionar una base de
datos de clientes sujetos a eventuales procesos de corte y
reconexión del servicio eléctrico.
La figura 1 muestra un diagrama esquemático de los componentes
descritos. Ver apéndice A.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
11
Figura 1: esquema del sistema de corte y reconexión automática de una
carga
1: PLC Simatic S7 200 2: Módulo de comunicación Ethernet Industrial CP 241-3 bajo protocolo TCP/IP 3: Módem PLC (Power Line Carrier) para modulación sobre la red eléctrica de baja tensión. 4: Línea eléctrica de baja tensión 5: PC en centro de control con los tres paquetes de software para gestionar la interfaz humano máquina. 6: Interruptor (breaker) manejado por el autómata y conectado a la carga sujeta al proceso de corte y reconexión.
Módem PLC
Módem PLC
- OPC Server - Visual Basic - SQL Server
1 2
36
3
5
4
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
12
En las siguientes secciones se describe con detalle el funcionamiento y
uso dado a los componentes aquí esquematizados.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
13
II.2 El autómata programable o PLC modelo S7 200 de Siemens
El dispositivo final encargado de la conexión o desconexión de la carga de
un cliente específico es el autómata programable S7 200 de Siemens.
La serie de autómatas S7 de Siemens comprende tres familias
principales, que en orden de mayores a menores prestaciones son:
Serie S7-400 para aplicaciones grandes con capacidad de
decenas de miles de entradas/salidas
Serie S7-300 para aplicaciones medianas con capacidad de hasta
2000 entradas/salidas
Serie S7-200 para aplicaciones pequeñas.
Para este proyecto se escogió un autómata de la serie S7-200. Las
razones que condujeron a esta decisión fueron múltiples, y se exponen a
continuación:
1- El número de entradas/salidas requeridas, todas ellas de tipo
discreto, para cada cliente es reducido: del orden de 16 entradas y
16 salidas. Un autómata pequeño basta para cubrir esa necesidad.
2- El programa que gestiona el PLC es sumamente sencillo.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
14
3- La relación costo-beneficio del autómata S7-200 es muy favorable.
Se trata de hecho de un autómata económico, pero que al mismo
tiempo ofrece cuantiosas bondades técnicas y un alto nivel de
confiabilidad basado en un desarrollo de Siemens que utiliza
tecnología de punta.
4- El S7-200 puede ampliarse con varios módulos de expansión de
entradas, salidas o módulos especiales. Sin embargo, para este
trabajo, sólo fue necesario la adición de un módulo de
comunicaciones Ethernet Industrial.
5- Debido a convenios estratégicos de la E. de C. con la empresa
Siemens, este autómata también fue propuesto por la compañía
eléctrica para el diseño del proyecto.
II.2.1 Descripción del S7-200
La familia de autómatas S7-200 ofrece varios modelos que se diferencian
entre sí en aspectos tales como velocidad de procesamiento, tensión de
alimentación, número de entradas/salidas que manejan, puertos de
comunicación y otros.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
15
Para este trabajo se escogió uno de los modelos más completos: el S7-
226, número de parte 6ES7 216-2AD23-0XB0. La tabla 1 a continuación
resume sus características técnicas más sobresalientes.
FUNCIÓN
CPU 226 6ES7 216-2AD23-0XB0
Dimensiones Físicas (mm) 196 x 80 x 62 Peso 550 gramos Tensión de alimentación 24 VDC
Sí
Memoria del programa Con edición en Run Time Sin edición en Run Time
16384 Bytes 24576 Bytes
Memoria de Datos 10240 Bytes Memoria de backup 10 horas (típ.) Entradas y salidas integradas Digitales (DC/DC) Analógicas
24 E/16 S No tiene
Módulos de Ampliación 7 Potenciómetros Analógicos 2 Reloj de tiempo real Incorporado Puerto de comunicación 2 x RS-485 Software de Programación Step 7-Micro/WIN Lenguaje de Programación KOP (Escalera) FUP (Bloques Funcionales) AWL (Lenguaje de Instrucciones)
Sí Sí Sí
Temperatura de Operación Montaje vertical, mín. Montaje vertical, máx. Montaje Horizontal, mín. Montaje Horizontal, máx.
0°C 45°C 0°C 55°C
Velocidad de procesamiento 0.22 microsegundos por instrucción
Tabla 1: características técnicas del CPU S7-226
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
16
De los datos de la tabla puede comentarse lo siguiente:
1- La alimentación del CPU es de 24VDC, lo que significa que
requiere de una fuente de alimentación de 24VDC. Para el
proyecto se utilizó una fuente Siemens, aunque pudo haberse
usado cualquier fuente estable de 24 VDC que suministrase la
corriente adecuada.
2- Tanto las entradas discretas como las salidas discretas trabajan
igualmente con 24 VDC. En el caso de las salidas (a transistor),
esto significa que es preciso colocar elementos de interfaz (relés,
por ejemplo) para poder manejar cargas importantes.
3- El CPU viene provisto de dos puertos de comunicación tipo RS
485. En su conexión inicial al menos, es necesario utilizar uno de
esos dos puertos para conectarse al computador que lo
configurará. Como por lo general los PC no disponen de puertos
RS 485, se debe usar un adaptador RS 485 a RS 232 ó RS 485 a
USB. Se utilizó en este trabajo un cable con adaptador RS 485 a
RS 232 marca Siemens (cable multimaestro RS 232-PPI).
La figura 2 muestra el aspecto físico externo del CPU 226 con sus
componentes principales. La figura 3 el diagrama de conexión de las
entradas/salidas discretas.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
17
Figura 2: aspecto físico externo del CPU S7-226
Figura 3: diagrama de conexión de entradas/salidas discretas del CPU 226
Tapa de acceso a: Selector de modo RUN/STOP Potenciómetros analógicos Conector para ampliación
Conector para entradas discretas Puertos de comunicación RS 485
Conector para salidas discretas LEDs de entradas/salidas
LEDs de estado
Cartucho de memoria Reloj en tiempo real Pila
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
18
II.2.2 Comunicación vía puerto serial
Inicialmente la comunicación entre el S7-226 y el PC equipado con el
software Step 7 MicroWin, debe hacerse a través de uno de los puertos
seriales. Se utiliza para ello un cable apropiado con un convertidor RS
485 a RS 232. El cable se denomina cable multimaestro RS 232/PPI. El
protocolo de comunicació es propietario de Siemens y se llama protocolo
PPI, que significa Poin to Point Interface.
La figura 4 ilustra la conexión física. Vigilar que los interruptores DIP del
cable multimaestro estén configurados como muestra la figura.
Figura 4: esquema de conexión del S7-200 al PC utilizando un enlace PPI
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
19
II.2.3 Descripción del módulo de comunicación Ethernet modelo
CP 243-1
La comunicación entre el centro del control de la E. de C. y los autómatas
programables encargados del proceso de conexión o desconexión de un
cliente se lleva a cabo mediante una red Ethernet bajo protocolo TCP/IP.
Esto significa que el autómata elegido, el S7 226, debe estar provisto de
una interfaz de comunicación de ese tipo. El CPU S7-226 no posee esta
interfaz integrada, pero si puede añadírsele un módulo de comunicación
adecuado a esa función.
El módulo utilizado es el modelo CP 243-1, cuyo aspecto físico externo se
ve ilustrado en la figura 5.
Figura 5: aspecto exterior del módulo de comunicación Ethernet CP 243-1
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
20
Los datos técnicos más sobresalientes de este módulo se presentan en la
tabla 2.
FUNCIÓN
CP 243-1
Velocidad de Transmisión 10/100 Mbits/s Autorreconocimiento
Interfaces 10 Base T, 100 Base TX Conexión para alimentación
RJ45 24 V DC ±5%
Disipación a 24 V DC 1,75 W Condiciones ambientales Temperatura de Servicio Montaje Horizontal Montaje Vertical
0°C a +55°C 0°C a +45°C
Dimensiones (mm) Peso
71,2 x 80 x 62 150 gramos
Software de Programación Step 7-Micro/WIN
Tabla 2: características técnicas del módulo CP 243-1
Con el módulo CP 243-1 se puede establecer comunicación Ethernet
Industrial de tres maneras distintas:
1- Conexión a un PC a través del paquete Step 7 MicroWIN
2- Conexión a otros autómatas de la serie S7 de Siemens
3- Conexión a aplicaciones basadas en servidores OPC
El CPU S7 226 reconoce automáticamente al módulo CP 243-1 una vez
conectado y alimentado con 24 VDC.
El apéndice C muestra el significado de los leds de estado del CP 243-1.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
21
II.3 Conexión inicial al CPU-226
Para la conexión inicial con el S7-226 debe asegurarse que el PLC y el
PC estén conectados como se mostró en la figura 4. Inicialmente la
conexión del PC al S7-226 se hace a través del puerto serial RS 485 del
PLC, usando el protocolo PPI. Todo CPU S7 200 viene de fábrica con una
dirección predeterminada, que es la número 2.
Una vez conectado físicamente el PC al CPU S7 226, dirección 2,
mediante protocolo PPI, se configurará el CPU para conexión vía Ethernet
Industrial asignándole una determinada dirección IP. Esta nueva
configuración se cargará en el S7 226 vía puerto PPI, y de ahí en
adelante ya podrá accederse al CPU igualmente vía Ethernet.
A continuación se describen en detalle los pasos necesarios para poder
comunicarse con el S7 226 vía Ethernet.
Paso 1:
Arrancar el paquete de programación Step7-Micro/WIN y crear un nuevo
proyecto. Ver figura 6.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
22
Figura 6: creación de un nuevo proyecto con Step 7 Micro WIN
Paso 2:
Elegir el comando Herramientas Asistente Ethernet. Ver figura 7.
Figura 7: elegir comando Asistente Ethernet
Este asistente ofrece la opción de configurar la comunicación Ethernet
Industrial de una manera rápida y sencilla. Al elegir el comando se
muestra la ventana de la figura 8. Si el módulo Ethernet está conectado
y alimentado, entonces debe reconocerse automáticamente.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
23
La casilla “Posición del módulo” debe dejarse en 0 (ver figura 8).
Figura 8: primera ventana del asistente Ethernet Industrial
Paso 3:
Se pulsa el botón Siguiente y en la ventana que aparece (figura 9) se
definen los parámetros del modulo CP 243-1 tales como su dirección IP,
la máscara de subred y la puerta de enlace (opcional). Lo escogido se
basó en las direcciones y puerta de enlace establecidas por la red de la
Universidad Metropolitana.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
24
Figura 9: parámetros de la red Ethernet
Paso 4:
Se pulsa el botón Siguiente y en la ventana que aparece (figura 10) se
especifica el número de enlaces que tendrá el módulo CP 243-1. Se
especifica un enlace.
Figura 10: determinación del número de enlaces
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
25
Paso 5:
Se pulsa el botón Next y en la ventana que aparece se establecen las
opciones tal cual como están indicadas en la figura 11. Observar que
automáticamente se genera en el cuadro TSAP la dirección 10.00 que
se utilizará luego para el servidor OPC.
Figura 11: configuración de enlaces
Paso 6:
Se pulsa el botón OK y en la ventana que aparece (figura 12) se
especifican las opciones que muestra la figura (protección CRC activada
e intervalo Keep Alive en 30 s). La opción de protección CRC impide que
el usuario modifique la configuración del módulo en modo de ejecución.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
26
Figura 12: configuraciones CRC e intervalo Keep Alive
Paso 7:
Se pulsa el botón Siguiente. Aparece la ventana de la figura 13 donde se
selecciona el principio de una tabla de bytes que hay que reservar para
uso privado del módulo de comunicación. En este caso se escogió como
dirección inicial de la tabla la VB477.
Figura 13: asignación de tabla de bytes para uso del módulo
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
27
Paso 8:
Se pulsa el botón Siguiente. Se muestra la última ventana del asistente.
Además se crea automáticamente una subrutina llamada ETHx_CTRL
que permite chequear el estado de la conexión vía Ethernet. Ver figura
14.
Figura 14: última ventana del asistente Ethernet Industrial
Paso 9:
Una vez creada la configuración para el enlace Ethernet, se carga en el
CPU. La ventana de la figura 15 muestra cómo cargarla. El CPU debe
estar energizado, en modo STOP y el cable multimaestro RS 232/PPI
debidamente conectado.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
28
Figura 15: cargar la configuración en el CPU
Paso 10:
Para que la configuración recién cargada se haga efectiva, es necesario
resetear el PLC. La mejor forma es desenergizarlo y volverlo a
energizar. A continuación puede ahora intentarse la comunicación con el
PLC vía Ethernet. Para lograrlo se entra primero en el menú
Comunicación y se escoge la opción Ajustar Interfaz PG/PC. En la
ventana que aparece se elige TCP/IP Auto, como sugiere la figura 16.
Figura 16: escoger parametrización del módulo CP 243-1
Cargar en CPU
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
29
Paso 11:
Aceptar la ventana de la figura 16. Ir nuevamente a la opción de
Comunicación y en la ventana que aparece introducir la dirección IP con
la cual se configuró el módulo Ethernet CP 243-1. (1- en la figura 17).
Hacer doble clic sobre el símbolo para actualizar (2- en la figura 17) para
intentar establecer un enlace con la dirección IP indicada. De ser exitoso
el intento, debe aparecer en la misma parte derecha de la ventana el
icono del CPU S7 226. (3- en la figura 17).
Figura 17: actualización del enlace Ethernet
Paso 12:
En el paso 8 se creó automáticamente la rutina ETHx_CTRL. Se coloca
esta rutina en el programa principal para que se encargue de inicializar
el módulo Ethernet y chequear cualquier error que pueda suceder,
monitorizando de esa forma el estado de la conexión durante la
2- Hacer doble clic aquí para intentar establecer el enlace.
3- Enlace establecido.1- Especificar
dir. IP del CPU.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
30
comunicación. Observar que las salidas del bloque se asignan,
respectivamente, a las variables M2.1, MW20 y MW22.Ver figura 18.
Figura 18: subrutina ETHx_CTRL
La rutina se debe llamar en cada ciclo autómata con la finalidad de
comprobar si existe una nueva configuración. De esta manera si ha
cambiado la configuración el módulo la adoptará, activándose así la
señal CP_Ready. El estado del canal se verifica con los bits de la
palabra asociada a Ch_Ready. Cada bit corresponde a un canal. Si el bit
está en 1, el canal está activado y se estableció un enlace. Si el enlace
presenta algún error, se desplegará en Error bajo un código específico.
Ver apéndice B.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
31
Paso 13:
Una vez establecida la comunicación vía Ethernet, se crea un programa
en Step 7-Micro/WIN llamado “Prog_OPCServer” que permite controlar
las salidas del PLC. Se utilizó para ello un contacto normalmente
cerrado de una marca que activa una salida del PLC. La marca o
bandera se controlará mediante la ventana del operador a través del
servidor OPC. La activación o desactivación de la marca hará que la
bobina de salida esté apagada o encendida correspondientemente. Esta
configuración se repite para las 16 salidas del PLC utilizado. Ver figura
19.
Por último se carga el programa “Prog_OPCServer” en el CPU 226 vía
Ethernet.
Figura 19: programa en el PLC para control de las salidas discretas
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
32
II.4 La interfaz para el operador: el servidor OPC
Para llevar a cabo el proceso de conexión o desconexión de la carga de
un cliente, un operador en la E. de C. debe accionar un comando a
través de un computador situado en la sala de control. El computador
debe tener un programa adaptado a esta finalidad.
En este trabajo se desarrolló una interfaz humano-máquina que permite
ejecutar la acción de conexión o desconexión a un determinado cliente.
La interfaz consta en líneas generales de tres partes:
1- Un servidor OPC (OLE for Process Control) encargado de
acceder las variables necesarias en el PLC y mostrarlas en
tiempo real, con posibilidad de ser igualmente accedidas por otros
programas.
2- Una base de datos con los clientes a ser atendidos. Se utilizó
para ello el paquete SQL Server.
3- Un programa en Visual Basic con ventanas equipadas con
controles para que el operador pueda efectuar las labores de
conexión o desconexión de un cliente a distancia.
En este capítulo se describe el servidor OPC utilizado.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
33
II.4.1 Servidores OPC
Un servidor OPC trabaja según el esquema Cliente – Servidor. El OPC
Server es pues una aplicación tipo servidor encargada de suministrar un
canal para adquirir información de dispositivos industriales, tales como
PLCs. La información es entonces encaminada a una aplicación cliente
presente en el PLC. Ver figura 20.
Figura 20: esquema general de funcionamiento de un servidor OPC
Los servidores OPC disponibles comercialmente vienen equipados con
drivers para poder comunicarse con los distintos protocolos asociados a
los diversos PLCs del mercado.
Para este proyecto se escogió un servidor OPC en particular llamado
Kep Server EX V4.0 de la empresa Kepware que incorpora el driver para
comunicación Ethernet Industrial bajo TCP/IP.
PLC
OPC Server
Cliente (por ejemplo Excel o VB)
PC
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
34
Los datos recogidos por el driver de comunicación del servidor OPC
pueden accederse dentro del PC mediante dos técnicas:
1- DDE (Intercambio Dinámico de Datos)
2- OPC (OLE for Process Control)
Se utilizaron las dos técnicas: DDE para leer datos del PLC a través del
servidor OPC y OPC para escribir datos en el PLC a través del mismo
servidor.
Microsoft Windows desarrolló una forma genérica de compartir
información y datos entre aplicaciones basadas en Windows
provenientes de diversos fabricantes, a lo que se le dio el nombre de
DDE (Dynamic Data Exchange).
Sin embargo esta tecnología no estaba diseñada para el mercado
industrial debido a su escasa robustez y velocidad de transmisión de
data. A pesar de esto, DDE se fue implantando en gran cantidad de
industrias y nuevos fabricantes la desarrollaron con el fin de mejorarla.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
35
Para el año 1994 se creó la Fundación OPC, representada por un
conjunto de fabricantes pertenecientes a diversas ramas de la industria.
La meta fue desarrollar una única aplicación Cliente/Servidos que le
permitiera a cualquier fabricante desarrollar software capaz de
intercambiar información de forma rápida y robusta.
La primera aplicación que la fundación OPC creó se denomina “Data
Access Specification 1.0” y fue lanzada al mercado alrededor de 1996,
sentando los cimientos para la evolución de los servidores OPC. A partir
de aquí se empezaron a desarrollar sistemas basados en dicha
aplicación.
Data Access Specification 1.0 precisa cómo se debe construir tanto la
interfaz cliente como la del servidor. De esta forma si el fabricante del
cliente sigue estas especificaciones perfectamente, entonces cualquier
servidor OPC que opere para equipos industriales podrá establecer
conexión para lograr el acceso a la data.
Con la creación de herramientas como esta los fabricantes se ocuparían
únicamente de desarrollar aplicaciones cliente, debido a que los drivers
de comunicación los suministra el componente servidor OPC.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
36
II.4.2 El servidor OPC de Kep Server
Esta sección describe cómo utilizar la aplicación Kep Server Ex 4.0 para
poder comunicarse con el PLC S7 226 de Siemens a través de Ethernet
Industrial bajo TCP/IP.
Para establecer comunicación utilizando Kep Server Ex 4.0 se necesitan
configurar tres elementos indispensables: el canal (channel), el dispositivo
(device) y las etiquetas (tags) contenidas en un grupo (group). Ver figura
21.
Figura 21: componentes para establecer la comunicación con Kep Server
Etiquetas o Tags
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
37
Channel: es el canal de comunicación donde se define el protocolo o
driver a utilizar.
Device: es el hardware o PLC con el cual el servidor se va a comunicar.
Su selección está condicionada por el driver elegido en Channel.
Tags: son las direcciones en el hardware o en el PLC a monitorizar, Para
cada Tag definido debe suministrase el tipo de dato (booleano,
entero, byte, word, real, string, etc.) y el tipo de acceso (sólo lectura,
lectura/escritura, etc.). Los Tags se pueden agrupar dentro de los
llamados “grupos de etiquetas¨.
A continuación se explican los pasos necesarios para crear un grupo de
etiquetas con Kep Server.
Paso 1:
Abrir Kep Server Ex V4.0. Se muestra la ventana de la figura 22.
Figura 22: ventana inicial al abrir Kep Server Ex V4.0
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
38
Paso 2:
En esta ventana que se muestra debe definirse primero que nada el
canal (Channel). El canal constituye la vía de comunicación desde un
computador hasta uno o más dispositivos externos y representa en sí un
puerto serial o una tarjeta de red en el computador. Por omisión el
nombre del canal será Channel1 y al configurarlo debe escogerse el
protocolo de comunicación Ethernet TCP/IP para Siemens. Hacer clic
sobre ¨Click to add a channel¨. Ver figura 23.
Figura 23: ventana inicial para definición de un canal
Paso 3:
Pulsar Siguiente. Aparece la ventana de la figura 24 con una lista de los
drivers disponibles. Se escoge el driver Siemens TCP/IP Ethernet
compatible con el módulo CP 243-1 descrito anteriormente.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
39
Figura 24: escogencia del driver para comunicación Ethernet
Paso 4:
Pulsar Siguiente. Se escoge el adaptador de red que utilizará Channel1
para establecer la comunicación a través de la red. Como el computador
no posee una tarjeta de red específica, se escogerá como adaptador de
red el que viene por omisión (default). Ver figura 25.
Figura 25: escogencia del adaptador de red
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
40
Paso 5:
Pulsar Siguiente. Al trabajar con un servidor OPC, una de las funciones
mas importantes es lograr es escribir la información de un equipo remoto
en un tiempo apropiado. Es por eso que el asistente de Kep Server Ex le
proporciona al usuario un conjunto de opciones que le permiten optimizar
la ejecución del programa, adaptándose a sus necesidades. Ver figura 26.
Figura 26: control de escritura del servidor en el canal
Paso 6:
Pulsar Siguiente. Se muestra una ventana que resume la información
recién configurada para el canal. Si se está de acuerdo, pulsar Finalizar.
Ver figura 27.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
41
Figura 27: resumen de la configuración del canal
Paso 7:
Una vez creado y configurado el canal, aparece en la ventana principal
del Kep Server la opción ¨click to add a device¨. Se selecciona esta opción
y comienza la aparición de otra serie de ventanas para la configuración
del dispositivo o device. La primera de esas ventanas es la mostrada en la
figura 28, que pregunta por el nombre del dispositivo. Se deja el nombre
por defecto: Device1.
Figura 28: asignación del nombre al dispositivo recién creado
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
42
Paso 8:
Pulsar Siguiente. Se selecciona el modelo del equipo con el cual se va a
trabajar. En este caso es el S7-200, como muestra la figura 29.
Figura 29: escogencia del dispositivo con el que se trabajará
Paso 9:
Pulsar Siguiente. En la ventana que aparece se define la dirección IP del
equipo con el cual el PC se va a conectar. Para las pruebas hechas en el
laboratorio, la dirección IP es asignada al CP 243-1 es la 10.18.10.154.
Ver figura 30.
Figura 30: identificación de la dirección IP del dispositivo
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
43
Paso 10:
Pulsar Siguiente. La ventana que se muestra exige introducir el TSAP del
dispositivo remoto, según se estableció al configurar el enlace Ethernet en
el S7 226 (figura 10 de la sección III.4). Se coloca el número 1000 en las
casillas Local y Remote, como se muestra en la figura 31.
Figura 31: establecimiento del valor TSAP para el enlace
Paso 11:
Pulsar Siguiente. Se muestra la ventana final de la configuración del
dispositivo, donde está resumida la configuración recién especificada.
Pulsar Finalizar si se está de acuerdo con la configuración mostrada. Ver
figura 32.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
44
Figura 32: resumen de la configuración del dispositivo Device1
Paso 12:
Una vez validada la ventana de la figura 31, se regresa a la pantalla
principal del Kep Server. Se hace clic con el botón derecho del ratón
sobre Device y se selecciona la opción New Tag Group para crear un
grupo de variables a monitorizar (las variables se llaman Tags o
Etiquetas). Por defecto se selecciona el nombre Group1 para el grupo
creado. Ver figura 33.
Figura 33: creación del grupo Group1
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
45
Paso 13:
Una vez creado el grupo, se valida la ventana de la figura 33 pulsando
OK. Con el botón derecho sobre Group1 se selecciona New Tag. De esta
forma se añaden una a una las 16 variables (Tags) a monitorizar en el
PLC. En el caso de este proyecto esas etiquetas van a corresponder a 16
marcas o banderas con direcciones M0.0 a M1.7 que anticipan las salidas
del S7 200, y que figuran en el programa “Prog_OPCServer” (ver figura 19
en la sección II.3).
La figura 34 ilustra la creación de un Tag (M0.0). Obsérvese el tipo de
dato a asignar (Booleano) y el tipo de acceso por parte del cliente
(Lectura/Escritura).
La figura 35 muestra la ventana del Kep Server con las variables (Tags)
creadas.
Figura 34: ventana de creación del Tag M0.0
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
46
Figura 35: variables o Tags creados en el Group1
Ha finalizado la configuración del Kep Server. Puede ahora probarse
lanzando un cliente ya incluido en el Kep Server, llamado Quick Client.
No se describe aquí el funcionamiento del Quick Client, aunque si se
utilizó exitosamente para probar la conexión y animación de las
variables (marcas) en el programa “Prog_OPCServer” grabado en el
PLC.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
47
II.5 La interfaz para el operador: SQL Server
Con el fin de poder almacenar y manejar una base de datos de clientes
con capacidad de ser conectados o desconectados de la red eléctrica, se
escogió la herramienta SQL Server. Se trata de un software que actúa
como interfaz entre la base de datos y las aplicaciones que la utilizan.
SQL significa Structured Querry Language, y es un sistema de gestión de
bases de datos desarrollado por Microsoft capaz de administrar tablas de
datos con miles de registros a través de aplicaciones como Viasual Basic.
SQL Server corre en ambiente Windows.
Además, cada instancia de SQL Server esta en la capacidad de manejar
miles de usuarios trabajando en múltiples tablas simultáneamente, con lo
cual no es necesario correr múltiples copias de la base de datos de SQL
Server.
SQL Server se instala como un servicio y por esto es indispensable
asignarle un usuario para que inicie ese servicio y para que trabaje bajo
este contexto de seguridad. Este usuario que se asignó debe ser la
cuenta local del sistema o la del domino escogida por el instalador.
Dentro de SQL Server 2000 existen dos herramientas básicas para el
manejo de la base de datos: el Enterprise Manager (usada en este
proyecto) y el Query Analyzer.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
48
El Enterprise Manager (EM), que es una herramienta gráfica que se
ocupa de administrar los servidores y es instalada por defecto al
momento de instalar el SQL Server 2000. Entre sus funciones mas
importantes se tienen:
- Creación de bases de datos y de sus correspondientes
objetos, tales como: tablas e índices
- Conexión a múltiples servidores
- Modificación y acceso tanto a las propiedades del servidor
como a la base de datos
- Permite importar y exportar información desde distintas
fuentes hacia otras aplicaciones.
- Administración de usuarios y seguridad.
- Monitoreo de la actividad del servidor.
Query Analizer (modo de comando),
II.5.1 Creación de la base de datos mediante la herramienta Microsoft
SQL
La aplicación Microsoft SQL Server brindó la posibilidad de crear y
modificar la base de datos de forma rápida y sencilla gracias a una de sus
herramientas básicas denominada Enterprise Manager. Con ella se creó
la base de datos Registro, que contiene a su vez tres tablas a ser usadas
en la aplicación final para la identificación, validación e informe de
usuarios y operadores.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
49
A continuación se describe la secuencia a seguir para la elaboración de
una base de datos con sus correspondientes objetos, partiendo desde la
instalación del programa.
Paso 1:
Al momento de la instalación es necesario establecer el nombre del
servidor con el cual se conectará SQL Server. En este caso el nombre del
servidor fue “UNIMET-70227A1A” y además se activo el parámetro “auto-
start” para que siempre que se inicie el sistema operativo, se conecte al
servidor (ver figura 36).
Figura 36: establecimiento del nombre del servidor
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
50
Paso 2:
Se ejecuta el Enterprise Manager activando el comando:
Inicio Programas Microsoft SQL Server Enterprise Manager
Así se inicia el programa Enterprise Manager y se desplegará la primera
pantalla (ver figura 37).
Figura 37: pantalla principal del Enterprise Manager
Paso 3:
Para la creación de la base de datos que contendrá las tablas a utilizar
posteriormente en la aplicación que controla de corte y reconexión de
cargas residenciales, se debe abrir el siguiente directorio en el navegador
de la pantalla principal.
Microsoft SQL Servers SQL Server Group
(Local)(Windows NT) Databases
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
51
En la carpeta Base de Datos (Databases) se puede apreciar que el
sistema por defecto origina, al momento de la instalación, cuatro bases de
datos que utiliza el SQL Server y dos de ejemplo para la realización de
pruebas. Las que utiliza SQL Server se conocen como: master, model,
tempdh y msdb. Ver figura 37.
Ahora bien, haciendo clic con el botón derecho en el navegador de la
pantalla se elige la opción New Data Base (nueva base de datos) y se le
asigna el nombre Registro. Ver figura 38.
Figura 38: creación de la base de datos Registro
Para verificar las propiedades de la nueva base de datos, se debe hacer
clic con el botón derecho sobre el icono de Registro (ver figura 39).
Nueva base de datos
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
52
Figura 39: propiedades de la base de datos Registro
Paso 4:
Ahora se deben crear las tablas que van conformar la base de datos
Registro. Para ello se selecciona la base de datos Registro en la
ventana de la figura 38 y se escoge la opción tables. Se hace clic con el
botón derecho y se selecciona la opción New Table. De esta forma se
crean tres tablas denominadas Cliente, Usuario y Modificacion_Registro.
Al momento de crear las tablas se deben establecer los campos que la
forman, así como también el tipo de dato de cada campo y su longitud
(ver figura 40).
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
53
Figura 40: tablas de Registro
Para el caso de la tabla Cliente se especificaron seis campos referentes a
la información del abonado:
-CuentaContrato: indica el número de subscripción
-Cliente_Nombre: posee el nombre del cliente registrado
-Cliente_Ced: contiene el numero de cédula o RIF asociado a cada
suscriptor
-Cliente_Dir: proporciona la dirección del usuario
-Num_Aparato: hace referencia al número de medidor
-UbicacionPLC: es el número relacionado con la salida física del PLC y
asignado a un usuario en específico (ver figura 41).
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
54
Figura 41: campos de la tabla “Cliente”
Paso 5:
Luego de crear las tablas y definir sus campos, se procedió a llenarlas.
Para el caso preciso de la tabla Cliente, se carga la información de 16
usuarios (Ver figura 42).
Figura 42: información de la Tabla Cliente
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
55
El procedimiento seguido en los pasos 4 y 5 se realizó de forma idéntica
para las tablas Usuario y Modificación_Registro.
La tabla Usuario consta de dos campos: uno indica el nombre del usuario
(login) que podrá ingresar al sistema y el otro la clave (password)
relacionada al primer campo. (Ver figura 43).
Figura 43: campos de la tabla “Usuario”
La tabla Modificación_Registro, que se refiere al cambio que se realiza en
el sistema, consta de 4 campos (ver figura 44):
1- id: indica el operador que está manipulando el sistema
2- estado: indica la modificación que se le realizó
3- fecha: indica la fecha y hora del cambio
4- CuentaContrato: indica la cuenta del cliente al cual se le realizó al
modificación
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
56
Figura 44: campos e información de la Tabla Modificacion_Registro
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
57
II.6 La interfaz para el operador: Visual Basic
La interfaz directa entre el operador y el sistema de
conexión/desconexión de cargas es una aplicación desarrollada en
Visual Basic a la que se le dio el nombra de SysCoRe.
El programa suministra ventanas con elementos gráficos que permitan al
operador de una forma intuituva, rápida y sencilla seleccionar un
determinado cliente y efectuar una operación de conexión o
desconexión.
La aplicación desarrollada permite, en general:
Comunicarse con la base de datos creada en SQL Server para
seleccionar un determinado cliente y ver su estado.
Comunicarse con el OPC Server para poder acceder las
variables del PLC remoto.
Por esto resulta imprescindible que los computadores que vayan a
utilizarse para tareas de conexión y desconexión remota de cargas,
tengan instalado tanto Kep Server Ex como y SQL Server 2000.
En el apéndice D se encuentra el listado del programa en Visual Basic
para el manejo de la interfaz humano máquina.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
58
II.6.1 Ventanas de interfaz operador-máquina
Se creó primero que nada una pantalla principal que tiene como
finalidad la autentificación del operador mediante un login y un
password, con el propósito de evitar que personal no autorizado tenga la
posibilidad de irrumpir en el sistema.
Cuando el operador introduce la información de validación y presiona el
botón entrar (ver figura 45), la información es corroborada con una base
de datos cuya tabla se denomina “usuario”, ya creada con SQL Server.
En caso de que el login o el password sean incorrectos el sistema lo
detectará y emitirá un mensaje de error evitando avanzar a la siguiente
pantalla hasta que los datos de validación sean correctos.
Si los datos de validación son correctos, al presionar entrar el Kep
Server Ex lanzará un cliente OPC que será transparente para el usuario
a nivel de interfaz, pero suministrará el medio de comunicación entre
Visual Basic y el PLC.
En el lado izquierdo de la pantalla principal (figura 44) existen tres
botones para información al operador:
1.- Botón de información
2.- Botón de requerimientos del sistema
3.- Botón de ayuda.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
59
Figura 45: ventana inicial de la interfaz operador-máquina
El botón de Información muestra una ventana con información de la
aplicación, entre la cual se encuentra la versión y la fecha en que se
realizó. Ver figura 46.
Figura 46: ventana general de información de la aplicación
El botón de Requerimientos del Sistema proporciona una lista de
aplicaciones necesarias para el correcto funcionamiento de SysCoRe.
Ver figura 47.
1
2
3
Validación
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
60
Figura 47: ventana de requerimientos del sistema
El tercer botón es el de ayuda. Contiene las instrucciones a seguir por el
operador para correcto uso de las funciones del programa. Ver figura 48.
Figura 48: ventana correspondiente al botón de ayuda en la aplicación
La segunda etapa consistió en crear un ambiente en donde, al introducir
el número de cuenta contrato de cada usuario registrado, y después de
validar el login y password en la ventana de la figura 45, el operador
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
61
pueda ver la información de la cuenta, tal como: estado actual del
servicio, titular del contrato, cédula o R.I.F, dirección de suministro y
número de aparato. Además aparecerá un botón que le permitirá cambiar
el estado del servicio. Ver figura 49.
Figura 49: ventana para manejo del estado de servicio de un cliente
El campo referente al número de cuenta contrato se encuentra vinculado
con la tabla ¨Cliente¨ de la base de datos creada en SQL Server. A través
de ese vínculo el programa en Visual Basic puede desplegar toda la
información del cliente con ese número de cuenta contrato. Además
existe un campo en la tabla ¨Cliente¨ denominado “UbicaciónPLC”, que
está relacionado directamente con las salidas del PLC, pero que no se
muestra explícitamente.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
62
Por ejemplo, si el operador introduce el número de cuenta contrato 1012
se desplegará la información relacionada con el titular de esa cuenta; sin
embargo el parámetro UbicacionPLC, en este caso 12, no se mostrará
sino que más bien servirá como número de referencia para todas las
acciones relacionadas con el número de cuenta contrato asociado.
De esta forma es posible conocer el estado de la conexión, ya que las
etiquetas o Tags creados en Kep Server Ex están a su vez relacionadas
con este número. El estado del servicio puede ser activado, desactivado o
desconocido. El sistema mostrará la última opción en caso de que no
exista conexión vía Ethernet o de que exista un error en la señal de
comprobación de contactor cerrado.
El vínculo entre Visual Basic y Kep Server se estableció de dos formas:
1- Utilizando la técnica DDE (Dynamic Data Exchange)
2- Utilizando la técnica OLE (Object Linking and Embbeding)
Las variables del PLC se leen a través del OPC Server por medio de
enlaces DDE. A través de cajas de texto en Visual Basic se establecen los
enlaces con las variables del servidor OPC. En las cajas de texto donde
se va a leer información del OPC Server se definen las siguientes
propiedades:
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
63
- LinkItem: en este campo se debe colocar la dirección de la
etiqueta o Tag en Kep Server Ex. Por ejemplo:
Channel1.Device1.Group1.bandera_12.
- LinkMode: esta propiedad se debe establecer en automático
(opción 1) para que la conexión DDE con el Kep Server Ex se
realice de forma automática.
- LinkTopic: se debe establecer el Servidor y el Topic según la
configuración creada en Kep Server Ex . Ver figura 50
Figura 50: ejemplo de configuración de las propiedades de una caja de
texto para utilización de DDE
Recordar que cada casilla del arreglo está relacionada con el número
¨UbicaciónPLC¨ proveniente de la tabla de SQL Server, y con las
etiquetas creadas en Kep Server Ex.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
64
Al presionar el botón cambiar estado del sistema en la pantalla anterior,
se desplegará la siguiente pantalla (figura 51):
Figura 51: pantalla de modificación de estado
En caso de que no exista conexión vía Ethernet con el servidor Kep
Server, la aplicación emitirá un mensaje de error y deshabilitara cualquier
opción, permitiendo únicamente que el usuario regrese a la pantalla
anterior de búsqueda. Ver figura 52.
Figura 52: mensaje de error de conexión
Mensaje de error
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
65
De esta forma solo se podrá regresar a la pantalla anterior y buscar el
estado de un nuevo usuario o abandonar la aplicación presionando el
botón salir.
Se hace hincapié en el hecho que la conexión vía ethernet con un usuario
es independiente de cualquier otra, debido a que físicamente están en
lugares distintos, y por lo tanto están controladas por salidas y entradas
digitales diferentes dentro de un mismo autómata, o en muchos casos pro
autómatas diferentes.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
66
II.7 Broadband PowerLine
Broadband Powerline, BPL, tiene sus inicios alrededor de 1940 en donde
se utilizaba con fines de control y telemetría internos.
Actualmente es una tecnología que permite la transmisión de voz y
datos a través de la red eléctrica a altas velocidades. Basado en la
tecnología IP, permite obtener servicios de banda ancha y acceso
telefónico mediante la red eléctrica de baja tensión.
II.7.1 Principio de Funcionamiento
BPL transmite señales de datos a altas frecuencias a través del mismo
cable de potencia que llega a los usuarios residenciales. Funciona en
tramos de media y baja tensión de la red eléctrica. Su velocidad de
transmisión máxima (en pruebas de laboratorio) es de 200 Mbps.
Para hacer posible que la información viaje por medio de la red eléctrica,
es necesario que la señal sea modulada en portadoras (Power Line
Carrier en su denominación en inglés) dentro de la banda 1.6- 30 Mhz,
de forma de obtener una separación notable con respecto a la
frecuencia de la red eléctrica que trabaja a 50 ó 60 Hz.
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
67
El principio básico del BPL es que cuando la red eléctrica llega al tablero
principal del domicilio de los usuarios, se ramifica convirtiéndose en un
auténtico puerto de datos que permite la comunicación tanto en el
interior como en el exterior. La velocidad máxima de acceso va a
depender de la cantidad de usuarios que la estén utilizando. A mayor
cantidad de flujo más lenta va a ser la comunicación.
La figura 53 muestra la arquitectura de un sistema de distribución
eléctrica típica, donde las tensiones se van reduciendo desde los
sistemas de alta tensión hasta los usuarios finales. La tecnología BPL
actúa a partir de los tramos de media tensión hacia abajo.
Para una transmisión eficiente, la distancia de la subestación al usuario
final no debe exceder los 1000 metros.
Figura 53: tramos de la red eléctrica
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
Una visión global sobre la tecnología PLC [en línea]. Disponible en:
http://usuarios.lycos.es/urde/plc/plc.htm [2005, 9 de abril].
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
95
APÉNDICE A
Imágenes del montaje
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
96
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
97
APÉNDICE B
Parámetros de la rutina ETHx_CTRL
Nombre Tipo Significado CP_Ready BOOL Status del CP 243-1
0: CP no listo para operar 1: CP listo para operar
CH_Ready WORD Status de los canales individuales
Bit 0 corresponde al Canal 0 Bit 1 corresponde al Canal 1 Bit 2 corresponde al Canal 2 Bit 3 corresponde al Canal 3 Bit 4 corresponde al Canal 4 Bit 5 corresponde al Canal 5 Bit 6 corresponde al Canal 6 Bit 7 corresponde al Canal 7
0: el Canal no está listo 1: el Canal está listo
Error WORD Código de error
0x0000: No ocurrió error Otro: Error (ver tabla
siguiente)
Códigos de error de subrutina ETHx_CRTL
Palabra de error Mecanismo de retorno
Hex dec
Descripción
Acción/Solución Valor
de retorno (ETHx_)
16#001 1 Tiempo de
espera del bus
Automatic Warm Start
20,21 _CTRL
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
98
s7 excedido
16#000D 13 Toda la transmisión de
data fue abortada a
causa de una reconfiguración iniciada por el programa del
usuario
Reinicio el sistema
20,21 _CTRL
16#0030 48 La configuración
no se cargo en el CPU en el
tiempo específico
Automatic Warm Start
20,21 _CTRL
16#0031 49 No se encontró en la memoria del CPU s7-
200 una configuración correcta del
CDB
20,21 _CTRL
16#0032 50
El checksum del CRC de la configuración de la data es incorrecto.
20,21 _CTRL
16#0033 51 La información de
configuración para el CP243-
1 está defectuosa o
mal almacenada.
20,21 _CTRL
16#0034 52 El puntero hacia el CDB
es erróneo o no se ha cargado
el CDB
Asegurar que la rutina
ETHx_CTRL se llama al
principio del programa
20,21 _CTRL
16#0035 53 La configuración transmitida
tiene un formato inválido
20,21 _CTRL
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
99
16#0036 54 Los TSAPs están mal definidos o presentes
varias veces en la configuración
20,21 _CTRL
16#0038 56 La configuración no está bien
definida (dirección IP
errada)
20,21 _CTRL
16#003A 58 Nombre del CP 243-1
modificado en la configuración
20,21 _CTRL
16#003B 59 La configuración contiene una dirección IP
inválida
20,21 _CTRL
16#003C 60 Configuración con la dirección
de puerta de enlaces inválida
20,21 _CTRL
16#003D 61 Configuración con valor
inválido en el parámetro Keep alive
20,21 _CTRL
16#003E 62 No se recibió una
configuración valida ni del cpu ni vía BOOTP
Se trata de recibir la
configuración desde el CPU o via un servido
BOOTP
20,21 _CTRL
16#0042 66 El NDB contiene
comandos leer-escribir
incorrectos
20,21 _CTRL
16#0093 147 El comando BOOTP falló
Automatic Warm start
20,21 _CTRL
16#0094 148 El servidor BOOTP contiene
información inválida
Automatic Warm start
20,21 _CTRL
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
100
16#0095 149 El tiempo especificado de Keep alive no fue aceptado
por la pila TCP/IP
Automatic Warm start
20,21 _CTRL
16#0096 150 La dirección IP del cliente no fue aceptado
por la pila TCP/IP
Automatic Warm start
20,21 _CTRL
16#0097 151 La máscara de subred no fue
aceptado por la pila TCP/IP
Automatic Warm start
20,21 _CTRL
16#0098 152 La puerta de enlace no fue
aceptado por la pila TCP/IP
Automatic Warm start
20,21 _CTRL
16#00F0 240 El CP 243-1 no fue reconocido por el CPU S7-
200
Chequear estructura y
configuración del S7-200
20,21 _CTRL
16#00F1 241 La dirección de salida del byte
no es compatible con
la posición actual del CP
243-1 en el S7-200
20,21 _CTRL
16#0100 al
16#0108
256 al
264
Tiempo de espero
excedido en el bus del S7-200
Automatic Warm start
20,21 _CTRL
16#8080 32896 El CP 243-1 no finalizó su
reinicio
Revisar la alimentación de
24 V. de ser necesario.
20,21 _CTRL
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
101
APÉNDICE C
SysCoRe
******************************************************* Pantalla principal de SysCore(Form 1) ******************************************************* Public usuarioid As String _______________________________________________________ Private Sub Image3_Click() Form4.Show End Sub _______________________________________________________ Private Sub Label2_Click() End Sub _______________________________________________________ Private Sub Label5_Click() Dialog1.Show End Sub _______________________________________________________ Private Sub Label6_Click() frmAbout.Show End Sub _______________________________________________________ Private Sub Label7_Click() Dialog.Show End Sub _______________________________________________________ Private Sub Label8_Click() Dim sql As String Dim cuenta_contrato As String Dim pass As Integer id = Text1 sql = "SELECT*From usuario where id = " & "'"&id& "'" 'ADODB.Connection establece una conexión con la base 'de datos. 'ADODB.Recordset una vez establecida la 'conexión con la base de 'datos se puede tener acceso 'a una tabla dentro de la misma Dim rs As New ADODB.Recordset Set rs = New ADODB.Recordset Dim con As New ADODB.Connection Set con = New ADODB.Connection con.Open "Provider=SQLOLEDB; Data Source=UNIMET-70227A1A;Initial Catalog= Registro ;User Id=sa; Password = ;" rs.Open sql, con If rs.BOF = True Then MsgBox "USUARIO DESCONOCIDO",vbCritical,"ERROR" Exit Sub Else pass = rs(1) If pass = Text2.Text Then
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
102
usuarioid = rs(0) Set rs = Nothing Set con = Nothing Form1.Hide Form2.Show Else MsgBox "Clave de acceso incorrecta", vbExclamation, "ERROR" Text1.Text = "" Text2.Text = "" Set rs = Nothing Set con = Nothing End If End If End Sub ******************************************************* Segunda pantalla de SysCore (Form2) ******************************************************* Option Explicit Option Base 1 Public cuentacontratoreg As Integer ' Declaración de los objetos tipo OPCServer Dim WithEvents AnOPCServer As OPCServer Dim WithEvents ConnectedOPCServer As OPCServer Dim ConnectedServerGroup As OPCGroups Dim WithEvents ConnectedGroup As OPCGroup 'Datos relacionados con OPC Item Dim OPCItemCollection As OPCItems Dim OneOPCItem As OPCItem Dim ItemCount As Long Dim OPCItemIDs(16) As String Dim ItemServerHandles() As Long Dim ItemServerErrors() As Long Dim ClientHandles(16) As Long _______________________________________________________ Private Sub Command1_Click() Form2.Hide Form3.Combo1(m).Visible = True Form3.Escribir(m).Visible = True Form3.Conectarse1 Form3.Show End Sub _______________________________________________________ Private Sub Conectarse_Click() Dim sql As String Dim cuenta_contrato As String cuenta_contrato = Text1.Text sql = " SELECT * From Cliente where CuentaContrato = " & cuenta_contrato 'ADODB.Connection establece una conexión con la base de datos. 'ADODB.Recordset una vez establecida la conexión con la base de 'datos se puede tener acceso a una tabla dentro de la misma Dim rs As New ADODB.Recordset Set rs = New ADODB.Recordset Dim con As New ADODB.Connection
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
103
Set con = New ADODB.Connection con.Open "Provider=SQLOLEDB; Data Source = UNIMET-70227A1A; Initial Catalog= Registro ;User Id=sa; Password = ;" rs.Open sql, con If rs.BOF = True Then MsgBox "Número de cuenta contrato inexistente", vbCritical, "ERROR" Exit Sub Else cuentacontratoreg = rs(0) Label9 = rs(1) Label10 = rs(2) Label11 = rs(3) Label12 = rs(4) m = rs(5) Set rs = Nothing Set con = Nothing End If Label3.Visible = True Label4.Visible = True Label5.Visible = True Label6.Visible = True Label7.Visible = True Frame1.Visible = True Shape1.Visible = True command1.Visible = True 'Linkmode retorna o fija el tipo de enlace para una conversación 'DDE y activa la conexión. Se establece en 1 si se desea 'automática. Dim w As Integer For w = 0 To 15 Text2(w).LinkMode = 1 Lectura_comprobacion(w).LinkMode = 1 Next w MsgBox "El sistema está procesando su solicitud", vbExclamation, "Informacion" _______________________________________________________ Private Sub conectarse1_Click() Form2.Hide Form3.Show End Sub _______________________________________________________ Private Sub Form_Load() Dim h As Integer Label3.Visible = False Label4.Visible = False Label5.Visible = False Label6.Visible = False Label7.Visible = False Frame1.Visible = False Shape1.Visible = False command1.Visible = False For h = 0 To 15 Lectura_comprobacion(h).Visible = False
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
104
Next h 'Conexión con el OPCServer 'El Objeto OPCServer tiene un método llamado 'Connect' que permite 'conectarse a un OPC server. El método 'Connect' puede tener dos 'argumentos, un nombre del servidor, y un nombre del Nodo.El 'nombre del Nodo es opcional y no se usa aquí. Al llamar al 'método 'Connect' la aplicación OPC Server abre, si es que ya no 'está corriendo. Esta rutina también abre y añade el grupo y fija 'sus parámetros 'Crear un nuevo objeto tipo OPC Server Set ConnectedOPCServer = New OPCServer
'Intentar conectarse con el servidor OPC. llamado: 'KEPware.KEPServerEx.V4
ConnectedOPCServer.Connect "KEPware.KEPServerEx.V4" 'Adquirir la interfaz de Grupo del servidor Set ConnectedServerGroup = ConnectedOPCServer.OPCGroups 'Activar el estado para el grupo ConnectedServerGroup.DefaultGroupIsActive = True 'Fijar la banda muerta ConnectedServerGroup.DefaultGroupDeadband = 0 'Añadir el grupo "Group1". Set ConnectedGroup = ConnectedServerGroup.Add("Group1") 'Fijar la tasa de refrescamiento en 10 ms ConnectedGroup.UpdateRate = 10 'Marcar este grupo para recibir actualizaciones asíncronas vía
'el evento DataChange. Si no se coloca 'IsSubscribed' en True 'la aplicación VB no recibirá notificaciones tipo DataChange, 'lo cual significa que no parecerá que se está conectado
'adecuadamente al servidor ConnectedGroup.IsSubscribed = True End Sub _______________________________________________________ Private Sub Image1_Click() 'Esta rutina maneja la desconexión del OPC Server. El objeto 'OPCServer tiene un método llamado 'Disconnect'. Al llamarlo en 'un servidor OPC activo, se libera la interfaz entre el servidor y 'la aplicación. Si el servidor OPC se abrió en forma automática, 'al llamar a este método se cerrará también automáticamente. Este 'paso se llevará a cabo después de quitar el grupo y los Items. Set ConnectedServerGroup = Nothing Set ConnectedGroup = Nothing If Not ConnectedOPCServer Is Nothing Then 'Manejo de errores para la función OPC On Error GoTo MostrarErrorDeDesconexion
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
105
'Desconectarse del servidor. ConnectedOPCServer.Disconnect 'Liberar la vieja instancia del servidor OPC, y liberar 'recursos Set ConnectedOPCServer = Nothing End If GoTo Saltar_Error MostrarErrorDeDesconexion: 'Call Despliegue_de_Valores_de_Error("Disconnect", Err.Number) Saltar_Error: End End Sub _______________________________________________________ Private Sub Label8_Click() Dialog1.Show End Sub _______________________________________________________ Private Sub Text2_Change(Index As Integer) If Text2(m).Text = "1" And Lectura_comprobacion(m).Text = "0" Then Text3(0).Text = "DESACTIVADO" ElseIf Text2(m).Text = "0" And Lectura_comprobacion(m).Text = "1" Then Text3(0).Text = "ACTIVADO" Else Text3(0).Text = "DESCONOCIDO" End If End Sub ******************************************************* Tercera pantalla de SysCore (Form3) ******************************************************* Option Explicit Option Base 1 'Declaración de los objetos tipo OPCServer Dim WithEvents AnOPCServer As OPCServer Dim WithEvents ConnectedOPCServer As OPCServer Dim ConnectedServerGroup As OPCGroups Dim WithEvents ConnectedGroup As OPCGroup 'Datos relacionados con OPC Item Dim OPCItemCollection As OPCItems Dim OneOPCItem As OPCItem Dim ItemCount As Long Dim OPCItemIDs(16) As String Dim ItemServerHandles() As Long Dim ItemServerErrors() As Long Dim ClientHandles(16) As Long _______________________________________________________ Private Sub Command1_Click() Call Desconectarse_Click
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
106
Form3.Hide Label3.Visible = False Form2.Label3.Visible = False Form2.Label4.Visible = False Form2.Label5.Visible = False Form2.Label6.Visible = False Form2.Label7.Visible = False Form2.Frame1.Visible = False Form2.Shape1.Visible = False Form2.Command1.Visible = False Form2.Text1 = "" Form2.Show Combo1(m).Visible = False Escribir(m).Visible = False Combo1(m).Enabled = False Escribir(m).Enabled = False End Sub _______________________________________________________ Public Sub Conectarse1() Combo1(m).Visible = True Escribir(m).Visible = True Escribir(m).Enabled = True Label5(m).Visible = True 'Conexión con el OPCServer 'El Objeto OPCServer tiene un método llamado 'Connect' que permite 'conectarse a un OPC server. El método 'Connect' puede tener dos 'argumentos, un nombre del servidor, y un nombre del Nodo.El 'nombre del Nodo es opcional y no se usa aquí. Al llamar al 'método 'Connect' la aplicación OPC Server abre, si es que ya no 'está corriendo. Esta rutina también abre y añade el grupo y fija 'sus parámetros ' Crear un nuevo objeto tipo OPC Server Set ConnectedOPCServer = New OPCServer
'Intentar conectarse con el servidor OPC. llamado: 'KEPware.KEPServerEx.V4
ConnectedOPCServer.Connect "KEPware.KEPServerEx.V4" 'Si se conectó, habilitar botón para desconectarse Desconectarse.Enabled = True 'Adquirir la interfaz de Grupo del servidor Set ConnectedServerGroup = ConnectedOPCServer.OPCGroups 'Activar el estado para el grupo ConnectedServerGroup.DefaultGroupIsActive = True 'Fijar la banda muerta ConnectedServerGroup.DefaultGroupDeadband = 0 'Añadir el grupo "Group1". Set ConnectedGroup = ConnectedServerGroup.Add("Group1") 'Fijar la tasa de refrescamiento en 10 ms ConnectedGroup.UpdateRate = 10
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
107
'Marcar este grupo para recibir actualizaciones asíncronas vía
'el evento DataChange. Si no se coloca 'IsSubscribed' en True 'la aplicación VB no recibirá notificaciones tipo DataChange, 'lo cual significa que no parecerá que se está conectado
'adecuadamente al servidor ConnectedGroup.IsSubscribed = True
' Esta subrutina añade Items al grupo ya creado. ' El objeto OPCItems tiene métodos y propiedades ' que permiten añadir items al grupo. ' Captura de errores para la función OPC On Error GoTo MostrarErrorDeAñadirItem
'En esta aplicación se intentará añadir uno de 16 items al 'grupo
ItemCount = 16 Dim i As Integer Dim cadena As String
'Cargar el nombre del ítem OPC requerido y construir la 'lista de ClientHandles. Aquí hay que poner código 'para ver qué ítem se carga cadena = m i = Val(cadena)
'Cargar el nombre del item en el grupo OPCItemIDs(i + 1) = Item(i).Text 'Se le suministra al servidor OPC el client handle.
'El servidor usará esos handles retornándolos en el evento 'Data 'Change'.El client handle se utiliza como una 'clave para enlazar 'cada valor que retorna el servidor a algún elemento en la 'aplicación ClientHandles(i + 1) = i 'Establecer una conexión a la interfaz OPC del ítem del grupo 'conectado Set OPCItemCollection = ConnectedGroup.OPCItems 'Al poner en "1" la propiedad 'Default Active' el item añadido al 'grupo se establece en modo activado. Si un grupo está activado, 'pero el ítem está desactivado, entonces el ítem no recibirá 'datos. OPCItemCollection.DefaultIsActive = True OPCItemCollection.AddItems ItemCount, OPCItemIDs, ClientHandles, ItemServerHandles, ItemServerErrors 'Estas instrucciones chequean posibles errores generados en el 'intento de generar el ítem. Si se detecta un error, se desactivan 'los controles asociados al ítem. Dim ItemOK As Boolean
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
108
ItemOK = False If ItemServerErrors(i + 1) = 0 Then
'Si el item se añadió exitosamente, dejarlo usar. ValorDelItemaEscribir(i).Enabled = True Escribir(m).Visible = True Combo1(m).Visible = True Escribir(m).Enabled = True ItemOK = True Else 'Si el handle está errado, marcarlo como vacío ItemServerHandles(i + 1) = 0 ValorDelItemaEscribir(i).Enabled = False Escribir(m).Enabled = False Combo1(m).Enabled = False End If GoTo SaltarEerrorAñadirItems MostrarErrorDeAñadirItem: Call Despliegue_de_Valores_de_Error("Añadir Items OPC", Err.Number) SaltarEerrorAñadirItems: End Sub _______________________________________________________ Private Sub Desconectarse_Click() 'Esta rutina maneja la desconexión del OPC Server. El objeto 'OPCServer tiene un método llamado 'Disconnect'. Al llamarlo en 'un servidor OPC activo, se libera la interfaz entre el servidor y 'la aplicación. Si el servidor OPC se abrió en forma automática, 'al llamar a este método se cerrará también automáticamente. Este 'paso se llevará a cabo después de quitar el grupo y los Items. If Not ConnectedOPCServer Is Nothing Then 'Manejo de errores para la función OPC On Error GoTo MostrarErrorDeDesconexion 'Desconectarse del servidor. ConnectedOPCServer.Disconnect 'Liberar la vieja instancia del servidor OPC, y liberar 'recursos Set ConnectedOPCServer = Nothing Combo1(m).Enabled = False Escribir(m).Enabled = False 'Una vez cerrado el servidor, no permitir desconectarse Desconectarse.Enabled = False End If GoTo Saltar_Error MostrarErrorDeDesconexion: Call Despliegue_de_Valores_de_Error("Disconnect", Err.Number) Saltar_Error: End Sub
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
109
_______________________________________________________ Private Sub Escribir_Click(Index As Integer) Dim Resp As Integer Dim valor As Integer Resp = MsgBox("Usted va a cambiar el estado del sistema" & vbCrLf & "¿Desea continuar?", vbQuestion + vbYesNo + vbDefaultButton2, "Advertencia") If Resp = 6 Then valor = Combo1(m).ListIndex 'Esta subrutina maneja la escritura de un solo valor al servidor 'usando el método 'SyncWrite'. El Item a escribir debe formar 'parte del grupo OPC añadido, y se debe tener el ItemServerHandle 'para ese Item. 'Captura de errores para la función OPC On Error GoTo MostrarErrorEscrituraSincronica 'Escribir sólo 1 item ItemCount = 1 'Crear variables para almacenar valor a enviar. Dim SyncItemValues(1) As Variant Dim SyncItemServerHandles(1) As Long Dim SyncItemServerErrors() As Long 'Obtener el handle del servidor para el item deseado. 'Los handles del servidor se obtuvieron en la rutina de
'añadir items. SyncItemServerHandles(1) = ItemServerHandles(Index + 1) ' Cargar el valor a escribir SyncItemValues(1) = Val(Combo1(m).ItemData(valor)) ' Invocar operación de escritura sincrónica. ConnectedGroup.SyncWrite ItemCount, SyncItemServerHandles, SyncItemValues, SyncItemServerErrors GoTo SaltarErrorEscrituraSincronica MostrarErrorEscrituraSincronica: Call Despliegue_de_Valores_de_Error("Escritura Sync en OPC", Err.Number) SaltarErrorEscrituraSincronica: Call Escribir_RegUsuario If Combo1(m).ItemData(valor) = "1" Then MsgBox "El sistema está procesando su solicitud", vbExclamation, "Informacion" If Lectura_comprobacion(m).Text = "0" Then MsgBox "El sistema se DESCONECTÓ satisfactoriamente", vbExclamation, "Informacion" Else MsgBox "Existe un error en la señal de comprobacion de contactor cerrado y fue imposible realizar su cambio", vbExclamation, "Advertencia"
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
110
End If Else MsgBox "El sistema está procesando su solicitud", vbExclamation, "Informacion" If Lectura_comprobacion(m).Text = "1" Then MsgBox "El sistema se CONECTÓ satisfactoriamente", vbExclamation, "Informacion" Else MsgBox "Su cambio fue realizado pero existe un error en la señal de comprobacion de contactor cerrado", vbExclamation, "Advertencia" End If End If Else Exit Sub End If End Sub _______________________________________________________ Private Sub Escribir_RegUsuario() Dim sql As String Dim Escribir If Lectura_comprobacion(m).Text = "1" Then Escribir = "Desconecto" Else Escribir = "Conecto" End If 'ADODB.Connection establece una conexión con la base de datos. 'ADODB.Recordset una vez establecida la conexión con la base de 'datos se puede tener acceso a una tabla dentro de la misma. Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset Dim con As ADODB.Connection Set con = New ADODB.Connection rs.CursorLocation = adUseClient sql = "INSERT INTO Modificacion_Registro (id, estado, fecha,CuentaContrato) VALUES ('" & Form1.usuarioid & "','" & Escribir & "','" & DateTime.Now() & "','" & Form2.cuentacontratoreg & "')" con.Open "Provider=SQLOLEDB; Data Source = UNIMET-70227A1A; Initial Catalog= Registro;User Id=sa; Password = ;" rs.Open sql, con Set rs = Nothing Set con = Nothing End Sub _______________________________________________________ Private Sub Form_Load() Frame2.Enabled = False Desconectarse.Visible = False 'Linkmode retorna o fija el tipo de enlace para una conversacion 'DDE y activa la conexión. Se establece en 1 si se desea 'automática. Dim w As Integer For w = 0 To 15 Lectura_comprobacion(w).LinkMode = 1 Next w Dim j As Integer For j = 0 To 15 Combo1(j).AddItem ("Conectar")
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
111
Combo1(j).AddItem ("Desconectar") Combo1(j).ItemData(0) = 0 Combo1(j).ItemData(1) = 1 Combo1(j).Visible = False Combo1(j).Enabled = False Lectura_comprobacion(j).Visible = False Escribir(j).Visible = False Label5(j).Visible = False Next j Combo1(m).Visible = True Escribir(m).Visible = False Label5(m).Visible = True 'Deshabilitar el botón para desconectarse Desconectarse.Enabled = False 'Deshabilitar todas las cajas de texto con los ítems Dim i As Integer For i = 0 To 15 Item(i).Visible = False Label5(i).Visible = False ValorDeItemOPC(i).Visible = False Escribir(i).Visible = False ValorDelItemaEscribir(i).Visible = False CalidadDelItema(i).Visible = False Next i Label5(m).Visible = True Escribir(m).Visible = True ValorDelItemaEscribir(m).Visible = True CalidadDelItema(m).Visible = True End Sub 'Al cerrarse la aplicación, asegurarse que todo termine 'correctamente Private Sub Form_Terminate() Call Salir_Click End Sub Private Sub Label1_Click() Dialog1.Show End Sub _______________________________________________________ Private Sub Salir_Click() 'Estas llamadas desactivan los OPC Items, el grupo y llama a la 'rutina desconectar 'Liberar la interfaz del grupo, y permitir al servidor liberar 'recursos Set ConnectedServerGroup = Nothing Set ConnectedGroup = Nothing Call Desconectarse_Click End End Sub ' Maneja despliegue de errores de tipo OPC/COM/VB capturados en los procesos de excepción Sub Despliegue_de_Valores_de_Error(OPC_Function As String, ErrorCode As Long) Dim Response Dim ErrorDisplay As String
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
112
ErrorDisplay = "La función OPC '" + OPC_Function + "' retornó un error " + Str(ErrorCode) + " o Hexadecimal 0x" + Hex(ErrorCode) Response = MsgBox(ErrorDisplay, vbOKOnly, "Error de función OPC") End Sub _______________________________________________________ ' Esta subrutina maneja el evento 'DataChange' que retorna data 'que ha cambiado en el servidor. Este call back debe utilizarse 'exclusivamente para recibir datos. El evento 'Data Change' 'permite ver cómo se usa el "ClientHandles" que se suministró 'al OPC Server cuando se añadieron Items. Como se ve aquí, el 'servidor retorna el 'ClientHandles' como un arreglo. 'Al usar el 'ClientHandles' que retorna aquí se puede determinar 'qué datos han cambiado y a dónde debe ir la data en la 'aplicación. Aquí el 'ClientHandles' son los números de índice de 'cada ítem añadido al grupo. Sub ConnectedGroup_DataChange(ByVal TransactionID As Long, ByVal NumeroDeItems As Long, ClientHandles() As Long, ValoresItems() As Variant, Qualities() As Long, TimeStamps() As Date) 'A este suceso lo llama la interfaz OPC, y por lo tanto no se 'manejan errores aquí. Se usa el arreglo 'Clienthandles' que 'retorna el servidor para 'extraer el índice del control para 'actualizar y cargar el valor. ValorDeItemOPC(ClientHandles(1)).Text = ValoresItems(1) 'Chequear la calidad de cada ítem que retorna. 'Si Qualities retorna C0 (hexa), entonces la calidad es buena 'De lo contrario, retorna otro número que corresponde a 'otro tipo de calidad. If Qualities(1) And &HC0 Then CalidadDelItema(ClientHandles(1)).Text = "Buena" Combo1(m).Enabled = True Frame2.Enabled = True Else CalidadDelItema(ClientHandles(1)).Text = Qualities(1) Label3.Visible = True End If End Sub
Sistema de corte y reconexión a distancia del servicio eléctrico residencial usando tecnología PLC-BPL
113
APÉNDICE D
Funciones de los leds frontales del CP 243-1
LED Color Significado Rojo continuo Error de sistema:
Se enciende cuando ocurre un
error
SF
Rojo titilante Error de sistema: Titila (aprox. Cada
segundo) si la configuración es
fallida y un servidor BOOTP no se
encuentra. LINK Verde continuo Conexión vía la
interfaz RJ45: Se ha establecido la conexión Ethernet