Está en la página 1de 25

SISTEMAS DOMÓTICOS

PROYECTO:
“Control de temperatura”

PROFESOR:
Ing. MANSILLA RODRIGUEZ MOISES WILLIAN

ALUMNOS:
- CUBA ISLADO ENRIQUE ESTEBAN 1413110167

- ZEVALLOS ESTEBAN ACXEL 1413120191

SABADO 18 DE MAYO DEL 2019


1. RESUMEN
El proyecto es control PID de temperatura. El control PID es un mecanismo de control que a través de un
lazo de retroalimentación permite regular temperatura de un proceso.

El controlador PID calcula la diferencia entre nuestra variable real contra la variable deseada.

Consistirá en sistema que controlará la temperatura por medio de un ventilador, que se encargara de
enfriar el sistema a través de un ventilador o cooler quien girará más rápido, más lento o se apague
totalmente buscando de esta manera mantener la temperatura deseada del sistema. Para el
funcionamiento se utilizó un Arduino UNO en donde se programó el PID que proporcionara el control de
dicha temperatura deseada, este dispositivo también generara un ancho de pulso por medio de las salidas
PWM.

2. OBJETIVO
 El objetivo del sistema de control de temperatura, es que el sistema mantenga fielmente el valor
del SetPoint ante la entrada de perturbaciones.
 Controlar la temperatura del sistema a través de la activación o desactivación del fan cooler
 Mantener la temperatura dentro del valor establecido.

3. MARCO TEÓRICO
 La temperatura es una magnitud física que tanto en el ámbito doméstico e industrial es interesante
controlar para tener un mayor confort y eficiencia energética.
 El control se puede realizar tanto manual (control en lazo abierto) como automático (control en
lazo cerrado).

 el control en lazo abierto


Es un control de encendido-apagado, en nuestro caso para calentar una habitación, un
calentador se enciende o se apaga.
 en control en lazo cerrado
Se tiene un controlador que compara la variable (temperatura que se mide con un sensor)
con la referencia, temperatura que se quiere tener en la habitación, y convertir el error que
resulta en una acción de control para reducir el error.

 Control proporcional (P)


Produce una acción de control que es proporcional al error. La señal de correctora aumenta al
aumentar la señal de error.

 Control derivativo (D)


Produce una señal de control que es proporcional a la rapidez con la que cambia el error. Ante un
cambio rápido de la señal de error, el controlador produce una señal de corrección de gran valor;
cuando el cambio es progresivo, sólo se produce una señal pequeña de corrección. El control
derivativo se puede considerar un control anticipativo porque al medir la rapidez con que cambia
el error se anticipa a la llegada de un error más grande y se aplica la corrección antes que llegue.
El control derivativo no se usa solo, siempre va en combinación con el control proporcional y/o con
el control integral.
 CONTROL INTEGRAL (I)
Produce una acción de control que es proporcional a la integral del error en el tiempo. En
consecuencia, una señal de error constante producirá una señal correctora creciente y aumentará
si el error continúa. El control integral se puede considerar que recuerda la situación anterior, suma
todos los errores y responde a los cambios que ocurren.
 COMBINACIÓN DE TIPOS DE CONTROL
Proporcional derivativo (PD), proporcional integral (PI) y proporcional integral derivativo (PID).
 CONTROL PID
El algoritmo PID es mostrado en la siguiente ecuación:

Está la parte proporcional, integral y diferencial en la ecuación


 Las constantes 𝐾𝑃 , 𝐾𝑑 , 𝐾𝑖 son usadas para “setear” el signo y la ganancia de cada parte de
esta ecuación.

 es el “error” proporcional que es .

 La variable (t) corresponde al tiempo que corre en el sistema.

 La parte proporcional de la ecuación tiene en cuenta la separación entre PV y SP.

 La parte diferencial tiene en cuenta lo rápido que nos estamos moviendo ( si se acerca al
SP muy rápido puede pasarse de largo), y se puede utilizar para reducir la parte
proporcional si nos estamos acercando, o nos acelerará si no llegamos a pesar de nuestra
contribución proporcional.

 La parte integral de la ecuación tiene en cuenta el tiempo que hemos estado fuera del punto
de ajuste , lo que contribuye más a nuestra salida cuanto más tiempo nos falta el PS . Esto
es importante porque nuestras contribuciones P y D se suele llevar a nuestro PV a ceder
ligeramente por encima o por debajo de nuestra variable SP. Está la parte proporcional,
integral y diferencial en la ecuación
4. DESCRIPCIÓN DEL PROYECTO
El control de temperatura cuenta con un sensor tipo resistivo y para medir la temperatura presenta un
sensor tipo DHT22.

Con el siguiente proyecto podremos obtener los valores temperatura ambiente actuales, así como obtener
un pequeño registro de los valores máximos y mínimos alcanzados desde que ejecutamos el programa en
nuestro Arduino, aunque una vez desconectada la alimentación de la placa o si presionamos el botón de
reset, todos los valores acumulados se pierden.

Dichos datos serán mostrados a través de un Display LCD 16x2. Pues ahora solo tenemos que realizar
las conexiones oportunas y cargar el programa en nuestro Arduino UNO.
SISTEMA MICROCONTROLADOR
Por todas las características que nos brinda sumado al bajo precio de mercado y a su versatilidad para
realizar montajes electrónicos de control, registro y censado de variables físicas se optó por
microcontrolador Arduino Mega 2560

Arduino es una plataforma de prototipos electrónicos de código abierto (open-source) basado en hardware
y software flexibles y fáciles de usar. Está pensado para estudiantes, diseñadores, y para cualquiera
interesado en crear objetos o entornos interactivos.

Arduino puede interpretar el entorno mediante la recepción de sus entradas desde una variedad de
sensores y Wiring1) y el “Arduino Development Environment” (basado en Processing2). Los proyectos de
Arduino pueden ser autónomos o se pueden comunicar con software en ejecución en un ordenador, tableta
o equipo móvil.

Las placas se pueden ensamblar a mano o encargarlas preensambladas; el software se puede descargar
gratuitamente. Los diseños de referencia del hardware están disponibles bajo licencia open-source, por lo
que eres libre de adaptarlas a tus necesidades.

Las placas Arduino son relativamente baratas comparadas con otras plataformas microcontroladoras. La
versión menos cara del módulo Arduino puede ser ensamblada a mano, e incluso los módulos de Arduino
preensamblados cuestan menos de 50$.

El entorno de programación de Arduino es fácil de usar para principiantes, pero suficientemente flexible
para que usuarios avanzados puedan aprovecharlo también.

El software Arduino está publicado como herramientas de código abierto, disponible para extensión por
programadores experimentados. El lenguaje puede ser expandido mediante librerías C++, y la gente que
quiera entender los detalles técnicos pueden hacer el salto desde Arduino a la programación en lenguaje
AVR C en el cual está basado. De forma similar, puedes añadir código AVR-C directamente en tus
programas Arduino si quieres.
Arduino Mega 2560 es una versión ampliada de la tarjeta original de Arduino y está basada en el
Microcontrolador Atmega2560. Dispone de 54 entradas/salidas digitales, 14 de las cuales se pueden
utilizar como salidas PWM (modulación de anchura de pulso). Además, dispone de 16 entradas analógicas,
4 UARTs (puertas series), un oscilador de 16MHz, una conexión USB, un conector de alimentación, un
conector ICSP y un pulsador para el reset. Para empezar a utilizar la placa sólo es necesario conectarla al
ordenador a través de un cable USB, o alimentarla con un adaptador de corriente AC/DC. También, para
empezar, puede alimentarse mediante una batería.

Características del Arduino Mega 2560


 Microprocesador ATmega2560

 Tensión de alimentación (recomendado) 7-12V

 Integra regulación y estabilización de +5Vcc

 54 líneas de Entradas/Salidas Digitales (14 de ellas se pueden utilizar como salidas PWM)

 16 Entradas Analógicas

 Máxima corriente continua para las entradas: 40 mA

 Salida de alimentación a 3.3V con 50 mA

 Memoria de programa de 256Kb (el bootloader ocupa 8Kb)

 Memoria SRAM de 8Kb para datos y variables del programa

 Memoria EEPROM para datos y variables no volátiles

 Velocidad del reloj de trabajo de 16MHz

 Reducidas dimensiones de 100 x 50 mm


Diagrama sistema de control

Inicio

Leer sensores

Comparar

Activar actuadores

En la figura, se puede observar un diagrama del control implementado en el proyecto el cual se realiza en
cuatro partes así:

Inicio: es la etapa donde definimos archivos de cabecera y variables.

Leer Sensores: es la fase donde se capturan las medidas hechas por los sensores

Comparar: en esta etapa de toma la señal suministrada por el sensor de temperatura y se compara con
una de referencia con el fin de poder tomar una decisión de control adecuada. Lo anterior se hace extensivo
para la humedad relativa.

Activar Actuadores: en esta fase es donde se permite la activación o desactivación de los dispositivos
encargados de la modificación del clima al interior del vivero.
Diagrama sisema de captura y registro

En la figura, se puede observar el


diagrama de captura u registros el
cual se realiza en cinco partes
descritas a continuación:

 Inicio:

es la etapa donde definimos


archivos de cabecera y variables a
utilizar

 Inicio de variables:

es la etapa donde definimos las


variables a utilizar durante el
control.

 Leer Sensores:

en esta etapa el microcontrolador


captura las medidas realizadas
por el conjunto de sensores
utilizados

 Conectar con el servidor:

en esta fase es donde la Ethernet


Shield permite enviar las medidas
capturadas por el sistema
microcontrolado y se encarga de
enviarlas al servidor web.

 Registrar:

en esta etapa los datos enviados


vía ethernet son almacenados en
una base de datos previamente
elaborada en MySQL.
SENSORES
Un sensor es un dispositivo capaz de detectar magnitudes físicas o químicas, llamadas variables de
instrumentación, y transformarlas en variables eléctricas. Las variables de instrumentación pueden ser por
ejemplo: temperatura, intensidad lumínica, distancia, aceleración, inclinación, desplazamiento, presión,
fuerza, torsión, humedad, movimiento, pH, etc. Una magnitud eléctrica puede ser una resistencia eléctrica
(como en una RTD), una capacidad eléctrica (como en un sensor de humedad o un sensor capacitivo),
una tensión eléctrica (como en un termopar), una corriente eléctrica (como en un fototransistor), etc.

Los sensores se pueden clasificar en función de los datos de salida en:

 Digitales
 Analógicos
 Comunicación por Bus

A la hora de elegir un sensor, debemos leer detenidamente las características y elegir uno que sea
compatible con nuestro sistema (tensión y voltaje) y que sea sencillo de usar o nos faciliten una librería
sencilla y potente.

Ejemplos de Sensores:

 Sensor de Temperatura y Humedad DHT22


ACTUADORES
Un actuador es un dispositivo capaz de transformar energía hidráulica, neumática o eléctrica en la
activación de un proceso con la finalidad de generar un efecto sobre elemento externo. Este recibe la orden
de un regulador, controlador o en nuestro caso un Arduino y en función a ella genera la orden para activar
un elemento final de control como, por ejemplo, una válvula.

Existen varios tipos de actuadores como son:

 Electrónicos
 Hidráulicos
 Neumáticos
 Eléctricos
 Motores
 Bombas

Los actuadores van conectados a las salidas de Arduino.


PERIFÉRICO
Es la denominación genérica para designar al aparato o dispositivo auxiliar e independiente conectado a
la unidad central de procesamiento o en este caso a Arduino. Se consideran periféricos a las unidades o
dispositivos de hardware a través de los cuales Arduino se comunica con el exterior, y también a los
sistemas que almacenan o archivan la información, sirviendo de memoria auxiliar de la memoria principal.

Ejemplos de periféricos:

 Pantallas LCD
 Teclados
 Memorias externas
 Cámaras
 Micrófonos
 Impresoras
 Pantalla táctil
 Displays numéricos
 Zumbadores
 Indicadores luminosos, etc…
Sensor de temperatura y humedad DHT22
Los DHT22 se componen de un sensor capacitivo para medir la humedad y
de un termistor, son ampliamente usados con Arduino, son unos pequeños
dispositivos que nos permiten medir la temperatura y la humedad. A pesar
que estas medidas son analógicas, estos sensores los tendremos que
conectar a pines digitales, ya que la señal de salida es digital a un bus punto
a punto. Llevan un pequeño microcontrolador interno para hacer el
tratamiento de señal. Estos sensores han sido calibrados en laboratorios,
presentan una gran fiabilidad.

Estos sensores funcionan con ciclos de operación de duración determinada.


En determinados casos de aplicaciones los tiempos de lectura de los
sensores puede ser determinante a la hora de elegirlo.

Parámetro DHT22

Alimentación 3.3Vdc ≤ Vcc ≤ 6Vdc

Señal de Salida Digital

Rango de medida Temperatura De -40°C a 80 °C

Precisión Temperatura <±0.5 °C

Resolución Temperatura 0.1°C

Rango de medida Humedad De 0 a 100% RH

Precisión Humedad 2% RH

Resolución Humedad 0.1%RH

Tiempo de sensado 2s

Tamaño 14 x 18 x 5.5mm
5. EQUIPOS Y COMPONENTES

 01 Arduino UNO
 01 Protoboard
 01 Sensor de temperatura DHT22
 01 Pantalla LCD de 16 caracteres y 02 líneas
 02 MOSFET IRFZ44N
 02 Fan cooler
 02 Pulsadores normalmente abiertos.
 01 Resistencia de 220 Ω
 01 Resistencia 10 KΩ
 01 potenciómetro de 10khom para el contraste del LCD
 Regulador de tensión de 5V
 fuente 12V. 500 mA.
 Cables de conexión
 02 diodos

6. PROCEDIMIENTO

 SETPOINT
Sera la temperatura de consigna del sistema. Se trata de la temperatura deseada a la cual el
proceso tiene que mantenerse a través de la acción del control. El algoritmo oscila entre dos
temperaturas, con el motivo de ver cómo se comporta ante cambios de la entrada. Es decir, es a
la temperatura que queremos que se encuentre nuestro recipiente.

- La realimentación o información de cómo se encuentra el sistema, es adquirida por el sensor


de temperatura DHT22 cuyo objetivo es que el valor medido sea siempre igual al valor deseado
(Setpoint).

- El actuador es el ventilador, el cual regulamos su velocidad mediante modulación de ancho de


pulsos (PWM).

- La variable controlada será la temperatura y la variable manipulada será el setpoint que


mediante los pulsadores la modificaremos

 DESARROLLO DEL CONTROL

CONTROL INTEGRAL:
Consigue que nuestro sistema alcance los valores objetivos, ya que corrige el error permanente
del sistema.
CONTROL DERIVATIVO:
Sólo actúa si hay un cambio en el valor absoluto del error. Es decir, si el error es constante, no
actuará.

PID:
Control Proporcional Integral Derivativo (PID) es mecanismo de control mediante realimentación
negativa, el cual aplica una acción correctora al sistema para obtener el valor de consigna
(Setpoint).
El controlador PID calcula la diferencia entre nuestra variable real contra la variable deseada.

LAPTOP
PID
ACTUADOR PROCESO
Kp

ki

kd
CONTROLADOR

SENSOR
VALORES ASIGNADOS

Las constantes 𝐾𝑃 , 𝐾𝑑 , 𝐾𝑖 son usadas para “setear” el signo y la ganancia de cada parte del
algoritmo del PID cuyos valores serán:

 Setpoint = 40
 𝐾𝑃 = 75
 𝐾𝑑 = 15
 𝐾𝑖 = 5

CONEXIÓN DE UN DHT11 AL ARDUINO UNO.

Del montaje realizado, destacamos que no utilizamos el pin 3, y que el resistor tiene que conectarse entre
la alimentación y el pin de salida de datos.

Si hemos comprado el sensor suelto, debemos basarnos en este esquema para conectar con nuestro
arduino.
VENTILADOR

La ventilación del recinto es un aspecto fundamental. Realizar una renovación del aire en el interior,
para conseguir unos valores adecuados de O2 y CO2 es crucial. El ventilador permite eliminar del
invernadero sustancias nocivas en el ambiente, que puedan dañar el correcto crecimiento de la
plantación.

Las características principales del aparato son las siguientes

 Tensión alimentación: 12VC


 Consumo de corriente: 0.06A
 Diámetro: 40mm

Mediante la implementación de un pequeño circuito de control, basado en un transistor bipolar NPN


2N2222, se han establecido cuatro modos de ventilación.

Haciendo uso de los canales PWM de Arduino Leonardo, puede regularse la inyección de corriente en
la base del transistor, lo que permite regular el flujo de electrones entre colector y emisor, y conseguir
de esta forma cuatro velocidades de ventilación en ICRA. 4 Los dos principales objetivos de este
periférico son:

 Ofrecer un actuador que pueda ser controlado a partir de la aplicación Android.


 Formar un sistema de renovación de aire forzado, realimentado con el sensor de gas
inflamable MQ2, que permita la evacuación de sustancias nocivas y peligrosas para el
crecimiento y evolución de las plantas.
MOSFET IFRZN44 CONECTADO CON ARDUINO Y EL VENTILADOR
Control del ventilador mediante transistor mosfet y adquisición de la temperatura mediante NTC.

A continuación, se puede observar un esquema de la conexión del ventilador. La salida utilizada en Arduino
es el pin 9 (PWM).

En los sistemas de control en lazo cerrado la salida del controlador actúa sobre el actuador (en este caso
motor eléctrico del ventilador) para corregir la magnitud física (temperatura) que se quiere controlar.

La técnica más habitual que se utiliza para el control de velocidad de motores de continua, es la modulación
por anchura de pulso PWM (Pulse Width Modulation). Esta técnica consiste en una señal periódica
cuadrada que cambia el tiempo de su estado activo (nivel alto) en el tiempo del período de la señal.

El tiempo que la señal periódica está activa con respecto a período de la señal se denomina Ciclo de
Trabajo (Duty Cycle)

D = (ton/ T)

Es decir, el duty cycle describe la proporción del tiempo a ON (encendido) sobre un período de tiempo fijo.

Crear este tipo de señal resulta muy sencillo en un microcontrolador, aunque cabe destacar que la corriente
generada por el mismo es muy pequeña, por lo que hace necesario de una etapa de adaptación de
potencia antes de unirlo al motor. Para ello se utiliza el transistor en conmutación corte y saturación
7. CODIFICACION
8. PRESENTACIÓN
9. CONCLUSIONES Y RECOMENDACIONES

 Se pudo controlar la temperatura del sistema, mediante la activación o desactivación de los


ventiladores o fan cooler.

 Se mantuvo el valor constante del SetPoint ante la presencia de perturbaciones de


temperatura del medio.

 Cada vez que ocurra una variación de 1 respecto del setpoint el primer ventilador comenzara
a girar y cuando sea de 2 la diferencia se activara el segundo ventilador

 Se utilizó el sensor DHT22 el cual, nos favoreció uno por el costo y otro por que tiene una
ventaja contra su similar el DHT11, en este caso, los diferencia por su precisión en la
medición de la temperatura.

Precisión: Temperatura:
- DHT11 (±2.0 °C) 0 a 50 grados
- DHT22 (±0.5 °C) -40 a 80 grados

 El sistema de control de temperatura trabaja con tiempos prolongados por tal motivo tarda
en estabilizar la temperatura del sistema.

 Se ha fijado cierto margen de control, esto varia para el uso que se desee utilizar, y el
ambiente que se desee controlar.

 Se pudo utilizar la termopila, pero en este ya mencionado, su valor es más caro en el


mercado, pero en la práctica tiene mayor sensibilidad para la precisión en la medición de la
temperatura.
10. BIBLIOGRAFIA

 Arduino Playground. Biblioteca PID. Arduino Playground.

https://www.arduino.cc/playground/Code/PIDLibrary.

 Tinkering with Electronics. Maqueta de control PID con Arduino. real2electronics.blogspot.pe.

https://real2electronics.blogspot.com.es/2011/07/maqueta-de-control-pid-con-arduino.html

 TODOPIC. PID Digital (paso a paso). todopic.com.ar.

https://www.todopic.com.ar/foros/index.php?topic=24599.80

 Burton, Miles. Biblioteca de Control de Temperatura de Dallas. MilesBurton.com.

https://www.milesburton.com/Dallas_Temperature_Control_Library.

 Wikipedia. Controlador PID. Wikipedia.

http://en.wikipedia.org/wiki/PID_controller.

También podría gustarte