6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control...

10
6 COMUNICACIÓN CON OPC n el presente Capítulo se detalla la comunicación del autómata con el software de cálculo MATLAB® a través del estándar de comunicación OPC. Se recogen las tareas a realizar en el programa Unity Pro XL y en MATLAB® para la correcta comunicación e intercambio de información entre ambas plataformas, así como los elementos de programación que se pueden usar en MATLAB® para gestionar los datos recibidos desde el autómata y los datos generados y enviados al mismo. 6.1 Introducción a OPC OPC (OLE -Object Linking and Embedding- for Process Control) es un estándar de comunicación en el campo del control y supervisión de procesos industriales, basado en una tecnología de Microsoft®, que ofrece una interfaz común para la comunicación de componentes software y hardware entre sí. La comunicación OPC se realiza a través de una arquitectura cliente-servidor. El servidor OPC es la fuente de datos (como un dispositivo hardware a nivel de planta) y cualquier aplicación basada en OPC puede acceder a dicho servidor para leer/escribir cualquier variable que ofrezca el servidor. Es una solución abierta y flexible al clásico problema de los drivers propietarios. En las siguientes secciones se explica cómo se ha de configurar cada sistema que se ha empleado en el desarrollo del control automático de la planta de refrigeración. 6.2 Configuración de OPC en Unity Pro XL En primer lugar es necesario realizar la configuración de OPC en el autómata, para lo cual se utiliza el software Unity Pro XL, que ya fue empleado para la programación del PLC. Existen dos tareas importantes a realizar: Configuración de la dirección de red del autómata: esta tarea ya fue realizada y descrita en la sección 4.1 y mostrada en la Figura 4.9. Exportación de variables. E Los ordenadores no resuelven los problemas, pero capacitan a las personas para hacerlo. - Steve Ballmer - 89

Transcript of 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control...

Page 1: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

6 COMUNICACIÓN CON OPC

n el presente Capítulo se detalla la comunicación del autómata con el software de cálculo MATLAB® a través del estándar de comunicación OPC. Se recogen las tareas a realizar en el programa Unity Pro XL y en MATLAB® para la correcta comunicación e intercambio de información entre ambas plataformas,

así como los elementos de programación que se pueden usar en MATLAB® para gestionar los datos recibidos desde el autómata y los datos generados y enviados al mismo.

6.1 Introducción a OPC

OPC (OLE -Object Linking and Embedding- for Process Control) es un estándar de comunicación en el campo del control y supervisión de procesos industriales, basado en una tecnología de Microsoft®, que ofrece una interfaz común para la comunicación de componentes software y hardware entre sí. La comunicación OPC se realiza a través de una arquitectura cliente-servidor. El servidor OPC es la fuente de datos (como un dispositivo hardware a nivel de planta) y cualquier aplicación basada en OPC puede acceder a dicho servidor para leer/escribir cualquier variable que ofrezca el servidor. Es una solución abierta y flexible al clásico problema de los drivers propietarios.

En las siguientes secciones se explica cómo se ha de configurar cada sistema que se ha empleado en el desarrollo del control automático de la planta de refrigeración.

6.2 Configuración de OPC en Unity Pro XL

En primer lugar es necesario realizar la configuración de OPC en el autómata, para lo cual se utiliza el software Unity Pro XL, que ya fue empleado para la programación del PLC. Existen dos tareas importantes a realizar:

• Configuración de la dirección de red del autómata: esta tarea ya fue realizada y descrita en la sección 4.1 y mostrada en la Figura 4.9.

• Exportación de variables.

E

Los ordenadores no resuelven los problemas, pero capacitan a las personas para hacerlo.

- Steve Ballmer -

89

Page 2: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

Comunicación con OPC

90

La exportación de las variables se realiza una vez que el programa esté desarrollado completamente y, por tanto, todas las variables que intervienen en él estén creadas y en uso. Se pueden exportar dos tipos de ficheros: con extensión .stu o con extensión .xvm. El fichero con extensión .xvm es un fichero en el cual se guardan solo las variables del proyecto mientras que el archivo con extensión .stu es un archivo en el cual se guardan todos los datos del proyecto.

Existen varias opciones para exportar. La primera consiste en exportar desde el explorador de proyectos todas las variables del sistema. Como se muestra en la Figura 6.1, se pueden seleccionar los distintos tipos de variables que se utilizan en el proyecto o la carpeta entera.

Figura 6.1. Exportación completa de variables del proyecto en Unity Pro XL

A continuación se despliega una ventana común del explorador de Windows® para guardar el archivo. Se elige el lugar y el nombre a elección y se determina el tipo de datos como .xvm. La segunda opción que se plantea consiste en exportar solo las variables deseadas de forma que solo se pueden modificar dichas variables desde cualquier cliente OPC. Este caso es más recomendable para el correcto funcionamiento de la planta puesto que solo se encuentran compartidas las variables que se desee. Para realizar la exportación de manera seleccionada, en primer lugar, se abre el editor de variables. Posteriormente, se seleccionan las variables deseadas. Se recomienda utilizar algún tipo de nomenclatura de forma que se pueda hacer uso del filtro del programa y facilitar la selección. Por último, como se muestra en la Figura 6.2, se selecciona la opción Exportación seleccionada. A continuación, aparece una ventana emergente similar a la ventana del primer método. Las variables se guardan de forma similar, hay que subrayar la importancia del tipo de archivo (.xvm).

Page 3: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

91 Automatización y control de una planta experimental de refrigeración por compresión de vapor

Figura 6.2. Exportación seleccionada de variables del proyecto en Unity Pro XL

6.3 Configuración del servidor de OPC

Para configurar el servidor de OPC se selecciona la aplicación OFS Configuration Tool. Al abrir la misma se despliega una ventana de comandos como se muestra en la Figura 6.3.

Figura 6.3. Ventana principal de la aplicación OFS Configuration Tool

Page 4: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

Comunicación con OPC

92

Al abrir la aplicación aparece marcada la pestaña Devices/Devices Overview. En la ventana superior de la derecha si se pulsa con el botón derecho del botón aparece la opción New Device Alias. Se elige esta opción para configurar el servidor. A continuación aparece junto al resto de iconos de esta ventana uno de la forma que aparece en la Figura 6.4.

Figura 6.4. Icono que aparece al pulsar New Devices Alias

Se cambia el nombre a elección, para este manual se ha elegido el nombre de Proyecto, y se marca el icono mencionado en la Figura 6.4 para que se muestren en la ventana inferior las características del servidor de OPC. En primer lugar se pulsan los puntos suspensivos en Device address para abrir la ventana que se muestra en la Figura 6.5.

Figura 6.5. Ventana Device Address

Para el proyecto aquí expuesto se ha decidido utilizar únicamente la conexión Ethernet-TCP/IP mediante el uso de un dispositivo de gestión de direcciones IP comúnmente conocido como router. Tanto para configurar el PLC real como para configurar el simulador se elige DIRECT/TCP IP y se introduce la dirección IP en la línea TCP/IP tal como se muestra en la Figura 6.5. A continuación, se elige el sistema desde el que se crea la programación

Page 5: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

93 Automatización y control de una planta experimental de refrigeración por compresión de vapor

del PLC, en este caso UNITY. A continuación se deben configurar las variables que se comparten entre los distintos clientes que se conecten al servidor. Para ello se debe haber realizado previamente la exportación de variables (ya sea completa o seleccionada) y conocer la ubicación del archivo con extensión .xvm que se ha importado. Se pulsan los puntos suspensivos de la línea Symbol table file para acceder al explorador de Windows en el que se selecciona el archivo correspondiente, en este caso denominado PLC_PR.xvm.

El siguiente paso es configurar la pestaña OFS Server settings/ Diagnostic. En la Figura 6.6 se muestra la configuración que debe tener la pestaña, en la línea Diagnostic se debe introducir una dirección en la que se quiera guardar el historial de lo que ocurre en el servidor, si es que se desea consultar dicho historial.

Figura 6.6. Pestaña OFS Server settings/Diagnostic

En la Figura 6.7 se muestra la pestaña OFS Server settings/Simulation. En esta pestaña es importante no tener marcada la casilla Simulator mode para que no se use el simulador propio de Unity Pro XL.

Figura 6.7. Pestaña OFS Server settings/Simulation

La Figura 6.8 muestra la configuración de la pestaña OFS Server settings/PLC Software en la cual hay que marcar la casilla Reload Database, que sirve para que se reinicien los valores de las variables cada vez que se vuelve a ejecutar OPC de una sesión a otra.

Page 6: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

Comunicación con OPC

94

Figura 6.8. Pestaña OFS Server settings/PLC Software

La Figura 6.9 muestra la configuración de la pestaña OFS Server settings/Communication donde hay que marcar Rate adapt en Communication overrun behavior para que se adapten los tiempos de comunicación.

Figura 6.9. Pestaña OFS Server settings/Communication

Por último, la Figura 6.10 muestra la configuración de la pestaña OFS Server settings/Options en la que se deben desmarcar ambas opciones de la pestaña Features.

Figura 6.10. Pestaña OFS Serve settings/Options

Page 7: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

95 Automatización y control de una planta experimental de refrigeración por compresión de vapor

6.4 Configuración de OPC Factory Server

OPC Factory Server es el programa que ejerce de servidor de OPC entre el autómata y los demás programas asociados (MATLAB®, SCADA, etc.). El programa actúa como servidor o maestro de las comunicaciones y si el programa se cierra, la comunicación de los programas clientes con el PLC se pierde. En la Figura 6.11 se muestra la ventana principal de este programa.

Figura 6.11. Ventana principal de OPC Factory Server

En esta ventana principal se presentan las estadísticas instantáneas y totales de las comunicaciones que se hayan ido produciendo durante el tiempo en el cual el programa ha estado ejecutándose. Hay que destacar el contador Clients connected que señala el número de sistemas que están conectados al servidor, el autómata no cuenta porque se supone siempre conectado al servidor.

Page 8: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

Comunicación con OPC

96

6.5 Configuración de OPC en MATLAB®

La configuración se realizará mediante la herramienta Simulink, incluida en todos los paquetes de MATLAB®. Para ellos deben utilizarse los bloques que se detallan en las siguientes subsecciones. Los bloques se hallan dentro de la pestaña correspondiente en la biblioteca de Simulink, en la pestaña OPC Toolbox.

6.5.1 Bloque OPC Configuration

Este bloque sirve para configurar MATLAB® como cliente de OPC, conectarse al servidor y desconectarse. El proceso de configuración es sencillo pero hay que tener cuenta que se requiere desconectar el sistema de OPC antes de cerrar el archivo que se está usando.

Para realizar la configuración, en primer lugar, se abre la ventana de parámetros del bloque como se muestra en la Figura 6.12, en la cual se pueden modificar variables como la velocidad del tiempo real y se puede habilitar el latency port para comprobar la latencia o retraso que se produzca en el tiempo real.

Figura 6.12. Parámetros del bloque OPC Configuration de Simulink

Pulsando el botón Configure OPC Clients… se abrirá una ventana como la que aparece en la Figura 6.13.

Figura 6.13. Ventana OPC Clients Manager

Page 9: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

97 Automatización y control de una planta experimental de refrigeración por compresión de vapor

En esta ventana se pulsa el botón Add… para configurar la conexión, apareciendo la ventana de la Figura 6.14. A continuación se pulsa el botón Select…, obteniéndose la ventana mostrada en la Figura 6.15. Se selecciona Schneider-Aut.OFS.2.

Figura 6.14. Ventana OPC Server Properties

Figura 6.15. Ventana OPC Configuration: Select Server

Una vez realizadas las tareas descritas, en la ventana OPC Clients Manager se puede observar el servidor elegido y si está conectado o no. En caso negativo solo hace falta pulsar el botón Connect para hacerlo.

6.5.2 Bloque OPC Read

Se selecciona dicho bloque en la biblioteca de Simulink, en la pestaña OPC Toolbox, y se abren las propiedades del bloque apareciendo la ventana de parámetros de la Figura 6.16.

Figura 6.16. Parámetros del bloque OPC Read

Page 10: 6.1 Introducción a OPCbibing.us.es/proyectos/abreproy/70609/fichero/6...Automatización y control de una planta experimental de refrigeración por compresión de vapor 93 del PLC,

Comunicación con OPC

98

En la ventana se pueden encontrar diversos elementos configurables, por ejemplo el botón Configure OPC Clients… que sirve para realizar la configuración que se ha hecho en la subsección 6.5.1. Para seleccionar las variables a leer desde el programa cliente, hay que escogerlas mediante la pulsación del botón Add items…, que da lugar a la ventana mostrada en la Figura 6.17.

Figura 6.17. Ventana de selección de variables de lectura

En la columna izquierda debe aparecer el nombre del servidor seleccionado en la subsección 6.5.1 y justo debajo la configuración de los diferentes servidores que se hayan configurado en la sección 6.3. Entre ellos se selecciona el adecuado, en este caso el servidor con el nombre Proyecto, se abre la lista de variables y se escogen las variables de lectura deseadas.

6.5.3 Bloque OPC Write

Se selecciona dicho bloque en la biblioteca de Simulink, en la pestaña OPC Toolbox, y se abren las propiedades del bloque apareciendo la ventana de parámetros de la Figura 6.18.

Figura 6.18. Parámetros del bloque OPC Write

El resto del proceso para asignar las variables de escritura se realiza de la misma forma que se ha explicado en la subsección 6.5.2 para el bloque OPC Read.