• No se han encontrado resultados

DISENO DE SOFTWARE EN VISUAL BASIC PARA MONITOREO DE CONTROLADORES DIGITALES POR OPC

N/A
N/A
Protected

Academic year: 2017

Share "DISENO DE SOFTWARE EN VISUAL BASIC PARA MONITOREO DE CONTROLADORES DIGITALES POR OPC"

Copied!
128
0
0

Texto completo

(1)

T

E

S

I

S

QUE PARA OBTENER EL TITULO DE

INGENIERO

EN

CONTROL

Y

AUTOMATIZACIÓN.

P R E S E N T A N :

ANGELES TANIA JUÁREZ SÁNCHEZ

FERNANDO

OLIVERA

CAUDILLO

LUIS

ALFREDO

MUÑOZ

SALAS.

JAJASJ

ESCUELA SUPERIOR DE INGENIERÍA

MECANICA Y ELÉCTRICA

DISEÑO DE SOFTWARE EN VISUAL BASIC PARA

MONITOREO DE CONTROLADORES DIGITALES POR

OPC

ASESOR: ING. RICARDO HURTADO RANGEL

(2)
(3)

2

Al Ingeniero Ricardo Hurtado Rangel nuestro asesor de tesis, por confiar en nosotros darnos su

apoyo y conocimiento y por su compromiso desinteresado a lo largo de este proyecto.

Al Ingeniero José Luis Arias Ortiz por todas las oportunidades, facilidades, consejos y experiencia

gracias a las cuales he concluido de manera exitosa una etapa más en mi vida.

Son muchas las personas a las que me gustaría agradecer su cariño, apoyo,

ánimo y compañía en las diferentes etapas de mi vida. Algunas están aquí

conmigo y otras en mis recuerdos y en mi corazón. Sin importar en donde

estén quiero darle las gracias por formar parte de mí, por todo lo que han

brindado y por todas sus bendiciones

.

A mi MADRE por mostrarme el valor de la familia, porque gracias a sus cuidados, atenciones y

consejos me han permitido culminar un ciclo más en mi vida, Mami tu esfuerzo, se convirtió en tu

triunfo y el mío, TE AMO.

A mi PADRE por su ejemplo, apoyo económico y emocional, por las noches de desvelo y los

consejos en todos mis proyectos porque me has mostrado que nos podemos levantar de las

adversidades por más fuertes que sean, porque gracias a tu esfuerzo nos permitiste tener a mi

madre tan cerca de nosotros.

A mi HERMANO por la compañía y apoyo que me has brindado en momentos difíciles, por las risas,

consejos, por ser partícipe de mi vida gracias Enano porque sé que siempre contaré contigo.

A mi ABUELITA IRENE por brindarme su cariño y dejarme conocer un cariño diferente.

A ALE por su apoyo y comprensión por compartir mis alegrías y tristezas y enseñarme un cariño

sincero, desinteresado por su tolerancia y por persistir y no dejar que el cariño que nos tenemos se

acabe.

A todos, mis tíos, primos y sobrinos que han estado en este gran recorrido de mi crecimiento como

persona y en la culminación de mis estudios.

Mi admiración, gratitud y reconocimiento a mis compañeros de tesis Fernando y Luis quienes

estuvieron conmigo durante toda la carrera y a lo largo del desarrollo de este proyecto que ahora

culminamos, brindándome su amistad y apoyo.

(4)

3 A mis padres como un humilde homenaje por el apoyo y comprensión que siempre me han brindado, que con su sacrificio guiaron mi camino e hicieron posible llegar a esta meta.

A mis hermanos que una vez que he seguido sus consejos y apoyo moral he podido llevar conmigo siempre su ejemplo de superación en la vida y crear un camino lleno de oportunidades.

A mis amigos que con su gran apoyo y comprensión me han podido sacar de apuros y he tenido una gran convivencia agradable.

Al Instituto Politécnico Nacional, en particular a la Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Zacatenco, que ha sido una gran escuela que me ha proporcionado los conocimientos necesarios para ser útil en la sociedad y los maestros agradeciéndoles las atenciones que me presentaron y sus desinteresados consejos.

(5)

4 Al término de esta etapa de mi vida, quiero expresar un profundo agradecimiento a quienes con su ayuda y comprensión me alentaron a terminar mi carrera profesional. A mis padres, quienes sin escatimar esfuerzo alguno, han sacrificado gran parte de su vida

para formarme y educarme. Por esto y más… Gracias.

Así mismo agradezco a los maestros y compañeros que me ayudaron a entender las bases de teoría fundamentales que permiten la solución de problemas y al mismo tiempo son la respuesta a preguntas planteadas a lo largo de la historia.

(6)

5

CONTENIDO

Glosario ... 10

Objetivo General. ... 13

Objetivos Específicos ... 13

Resumen ... 14

Introducción. ... 15

Problema ... 16

Alcance. ... 17

Justificación. ... 18

Aportaciones. ... 20

Estructura De La Tesis. ... 21

I. “TECNOLOGÍA DE COMUNICACIÓN ENTRE APLICACIONES EMPLEADAS EN LA SUPERVISIÓN DE PROCESOS” ... 22

1.1 Activex. ... 23

1.1.1 En El Cliente. ... 23

1.1.2 En El Servidor. ... 23

1.1.3 Guiones ActiveX. ... 23

1.1.4 Ventajas, Desventajas Y Riesgos ... 24

1.2 Dynamic Data Exchange (DDE) (Intercambio Dinámico de Datos). ... 25

1.2.1 Utilización DDE ... 25

1.2.2 Windows, Cliente, Servidor. ... 26

1.2.3 Protocolo. ... 26

1.2.4 Elementos De Conversación. ... 26

1.3 Open Data Base Conectivity (ODBC) (Conectividad De Base De Datos Abierta). .. 27

1.3.1 La Interfaz. ... 29

1.3.2 ODBC define dos tipos de drivers. ... 30

1.3.3 Estructura Del ODBC. ... 31

1.4 Protocolos De Comunicación. ... 31

1.4.1 Componentes de las Redes Industriales ... 32

1.4.2 RS-232. ... 33

1.4.3 Ethernet. ... 35

1.5 Tecnología OPC. ... 37

(7)

6

1.5.2 OLE FOR PROCESS CONTROL (OPC) ... 38

1.5.3 Problemática y solución en la comunicación driver / aplicación. ... 42

1.5.4 Arquitectura. ... 43

1.5.5 Tipos de datos y características en OPC. ... 45

1.5.6 Funcionamiento de OPC. ... 46

II. “HARDWARE Y SOFTWARE PARA SISTEMAS DE CONTROL DIGITAL” ... 47

2. Evolucion de los sistemas de control ... 48

2.1. Controlador lógico programable “PLC” ... 49

2.1.1. Antecedentes. ... 49

2.1.2. ¿Qué es un controlador lógico programable? ... 50

2.1.3. Arquitectura de un plc convencional ... 50

2.1.4. Ciclo de trabajo del PLC ... 51

2.1.5 Ventajas del PLC ... 52

2.2 Sistema de Control Distribuido (SCD). ... 54

2.2.1. Antecedentes Históricos. ... 54

2.2.2. Arquitectura típica del DCS. ... 54

2.2.3. Componentes de hardware (equipos). ... 57

2.3. SCADA (supervisory control and data acquisition) ... 59

2.3.1. Origen y evolución. ... 59

2.3.2. El sistema SCADA. ... 61

2.3.3 Objetivos de un SCADA. ... 62

2.3.5. El control a distancia. ... 63

2.4 Visual Basic 6.0. ... 64

2.4.1 El entorno de Programación Visual Basic 6.0 ... 64

2.4.2 Ventajas ... 66

2.5 RSLOGIX 5000 ... 66

III. “DISEÑO Y PUESTA EN MARCHA DEL SOFTWARE DE SUPERVISIÓN COMUNICADO MEDIANTE TECNOLOGÍA OPC” ... 67

3.1 Herramientas a utilizar ... 68

3.2 Descripción del Proceso a conrolar ... 69

3.2.1 Diagrama de Tuberias y Instrumentación ... 71

3.3 Estrategia de Control ... 72

3.3.1 Control Autómatico ... 72

3.4 Lógica demostrativa para el control de Proceso ... 73

(8)

7

3.4.2 Diagrama de escalera en RSlinks 5000. ... 77

3.5 Diseño de la interfaz Gráfica para el monitoreo y control de nivel. ... 78

3.5.1 Estructura ... 79

3.5.2 Código programado ... 85

3.5.3 Algoritmo integrado a la ihm para la conectividad por opc ... 87

3.6 Puesta en marcha del sistema ... 92

3.6.1 Funcionamiento en modo manual ... 92

3.6.1 Funcionamiento en modo automático ... 99

IV. “ANÁLISIS COSTO BENEFICIO DEL PROYECTO” ... 106

4. Análisis Costo – Beneficio... 107

4.1 Tiempos En la Realización Del Proyecto ... 108

4.2 Comparación con un Sistema SCADA Comercial. ... 109

Conclusiones Y Recomendaciones... 111

Bibliografia ... 112

Apéndice A. Diagrama Escalera Rslogix5000. ... 114

Apéndice B. Código Fuente De La Interfaces Y Enlace Opc (Visual Basic). ... 118

Apéndice C. Diagrama De Tuberías E Instrumentación. (Dti). ... 126

(9)

8

Contenido de Figuras

Figura 1. Tecnologías de software _______________________________________________________ 22

Figura 2. Aplicación ODBC. _____________________________________________________________ 29

Figura 3. Ejemplos de RED. ____________________________________________________________ 30

Figura 4. Transmisión de datos. _________________________________________________________ 33

Figura 5.Integración de datos en OPC. ___________________________________________________ 39

Figura 6. Sistema abierto con servidores OPC. ____________________________________________ 40

Figura 7. Diagrama cliente-servidor OPC. ________________________________________________ 40

Figura 8. Organización de los datos en un servidor OPC. ___________________________________ 41

Figura 9. Problema OPC _______________________________________________________________ 43

Figura 10. Solución OPC. _______________________________________________________________ 43

Figura 11. Arquitectura Cliente / Servidor. ________________________________________________ 44

Figura 12. “n” de grupos. _______________________________________________________________ 44

Figura 13. Diseño de un servidor OPC. ___________________________________________________ 45

Figura 14. Arquitectura de un PLC convencional. __________________________________________ 51

Figura 15. Ciclo de Trabajo del PLC. _____________________________________________________ 52

Figura 16. Dimensiones del PLC CompactLogix LE32E ____________________________________ 53

Figura 17. División de los sistemas de control avanzado ___________________________________ 54

Figura 18. Principales componentes de un SCD __________________________________________ 56

Figura 19. Medida a distancia. ___________________________________________________________ 63

Figura 20. Entorno de programación de visual Basic _______________________________________ 65

Figura 21. Ejemplo de control en una caldera _____________________________________________ 70

Figura 22. DTI para el control de nivel en la caldera _______________________________________ 71

Figura 23. Ventana principal ____________________________________________________________ 82

Figura 24.Ventana para selección de modo de control _____________________________________ 83

Figura 25.Ventana de válvula de llenado _________________________________________________ 84

Figura 26.Ventana de medidor de flujo ___________________________________________________ 85

Figura 27. Configuración del driver ______________________________________________________ 88

Figura 28. Configuración de un OPC Topic _______________________________________________ 89

Figura 29. Vínculos DDE/OPC de las variables en de control _______________________________ 90

Figura 30. Estado inicial de la interfaz ____________________________________________________ 93

Figura 31. Estado inicial del controlador de proceso _______________________________________ 94

Figura 32. Ventana de selección de modo de control. ______________________________________ 95

Figura 33. Estado inicial Del mando de la válvula __________________________________________ 95

Figura 34. Válvula FV-16 abierta manualmente____________________________________________ 96

Figura 35. Demanda de vapor ___________________________________________________________ 96

Figura 36. Forzado de cierre de la válvula ________________________________________________ 97

Figura 37. Exportación de las variables de proceso a Excel _________________________________ 98

Figura 38. Forzado del apagado de los quemadores _______________________________________ 99

Figura 39. Activación del modo automático de control _____________________________________ 100

Figura 40. Aplicación de la nueva histérisis ______________________________________________ 100

Figura 41. Nivel bajo en la caldera ______________________________________________________ 101

Figura 42. Límite superior establecido ___________________________________________________ 102

Figura 43. Nivel disminuyendo en modo automático ______________________________________ 102

Figura 44. Límite inferior establecido ____________________________________________________ 103

Figura 45. Vapor de salida en modo automático __________________________________________ 103

Figura 46. Mando de la válvula durante modo automático _________________________________ 104

Figura 47. Habilitación de envío de datos a Excel ________________________________________ 105

(10)

9

[image:10.612.70.551.65.302.2]

Contenido de Tablas

(11)

10

GLOSARIO

ASP: Active Server Pages es una tecnología de

Microsoft

del tipo "lado del servidor" para

páginas web

generadas

dinámicamente

.

Choque térmico: un colapso térmico o choque térmico se refiere al rompimiento de algún material al sufrir un cambio drástico de temperatura, es cuando un material sólido se quiebra al someterse a un brusco aumento o descenso de la temperatura.

COM: Modelo de objetos componentes.

CPU: Unidad de control de Procesos.

DBMS: Sistemas de Gestión de Bases de Datos.

DCOM: Modelos de objetos componentes Distribuido.

DDE: Intercambio Dinámico de Datos.

DLL: Librerías de unión dinámico.

DTI: Diagrama de Tuberías e Instrumentación.

Golpe de ariete: El golpe de ariete es una gran fuerza destructiva que puede presentarse en cualquier sistema de bombeo, cuando en este el caudal (gasto) cambia repentinamente de un momento a otro cualquiera que sea la causa.

(12)

11

Inteligible: Que puede ser comprendido.

LAN: Red de Área Local.

NEMA: Asociación Nacional de Fabricantes de Normas Eléctricas.

ODBC: Conectividad de Base de Datos Abierta.

Ofimático: Todo lo relacionado a oficina.

OLE: Vinculación e Inserción de Objetos.

OPC: OLE para control de procesos.

PLC: Controlador Lógico Programable.

Polimorfismo: Propiedad de ciertos cuerpos que pueden cambiar de forma sin variar su naturaleza.

SCADA: Sistema de Registro de datos y control de supervisión.

SCAP: Sistema de Control Avanzado de Procesos.

SCD: Sistema de Control Distribuido.

(13)

12

Sistema Operativo Monopuesto: Decimos que es monopuesto o monousuario cuando estamos ante un modo de ejecución que solo admite un usuario en el ordenador, o lo que es lo mismo un usuario por cada sistema operativo instalado.

SQL: Lenguaje de consulta estructurado.

TCP/IP: Transmisión Control Protocol / Internet Protocol.

Telemetría: Sistema de medida de magnitudes físicas en lugares difícilmente accesibles, que permite transmitir el resultado de la medición a un observador lejano

(14)

13

OBJETIVO GENERAL.

Diseñar software de aplicación en Visual Basic para adquisición de datos de controladores digitales utilizando tecnología OPC.

OBJETIVOS ESPECÍFICOS

- Explicar las diferentes tecnología de comunicación entre aplicaciones empleadas en la supervisión de procesos, como son: Active x, DDE (Dynamic Data Exchange), ODBC (Open Database Conectivity), OPC (OLE for process control), para la obtención de adquisición de datos mediante estas tecnologías.

- Presentar el hardware y software para sistemas de control digital abordando conceptos de Controlador Lógico Programable (PLC), Sistema de control distribuido (SCD), Sistemas de Adquisición de Datos (SCADA), y el lenguaje de programación Visual Basic. Herramientas que serán útiles para la realización de esta tesis.

- Diseñar el desarrollo de un software capaz de adquirir datos desde un controlador digital Compactlogix Allen-Bradley por medio de OPC, así como la muestra de una interfaz gráfica en Visual Basic a través de imágenes dinámicas que permiten la visualización de los parámetros en el controlador encargado de mantener el adecuado nivel de agua una caldera.

(15)

14

RESUMEN

En esta tesis se muestra el diseño de un software para adquirir datos desde un controlador digital CompactLogix Allen Bradley utilizando tecnología OPC (OLE para control de procesos), así como el diseño de una interfaz gráfica en Visual Basic, que permite a través de imágenes dinámicas la visualización de los parámetros del controlador para el control, adquisición y supervisión de datos, encargado de tener el nivel apropiado de una caldera.

La comunicación se realiza a través de Ethernet ya que brinda una gran velocidad en comparación con la RS-232, al utilizarla se logro un monitoreo más exacto y con mayor claridad de animación haciéndolo más eficiente.

(16)

15

INTRODUCCIÓN.

ANTECEDENTES

El intercambio de información entre aplicaciones y computadoras comienza con Microsoft Windows y con otro nombre: DDE. La tecnología de intercambio Dinámico de Datos (DDE. Dynamic Data Exchange ) permite que cualquier aplicación, basada en Windows, pueda intercambiar información con otra aplicación diferente (por ejemplo, un sistema de visualización y una hoja de Cálculo). [14]

Wonderware Corporation, el primer proveedor de un sistema Scada basado en Windows, ya utilizó entonces DDE como estándar de intercambio de datos de control de aplicaciones. Lo mejoró con FastDDE, que ya permitía el intercambio de bloques de Información, manteniéndose en el ranking de las comunicaciones por muchos años. Rockwell Software hizo algo parecido con AdvanceDDE. Estas dos posibilidades son accesibles mediante paquetes de herramientas proporcionados por los proveedores, pero las especificaciones de funcionamiento son propietarias y no son del dominio público.

OLE 1.0 aparece con las versiones 2 y 3 de Microsoft Windows. Por aquel entonces los ordenadores aún tenían que superar la barrera de los 640Kb de memoria RAM, y lo de hacer funcionar más de una cosa al mismo tiempo aún daba dolores de cabeza.

(17)

16

PROBLEMA

¿Para qué realizar un software de adquisición de datos mediante OPC?

En un sistema de automatización hay múltiples elementos de control y monitorización, cada uno con su protocolo de comunicaciones específico (modbus, AS-i, Ethernet, RS232, etc.) y con un sistema operativo propio tal como DOS, UNIX, Linux o Windows, con sus propias características. Cada conexión significa un programa exclusivo dedicado al diálogo entre el controlador y la interfaz.

Cada fabricante proporciona este programa controlador de comunicaciones o driver que comunica su producto con un equipo determinado. El acceso a los datos se hace de forma oscura, sin acceso por parte del usuario. La interfaz se ocupa de convertir los datos del equipo en datos útiles para el sistema de control o captación.

(18)

17

ALCANCE.

El software desarrollado en Visual Basic para integrar y gestionar datos como se hace en un SCADA, tiene los siguientes alcances.

 Se programo en el controlador digital la lógica necesaria para la simulación de control de nivel de una caldera.

 Se desarrollaron los componentes de la interfaz con características como animación mediante componentes active-x, posibilidad de transferir información a Excel.

 Dentro de la interfaz se integro el código de programación necesario para la comunicación, esto mediante el desarrollo de la estructura OPC.

(19)

18

JUSTIFICACIÓN.

En los últimos años se han producido una serie de cambios significativos en tecnologías claves en el campo del control. Estas se refieren sobre todo a la disponibilidad directa de las mediciones de campo a través de buses de campo y sistemas de control distribuido, algoritmos de control, hardware avanzado, etc.

Todo esto hace necesario que el intercambio de datos de los dispositivos de campo sea cada día indispensable, hasta ahora cuando una aplicación requería el acceso a un elemento de control, se necesitaba el desarrollo de controladores o drivers de forma independiente o específica lo que implicaba:

 Duplicación de esfuerzos: todos los programas necesitan un driver para un determinado hardware.

 Falta de consistencia entre drivers: hay características del hardware no soportadas por todos los drivers.

 Cambios en el hardware: hacen que los drivers queden obsoletos.

 Conflictos de acceso: generalmente, dos programas no pueden acceder simultáneamente al mismo dispositivo puesto que poseen drivers independientes. Los fabricantes de hardware no pueden desarrollar un driver eficiente utilizable por todos los clientes debido a las diferencias de protocolos entre clientes.

La tecnología OPC (Object Linking and Embedding (OLE) for process control) permite facilitar un mecanismo para extraer datos de una fuente y comunicarlos a cualquier aplicación cliente de manera estándar, además los servidores OPC tiene una fácil integración en aplicaciones en Visual Basic, Excel, Access, etc. No necesitan herramientas especiales para su desarrollo. Por todo ello la tecnología OPC nos ofrece las siguientes ventajas:

 Reducción de tiempo y costos de integración de sistemas más bajos

 Facilidad de integración (conectividad simplificada)

 Facilidad de conexión e interoperabilidad de aplicaciones

 Eliminación de bloqueos propietarios

(20)

19

 Facilidad de uso

 Menores costos de mantenimiento

 No obsolescencia

El objetivo de desarrollar un software en Visual Basic usando la tecnología OPC es crear una interfazs, de modo que sea un programa cliente que se pueda conectar con cualquier OPC-server. Visual Basic es actualmente el lenguaje de programación utilizado en todo el mundo debido a las ventajas que éste ofrece tales como economía, fácil aprendizaje facilitando una interfaz visual al mismo tiempo puede ser capaz de crear potentes aplicaciones a través de su lenguaje.

Desarrollar una aplicación OPC por medio de Visual Basic permitirá crear infinidad de aplicaciones con una única licencia sin limitaciones en el número de variables.

La intención de su desarrollo no es por ningún motivo competir con un software SCADA sino crear otra alternativa que permita establecer comunicación a cualquier aplicación cliente de manera sencilla y mucho menos costosa ya que comúnmente los sistemas SCADA son demasiado grandes, soliendo utilizar miles de etiquetas (entradas /salidas), haciéndolo un software costoso, además de ser sobrado para algunos procesos que solo requieren de escasas aplicaciones.

(21)

20

APORTACIONES.

Este trabajo presenta una aplicación de un sistema como lo es OPC, se presenta el diseño de un programa cliente mediante el lenguaje de programación Visual Basic, la aplicación obtendrá información de los dispositivos de control, al ser capaz de interrogar a los servidores para obtener los datos solicitados por el usuario mediante la interfaz gráfica (PC).

Al tener en nuestro sistema de control una interfazs estándar gracias a los servidores OPC, se podrá obtener información de cualquier controlador digital (Siemens, Moller, Allen Bradley, Mitsubishi, etc.) que cuente con un servidor.

El diseño de este software está orientado a mostrar de manera práctica una solución al problema de la falta de interoperabilidad entre dispositivos de control, aunque el grado de estandarización actual no permite hablar de sistemas totalmente abiertos ya que un sistema abierto debe permitir al usuario unir en una misma aplicación los componentes de

(22)

21

ESTRUCTURA DE LA TESIS.

El presente trabajo escrito está estructurado en 4 capítulos, logrando así una mejor organización de la información. Una breve descripción del contenido de los mismos se detalla a continuación.

Capítulo I. Trata sobre las diferentes tecnologías basadas en la plataforma Microsoft Windows, mostrando la teoría necesaria para el entendimiento del trabajo aquí desarrollado.

Capítulo II. Se dan los diferentes hardware y software que se encuentran en la aplicación de sistemas de control, mostrando las herramientas que se pueden utilizar en el proyecto desplegado.

Capítulo III. Se desarrolla de una forma muy completa cada uno de los pasos que se llevaron a cabo para la realización de la Interfaz Hombre Máquina y su descripción de funcionamiento, mostrando los elementos constitutivos de cada pantalla y cada variable que se conjunta.

Capítulo IV. Trata sobre los costos del proyecto. Aquí se desglosan todas las partidas necesarias para la elaboración del costo total del proyecto, además de una comparación de un sistema completo con respecto a un sistema desarrollado para una aplicación de un solo proceso.

(23)

22

I. “TECNOLOGÍA DE COMUNICACIÓN ENTRE APLICACIONES EMPLEADAS EN LA SUPERVISIÓN DE PROCESOS”

[image:23.612.159.464.444.688.2]

En este capítulo se hablara sobre las diferentes tecnologías de software que existen para la supervisión de procesos tales como lo son: ACTIVEX, DDE (DYNAMIC DATA EXCHANGE), ODBC (OPEN DATABASE CONECTIVITY), LOS PROTOCOLOS DE COMUNICACIÓN, OPC (OLE FOR PROCESS CONTROL), como se muestra en la figura No.1.

(24)

23 A continuación se desarrollan los conceptos de cada uno de estos dando un panorama generalizado. Posteriormente se profundiza en la tecnología OPC dando sus complementos y funcionamientos.

1.1 ACTIVEX.

ActiveX es un marco para definir los componentes de software reutilizables (conocidos como controles) que realizan una función en particular o un sistema de funciones en Microsoft Windows de una manera que sea independiente del lenguaje de programación usado para ejecutarlos.

ActiveX es una tecnología de Microsoft para el desarrollo de páginas dinámicas. Tiene presencia en la programación del lado del servidor y del lado del cliente, aunque existan diferencias en el uso en cada uno de esos dos casos.

1.1.1 EN EL CLIENTE.

Son pequeños programas que se pueden incluir dentro de páginas web y sirven para realizar acciones de diversa índole. Por ejemplo hay controles ActiveX para mostrar un calendario, para implementar un sistema de FTP, etc.´

Los controles ActiveX son particulares de Internet Explorer.

1.1.2 EN EL SERVIDOR.

También existen controles ActiveX del servidor y la gente que conozca ASP seguro que los utiliza ya, aunque sea sin darse cuenta.

Por ejemplo, cuando realizamos una conexión con una base de datos, estamos utilizando un control ActiveX del servidor.

1.1.3 GUIONES ACTIVEX.

Un guión es una secuencia de instrucciones que se van ejecutando secuencialmente. Si adaptamos esta definición para los guiones ActiveX, se entiende como un mecanismo para enlazar rápidamente un conjunto diverso de componentes.

(25)

24  El host es la aplicación que crea el motor. Ejemplos de hosts son Internet Explorer

y FrontPage.

 El motor procesa y ejecuta los comandos de guión. Ejemplos de motores son el conjunto de lenguajes como VBScript, JSCript, Perl, Tcl/Tk, etc.

 Los guiones los encontramos embebidos dentro de código HTML.

1.1.4 VENTAJAS, DESVENTAJAS Y RIESGOS

1.1.4.1 VENTAJAS

Fácil de utilizar. Siempre que visite una página Web que utiliza un control ActiveX, Internet Explorer comprobará automáticamente si dispone del control necesario instalado en el sistema.

Si no es así, lo instalará. Además, a diferencia de otras aplicaciones de tipo

“complemento”, los controles ActiveX están ahí sólo cuando los necesita y no ocupan

valiosos recursos cuando no los necesita.

Mayor acceso a sitios mejores. Los controles ActiveX abren infinitas posibilidades de agregar nuevo contenido al Web.

Cada control ActiveX contiene una firma digital, que permite comprobar la procedencia del código recibido, para reducir la posibilidad de ser afectado por un virus informático.

1.1.4.2 DESVENTAJAS

El uso de ActiveX tiene su máxima aplicación en entornos homogéneos, basados en los diferentes sistemas operativos y aplicaciones de Microsoft, en los que se puede aprovechar la capacidad de los controles para obtener y presentar información de fuentes muy diversas: bases de datos SQL o Access, hojas de cálculo Excel, etc.

A pesar de las numerosas similitudes entre el uso de Applets Java y controles ActiveX, existen diferencias importantes, que condicionan en gran medida su aplicación. Los controles ActiveX están totalmente enfocados a los entornos basados en los sistemas operativos de Microsoft (Windows 3.11, 95 y NT).

(26)

25 1.1.4.3 RIESGOS

Riesgos de los controles: Cuando los descargamos, los controles se ejecutan como cualquier otro programa, teniendo acceso total al sistema. Pueden leer y escribir ficheros, abrir conexiones de red, ejecutar comandos del sistema, es decir, realizar cualquier tarea permitida por el sistema operativo.

Observando esto, corremos grandes riesgos si ejecutamos código de dudosa procedencia.

Riesgos de los contenedores: Un contenedor es una aplicación que puede contener controles y documentos. El peligro radica en la posibilidad de ejecución interactiva de múltiples controles contenidos dentro de un contenedor, como por ejemplo una página web.

Riesgos de los guiones: Permiten enviar comandos interactivamente a controles ActiveX usando Java Script o VBScript. Los comandos proceden del contenedor o del servidor. Pueden aceptar comandos de cualquier página web. [11]

1.2 DYNAMIC DATA EXCHANGE (DDE) (INTERCAMBIO DINÁMICO DE DATOS).

DDE es un protocolo integrado en Microsoft Windows que permite a los usuarios compartir datos entre aplicaciones, ya sea en una máquina local o a través de una conexión de red de Windows.

Como el nombre sugiere, DDE es un método para aplicaciones de Windows para comunicarse entre sí y compartir información de manera dinámica. Puede ser pensado como una conversación entre los dos programas. El primer programa se iniciará la conversación por hacer una pregunta y la segunda va a obligar mediante el envío de la respuesta. La conversación continúa hasta que una de las solicitudes se cierra la conexión.

1.2.1 UTILIZACIÓN DE DDE.

DDE es generalmente utilizado para compartir datos entre dos aplicaciones, pero también puede ser usado para enviar comandos a otra aplicación.

(27)

26

1.2.2 WINDOWS, CLIENTE, SERVIDOR.

Cuando una aplicación se inicia el proceso de DDE, la solicitud se dice que es porque el cliente solicita información a otra aplicación. La otra aplicación se llama el servidor, ya que presta sus servicios a un cliente DDE. A pesar de lo que el nombre implica, un cliente y servidor a través de la comunicación DDE nunca hablar directamente el uno al otro. Por el contrario, enviar mensajes a Windows, que pasa la información en el destino correcto. Debido a esto, el mundo de las redes de DDE abarca todo y no se limita a una sola estación de trabajo. Con DDE es posible que una aplicación de Windows en una máquina para enviar datos a una aplicación que se está ejecutando en otro lugar de trabajo, siempre que estén en la misma red. Además, es posible que una única solicitud para participar en múltiples conversaciones DDE simultáneamente.

1.2.3 PROTOCOLO.

Como con la mayoría de las comunicaciones, un conjunto de normas que aplican para determinar cómo y cuándo se envían los datos. Estas normas determinan el protocolo que se utiliza para regular el intercambio de datos. DDE requiere su propio protocolo para supervisar la comunicación entre aplicaciones.

Este protocolo describe los procedimientos utilizados para iniciar y finalizar una sesión de DDE, enviar datos a otra aplicación, recibir los datos de otra aplicación, y dar instrucciones a otra aplicación para ejecutar una macro o comando. Hay relativamente pocos parámetros que constituyen el presente protocolo, haciendo las comunicaciones DDE bastante elemental.

1.2.4 ELEMENTOS DE CONVERSACIÓN.

Antes de intentar realizar una conversación DDE entre y otra aplicación, hay algunos elementos esenciales de comunicación que debe determinarse.

(28)

27 1.2.4.1 SOLICITUD.

Este es el programa con el que se quiere conversar. Con el fin de iniciar una conversación con otra aplicación, usted tiene que saber el nombre del otro programa. Este es el nombre del ejecutable de los demás, menos los .exe. [14]

Como un ejemplo, si se abre una conexión DDE con el Administrador de Programas de Windows, el nombre de la aplicación sería PROGMAN. Si la otra aplicación no está en ejecución, usted no podrá conectarse a él y lo más probable es que obtener un ERROR = 70. Es el programador tiene la responsabilidad de garantizar que la otra aplicación se está ejecutando. Si no es así, usted debe invocar utilizando los SCALL () función.

1.2.4.2 TEMA

Este es el tema de datos que se designa para el acceso DDE, DDE de la aplicación del servidor. Este campo está predeterminado por la aplicación de servidor como un objeto que le gustaría compartir. Por ejemplo, si se va a comunicar con una hoja de cálculo de Excel a través de DDE, el tema de la conversación sería el nombre del archivo de hoja de cálculo con el que desea intercambiar datos.

1.2.4.3 ARTÍCULO

Esta es la pieza de información que usted está tratando de leer. Usando el ejemplo de Excel, el tema sería el de células específicas en la hoja de trabajo. Si usted quiere saber qué programas se han definido en el grupo Accesorios de Windows en el Administrador

de programas, deberá utilizar el nombre del grupo de “accesorios” para el tema.

Para poder utilizar DDE con éxito, el programador debe tener toda la información relativa a la aplicación remota de antelación. En otras palabras, usted no puede llevar a cabo una conversación DDE a menos que sepa los temas que se comparten y la naturaleza de los temas.

Esto puede limitar la utilidad y la capacidad que ofrece DDE. Por ejemplo, es posible que desee obtener información de su hoja de cálculo de Excel, pero sin saber lo que espera para Excel DDE temas y artículos que no pueden comunicarse con ella en absoluto. [14]

1.3 OPEN DATA BASE CONECTIVITY (ODBC) (CONECTIVIDAD DE BASE DE DATOS ABIERTA).

(29)

28 La interfaz permite máxima interoperabilidad. Una sencilla aplicación puede accesar a diferentes DBMS. Esto permite al diseñador de las aplicaciones, desarrollar, compilar y enviar una aplicación sin especificar el manejador de base de datos utilizado. Los usuarios pueden entonces agregar módulos llamando a drivers de bases de datos para lograr una unión entre las aplicaciones y su opción de DBMS.[13]

En el mundo tradicional de las bases de datos. Las aplicaciones usualmente significaban hacer una tarea específica de una base de datos con un específico DBMS en mente, tales como operaciones financieras, pagos, o un manejador de inventario. Estas aplicaciones típicamente estaban escritas utilizando SQL inmerso. Mientras el SQL inmerso es eficiente y portable entre diferentes tipos de hardware y sistemas operativos, el código fuente necesitaba ser compilado en cada nuevo ambiente.

SQL inmerso no fue óptimo para aplicaciones que necesitaban analizar guardados en bases de datos, tales como DB2 y Oracle, y preferiblemente lo hacían a través de interfaces familiares tales como Microsoft Excel. Bajo el acercamiento tradicional de accesar la base de datos, una versión de Microsoft Excel debería poseer un pre-compilador con código de DB2 o de Oracle.

ODBC ofrece un nuevo acercamiento: provee programas separados para extraer la información de la base de datos, y luego tiene una forma de importar los datos. Siempre existirá métodos viables de comunicación; protocolos de datos, y capacidades de DBMS, la solución ODBC permite utilizar tecnologías para ser definidos como interfaces estándares.

(30)

29 Figura 2. Aplicación ODBC.

En la Fig. 2 puede observarse que el ODBC permanece en el centro de un sinnúmero de aplicaciones y de la misma forma de los DBMS, haciendo la aplicación independiente de DBMS.

1.3.1 LA INTERFAZ.

La interfaz ODBC define lo siguiente:

La librería que contiene las funciones ODBC permite a la aplicación conectarse a un DBMS, ejecutar sentencias SQL, y obtener los resultados.

La sintaxis SQL está basada en las especificaciones de 1992 de X/Open, y SQL Access Group (SAG).

 Códigos de errores estándares.

 Una forma de conectarse y darse ingreso al manejador que utilice.  Una representación estándar de los tipos de datos.

 La interfaz es flexible.

Las cadenas de caracteres que contienen las sentencias SQL pueden ser explicitas, incluyendo el código fuente o bien pueden ser construidas en tiempo de corrida.

Una aplicación puede ignorar los protocolos de comunicaciones fundamentales entre ella y el producto DBMS.

(31)

30

1.3.2 ODBC DEFINE DOS TIPOS DE DRIVERS.

 De simple paso  De múltiples pasos.

Este tipo de drivers procesan las llamadas de ODBC y las sentencias (En este caso el driver ejecuta parte de la funcionalidad de las fuentes de datos).

El driver procesa las llamadas de ODBC y pasa las sentencias SQL a la fuente de los datos.

[image:31.612.143.461.278.593.2]

Un sistema puede contener ambos tipos de configuraciones.

Figura 3. Ejemplos de RED.

(32)

31

1.3.3 ESTRUCTURA DEL ODBC.

La arquitectura ODBC contiene cuatro principales componentes: la aplicación, el administrador de drivers, el driver, y la fuente o fuentes de datos. Una aplicación utilizando la interfaz ODBC generalmente proveerá al usuario herramientas, incluyendo:

 Conectarse y desconectarse de DBMS.

 Ejecutar consultas y proveer áreas de trabajo y dar el formato a los datos que del los resultados.

 Permitir el proceso de transacciones en línea (OLTP)  Rasgos externos a la interfaz ODBC. [13]

1.4 PROTOCOLOS DE COMUNICACIÓN.

Muchas veces escuchamos en la industria la palabra protocolos de comunicación sin tener claro de que estamos hablando. Con el objeto de familiarizar, sus principales características y fundamentos de los más utilizados. En principio un protocolo de comunicación es un conjunto de reglas que permiten la transferencia e intercambio de datos entre los distintos dispositivos que conforman una red. Estos han tenido un proceso de evolución gradual a medida que la tecnología electrónica ha avanzado y muy en especial en lo que se refiere a los microprocesadores.

Un importante número de empresas en nuestro país presentan la existencia de islas automatizadas (células de trabajo sin comunicación entre sí), siendo en estos casos las redes y los protocolos de comunicación Industrial indispensables para realizar un enlace entre las distintas etapas que conforman el proceso.

La irrupción de los microprocesadores en la industria ha posibilitado su integración a redes de comunicación con importantes ventajas, entre las cuales figuran:

 Mayor precisión derivada de la integración de tecnología digital en las mediciones.  Mayor y mejor disponibilidad de información de los dispositivos de campo.

 Diagnóstico remoto de componentes.

(33)

32  Buses de campo.

 Redes LAN.  Redes LAN-WAN.

En esta oportunidad nos referiremos a los protocolos de comunicación más usados en la industria.

Los buses de datos que permiten la integración de equipos para la medición y control de variables de proceso, reciben la denominación genérica de buses de campo.

Un bus de campo es un sistema de transmisión de información (datos) que simplifica enormemente la instalación y operación de máquinas y equipamientos industriales utilizados en procesos de producción.

El objetivo de un bus de campo es sustituir las conexiones punto a punto entre los elementos de campo y el equipo de control a través del tradicional lazo de corriente de 4 -20mA o 0 a 10V DC, según corresponda. Generalmente son redes digitales, bidireccionales, multipunto, montadas sobre un bus serie, que conectan dispositivos de

campo como PLC‟s, transductores, actuadores, sensores y equipos de supervisión.

1.4.1 COMPONENTES DE LAS REDES INDUSTRIALES

En grandes redes industriales un simple cable no es suficiente para conectar el conjunto de todos los nodos de la red. Deben definirse topologías y diseños de redes para proveer un aislamiento y conocer los requerimientos de funcionamiento.

 Bridge

Con un puente la conexión entre dos diferentes secciones de red, puede tener diferentes características eléctricas y protocolos; además puede enlazar dos redes diferentes.

 Repetidor

(34)

33  Gateway

Un gateway es similar a un puente ya que suministra interoperabilidad entre buses y diferentes tipos de protocolos y además las aplicaciones pueden comunicarse a través de él.

 Enrutadores

Es un switch "Enrutador" de paquetes de comunicación entre diferentes segmentos de red que definen la ruta hacia donde se transmite la información.

1.4.2 RS-232.

El driver RS232 realiza la comunicación full-dúplex. Consta de dos partes totalmente diferenciadas: el circuito transmisor y el circuito receptor. El circuito receptor es el responsable de la recepción de los datos que se envían desde la computadora al periférico: la línea TxD de salida de la computadora se conecta al pin RxD del periférico. De forma similar, el circuito transmisor es el responsable del envío de datos a la computadora: la línea de salida TxD del periférico se conecta al nodo de entrada RxD del computador.

El protocolo de comunicación serie full-dúplex RS232 asíncrona establece una comunicación fácil entre computador y periférico.

El protocolo de comunicación RS232 la transmisión de datos puede ser estudiado como lo muestra la figura 4.

Figura 4. Transmisión de datos.

 El estado de reposo implica un 1 lógico.  Un bit de start a 0 lógico.

 7 u 8 bits de datos.

 Posibilidad de bit de paridad.

(35)

34 Durante la transmisión (recepción) la duración de cada bit es de 16 ciclos de reloj base. Por consiguiente, en la realización de los drivers (transmisor y receptor) se tendrá que contemplar la sincronización de la transmisión / recepción de datos con el reloj base. Aunque computador y periférico se programen para transmitir datos a una frecuencia determinada, es difícil asegurar que las frecuencias base de los relojes estén perfectamente sincronizadas. Por ello la emisión y recepción de datos se realiza tomando como base una frecuencia 16 veces superior a la frecuencia de transmisión de datos. Por otra parte, durante la recepción de datos pueden producirse en la transmisión daños que, debido a interferencias, pueden introducir errores de recepción. Para minimizar este efecto suelen tomarse distintas muestras de la recepción del bit, tomando como resultado bueno, el valor que más se sucede dentro de la recepción del bit. Es por ello, que durante la recepción se deberá considerar circuitería adicional para asegurar un comportamiento más fiable de la transmisión.

En una comunicación simple mediante protocolo RS232 (sin control de recepción) tan sólo son necesarias tres líneas de conexión entre el PC y el periférico: RxD o recepción, TxD o transmisión, y tierra.

Puerto serie.

Aunque el puerto serie puede tener un tamaño de 25 pines, el formato más utilizado es el de 9 pines. La tabla 1 de conexiones del pin-out para ambos conectores es:

(36)

35

1.4.3 ETHERNET.

Ethernet es una tecnología de redes ampliamente aceptada con conexiones disponibles para PCs, estaciones de trabajo científicas y de alto desempeño, mini computadoras y sistemas mainframe.

La arquitectura Ethernet provee detección de errores pero no corrección de los mismos. Tampoco posee una unidad de control central, todos los mensajes son transmitidos a través de la red a cada dispositivo conectado. Cada dispositivo es responsable de reconocer su propia dirección y aceptar los mensajes dirigidos a ella. El acceso al canal de comunicación es controlado individualmente por cada dispositivo utilizando un método de acceso probabilístico conocido como disputa.

Ethernet continúa ganando aceptación en aplicaciones de medición y control distribuido debido a su bajo costo, operación entre dispositivos, comunicación con la empresa y un mayor ancho de banda. Viendo al futuro, la tendencia que más afecta el futuro Ethernet es el Ethernet determinístico para aplicaciones que requieren de gran sincronización y transferencia de datos entre nodos. En las redes Ethernet estándar, las colisiones en las redes de los concentradores introducen variaciones, los conmutadores de red introducen retraso de propagación, y nodos individuales introducen retrasos. Éstos causan problemas para cualquier sistema basado en tiempo incluyendo las aplicaciones de control.

Existe un gran número de estándares en Ethernet introducidos para proporcionar diferentes niveles de determinismo incluyendo EtherNET/IP (ODVA), PROFINET (Siemens), EtherCAT (Grupo Tecnológico EtherCAT), ETHERNET Powerlink, y SERCOS-III (IGS). Cada protocolo ofrece diferentes niveles de desempeño y costo pero generalmente requieren que todos los nodos en el segmento Ethernet soporten el protocolo.

Cable Ethernet. (Par Trenzado)

(37)
[image:37.612.82.545.204.717.2]

36 muy costosos relativamente, son fáciles de instalar y proveen una transmisión bastante rápida de hasta 100Mpbs.El número de entrelazamientos en el cable es importante porque más vueltas ayudan a prevenir que el campo magnético que se genera por la señal eléctrica de uno de los cables ocasione un fallo en el voltaje del otro cable.

Tabla 2. Conexiones cable Ethernet.

Pin Función 568A 568B Posición de los pines

Conector RJ-45

1 TX+

Transceive data + Blanco - Verde Blanco – Naranja

2 Transceive data -

Verde Naranja

3 RX+

Receive data + Blanco -

Naranja Blanco – Verde

4

BDD+

Bi-directional data

+ Azul Azul

5

BDD-

Bi-directional data

- Blanco - Azul Blanco – Azul

6 RX-

Receive data - Naranja Verde

7

BDD+

Bi-directional data

+ Blanco - Marrón Blanco – Marrón

8

BDD-

Bi-directional data

(38)

37 El conector RJ-45 encontrado al final de los cables de trenzas es similar a aquellos usados en los cables telefónicos y se necesitan conectar del cable de la red al hub y luego a la computadora y su conexión como se muestra en la Tabla 2.

1.5 TECNOLOGÍA OPC.

1.5.1 HISTORIA DEL OPC

Este es el camino que se ha llevado hasta llegar al OPC:

1982 DOS: Desde los “viejos” tiempos del DOS se ha intentado conectar los equipos de

campo a computadoras personales. En aquella época oscura, los PC sólo podían hacer una cosa a la vez y se necesitaban drivers específicos para cada dispositivo externo que se quería conectar.

1990 Windows 3.0 y Dynamic Data Exchange (DDE Intercambio Dinámico de Datos): Con él apareció la posibilidad (a bajo precio) de ejecutar varias tareas simultáneamente en un ordenador y un mecanismo estándar para que se intercambiaran información entre ellas. Se podía ya, por ejemplo, ver datos de proceso de instrumentos de campo en una hoja de Excel. Desafortunadamente, DDE tenía limitaciones: no era excesivamente robusto, el ancho de banda era limitado (la información se transfiere en formato de caracteres) y no se podía enviar información a través de redes.

1992 Windows 3.1 & Object Linking & Embedding 1.0 (OLE): En cuanto apareció, ya se intuía que OLE iba a desplazar al DDE para intercambio de datos, ya que era más flexible, robusto y usaba mecanismos de transporte más eficientes.

1993 OLE 2.0 Comité WinSEM: Este grupo de desarrolladores de software técnico se reunía regularmente en las instalaciones de Microsoft y estaban interesados en aplicar el PC a control industrial y adquisición de datos. Se centraron en técnicas OLE para intercambiar datos entre aplicaciones en (cuasi) real-time. En particular, los fabricantes de SCADA se mostraron muy interesados en estandarizar la interfaz entre el “núcleo” del

SCADA y los drivers de los dispositivos de campo. Eso podía beneficiar tanto al fabricante del SCADA como al del dispositivo de campo.

1994 OLE 2.1 (32 bit).

(39)

38 1995 Windows 95: Hacia el final de 1995 aparece Windows 95, se generaliza el Windows (a secas) como sistema operativo.

1996 Especificación OPC V 1.0 (A): En agosto 1996 aparece la versión 1.0.

1996 Windows NT 4.0: Aparece en 1996, combina la fiabilidad del NT 3.5 con el interfas de usuario del W 95. Incluye soporte de DCOM (Distributed CommonObject Model), que permite a las aplicaciones crear y trabajar con objetos residentes en otros ordenadores a través de la red.

1996 Fundación OPC: En agosto de 1996 se crea la fundación como organización sin interés económico con la tarea de gestionar el estándar OPC. Su “misión” es: Desarrollar

un estándar abierto, basado en los requerimientos funcionales de la tecnología OLE/COM y DCOM, que fomente mayor interoperabilidad entre aplicaciones de control/automatización, sistemas/dispositivos de campo y aplicaciones de gestión.

1997 Comités Técnicos OPC: Para poder gestionar el amplio rango de asuntos relacionados con los datos del control de los procesos la fundación OPC forma una serie

de “comités” para investigar y diseñar mejoras a la especificación original.

1998 Windows 98: Se espera para la segunda mitad de 1998, W98 es una mejora incremental sobre W95 y su importancia para la industria del control de procesos por ser un sistema operativo multitarea con soporte para DCOM integrado y por lo tanto para tecnología de servidor de OPC barato y probado.

1998 Windows NT 5.0: También aparecerá en la segunda mitad de 1998, ofrece mejoras significativas sobre NT 4.0.[8]

1.5.2 OLE FOR PROCESS CONTROL (OPC)

El OLE para control de procesos (OPC) es un estándar abierto para compartir datos entre dispositivos de campo y aplicaciones de ordenador basado en OLE de Microsoft.

Permite a las aplicaciones leer y escribir valores de proceso y que los datos sean compartidos fácilmente en una red de computadoras.

El estándar, gobernado por la Fundación OPC, es de dominio público y disponible para cualquiera que quiera usarlo (ver apartado final de este texto donde conseguirlo).

(40)

39

APLICACION serverOPC

Sistema SCADA

I/O fisicas

I/O fisicas

Cada software requería un driver distinto para cada hardware, implicando un esfuerzo enorme, al que hay que añadir el de las actualizaciones continuas.

Con OPC, los fabricantes de hardware sólo tendrán que preparar un conjunto de componentes de software para que los clientes los utilicen en sus aplicaciones. Los desarrolladores de software no tendrán que reescribir los drivers debido a nuevas versiones de hardware.

Los usuarios finales tendrán muchas más alternativas de integrar distintos sistemas. Una aplicación OPC, como cualquier otra aplicación OLE (o DDE), constará de servidores y clientes OPC. (Fig. 5.).

Figura 5.Integración de datos en OPC.

(41)

40 Figura 6. Sistema abierto con servidores OPC.

Los servidores están organizados en grupos y cada grupo puede contener distintos items.

Cliente OPC #1

Cliente OPC #3

Cliente OPC #2 Servidor OPC

Fabr. A

Servidor OPC Fabr. B

Servidor OPC Fabr. C

[image:41.612.80.562.46.384.2]

DIAGRAMA CLIENTE – SERVIDOR OPC

(42)

41

GRUPO 1

GRUPO 2

GRUPO 3

GRUPO... ITEM 1 ITEM 2 ITEM 3 ITEM...

VALOR : 150 °C QUALIFICADOR : O.K. Marca Temporal : 22:15:00 ORGANIZACIÓN DE UN SERVIDOR OPC

Servidor OPC

Las diferentes partes de la aplicación (displays de operador, informes, etc.) pueden usar distintos grupos, los cuales pueden tener distinta frecuencia de refresco y pueden ser de acceso secuencial o basado en excepciones (eventos). Los ítems representan conexiones a fuentes de datos dentro del servidor (variables de proceso) a grandes ragos en la Tabla 1.3 los modelos de objetos. A cada item se asocia un valor (valor de la variable de proceso), un cualificador (estado de la variable, OK, bajo rango, etc.) y una marca de tiempo (Fig. 9). [9]

Figura 8. Organización de los datos en un servidor OPC.

(43)

42 Tabla 3.Objetos de Modelos.

OBJETO DESCRIPCIÓN

OPCServer Es una instancia (referencia o solicitud) a un servidor OPC. Mantiene información sobre el servidor escogido y los servicios que ofrece. Se debe crear un objeto OPCServer antes de poder referenciar los otros objetos. Este contiene la colección OPCGroups y el objeto OPCBrowser.

OPCGroups Es una colección de los objetos OPCGroup que el cliente ha creado.

OPCGroup El propósito de este objeto es mantener la información de estado y proveer el mecanismo para ofrecer los servicios de adquisición de datos por la colección de objetos OPCItem.

OPCItems Es una colección que contiene todos los objetos OPCItem que el cliente ha creado.

OPCItem Es un objeto que mantiene la definición de los items, sus valores, estados y datos de la última actualización. Los Item representan conexiones a las fuentes de datos requeridas del servidor OPC instalado.(NO son fuentes de datos)

OPCBrowser Es un objeto que permite (hojear) buscar nombres de items en un servidor configurado.

1.5.3 PROBLEMÁTICA Y SOLUCIÓN EN LA COMUNICACIÓN DRIVER / APLICACIÓN. Problema (Figura 9).

 Problemas que compatibilidad.  Duplicacion del esfuerzo.

(44)

43 Figura 9. Problema OPC

Solución.

Establece un Estándar (Figura 10):  Disminuye inversion en Drivers  Intergracion entre varios fabricantes.  Menor dependencia del Hardware.

Figura 10. Solución OPC.

1.5.4 ARQUITECTURA.

Arquitectura cliente / servidor (Figura 11).  El servidor ofrece datos.

 El cliente accede a esos datos.

Un servidor OPC es un objeto COM.

(45)

44

Figura 11. Arquitectura Cliente / Servidor.

Los datos se identifican con una cadena.

 OPC ofrece un acceso simbólico a los datos para las capas superiores.

Cada dato físico es un ´item´ (= tag, variable). El cliente puede leer y escribir ítems (Figura 12).

 Las lecturas pueden ser sincronas o asincronas.  Se puede crear suscripciones a ítems.

Figura 12. “n” de grupos.

Acceso a datos históricos.

Distintos tipos de servidores históricos y diseño de servidor OPC (Figura 13).

 Servidores de datos simples.

Ofrecen solo capacidad de almacenar datos.

 Servidores de análisis y compresión de datos complejos.

Ofrecen capacidad de compresión y almacenaje de datos. Ofrecen funciones de análisis de datos.

(46)

45 Figura 13. Diseño de un servidor OPC.

1.5.5 TIPOS DE DATOS Y CARACTERÍSTICAS EN OPC.

En general tipos simples:

 bool, byte, word, dword, float, double  (Singned y Unsigned)

También permite (menos común).  Arrays de los tipos anteriores  Manejo de cadenas.

 Datos estructurados.  No es lo habitual.

 El estandar lo contempla de forma optativa.  Mas complejo.

Características.

 Basado en COM.  Flexible.

 Eficiente.

(47)

46  Debido a que la tecnología COM se basa en interfazss.

 Esto permite desarrollar grandes aplicaciones.  Diseñado para comportarse eficientemente en red.  Aceptado y adoptado por el entorno industrial.

Otra gran ventaja de las especificaciones “abiertas” OPC, es la utilización de lenguajes de

programación como C++ o Visual Basic como clientes OPC, para la realización de aplicaciones a medida.

1.5.6 FUNCIONAMIENTO DE OPC.

La opción más sencilla y habitual, es utilizar OPC Automation Wrapper. Se trata de un interfazs de automatización usado para conectarse desde un cliente (Visual Basic, Excel y otros lenguajes de programación) a servidores OPC.

 Se llama wrapper (envoltura) porque enmascara o envuelve el interfazs de

programación original “OPC Custom Interfazs Server”, que sirve los datos en C++.

 Así, las llamadas desde el programa cliente al OPC Automation Wrapper, son convertidas automáticamente al interfazs de comunicación original OPC.

 La ventaja de OPC Automation Wrapper, es que proporciona una comunicación con los servidores OPC usando un lenguaje más sencillo.

(48)

47

II.

“HARDWARE Y SOFTWARE PARA SISTEMAS DE CONTROL DIGITAL”

(49)

48

2. EVOLUCION DE LOS SISTEMAS DE CONTROL

La aparición de los sistemas de control tal y como se conocen en la actualidad es el resultado de un proceso largo de evolución tecnológica.

Los primeros sistemas de control que conocemos son las trampas de caza. Estaban dotadas de un elemento, a modo de trinquete primitivo, que sujetaba la trampa abierta. Cuando algún animal pisaba encima, el trinquete dejaba de sujetar la trampa, cerrándola y atrapando al animal.

Uno de los ejemplos más antiguos de sistemas automáticos son los mecanismos reguladores con flotador, desarrollados en Grecia durante el siglo III a.C., como el reloj de agua de Ktesibios o la lámpara de Filón, que permitía mantener un nivel constante de aceite. En el siglo I d.C. Herón publicó su obra Pneumatica, en la que describía varios automatismos hidráulicos y neumáticos.

En la Revolución Industrial, la invención de la máquina de vapor supuso un avance enorme en la automatización de los sistemas. Se aplicó principalmente a la tracción de locomotoras y vehículos, y posteriormente derivó en la invención de los motores de combustión interna. Todas estas invenciones tienen en común el aporte de un medio energético a una máquina para que funcione de forma autónoma.

El nacimiento de la automatización industrial surgió con la invención del regulador centrífugo de Watt, que permitía controlar la velocidad de las máquinas de vapor.

A partir del siglo XIX comenzaron a aparecer multitud de aparatos que realizaban funciones automáticas, como máquinas mecánicas de multiplicar o una máquina para resolver ecuaciones de segundo grado inventada por Charles Babbage

La Segunda Guerra Mundial marcó un hito en el desarrollo de los sistemas de control automáticos, coincidiendo con el desarrollo de la electrónica. Así, se avanzó enormemente en los medios de control con fines militares, como el radar, el piloto automático en los aviones, los sistemas de cálculo de tiro o las comunicaciones a través de la radio y la telefonía.

(50)

49 desarrolló un brazo mecánico programable capaz de realizar tareas específicas, y durante la misma década una empresa norteamericana instaló el primer plc en sus cadenas de montaje.

En definitiva, se puede decir que el desarrollo de los sistemas de control automáticos ha supuesto que los objetos de consumo posean una autonomía tal que funcionan prácticamente sin intervención de las personas, no solo en la industria, sino también, en el hogar.

El control automático de procesos se utiliza debido a que reduce el costo de os procesos industriales, lo que compensa con creces la inversión en equipo de control. Además de las ganancias intangibles que se obtienen tales como la eliminación de mano de obra pasiva y la supresión de errores. [15]

2.1. CONTROLADOR LÓGICO PROGRAMABLE “PLC”

2.1.1. ANTECEDENTES.

Su historia se remonta a finales de la década de 1960 cuando la industria buscó en las nuevas tecnologías electrónicas una solución más eficiente para reemplazar los sistemas de control basados en circuitos eléctricos con relés, interruptores y otros componentes comúnmente utilizados para el control de los sistemas de lógica combinacional.

En 1969 la División Hydramatic de la General Motors instaló el primer PLC para reemplazar los sistemas inflexibles alambrados usados entonces en sus líneas de producción.

Ya en 1971, los PLCs se extendían a otras industrias y, en los ochentas, ya los componentes electrónicos permitieron un conjunto de operaciones en 16 bits, comparados con los 4 de los 70s, en un pequeño volumen, lo que los popularizó en todo el mundo. En los primeros años de los noventas, aparecieron los microprocesadores de 32 bits con posibilidad de operaciones matemáticas complejas, y de comunicaciones entre PLC‟s de

(51)

50

2.1.2. ¿QUÉ ES UN CONTROLADOR LÓGICO PROGRAMABLE?

De acuerdo con la definición de la "Nema" (National Electrical Manufacturers Association) un controlador programable es: "Un aparato electrónico operado digitalmente, que usa una memoria programable para el almacenamiento interno de instrucciones para implementar funciones específicas, tales como lógica, secuenciación, registro y control de tiempos, conteo y operaciones aritméticas para controlar, a través de módulos de entrada/salida digitales (ON/OFF) o analógicos (1 5 VDC, 4 20 mA, etc.), varios tipos de máquinas o procesos.[16]

2.1.3. ARQUITECTURA DE UN PLC CONVENCIONAL

En su forma más básica el PLC costa de los siguientes elementos

1. Fuente de Alimentación. Suministra el voltaje requerido para el funcionamiento de los componentes electrónicos del PLC.

2. Memoria. Se almacenan las instrucciones (lógica de control) que definirá la secuencia de control y las variables internas y externas

3. Unidad de control de Procesos (CPU). Se encarga de procesar las instrucciones almacenadas en la memoria, para ordenar a las tarjetas de salida.

4. Tarjetas de Salidas. Se encargan de transformar los estados de las señales de control, generadas por la CPU en señales de campo

5. El Bus de Datos. Medio por el que transitan los datos de distintos componentes del

PLC.

(52)

51 Figura 14. Arquitectura de un PLC convencional.

2.1.4. CICLO DE TRABAJO DEL PLC

El PLC está siempre repitiendo un ciclo, llamado ciclo de SCAN, como se observa en la figura 14 y consiste en lo siguiente:

a) En primer lugar lee todas las entradas y almacena el estado de cada una de ellas

b) En segundo lugar ejecuta las operaciones del programa siguiendo el orden en que se han grabado.

c) En tercer lugar escribe el resultado de las operaciones en las salidas.

d) Una vez escritas todas las salidas (activando o desactivando las que el resultado de las operaciones así lo requieran) vuelve al paso a.

Fuente de Alimentación

Memoria CPU Tarjetas de Entrada

Bus de Datos

(53)

52

Lee las entradas

Almacena estado de las

entradas

Ejecución del programa Almacena

estado de las entradas

Este ciclo de Scan se realiza indefinidamente hasta que pasemos el conmutador de la CPU a la posición STOP. Como se observa en la figura 15.

Figura 15. Ciclo de Trabajo del PLC.

Comunicación del PLC

El PLC tiene tres niveles de comunicación, éstos son:

 Nivel de control. Comprende el intercambio entre controladores

 Nivel Instrumentos. Incluye el protocolo de comunicación de toda la instrumentación de campo con el controlador

 Nivel Supervisión. Abarca la comunicación entre controladores con la finalidad de supervisar las condiciones del controlador y las variables de campo.

2.1.5 VENTAJAS DEL PLC

Los PLC pueden realizar un amplio rango de tareas de automatización. Estos son típicos en procesos industriales en la manufactura donde el costo de desarrollo y mantenimiento de un sistema de automatización es relativamente bajo. Los PLC contienen todo lo necesario para manejar altas cargas de potencia; se requiere poco diseño eléctrico y el problema de diseño se centra en expresar las operaciones y secuencias en la lógica de escalera (o diagramas de funciones).

CICLO

(54)

53 Gracias a ellos, es posible ahorrar tiempo en la elaboración de proyectos, pudiendo realizar modificaciones sin costos adicionales. Por otra parte, son de tamaño reducido y mantenimiento de bajo costo, además permiten ahorrar dinero en mano de obra y la posibilidad de controlar más de una máquina con el mismo equipo. Sin embargo, y como sucede en todos los casos, los controladores lógicos programables, o PLCs, presentan ciertas desventajas como es la necesidad de contar con técnicos calificados y adiestrados específicamente para ocuparse de su buen funcionamientos.

Para el desarrollo del proyecto se utiliza un PLC marca Allen Bradley, Compactlogix modelo L32E debido a que éste fue proporcionado para la realización de esta tesis, cuya construcción física y características se indican en la figura 16 y tabla 4 respectivamente.

Figura 16. Dimensiones del PLC CompactLogix LE32E

Figure

Tabla 1 Conexiones del pin _______________________________________________________ 34 Tabla 2
Figura  1. Tecnologías de software
Figura  3. Ejemplos de RED.
Tabla 2. Conexiones cable Ethernet.
+7

Referencias

Documento similar

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

En cada antecedente debe considerarse como mínimo: Autor, Nombre de la Investigación, año de la investigación, objetivo, metodología de la investigación,

[r]

Debido a que este proyecto pertenece al polo de Bioinformática y es un estándar o paradigma del polo el desarrollo de software libre utilizando el sistema operativo Linux, además

Debido a que Rational Rose es una herramienta CASE de software propietario y según lo planteado anteriormente, se decidió utilizar el Visual Paradigm, ya que es una

Por tales motivos se decidió desarrollar una pasarela llamada ―Gateway OPC DA‖, sobre plataformas o emuladores del sistema operativo Windows, con la capacidad de

La potencia del eje del motor de arrastre se puede determinar aplicando diferentes métodos, se puede medir directamente con ayuda de un torquímetro, o en el caso de un arrastre

El desarrollo de una conciencia cáritas es esencial para identificar cuando un momento de cuidado se convierte en transpersonal, es necesaria para identificar