Programación de un SCADA
Rubén Palomino
Dentro de la programación industrial, la programación de SCADAS es la disciplina mas avanzada.
¿Porque?
Porque un SCADA permite programar en lenguajes de alto nivel, conectando cualquier instalación con redes de comunicaciones avanzadas. Pudiendo enlazarla con Bases de Datos, servidores Web, servicios en la nube, etc.
Y mas importante todavía de cara al profesional.
Programadores de PLC hay muchos, pero de SCADAS no hay tantos. Tu eliges donde quieres estar.
Las oportunidades laborales aumentan exponencialmente si se complementan los conocimientos de programación de PLCs con los de programación de SCADAS.
La industria está llena de aplicaciones de cara a una buena presentación, que luego no cumplen con las expectativas.
Un Scada no es un HMI que presenta los datos de forma bonita.
Un Scada es una herramienta que nos permite tener control sobre nuestra instalación y eso por supuesto es mas que realizar una pantalla bonita.
LENGUAJE A UTILIZAR
Los lenguajes de programación mas utilizados en los SCADAS.
- Java. Es uno de los lenguajes mas utilizados no solo en SCADAS, si no en el mundo. Nosotros como empresa especializada en programación de sistemas SCADA es el que recomendamos.
Es bueno aprender JAVA aunque no te dediques a los SCADAS.
- Python. Se disputa con JAVA el puesto de los lenguajes mas utilizados, pero con una gran desventaja. Es muchisimo mas lento
- Visual Basic Script. Lenguaje desarrollado por Microsoft para automatizar tareas.
- C y C++. Es el mas potente de todos, pero no te lo aconsejo.
UN SCADA que usa JAVA SCADA SPGN
SISTEMA OPERATIVO
Otro aspecto a tener en cuenta antes de comenzar es definir el sistema operativo donde va a correr el SCADA.
La mayoría de los SCADAS se ejecutan en sistemas WINDOWS, pero existen alternativas.
Cuando se desarrollo el SCADA SPGN se decidió realizarlo en JAVA para que fuera independiente del SISTEMA OPERATIVO.
IDE o ENTORNO DE PROGRAMACIÓN
El entorno de programación es quizás la elección mas importante a la hora de elegir un SCADA.
Es la herramienta que nos va a permitir crear, modificar y eliminar codigos de programa en nuestro SCADA.
Según el SCADA que elijas así será el entorno de programación.
El entorno de programación ideal segun nuestra experiencia como programadores de SCADAS debe de cumplir con ciertas caracteristicas.
- Que la instalación sea facil, a ser posible que no haga falta instalar.
- Que permita programar de forma remota.
- Que permita trabajar a varias personas a la vez en el mismo SCADA sin tener que desconectarse uno para conectarse otro. A esto le llamamos programación concurrente
Un SCADA que cumple con todo SCADA SPGN

PROGRAMACIÓN
La programación de un sistema SCADA se realiza en dos entornos diferentes, según la máquina o host donde se ejecuten los procesos.
PROGRAMACIÓN EN EL SERVIDOR DEL SCADA
Los programas que se ejecutan en el servidor SCADA son los denominados modulos o Scripts
Su desarrollo se realiza mediante el IDE. Una vez programados, se cargan en el SCADA y es este, en función de su configuración, quien decide cuándo ejecutarlos.
El IDE incluye un asistente que permite visualizar los programas ya cargados (listos para ejecutarse) y los que aún se encuentran únicamente en el proyecto. Además, incorpora un sistema de control de cambios que indica si un archivo ha sido modificado y difiere de la versión cargada en el SCADA.

Dependiendo de la forma de ejecutarlos los Scripts pueden ser :
-
Por eventos. Cambios en el valor de las tags, activación o desactivación de alarmas, o interacciones desde los clientes gráficos.
-
Temporizados. Se ejecutan automáticamente según los intervalos configurados.
-
Asociados a Alarmas. Se lanzan cuando una alarma se activa o se restablece.

PROGRAMACIÓN EN EL CLIENTE
Los programas que se ejecutan en el cliente son los denominados HMI. Su nombre proviene del inglés, HUMAN MACHINE INTERFACE, en español de toda la vida es INTERFAZ HOMBRE MÁQUINA (IHM).
Un HMI permite a los usuarios comunicarse con la instalación: visualizar el estado, modificar consignas, consultar registros, analizar tendencias y supervisar cualquier proceso industrial.
¿CÓMO DAMOS ÓRDENES AL SCADA DESDE MULTIPLES DISPOSITIVOS?
Como empresa dedicada al desarrollo e implementación de los SCADAS recomendamos utilizar un sistema cliente-servidor para gestionar estas tareas.
El SCADA funciona como servidor de datos y los HMI como clientes que muestran la información en diferentes pantallas según los datos proporcionados por el servicor SCADA.
El SCADA recoge datos de planta, genera alarmas, registra históricos, gestiona averías y proporciona toda la información necesaria para una supervisión completa del sistema.
Los clientes HMI muestran los datos que procesa y distribuye el SCADA.
Para el desarrollo de los HMI que se ejecutan en los clientes gráficos, el SCADA SPGN utiliza el diseñador WindowBuilder lo que proporciona una potencia y versatilidad excepcionales para crear pantallas ergonómicas, modernas y fáciles de interpretar.
Permite ver en tiempo real las modificaciones del diseño, lo que lo convierte en uno de los diseñadores más productivos del mercado.

Todo esto combinado con la reutilización de componentes permite optimizar el desarrollo de los proyectos y acortar los plazos de entrega.
OBJETOS DE PROGRAMACIÓN
Todo lenguaje de programación utilizado para un SCADA, ademas de los objetos propios del lenguaje debe de proporcionar objetos que trabajen directamente con los elementos del SCADA
MANIPULACIÓN DE TAGS
Los objetos de manipulación de tags tienen la capacidad de realizar operaciones con las tags del SCADA. En el SCADA SPGN el objeto de manimpulación de tags es el objeto Utt.
Un objeto de programación es una clase que posee métodos (funciones) que nos permiten:
- Leer el valor que contine la tag.
- Escribir nuevos valores en las tags.
- Realizar tareas de comprobación de valores
- Conocer la calidad de la lectura de la tag a través de la tag
- etc
Si puedes acceder al contenido de las tags desde los módulos programables tendrás control sobre todos los parametros de

MANIPULACION DE BASES DE DATOS
Estos objetor permiten realizar operaciones en BASES DE DATOS relacionandolas con los elementos del SCADA.
Y sinceramente te digan lo que te digan, el manejo de BASES DE DATOS es la parte mas importante en la programación de un Scada.
Cuando un Scada toma el control de la instalación el PLC pasa a ser un mero sirviente.
Si una base de datos de producción está bien diseñada tienes instalación para muchos años.
Y es ahí donde se ve toda la potencia de un sistema Scada.
Los objetos de BASES DE DATOS permiten.
- Consultar
- Insertar
- Modificar
Y en definitiva llevar registro de todos los sucesos de produción.
La gestión de recetas en el mundo de la insdustria es el ejemplo mas claro de producción a través de bases de datos.

Y no es por nada, pero el Scada SPGN es posiblemente el Scada que mejor trabaja con las bases de datos. Ha sido diseñado con ese proposito.
TE INTERESA
Ahora que ya sabes un poco lo que se puede hacer programando un Scada, es posible que tengas la necesidad de implementar alguna de estas caracteristicas en una instalación.
Si sabes como ¡¡Enhorabuena!!
Pero si no sabes como, no te preocupes.
Nosotros podemos ayudarte con esta tarea, solo tienes que ponernos un correo a través del formulario de contacto.
Y si tardamos un poco en contestar, no te preocupes. Es algo normal.
* Tus datos se usarán únicamente para responder a tu consulta. No se comparten con terceros.
Puede que no necesites un Scada, pero puedes mantenerte informado apuntandote en nuestra newsletter.
Si te dedicas al tema de la automatización, estar al corriente de las últimas tendencias no es una opción.
Es una obligación.
Para mantenerte informado mira aquí debajo.