“SCADA” de bajo coste.

NoejucomLOGO     logo_v1

Lectura/Escritura de Variables DDE/OPC con RSLinx Gateway y Excel.

Desde hace años he usado una funcionalidad de RSLinx Gateway, que es la de servidor DDE/OPC, esta funcionalidad junto al software Excel, nos permite monitorizar y supervisar procesos, y si usamos aplicaciones gratuitas como las de ICONICS, podemos hacernos una interfaz bastante “apañada” para probar sistemas de control. Por ello, me he animado a realizar una entrada sobre ello.

Para comenzar, os aconsejo que leáis este artículo de infoplc, para poder tener una ligera idea de DDE, OLE y OPC.

Lo haremos realizando los siguientes pasos:

1. Descarga de ActiveX de ICONICS.

2. Instalación de ActiveX en Excel 2007.

3. Arquitectura de Control para adquisición y escritura de datos.

4. Configuración de tópico DDE/OPC en RSLinx Gateway.

5. Crear entorno HMI en Excel.

6. Ejemplo Práctico.

1. Descarga de ActiveX de ICONICS.

En el siguiente enlace, os podéis bajar los ActiveX gratuitos tras rellenar un pequeño formulario.

http://www.iconics.com/Home/Products/OPC-Connectivity/Free-OPC-Tools.aspx#.VUUFleTdwfA

Vamos a usar:

  • OPC Enabled Gauge ActiveX Control (“templates” de visualización e introducción de valores analógicos).
  • OPC Enabled Switch ActiveX Control (“templates” de interruptores digitales).
  • OPC Enabled Vessel ActiveX Control (“templates” de visualizadores de valores analógicos).

descargasFree Tools de ICONICS

 activexActiveX de ICONICS por defecto

2. Instalación de ActiveX en Excel 2007.

Una vez descargado los tres ficheros, hay que descomprimirlos:

barraprogramador0

barraprogramador1

Ejecutar los ficheros “.exe”, así instalaremos los tres “templates” de ICONICS en Excel 2007.

barraprogramador2

barraprogramador3

barraprogramador4

Puede que no aparezca en vuestro Excel la pestaña “progamador”, se habilita en Excel 2007 en “Opciones de Excel\Más frecuentes”:

“Mostrar ficha Programador en la cinta de opciones”

barraprogramador000

Si se han instalado correctamente en la pestaña “Programador\Insertar\Más controles” deben aparecer los tres ActiveX de Iconics.

barraprogramador5

barraprogramador6

3. Arquitectura de Control para adquisición y escritura de datos.

En el sistema que vamos a realizar la lectura/escritura de variables, consta de:

  • PAC (PLC) CompactLogix L24ER QB1B con periferia E/S descentralizada POINT I/O de Allen Bradley. IP 192.168.1.200
  • Módulo E/S POINT I/O con cabecera 1734-AENTR con dos módulos 1734-IB8 y uno 1734-OB8. IP 192.168.1.201
  • Módulo E/S POINT I/O con cabecera 1734-AENTR con un módulo 1734-8CFG. IP 192.168.1.202
  • Switch no gestionable TP-Link TL-SG108.

IMG_0041

El PAC dispone de un programa sencillo de intercambio de variables que está disponible en el siguiente enlace:

Programa PAC

La lectura/escritura la vamos a realizar sobre las variables del PAC (Controller Tags), en futuras entradas veremos como leer y escribir valores directamente en la periferia E/S.

 4. Configuración de tópico DDE/OPC en RSLinx Gateway.

Para comenzar debemos tener instalado RSLinx Gateway, RSLinx Lite no permite DDE/OPC.

RSLinx0

4.1 Crear Driver Ethernet Devices.

Primero debemos crear el driver de comunicaciones, en la barra de herramientas “Communications\Configure Drivers”.

rslin00

Seleccionamos en “Available Driver Types”:

Ethernet Devices”

rslinx1

rslinx2

Seleccionamos el nombre para nuestro driver, en nuestro ejemplo será “NOEJU”.

rslinx3

Añadimos las IP’s de los equipos, vamos a añadir las tres, no obstante sólo es imprescindible la del PAC 192.168.1.200.

rslinx4

En este caso, la opción “Startup Mode” la vamos a dejar en “Automatic”, ya que queremos que el driver esté arrancado siempre que RSLinx lo esté.rslinx5

Una vez que hemos creado el driver abrimos RSWho para comprobar la conectividad, en la barra de herramientas “Communications\RSWho”.

Si aparece una aspa roja, es que no tenemos conexión con el PAC, si ocurre esto, ejecutaremos en la consola un comando “ping” y si nos da fallo procederemos a revisar la red.

 fallocomunicaciones

ping

Otra incidencia que se nos puede presentar, es la falta de “EDS” (Electronic Data Sheet) en nuestra librería de dispositivos, entonces nos aparecerá una interrogación de color amarillo. Para solucionar este problema podemos descargarla de la web de la ODVA o Allen Bradley o poniéndonos encima del equipo, pulsando botón derecho “Upload EDS file from device”.

rslinx6

rslinx7

Seguimos todos los pasos y actualizaremos todos los modelos de L2 CompactLogix.

rslinx8 rslinx9 rslinx10 rslinx11 rslinx12

Si hemos realizado correctamente la actualización de “EDS”, podremos visualizar nuestro PAC.

rslinx13

4.2 Crear tópico DDE/OPC.

Una vez que tenemos conexión con el PAC, procedemos a configurar el tópico DDE/OPC, para ello seleccionamos en la barra de herramientas “DDE/OPC\Topic Configuration”:

rslinx14

Seleccionamos “New”.

rslinx16

Asignamos el nombre al tópico. En nuestro caso será “PRUEBA”rslinx17 rslinx18

Vinculamos la ruta (path) al PAC.rslinx19 rslinx20

Para finalizar seleccionamos la pestaña “Data Collection”. Seleccionado en “Processor Type “Logix5000” y disminuyendo el tiempo “Polled Messages” de 1000 a 100.

rslinx21

rslinx22

rslinx23

Ya tenemos creado el tópico DDE/OPC en RSLinx Gateway.

5. Crear entorno HMI en Excel.

Para crear el entorno en Excel, vamos a utilizar los ActiveX de ICONICS y funciones básicas de Excel. Los ActiveX nos ahorran mucho desarrollo, pero tienen la pega de que Excel tarda mucho en salir del modo diseño, hay que tener paciencia.

5.1 Generar fichero Excel.

Abrimos Excel y guardamos el fichero con formato “.xlsm” (Libro de Excel habilitados para macros).

excel0

excel1

5.2 Monitorización de variable.

Comenzamos monitorizando datos, se realiza con la función fórmula y la siguiente sintaxis:

=APPLICATION|TOPIC!’ITEM’     

Siendo para nuestro ejemplo:      =RSLINX|PRUEBA!’VARIABLE’

Por ejemplo, para leer el estado de la salida digital 0 del PAC:

=RSLINX|PRUEBA!’Local:1:O.Data.0′

excel7 Salida Digital Desactivada

excel12Salida Digital Activada

 

Si la sintaxis no es correcta, nos aparecería el siguiente mensaje “Error de nombre no válido”:

excel9

Si no existiera conexión con el tópico DDE/OPC, nos aparecería el siguiente mensaje “Error de valor no disponible”:

excel10

Para leer el valor de una variable tipo REAL del PAC:

=RSLINX|PRUEBA!’Local:1:O.Data.0′

excel11

En caso de error de sintaxis o de lectura, nos daría los mismos mensajes que para la señal tipo “bool”.

5.3 Usar funciones de formato de Excel.

Para potenciar el entorno gráficamente, podemos utilizar varias herramientas de Excel muy sencillas de usar, entre ellas los formatos condicionales, que se encuentran en la pestaña “Inicio”.

excel13

Por ejemplo, si una celda que contiene la monitorización de una variable “booleana”, queremos que se comporte como un piloto:

  • Seleccionamos la celda.
  • “Inicio\Formato Condicional\Resaltar reglas de celdas\Es igual a…”
  • Seleccionamos formato para cada valor, en nuestro ejemplo “1 = Relleno verde……” y “0 = Relleno rojo……”

excel16

excel15

Por ejemplo, si una celda que contiene la monitorización de una variable “real”, queremos que cambie de color en función del valor que tiene:

  • Seleccionamos la celda.
  • “Inicio\Formato Condicional\Resaltar reglas de celdas\Es mayor que…” y “Inicio\Formato Condicional\Resaltar reglas de celdas\Es menor que…”
  • Seleccionamos formato para cada valor, en nuestro ejemplo “Valor>50 = Relleno orojo……” y “Valor<50 = Relleno verde……”

Pasos para “Inicio\Formato Condicional\Resaltar reglas de celdas\Es mayor que…”

excel17

excel18

excel19

Pasos para “Inicio\Formato Condicional\Resaltar reglas de celdas\Es menor que…”

excel20

excel21

excel22

5.4 Usar ActiveX de ICONICS.

Además de dar un toque de sofisticación al entorno, nos permite escribir en variables del PAC de forma muy fácil, no obstante tiene la pega que cuando se sale del modo diseño tarda bastante….”pero gratis y rápido difícil…….”.

OPC Enabled Switch ActiveX Control (“templates” de interruptores digitales).

  • Insertar ActiveX. “Programador\Insertar\Más controles”.

barraprogramador5

  • Seleccionar. “ICONICS GWXSwitch ActiveX”.

excel23

  • Seleccionar el tamaño de nuestro interruptor, veremos simplemente un cuadrado y no sabremos la apariencia real hasta que salgamos del entorno de diseño.

excel24

  • Configuramos ActiveX, pulsando botón derecho del ratón el objeto seleccionado. “Objeto ICONICS GWXSwitch ActiveX\Propiedades…”.

excel25

Se abrirá una ventana de propiedades.

excel27

  • Seleccionamos “Switch Style”, tenemos las once opciones siguientes:

excel26

  • Ahora procedemos a vincular la variable que deseemos al objeto, escribiendo la ruta o pulsando sobre “Tags…”. Al pulsar sobre “OPC Tag Browser”, se nos abrirá un navegador para buscar las variables en el PAC.

excel28

excel29

excel30

excel31

excel32

La variable que encontramos en “ICONICS Unified Data Browser” se queda en la variable tipo “INT”, por lo que al tag seleccionado, lo tenemos que completar con “.0” para apuntar a la primera salida digital del PAC.

excel33

 Se pueden personalizar los colores, etiquetas, estados….pudiéndolo adaptar a los estándares de nuestra instalación.

OPC Enabled Vessel ActiveX Control (“templates” de visualizadores de valores analógicos).

  • Insertar ActiveX. “Programador\Insertar\Más controles”.

barraprogramador5

  • Seleccionar. “ICONICS GWXVessel ActiveX”.

excel34

  • Seleccionar el tamaño de nuestro tanque.

excel36

  • Configuramos ActiveX, pulsando botón derecho del ratón el objeto seleccionado. “Objeto ICONICS GWXVessel ActiveX\Propiedades…”.

excel37

  • Seleccionamos la pestaña “Tank” y seleccionamos el modelo en el campo “Tank Selected”, podemos elegir entre nueve opciones posibles:

excel38

excel39

excel35

  • Ahora procedemos a vincular la variable que deseemos al objeto, escribiendo la ruta o pulsando sobre “Tags…”. Al pulsar sobre “OPC Tag Browser”, se nos abrirá un navegador para buscar las variables en el PAC.

excel40

excel41

excel42

excel43

OPC Enabled Gauge ActiveX Control (“templates” de visualización e introducción de valores analógicos).

  • Insertar ActiveX. “Programador\Insertar\Más controles”.

barraprogramador5

  • Seleccionar. “ICONICS GWXVessel ActiveX”.

excel44

  • Seleccionar el tamaño de nuestro objeto.

excel45

  • Configuramos ActiveX, pulsando botón derecho del ratón el objeto seleccionado. “Objeto ICONICS GWXGauge ActiveX\Propiedades…”.

excel46

  • Seleccionamos el tipo en el campo “Gauge Type”, y elegimos entre las tres opciones posibles:

excel49

excel47

  • Ahora procedemos a vincular la variable que deseemos al objeto, escribiendo la ruta o pulsando sobre “Tags…”. Al pulsar sobre “OPC Tag Browser”, se nos abrirá un navegador para buscar las variables en el PAC.

excel48

excel50

excel51

excel52

6. Ejemplo Práctico.

Respecto a la arquitectura recogida en el apartado 3, hemos realizado como ejemplo:

  • Monitorización de las variables de E/S digitales y analógicas con fórmulas de Excel.
  • Activación de variables digitales con ActiveX (Switch).
  • Monitorización de valores analógicos con ActiveX (Vessel) y fórmulas de Excel.
  • Selección de valor “preset” de un temporizador con ActiveX (Gauge).
  • Activación de salidas digitales con preselección de valor analógico con ActiveX (Gauge).

Ficheros:

Backup RSLinx

Excel

Programa PAC

 

Esquema de arquitectura de control.

excel3

 

 

Datos Monitorizados

excel4

Esta entrada está dedicada a ALEB y aprovecho para agradecer todo lo que he aprendido junto a él.

Saludos!!!!

Automatización de un Proceso Industrial 1 (Conceptos Básicos)

NoejucomLOGO      logo_v1

La finalidad de esta entrada es compartir el flujo de trabajo, que desde mi punto de vista técnico, es el más adecuado para realizar la Automatización de un Proceso o Máquina Industrial, siendo otros tan válidos como el presentado en este artículo. También hay que comentar que dependiendo de cada proyecto, los puntos indicados serán aplicables, en mayor o menor medida.

Este flujo de trabajo, surge del trabajo a lo largo de muchos años y de los conocimientos adquiridos de grandes profesionales con los que he tenido la suerte de trabajar.

1. Definición de Proceso Industrial.

Un proceso industrial es el conjunto de operaciones unitarias o tratamientos que se realizan sobre una materia prima, para cambiar su estado de origen, pudiéndose cambiar su temperatura, volumen, composición, densidad, forma…todo ello con la mayor eficiencia posible.

2. Documentos de Inicio o Partida.

Aunque dependerá del proyecto y aunque nos vamos a centrar en aquellos que son más del ámbito de Control, los documentos para comenzar a realizar la Automatización de un Proceso son:

  • Documento o esquema funcional.
  • Diagrama de proceso (P&ID).
  • Lista de sensores e instrumentación.
  • Lista de equipos y consumidores (actuadores).
  • Lista de señales.
  • Arquitectura de Control.
  • Esquemas Unifilares.
  • Esquemas Desarrollados.
  • Posicionales de Armarios.

3. Documento o Esquema Funcional.

Este documento recoge en texto y/o con diagramas de flujos, la descripción del proceso y subprocesos, identificando los equipos que intervienen (electromecánicos, instrumentación, sensores..) en cada uno de ellos. Se puede completar mediante imágenes, diagramas de flujo, esquemas…. que ayuden a asimilar el contenido, no obstante, debe ser fácil de entender, incluso por personal no especialista en Sistemas de Control y/o Procesos.

Este documento, es la base para la realización de la “lógica cableada” (automatismos cableados) y “lógica programada” (PLC, PAC..).

Además de la descripción del funcionamiento del proceso, en este documento se debe recoger, si el sistema dispone de algún dispositivo HMI, y en caso afirmativo, las variables que serán consignables a través de éste, y aquellas que serán parámetros internos, modificables sólo a través de programación.

 4. Diagrama de Proceso (P&ID).

Según wikipedia.

Un diagrama de tuberías e instrumentación (DTI) también conocido del idioma inglés como piping and instrumentation diagram/drawing (P&ID) es un diagrama que muestra el flujo del proceso en las tuberías, así como los equipos instalados y el instrumental.

800px-Pump_with_tank_pid_en_svgDiagrama de Proceso Fuente wikipedia.

En ocasiones, se incluye en el Esquema Funcional el Diagrama de Proceso.

5. Lista de Sensores e Instrumentación.

Con el esquema funcional y diagrama de proceso, identificaremos todos los sensores e instrumentación que intervienen en el proceso y subprocesos, incluyendolos en un listado con los datos más relevantes de los instrumentos, que pueden ser:

  • Identificador o TAG del instrumento.
  • Descripción de la señal.
  • Tipo instrumento.
  • Marca.
  • Rango.

Micropilot_FMR51_PP_1Limnímetro radar de Endress+Hauser

6. Lista de Equipos y Consumidores (Actuadores).

Al igual que la lista de sensores e instrumentación, la lista de equipos y consumidores se genera a partir del esquema funcional y diagrama de proceso, este documento puede recoger la siguiente información:

  • Identificador o TAG del equipo.
  • Descripción del actuador.
  • Tipo actuador/accionamiento.
  • Marca.
  • Potencia del equipo.

web560x400

Válvula de bola de 3 vías +GF+

7. Lista de Señales.

Debemos distinguir, dos tipos:

  • Lista de señales de campo.
  • Lista de señales de intercambio con HMI (SCADA, Pantalla Táctil).

       7.1 Lista de Señales de Campo.

Tras identificar las señales necesarias para implementar la instrumentación, sensores y equipos de nuestro proceso, debemos realizar un listado que incluya todas ellas, para así poder valorar que tipo de control vamos a realizar (periferia centralizada/descentralizada, lógica cableada/programada o combinación de ambas, controlador de lazo abierto/cerrado…).

El listado podrá incluir las siguientes columnas/campos:

  • Descripción de la señal.
  • Rack, Tarjeta y número de canal de la señal.
  • TAG interno del PLC (PAC) de la variable de entrada.
  • Tipo de señal ED,SD,EA, SA, BCD…
  • Rango (señales analógicas).
  • E/S en reserva.
  • Estado en función del valor de la señal.

       7.2 Lista de Señales de Intercambio con HMI (SCADA, Pantalla Táctil).

Aunque suele realizarse en la fase final del proyecto, una vez que se realice la lista de señales de campo, podemos generar la matriz de intercambio con el HMI. La agrupación podría ser:

  • Señales de Entradas Digitales de Campo.
  • Señales de Entradas Analógicas de Campo.
  • Señales Digitales Internas del PLC (PAC).
  • Señales Analógicas Internas del PLC (PAC).
  • Ordenes Digitales.
  • Consignas Analógicas.

8. Arquitectura de Control.

Una vez que se han definido el esquema funcional, diagrama de proceso y lista de señales, podemos definir nuestra arquitectura de control, en la que se detallará:

  • Equipos de control y disposición de tarjetas de E/S y comunicaciones. (PLC, PAC, DCS).
  • HMI´s.
  • Periferia E/S (centralizada o descentralizada).
  • Equipos de comunicación.
  • Redes y buses de comunicación.

Arquitectura_CONTROL_BN_pe

9. Esquemas Unifilares, Desarrollados y Posicionales de Armario.

Los esquemas unifilares recogerán, las diferentes fuentes de alimentación (red, transformadores, grupo electrógeno…) y circuitos a alimentar, detallando los datos más relevantes de éstos, tipo de circuito, potencia….etc.

Los esquemas desarrollados, tendrán el detalle de la lógica cableada, E/S del PLC, PAC o DCS e instrumentación.

Por último, se definirán los posicionales de los diferentes armario, tanto de los paneles interiores (aparellaje, cableado, canalizaciones….), como de los frontales (auxiliares de mando, HMI, aparellaje en frontal de armario).

Todo esto, lo trataremos en otra entrada con más detalle, ya que el objeto de este artículo está mas orientado a todo lo referente al diseño del Sistema de Control.

posicionalPosicional Placa Interior Armario

En la siguientes entrada “Automatización de un Proceso Industrial 2 (Caso Práctico)”, realizaremos el diseño de un pequeño Sistema de Control paso a paso.

Saludos!!!!