Академический Документы
Профессиональный Документы
Культура Документы
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
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.
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.
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-
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.
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
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
(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
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.
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 -
[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.