Intercambio de datos entre Sistemas de Automatización y aplicaciones software - Parte1

18 Junio 2010

 

Para el intercambio de datos entre aplicaciones de software y sistemas de automatización sé han utilizado distintas interfaces, desarrolladas inicialmente para transacciones, estas tecnologías han ido evolucionado para mejorar la performance y poder tratar con datos en tiempo real.

 

En este articulo aprederemos a diferenciar las distintas interfaces para intercambio de datos entre aplicaciones. Identificar las ventajas y desventajas de las interfaces entre aplicaciones usadas.

 

 

Como se hace entonces el INTERCAMBIO DE DATOS?

 

En los sistemas de automatización una cantidad significativa de tiempo y dinero son gastados en asegurar que los sistema de medición y automatización compartan información con otros sistemas y dispositivos a través de la empresa.

 

Los integradores de sistemas y proveedores de equipos de automatización han desarrollado numerosas interfaces propietarias para acceder a la información en tiempo real.

 

El DDE de Microsoft se convirtió en un estándar de facto para muchos dispositivos como los PLCs y controladores de procesos. Se ha usado DDE y otros como NetDDE para intercambiar datos entre aplicaciones, como hojas de cálculo a procesador de textos. Sin embargo DDE tiene limitaciones en performance y confiabilidad para tratar con información en tiempo real.

 

Apareció OLE posteriormente con mejor performance, una interfaz basa en tecnología COM más robusta y confiable. OPC, OLE para Control de Procesos, es una interfaz de un estándar industrial abierto, basada en COM, DCOM y ActiveX, que provee inter- operatibilidad entre diferentes dispositivos de campo, de automatización y sistemap de negocios. Muchos proveedores de hardware y software han colaborado con Microsoft para definir el estándar industrial para el uso de COM en aplicaciones industriales.

 

 

Dynamic Data Exchange: DDE

 

Dynamic Data Exchange es un protocolo de comunicaciones creado por Microsoft. utilizado en Windows de que permite enviar y recibir datos entre aplicaciones. El cliente DDE solicita un datos al servidor DDE y este se lo proporciona.

 

En servidores DDE es bastante común crear el enlace con un ítem utilizando él comando copiar del servidor, y el comando pegado especial  pegar vínculo en el cliente DDE.

 

El formato de una dirección DDE para leer un dato es:

=Aplicación | Tópico ! Item

 

Donde Aplicación es el nombre del servidor DDE.

 

Tópico es en nombre del archivo creado en el servidor DDE, de donde se toma él dato, y se ha configurado el servicio.

Item es el nombre de la dirección donde se encuentra el dato.

 

Por ejemplo para supervisar desde Excel la estructura SI de un controlador Sipart: con servidor DDE:

=SIPART|DR20!S1

 

DDE consume muchos servicios del sistema, se tiene la aplicación cliente DDE, aplicación servidor DDE y el programa DDEML, éste se usa para hacer el enlace. El servidor DDE mantiene un lista de ítems para cada tópico y de las aplicación clientes que los necesitan. Cuando se agrega o remueve un ítem, el servidor debe reoptimizar el tópico y las listas de enlace. Además, en Visual Basic hay un límite eje tópicos que pueden estar abiertos, por lo que puede ser necesario abrir y cerrar tópicos, lo que hace más lento DDE.

 

El camino que el dato toma para ir del cliente al servidor tiene varios pasos y pasa por varios cuellos de botella. El cliente DDE solicita el dato y el requerimiento es ruteaejo por el sistema operativo a DDEML, quién envía otro requerimiento al servidor, quien su vez toma el dato del PLC. Cuando el servidor tiene el dato se lo envía al DDEM quien envía el dato a todos los clientes que lo solicitaron. Todo esto ocurre en diferentes espacios del sistema operativo, lo que hace los proceso lentos.

 

FastDDE es una mejora a DDE, con la finalidad de aumentar la cantidad de datos por segundo que se pueden comunicar.

 

Para pocos datos se puede utilizar DDE, o cuando se van a manejara datos a través de Excel, pero cuando son muchos mejor utilizar OPC.

 

Figura de ejemplo de intercambio de datos con DDE

 

NETwork DDE: NETDDE

 

NETwork DDE, es una extensión de DDE para enlaces entre aplicaciones corriendo én diferentes computadoras conectadas en redes o por modem.

 

El formato de una dirección DDE para leer un dato es:

 

= \\Servidor\Aplicación | Tópico!Item

 

A la dirección DDE se le ha agregado el nombre del Servidor. Por ejemplo pafa supervisar desde Excel la estructura SI de un   controlador Sipart con servidor DD; conectado al nodo SC10:

 

= \\SC10\SIPART|DR20!S1

 

 

Object Linking and Embedding: OLE

 

Object Linking and Embedding, es un estándar para documentos compuestos desarrollado por Microsofot Permite la creación de objetos en una aplicación y enlazarlos o incorporarlos en una segunda aplicación. Los objetos incorporados mantienen su formato original y enlaces con la aplicación donde fueron creados.

 

Por ejemplo una hoja creada en Excel puede ser incorporada en Word, utilizando él menú insertar y seleccionando la opción objeto, también se puede usar copiar y pegar entre dos aplicaciones. Además se puede editar el objeto incorporado haciendo doble dic sobre él.

 

Es durante la evolución de OLE que aparece el concepto de COM, es con OLE 2.0 que aparece la tecnología COM.

 

Figura 3.1 OLE sobre COM

 

 

"ACTIVE X"

 

Son las tecnologías derivadas de la evolución de OLE y COM. Este término se ha utilizado para objetos que utilizan OLE relacionados con Internet. Generalmente se hace referencia a los controles Active X. "Active X Control!", son controles que utilizan las tecnologías "Active X",. estos controles pueden descargarse y ejecutarse automáticamente a través de un explorador de web. Los programadores pueden desarrollar controles Active X en varios lenguajes como: C, C++, Visual Basic, y Java.

 

A diferencia de DDE, cuando se utiliza ActiveX las cosas son muy directas. Se utiliza en sólo espacio de proceso. El control ActiveX se carga automáticamente en memoria, cuando la aplicación necesita el servicio llama al control directamente, sin intermediarios. Esto ahorra tiempo y recursos del sistema. Tampoco se maneja u lista complicada de tópicos e ítems,;y reoptimizarlas constantemente.

 

Figura 3.2 Objeto ActiveX

 

 

Un objeto ActiveX tiene las siguientes interfaces:

 

• Propiedades: datos que pueden ser leídos y escritos en el objeto. Por ejemplo en un objeto PID son los parámetros: Kc, Ti y Td. También pueden ser el tamaño, los colores o fuentes de texto.

 

• Métodos: Son las funciones del objeto, estas funciones generalmente operan los datos de los objetos. Son la interfaz que el contenedores para comandar el objeto. Por ejemplo en un objeto PID una función puede ser el cambio manual/automático.

 

• Eventos: Permite notificar al contenedor de un evento, también puede pasar parámetros relevantes. En el caso de un objeto PID, el evento puede darse cuando una variable está fuera de rango, el contenedor puede informar al usuario o reaccionar ante esa condición.

 

José Carlos Villajulca

Soy un apasionado ingeniero especializado en Control, Automatizacion e Instrumentación Industrial. Con mas 8 años de experiencia desarrollando proyectos y manteniendo sistemas de control en diversas plantas industriales. Soy director y webmaster de InstrumentacionyControl.NET y de MyAutomationClass.com. Cualquier consulta o comentario lo puedes hacer en la parte de abajo y escribiendo a mi email.

Email Esta dirección de correo electrónico está protegida contra spambots. Usted necesita tener Javascript activado para poder verla.