SciELO - Scientific Electronic Library Online

 
vol.11 número44Simulación de ondas gravitacionales en coordenadas de Bondi-SachsUmbral de impedancia transtorácica para la detección del paciente en desfibrilación índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

Links relacionados

Compartir


Universidad, Ciencia y Tecnología

versión impresa ISSN 1316-4821versión On-line ISSN 2542-3401

uct v.11 n.44 Puerto Ordaz sep. 2007

 

DESARROLLO DE SISTEMA SCADA PARA EL CONTROL DE CAUDAL BASADO EN LINUX

Sánchez Briceño, Gabriel 

Custodio Ruiz, Ángel

El Ing. Gabriel A. Sánchez Briceño es Investigador en el Dpto. de Ingeniería Electrónica de la UNEXPO, Vicerrectorado Puerto Ordaz, Final Calle China, Villa Asia, telef. 58- 286-9627919, correo electrónico gabosan78@gmail.com

El Dr. Ángel Custodio Ruiz es Profesor Agregado en el mismo Departamento de la UNEXPO, Vicerrectorado Puerto Ordaz, telef. 58-286-9621205, correo electrónico cicunexpo@gmail.com.

Resumen:

La Web y el sistema operativo Linux se han convirtiendo en el medio nacional de acceso a un gran número de servicios de información. Unos de los campos de esta demanda se consideran los sistemas de supervisión y control usados en la industria nacional para el control de procesos industriales. Estos sistemas permiten, en cualquier momento, conocer el estado del proceso, con solo contar con un computador y conexión a Internet. La presencia de estos sistemas en muchas empresas obligan al egresado de la especialidad de Ingeniería Electrónica de la UNEXPO Vice-rectorado Puerto Ordaz a tener una buena formación tanto de conocimientos teóricos como prácticos, de cómo configurar y utilizar un software / hardware en una serie de aplicaciones industriales. Para ello, este articulo presenta una aplicación SCADA WEB que permite supervisar y controlar de forma remota un conjunto de bombas en el laboratorio de mecánica de los fluidos.

Palabras clave: Sistema Scada/ Control de caudal/ LINUX/ Web.

DEVELOPMENT OF SCADA WEB SISTEM FOR THE CONTROL OF VOLUME BASED ON LINUX

Summary:

The Web and the LINUX operating systems are becoming the national average of access to a great number of information services. Among these, the systems used in supervision and control in the national industry for the industrial process control are considered. These systems allow, at any time, to know the state of process, only with a computer and connection to Internet. The usage these systems in many companies forces to the University Graduated in Electronic Engineering of the UNEXPO Vicerrectorado Puerto Ordaz has theoretical and practical knowledge about how using a software/hardware in a series of industrial applications. This paper presents an application SCADA WEB that allows to supervise and control a set of pumps in the laboratory of mechanics of the fluids in a remote way.

Key words: Scada System/ Control of volume/ LINUX/ Web.

Manuscrito finalizado en Puerto Ordaz, Venezuela, el 2007/03/29, recibido el 2007/04/30, en su forma final (aceptado) el 2007/07/10. 

I. INTRODUCCIÓN

En la Actualidad, el acelerado crecimiento de los sistemas de comunicación ha provocado un cambio en la forma que tiene la sociedad de ver el mundo. Estas mejoras han permitido reducir las distancias entre diferentes puntos del planeta de tal forma que cualquier evento se pueda conocer de forma casi inmediata en cualquier parte de mundo.

El gran salto definitivo a esta filosofía lo ha dado Internet. Esta red de redes que no conoce fronteras, y permite poner al mundo toda la información generada desde cualquier parte del planeta. Esta red facilita el uso de recursos y el acceso a un gran numero de servicios y aplicaciones independientemente donde se encuentre la persona.

También, la mayoría de los sistemas de supervisión y control de procesos a distancias basados en Internet han enfocado su diseño hacia aplicaciones WEB.

En vista de la necesidad de un sistema de supervisión y control a distancia, con la posibilidad de intercambio de información instantánea por la red, y que en la actualidad el Departamento de Ingeniería Electrónica de la UNEXPO Vice-rectorado Puerto Ordaz, no cuenta con un laboratorio adecuado que permita a los estudiantes de esta especialidad realizar actividades en el área de los sistemas SCADA, es lo que motivó a desarrollar SCADA WEB en la maqueta de las bombas centrífugas que se encuentran en el Laboratorio de Fluidos de Ingeniería Mecánica.

Las investigaciones recientes basadas en los Sistemas de control a distancia (SCADA) por la Internet han derivado en importantes aplicaciones industriales que han resultado contribuciones útiles, tanto en el marco práctico como en el teórico.

Un buen ejemplo es el que desarrolló Suárez, F. [2], el cual abarca sobre el “Diseño y simulación de la interconexión de procesos mediante red Ethernet”. Otra iniciativa propuesta por Kojima et al [5] se orientó hacia la filosofía distribuida y arquitecturas basadas en la WEB. Pan et al [6] propusieron una solución basada en tecnologías Internet / Intranet y ambiente java como una plataforma abierta y de plataforma independiente en los diferentes recursos de computación y actividades de diseño podrían ser compartidas remotamente por usuarios. En un contexto más amplio, Noda [7] analizó el rol de las industrias en la era de Internet, para acceder a todos los recursos de un sistema de producción a través de un ambiente basado en redes en conjunción con tecnología basada en Internet.

II. DESARROLLO

1. Metodología

La investigación a realizar es del tipo experimental y tecnológica, la cual surge de la necesidad de crear un sistema SCADA para un sistema de bombeo.

Según el nivel de conocimiento, la investigación a desarrollar será de tipo proyectiva, pues se propondrá un diseño práctico de tipo electrónico, basado en un estudio de tipo descriptivo.

2. Descripción de Proceso

El proceso consiste en controlar el caudal de una tubería variando la velocidad de la bomba.

Para medir el caudal se utilizó un tubo venturi y aplicando el Teorema de Bernouli dá el caudal presente en la tubería. Con el sensor de presión diferencial MP2100, dá la diferencia de presión entre los puntos de medición (esta diferencia de presión es utilizada para medir el caudal aplicando el Teorema de Bernouli), tomada por ADC del DAQ’s, para luego ser enviada al computador por el puerto USB, que se va a encargar de procesar la señal. Este valor del caudal es validado, luego filtrado, para luego ser comparado con el set point, y pasado al controlador. Después el valor de regulación es convertido para ser enviado al DAQ’s a través del puerto USB, que va al actuador que es el encargado de variar el voltaje del motor de la bomba, para así regular el caudal.

A continuación se muestra el diagrama general del proyecto:

Este proyecto se divide en:

• Hardware de Adquisición de datos: se explica el circuito que fucnciona como interfaz entre el proceso y la tarjeta de adquisición de datos, conectada al puerto USB del computador.

• Software de control: éste es el software en tiempo real que se encarga de realizar las acciones de adquisición y control, a través de las cuales el proceso va a interactuar. Este software fue desarrollado en Lenguaje C.

• Interfaz Web: esta es la interfaz visual entre los usuarios y el proceso, desarrollada en un lenguaje de programación interpretado PHP.

Hardware de adquisición de datos.

Se basa en el microcontrolador (PIC 18F2550) que tiene incorporado ADC y además, cuenta con un soporte nativo para USB, que se divide en cuatro partes fundamentales:

• Circuito Sensor y Acople de las Señales de entrada: Se basa en el sensor MPX2100PD y el amplificador de instrumentación AMP04EP. (Figura 2)

• Circuito de Adquisición de datos: se fundamenta en el microcontrolador 18F2550 de la Microchip. (Figura 3)

• Circuito de Conversión Digital a Analógica: se basa en el converson D/A TLC 7226, de la Texas Instruments. (Figura 4).

• Circuito Actuador: consta de un control de fase, utilizando UJT. (Figura 5)

Software de adquisición y control

Está estructurado en diversas funciones que son llamadas por el programa principal, en el momento de ser requeridas. Este programa hace la conexión con la base de datos y el hardware de adquisición de datos, por medio de una serie de funciones. Estas funciones son

Genera_VUC: es la encargada de leer el dato del hardware de adquisición.

Esta función es la que se encarga de adquirir el valor binario equivalente al caudal proveniente de la tarjeta de adquisición del puerto USB. (Figura 6).

Como se observa en diagrama anterior esta función envía al DAQ (Send_usb(d,3,question)) un dato de 3 bytes (question) en donde question[0]= 0 está indicando al DAQ que debe hacer la conversión análogo digital y enviarla al PC, y recv_usb(d,1,answer) es la respuesta del DAQ que es un dato de un byte. Este byte es convertido en float para que el programa pueda trabajarlo sin problemas.

Validación: es la función que valida el dato de entrada. (Figura 7)

Conversión: esta función hace la conversión a unidades de ingeniería. (Figura 8)

Filtrado: Función que se encarga de filtrar la señal de entrada. (Figura 9 )

En esta función se procede a eliminar componentes en frecuencia que son indeseables en el valor obtenido del dato. El filtro utilizado, es de segundo orden, para lo cual se utilizó la siguiente ecuación:

En donde:

X = dato filtrado;

Y = dato anterior;

Ka = constante de Filtro;

Kb = constante de Filtro;

Z = dato antepenúltimo.

Controlador: esta función es la encargada de ejecutar el controlador Digital y además envia el dato al hardware de adquisición.

Esta función toma el dato ya validado, convertido a unidades de ingeniería y filtrado y le aplica el algoritmo de regulación PID, cuya salida depende del error entre el valor obtenido del campo y el valor deseado o Set point. Las ecuaciones son las siguientes:

Donde:

e = error.

sp = valor deseado de caudal.

data = es el valor obtenido de caudal.

Donde:

Reg = valor de salida del controlador.

KP = constante proporcional.

e = error.

ti = constante integral.

td = constante derivativa.

Tm = tiempo de muestreo.

etotal = sumatoria de los valores anteriores de error.

Las constantes poseen valores iniciales del software pero pueden ser definidos o modificados por el usuario en cualquier momento del proceso.

Aplicación Web.

Es la principal interfaz entre los usuarios (administradores, usuarios sin privilegios) y el proceso. Se basa en una aplicación Web realizada empleando PHP en su desarrollo, además del uso de Mysql para la comprobación de acceso y reserva de los datos.

Esta aplicación está dividida en varios módulos bien diferenciados:

• Administración: Modificación de parámetros de ejecución, control y registro de usuarios (Figura 10).

• Control: Ejecución del proceso.

• Visualización: generación de las imágenes del proceso.

La aplicación desarrollada gestiona la autentificación de los usuarios mediante el uso de una base de datos existente, en la que los usuarios son registrados previamente, o pueden ser registrados por el administrador.

Por otra parte se ha intentado minimizar los recursos necesarios para el uso de la maqueta a través de la aplicación Web desarrollada, de manera que un navegador Web sea lo único necesario para acceder al sistema.

Desde el punto de vista de ancho de banda, no es necesario tener un gran ancho de banda de bajada por parte del usuario, ya que se opta por monitorización de graficas cada varios segundos, lo que significa pocos Kbytes de información muy inferior al tamaño que ocupan los ficheros que se contienen los datos. Para tiempos de ejecución y frecuencias de muestreo suficientemente elevados, se pueden obtener ficheros de varios megas de información, en comparación con la imagen generada, cuyo tamaño puede ser del orden de 6 -10 Kbytes. El inconveniente está en el tiempo necesario para generar las gráficas a medida que el tamaño de los datos aumenta, introduciendo una sobrecarga en el sistema, debido a lo cual el número de muestras que se pueden tomar para la generación de gráficas es limitado a 120 muestras por segundo y ajustado a los recursos computacionales de que se dispone.

Esta aplicación Web se comunica con el servidor remoto situado en la máquina donde se encuentra la aplicación de tiempo real.

A continuación se enumeran las distintas páginas utilizadas para la aplicación Web:

1. Index: es la página principal del proyecto, en donde el usuario debe autentificarse para poder acceder a la página. (Figura 11).

2. Index2: es una pequeña presentación del proyecto. (Figura 12)

3. Historial: en esta página se presentan las últimas 60 muestras tomadas, y además permite la opción de guardar a base datos en formato xls. (Figura 13)

4. Enviar Variable: en esta parte el usuario puede cambiar las variables más importantes como el set point, el valor máximo y mínimo, las variables del controlador, el tiempo de muestreo, entre otros. (Figura 14).

5. Proceso: aquí se muestra una gráfica del proceso. (Figura 15)

6. Salir: es para salir del proyecto, en esta página se elimina la sección abierta.

7. Registro de Usuarios: es para registrar a los usuarios, sólo el administrador del proceso es el que puede registrar. (Figura 16).

3. Resultados

Se realizaron dos pruebas básicas para determinar su funcionamiento. La primera de ella fue para la adquisición de los datos y la segunda, para determinar los valores de salida.

Adicionalmente se realizó una prueba para verificar si el sistema podía trabajar MULTIUSUARIO y que el cliente fuera multiplataforma.

3.1 Para determinar los resultados de la prueba de la adquisición de datos se realizó de la siguiente manera:

Se tomaron 5 valores distintos con un potenciómetro de precisión simulando al sensor de presión diferencial, cuando se encontraban en un 0V, 1.25V 2.50V 3.75V y 5V, se compararon los resultados con los obtenidos en la pantalla de historiales. Se obtuvieron los siguientes resultados: (Tabla I).

3.2 Para determinar los valores de salida se realizó de la siguiente manera:

Se enviaron 5 valores distintos desde el computador simulando la señal regulada, cuando ésta se encontraba en un 0%, 25%, 50%, 75% y 100% se compararon los resultados con los obtenidos en la pantalla de historiales, y se obtuvieron los siguientes resultados: (Tabla II).

3.3 Para realizar la prueba Multiusuario y multiplataforma del cliente, se procedió de la siguiente manera:

Se conectó el proceso en un computador del CIC, que tiene como nombre scada.cic.com, (Dominio Interno en el CIC), desde los equipos del centro CIC2 y CIC3 se procedió a observar las variaciones que se presentaban en forma aleatoria por medio del potenciómetro.

El computador CIC2 está trabajando bajo el Sistema Operativo Linux, y la computadora CIC3 bajo el sistema operativo Windows

Otra prueba que se realizó al dispositivo fue la del tiempo de operación: se dejó trabajando sin interrupción por una semana sin presentar ningún problema.

La base de datos genera 250 MB al año para un tiempo de muestreo de 1 seg.

El tiempo de respuesta y operación del Servidor es en tiempo Real. Si el control se realiza desde el mismo equipo, para equipos conectados en la red, el tiempo de respuesta va a depender del tiempo de latencia que tarda en llegar la información desde el computador

III. CONCLUSIONES

1. No importa la distribución de software libre que tenga, es posible realizar un sistema SCADA, como se comprobó usando Linux Mandrake o Mandrivia y Debian.

2. Gracias a los lenguajes de diseño de páginas Web dinámicas como PHP se logró realizar aplicaciones para la captura de datos, análisis de señales, presentaciones en pantalla, envío de resultados a disco e impresora.

3. Por medio del aplicaciones como el Apache (servidor de página Web) se logró utilizar el modelo cliente servidor, con aplicaciones tanto como el Internet Explore de Windows, como con Firefox de la Mozilla.

4. Gracias al sensor de presión diferencial MPX2100PD se puede hacer una medida directa de la presión presente en el tubo venturi y hacer medidas directas aplicando la ecuación de Bernoulli.

5. Con el PIC 18F2550, se logró el diseño de una DAQ por medio del puerto USB, y gracias Linux no se requirió el diseño de los driver para la manipulación del DAQ; con sólo unas funciones en lenguaje C bastó para el control y comunicación entre el DAQ y el PC.

IV. REFERENCIAS

1. FRANQUINI, J. y FINCMORE, J. (1997). Mecánica de Fluidos con Aplicaciones en Ingeniería. Madrid McGraw–Hill.         [ Links ]

2. SUAREZ, F. (2004) Proyecto: “Diseño y simulación de la interconexión de procesos mediante red Ethernet”. UNEXPO.         [ Links ]

3. TYLERG H. (1979) Bombas, su Elección y aplicación. Compañía editorial Continental, S.A., México.         [ Links ]

4. YÉPEZ, Félix. (2000) Tesis: “Desarrollo de un sistema de instrumentación virtual para pruebas en unidades generadoras utilizando comunicación digital. C.V.G EDELCA. Planta Guri.” UNEXPO.         [ Links ]

5. KOJIMA, T:, et al., An Expert System of Machining Operation Planning in Internet Environment. Proceedings of 15 th International Conference on Computer – Aided Production Engineering University of Durham, UK, 1999, pp. 165 – 171.         [ Links ]

6. Pan, p., Cheng, K., Harrison, D.. Java – Based System: An Engineering Approach to the implementation of Desing Agility and Manufacturing. Proceedings of 15 th International Conference on Computer – Aided Production Engineering University of Durham, UK, 1999, pp. 165 – 171         [ Links ]

7. Noda, A., Manufacturing Industries in the Internet Era. Proceedings of 14 th International Conference on Computer – Aided Production Engineering, Tokyo, Japan, 1998, pp. 31-39         [ Links ]

8. Proyecto Linux USB. [Artículo en línea]. Disponible en http://www.linux-usb.org/ [Consulta: 2005, noviembre 16].         [ Links ]

9. Guía de Programación para Linux de dispositivos USB. [Artículo en línea]. Disponible http://www.lrr.in.tum.de/Par/arch/usb/usbdoc/ [Consulta: 2005, noviembre 16].         [ Links ]

10. WEB Oficial del USB [Artículo en línea]. Disponible en http://www.usb.org/home [Consulta: 2005, junio 17].         [ Links ]

11. Sven Goldt, Sven van der Meer (1995). Guía de Programación de Linux.         [ Links ]

12. Jan Axelson (2005) USB Complete. http://www.lvr.com/ [Consulta: 2006, Marzo 17].         [ Links ]

13. Michael Glass, Yann Le Scouarnec, Elizabeth Naramore (2004) Beginning PHP, Apache, MySQL® Web Development, www.wiley.com         [ Links ]

14. WEB USB Implementers Forum (USB-IF) [Articulo en Línea]. http://www.usb.org/ [Consuta 2006, Enero 21].        [ Links ]

Creative Commons License Todo el contenido de esta revista, excepto dónde está identificado, está bajo una Licencia Creative Commons