CONTROL PI DE TEMPERATURA CON ARDUINO Y SCILAB
Saludos compañeros!, espero que se encuentren muy bien el día de hoy! En este post les presento los resultados obtenidos de un controlador PI de temperatura para un recinto cerrado, implementado con ARDUINO y SCILAB.
Antes que nada, quisiera mostrar mis agradecimientos al profesor Guiovanny Suarez Rivera de la asignatura de: IDENTIFICACIÓN DE SISTEMAS (Politécnico Colombiano Jaime Isaza Cadavid) por la ayuda brindada durante el desarrollo de este proyecto que sin duda me abrió la mente y explorar nuevas puertas en el maravilloso mundo de la ingeniería de control.
OBJETIVOS
GENERAL
- Diseñar un sistema de registro, monitoreo, adquisición de datos por medio de control PID y regresión lineal para una planta de temperatura, con el fin de realizar modelamiento matemático del sistema a partir de valores obtenidos de la variable mencionada.
ESPECIFICOS
- Aplicar los conocimientos adquiridos en electrónica y programación para el desarrollo de controladores PID de forma práctica.
- Conocer características físicas de los implementos que se van a utilizar para el montaje de la planta de temperatura.
- Seleccionar adecuadamente las herramientas de programación y dispositivos de hardware para optimizar tiempos y metas con el proyecto.
- Efectuar adquisición de datos usando la tarjeta arduino con el fin de procesar y tabular la información obtenida.
DISEÑO DE LA PLANTA DE TEMPERATURA
Como grupo de trabajo, se planteó que el montaje básico de la planta de temperatura consistirá en un recipiente transparente de forma circular y en forma de tanque en el cual se incorporará en su estructura interna una bombilla de 60 watts para calentar todo el recinto. El control de encendido y apagado de la bombilla se hará de forma manual. Posteriormente se ubicará de forma estratégica el sensor de temperatura LM35 para efectuar unas lecturas correctas de los valores de la variable. Además, en el recipiente transparente, se colocará el ventilador cuya función es mantener el valor de la temperatura de acuerdo a los valores establecidos por el usuario a través del módulo arduino y aplicando valores de consigna con el fin de hacer el respectivo control sobre el sistema. La etapa de adquisición y procesamiento de la información, se hará a través de la mencionada placa y el software que estará acompañado para la programación y adquisición de los datos será: SCILAB, ARDUINO.
A continuación, se presenta el diagrama de bloques de la planta de temperatura a diseñar
DIAGRAMA DE BLOQUES DE LA PLANTA DE TEMPERATURA.
El sensor de temperatura está energizado con un voltaje de 5 volts y entrega un nivel de salida en relación con la temperatura a través del pin A0 de la tarjeta ARDUINO UNO R3 el cual será programado por medio del toolkit toolbox de scilab. El ventilador estará controlado por modulación PWM a través del pin N°3 del arduino el cual garantiza la señal de salida para el extractor de 5 volts. Este ventilador, estará controlado por un transistor conectado en corte/saturación el cual activará el ventilador y lo desactivará. El diodo tal como se especificó, será el encargado de proteger la tarjeta arduino de corrientes inversas. El circuito conformado por la fuente de 120 AC y la bombilla en conjunto con el interruptor, son los encargados de simular el proceso a controlar.
MONTAJE FÍSICO DE LA PLANTA DE TEMPERATURA
TOMA DE DATOS DE LA PLANTA DE TEMPERATURA.
Para una correcta identificación, es importante realizar una toma de datos previa del comportamiento de la planta con el fin de obtener el mejor modelo matemático mediante algoritmos de recorte, traslado y cálculos de error de datos. Es decir: inicialmente se deben tomar o capturar los datos de la planta y luego un programa elaborado en scilab se encargará de ajustar y encontrar el mejor modelo. A continuación compartimos el código para hacer el recorte y el traslado de los datos.
clic AQUÍ para obtener el programa de identificación por regresión lineal.
clic AQUÍ para ver el vídeo de adquisición de datos
SIMULACIÓN DE LOS CONTROLADORES EN SCILAB
GRÁFICA DE SALIDA COMPORTAMIENTO DE LOS 3 CONTROLADORES
PROGRAMA EN SCILAB CON ARDUINO.
NOTA: recuerden instalar los ATOMS en SCILAB para que el programa funcione correctamente.
RESPUESTA DE LA PLANTA
Enlaces relacionados:
https://www.instrumath.com/blog/prender-y-apagar-un-led-arduino-uno/
https://www.instrumath.com/blog/entradas-analogas-con-arduino-uno/
CONTENIDOS MÁS RELEVANTES.