Ignition SCADA Server

por | 17 abril, 2019

Ignition es una plataforma integrada para sistemas SCADA. Se trata de una plataforma de aplicación industrial basada en web. Se basa en una base de datos SQL central. Ignition funciona como aplicación web mediante Java Web Start. Ignition cubre todo el margen de HMI, SCADA y MES.

La plataforma Ignition posee tres componentes principales:

  • Ignition Gateway
  • Designer
  • Runtime en los clientes

Además de esto se disponen de módulos que proporcionan funcionalidades adicionales como control en tiempo real, alarmas, reporting, adquisición de datos, scripting, sheduling, MES, y soporte para red móvil entre otros.

  • Descarga de Ignition (Se requiere registro).

https://inductiveautomation.com/downloads/ignition

Para la descarga se nos pedirá que nos registremos, así como que seleccionemos los módulos a instalar. Sólo el módulo Ignition Platform es gratuito, todos los demás seleccionados se instalarán en modo trial.

Una vez terminada la instalación podremos ejecutarla. Se trata de una Aplicación web así que lo primero que arrancamos es el Ignition Gateway en:

http://localhost:8088

Se solicitará la clave de acceso. Por defecto:

Username: admin
Password: password

Desde este entorno podemos configurar el servidor de Ignition: monitorizar valores del servidor, configurar bases de datos,  configurar la conexión a PLCs, lanzar el Designer o lanzar un cliente por ejemplo.

Ahora vamos a empezar a trabajar con el programa. Lo primero que haremos será ir a la pestaña Configuration.

Vamos a añadir un PLC. Como estamos en local y no tenemos PLCs conectados, Ignition permita agregar PLCs simulados.

En el menú de la izquierda nos vamos a

OPC-UA SERVER y seleccionamos Devices — Create new Device…

Nos aparecerá una lista de dispositivos reconocidos. Seleccionamos

–> Simulators Generic Simulator

Le damos un nombre y una descripción. Si creamos un par de ellos debe quedar algo así:

Podemos comprobar la conectividad en ESTADO –> OPC-UA Server.

Ahora para gestionar las señales asociadas al PLC vamos a:

OPC Connections>Quick Client

allí podemos ver los tags (que definen señales) disponibles en el PLC.

Ahora podríamos configurar el uso de una base de datos SQL.

Ahora vamos a comenzar el diseño de nuestra aplicación SACADA como tal. Para ello arrancamos el Designer pulsando en:

Se arrancará la aplicación Java del diseñador de aplicaciones y se nos pedirá la clave correspondiente:

Ahora vamos a crear un proyecto de prueba en la primera pantalla que se nos muestra. Aquí podemos indicar algunos parámetros generales importantes de la aplicación que vamos a crear, como la base de datos que utiliza y un Project template de los ya predefinidos que nos puede ayudar en el diseño.

A continuación se nos abre la pantalla del diseñador.

Nota: los proyectos funcionan en uno de tres modos de comunicaciones. Por defecto se crean en modo Comm Read-Only, que no permite escribir valores desde el Designer hacia los tags. Para cambiarlo seleccionamos Projetc –> Comm Read/Write.

Vemos que tenemos ya un Main Window, que en realidad ha sido creado en el Blank Template.

Para crear una ventana –> botón derecho en la opción Windows de panel Project Browser. En nuestro caso ya tenemos una ventana principal.

Ahora los pasos para hacer cosas con Ignition se resumen en tres:

  • Crear una conexión con un PLC y el sistema Ignition a través de OPC-UA.
  • Crear tags en Ignition, enlazadas a registros de un PLC.
  • Crear objetos HMI en Ignition como botones o displays y conectados a tags.

Para configurar la conexión con el dispositivo PLC se deben crear tags enlazados al dispositivo. Estos tags representan señales gestionadas por el PLC.

Para crear estos tags en Ignition vamos al panel Tag Browser y seleccionamos Tags.

Hacemos clic con el botón derecho y seleccionamos «New Tag» y luego «OPC Tag». Aparecerá la ventana Tag Editor. Asignamos los datos principales del tag:

Name: le damos un nombre al tag, que debería ser intuitivo.
Data type: tipo de dato, debería estar acorde con la variable del PLC que vamos a escoger.
OPC Server: Ignition OPC-UA Server (seleccionamos del desplegable)
OPC Item Path: Aquí de debe escribir la ruta de acceso al registro dentro del PLC. Par el caso de un PLC real se debe utilizar una cierta nomenclatura. Para un PLC demo como el nuestro desplegamos las variables haciendo clic en el icono de cruz tridimensional y se abrirá una ventana Choose OPC Item en la que podremos seleccionar nuestro simulador PLC y elegimos una señal de tipo Writeable, por ejemplo WriteableBoolean1.

y pulsamos OK. Se nos genera un OPC Item Path similar al siguiente:

ns=1;s=[PLC Simulator]_Meta:Writeable/WriteableBoolean1

Ahora en la ventana Tag Browser aparece el nuevo tag creado con el valor en tiempo real que se está recibiendo del PLC.

Hemos creado un tag llamado RWBoolean1 de tipo booleano. De esta misma forma podemos crear los tags que se necesiten representando señales o estados provenientes de PLCs u otros dispositivos o sensores.

Una vez creados los tags con los que vaya a trabajar la aplicación, lo que toca es usarlos en una o varias ventanas HMI.

Para gestionar las ventanas vamos a la sección Project Browser en la esquina inferior izquierda de Ignition Designer. En la opción Windows hacemos clic con el botón derecho del ratón y seleccionamos Main Window y aparecerá una nueva ventana en blanco.

Para enlazar los tags con objetos HMI en la ventana creada lo que hacemos es ir otra vez a la sección Tag Browser y arrastrar el tag que creamos antes hacia la ventana nueva.

Al soltar el tag aparecerá un menú con los objetos más frecuentes para visualizar el tipo de tag elegido. Para un booleano tenemos Display, Contrlol, Template.

Vamos a colocar un botón par poner el tag creado antes RWBoolean1, que es un booleano de lectura/escritura, y que por defecto está en false, a true. Arrastramos el tag RWBoolean1 al Main Windows y seleccionamos Control –> 1. Shot Button.

Con esto tendremos un botón en la ventana principal que al pulsarlo pondrá «true» en la variable de escritura booleana RWBoolean1.

Ahora de una manera similar vamos a crear un Display que cambie de color según el estado del tag booleano referenciado antes. Para ello nos vamos a la sección Tag Browser y arrastramos el mismo tag RWBoolean1 hacia la misma ventana. Ahora en vez de un elemento de tipo Control seleccionamos Display/Multistate Indicator.

El indicador creado cambiará de color de blanco (false) a verde (true) según el estado del tag RWBoolean1. Por supuesto estos colores asó como otros parámetros de estilo son completamente configurables.

Hemos creado un botón de tipo One-Shot (una sola pulsación) pero podemos utilizar un 2-State Toggle que cambiará cambiará el valor del tag cada vez que pulsemos, o uno tipo CheckBox por ejemplo.

Otra cosa que podemos hacer es arrastrar hacia la ventana un Display de la lista que aparece a la derecha:

Ahora para enlazar este Display a un Tag le hacemos doble clic y seleccionamos  un tag de los que ya tenemos configurado:

Además de tipos de Display y botones, tenemos campos de entrada,  tablas, gráficos, diversos tipos de contenedores, etc.

Evidentemente esto es sólo una introducción al diseño con Ignition. La potencia de Ignition es muy superior. Entre otras cosas se pueden crear tags calculados a partir de otros tags y agrupar funciones en librerías para ser utilizados con un conjunto de tags. Los diversos scripts y funciones de Ignition se crean en Phyton.

Podemos utilizar Ignition para crear un servidor OPC, sólo para gestionar señales desde diversas fuentes en una red industrial, y enlazarlo con otro servidor de aplicación Ignition en la red IT de la organización. Las posibilidades de la plataforma son innumerables.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *