Likindoy
Introducción
El proyecto Likindoy (Likindoy Opensource Scada Website) pretende crear un Sistema SCADA completo realizado con tecnologías libres (ver http://es.wikipedia.org/wiki/SCADA para mas información sobre Scada, ver http://es.wikipedia.org/wiki/Software_libre para mas información sobre Software Libre).
Likindoy está realizado íntegramente con tecnologías Open Source:
- El sistema operativo es Linux
- El lenguaje de programación es Python
- El gestor de bases de datos es MySQL
- Para la generación de gráficas se usa el lenguaje de programación R, sucesor del lenguaje S e ideado esencialmente para uso estadístico y generación de gráficas.
Dentro de la definición de SCADA de la wikipedia, nos hemos centrado en indicadores sin retroalimentación inherente (que no afectan al proceso, sólo al operador). Es decir, en la toma de datos, representación histórica y representación de valores instantáneos.
Por dentro:
Likindoy es un programa diseñado para análisis industrial y sistemas de telecontrol. Ha sido diseñado modularmente para permitir a otros programadores ampliar su funcionamiento con facilidad. Likindoy está dividido en varias etapas de funcionamiento aunque internamente se divide en tres módulos básicos: el módulo con las librerías que se usan de un modo compartido por el resto de los módulos, el módulo para la gestión de históricos (Likindoy-HTR) y el módulo para la gestión de RTUs (Likindoy-RTU).
Likindoy-HTR
El módulo para la gestión de históricos dispone de 4 niveles de procesamiento de los datos.
1) Recolección de los datos:
Donde el programa usa diferente módulos para conseguir la información de fuentes externas. (FTP, SFTP, SOCKECT, /PROC, MODBUS, WEB, UDP)
2) Carga de los datos:
Recoge los datos descargados y los transfiere de modo homogéneo a una base de datos SQL (opcionalmente podría ser cualquier otro sistema de salida, incluso un programa que leyera los datos en código morse por el altavoz).
3) Generación de gráficas:
Usa la información almacenada en la base de datos para generar gráficas.El motor para pintar los datos está bajo la librería RPY (librería Python para comunicación con el lenguaje estadístico R) y en la actualidad existe una propuesta para el diseño de un nuevo módulo para pintar los datos a través de Python sin usar el motor de R.
4) Envío de los datos:
Envía los gráficos generalmente por email, pero soporta también FTP, SFTP y SOCKET (los usuarios pueden diseñar nuevos módulos para enviar los datos mediante sus propios protocolos).
Likindoy-RTU
Es el módulo de Likindoy capaz de recolectar datos directamente de hardware industrial, como por ejemplo: PLCs Schneider Momentum o sistemas de adquisición de datos ADAM 5000 TCP, aunque el lenguaje de comunicaciones es MODBUS sobre TCP/IP y esto permite comunicarse casi con cualquier PLC industrial. Este módulo además de la adquisición de los datos actua como un Telemando (hardware de Telecontrol), por lo que es posible descargarse de él los datos por FTP, SFTP o SOCKET. Likindoy-HTR generalmente pregunta al Telemando (que usa Likindoy-RTU) por los datos que necesita, Likindoy-RTU permite entonces a Likindoy-HTR que pueda descargarse esos datos y cuando ha terminado los borra para liberar memoria en la RTU. Las versiones más recientes de Likindoy permiten además tomar decisiones y actuar sobre el Hardware gestionado.
Likindoy-HMI
Significa Human Machine Interface y es el módulo de Likindoy encargado de mostrar la información en tiempo real. Es un conjunto de funciones y comportamientos que habilitan a Likindoy para que pueda mostrar en tiempo real la información que está procesando. Esta información es posible conectarla a un mapa de una central depuradora de aguas y ver cada elemento cambiando en tiempo real mediante una web desde casa. Las posibilidades se encuentran en las limitaciones que el programador encuentre consigo mismo para desarrollar nuevos módulos y herramientas.
Ejemplos de Likindoy-HTR:
Ejemplo de Likindoy-HMI:
De cara al futuro:
En la actualidad estamos diseñando un sistema basado en C que forme parte de Likindoy y que pueda ser instalado en los sistemas de adquisición de datos ADAM 5010 para convertir a estos en RTUs de Likindoy con capacidad para tomar decisiones en tiempo real y almacenar históricos en su memoria interna.
Finalmente:
Likindoy ha sido diseñado para soportar cualquier tipo de módulos diseñados por los usuarios, gracias a ello, en la actualidad Likindoy-RTU puede registrar datos del tráfico de la red obtenido del sistema de ficheros /proc, puede recoger ficheros de datos mediante los protocolos FTP y SFTP o directamente desde un servidor WEB, servidor MODBUS o mediante el protocolo UDP.
Likindoy ha sido probado desde finales del año 2005 hasta la actualidad por Aguas y Saneamientos de la Axarquía (empresa encargada de la depuración de agua residual y agua potable en la costa de la Axarquía de Málaga en España), en la actualidad se procesan datos de más de 30 fuentes diferentes de Axaragua (inluyendo hardware de telecontrol, sistemas de adquisición de datos y servidores) y genera diariamente gráficas de todos los datos recogidos que son entregadas por emails a los operadores de las distintas estaciones.
Likindoy está siendo desarrollado activamente por Centrologic Computational Logistic Center y por Aguas y Saneamientos de la Axarquía además ambas compañías contribuye activamente en este proyecto como principales inversores de ideas, soluciones y únicos inversor económico en la actualidad.
Si usted está interesado en los servicios de Likindoy y desea asistencia para ponerlo en marcha, no dude en contactar con nosotros.
