Sei sulla pagina 1di 13

Revista INGENIERA UC

ISSN: 1316-6832
revistaing@uc.edu.ve
Universidad de Carabobo
Venezuela

Villegas, Angel; Herrera, Isaac; Gmez, Gerardo; Rodrguez, Jos; Lugo, Edgar; Pacheco, Jos
Aplicacin para el monitoreo y control de procesos industriales basada en el estndar de
comunicaciones OPC
Revista INGENIERA UC, vol. 15, nm. 3, diciembre, 2008, pp. 7-18
Universidad de Carabobo
Valencia, Venezuela

Disponible en: http://www.redalyc.org/articulo.oa?id=70712293002

Cmo citar el artculo


Nmero completo
Sistema de Informacin Cientfica
Ms informacin del artculo Red de Revistas Cientficas de Amrica Latina, el Caribe, Espaa y Portugal
Pgina de la revista en redalyc.org Proyecto acadmico sin fines de lucro, desarrollado bajo la iniciativa de acceso abierto
REVISTA INGENIERA UC. Vol. 15, No 3, 7-18, 2008

Aplicacin para el monitoreo y control de procesos industriales basada en


el estndar de comunicaciones OPC
Angel Villegas(1), Isaac Herrera(1), Gerardo Gmez(1), Jos Rodrguez(2), Edgar Lugo(1), Jos Pacheco(1)
(1)
Centro de Procesamiento de Imgenes, Escuela de Ingeniera Elctrica,
Facultad de Ingeniera, Valencia, Venezuela.
(2)
Universidad Nacional Experimental de la Fuerza Armada Nacional,
Escuela de Ingeniera Electrnica, Maracay, Venezuela.
Email: avillegas@uc.edu.ve, ,ealugo@uc.edu.ve, jpacheco@uc.edu.ve, isaac.herrera@ve.nestle.com,
ing.gerardo2007@hotmail.com, jmrs@roso-control.com

Resumen

En este trabajo se desarroll una aplicacin de software tipo cliente capaz de realizar actividades de monito-
reo y control de procesos industriales empleando el protocolo de comunicacin OLE para control de procesos,
OPC. Se utiliz el lenguaje C# y la metodologa Extreme Programming (XP). El software permite al usuario, in-
teractuar con datos que pueden provenir de un proceso real o de una simulacin, a travs de algoritmos de control
personalizados realizados en un lenguaje de fcil manejo (VBScript y JavaScript), y adicionalmente genera un
registro histrico de variables OPC que puede ser recuperado en cualquier momento. Al fundamentarse en el es-
tndar OPC, es posible agregar dispositivos de diferentes fabricantes a medida que estos son adquiridos e incorpo-
rados al proceso. El programa puede ser utilizado en aplicaciones de automatizacin de procesos e instrumenta-
cin virtual. La operacin del sistema fue verificada de forma local y remota por medio de una red LAN. La apli-
cacin desarrollada presenta interfaces amigables y una arquitectura abierta, capaz de crecer o adaptarse segn las
necesidades cambiantes de la empresa o instalacin industrial.
Palabras clave: Cliente OPC, algoritmos personalizados de control, registro histrico, OPC.

Software application for industrial process monitoring and control based


on the Object Linking and Embedding for Process Control (OPC) com-
munications standard
Abstract

In this investigation a client software application has been developed which is able to carry out monitoring
and control of industrial processes using the communication protocol OLE for process control, OPC. C# lan-
guage and Extreme Programming (XP) methodology were employed. Through user-defined control algorithms
carried out in an easy to handle scripting language (VBScript and JavaScript), users can manipulate real process
data or simulated data. The software also generates a historical data record of selected variables. This historical
data can be recovered at any moment. Being based on OPC standard, it is possible to add different manufacture
devices as they are acquired and incorporated into the industrial process. The software can be used for process
automation or virtual instrumentation of industrial processes. System functionality was tested for local and remote
operation.
Keywords: OPC client, user-defined control scripts, historical data record, OPC.
1. INTRODUCCIN vista que las computadoras son herramientas capaces
de almacenar, procesar y presentar informacin en
Una de las actividades ms importantes en las forma atractiva y confiable, la tendencia en las indus-
industrias modernas es el monitoreo y control de las trias modernas es asociar sus procesos automatizados
variables asociadas a sus procesos de produccin. En a programas que posean un ambiente en el cual el
Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008 7
Aplicacin para el monitoreo y control de procesos industriales basada en OPC
usuario pueda tener acceso para monitorear y modifi- macin proveniente de diferentes servidores de datos
car los distintos elementos que conforman su sistema basados en la especificacin de acceso a datos OPC.
de control [1]. La aplicacin aprovecha las caractersticas de inter-
operatividad inherentes al estndar OPC para efectuar
Entre las dificultades de las operaciones de con- acciones de monitoreo y control de forma local o re-
trol industrial, resalta la de compartir informacin tan- mota en ambientes industriales heterogneos.
to entre los distintos dispositivos de campo como con
el resto de la empresa o instalacin industrial, ya que, 2. MARCO CONCEPTUAL
es muy posible que los dispositivos transmitan sus
datos usando distintos protocolos, siendo generalmen- 2.1 Especificaciones OPC
te estos incompatibles entre s [2]. Esta situacin limi-
ta la operatividad entre equipos y aplicaciones de dife- El OPC, (OLE para el Control de Procesos) es
rentes fabricantes, obligando a la utilizacin de me- una especificacin tcnica no propietaria definida por
dios de interfaz entre los distintos sistemas; esto ade- la OPC Foundation (http://www.opcfoundation.org) y
ms de propiciar el encarecimiento de los mismos crea consiste en un sistema de interfaces estndar basado
una marcada dependencia, tanto con un determinado en OLE/DCOM de Microsoft [5]. Con OPC es posible
fabricante como con la tecnologa utilizada en la plan- intercambiar informacin entre dispositivos industria-
ta o instalacin [3]. les con sistemas de informacin o aplicativos de escri-
torio. En otras palabras, OPC permite desarrollar de
Esta diversificacin ha obligado a los desarro- manera prctica y eficiente aplicaciones que pretendan
lladores de Sistemas de Control y Adquisicin de Da- comunicarse directamente con equipos industriales
tos (SCADA) a incorporar diferentes tipos de contro- controlados por controladores lgicos programables
ladores, buscando incluir a diversos fabricantes [2]. (PLC) o computadores [5]. OPC extiende el concepto
Todo esto ha evidenciado la necesidad de crear una original del modelo COM y de los enlaces OLE adap-
norma de intercambio de datos a nivel de planta, des- tados a los requerimientos de la automatizacin, con-
encadenando el surgimiento de la tecnologa OLE trol y monitoreo de los procesos industriales.
(Object Linking and Embedding / Enlace e Insercin
de Objetos), denominada OPC (OLE for Process Con- En cooperacin con Microsoft, una fuerza cons-
trol / OLE para Control de Procesos). Progresivamente tituida por cinco empresas, Intellution, Opto 22,
OPC ha sido incorporado en la mayora de los equipos Fisher-Rosemount, Rockwell Software e Intuitiv
de control modernos por lo que el desarrollo de una Software, nace OPC Foundation en Mayo de 1995
aplicacin software para el control de procesos indus- [6]. Este grupo de empresas pretenda definir una serie
triales debe incluir soporte a dicho protocolo [3]. de especificaciones basadas en COM/DCOM, destina-
das a dar solucin al problema de la poca estandariza-
El desarrollo de productos basados en el estn- cin e incompatibilidad entre plataformas en el rea de
dar OPC, as como en las metodologas actuales de la instrumentacin, control y automatizacin industrial
diseo de software, garantizarn en un futuro cercano [7]. El primer borrador de las mismas fue completado
una alta compatibilidad entre plataformas tecnolgicas al final de 1995, gracias a la colaboracin de otras 90
en el rea de la automatizacin industrial [4], permi- compaas a lo largo del mundo, las cuales comproba-
tiendo a su vez, una independencia y generalizacin ron estas especificaciones [6]. El primer conjunto ofi-
que liberar a las industrias de utilizar slo la platafor- cial de especificaciones se complet en Agosto de
ma de programacin propia del fabricante y supondr 1996 y fue publicado bajo el nombre OPC Specifica-
un abaratamiento en la inversin, debido a que ahora, tion. Actualmente se le conoce como especificacin
el usuario tendr mayores alternativas para escoger los OPC de acceso a datos [8].
equipos con la tecnologa que considere ms conve-
niente a su proceso. La motivacin principal del surgimiento del
OPC se fundament en la necesidad de comunicar las
En este trabajo se desarroll una aplicacin de distintas y numerosas fuentes de datos en un proceso
software tipo cliente para el monitoreo y control de industrial como los dispositivos de medicin en cam-
procesos industriales por computadora capaz de reci- po, los dispositivos de supervisin de procesos y las
bir, visualizar y manipular de forma simultnea infor- bases de datos en las salas de control [3]. Para lograr
8 Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008
Villegas, Herrera, Gmez, Rodrguez, Lugo y Pacheco

esto, inicialmente los fabricantes utilizaban una arqui- En estas circunstancias la complejidad de reali-
tectura basada en controladores, tal como se muestra zar aplicaciones industriales era elevada, porque no
en el esquema de la Figura 1. exista una forma estndar de definir las conexiones
sin depender del tipo de dispositivo. El OPC elimin
este problema estableciendo una interfaz de comunica-
cin comn, lo cual ha beneficiado enormemente el
desarrollo de aplicaciones HMI (Human Machine In-
terface) y sistemas SCADA [5]. As, el uso de la tec-
nologa OPC le brinda a los fabricantes de aplicacio-
nes (servidores y/o clientes) un mayor rango de opera-
cin al no estar limitado por la complejidad y funcio-
nalidad de los componentes de hardware, de esta ma-
nera los componentes ms diversos de diferentes fabri-
cantes pueden trabajar juntos sin requerirse programa-
cin adicional para adaptar la interfaz entre s. OPC
emerge entonces como una tecnologa conveniente y
eficiente para el enlace de componentes de automati-
zacin y sus respectivos equipos de control.

Figura 1. Modelo de arquitectura de automatizacin indus- La Figura 2 muestra el modelo de arquitectura


trial basado en controladores [5]. simplificado de un sistema automatizado basado en
OPC.
De acuerdo a este esquema, las aplicaciones de
software de control industrial acceden a los datos de
los dispositivos de control utilizando controladores
desarrollados especficamente para los equipos exis-
tentes [9]. Esta arquitectura, conduce a una serie de
problemas como se indica en [3]:

Duplicacin de esfuerzo: Se deben escribir pro-


gramas controladores o drivers especficos para el
hardware de un vendedor particular.
Inconsistencias entre vendedores de controlado-
res: Las caractersticas de hardware no son sopor-
tadas por todos los controladores de dispositivos
causando conflictos de compatibilidad entre estos.
Poco soporte para cambios en caractersticas de
hardware: Un cambio en las capacidades del hard- Figura 2. Modelo de arquitectura de automatizacin indus-
trial basado en OPC [5].
ware puede ocasionar conflictos o fallas en los con-
troladores. La utilizacin de este modelo ofrece varias ven-
Conflictos de acceso: Esta situacin se presenta tajas, entre estas destacan [3]:
debido a que dos paquetes de software no pueden Se establece una lnea divisoria entre los fabrican-
acceder simultneamente al mismo dispositivo, tes de hardware y software dando flexibilidad a los
porque cada uno contiene controladores indepen- clientes para utilizar tecnologas heterogneas en
dientes. Los fabricantes de hardware procuran re- sus aplicaciones.
solver estos problemas desarrollando nuevos con- Los fabricantes de hardware tienen que hacer sola-
troladores, pero son obstaculizados por diferencias mente un conjunto de componentes de software
en los protocolos del cliente. No se puede desarro- para que los clientes los utilicen en sus aplicacio-
llar un controlador eficiente que pueda ser utilizado nes.
por todos los diferentes tipos de clientes. Los desarrolladores de software no tienen que rees-
cribir controladores debido a cambios en caracters-
Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008 9
Aplicacin para el monitoreo y control de procesos industriales basada en OPC

ticas o adiciones en un hardware. La mayora de los clientes OPC se construyen


Los clientes tendrn ms opciones con las cuales utilizando la interfaz de automatizacin ya que esta
puedan desarrollar diversos sistemas de aplicacin admite ser desarrollada en lenguajes como Visual Ba-
a nivel industrial. sic 6.0, Borland Delphi y recientemente en platafor-
Los desarrolladores de servidores pueden actualizar ma .NET utilizando la librera COM-Interop [5]. In-
sus productos en conformidad a los cambios en el clusive las herramientas como Microsoft Excel, deben
hardware sin afectar al resto del sistema, permitien- usar las interfaces de automatizacin. Los clientes que
do mantener una plataforma eficiente de adquisi- deseen implementar la interfaz personalizada deben
cin de datos. ser desarrollados en el lenguaje Visual C++.

Las especificaciones OPC estn disponibles en 2.2 Metodologas giles de desarrollo de software
la organizacin OPC en forma gratuita y definen un
conjunto de normas aplicables a diferentes tipos de En febrero de 2001, tras una reunin celebrada
interfaz utilizados en aplicaciones de automatizacin en UTA, EEUU, nace el trmino gil aplicado al
industrial. La Tabla 1, muestra las especificaciones desarrollo de software. En esta reunin participan un
OPC ms importantes. grupo de 17 expertos de la industria del software, in-
cluyendo algunos de los creadores o impulsores de
La arquitectura OPC es del tipo cliente servi- metodologas de software [12]. Su objetivo fue pro-
dor como en todas las aplicaciones COM, donde el yectar los valores y principios que deberan permitir a
componente servidor suministra una interfaz a los ob- los equipos desarrollar software rpidamente, respon-
jetos OPC, a la vez que administra y gerencia dichos diendo a los cambios que puedan surgir a lo largo del
objetos [4]. Una aplicacin cliente OPC se comunica proyecto. Tras esta reunin se cre The Agile Allian-
con un servidor OPC al invocar las funciones de estas ce (http://www.agilealliance.com) una organizacin,
interfaces OPC. La utilizacin de tecnologa OLE sin fines de lucro, dedicada a promover los conceptos
(DCOM), permite que los clientes puedan tener acceso relacionados con el desarrollo gil de software y ayu-
a servidores de datos locales o remotos. dar a las organizaciones para que adopten dichos con-
ceptos. El punto de partida es el Manifiesto gil, un
Para la implementacin de los clientes y servi- documento que resume la filosofa gil.
dores de datos OPC se han definido dos tipos de inter-
faz: la Interfaz Personalizada (Custom Interface) 2.2.1 Extreme programming XP
descrita en la especificacin que lleva este mismo
nombre [10] y la Interfaz de Automatizacin descri- XP es una metodologa gil centrada en poten-
ta en la Data Access Automation Interface Standard ciar las relaciones interpersonales como clave para el
[11]. xito en desarrollo de software, promoviendo el traba-

Tabla 1. Principales especificaciones OPC existentes en la actualidad.

Especificacin Contenido
OPC Introduccin Descripciones generales y aplicacin de las especificaciones OPC.
OPC Definiciones comunes e Interfaces Definiciones de trminos utilizados en las especificaciones OPC.
OPC Acceso de datos Definicin de un interfaz para la lectura y escritura de datos en tiempo real.
OPC Alarmas y Eventos Definicin de un interfaz para el monitoreo de alarmas y eventos.
OPC Datos Histricos Definicin de un interfaz para el acceso de datos histricos.
OPC Seguridad Definicin de un interfaz para la utilizacin de polticas de seguridad.
OPC y XML Integracin del OPC y el XML para construccin de aplicaciones Web.
OPC Intercambio de Datos (DX) Comunicaciones entre servidores servidores de datos en los procesos.
OPC Interfaz y comandos de Ejecucin Definicin de un interfaz para el intercambio de comandos y su ejecucin.

10 Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008


Villegas, Herrera, Gmez, Rodrguez, Lugo y Pacheco

jo en equipo, preocupndose por el aprendizaje de los


AplicacindeSoftwareOPC
desarrolladores, y propiciando un buen clima de traba-
jo. XP se basa en realimentacin continua entre el
cliente y el equipo de desarrollo, comunicacin fluida IniciarProyecto
entre todos los participantes, simplicidad en las solu-
ciones implementadas y coraje para enfrentar los cam-
bios. XP se define como especialmente adecuada para
Representarprocesos
proyectos con requisitos imprecisos y muy cambian- industrialesmediante
tes, y donde existe un alto riesgo tcnico [13]. instrumentosvirtuales

Las prcticas y reglas de la Programacin Ex-


trema se agrupan en cuatro etapas [14]: Planificacin, Conexindelos
instrumentosvirtualconlos
Diseo, Codificacin y Pruebas. servidoresdisponibles

3. METODOLOGA UTILIZADA
Implementacindealgoritmos
decontrolpersonalizadospormedios
El desarrollo del software, se fundament en el deScriptsejecutadosenintervalos
detiempodefinidos
uso de metodologas giles, especficamente en Extre-
me Programming (Programacin Extrema), debido
a que sta cumple con todos los requerimientos para Guardarunregistrohistrico
realizar una programacin de calidad, estableciendo dedatos

una relacin eficaz de trabajo en equipo y evaluacin


constante del funcionamiento ptimo del producto
[14]. Por otra parte, se incorpor el uso de diagramas
UML (Lenguaje Unificado de Modelado) para docu- Figura 3. Diagrama de casos de uso general
mentar el funcionamiento y las caractersticas que la de la aplicacin de software OPC.
aplicacin presentar al usuario. Especficamente, fue-
ron utilizados diagramas de Casos de Uso, ya que es- Se elaboraron las historias de usuario requeri-
tos representan al sistema desde el punto de vista del das, las cuales fueron definidas por el equipo de traba-
usuario, es decir, describen un uso del sistema y cmo jo involucrado en el proyecto, para hacer un levanta-
interacta con el usuario [15]. miento de todos los requerimientos funcionales nece-
sarios en el software. Las historias de usuarios fueron
Para describir las funcionalidades del software las siguientes:
desde el punto de vista del usuario, se dividi el pro- Implementar una interfaz donde el usuario tenga
grama en cinco casos de uso los cuales representan las fcil acceso a tres reas de trabajo: (i) procesos, (ii)
acciones ms importantes realizadas por ste y permi- guin de control (script) y (iii) registro histrico. El
ten definir el escenario de funcionamiento y las carac- rea de procesos contar con una pizarra para es-
tersticas que la aplicacin presenta. El Diagrama de quematizar procesos industriales mediante el uso
Casos de Uso general del software se exhibe en la Fi- de instrumentos virtuales. La seccin de script in-
gura 3. cluye un entorno grfico donde el usuario pueda
abrir, crear, editar, ejecutar y detener guiones de
3.1 Aplicacin de la programacin extrema duran- control escritos en lenguaje JScript o VBScrip. El
te el desarrollo del proyecto rea de registro histrico deber contar con un gr-
fico donde se puedan visualizar y almacenar el
Planificacin comportamiento de las variables de inters presen-
tes en el proceso.
Se decidi optar por un lenguaje que sea senci- Crear y eliminar los instrumentos virtuales de for-
llo de utilizar, orientado a objetos y con un entorno de ma dinmica.
desarrollo gratuito, siendo seleccionado el lenguaje Arrastrar y soltar cada instrumento en el rea de
C#, en su versin Visual C# 2005 Express Edi- procesos, de manera que puedan ser reubicados a
tion [16]. disposicin de las caractersticas de cada proceso.
Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008 11
Aplicacin para el monitoreo y control de procesos industriales basada en OPC

Disponer de un men de propiedades para modifi- Codificacin


car las caractersticas de cada instrumento y esta-
blecer conexin con los servidores OPC disponi- En la etapa de codificacin se propuso como
bles. norma a seguir, la elaboracin de soluciones parciales
Elaborar un men principal para la aplicacin, don- las cuales, una vez probadas se trasladaron y unifica-
de el usuario pueda abrir, crear, guardar y cerrar un ron con el proyecto principal. La codificacin se llev
proyecto, incluyendo la posibilidad de guardar el a cabo en parejas para procurar as que pasen desaper-
proyecto al cerrar la aplicacin. cibidos la menor cantidad de errores y se incremente
la productividad, contribuyendo a la calidad del desa-
Una vez definidos los requerimientos funciona- rrollo. La metodologa sostiene que no debe trabajarse
les a travs de las historias de usuario, se discuti el sobre tiempos para evitar el cansancio y mejorar el
grado de dificultad de cada uno de ellos, permitiendo rendimiento de los programadores, por lo tanto se fij
acordar el tiempo de entrega de cada versin parcial un mximo de 38 horas semanales de dedicacin al
del software. Otros miembros del equipo de trabajo, se proyecto y 6 horas diarias continuas de programacin.
encargaron de validar mediante pruebas operativas el
debido funcionamiento de la solucin planteada para Pruebas
cada requerimiento funcional. En caso de cumplir con
la versin correspondiente en un tiempo menor, se Las pruebas unitarias e integrales fueron lleva-
acord realizar la entrega de dicha versin del softwa- das a cabo por los programadores. Para las primeras,
re antes del momento previsto, con el fin de aprove- se crearon soluciones especficas para cada tarea o
char el tiempo restante para cumplir con los requeri- requerimiento del software, las cuales fueron ejecuta-
mientos funcionales de las otras historias de usuarios, das, depuradas y revisadas de forma constante en bs-
contribuyendo as con mejorar la velocidad del pro- queda de una solucin que pudiera ser llevada al pro-
yecto en cada iteracin. El tiempo de cada iteracin se yecto principal. Se efectuaron pruebas para verificar:
fij en dos semanas, despus de las cuales se evalu la (i) capacidad de colocar y arrastrar instrumentos en el
cantidad de historias de usuario realizadas, o el avance rea de trabajo, (ii) edicin de los instrumentos virtua-
parcial obtenido hasta el momento, para medir la velo- les, (iii) conexin con los servidores y adquisicin de
cidad del proyecto. datos, (iv) capacidad de escritura y edicin de los
guiones de control, (v) interaccin entre los guiones de
Diseo control y los instrumentos virtuales, (vi) generacin,
visualizacin y recuperacin de registros histricos de
Para la etapa de diseo se realizaron reuniones y variables OPC. Una vez obtenida una solucin para
debates entre los programadores en bsqueda de solu- cada requerimiento funcional, este se incorpor de
ciones efectivas para los distintos requerimientos fun- forma individual al proyecto general, siendo sometido
cionales del proyecto. Se decidi listar las caractersti- de nuevo a una serie de pruebas integrales para garan-
cas necesarias que deben cumplirse, luego de esto se tizar que su interaccin con los otros componentes del
proponen varios modelos de solucin, para despus programa fuese exitosa. Las pruebas de aceptacin
tomar una decisin segn la dificultad en su elabora- fueron conducidas por otros miembros del equipo de
cin y el aporte que dicha solucin brinda al producto. trabajo, implicando en algunos casos la elaboracin de
Durante el desarrollo de la etapa de diseo, se trat en demostraciones a personas externas al proyecto.
lo posible de centrarse en los requerimientos que se
plantean en las historias de usuario, evitando agregar 4. RESULTADOS
funcionalidad extra al proyecto apegados al plantea-
miento expuesto en la metodologa XP, para evitar as 4.1 Descripcin del software
un desperdicio de tiempo y recursos. Luego de deter-
minar la solucin ms adecuada, segn el criterio Se desarroll una aplicacin de software que
compartido de los programadores, se replantearon las permite realizar el monitoreo y control de procesos
ideas y se discuti la solucin en busca de una simpli- industriales por computadora. La aplicacin fue des-
ficacin o para evitar duplicacin de cdigo y mejorar arrollada utilizando el lenguaje C# de Microsoft y pre-
su estructura. senta una instalacin sencilla, pocas exigencias de
hardware, interfaces amigables y una arquitectura
12 Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008
Villegas, Herrera, Gmez, Rodrguez, Lugo y Pacheco

abierta, capaz de crecer o adaptarse segn las necesi- 4.1.1 Insercin instrumentos
dades cambiantes de la instalacin industrial.
Esta accin puede llevarse a cabo desde la barra
El usuario cuenta con un entorno visual donde de instrumentos ubicada en la parte izquierda de la
puede insertar y manipular los instrumentos asociados pantalla (ver Figura 4) o desde el men
a las variables proporcionadas por cualquier servidor Instrumentos. Se encuentran disponibles 48 elemen-
OPC. Adicionalmente, existe la posibilidad de modifi- tos o instrumentos diferentes, los cuales incluyen di-
car las diferentes caractersticas visuales y el compor- versos tipos de indicadores analgicos y digitales, ins-
tamiento de los instrumentos para que se adecuen al trumentos de medicin, actuadores, grficos, entre
proceso, e incluso se pueden implementar algoritmos otros.
de control personalizados por medio de guiones
(scripts) ejecutados en intervalos de tiempo definidos 4.1.2 Edicin de un instrumento
por el usuario/operador. El software genera adems,
un registro histrico de las variables elegidas que pue- Mediante un men contextual se obtiene acceso
de ser recuperado en cualquier momento. Al funda- a: (i) modificar la posicin relativa entre el instrumen-
mentarse en el estndar OPC, es posible agregar dis- to y los dems objetos presentes en la pantalla, (ii)
positivos de diferentes fabricantes a medida que estos cortar, copiar y eliminar el instrumento (iii) cambiar la
son adquiridos e incorporados al proceso. configuracin y propiedades del objeto (iv) cambiar el
nombre y tamao del instrumento.
La Figura 4 muestra la ventana principal del
programa, la cual incluye los siguientes elementos (1) 4.1.3 Conexin con un servidor OPC de acceso a
Barra de instrumentos, (2) Barra de tareas, (3) Venta- datos
na de proceso, (4) Ventana de script, (5) Ventana de
registro histrico y (6) Estado de ejecucin del script. Dentro de la ventana de propiedades de cada
instrumento existe una pestaa identificada con el
A continuacin se describen las acciones ms nombre OPC la cual permite tener acceso a la panta-
importantes que pueden ser realizadas dentro de la lla de configuracin para establecer el enlace entre
aplicacin. alguna de las propiedades del objeto y una variable

Figura 4. Ventana principal del programa.

Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008 13


Aplicacin para el monitoreo y control de procesos industriales basada en OPC

(tem) OPC. Para ello debe indicarse la propiedad que sugerencias a medida que el usuario se encuentra es-
se desea enlazar, el computador de ubicacin del ser- cribiendo su programa. Esta herramienta facilita nota-
vidor (se omite si es local), el nombre del servidor, el blemente la escritura de los guiones ya que presenta
nombre del tem OPC y la velocidad de actualizacin un entorno similar a los ambientes de programacin
de la variable en la aplicacin cliente, como se mues- utilizados por todos los lenguajes modernos.
tra en la Figura 5.
4.1.5 Manejo de datos histricos

La aplicacin incluye una regin que brinda la


posibilidad de llevar un registro histrico de los valo-
res asociados a la(s) variable(s) OPC que el usuario
seleccione, la cual es mostrada en la Figura 7. Los da-
tos del histrico se almacenan en un archivo
.HistoOPCSoft con la fecha del momento de la cap-
tura de los datos y se ubican por defecto en la subcar-
peta Historicos, dentro de la carpeta que lleva el
nombre del proyecto. Los datos se guardan a interva-
los de un minuto (estando el programa en modo de
Figura 5. Conexin con una variable OPC. ejecucin), y al cerrar el proyecto o la aplicacin. El
registro puede ser recuperado del computador y visua-
lizado en cualquier momento.
4.1.4 Creacin, edicin y ejecucin de guiones
(scripts) 4.2 Pruebas experimentales

El rea de edicin de guiones, mostrada en la Se realizaron pruebas de funcionalidad con ser-


Figura 6, permite escribir algoritmos de control perso- vidores locales de datos y un servidor remoto dentro
nalizados para que se ejecuten en intervalos de tiempo de una Red LAN, los cuales proporcionan datos de
definidos por el usuario. Se dispone como lenguajes procesos reales o simulados.
de programacin: Visual Basic Script y Java Script.
En la parte izquierda de la ventana de edicin 4.2.1 Prueba de visualizacin sencilla de variables
simuladas

Se realiz la simulacin del proceso mostrado


en la Figura 8. Los datos utilizados para simular el
nivel del lquido en el interior del tanque as como el
estado de las vlvulas fueron obtenidos desde un si-
mulador. El objetivo principal de la prueba consisti
en observar las variaciones ocurridas en los elementos
virtuales como consecuencia de los cambios en las
variables. En el experimento, se emplearon simulado-
res de datos OPC de las empresas: ICONICS [17] y
Figura 6. Ventana de edicin de guiones con ayuda MATRIKON OPC [18].
contextual dinmica.
Las variables mostradas en la Tabla 2, fueron
de guiones, se encuentran botones de acceso rpido reconocidas y asociadas a los instrumentos virtuales
que insertan algunas de las estructuras de programa- del software de forma satisfactoria. Se logr verificar
cin de uso frecuente con la sintaxis adecuada para el que los tems OPC existentes en dos servidores dife-
lenguaje que se est utilizando. Este script se puede rentes eran visualizadas de forma correcta en la aplica-
almacenar, cargar desde un archivo, ejecutarse y dete- cin cliente. Adems se verific la capacidad de inter
nerse mediante las funciones disponibles en una barra operatividad con diferentes servidores de datos de for-
de tareas. La ventana de edicin muestra un cuadro de ma simultnea.
14 Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008
Villegas, Herrera, Gmez, Rodrguez, Lugo y Pacheco

Figura 7. Ventana de datos histricos.

Tabla 2. Variables OPC asociadas a los elementos virtuales.


Instrumento Virtual
Simulador Variable Tipo de Variable Permisos
Asociado
ICONICS NivelLiquido Numrica (doble) Lectura/Escritura Tanque0

ICONICS NivelLiquido Numrica (doble) Lectura/Escritura Grafico0

MATRIKON Valve0 Booleana Lectura/Escritura Valvula0

MATRIKON Valve1 Booleana Lectura/Escritura Valvula1

4.2.2 Conexin con servidor local de datos reales

Para verificar la operatividad de la aplicacin y


la correcta adquisicin de datos provenientes de un
servidor local en tiempo real, se elabor el diseo de
la pantalla mostrada en la Figura 9.

Figura 8. Visualizacin sencilla de variables. Figura 9. Prueba de funcionamiento de scripts y adquisicin


de datos desde un servidor local en tiempo real.

Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008 15


Aplicacin para el monitoreo y control de procesos industriales basada en OPC

En esta experiencia, la variable Temperatura 4.2.3 Conexin con un servidor remoto dentro de
es suministrada por un servidor llamado VisorOPC, una red LAN
el cual ofrece los datos adquiridos desde un termme-
tro digital con tecnologa 1-Wire [19]. Esta variable es Para verificar la funcionalidad y operatividad de
asociada con dos instrumentos virtuales, en este caso la aplicacin se estableci una conexin con un servi-
un indicador numrico analgico y un termmetro. dor remoto dentro de una red LAN. La prueba consis-
Asimismo, se opt por asociar otro instrumento virtual ti en la simulacin de un sistema de control de tem-
con la hora del sistema a travs de la ejecucin del peratura para un tanque de agua, en el cual la tempera-
script. tura deseada es de 44 grados centgrados.

Mediante la ejecucin exitosa de esta prueba, se Para ello se utiliz un control ON-OFF con una
valid la operacin del mdulo encargado de ejecutar histresis de 1 grado centgrado en torno al punto de
el guin de control, ya que la hora mostrada en la pan- ajuste. El montaje experimental presentado en la Figu-
talla de la aplicacin estaba sincronizada con la hora ra 10 utiliz dos computadores, uno empleado como
del computador donde se ejecut la aplicacin. Tam- servidor, el cual contiene el hardware de adquisicin
bin se logr adquirir y visualizar datos de la variable de datos necesario para la medicin de la temperatura
temperatura provenientes de un servidor local en tiem- y el manejo (encendido/apagado) de las fuentes de
po real . calor, y el otro computador ejecut la aplicacin clien-
te para el control y monitoreo de procesos.

TarjetaAdquisicin
Proceso
DeDatos
AplicacinCliente
enPCRemoto

Concentrador
Hub
AplicacinServidor
enPCLocal
Figura 10. Montaje experimental utilizado para validar la
operacin remota del software.

16 Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008


Villegas, Herrera, Gmez, Rodrguez, Lugo y Pacheco

La Tabla 3 muestra las mediciones efectuadas ambientes industriales reales como en el rea didctica
en diferentes condiciones de trabajo del proceso simu- pudiendo ser utilizada en laboratorios relacionados
lado. Mediante la activacin y desactivacin correcta con las reas de automatizacin y control de procesos
de las fuentes de calor, de acuerdo a la temperatura e instrumentacin virtual entre otros.
existente, se verific la operatividad y funcionalidad
de la aplicacin para realizar el control de temperatura Se verific la capacidad de operar el software
propuesto. en ambientes heterogneos, recibiendo datos desde
diferentes servidores, esto es una caracterstica necesa-
Tabla 3. Resultados obtenidos al controlar un proceso de ria de todas las aplicaciones basadas en OPC, debido a
forma remota.
la arquitectura concebida para las automatizaciones
Edo Edo Edo Edo Int fundamentadas en dicho conjunto de especificaciones.
T0 (C) Modo
V1 V2 L1 L2 Manual
6. REFERENCIAS
42.36 Abierta Abierta On On Auto -
44.58 Abierta Abierta On On Auto - [1] Wang L. y Tan K. C. (2006). Modern Industrial
45.91 Abierta Abierta Off Off Auto - Automation Software Design. John Wiley &
Sons, Inc., Hoboken, New Jersey, USA.
44.32 Abierta Abierta On On Manual On
43.55 Cerrada Cerrada Off Off Auto - [2] Distefano M. (1.999). Comunicaciones en En-
tornos Industriales. Facultad de Ingeniera. Uni-
44.67 Cerrada Abierta Off Off Auto -
versidad Nacional de Cuyo, Argentina.
42.12 Abierta Cerrada Off Off Auto -

46.04 Abierta Abierta Off Off Manual Off


[3] OPC FOUNDATION (1998). OPC Overview,
versin 1.0. Extrado el 14 de mayo de 2007 des-
de: www.opcfoundation.org.
Todas las pruebas fueron realizadas en compu-
tadores equipados con sistema operativo Windows XP [4] Shimanuki Y. (1999). OLE for process control
Service Pack 2. La aplicacin fue instalada y ejecutada (OPC) for new industrial automation systems.
de forma exitosa en computadores con procesadores Proceedings of the IEEE International Confer-
Intel de las series Pentium 4 , Pentium Dual Core y ence on Systems, Man, and Cybernetics (SMC
Pentium Core 2 Duo, de diferentes velocidades. 99), Vol. 6, pp. 1048-1050. Tokio, Japn.

5. CONCLUSIONES [5] Martnez M. (2003). Cliente OPC realizado en


Visual Basic .NET. Extrado el 25 de Octubre
En el proyecto se incluyeron instrumentos de de 2007 desde: www.microsoft.com/spanish/
medicin y control como: medidores, termmetro, msdn/comunidad/mtj.net/voices/art123.asp
indicadores, interruptores, entre otros, los cuales pue-
den ser asociados con cualquier variable dentro de un [6] Pattle R. y Ramisch J. (1997). OPC the de facto
entorno industrial. Se adicion la capacidad de repre- standard for real time communication. Proceed-
sentar tuberas e incluir imgenes de instrumentos para ings of the 1997 Joint Workshop on Parallel and
ampliar las capacidades del software de representar Distributed Real-Time Systems (WPDRTS /
procesos industriales. OORTS '97) (pp. 289-294). Washington: IEEE
Computer Society.
La aplicacin desarrollada es una aplicacin
sencilla de instalar, sin excesivas exigencias de hard- [7] Iwanitz F. y Lange J. (2002). OPC Fundamen-
ware, con interfaces amigables y de arquitectura abier- tals, Implementation and Application (2 da ed.).
ta, capaz de crecer o adaptarse segn las necesidades Heidelberg, Alemania: Hthig GMBH & Co KG
cambiantes de la empresa o instalacin industrial. Heidelberg.

Las experiencias y pruebas realizadas indican


que la herramienta puede ser de gran valor tanto en
Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008 17
Aplicacin para el monitoreo y control de procesos industriales basada en OPC

[8] OPC Foundation. (s.f.) : What is OPC?. Extra-


do el 10 de Enero de 2007, desde: [14] Wells D. (2001): The Rules and Practices of
www.opcfoundation.org/Default.aspx/01_about/ Extreme Programming. Extrado el 02 de Julio
01_whatis.asp?MID=AboutOPC. de 2007 desde: www.extremeprogramming.org.

[9] Zheng L. & Nakagawa H. (2002): OPC (OLE [15] Flower, M. (2003). UML Distilled: A Brief
for process control) specification and its develop- Guide to the Standard Object Modeling Lan-
ments. Proceedings of the 41st SICE Annual guage, 3 ra Ed. Addison Wesley. pg 99.
Conference (SICE 2002), Vol.2, pp. 917-920.
[16] Microsoft (2007) : Visual C# 2005 Express Edi-
[10] OPC Foundation (2003): Data Access Custom tion. Extrado el 10 de Mayo de 2007 desde:
Interface Standard Versin 3.00. www.microsoft.com/spanish/msdn/vstudio/
Express/VCS/default.mspx.
[11] OPC Foundation (1999): Data Access Automa-
tion Interface Standard Version 2.02. [17] ICONICS (2007): OPC Simulator Server. Ex-
trado el 18 de Junio de 2007 desde:
[12] Highsmish J. (2001): History: The Agile Mani- www.iconics.com/support/free_tools.asp.
festo. Extrado el 30 de Junio de 2007, desde:
http://agilemanifesto.org/history.html. [18] MATRIKON OPC (2007): MatrikonOPC Simu-
lation Server. Extrado el 20 de Junio de 2007
[13] Beck K. (2000): Extreme Programming Ex- desde: www.matrikonopc.com/downloads/176/
plained. Embrace Change, Addison Wesley- index.aspx.
Professional.

18 Rev. INGENIERA UC. Vol. 15, No 3, Diciembre 2008